/* Staging candidate. Retain existing typography, layout and image assignments.
 * Legacy inline styles contain !important declarations. The scoped exceptions
 * below beat those declarations without modifying the originals or their order.
 * Palette variables on body override inherited root variables without !important.
 */
body.agp-theme-preview {
  --ag-bg: #d9e0e7;
  --ag-bg-2: #edf1f5;
  --ag-panel: #f7f9fc;
  --ag-panel-2: #e7edf3;
  --ag-text: #102b46;
  --ag-text-soft: #304a61;
  --ag-text-muted: #425c73;
  --ag-blue: #075cbb;
  --ag-blue-light: #075cbb;
  --ag-border: #a8bacb;
  --ag-border-strong: #5685b3;
  --agp-text: #102b46;
  --agp-muted: #304a61;
  --agp-cyan: #075cbb;
  --agp-line: #a8bacb;
  --agp-line-strong: #5685b3;
  --ag-access-muted: #425c73;
  --ag-access-soft: #304a61;
  --ag-card: #f7f9fc;
  --ag-card-border: #a8bacb;
  --wp--preset--color--heading-color: #102b46;
  --wp--preset--color--foreground: #304a61;
  --wp--preset--color--background: #d9e0e7;
  --wp--preset--color--meta-color: #425c73;
  background: linear-gradient(120deg,#edf1f5,#d0d9e2 62%,#e5ebf0) !important;
  background-color: #d0d9e2 !important;
  color: #304a61 !important;
}
/* Remove the old decorative body helix; use approved art on the home hero only. */
body.agp-theme-preview::before,body.agp-theme-preview.home::before { opacity: 0 !important; }
body.agp-theme-preview :is(main,.agpx,.woocommerce,.wc-block-cart,.wc-block-checkout) {
  --ag-theme-copy: #304a61;
}
body.agp-theme-preview :is(main,.agpx,.woocommerce,.wc-block-cart,.wc-block-checkout)
  :where(p,li,td,th,label,.wp-block-paragraph):not(:where(
    .woocommerce-error,.woocommerce-error *,.woocommerce-message,.woocommerce-message *,
    .woocommerce-info,.woocommerce-info *,.wc-block-components-notice-banner,
    .wc-block-components-notice-banner *,.wc-block-components-validation-error,
    .wc-block-components-validation-error *,.wpforms-error,.wpforms-error *,
    .wpforms-confirmation-container,.wpforms-confirmation-container *,
    .stock,[role=alert],[role=alert] *)) {
  color: var(--ag-theme-copy) !important;
}
body.agp-theme-preview :is(main,.agpx,.woocommerce,.wc-block-cart,.wc-block-checkout)
  :where(h1,h2,h3,h4,h5,h6,.product_title,.woocommerce-loop-product__title) {
  color: #102b46 !important; text-shadow: none !important;
}
body.agp-theme-preview .agpx {
  --ink: #102b46; --muted: #304a61; --cyan: #075cbb; --copper: #075cbb;
  color: #102b46; background: transparent !important;
}
body.agp-theme-preview .agpx :is(.px-intro,.px-copy,.px-service span,.px-note,
  .px-stage-caption,details p,.px-store address,.px-vial figcaption) { color: #304a61 !important; }
body.agp-theme-preview .agpx :is(.px-service strong,summary) { color: #102b46 !important; }
body.agp-theme-preview .agpx :is(h1 span,.px-eyebrow) { color: #075cbb !important; }
/* The existing BioMod logo panel remains dark; its label needs light text. */
body.agp-theme-preview .agpx .px-partner-label { color: #e3edf7 !important; }
body.agp-theme-preview .agpx .px-link {
  color: #075cbb !important; border-color: #075cbb !important; text-decoration-color: #075cbb !important;
}
body.agp-theme-preview .agpx :is(.px-service,.px-service div,.px-app,.px-faq,details,.px-partner) {
  border-color: #a8bacb !important;
}
body.agp-theme-preview .agpx .px-stage::before { border-color: rgba(7,92,187,.2) !important; }
body.agp-theme-preview :is(.px-store,.agpx .px-catalog ul.products li.product,
  .woocommerce ul.products li.product,.woocommerce div.product,.wc-block-cart,
  .wc-block-checkout,.woocommerce form.checkout,.woocommerce-cart-form,.cart-collaterals) {
  background: #f7f9fc !important; border-color: #a8bacb !important; box-shadow: 0 10px 26px #23426012 !important;
}
body.agp-theme-preview :is(.price,.woocommerce-Price-amount,.woocommerce-Price-currencySymbol) {
  color: #075cbb !important;
}
body.agp-theme-preview .agp-case-loop { background: #e3edf7 !important; border-color: #a8bacb !important; color: #304a61 !important; }
body.agp-theme-preview .agp-case-loop strong { color: #102b46 !important; }
body.agp-theme-preview .agp-case-loop span:last-child { color: #166043 !important; }
body.agp-theme-preview .agpx .px-catalog ul.products li.product .woocommerce-loop-product__title {
  color: #102b46 !important;
}
/* Saved catalog blocks use their own card and price elements. */
body.agp-theme-preview main.wp-block-group.has-background:not([style*="background-image"]),
body.agp-theme-preview main .saaslauncher-product-box {
  background: #f7f9fc !important; border-color: #a8bacb !important; color: #304a61 !important;
}
body.agp-theme-preview main .saaslauncher-product-box :is(.wp-block-post-title a,.wp-block-post-terms a) {
  color: #102b46 !important;
}
body.agp-theme-preview.woocommerce .wc-block-product-template .wp-block-post-title a {
  color: #102b46 !important; font-size: inherit !important; line-height: inherit !important;
}
body.agp-theme-preview .woocommerce-breadcrumb { color: #304a61 !important; }
body.agp-theme-preview .woocommerce-breadcrumb a { color: #075cbb !important; }
body.agp-theme-preview :is(.wc-block-components-product-price,.wc-block-components-product-price *) {
  color: #075cbb !important;
}
/* Retain the existing catalog title artwork and its light title. */
body.agp-theme-preview:is(.post-type-archive-product,.tax-product_cat,.tax-product_tag) main [style*="background-image"] .wp-block-query-title {
  color: #fff !important;
}
body.agp-theme-preview.woocommerce .wc-block-product-template .wc-block-components-product-button__button span {
  color: #fff !important; -webkit-text-fill-color: #fff !important;
}
body.agp-theme-preview.woocommerce .wc-block-product-template :is(.woocommerce-Price-amount,.woocommerce-Price-currencySymbol) {
  color: #075cbb !important;
}
/* Restrict button recoloring to actual actions. Never style every input as text. */
body.agp-theme-preview :is(.px-button,.agpx .px-catalog .button,.woocommerce a.button,
  .woocommerce button.button,.woocommerce input.button,.wp-element-button,
  .wp-block-button__link,.agp-button-primary,.single_add_to_cart_button,.wpforms-submit) {
  background: #075cbb !important; border-color: #075cbb !important; color: #fff !important;
  -webkit-text-fill-color: #fff !important; text-shadow: none !important; box-shadow: 0 6px 16px #075cbb20 !important;
}
body.agp-theme-preview :is(.px-button,.agpx .px-catalog .button,.woocommerce a.button,
  .woocommerce button.button,.wp-element-button,.wp-block-button__link,.agp-button-primary,.wpforms-submit):hover:not(:disabled):not([aria-disabled=true]) {
  background: #034486 !important; color: #fff !important;
}
body.agp-theme-preview :is(.woocommerce,.wc-block-cart,.wc-block-checkout,.agp-site-search,.agp-mobile-search,.wpforms-container .wpforms-form)
  :is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],input[type=password],input[type=url],select,textarea) {
  background: #fff !important; border-color: #8299af !important; color: #102b46 !important; box-shadow: none !important;
}
body.agp-theme-preview :is(.woocommerce,.wc-block-cart,.wc-block-checkout,.agp-site-search,.agp-mobile-search,.wpforms-container .wpforms-form)
  :is(input,textarea)::placeholder { color: #425c73 !important; }
body.agp-theme-preview .woocommerce-tabs :is(ul.tabs li,.panel) { background: #e7eff7 !important; border-color: #a8bacb !important; }
body.agp-theme-preview.single-product :is(.wp-block-post-terms,.wp-block-post-terms *) { color: #304a61 !important; }
body.agp-theme-preview.single-product .wp-block-post-terms a { color: #075cbb !important; }
body.agp-theme-preview .woocommerce-tabs ul.tabs li { opacity: 1 !important; }
body.agp-theme-preview .woocommerce-tabs ul.tabs li a {
  color: #304a61 !important; min-height: 44px; display: flex; align-items: center;
}
body.agp-theme-preview .woocommerce-tabs ul.tabs li.active a { color: #075cbb !important; font-weight: 700; }
body.agp-theme-preview.single-product .woocommerce-tabs.wc-tabs-wrapper ul.tabs li a { color: #304a61 !important; }
body.agp-theme-preview.single-product .woocommerce-tabs.wc-tabs-wrapper ul.tabs li.active a { color: #075cbb !important; }
body.agp-theme-preview .agp-tier-sub,body.agp-theme-preview .agp-tier-option.agp-unavailable { opacity: 1 !important; }
body.agp-theme-preview .agp-tier-option.agp-unavailable { border-style: dashed !important; background: #e7edf3 !important; }
body.agp-theme-preview #reviews #reply-title { color: #102b46 !important; }
body.agp-theme-preview #reviews p.stars a { color: #075cbb !important; min-width: 44px; min-height: 44px; }
body.agp-theme-preview #reviews input#submit {
  background: #075cbb !important; color: #fff !important; border-color: #075cbb !important; min-height: 44px;
}
body.agp-theme-preview .wc-block-next-previous-buttons__button {
  background: #075cbb !important; color: #fff !important; min-width: 44px; min-height: 44px;
}
body.agp-theme-preview :is(.wc-block-cart__main,.wc-block-cart__sidebar,
  .wc-block-checkout__main,.wc-block-checkout__sidebar,.agp-app-footer-promo) {
  background: #f7f9fc !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview .wc-block-components-product-name { color: #075cbb !important; }
body.agp-theme-preview :is(.wc-block-components-totals-item__label,.wc-block-components-totals-footer-item,
  .wc-block-components-totals-item__description) { color: #304a61 !important; }
body.agp-theme-preview :is(.wc-block-components-quantity-selector__button,.wc-block-cart-item__remove-link,.agp-app-cta) {
  background: #075cbb !important; color: #fff !important; border-color: #075cbb !important;
  opacity: 1 !important; min-width: 44px; min-height: 44px;
}
body.agp-theme-preview .wc-block-components-quantity-selector__button:disabled { opacity: .5 !important; }
body.agp-theme-preview .wc-block-components-quantity-selector { min-width: 132px; min-height: 44px; }
body.agp-theme-preview .wc-block-components-quantity-selector input { min-height: 44px; }
body.agp-theme-preview .wc-block-cart-item__quantity { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
body.agp-theme-preview .agp-app-footer-promo :is(h2,p) { color: #102b46 !important; }
body.agp-theme-preview main .ag-geo1-card {
  background: #f7f9fc !important; border-color: #a8bacb !important; color: #304a61 !important;
}
body.agp-theme-preview main .ag-geo1-card strong { color: #102b46 !important; }
body.agp-theme-preview main .ag-geo1-notice { background: #e7eff7 !important; color: #304a61 !important; }
body.agp-theme-preview .agp-page-location-card { background: #f7f9fc !important; border-color: #a8bacb !important; }
body.agp-theme-preview .agp-page-location-card :is(h2,p,strong,span,address,div) { color: #304a61 !important; }
body.agp-theme-preview .agp-page-location-card a { color: #075cbb !important; }
body.agp-theme-preview .agp-page-location-card a.agp-page-location-card__button {
  background: #075cbb !important; color: #fff !important; min-height: 44px;
}
body.agp-theme-preview #contact { background: #f7f9fc !important; color: #304a61 !important; }
body.agp-theme-preview #contact form#wpforms-form-155 :is(label,legend,.wpforms-field-sublabel) {
  color: #304a61 !important;
}
body.agp-theme-preview #contact form#wpforms-form-155 :is(.wpforms-error,.wpforms-required-label) {
  color: #a01717 !important;
}
body.agp-theme-preview main :is(.ag-geo1-card,.ag-geo1-links) a { color: #075cbb !important; }
/* Current live Contact CSS targets these two IDs with !important. Match only
 * the observed form's visible fields; preserve validation and hidden controls. */
body.agp-theme-preview #contact form#wpforms-form-155
  :is(input[type=text],input[type=email],input[type=tel],input[type=url],textarea) {
  background: #fff !important; color: #102b46 !important; border-color: #8299af !important;
  box-shadow: none !important;
}
body.agp-theme-preview main .agcoa a:not(.agcoa-open) { color: #075cbb !important; }
body.agp-theme-preview .agcoa #agcoa-query {
  background: #fff !important; color: #102b46 !important; border-color: #8299af !important;
}
body.agp-theme-preview .agcoa #agcoa-query::placeholder { color: #425c73 !important; }
body.agp-theme-preview .agcoa #agcoa-clear {
  background: #075cbb !important; color: #fff !important; border-color: #075cbb !important; min-height: 44px;
}
body.agp-theme-preview main .agcoa-card {
  background: #f7f9fc !important; border-color: #a8bacb !important; color: #304a61 !important;
}
body.agp-theme-preview main .agcoa-card :is(dt,.agcoa-pages) { color: #425c73 !important; }
body.agp-theme-preview main .agcoa-card dd { color: #102b46 !important; }
body.agp-theme-preview main .agcoa-card .agcoa-brand { color: #075cbb !important; }
body.agp-theme-preview main .agcoa-open {
  background: #075cbb !important; border-color: #075cbb !important; color: #fff !important;
}
body.agp-theme-preview main .agcoa-open:hover { background: #034486 !important; }
/* The saved single-product template contains its own dark gradient wrapper. */
body.agp-theme-preview.single-product .woocommerce.product > .has-center-top-gradient-gradient-background {
  background: #f7f9fc !important; border-color: #a8bacb !important; color: #304a61 !important;
}
body.agp-theme-preview:is(.woocommerce-cart,.woocommerce-checkout) .wp-site-blocks > .has-center-top-gradient-gradient-background {
  background: #f7f9fc !important; border-color: #a8bacb !important; color: #304a61 !important;
}
body.agp-theme-preview.single-product :is(.agp-app-product-promo,.agp-product-compliance-links) {
  background: #e7eff7 !important; border-color: #a8bacb !important; color: #304a61 !important;
  box-shadow: 0 6px 18px #23426012 !important;
}
body.agp-theme-preview.single-product :is(.woocommerce-breadcrumb,.product_meta) {
  color: #304a61 !important;
}
body.agp-theme-preview.single-product :is(.woocommerce-breadcrumb,.product_meta,.agp-product-compliance-links) a {
  color: #075cbb !important;
}
body.agp-theme-preview.single-product .agp-app-product-promo a {
  background: #075cbb !important; border-color: #075cbb !important; color: #fff !important;
  -webkit-text-fill-color: #fff !important; text-shadow: none !important;
}
/* Status colors stay distinct and readable on the lighter cart and checkout. */
body.agp-theme-preview :is(.wc-block-components-notice-banner,.woocommerce-info) {
  background: #eaf3ff !important; color: #153e68 !important; border-color: #4777a9 !important;
}
body.agp-theme-preview :is(.wc-block-components-notice-banner.is-error,.woocommerce-error) {
  background: #fff2f2 !important; color: #8c1c13 !important; border-color: #b91c1c !important;
}
body.agp-theme-preview :is(.wc-block-components-notice-banner.is-success,.woocommerce-message) {
  background: #effaf2 !important; color: #14532d !important; border-color: #368753 !important;
}
body.agp-theme-preview :is(.wc-block-components-notice-banner,.woocommerce-error,.woocommerce-message,.woocommerce-info)
  :is(.wc-block-components-notice-banner__content,div,p,li,a) { color: inherit !important; }
body.agp-theme-preview :is(.wc-block-components-validation-error,.wc-block-components-validation-error p,.wpforms-error) {
  color: #a01717 !important;
}
body.agp-theme-preview .wc-block-components-panel { background: #e7eff7 !important; color: #304a61 !important; }
body.agp-theme-preview .wc-block-components-panel__button {
  background: #e7eff7 !important; color: #304a61 !important; min-height: 44px;
}
/* Payment provider iframe contents are intentionally outside this stylesheet. */
body.agp-theme-preview .agp-ruo-dialog { background: #f7f9fc !important; border-color: #8299af !important; }
body.agp-theme-preview .agp-ruo-dialog :is(p,label,h2) { color: #102b46 !important; }
body.agp-theme-preview .agp-button-secondary { background: #e3edf7 !important; color: #075cbb !important; border-color: #8299af !important; }
/* Dark surfaces retain light descendant palette values, including menu overlays. */
body.agp-theme-preview :is(header.wp-block-template-part,footer.wp-block-template-part,.agp-header,.agp-footer,.agp-mobile-menu-panel) {
  --ag-text: #e3edf7; --ag-text-soft: #e3edf7; --ag-text-muted: #dce8f4;
  --agp-text: #e3edf7; --agp-muted: #dce8f4; --ag-blue-light: #e3edf7;
  --ag-access-soft: #dce8f4; --ag-access-muted: #dce8f4;
  background: #10273f !important; border-color: #496782 !important; color: #e3edf7 !important;
}
body.agp-theme-preview :is(.agp-compliance-bar,.agp-footer-bottom) { background: #0a1d30 !important; color: #dce8f4 !important; }
body.agp-theme-preview :is(.agp-header,.agp-footer,.agp-mobile-menu-panel) :is(a,p,h3,label,.agp-ruo-note) { color: #e3edf7 !important; }
body.agp-theme-preview :is(.agp-header,.agp-footer,.agp-mobile-menu-panel) a:hover { color: #83caff !important; }
body.agp-theme-preview :is(.agp-cart-link,.agp-site-search button,.agp-mobile-search button) {
  background: #075cbb !important; border-color: #7aafe3 !important; color: #fff !important; text-shadow: none !important;
}
body.agp-theme-preview .agp-site-search { background: #e3edf7 !important; border-color: #8299af !important; box-shadow: none !important; }
body.agp-theme-preview .agp-mobile-menu summary span { background: #e3edf7 !important; }
/* Existing highlighted Shop action: white text needs the approved darker blue. */
body.agp-theme-preview .agp-mobile-menu-panel nav a[href$="/shop/"] {
  background: #075cbb !important; color: #fff !important;
  border-color: #7aafe3 !important; box-shadow: 0 6px 16px #075cbb20 !important;
}
body.agp-theme-preview .agp-mobile-menu-panel nav a[href$="/shop/"]:hover {
  background: #034486 !important; color: #fff !important;
}
body.agp-theme-preview :is(a,button,input,select,textarea,summary):focus-visible {
  outline: 3px solid #075cbb !important; outline-offset: 3px !important; box-shadow: 0 0 0 2px #fff !important;
}
/* Keep copy readable where the unchanged helix passes behind hero captions. */
body.agp-theme-preview .agpx .px-hero :is(.px-note,.px-stage-caption,.px-vial figcaption,.px-link) {
  background: #e9eff5 !important;
  border-radius: 4px;
  padding: 5px 7px;
  box-sizing: border-box;
}
body.agp-theme-preview .agpx .px-hero .px-link {
  display: inline-flex; align-items: center; min-height: 44px;
}
body.agp-theme-preview :is(.agp-button-primary,.agp-button-secondary,.agp-mobile-search button,
  .agp-site-search button,.woocommerce button.button,.wpforms-submit) { min-height: 44px; }
body.agp-theme-preview :is(.agp-mobile-search,.agp-site-search) input[type=search] { min-height: 44px; min-width: 0; }
/* Preserve the same mobile navigation and wording while keeping it on screen. */
@media (max-width: 800px) {
  body.agp-theme-preview .agp-mobile-menu-panel {
    box-sizing: border-box !important;
    width: min(340px, calc(100vw - 52px)) !important;
    max-height: calc(100dvh - 156px);
    overflow-y: auto;
  }
  body.agp-theme-preview .agp-compliance-bar {
    flex-wrap: wrap !important;
    white-space: normal !important;
    overflow: visible !important;
    gap: 4px 12px !important;
  }
}
/* Approved mobile two-column catalog; keep desktop rules untouched. */
@media (min-width: 350px) and (max-width: 600px) {
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products) {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 16px 12px !important;
  }
}
@media (max-width: 600px) {
  body.agp-theme-preview.page-id-21 main > .wp-block-group { padding-inline: 0 !important; }
  body.agp-theme-preview #contact .wp-block-columns { margin-inline: 0 !important; width: 100%; }
  body.agp-theme-preview main.saaslauncher-cart-button { padding-inline: 14px !important; }
  body.agp-theme-preview main.saaslauncher-cart-button > .wp-block-group { padding-inline: 0 !important; }
  body.agp-theme-preview.woocommerce .wc-block-product-template { margin-inline: 0 !important; }
  body.agp-theme-preview.woocommerce .wc-block-product-template .wc-block-components-product-image {
    height: auto !important; min-height: 0 !important; aspect-ratio: auto !important;
  }
  body.agp-theme-preview.woocommerce .wc-block-product-template .wc-block-components-product-image img {
    width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important;
    /* A square display box plus contain shows each complete source image.
       It also avoids sizes=auto using the browser's 3000x1500 placeholder. */
    aspect-ratio: 1 / 1 !important; transform: none !important; object-fit: contain !important;
  }
  body.agp-theme-preview.woocommerce .wc-block-product-template .wp-block-post-terms {
    font-size: 12px !important; line-height: 1.35 !important;
  }
  body.agp-theme-preview .agpx .px-catalog ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important; line-height: 1.35 !important;
    height: auto !important; max-height: none !important; overflow: visible !important;
    white-space: normal !important; overflow-wrap: anywhere;
  }
  body.agp-theme-preview .agpx .px-catalog .price { font-size: 16px !important; }
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products) > li {
    width: auto !important; min-width: 0; margin: 0 !important; float: none !important;
    box-sizing: border-box;
  }
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products)
    :is(.saaslauncher-product-box,.wc-block-grid__product) { padding: 10px !important; }
  body.agp-theme-preview .px-catalog ul.products > li { padding: 10px !important; }
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products) img {
    width: 100% !important; height: auto !important; min-height: 0 !important; max-height: none !important;
    aspect-ratio: 1 / 1 !important; object-fit: contain !important; transform: none !important;
  }
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products)
    :is(h2,h3,.wp-block-post-title,.wc-block-grid__product-title) {
    font-size: 16px !important; line-height: 1.35 !important; white-space: normal !important;
    overflow-wrap: anywhere; height: auto !important; max-height: none !important;
    -webkit-line-clamp: unset !important;
  }
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products)
    :is(.button,.wp-element-button,.wp-block-button__link) {
    min-height: 44px !important; width: 100%; box-sizing: border-box;
    padding: 10px 6px !important; font-size: 14px !important; line-height: 1.35 !important;
    white-space: normal !important; height: auto !important;
  }
  body.agp-theme-preview .agp-case-loop,body.agp-theme-preview .agpx .agp-case-loop {
    padding: 7px !important; font-size: 13px !important; line-height: 1.4 !important;
    white-space: normal !important; overflow-wrap: anywhere;
  }
}
@media (max-width: 349px) {
  body.agp-theme-preview :is(.px-catalog ul.products,.woocommerce ul.products,
    .wc-block-product-template,ul.products-block-post-template,.wc-block-grid__products) {
    display: grid !important; grid-template-columns: minmax(0,1fr) !important;
  }
}
/* Legacy recommendation cards carry a dark gradient; use the same light catalog surface. */
body.agp-theme-preview .wc-block-grid__products .wc-block-grid__product {
  background: #f7f9fc !important; border-color: #b7c6d5 !important; color: #304a61 !important;
}
body.agp-theme-preview .wc-block-grid__product .wc-block-grid__product-title {
  color: #102b46 !important;
}
body.agp-theme-preview .wc-block-grid__product .wc-block-grid__product-price {
  color: #075cbb !important;
}
/* The FAQ's legacy translucent dark cards need a matching light surface. */
body.agp-theme-preview .agp-faq-card {
  background: #f7f9fc !important;
  border-color: #a8bacb !important;
  color: #304a61 !important;
}
body.agp-theme-preview .agp-faq-card h3 { color: #102b46 !important; }
body.agp-theme-preview .agp-faq-card p { color: #304a61 !important; }
/* Supporting pages also retain legacy dark cards and pale inline links. */
body.agp-theme-preview :is(.agp-policy-card,.agcoa-empty,.ag-geo2-answer,.ag-geo2-cta,.ag-geo2-ruo,.ag-geo2-compliance),
body.agp-theme-preview.page-id-9133 .agp-clean-page,
body.agp-theme-preview.woocommerce-account main .woocommerce {
  background: #f7f9fc !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview main :is(.wp-block-post-content,.entry-content,.woocommerce) p a:not(.button):not(.wp-block-button__link):not(.agp-button):not(.ag-geo2-button) {
  color: #075cbb !important; -webkit-text-fill-color: #075cbb !important;
}
body.agp-theme-preview .ag-geo2-authority a.ag-geo2-button {
  background: #075cbb !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
}
/* Documentation has a page-specific, late inline dark-theme override. */
body.agp-theme-preview.page-id-9012 .wp-site-blocks,
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target {
  background: #f7f9fc !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target :is(article,section,.wp-block-group,.wp-block-post-content,p,li,td,th,figcaption,ul,ol) {
  color: #304a61 !important;
}
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target :is(h1,h2,h3,h4,h5,h6) { color: #102b46 !important; }
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target a:any-link {
  color: #075cbb !important; -webkit-text-fill-color: #075cbb !important; text-decoration-color: currentColor !important;
}
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target a:is(:hover,:focus-visible) {
  color: #034486 !important; -webkit-text-fill-color: #034486 !important;
}
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target :is(.ag-geo2-answer,.ag-geo2-cta,.ag-geo2-ruo,.ag-geo2-compliance,aside) {
  background: #e7eff7 !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview.page-id-9012 main#wp--skip-link--target a.ag-geo2-button:any-link {
  background: #075cbb !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
}
body.agp-theme-preview main .wp-block-group.saaslauncher-hover-box,
body.agp-theme-preview main .agp-related-research,
body.agp-theme-preview.single-post main .has-nutral-background-color {
  background: #f7f9fc !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview main :is(.wp-block-post-terms,.agp-related-research) a {
  color: #075cbb !important; -webkit-text-fill-color: #075cbb !important;
}
body.agp-theme-preview main :is(.wp-block-post-author-name,.wp-block-post-date) { color: #304a61 !important; }
body.agp-theme-preview main .page-numbers.current {
  background: #075cbb !important; color: #fff !important;
}
/* Show the whole existing article image, including text printed into it. */
body.agp-theme-preview:is(.single-post,.category) main .wp-block-post-featured-image,
body.agp-theme-preview:is(.single-post,.category) main .wp-block-post-featured-image a {
  height: auto !important;
}
body.agp-theme-preview:is(.single-post,.category) main .wp-block-post-featured-image img {
  width: 100% !important; height: auto !important; max-height: 520px;
  aspect-ratio: auto !important; object-fit: contain !important;
}
body.agp-theme-preview .agp-research-footer { color: #304a61 !important; }
body.agp-theme-preview:is(.page-id-23,.page-id-24) .agp-clean-page .wp-block-column {
  background: #f7f9fc !important; color: #304a61 !important; border-color: #a8bacb !important;
}
body.agp-theme-preview main a.ag-geo1-button:any-link {
  background: #075cbb !important; color: #fff !important; -webkit-text-fill-color: #fff !important;
  border-color: #075cbb !important; min-height: 44px;
}
body.agp-theme-preview.woocommerce-account main .woocommerce {
  padding: clamp(16px,2vw,24px); box-sizing: border-box;
}
body.agp-theme-preview.woocommerce-account .show-password-input {
  width: 44px !important; height: 44px !important; min-width: 44px; min-height: 44px;
  background: #e7eff7 !important; color: #075cbb !important;
}
body.agp-theme-preview.woocommerce-account .password-input input { padding-right: 62px !important; }

body.agp-theme-preview.single-post main .wp-block-post-content li a {
  color: #075cbb !important; -webkit-text-fill-color: #075cbb !important;
}
/* Policy markup lacks the block layout classes that normally separate its links. */
body.agp-theme-preview.page-id-9506 main .wp-block-buttons {
  display: flex; flex-wrap: wrap; gap: 12px; align-items: center;
}
body.agp-theme-preview.page-id-9506 main .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; box-sizing: border-box;
}
/* Approved separate Research App page: copy and download precede unchanged art. */
body.agp-theme-preview .agp-mobile-menu-panel > a[href$="/research-app/"] {
  display: flex; align-items: center; min-height: 48px; box-sizing: border-box;
  padding: 12px 16px; margin-top: 10px; border: 1px solid #54718a; border-radius: 8px;
  background: #19334c; color: #f7f9fc !important; text-decoration: none;
}
body.agp-theme-preview main.agp-research-app-main {
  margin: 0; padding: clamp(28px,5vw,72px) 20px;
  background: #edf3f8 !important; color: #304a61 !important;
}
body.agp-theme-preview .agp-research-app-hero {
  display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr);
  gap: clamp(28px,5vw,72px); align-items: center; max-width: 1120px; margin: 0 auto;
}
body.agp-theme-preview .agp-research-app-copy { min-width: 0; }
body.agp-theme-preview .agp-research-app-copy h1 {
  font-size: clamp(36px,4.5vw,60px); line-height: 1.1; margin: 0 0 16px;
}
body.agp-theme-preview .agp-research-app-copy h2 {
  font-size: clamp(22px,2.4vw,30px); line-height: 1.25; margin: 0 0 20px;
}
body.agp-theme-preview .agp-research-app-copy p {
  font-size: 18px; line-height: 1.6; margin: 0 0 28px; color: #304a61 !important;
}
body.agp-theme-preview a.agp-research-app-download:any-link {
  display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box;
  max-width: 100%; min-height: 48px; padding: 14px 22px; border: 2px solid #075cbb;
  border-radius: 8px; background: #075cbb !important; color: #fff !important;
  -webkit-text-fill-color: #fff !important; font-size: 16px; font-weight: 700;
  line-height: 1.45; text-align: center; text-decoration: none; white-space: normal;
}
body.agp-theme-preview a.agp-research-app-download:is(:hover,:focus-visible) {
  background: #034486 !important; border-color: #034486;
}
body.agp-theme-preview .agp-research-app-art { margin: 0; min-width: 0; }
body.agp-theme-preview .agp-research-app-art img {
  display: block; width: 100%; max-width: 480px; height: auto !important;
  object-fit: contain; margin: 0 auto;
}
@media (max-width: 700px) {
  body.agp-theme-preview .agp-research-app-hero { grid-template-columns: minmax(0,1fr); gap: 32px; }
  body.agp-theme-preview .agp-research-app-download { width: 100%; }
}
/* Final bounded polish: existing colors, content and artwork are retained. */
@media (min-width: 801px) {
  body.agp-theme-preview .agp-header-inner {
    width: calc(100% - 48px) !important; max-width: 1280px !important;
    grid-template-columns: 220px minmax(0,1fr) auto auto !important;
    gap: 24px !important; min-height: 118px;
  }
  body.agp-theme-preview .agp-brand img { width: 220px !important; height: auto !important; }
  body.agp-theme-preview .agp-desktop-nav { gap: 16px !important; justify-content: center; }
  body.agp-theme-preview .agp-desktop-nav a {
    white-space: nowrap; min-height: 44px; min-width: 44px; display: inline-flex; align-items: center; justify-content: center;
  }
  body.agp-theme-preview .agp-site-search { width: 220px !important; box-shadow: none !important; }
  body.agp-theme-preview .agp-site-search input { width: 100% !important; min-width: 0; }
  body.agp-theme-preview .agp-header-actions a { min-height: 44px; display: inline-flex; align-items: center; box-sizing: border-box; }
}
@media (min-width: 801px) and (max-width: 1199px) {
  body.agp-theme-preview .agp-header-inner {
    grid-template-columns: 220px minmax(220px,1fr) auto !important;
    gap: 4px 24px !important; padding-block: 12px !important;
  }
  body.agp-theme-preview .agp-brand { grid-row: 1; grid-column: 1; }
  body.agp-theme-preview .agp-site-search { grid-row: 1; grid-column: 2; justify-self: end; }
  body.agp-theme-preview .agp-header-actions { grid-row: 1; grid-column: 3; }
  body.agp-theme-preview .agp-desktop-nav { grid-row: 2; grid-column: 1 / -1; gap: 28px !important; }
}
body.agp-theme-preview .agpx .px-hero .px-actions { gap: 16px 24px; align-items: center; }
body.agp-theme-preview .agpx .px-hero .px-note {
  display: inline-block; width: auto; max-width: 100%; margin-top: 24px;
  padding: 8px 12px; border-radius: 6px;
}
body.agp-theme-preview .agpx .px-stage { padding-top: 0; text-align: center; }
body.agp-theme-preview .agpx .px-vials { align-items: start; gap: 20px; }
body.agp-theme-preview .agpx .px-vial:nth-child(2) { margin-top: 0; }
body.agp-theme-preview .agpx .px-vial img { box-shadow: 0 8px 24px #23426020 !important; }
body.agp-theme-preview .agpx .px-vial figcaption {
  margin-top: 8px; padding: 8px 10px; line-height: 1.5; border-radius: 6px;
}
body.agp-theme-preview .agpx .px-stage-caption {
  display: inline-block; width: auto; max-width: 100%; margin-top: 20px;
  padding: 8px 12px; border-radius: 6px;
}
/* One panel per checkout column; remove decorative nested frames and glow. */
body.agp-theme-preview.woocommerce-checkout .wp-block-group:has(.wp-block-woocommerce-checkout) {
  border: 0 !important; box-shadow: none !important;
}
body.agp-theme-preview.woocommerce-checkout .wp-block-group:has(.wp-block-woocommerce-checkout)::before { display: none !important; }
body.agp-theme-preview .wp-block-woocommerce-checkout,
body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-checkout {
  background: transparent !important; border: 0 !important; box-shadow: none !important;
  padding: 0 !important;
}
body.agp-theme-preview .wc-block-checkout::before { display: none !important; }
body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-checkout {
  gap: 28px; align-items: flex-start;
}
body.agp-theme-preview .wc-block-checkout .wc-block-components-main,
body.agp-theme-preview .wc-block-checkout .wc-block-components-sidebar {
  box-sizing: border-box; padding: 28px !important; margin: 0 !important;
  border: 1px solid #a8bacb !important; border-radius: 12px !important;
  background: #f7f9fc !important; box-shadow: 0 6px 20px #23426012 !important;
}
body.agp-theme-preview .wc-block-checkout .wc-block-components-main { flex: 1 1 0; min-width: 0; }
body.agp-theme-preview .wc-block-checkout .wc-block-components-sidebar { flex: 0 0 35%; min-width: 0; }
body.agp-theme-preview .wc-block-checkout .wp-block-woocommerce-checkout-order-summary-block {
  padding: 0 !important; border: 0 !important; box-shadow: none !important;
}
body.agp-theme-preview .wc-block-checkout :is(.wc-block-components-notice-banner,.wc-block-components-button,.wc-block-components-panel__button) {
  box-shadow: none !important;
}
body.agp-theme-preview .wc-block-checkout .wc-block-components-checkout-step { margin-bottom: 28px; }
body.agp-theme-preview .wc-block-checkout .wc-block-components-checkout-step__title {
  font-size: 18px !important; font-weight: 600 !important; line-height: 1.4;
}
body.agp-theme-preview .wc-block-checkout .wc-block-components-checkout-place-order-button { min-height: 48px; }
@media (max-width: 800px) {
  body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-checkout { gap: 20px; }
  body.agp-theme-preview .wc-block-checkout .wc-block-components-main,
  body.agp-theme-preview .wc-block-checkout .wc-block-components-sidebar {
    flex: 0 0 100%; width: 100% !important; padding: 20px !important;
  }
  body.agp-theme-preview .agpx .px-vials { gap: 12px; }
}
/* The shipping template contains an empty group and duplicate bottom padding. */
body.agp-theme-preview.page-id-9506 main,
body.agp-theme-preview.page-id-9506 main :is(.wp-block-group,.wp-block-post-content) { transition: none !important; }
body.agp-theme-preview.page-id-9506 main { padding-block: 48px !important; }
body.agp-theme-preview.page-id-9506 main > .wp-block-group:has(> h1) { padding-bottom: 32px !important; }
body.agp-theme-preview.page-id-9506 main > .wp-block-group:not(:has(*)) { display: none; }
body.agp-theme-preview.page-id-9506 main > .wp-block-group:has(> .wp-block-post-content) { padding: 0 !important; }
body.agp-theme-preview.page-id-9506 main .wp-block-post-content { max-width: 1080px !important; }
body.agp-theme-preview.page-id-9506 main .agp-policy-page {
  padding-bottom: 0 !important; width: 100% !important; max-width: 1080px !important;
  margin-inline: auto !important; transform: none !important;
}
body.agp-theme-preview.page-id-9506 main .agp-policy-card { box-shadow: 0 6px 20px #23426012 !important; }
@media (max-width: 600px) {
  body.agp-theme-preview.page-id-9506 main { padding-block: 32px !important; }
  body.agp-theme-preview.page-id-9506 main > .wp-block-group:has(> h1) { padding-bottom: 24px !important; }
}

/* Owner-approved hero logo only; original artwork is served byte-for-byte. */
body.agp-theme-preview .agpx .px-hero h1.agp-hero-brand {
  margin: -12px 0 20px !important; padding: 0 !important;
  width: 100%; max-width: 600px; line-height: 0; background: transparent !important;
  position: relative; aspect-ratio: 3 / 1;
}
body.agp-theme-preview .agpx .px-hero .agp-hero-brand img {
  display: block; width: 106% !important; height: auto !important;
  max-width: none; aspect-ratio: 3 / 1; object-fit: contain;
  position: absolute; left: 0; top: 50%; transform: translate(-3%, -50%);
  padding: 0 !important; margin: 0 !important; border: 0 !important;
  border-radius: 0 !important; box-shadow: none !important; filter: none !important;
}

/* Final approved populated-cart spacing, matching the checkout panels. */
body.agp-theme-preview .wc-block-cart,
body.agp-theme-preview .wc-block-cart * { transition: none !important; }
body.agp-theme-preview .wp-block-woocommerce-cart,
body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-cart {
  border: 0 !important; box-shadow: none !important; padding: 0 !important;
}
body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-cart { gap: 28px; align-items: flex-start; }
body.agp-theme-preview .wc-block-cart .wc-block-components-main,
body.agp-theme-preview .wc-block-cart .wc-block-components-sidebar {
  padding: 28px !important; border: 1px solid #b7c6d5 !important; border-radius: 12px;
  box-shadow: 0 6px 20px #23426012 !important; box-sizing: border-box;
}
body.agp-theme-preview .wc-block-cart .wc-block-components-main { flex: 1 1 0; min-width: 0; }
body.agp-theme-preview .wc-block-cart .wc-block-components-sidebar { flex: 0 0 35%; width: 35%; }
body.agp-theme-preview .wc-block-cart :is(.wp-block-woocommerce-cart-order-summary-block,.wc-block-cart__submit,.wc-block-cart__submit-container) {
  padding: 0 !important; border: 0 !important; box-shadow: none !important;
}
body.agp-theme-preview .wc-block-cart::before,
body.agp-theme-preview .wc-block-cart::after,
body.agp-theme-preview .wc-block-cart .wc-block-components-main::before,
body.agp-theme-preview .wc-block-cart .wc-block-components-main::after,
body.agp-theme-preview .wc-block-cart .wc-block-components-sidebar::before,
body.agp-theme-preview .wc-block-cart .wc-block-components-sidebar::after { display: none !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__image { width: 96px !important; padding: 16px 20px 16px 0 !important; vertical-align: middle !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__image img { width: 96px !important; height: auto !important; object-fit: contain; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__product { padding: 16px 0 !important; vertical-align: middle !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__total { padding: 16px 0 16px 16px !important; vertical-align: middle !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-items__header-total { text-align: right !important; padding-right: 0 !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__wrap > * { margin-block: 0 6px !important; }
body.agp-theme-preview .wc-block-cart .wc-block-components-product-metadata { font-size: 14px; line-height: 1.45; }
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__quantity { margin-bottom: 0 !important; }
body.agp-theme-preview .wc-block-cart .wc-block-components-quantity-selector,
body.agp-theme-preview .wc-block-cart .wc-block-cart-item__remove-link { box-shadow: none !important; }
body.agp-theme-preview .wc-block-cart .wc-block-cart__submit { margin-top: 20px; }
body.agp-theme-preview .wc-block-cart .wc-block-components-button { min-height: 48px; box-shadow: none !important; }
@media (max-width: 800px) {
  body.agp-theme-preview .wc-block-components-sidebar-layout.wc-block-cart { gap: 20px; }
  body.agp-theme-preview .wc-block-cart .wc-block-components-main,
  body.agp-theme-preview .wc-block-cart .wc-block-components-sidebar { flex: 0 0 100%; width: 100% !important; padding: 20px !important; }
  body.agp-theme-preview .wc-block-cart .wc-block-cart-items__row { display: grid !important; grid-template-columns: 64px minmax(0,1fr) !important; gap: 12px 16px; align-items: center; padding-block: 12px; }
  body.agp-theme-preview .wc-block-cart .wc-block-cart-item__image { grid-area: 1 / 1 / 2 / 2 !important; width: 64px !important; padding: 0 !important; }
  body.agp-theme-preview .wc-block-cart .wc-block-cart-item__image img { width: 64px !important; }
  body.agp-theme-preview .wc-block-cart .wc-block-cart-item__product { grid-area: 1 / 2 / 2 / 3 !important; width: auto !important; padding: 0 !important; min-width: 0; }
  body.agp-theme-preview .wc-block-cart .wc-block-cart-item__total { grid-area: 2 / 2 / 3 / 3 !important; position: static !important; width: auto !important; padding: 0 !important; justify-self: end; }
}
