/* Product mobile experience: shared neon shell + native app-like product surfaces. */
.product-mobile-footer-toggle,
.review-compose-toggle{display:none}
.product-mobile-footer-panel,
.product-mobile-footer-panel-inner{display:contents}

/* The review renderer keeps a useful mobile reading order without changing desktop. */
.product-page .review-overview>.legacy-rating-panel{grid-column:1;grid-row:1}
.product-page .review-overview>.review-compose{grid-column:2;grid-row:1;min-width:0}
.product-page .review-overview>.placeholder-reviews{grid-column:1/-1;grid-row:2;min-width:0}

@media (max-width:767.98px), (max-height:500px) and (pointer:coarse){
  :root{
    --product-mobile-gutter:12px;
    --product-mobile-radius:16px;
    --product-mobile-tabs-top:calc(max(6px,env(safe-area-inset-top)) + 62px);
    --product-mobile-dock-bottom:calc(var(--mobile-nav-height,64px) + max(16px,env(safe-area-inset-bottom)));
    --product-mobile-dock-height:64px;
    --product-mobile-shadow:0 8px 24px rgba(0,43,92,.08);
  }

  html{scroll-padding-top:126px}
  body.product-page{
    --whatsapp-assist-mobile-bottom:calc(var(--product-mobile-dock-bottom) + var(--product-mobile-dock-height) + 12px);
    min-width:0;
    padding-bottom:calc(var(--product-mobile-dock-height) + var(--mobile-nav-height,64px) + max(38px,env(safe-area-inset-bottom)));
    background:#f3f7fa;
    color:#173b58;
  }
  .product-page #mainContent,
  .product-page #productRoot,
  .product-page .product-main,
  .product-page .product-shell,
  .product-page .detail-stack,
  .product-page .detail-section,
  .product-page .review-overview,
  .product-page .placeholder-reviews,
  .product-page .review-compose{min-width:0;max-width:100%}

  .product-page .product-main{
    width:calc(100% - (var(--product-mobile-gutter) * 2));
    max-width:none;
    padding:4px 0 28px;
  }

  /* Compact, semantic back trail; the product name remains available without overflow. */
  .product-page .breadcrumb{
    min-width:0;
    min-height:44px;
    gap:7px;
    margin:0 0 8px;
    overflow:hidden;
    color:#526b7f;
    font-size:11px;
    font-weight:650;
    letter-spacing:.01em;
    text-transform:none;
    white-space:nowrap;
  }
  .product-page .breadcrumb>a:first-child,
  .product-page .breadcrumb>a:first-child+span{display:none}
  .product-page .breadcrumb>a[href="shop.html"]{
    display:inline-flex;
    min-height:44px;
    flex:none;
    align-items:center;
    gap:6px;
    padding-right:2px;
    color:#004c97;
    font-size:12px;
    font-weight:800;
  }
  .product-page .breadcrumb>a[href="shop.html"]::before{content:"←";font-size:17px;line-height:1}
  .product-page .breadcrumb>a[href="shop.html"]+span{color:#9aafbe}
  .product-page .breadcrumb [aria-current="page"]{overflow:hidden;min-width:0;color:#526b7f;text-overflow:ellipsis}

  .product-page .product-shell{grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}

  /* Product media behaves like a focused app carousel. */
  .product-page .gallery-layout{gap:8px;min-width:0}
  .product-page .gallery-stage{
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:1/1;
    border-color:#c9dce9;
    border-radius:var(--product-mobile-radius);
    background:linear-gradient(145deg,#fbfdff,#eaf2f8);
    box-shadow:var(--product-mobile-shadow);
  }
  .product-page .product-shell[data-gallery-ratio="4:3"] .gallery-stage{aspect-ratio:4/3}
  .product-page .product-shell[data-gallery-ratio="1:1"] .gallery-stage{aspect-ratio:1/1}
  .product-page .gallery-main-image{padding:12px;transition:opacity .22s linear,transform .24s var(--mobile-ease)}
  .product-page .gallery-main-picture{position:absolute;inset:0;display:block}
  .product-page .product-shell[data-gallery-ratio="4:3"] .gallery-main-image{padding:0}
  .product-page .gallery-stage::after{bottom:7%;height:20px}
  .product-page .gallery-control,
  .product-page .gallery-zoom{width:44px;height:44px;min-width:44px;min-height:44px;border-color:#c9dce9;box-shadow:0 5px 14px rgba(0,43,92,.1)}
  .product-page .gallery-prev{left:8px}
  .product-page .gallery-next{right:8px}
  .product-page .gallery-zoom{top:8px;right:8px}
  .product-page .gallery-counter{left:8px;bottom:8px;min-height:28px;padding:2px 9px;font-size:10px}
  .product-page .gallery-thumbs{
    width:100%;
    gap:8px;
    padding:2px 1px 5px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scroll-snap-type:x proximity;
  }
  .product-page .gallery-thumb,
  .product-page .product-shell[data-gallery-ratio="4:3"] .gallery-thumb,
  .product-page .product-shell[data-gallery-ratio="1:1"] .gallery-thumb{
    width:68px;
    min-width:68px;
    height:58px;
    min-height:44px;
    padding:3px;
    border-radius:11px;
    scroll-snap-align:start;
  }
  .product-page .gallery-video-state{grid-template-columns:1fr;justify-items:center;gap:8px;padding:18px;text-align:center}
  .product-page .gallery-video-poster{max-height:48%;padding:0}
  .product-page .gallery-video-copy{justify-items:center;gap:6px}
  .product-page .gallery-video-copy strong{font-size:18px}
  .product-page .gallery-video-copy p{font-size:12px;line-height:1.5}
  .product-page .gallery-play-mark{width:44px;height:44px}

  /* Product information is a single, calm app sheet. */
  .product-page .product-buy{
    position:static;
    top:auto;
    min-width:0;
    padding:16px;
    border-color:#cfdee9;
    border-radius:var(--product-mobile-radius);
    background:#fff;
    box-shadow:var(--product-mobile-shadow);
  }
  .product-page .product-meta{
    display:grid;
    min-width:0;
    grid-template-columns:minmax(0,1fr) max-content;
    grid-template-areas:
      "brand badge"
      "code code";
    align-items:center;
    gap:2px 8px;
    margin-bottom:10px;
  }
  .product-page .product-brand,
  .product-page .product-code,
  .product-page .badge-chip{
    align-items:center;
    margin:0;
    font-size:10px;
    line-height:1.3;
    letter-spacing:.055em;
  }
  .product-page .product-brand{
    grid-area:brand;
    min-width:0;
    min-height:22px;
    max-width:100%;
    color:#004c97;
  }
  .product-page .product-brand .signal-mark{flex:0 0 auto}
  .product-page .product-brand-label{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .product-page .product-code{
    grid-area:code;
    display:flex;
    min-width:0;
    min-height:18px;
    max-width:100%;
    padding-left:34px;
    overflow:hidden;
    color:#526b7f;
    font-size:9.5px;
    letter-spacing:.045em;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .product-page .badge-chip{
    grid-area:badge;
    justify-self:end;
    min-height:28px;
    max-width:100%;
    padding:3px 8px;
    color:#087a30;
    font-size:9.5px;
    letter-spacing:.045em;
    white-space:nowrap;
  }
  .product-page .product-title{
    max-width:none;
    margin:0;
    color:#002b5c;
    font-size:24px;
    font-weight:800;
    line-height:1.15;
    letter-spacing:-.025em;
    overflow-wrap:anywhere;
    text-wrap:balance;
  }
  .product-page .product-summary{
    max-width:none;
    margin-top:9px;
    color:#526b7f;
    font-size:15px;
    line-height:1.55;
  }
  .product-page .product-review-link{
    min-height:44px;
    max-width:100%;
    flex-wrap:wrap;
    gap:5px;
    margin-top:4px;
    padding-block:4px;
    color:#004c97;
    font-size:12px;
    line-height:1.4;
  }
  .product-page .buy-divider{margin:10px 0 12px}
  .product-page .availability{min-height:28px;color:#087a30;font-size:12px;font-weight:800;letter-spacing:0}
  .product-page .availability.is-out{color:#b42318}
  .product-page .price-block{gap:6px 9px;margin-top:5px}
  .product-page .current-price{font-size:28px;line-height:1.05}
  .product-page .old-price{color:#5c7083;font-size:13px}
  .product-page .saving{min-height:24px;padding:2px 8px;color:#087a30;font-size:11px}
  .product-page .key-benefits{margin:13px 0;border-top-color:#dbe6ed}
  .product-page .key-benefits li{min-height:44px;align-items:center;padding:8px 2px;color:#29485f;font-size:13px;line-height:1.45}
  .product-page .buy-actions{display:grid;grid-template-columns:minmax(0,132px);gap:0;margin-top:12px}
  .product-page .quantity-picker{grid-template-columns:44px 44px 44px;min-height:48px;border-color:#afc8d9}
  .product-page .quantity-picker button{width:44px;height:48px;min-width:44px;min-height:44px}
  .product-page .quantity-picker output{font-size:14px}
  .product-page .buy-actions>.add-cart{display:none!important}
  .product-page .buy-secondary{justify-content:flex-start;margin-top:6px}
  .product-page .buy-secondary a{min-height:44px;padding:6px 2px;color:#004c97;font-size:12px;line-height:1.45}
  .product-page .purchase-note{margin-top:6px;color:#526b7f;font-size:12px;line-height:1.55}
  .product-page .trust-strip{grid-template-columns:1fr;margin-top:13px;border-top-color:#dbe6ed}
  .product-page .trust-item,
  .product-page .trust-item+.trust-item{
    grid-template-columns:minmax(102px,.42fr) minmax(0,.58fr);
    gap:9px;
    min-height:44px;
    align-items:center;
    padding:7px 0;
    border:0;
    border-bottom:1px solid #e1e9ef;
  }
  .product-page .trust-item:last-child{border-bottom:0}
  .product-page .trust-item strong{font-size:12px}
  .product-page .trust-item span{color:#526b7f;font-size:11px;line-height:1.4}

  /* Purchase dock sits above the persistent mobile navigation. */
  .product-page .mobile-buy-bar{
    position:fixed;
    right:max(8px,env(safe-area-inset-right));
    bottom:var(--product-mobile-dock-bottom);
    left:max(8px,env(safe-area-inset-left));
    z-index:1510;
    display:grid;
    grid-template-columns:minmax(66px,auto) minmax(0,1fr) 44px;
    min-width:0;
    min-height:var(--product-mobile-dock-height);
    align-items:center;
    gap:6px;
    padding:6px;
    border:1px solid rgba(169,201,219,.82);
    border-radius:16px;
    background:rgba(250,253,255,.98);
    box-shadow:0 10px 30px rgba(0,34,72,.2);
    backdrop-filter:blur(14px);
  }
  .product-page .mobile-buy-bar:not(:has(.mobile-buy-whatsapp)){grid-template-columns:minmax(66px,auto) minmax(0,1fr)}
  .product-page .mobile-price{display:grid;min-width:0;gap:1px;padding-left:4px;line-height:1.1}
  .product-page .mobile-price span{color:#526b7f;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
  .product-page .mobile-price strong{overflow:hidden;color:#002b5c;font-size:15px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
  .product-page .mobile-buy-action,
  .product-page .mobile-buy-bar>button{
    width:100%;
    min-width:0;
    min-height:44px;
    padding:5px 8px;
    overflow:hidden;
    border:0;
    border-radius:12px;
    background:linear-gradient(135deg,#004c97,#086fb6);
    color:#fff;
    font-family:inherit;
    font-size:13px;
    font-weight:800;
    line-height:1.1;
    text-overflow:ellipsis;
    white-space:nowrap;
    box-shadow:0 5px 14px rgba(0,76,151,.2);
    cursor:pointer;
    transition:transform .22s var(--mobile-ease),box-shadow .22s var(--mobile-ease);
  }
  .product-page .mobile-buy-action:disabled,
  .product-page .mobile-buy-bar>button:disabled{background:#d7e0e7;color:#526b7f;box-shadow:none;cursor:not-allowed}
  .product-page .mobile-buy-whatsapp{
    display:grid;
    width:44px;
    height:44px;
    place-items:center;
    overflow:hidden;
    border-radius:12px;
    background:#087a30;
    box-shadow:0 5px 14px rgba(8,122,48,.2);
    transition:transform .22s var(--mobile-ease);
  }
  .product-page .mobile-buy-whatsapp img{width:30px;height:30px;object-fit:contain;filter:brightness(0) invert(1)}
  .product-page .mobile-buy-action:active:not(:disabled),
  .product-page .mobile-buy-bar>button:active:not(:disabled),
  .product-page .mobile-buy-whatsapp:active{transform:scale(.97)}

  /* Four predictable, thumb-friendly section tabs; no horizontal scroller. */
  .product-page .section-jump{
    position:sticky;
    top:var(--product-mobile-tabs-top);
    z-index:1100;
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    width:auto;
    max-width:none;
    gap:4px;
    margin:14px calc(var(--product-mobile-gutter) * -1) 0;
    padding:5px var(--product-mobile-gutter);
    overflow:visible;
    border-block:1px solid #d7e4ec;
    background:rgba(247,251,253,.96);
    box-shadow:0 5px 14px rgba(0,43,92,.05);
    backdrop-filter:blur(12px);
  }
  .product-page .section-jump a{
    min-width:0;
    min-height:44px;
    justify-content:center;
    gap:0;
    padding:4px 2px;
    overflow:hidden;
    border-radius:11px;
    color:#526b7f;
    font-size:10.5px;
    font-weight:750;
    letter-spacing:0;
    line-height:1.15;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .product-page .section-jump a::before{display:none}
  .product-page .section-jump a[aria-current="true"]{background:#004c97;color:#fff;box-shadow:0 4px 12px rgba(0,76,151,.17)}

  /* Detail content becomes a sequence of tactile app surfaces. */
  .product-page .detail-stack{gap:12px;padding-top:12px}
  .product-page .detail-section{
    scroll-margin-top:126px;
    padding:18px 14px;
    overflow:hidden;
    border:1px solid #d2e1eb;
    border-radius:var(--product-mobile-radius);
    background:#fff;
    box-shadow:0 5px 18px rgba(0,43,92,.055);
  }
  .product-page .section-head{display:block;margin-bottom:14px}
  .product-page .section-numeral{display:none}
  .product-page .section-kicker{gap:5px;margin-bottom:5px;color:#087a30;font-size:10px;line-height:1.35;letter-spacing:.12em}
  .product-page .detail-section h2{font-size:22px;line-height:1.18;letter-spacing:-.02em}
  .product-page .detail-lead{max-width:none;margin-top:7px;color:#526b7f;font-size:14px;line-height:1.55}
  .product-page .overview-grid,
  .product-page .spec-layout{grid-template-columns:minmax(0,1fr);gap:18px}
  .product-page .overview-copy{gap:11px;color:#29485f;font-size:15px;line-height:1.65}
  .product-page .best-for{border-top-color:#dbe6ed}
  .product-page .best-for li{min-height:44px;padding:8px 2px;color:#29485f;font-size:13px;line-height:1.45}
  .product-page .spec-list{overflow:hidden;border:1px solid #d7e4ec;border-radius:13px;background:#fbfdff}
  .product-page .spec-row{
    grid-template-columns:minmax(98px,.42fr) minmax(0,.58fr);
    gap:10px;
    min-height:44px;
    align-items:center;
    padding:9px 10px;
    border-bottom-color:#e0e9ef;
  }
  .product-page .spec-row:nth-child(odd){background:#f3f8fb}
  .product-page .spec-row:last-child{border-bottom:0}
  .product-page .spec-row dt{color:#526b7f;font-size:12px;line-height:1.4}
  .product-page .spec-row dd{min-width:0;color:#173b58;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
  .product-page .package-list{border-top-color:#dbe6ed}
  .product-page .package-list li{min-height:44px;align-items:center;padding:8px 2px;color:#29485f;font-size:13px;line-height:1.45}
  .product-page .package-note{margin-top:10px;padding:10px 11px;border-left-width:3px;border-radius:0 11px 11px 0;font-size:12px;line-height:1.55}

  /* Reviews: summary, feedback, then an intentionally collapsed writing form. */
  .product-page .review-overview{grid-template-columns:minmax(0,1fr);gap:14px}
  .product-page .review-overview>.legacy-rating-panel,
  .product-page .review-overview>.placeholder-reviews,
  .product-page .review-overview>.review-compose{grid-column:1;min-width:0}
  .product-page .review-overview>.legacy-rating-panel{grid-row:1}
  .product-page .review-overview>.placeholder-reviews{grid-row:2}
  .product-page .review-overview>.review-compose{grid-row:3}
  .product-page .legacy-rating-panel{gap:10px;padding:15px;border-radius:14px}
  .product-page .legacy-rating-score{gap:10px;align-items:center}
  .product-page .legacy-rating-score>strong{font-size:42px}
  .product-page .legacy-rating-panel>p{font-size:12px;line-height:1.55}
  .product-page .placeholder-reviews{gap:12px;margin-top:0}
  .product-page .review-disclosure{gap:4px;padding:11px;border-radius:11px}
  .product-page .review-disclosure strong{font-size:12px}
  .product-page .review-disclosure p{font-size:11px;line-height:1.5}
  .product-page .review-list-heading{align-items:flex-start;gap:5px}
  .product-page .review-list-heading h3{font-size:18px;line-height:1.25}
  .product-page .review-count{font-size:11px}
  .product-page .placeholder-review-grid{grid-template-columns:minmax(0,1fr);gap:9px}
  .product-page .placeholder-review-card{gap:7px;padding:12px;border-radius:13px;box-shadow:0 4px 13px rgba(0,76,151,.045)}
  .product-page .review-card-head{grid-template-columns:36px minmax(0,1fr) auto;gap:8px}
  .product-page .review-card-head .review-stars{font-size:11px}
  .product-page .placeholder-review-card h4{font-size:13px;line-height:1.35}
  .product-page .placeholder-review-card p{color:#29485f;font-size:12px;line-height:1.55}
  .product-page .review-badge{min-height:24px;font-size:9px;letter-spacing:.04em}
  .product-page .show-all-reviews{width:100%;min-height:44px;padding:7px 12px;font-size:12px}
  .product-page .review-compose{display:grid;gap:0;margin-top:0}
  .product-page .review-compose-toggle{
    display:flex;
    width:100%;
    min-height:48px;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:7px 12px;
    border:1px solid #99bed5;
    border-radius:12px;
    background:#eef6fa;
    color:#004c97;
    font-family:inherit;
    font-size:13px;
    font-weight:800;
    cursor:pointer;
    transition:transform .22s var(--mobile-ease),background .22s linear;
  }
  .product-page .review-form-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s var(--mobile-ease)}
  .product-page .review-form-wrap>.review-form{min-height:0;overflow:hidden}
  .product-page .review-compose.is-open .review-form-wrap,
  .product-page .review-compose-toggle[aria-expanded="true"]+.review-form-wrap{grid-template-rows:1fr}
  .product-page .review-form{gap:13px;margin-top:10px;padding:14px;border-radius:13px;box-shadow:none}
  .product-page .review-form-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .product-page .review-field-wide{grid-column:1}
  .product-page .review-field label,
  .product-page .review-rating-field legend{font-size:12px}
  .product-page .review-field input{min-height:48px}
  .product-page .review-field textarea{min-height:116px}
  .product-page .review-field-help,
  .product-page .field-error{font-size:11px}
  .product-page .review-rating-options{display:grid;grid-template-columns:repeat(5,44px);gap:5px}
  .product-page .review-rating-options label>span[aria-hidden="true"]{width:44px;height:44px}
  .product-page .review-consent{min-height:44px;align-items:center;color:#405970;font-size:12px}
  .product-page .review-consent input{width:22px;height:22px;margin:0}
  .product-page .review-submit{width:100%;min-height:48px;font-size:13px}

  /* Related products remain easy-to-scan list cards on narrow screens. */
  .product-page .related-grid{grid-template-columns:minmax(0,1fr);gap:9px}
  .product-page .related-card{
    grid-template-columns:84px minmax(0,1fr);
    gap:11px;
    min-height:106px;
    padding:10px;
    border-color:#d3e2eb;
    border-radius:14px;
    background:#fbfdff;
    box-shadow:0 4px 14px rgba(0,43,92,.05);
  }
  .product-page .related-card img{width:84px;height:84px;border-radius:11px}
  .product-page .related-copy{gap:3px}
  .product-page .related-copy span{font-size:9px;letter-spacing:.08em}
  .product-page .related-copy strong{
    display:-webkit-box;
    overflow:hidden;
    font-size:13px;
    line-height:1.35;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }
  .product-page .related-copy b{font-size:14px}
  .product-page .related-stock{color:#087a30!important;font-size:10px!important;letter-spacing:0!important;text-transform:none!important}
  .product-page .related-stock.is-out{color:#b42318!important}

  /* Footer groups collapse like app settings rows, while the official logo stays intact. */
  .product-page footer{margin-top:8px;padding:34px 0 calc(158px + env(safe-area-inset-bottom));text-align:left}
  body.product-page:not(:has(.mobile-buy-bar)){padding-bottom:calc(var(--mobile-nav-height,64px) + max(30px,env(safe-area-inset-bottom)))}
  body.product-page:not(:has(.mobile-buy-bar)) footer{padding-bottom:calc(88px + env(safe-area-inset-bottom))}
  .product-page .footer-inner{width:calc(100% - 24px);grid-template-columns:minmax(0,1fr);gap:0;text-align:left}
  .product-page .footer-inner>div:first-child{padding-bottom:18px;text-align:center}
  .product-page .footer-logo{width:190px;height:60px;margin:0 auto 12px}
  .product-page .footer-inner>div:first-child p{max-width:38ch;margin-inline:auto;color:#b8ccda;font-size:12px;line-height:1.55}
  .product-page .product-mobile-footer-group{border-top:1px solid rgba(219,237,247,.14)}
  .product-page .product-mobile-footer-group>h3{display:none}
  .product-page .product-mobile-footer-toggle{
    display:flex;
    width:100%;
    min-height:54px;
    align-items:center;
    justify-content:space-between;
    padding:5px 2px;
    border:0;
    background:transparent;
    color:#fff;
    font-family:inherit;
    font-size:14px;
    font-weight:760;
    cursor:pointer;
  }
  .product-page .product-mobile-footer-chevron{display:grid;place-items:center;color:#a9c7d9;transition:transform .24s var(--mobile-ease)}
  .product-page .product-mobile-footer-chevron svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
  .product-page .product-mobile-footer-group.is-mobile-open .product-mobile-footer-chevron{transform:rotate(90deg)}
  .product-page .product-mobile-footer-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .24s var(--mobile-ease)}
  .product-page .product-mobile-footer-panel-inner{display:grid;min-height:0;overflow:hidden;visibility:hidden;transition:visibility 0s linear .24s}
  .product-page .product-mobile-footer-group.is-mobile-open .product-mobile-footer-panel{grid-template-rows:1fr}
  .product-page .product-mobile-footer-group.is-mobile-open .product-mobile-footer-panel-inner{visibility:visible;transition-delay:0s}
  .product-page footer .product-mobile-footer-panel a{display:flex;min-height:44px;align-items:center;padding:5px 8px;border-radius:10px;font-size:12px}
  .product-page .foot-bottom{width:calc(100% - 24px);margin-top:16px;padding-top:14px;font-size:11px}

  /* Toast and dialogs clear both persistent mobile bars. */
  .product-page .cart-toast,
  .product-page .toast{bottom:calc(var(--product-mobile-dock-height) + var(--mobile-nav-height,64px) + max(30px,env(safe-area-inset-bottom)))}
  .product-page .image-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);border-radius:16px}
  .product-page .image-dialog figure{height:calc(100dvh - 16px)}
  .product-page .image-dialog figure>img{padding:12px}
  .product-page .image-dialog figcaption{font-size:12px}

  .product-page .product-not-found{min-height:58dvh;padding:14px 0}
  .product-page .not-found-inner{width:100%;gap:11px;padding:28px 16px;border-radius:16px}
  .product-page .not-found-inner h1{font-size:24px}
  .product-page .not-found-inner p{font-size:14px;line-height:1.55}
  .product-page .not-found-inner a{min-height:48px}

  /* One-shot, restrained entrance motion; content is visible without JavaScript. */
  .product-page [data-reveal]{opacity:1;transform:none;animation:none}
  .product-page .product-mobile-reveal{opacity:0;transform:translateY(8px);transition:opacity .24s ease,transform .24s var(--mobile-ease)}
  .product-page .product-mobile-reveal.is-visible{opacity:1;transform:none}
  .product-page .review-compose-toggle:active,
  .product-page .show-all-reviews:active,
  .product-page .related-card:active,
  .product-page .product-mobile-footer-toggle:active{transform:scale(.98)}
}

@media (min-width:600px) and (max-width:767.98px){
  .product-page .product-main{width:calc(100% - 32px)}
  .product-page .section-jump{margin-inline:-16px;padding-inline:16px}
  .product-page .related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:359.98px){
  .product-page .product-title{font-size:22px}
  .product-page .detail-section h2{font-size:20px}
  .product-page .spec-row{grid-template-columns:minmax(0,1fr);gap:2px;align-content:center}
  .product-page .review-rating-options{grid-template-columns:repeat(5,minmax(44px,1fr));gap:3px}
  .product-page .mobile-price strong{font-size:14px}
  .product-page .mobile-buy-action,
  .product-page .mobile-buy-bar>button{font-size:12px;padding-inline:5px}
}

@media (prefers-reduced-motion:reduce){
  .product-page .gallery-main-image,
  .product-page .gallery-media,
  .product-page .mobile-buy-action,
  .product-page .mobile-buy-bar>button,
  .product-page .mobile-buy-whatsapp,
  .product-page .review-form-wrap,
  .product-page .review-compose-toggle,
  .product-page .show-all-reviews,
  .product-page .related-card,
  .product-page .product-mobile-footer-panel,
  .product-page .product-mobile-footer-panel-inner,
  .product-page .product-mobile-footer-chevron,
  .product-page .product-mobile-reveal{animation:none!important;transition:none!important}
  .product-page .product-mobile-reveal{opacity:1;transform:none}
}
