/* Product-only visual layer; shared styles for admin remain unchanged. */
.order-cta{width:100%;max-width:380px;min-height:64px;justify-content:center;padding:14px 12px;font:400 clamp(21px,2vw,25px)/1.2 var(--body-font,Montserrat),sans-serif;letter-spacing:-.5px;text-align:center;gap:0;box-shadow:0 4px 24px #c5a46d0d}.header{flex-wrap:wrap;gap:12px}.header>.order-cta{max-width:380px}.buy{align-items:start}.buy .order-cta{flex-basis:100%}.order-cta:disabled{opacity:.65;cursor:wait}.hero-photo{border-bottom:1px solid #c5a46d33}.hero-photo img{will-change:transform;transform:translateY(calc(var(--hero-scroll,0)*24px)) scale(calc(1 + var(--hero-scroll,0)*.05))}.light-story{height:115svh;min-height:750px;position:relative;isolation:isolate;--scene:0}.light-stage{position:sticky;top:0;min-height:650px;height:85svh;max-height:850px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;border-bottom:1px solid var(--line)}.light-halo{position:absolute;width:650px;height:650px;max-width:130vw;border-radius:50%;background:radial-gradient(ellipse,#c5a46d24, #69449418 45%,transparent 70%);opacity:calc(.2 + var(--scene)*.8);transform:scale(calc(.7 + var(--scene)*.4));pointer-events:none}.candle-art{width:min(85vw,480px);max-height:52svh;flex-shrink:0;position:relative;transform:translateY(calc((1 - var(--scene))*20px))}.orbit{transform-origin:320px 320px;transform:rotate(calc(var(--scene)*55deg))}.art-flame{opacity:calc(.35 + var(--scene)*.65)}.scene-copy{position:relative;text-align:center;padding:12px 24px 32px}.scene-copy h2{font-size:38px;line-height:1.12;margin:12px 0 22px}.scene-facts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;color:var(--muted);font-size:12px}.scene-facts span{padding:6px 10px;border:1px solid var(--line)}.details>div{transition:opacity .5s,transform .5s}.scroll-ready .details>div:not(.in-view){opacity:.3;transform:translateY(28px)}.scroll-ready .details>div.in-view{opacity:1;transform:translateY(0)}
@media(min-width:720px){.header{flex-wrap:nowrap}.header>.order-cta{width:380px}.hero{min-height:760px}.light-story{height:145svh}.light-stage{height:90svh;min-height:660px;flex-direction:row;gap:40px}.candle-art{width:48vw;max-width:600px;max-height:75svh}.scene-copy{text-align:left;padding:30px;max-width:520px}.scene-copy h2{font-size:56px}.scene-facts{justify-content:flex-start}.light-halo{left:0;max-width:none;width:850px;height:850px}.order-section .order-cta{max-width:380px}}@media(prefers-reduced-motion:reduce){.hero-photo img,.candle-art,.orbit,.light-halo{transform:none!important}.light-halo,.art-flame{opacity:1}.light-story{height:auto;min-height:0}.light-stage{position:relative;height:auto;min-height:0;padding:35px 0}.scroll-ready .details>div{opacity:1!important;transform:none!important;transition:none!important}}

@media(max-width:719px){.header>.order-cta,.buy>.order-cta{margin-inline:auto}.buy{justify-content:center}#order-form>.order-cta{display:flex;margin-inline:auto}}
@media(max-width:719px){.buy{flex-direction:column;align-items:center}.buy>.order-cta{flex-basis:auto}}
@media(max-width:719px){.header>.brand{flex-basis:100%}}
@media(max-width:719px){.header>.order-cta{display:none}}
.bundle-prices{font-size:13px;color:var(--gold);margin-top:14px}.bundle-note{font-size:11px;color:var(--muted);margin-top:5px}

#order-form>.order-cta{display:flex;margin-inline:auto}

@media(max-width:719px){.hero-copy{width:100%;max-width:none;padding-inline:0}.hero-copy h1,.hero-copy .intro{width:100%;max-width:none}.hero-copy .intro .desktop{display:none}}

@media(max-width:719px){.hero-copy{padding-inline:max(20px,env(safe-area-inset-left)) max(20px,env(safe-area-inset-right));text-align:center}.hero-copy .buy{justify-content:center}.hero-copy h1,.hero-copy .intro{margin-inline:auto}}
@media(max-width:719px){
  .scene-copy,.details,.order-section,footer{padding-left:max(20px,env(safe-area-inset-left));padding-right:max(20px,env(safe-area-inset-right))}
  .scene-copy,.details,.order-intro,footer,.hero-photo figcaption{text-align:center}
  .details p,.order-intro>p,.order-intro details,.delivery p{margin-inline:auto}
  .order-intro details{max-width:100%}
  .delivery{justify-content:center}
  .hero-photo figcaption{left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right))}
  #order-form .bundle-prices,#order-form .bundle-note,#order-form .form-note{text-align:center}
}
.delivery-icon{display:block;width:48px;height:48px;flex-shrink:0;object-fit:contain}
@media(max-width:719px){.delivery{flex-direction:column;align-items:center;gap:14px;text-align:center}.delivery>div{width:100%;min-width:0}.delivery-icon{margin-inline:auto}}
@font-face{font-family:Montserrat;src:url('assets/Montserrat-Semibold.ttf') format('truetype');font-weight:600;font-display:swap}
@media(max-width:719px){
  .header{justify-content:center;align-items:center}
  .header>.brand{flex-basis:auto;justify-content:center;align-items:center;min-height:76px}
  .brand img{display:block;object-position:center}
  .details .number{display:block;font:600 32px/1.2 var(--body-font,Montserrat),sans-serif;letter-spacing:1px;color:var(--gold);margin-bottom:12px;font-variant-numeric:tabular-nums}
}
/* Selected design: D2 delivery logo + Q3 centered quantity selector. */
.delivery{flex-direction:column;align-items:flex-start;gap:16px}
.delivery-logo{display:block;width:180px;max-width:100%;height:auto;flex-shrink:0}
.quantity-fieldset legend{width:100%;text-align:center;margin-bottom:16px}
.quantity-fieldset .quantity-row{justify-content:center}
.quantity-fieldset .stepper{width:280px;max-width:100%;height:64px;display:grid;grid-template-columns:64px minmax(0,1fr) 64px;align-items:stretch}
.quantity-fieldset .stepper button{width:100%;height:100%;font-size:28px;color:var(--gold);line-height:1;border:0;padding:0}
.quantity-fieldset .stepper button:first-child{border-right:1px solid var(--line)}
.quantity-fieldset .stepper button:last-child{border-left:1px solid var(--line)}
.quantity-fieldset .stepper button:disabled{opacity:.35;cursor:default}
.quantity-fieldset .stepper input:not([type=checkbox]){width:100%;min-width:0;height:100%;font-size:28px;font-weight:600;font-variant-numeric:tabular-nums}
.quantity-fieldset .bundle-prices,.quantity-fieldset .bundle-note{text-align:center}
.quantity-fieldset .bundle-note{line-height:1.8}
.details .number{display:block;font:600 32px/1.2 var(--body-font,Montserrat),sans-serif;letter-spacing:1px;color:var(--gold);margin-bottom:12px;font-variant-numeric:tabular-nums}
@media(max-width:719px){.delivery{align-items:center;text-align:center}.delivery-logo{margin-inline:auto}}

