body.product-page-body{background:#f7f8fc;color:#11162a}
.product-page-header{height:88px;padding:0 clamp(20px,5vw,80px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.94);border-bottom:1px solid #e6e9f1}
.product-page-brand img {
  width: auto;
  height: 58px;
  max-width: 78px;
  object-fit: contain;
  display: block;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.back-link{display:inline-flex;align-items:center;gap:10px;color:#274296;font-size:13px;font-weight:700}
.product-page-main{max-width:1320px;margin:0 auto;padding:38px 28px 90px}
.product-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);gap:clamp(28px,5vw,76px);align-items:center;min-height:590px}
.product-hero-media{position:relative;min-width:0}
.product-hero-image-wrap{height:clamp(440px,55vw,690px);max-height:690px;overflow:hidden;border-radius:30px;background:#e9e7ef;box-shadow:0 28px 70px rgba(17,22,42,.13);position:relative}
.product-hero-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center;transition:transform .7s cubic-bezier(.2,.75,.25,1)}
.product-hero-image-wrap:hover .product-hero-image{transform:scale(1.035)}
.product-image-caption{position:absolute;right:20px;bottom:20px;padding:10px 15px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-radius:999px;color:#274296;font-size:11px;font-weight:700}
.product-detail-copy{padding:22px 0}
.product-breadcrumb{font-size:12px;color:#73798c;margin-bottom:22px}
.product-breadcrumb a{color:#274296}
.product-category-label{display:inline-flex;align-items:center;gap:8px;color:#664896;background:#eee9f7;border-radius:999px;padding:7px 13px;font-size:11px;font-weight:700;margin-bottom:14px}
.product-detail-copy h1{font-size:clamp(34px,4.2vw,58px);line-height:1.35;letter-spacing:-1.5px;margin:0 0 12px;color:#11162a}
.product-detail-description{font-size:16px;color:#73798c;line-height:2;margin:0 0 20px;max-width:530px}
.product-price-line{display:flex;align-items:baseline;gap:10px;margin:18px 0 24px}
.product-current-price{font-size:30px;font-weight:800;color:#274296}
.product-currency{font-size:14px;color:#73798c}
.product-details-divider{height:1px;background:#e2e5ef;margin:25px 0}
.product-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.product-spec{padding:16px;border:1px solid #e6e9f1;border-radius:16px;background:rgba(255,255,255,.72)}
.product-spec span{display:block;color:#73798c;font-size:11px;margin-bottom:6px}
.product-spec strong{font-size:14px;line-height:1.7}
.product-option-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.product-option-row select{width:100%;min-width:0;border:1px solid #dfe3ef;background:#fff;border-radius:13px;padding:14px 12px;color:#11162a;font:inherit;font-size:12px;outline:none}
.product-option-row select:focus{border-color:#274296;box-shadow:0 0 0 3px rgba(39,66,150,.1)}
.product-selected-price{font-size:13px;color:#73798c;margin-top:14px}
.product-selected-price strong{font-size:21px;color:#274296;margin-right:5px}
.product-purchase-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.product-purchase-actions button{border:0;border-radius:999px;min-height:54px;padding:13px 16px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}
.product-purchase-actions button:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(39,66,150,.15)}
.product-add-cart{background:#274296;color:#fff}
.product-wishlist{background:#fff;color:#274296;border:1px solid #e0e5f2!important}
.product-buy-now{grid-column:1/-1;background:linear-gradient(110deg,#274296,#664896);color:#fff}
.product-sku{font-size:10px;color:#858ba0;margin-top:16px}
.product-story{margin-top:90px;padding:65px clamp(22px,5vw,70px);border-radius:30px;background:#11162a;color:#fff;display:grid;grid-template-columns:.75fr 1.25fr;gap:50px;align-items:center;overflow:hidden;position:relative}
.product-story:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(102,72,150,.3),transparent 70%);left:-100px;bottom:-220px;pointer-events:none}
.product-story-kicker{font-size:11px;color:#b8b0e6;font-weight:700;letter-spacing:1px}
.product-story h2{font-size:clamp(27px,3vw,42px);line-height:1.5;margin:10px 0}
.product-story p{font-size:13px;line-height:2.2;color:#c1c7d7;margin:0;max-width:670px}
.product-story-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.product-story-point{border-top:1px solid rgba(255,255,255,.18);padding-top:15px}
.product-story-point b{display:block;font-size:13px;margin-bottom:5px}
.product-story-point span{font-size:10px;color:#aab2c5}
.product-bottom-link{display:inline-flex;margin-top:30px;color:#fff;border-bottom:1px solid #a9b8ff;padding-bottom:5px;font-size:12px;font-weight:700}
.product-loading{padding:100px 20px;text-align:center;color:#73798c}
.product-toast{position:fixed;bottom:25px;right:25px;z-index:200;background:#274296;color:#fff;padding:13px 20px;border-radius:14px;box-shadow:0 12px 35px rgba(17,22,42,.2);font-size:12px;opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s}
.product-toast.show{opacity:1;transform:none}
@media(max-width:900px){
 .product-hero{grid-template-columns:1fr;gap:28px}
 .product-hero-image-wrap{height:min(78vw,620px);min-height:380px}
 .product-detail-copy{padding:0 4px}
 .product-story{grid-template-columns:1fr;gap:18px;margin-top:55px}
}
@media(max-width:560px){
 .product-page-header{height:72px;padding:0 16px}
 .product-page-brand img{width:105px}
 .back-link{font-size:11px;gap:5px}
 .product-page-main{padding:18px 14px 55px}
 .product-hero-image-wrap{height:110vw;min-height:320px;border-radius:20px}
 .product-detail-copy h1{font-size:32px}
 .product-detail-description{font-size:13px}
 .product-current-price{font-size:26px}
 .product-spec-grid{gap:8px}
 .product-spec{padding:12px}
 .product-spec strong{font-size:12px}
 .product-option-row{grid-template-columns:1fr}
 .product-purchase-actions{grid-template-columns:1fr}
 .product-buy-now{grid-column:auto}
 .product-story{padding:30px 20px;border-radius:22px}
 .product-story-list{grid-template-columns:1fr}
 .product-toast{right:14px;left:14px;bottom:14px;text-align:center}
}

.product-header-actions{display:flex;align-items:center;gap:20px}
.language-toggle{border:1px solid #dfe3ef;border-radius:999px;background:#fff;color:#274296;font:inherit;font-size:11px;font-weight:800;min-width:48px;padding:10px 14px;cursor:pointer}
.product-spec-list{display:grid;gap:10px;margin-top:22px}
.product-spec-detail{display:flex;gap:14px;align-items:flex-start;padding:13px 15px;background:rgba(255,255,255,.8);border:1px solid #e6e9f1;border-radius:13px}
.product-spec-detail:before{content:"";flex:0 0 7px;width:7px;height:7px;border-radius:2px;background:#274296;margin-top:7px}
.product-spec-detail span{font-size:12px;line-height:1.9;color:#41465b}
.product-warranty-banner{margin-top:18px;padding:15px 17px;border-radius:12px;background:#233d82;color:#fff;font-weight:800;font-size:13px;line-height:1.8}
html[dir="ltr"] .product-spec-detail:before{margin-right:0}
html[dir="ltr"] .product-detail-copy{text-align:left}
html[dir="ltr"] .product-breadcrumb{text-align:left}
html[dir="ltr"] .product-page-header{direction:ltr}
html[dir="ltr"] .product-header-actions{flex-direction:row}
@media(max-width:560px){.product-header-actions{gap:10px}.product-spec-detail{padding:11px 12px}}

.product-page-brand, .product-page-brand img {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}


/* Large editorial hero shown only on mattress detail pages */
.mattress-product-hero{
  position:relative;
  width:100%;
  height:clamp(420px,58vw,700px);
  min-height:420px;
  overflow:hidden;
  isolation:isolate;
  border-radius:28px;
  background:#e9e6ed;
  box-shadow:0 26px 70px rgba(17,22,42,.12);
  margin:0 0 46px;
}
.mattress-product-hero-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 54%;
}
.mattress-product-hero-shade{
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(13,19,42,.56) 0%,rgba(13,19,42,.18) 46%,rgba(13,19,42,0) 78%);
  pointer-events:none;
}
.mattress-product-hero-caption{
  position:absolute;
  z-index:1;
  left:clamp(24px,5vw,72px);
  bottom:clamp(28px,5vw,68px);
  max-width:min(560px,75%);
  color:#fff;
  text-align:left;
  text-shadow:0 2px 20px rgba(0,0,0,.22);
}
html[dir="rtl"] .mattress-product-hero-caption{
  left:auto;
  right:clamp(24px,5vw,72px);
  text-align:right;
}
.mattress-product-hero-caption>span{
  display:inline-block;
  margin-bottom:12px;
  font-size:11px;
  font-weight:700;
  letter-spacing:1.5px;
  color:#f1eaff;
}
.mattress-product-hero-caption h1{
  margin:0 0 10px;
  font-size:clamp(34px,5vw,64px);
  font-weight:800;
  line-height:1.25;
  letter-spacing:-1px;
}
.mattress-product-hero-caption p{
  margin:0;
  font-size:clamp(13px,1.4vw,17px);
  line-height:1.9;
  color:rgba(255,255,255,.92);
}
.product-hero.mattress-product-layout{
  display:block;
  min-height:0;
  max-width:1000px;
  margin:0 auto;
}
.mattress-product-layout .product-detail-copy{
  padding:8px 0 0;
}
.mattress-product-layout .product-breadcrumb{
  margin-bottom:16px;
}
.mattress-product-layout .product-details-divider{
  margin:24px 0;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:clamp(360px,100vw,520px);
    min-height:360px;
    border-radius:20px;
    margin-bottom:30px;
  }
  .mattress-product-hero-image{object-position:center center}
  .mattress-product-hero-shade{
    background:linear-gradient(0deg,rgba(13,19,42,.72) 0%,rgba(13,19,42,.22) 48%,rgba(13,19,42,0) 100%);
  }
  .mattress-product-hero-caption,
  html[dir="rtl"] .mattress-product-hero-caption{
    left:20px;
    right:20px;
    bottom:24px;
    max-width:calc(100% - 40px);
    text-align:start;
  }
  .mattress-product-hero-caption h1{font-size:clamp(30px,8vw,42px)}
  .mattress-product-hero-caption p{font-size:13px}
  .product-hero.mattress-product-layout{gap:0}
}


/* Hero image only above the unchanged original product details layout */
.mattress-product-hero{
  position:relative;
  width:100%;
  height:clamp(320px,48vw,610px);
  min-height:320px;
  overflow:hidden;
  border-radius:28px;
  background:#e9e6ed;
  box-shadow:0 26px 70px rgba(17,22,42,.12);
  margin:0 0 42px;
}
.mattress-product-hero-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 54%;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:clamp(300px,80vw,480px);
    min-height:300px;
    border-radius:20px;
    margin-bottom:28px;
  }
}


/* Full-screen immersive mattress hero */
.mattress-product-hero{
  width:100vw !important;
  height:100svh !important;
  min-height:620px !important;
  max-height:none !important;
  margin:0 calc(50% - 50vw) 48px !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.mattress-product-hero-image{
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:82svh !important;
    min-height:480px !important;
    margin-bottom:30px !important;
  }
}


/* Show the complete mattress in the full-screen hero without cropping.
   The same product photo fills the sides softly as a blurred background. */
.mattress-product-hero{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  isolation:isolate !important;
  overflow:hidden !important;
  background:#e8e4df !important;
}
.mattress-product-hero::before{
  content:"";
  position:absolute;
  inset:-24px;
  z-index:-2;
  background-image:var(--mattress-hero-image);
  background-size:cover;
  background-position:center;
  filter:blur(22px) brightness(.72);
  transform:scale(1.04);
}
.mattress-product-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,rgba(18,22,38,.16),rgba(18,22,38,0) 28%,rgba(18,22,38,0) 72%,rgba(18,22,38,.16));
  pointer-events:none;
}
.mattress-product-hero-image{
  position:relative !important;
  inset:auto !important;
  z-index:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
@media(max-width:700px){
  .mattress-product-hero::before{filter:blur(18px) brightness(.76)}
  .mattress-product-hero::after{background:rgba(18,22,38,.06)}
  .mattress-product-hero-image{
    width:100% !important;
    height:100% !important;
    object-fit:contain !important;
  }
}


/* Wide, full-screen mattress hero: use a landscape asset so the mattress stays fully visible. */
.mattress-product-hero{
  position:relative !important;
  width:100% !important;
  height:100vh !important;
  min-height:620px !important;
  max-height:none !important;
  display:block !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#d8c9b8 !important;
}
.mattress-product-hero::before,
.mattress-product-hero::after{
  content:none !important;
  display:none !important;
}
.mattress-product-hero-image{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:72vh !important;
    min-height:480px !important;
  }
  .mattress-product-hero-image{
    object-fit:cover !important;
    object-position:center center !important;
  }
}


/* Final hero fix: full viewport breakout + complete mattress visible, no white half-page. */
.mattress-product-hero{
  position:relative !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:100vw !important;
  height:100svh !important;
  min-height:600px !important;
  max-height:none !important;
  margin:0 0 48px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  border-radius:0 !important;
  box-shadow:none !important;
  isolation:isolate !important;
  background:#ded4c9 !important;
}
.mattress-product-hero::before{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:-30px !important;
  z-index:-2 !important;
  background-image:var(--mattress-hero-image) !important;
  background-size:cover !important;
  background-position:center !important;
  filter:blur(28px) brightness(.72) !important;
  transform:scale(1.06) !important;
}
.mattress-product-hero::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:-1 !important;
  background:linear-gradient(90deg,rgba(15,20,35,.12),transparent 24%,transparent 76%,rgba(15,20,35,.12)) !important;
  pointer-events:none !important;
}
.mattress-product-hero-image{
  position:absolute !important;
  inset:0 !important;
  z-index:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:78svh !important;
    min-height:480px !important;
    margin-bottom:30px !important;
  }
  .mattress-product-hero::before{
    filter:blur(22px) brightness(.76) !important;
  }
  .mattress-product-hero-image{
    object-fit:contain !important;
    object-position:center center !important;
  }
}


/* Hero final: fill the viewport like the reference image, without page overflow. */
html, body{
  overflow-x:hidden !important;
}
.mattress-product-hero{
  position:relative !important;
  left:auto !important;
  transform:none !important;
  width:100vw !important;
  max-width:100vw !important;
  height:100vh !important;
  height:100svh !important;
  min-height:0 !important;
  max-height:none !important;
  margin:0 calc(50% - 50vw) 48px !important;
  padding:0 !important;
  display:block !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#b9a28f !important;
}
.mattress-product-hero::before{
  inset:0 !important;
  filter:blur(24px) brightness(.7) !important;
  transform:scale(1.08) !important;
}
.mattress-product-hero-image{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
  object-position:center center !important;
}
@media(max-width:700px){
  .mattress-product-hero{
    height:78svh !important;
    min-height:0 !important;
    margin-bottom:30px !important;
  }
  .mattress-product-hero-image{
    object-fit:cover !important;
    object-position:center center !important;
  }
}


/* Consistent hero treatment for EVERY mattress: each product uses its own image,
   fully visible in the foreground, with matching image colors filling the viewport. */
html, body { overflow-x: hidden !important; }
.mattress-product-hero {
  position: relative !important;
  width: 100vw !important;
  max-width: 100vw !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 calc(50% - 50vw) 48px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  isolation: isolate !important;
  background: #d8cec5 !important;
}
.mattress-product-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -28px !important;
  z-index: -2 !important;
  background-image: var(--mattress-hero-image) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: blur(26px) brightness(.68) !important;
  transform: scale(1.06) !important;
}
.mattress-product-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  background: linear-gradient(90deg, rgba(18,22,35,.12), transparent 22%, transparent 78%, rgba(18,22,35,.12)) !important;
  pointer-events: none !important;
}
.mattress-product-hero-image {
  position: relative !important;
  inset: auto !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}
@media (max-width: 700px) {
  .mattress-product-hero {
    height: 78svh !important;
    min-height: 460px !important;
    margin-bottom: 30px !important;
  }
  .mattress-product-hero::before {
    filter: blur(22px) brightness(.74) !important;
  }
  .mattress-product-hero-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }
}


/* Unified Serenity-style hero sizing for all mattress product pages. */
html, body { overflow-x: hidden !important; }
.mattress-product-hero {
  position: relative !important;
  left: auto !important;
  transform: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  height: 100vh !important;
  height: 100svh !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 calc(50% - 50vw) 48px !important;
  padding: 0 !important;
  display: block !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  isolation: isolate !important;
  background: #d8cec5 !important;
}
.mattress-product-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -28px !important;
  z-index: -2 !important;
  background-image: var(--mattress-hero-image) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  filter: blur(26px) brightness(.68) !important;
  transform: scale(1.06) !important;
}
.mattress-product-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  background: linear-gradient(90deg, rgba(18,22,35,.12), transparent 22%, transparent 78%, rgba(18,22,35,.12)) !important;
  pointer-events: none !important;
}
.mattress-product-hero-image {
  position: relative !important;
  inset: auto !important;
  z-index: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
@media (max-width: 700px) {
  .mattress-product-hero {
    height: 78svh !important;
    min-height: 460px !important;
    margin-bottom: 30px !important;
  }
  .mattress-product-hero::before { filter: blur(22px) brightness(.74) !important; }
  .mattress-product-hero-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }
}


/* Serenity hero uses its dedicated wide image and shows the entire mattress without cropping. */
.mattress-product-hero.serenity-mattress-hero .mattress-product-hero-image {
  object-fit: contain !important;
  object-position: center center !important;
}
@media (max-width: 700px) {
  .mattress-product-hero.serenity-mattress-hero .mattress-product-hero-image {
    object-fit: contain !important;
    object-position: center center !important;
  }
}


/* Final viewport alignment fix: remove the horizontal gutters while keeping the full mattress visible. */
html, body, body.product-page-body {
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: clip !important;
}
.mattress-product-hero {
  position: relative !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  background: #bca18b !important;
}
.mattress-product-hero::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: -34px !important;
  z-index: -2 !important;
  background-image: var(--mattress-hero-image) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  filter: blur(30px) brightness(.9) saturate(.9) !important;
  transform: scale(1.08) !important;
}
.mattress-product-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  background: rgba(24, 20, 18, .04) !important;
  pointer-events: none !important;
}
.mattress-product-hero-image {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
}
@media (max-width: 700px) {
  .mattress-product-hero { width: 100vw !important; max-width: 100vw !important; }
  .mattress-product-hero-image { object-fit: contain !important; }
}

/* Responsive refinement for product detail pages */
.product-page-main { width:100%; min-width:0; }
.product-hero > *, .product-story > * { min-width:0; }
.product-hero-image { max-width:100%; }
@media (max-width: 900px) {
  .product-page-header { height:76px; padding:0 22px; }
  .product-hero { grid-template-columns:minmax(0,1fr); min-height:0; gap:22px; }
  .product-hero-media { order:0; }
  .product-detail-copy { order:1; padding:8px 0; }
  .product-hero-image-wrap { height:clamp(300px,65vw,560px); }
  .product-story { grid-template-columns:1fr; gap:22px; margin-top:50px; }
}
@media (max-width: 520px) {
  .product-page-header { height:66px; padding:0 14px; }
  .product-page-brand img { max-width:60px; height:46px; }
  .product-page-main { padding:20px 14px 55px; }
  .product-hero-image-wrap { height:78vw; min-height:260px; max-height:430px; border-radius:18px; }
  .product-detail-copy h1 { font-size:clamp(28px,8vw,38px); letter-spacing:-.5px; }
  .product-detail-description { font-size:14px; }
  .product-spec-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .product-spec { padding:12px; }
  .product-option-row, .product-purchase-actions { grid-template-columns:1fr; }
  .product-buy-now { grid-column:auto; }
  .product-story { padding:28px 20px; border-radius:20px; }
  .product-story-list { grid-template-columns:1fr; }
  .product-toast { left:12px; right:12px; bottom:12px; text-align:center; }
}

/* Discount price presentation */
.product-original-price{color:#8b91a2;text-decoration:line-through;font-size:.92em;font-weight:500;margin-inline:8px;white-space:nowrap}.product-current-price{color:#145dff;font-weight:800}.product-price-line{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.product-selected-price{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
