/* GA+ product page: scoped styles, after Ignavo Child. */
body.ga-product-page { --ga-pdp-ink:#182126; --ga-pdp-muted:#667178; --ga-pdp-line:#e6e9eb; --ga-pdp-red:#ff0030; }
.ga-product-page .single-product-wrapper { max-width:1280px; margin-inline:auto; }
.ga-product-page .single-product > .product-body { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:start; }
.ga-product-page .single-product .product-body > .column { width:auto; max-width:none; min-width:0; padding:0; }
.ga-product-page .single-product .product-detail-inner { padding:0; gap:0; }
.ga-product-page .single-product .product_title { margin:0 0 10px; color:var(--ga-pdp-ink); font-family:inherit; font-size:clamp(25px,2.2vw,34px); font-weight:650; line-height:1.2; letter-spacing:-.7px; }
.ga-product-page .ga-pdp-sku { color:var(--ga-pdp-muted); font-size:12px; margin:0 0 16px; }
.ga-product-page .ga-pdp-sku span { color:#414d55; }
.ga-product-page .single-product .woocommerce-product-gallery { border:1px solid var(--ga-pdp-line); border-radius:16px; overflow:hidden; background:#fff; }
.ga-product-page .single-product .woocommerce-product-gallery__image img { object-fit:contain; max-height:640px; }
.ga-product-page .single-product .klb-flexslider-thumbnail { padding:12px; background:#fff; }
.ga-product-page .single-product .flex-control-thumbs img { border:1px solid var(--ga-pdp-line); border-radius:8px; opacity:.65; }
.ga-product-page .single-product .flex-control-thumbs img.flex-active { opacity:1; border-color:var(--ga-pdp-red); }
.ga-product-page .ga-pdp-energy { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; margin:0 0 20px; }
.ga-product-page .ga-energy-arrow { width:72px; height:35px; display:inline-flex; align-items:center; justify-content:center; padding-right:10px; flex:none; color:#fff; background:var(--ga-energy-color,#008a3e); clip-path:polygon(0 0,80% 0,100% 50%,80% 100%,0 100%); font-family:Arial,sans-serif; font-size:21px; font-weight:700; line-height:1; }
.ga-product-page .ga-energy-caption { font-size:12px; color:var(--ga-pdp-muted); }
.ga-product-page .ga-energy-caption strong { color:var(--ga-pdp-ink); }
.ga-product-page .ga-energy-link { color:#414d55; font-size:12px; text-decoration:underline; text-underline-offset:3px; }
.ga-product-page .single-product .woocommerce-product-details__short-description { margin:0 0 18px; font-size:14px; line-height:1.65; color:#515d64; }
.ga-product-page .single-product .woocommerce-product-details__short-description p:last-child { margin-bottom:0; }
.ga-product-page .ga-pdp-highlights { list-style:none; padding:0; margin:0 0 24px; display:grid; gap:8px; }
.ga-product-page .ga-pdp-highlights li { display:flex; align-items:start; gap:9px; font-size:13px; line-height:1.5; color:#515d64; }
.ga-product-page .ga-pdp-highlights strong { font-weight:600; color:#333f47; }
.ga-product-page .ga-pdp-icon { width:22px; height:22px; flex:none; }
.ga-product-page .ga-pdp-highlights .ga-pdp-icon { width:18px; height:18px; margin-top:1px; color:#278553; }
.ga-product-page .single-product .product-detail-inner .product-price-wrapper { margin:0 0 18px; }
.ga-product-page .single-product .product-detail-inner .product-price-wrapper .price { display:flex; flex-direction:row; justify-content:flex-start; flex-wrap:wrap; align-items:baseline; gap:12px; color:var(--ga-pdp-ink); font-family:inherit; font-size:34px; line-height:1.2; font-weight:700; }
.ga-product-page .single-product .product-detail-inner .product-price-wrapper .price > ins { order:-1; background:none; text-decoration:none; color:var(--ga-pdp-ink); font-weight:700; }
.ga-product-page .single-product .product-detail-inner .product-price-wrapper .price > del { color:#879299; font-size:19px; font-weight:400; }
.ga-product-page .ga-pdp-availability { display:flex; align-items:start; gap:13px; padding:17px 18px; border:1px solid #d6e9dd; border-radius:12px; background:#f2f8f4; color:#21623c; margin:0 0 18px; }
.ga-product-page .ga-pdp-availability > svg { margin-top:3px; width:25px; height:25px; }
.ga-product-page .ga-pdp-eyebrow { display:block; margin:0 0 4px; font-weight:650; font-size:13px; color:#21623c; }
.ga-product-page .ga-pdp-availability p { margin:0; font-size:13px; line-height:1.6; color:#344e3d; overflow-wrap:anywhere; }
.ga-product-page .ga-pdp-availability.is-unavailable { background:#fff5f4; border-color:#efdad7; }
.ga-product-page .ga-pdp-availability.is-unavailable .ga-pdp-eyebrow, .ga-product-page .ga-pdp-availability.is-unavailable > svg { color:#a03f37; }
.ga-product-page .single-product form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:0!important; margin:0 0 18px; position:static!important; width:auto; background:transparent; }
.ga-product-page .single-product form.cart .quantity.quantity-select { display:flex!important; align-items:center; width:110px; flex:none; border:1px solid #dce2e5; border-radius:10px; height:52px; }
.ga-product-page .single-product form.cart .single_add_to_cart_button { display:flex; align-items:center; justify-content:center; gap:8px; flex:1 1 180px; width:auto; max-width:none!important; margin:0!important; min-height:52px; height:auto; padding:14px 24px; border:0; border-radius:10px; background:var(--ga-pdp-red); color:#fff; font-size:15px; font-weight:650; box-shadow:0 6px 14px rgba(255,0,48,.12); }
.ga-product-page .single-product form.cart .single_add_to_cart_button:hover { background:#df002b; }
.ga-product-page .single-product form.cart .variations, .ga-product-page .single-product form.cart .single_variation_wrap { width:100%; }
.ga-product-page .single-product .single_variation_wrap .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.ga-product-page .single-product form.cart .single-product-buttons { width:100%; margin:2px 0 0; font-size:12px; color:var(--ga-pdp-muted); }
.ga-product-page .single-product form.cart .cart-actions { display:flex; flex-wrap:wrap; flex:0 0 100%; width:100%; gap:20px; margin:2px 0 0; font-size:12px; color:var(--ga-pdp-muted); }
.ga-product-page .single-product form.cart .quantity-button.minus i::before { content:"−"; font-family:Arial,sans-serif; font-size:20px; }
.ga-product-page .single-product form.cart .quantity-button.plus i::before { content:"+"; font-family:Arial,sans-serif; font-size:20px; }
.ga-product-page .ga-pdp-documents { padding:4px 0 16px; margin-bottom:12px; border-bottom:1px solid var(--ga-pdp-line); }
.ga-product-page .ga-pdp-documents a { display:inline-flex; align-items:center; gap:8px; font-size:12px; color:#414d55; text-decoration:underline; text-underline-offset:3px; }
.ga-product-page .ga-pdp-documents svg { width:18px; height:18px; }
.ga-product-page .single-product .product-assistant { border:1px solid var(--ga-pdp-line); background:#fff; border-radius:10px; font-size:13px; }
.ga-product-page .single-product .product-detail-inner > .product_meta { margin-top:16px; font-size:12px; color:var(--ga-pdp-muted); }
.ga-product-page .single-product-tabs-wrapper { margin-top:48px; border-top:1px solid var(--ga-pdp-line); padding-top:16px; }
.ga-product-page .single-product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; gap:8px 24px; list-style:none; border-bottom:1px solid var(--ga-pdp-line); padding:0; margin:0 0 28px; }
.ga-product-page .single-product .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:0; background:transparent; }
.ga-product-page .single-product .woocommerce-tabs ul.tabs li a { display:block; padding:15px 0; font-size:15px; font-weight:600; color:#6b7479; }
.ga-product-page .single-product .woocommerce-tabs ul.tabs li.active a { color:var(--ga-pdp-ink); box-shadow:inset 0 -3px var(--ga-pdp-red); }
.ga-product-page .single-product .woocommerce-Tabs-panel { color:#515d64; font-size:14px; line-height:1.8; }
.ga-product-page .single-product .woocommerce-Tabs-panel > h2:first-child { display:none; }
.ga-product-page .single-product #tab-description { max-width:1000px; }
.ga-product-page .single-product #tab-description b, .ga-product-page .single-product #tab-description strong { color:var(--ga-pdp-ink); font-size:17px; font-weight:650; }
.ga-product-page .single-product table.shop_attributes { border-collapse:collapse; width:100%; font-size:13px; }
.ga-product-page .single-product table.shop_attributes th, .ga-product-page .single-product table.shop_attributes td { padding:13px 18px; border-bottom:1px solid var(--ga-pdp-line); text-align:left; }
.ga-product-page .single-product table.shop_attributes th { width:38%; font-weight:600; color:#36434a; }
.ga-product-page .single-product table.shop_attributes tr:nth-child(odd) { background:#f6f8f9; }
.ga-product-page .single-product table.shop_attributes p { margin:0; }
.ga-product-page .single-product .related-products { margin-top:44px; }
.ga-product-page .single-product .product-badge { inset-block-start:16px; inset-inline-start:16px; }
.ga-product-page .single-product .product-badge .badge { border-radius:6px; padding:6px 10px; font-size:12px; background:var(--ga-pdp-red); color:#fff; }
.ga-product-page a:focus-visible, .ga-product-page button:focus-visible { outline:3px solid #2775ae; outline-offset:3px; }
/* Continuous description and specifications, inspired by the Rosmarino layout. */
.ga-product-page .single-product-tabs-wrapper { margin-top:56px; padding-top:0; border-top:0; }
.ga-product-page .ga-pdp-content { width:100%; color:#556169; }
.ga-product-page .ga-content-nav { display:flex; flex-wrap:wrap; gap:12px 32px; padding:0 0 18px; border-bottom:1px solid var(--ga-pdp-line); margin-bottom:36px; }
.ga-product-page .ga-content-nav a { font-size:14px; font-weight:600; color:#414d55; padding:8px 0; text-decoration:none; }
.ga-product-page .ga-content-nav a:hover { color:var(--ga-pdp-red); }
.ga-product-page .ga-pdp-content section { scroll-margin-top:140px; }
.ga-product-page .ga-section-title { font-family:inherit; color:var(--ga-pdp-ink); font-size:clamp(23px,2.2vw,29px); font-weight:600; line-height:1.3; margin:0 0 26px; letter-spacing:-.4px; }
.ga-product-page .ga-story-intro { background:#f6f7f7; padding:clamp(28px,4vw,48px); margin:0 0 48px; border-radius:14px; text-align:center; }
.ga-product-page .ga-story-intro .ga-story-copy { max-width:980px; margin:auto; }
.ga-product-page .ga-story-copy h3 { font-family:inherit; font-size:clamp(20px,2vw,26px); font-weight:600; line-height:1.35; letter-spacing:-.3px; color:var(--ga-pdp-ink); margin:0 0 12px; }
.ga-product-page .ga-story-copy p { font-size:15px; line-height:1.8; margin:0; color:#667178; }
.ga-product-page .ga-story-intro p { font-size:17px; color:#4d5960; }
.ga-product-page .ga-story-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,5vw,76px); align-items:center; margin-bottom:64px; }
.ga-product-page .ga-story-text { padding:12px clamp(0px,2vw,26px); display:grid; gap:28px; min-width:0; }
.ga-product-page .ga-story-visual { margin:0; padding:24px; background:#fafbfb; border:1px solid #edf0f1; border-radius:16px; min-width:0; }
.ga-product-page .ga-story-image { width:100%; height:auto; max-height:650px; object-fit:contain; display:block; border-radius:10px; }
.ga-product-page .ga-story-reverse .ga-story-text { grid-column:2; grid-row:1; }
.ga-product-page .ga-story-reverse .ga-story-visual { grid-column:1; grid-row:1; }
.ga-product-page .ga-story-text-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 48px; margin-bottom:48px; }
.ga-product-page .ga-description-rich { font-size:15px; line-height:1.85; margin-bottom:48px; overflow-wrap:anywhere; }
.ga-product-page .ga-description-rich img, .ga-product-page .ga-description-rich video { max-width:100%; height:auto; }
.ga-product-page .ga-story-footnote { color:var(--ga-pdp-muted); font-size:12px; margin:-16px 0 32px; }
.ga-product-page .ga-content-details { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,5vw,76px); padding:48px 0; border-top:1px solid var(--ga-pdp-line); }
.ga-product-page .ga-content-aside, .ga-product-page .ga-content-specs { min-width:0; }
.ga-product-page .ga-content-aside .ga-pdp-highlights { gap:15px; margin-bottom:32px; }
.ga-product-page .ga-content-aside .ga-pdp-highlights li { font-size:14px; }
.ga-product-page .ga-details-help { padding:26px; border-radius:14px; background:#f6f7f7; }
.ga-product-page .ga-details-help h3 { color:var(--ga-pdp-ink); font-family:inherit; font-size:20px; font-weight:600; line-height:1.4; margin:0 0 20px; }
.ga-product-page .ga-details-help .ga-pdp-documents { margin:0; padding-bottom:0; border:0; }
.ga-product-page .ga-details-help .ga-pdp-energy { margin-bottom:0; }
.ga-product-page .ga-details-help .ga-pdp-documents:not(:empty) { padding-top:18px; }
.ga-product-page .ga-content-specs > h2:not(.ga-section-title) { display:none; }
.ga-product-page .ga-content-specs table.shop_attributes { margin:0; border:0; font-size:13px; line-height:1.65; }
.ga-product-page .ga-content-specs table.shop_attributes th, .ga-product-page .ga-content-specs table.shop_attributes td { border:0; border-bottom:1px solid #eaedef; padding:12px 14px; background:none; font-style:normal; vertical-align:top; overflow-wrap:anywhere; }
.ga-product-page .ga-content-specs table.shop_attributes th { width:45%; font-weight:500; }
.ga-product-page .ga-content-specs table.shop_attributes td { color:#667178; }
.ga-product-page .ga-content-specs table.shop_attributes tr:nth-child(odd) { background:#f8f9f9; }
.ga-product-page .single-product .ga-content-specs table.shop_attributes { table-layout:fixed; }
.ga-product-page .single-product .ga-content-specs table.shop_attributes tbody { display:table-row-group; }
.ga-product-page .single-product .ga-content-specs table.shop_attributes tr { display:table-row; width:auto; }
.ga-product-page .single-product .ga-content-specs table.shop_attributes th { width:45%; }
.ga-product-page .single-product .ga-content-specs table.shop_attributes td { width:55%; }
.ga-product-page .ga-content-extra { border-top:1px solid var(--ga-pdp-line); padding:26px 0; }
.ga-product-page .ga-content-reviews summary { cursor:pointer; font-family:inherit; font-size:23px; color:var(--ga-pdp-ink); font-weight:600; padding:8px 0; }
.ga-product-page .ga-content-reviews summary::marker { color:var(--ga-pdp-red); font-size:16px; }
.ga-product-page .ga-review-body { padding-top:24px; }
.ga-product-page .ga-content-reviews summary:focus-visible { outline:3px solid #2775ae; outline-offset:5px; }
@media(min-width:1025px) {
  .ga-product-page .single-product .product-gallery-column { position:sticky; top:24px; }
}
@media(max-width:1024px) {
  .ga-product-page .single-product > .product-body { gap:24px; }
  .ga-product-page .single-product .product_title { font-size:25px; }
}
@media(max-width:767px) {
  .ga-product-page .single-product > .product-body { grid-template-columns:minmax(0,1fr); gap:24px; }
  .ga-product-page .single-product .product_title { font-size:25px; line-height:1.25; }
  .ga-product-page .single-product .woocommerce-product-gallery { border-radius:12px; }
  .ga-product-page .single-product .woocommerce-product-gallery__image img { max-height:440px; }
  .ga-product-page .single-product .product-detail-inner .product-price-wrapper .price { font-size:30px; }
  .ga-product-page .ga-pdp-highlights { gap:7px; margin-bottom:20px; }
  .ga-product-page .single-product-tabs-wrapper { margin-top:32px; }
  .ga-product-page .single-product table.shop_attributes th, .ga-product-page .single-product table.shop_attributes td { padding:11px 12px; }
  .ga-product-page .product-bottom-fixed { display:none!important; }
  .ga-product-page .ga-content-nav { gap:8px 18px; margin-bottom:26px; padding-bottom:12px; }
  .ga-product-page .ga-content-nav a { font-size:12px; }
  .ga-product-page .ga-story-intro { padding:26px 20px; margin-bottom:32px; text-align:left; }
  .ga-product-page .ga-story-intro p { font-size:15px; }
  .ga-product-page .ga-story-row, .ga-product-page .ga-content-details, .ga-product-page .ga-story-text-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .ga-product-page .ga-story-row { margin-bottom:36px; }
  .ga-product-page .ga-story-text { padding:0; gap:24px; }
  .ga-product-page .ga-story-reverse .ga-story-text, .ga-product-page .ga-story-reverse .ga-story-visual { grid-column:auto; grid-row:auto; }
  .ga-product-page .ga-story-visual { padding:20px; border-radius:12px; }
  .ga-product-page .ga-story-image { max-height:440px; }
  .ga-product-page .ga-story-copy h3 { font-size:22px; }
  .ga-product-page .ga-story-copy p { font-size:14px; line-height:1.8; }
  .ga-product-page .ga-content-details { padding:32px 0; gap:36px; }
  .ga-product-page .ga-details-help { padding:22px 18px; }
  .ga-product-page .ga-content-specs table.shop_attributes th, .ga-product-page .ga-content-specs table.shop_attributes td { padding:11px 10px; }
  .ga-product-page .ga-section-title { font-size:25px; margin-bottom:22px; }
}
@media(prefers-reduced-motion:reduce) {
  .ga-product-page .single-product * { scroll-behavior:auto; }
}