.quantity-fieldset{min-inline-size:0}.quantity-fieldset .quantity-row{min-width:0}

#order-form{min-width:0}

@media(max-width:719px){.order-section>#order-form{order:1}.order-section>.order-intro{order:2}}
.order-heading>p{max-width:350px;color:var(--muted);font-size:14px}
.order-heading>h2{font-size:43px;line-height:1.06;margin:18px 0}
@media(min-width:720px){.order-heading>h2{font-size:54px}}
@media(max-width:719px){
  .order-section>.order-intro{display:contents}
  .order-section .order-heading{order:0;text-align:center}
  .order-section>#order-form{order:1}
  .order-section .order-info{order:2;text-align:center;min-width:0}
  .order-heading>p{margin-inline:auto}
  .order-info>.delivery{margin-top:0}
}
.candle-care{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:360px;border-top:1px solid var(--line);margin-top:28px;padding-top:24px}
.care-icon{display:block;width:64px;height:64px;flex-shrink:0}
.candle-care h3{margin:0;font:600 14px/1.6 var(--body-font,Montserrat),sans-serif;color:var(--white)}
.candle-care p{margin:0;color:var(--muted);font-size:12px;line-height:1.8}
@media(max-width:719px){.candle-care{max-width:100%;align-items:center;text-align:center}.candle-care p{max-width:350px;margin-inline:auto}.care-icon{margin-inline:auto}}
.delivery-title{margin:0;font:500 36px/1.15 Cormorant,Georgia,serif;color:var(--white)}
.delivery-brands{display:flex;align-items:center;flex-wrap:wrap;gap:20px;max-width:100%}
.meest-logo{display:block;width:150px;max-width:100%;height:auto;background:var(--white);border-radius:8px;padding:8px 12px}
@media(max-width:719px){.delivery-brands{justify-content:center;width:100%}.delivery-title{text-align:center}}
/* Longer pinned scene, driven across the whole sticky scroll distance. */
.light-story{height:360svh;min-height:0}
.light-stage{height:100svh;max-height:none;min-height:0}
.orbit{transform:rotate(calc(var(--scene)*150deg))}
.candle-art{transform:translateY(calc((1 - var(--scene))*65px)) scale(calc(.88 + var(--scene)*.12))}
.light-halo{transform:scale(calc(.65 + var(--scene)*.65))}
.hero-visual{position:absolute;inset:0;transform:translateY(calc(var(--hero-scroll,0)*24px)) scale(calc(1 + var(--hero-scroll,0)*.05));will-change:transform}
.hero-photo .hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 75%;transform:none}
.hero-flame{position:absolute;pointer-events:none;overflow:visible;transform:translate(-50%,-100%);mix-blend-mode:screen}
.hero-flame-core{transform-box:fill-box;transform-origin:50% 100%;transform:rotate(var(--flame-sway,0deg)) scaleY(var(--flame-stretch,1));opacity:.65}
.hero-flame-glow{opacity:var(--flame-glow,.35)}
@media(min-width:720px){.light-story{height:420svh}.hero-photo .hero-visual>img{object-position:center 66%}}
@media(prefers-reduced-motion:reduce){.light-story{height:auto;min-height:0}.light-stage{height:auto;min-height:0}.hero-visual,.candle-art,.orbit,.light-halo{transform:none!important}.hero-flame{display:none}}

/* Keep the first photograph visible while its flame follows a longer scroll. */
.hero-photo-track{height:330svh;min-width:0;position:relative}
.hero-photo-track .hero-photo{position:sticky;top:5svh;height:90svh;min-height:0}
.hero-flame-core{opacity:.65;filter:blur(1.5px)}
@media(min-width:720px){.hero{align-items:start}.hero-copy{position:sticky;top:0}.hero-photo-track{height:350svh}.hero-photo-track .hero-photo{top:0;height:100svh}}
@media(prefers-reduced-motion:reduce){.hero-photo-track{height:auto}.hero-copy{position:static}.hero-photo-track .hero-photo{position:relative;top:0;height:410px}}
@media(min-width:720px) and (prefers-reduced-motion:reduce){.hero-photo-track .hero-photo{height:710px}}

.burn-note{max-width:420px;font:400 11px/1.65 var(--body-font,Montserrat),sans-serif;color:var(--muted);margin-top:16px}
@media(max-width:719px){.burn-note{margin-inline:auto}.scene-copy h2{font-size:clamp(28px,7vw,38px)}}

.product-summary{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px;color:var(--gold);font-size:13px;line-height:1.7}
