/* The opening returns to the original product composition. */
.hero-inner{grid-template-columns:44% 56%;padding-top:0;padding-bottom:0;gap:0}.hero-copy{display:block;order:initial;padding:58px 0 45px}.hero-copy>*{order:initial!important}.hero-title{font-size:clamp(65px,6.3vw,100px)}.product-stage{order:initial;min-height:680px;margin:0}.product-stage .pack{display:block;visibility:visible}.product-stage .pack-spf{height:53%;left:14%;bottom:16%}.product-stage .pack-serum{height:54%;left:32%;bottom:16%;z-index:5}.product-stage .pack-toner{height:57%;left:49%;bottom:16%}.product-stage .pack-cleanser{height:52%;left:70%;bottom:16%}.product-stage .pack-cream{height:30%;left:56%;bottom:16%;z-index:6}.hero-static-phone,#hero-webgl{display:none!important}.hero-copy .hero-title{margin:24px 0 29px}.product-stage .scene-tag{bottom:35px}.hero-copy .store-platforms{margin-top:24px}
.section-moment{position:relative;min-height:140px;max-width:660px;margin:0 0 22px;display:flex;align-items:center;isolation:isolate}.hero-copy .section-moment{margin-top:24px;margin-bottom:0}.section-moment:has(.moment-dock:empty){pointer-events:none}.moment-dock{position:relative;z-index:2;width:100%;min-width:0}.moment-bloom{position:absolute;left:24px;top:5px;width:100px;height:120px;pointer-events:none;opacity:.18;transform:scale(.42);transition:opacity .5s,transform .7s cubic-bezier(.2,.7,.2,1)}.moment-bloom svg{position:absolute;width:62px;height:94px;left:18px;bottom:4px;transform-origin:50% 100%;transform:rotate(0deg) scaleY(.15);transition:transform .9s cubic-bezier(.16,.8,.25,1);transition-delay:calc(var(--petal)*40ms);fill:#ccd8bd;stroke:#9cad89;stroke-width:1}.moment-bloom .leaf-vein{fill:none;stroke:#879c77;stroke-width:1}.moment-active .moment-bloom{opacity:.5;transform:scale(1)}.moment-active .moment-bloom svg{transform:rotate(calc((var(--petal) - 2.5)*29deg)) scaleY(1)}#fairy-guide{position:relative;padding:0;margin:0;background:none;max-width:none;color:#302f29}.section-fairy{display:grid;grid-template-columns:92px minmax(0,1fr);gap:18px;align-items:center;position:relative;min-height:140px;padding-right:32px;animation:section-sprout .6s cubic-bezier(.2,.7,.2,1)}.section-fairy-art{display:block;width:88px;height:132px;object-fit:contain;filter:drop-shadow(0 8px 9px #4e624d18);animation:fairy-unfold .8s cubic-bezier(.2,.7,.2,1)}.section-fairy-copy h3{font:italic 25px/1.15 Display,Georgia,serif;margin:0 0 9px}.section-fairy-copy p{font-size:12px;line-height:1.6;color:#536550;margin:0 0 8px;max-width:390px}.section-fairy-copy a{font-size:11px;color:#344a33;display:inline-block;min-height:32px;padding:5px 0;text-decoration:underline;text-underline-offset:4px}.section-fairy .fairy-close{right:0;top:3px;min-width:32px;min-height:44px;font-size:22px}.section-moment .fairy-reopen{margin:0 0 0 110px;background:#fffefa80}.waitlist>.section-moment{max-width:600px;margin:0 auto 34px;text-align:left}.waitlist .section-fairy{color:#fffefa}.waitlist .section-fairy-copy p{font-size:12px;color:#e4eadc;line-height:1.6;margin:0 0 8px;max-width:none}.waitlist .section-fairy-copy a,.waitlist .fairy-close{color:#fffefa}.waitlist .moment-bloom{opacity:.4}.section-fairy.fairy-celebrate .section-fairy-art{animation:fairy-thanks .7s ease-out}.chapter>.section-moment{margin-top:-20px}.experience>.section-moment{margin-bottom:30px}@keyframes section-sprout{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fairy-unfold{from{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:760px){.hero-inner{grid-template-columns:1fr}.hero-copy{display:block;padding:46px 0 10px}.hero-copy .hero-title{font-size:clamp(58px,13vw,89px);margin:22px 0}.hero-copy .hero-desc{margin:0}.hero-copy .hero-actions{margin-top:22px}.hero-copy .hero-note{margin-top:18px}.product-stage{min-height:390px;margin:0 -10px}.product-stage .pack-spf{height:53%;left:14%}.product-stage .pack-serum{height:55%;left:30%}.product-stage .pack-toner{height:56%;left:49%}.product-stage .pack-cleanser{height:51%;left:70%}.product-stage .pack-cream{height:29%;left:58%}.section-moment{min-height:132px;margin-bottom:20px}.hero-copy .section-moment{margin-top:18px}.section-fairy{grid-template-columns:72px minmax(0,1fr);gap:12px;min-height:132px;padding-right:24px}.section-fairy-art{width:72px;height:116px}.section-fairy-copy h3{font-size:22px}.section-fairy-copy p{font-size:11px}.section-fairy-copy a{font-size:10px}.moment-bloom{left:8px;top:3px;width:80px;height:110px}.moment-bloom svg{width:48px;height:78px;left:14px}.section-moment .fairy-reopen{margin-left:80px;font-size:11px}.section-fairy .fairy-close{min-width:24px}.chapter>.section-moment{margin-top:-10px}}
@media(prefers-reduced-motion:reduce){.section-fairy,.section-fairy-art,.moment-bloom,.moment-bloom svg{animation:none!important;transition:none!important}}
/* A delayed arrival, articulated wings and a light trail, without emoji. */
.section-fairy{animation:section-sprout .28s cubic-bezier(.2,.7,.2,1) .08s both}.moment-bloom{transition-delay:.08s}.moment-bloom svg{transition-delay:calc(.08s + var(--petal)*30ms)}.fairy-flight-arrival{display:block;position:relative;width:92px;height:140px;animation:fairy-fly-in .65s cubic-bezier(.16,.7,.25,1) .08s both;perspective:350px}.fairy-flight{display:block;position:relative;width:92px;height:140px;animation:fairy-hover-flight 4.8s ease-in-out .73s infinite;transform-style:preserve-3d}.fairy-flight .fairy-flight-body{position:absolute;left:4px;top:0;width:88px;height:132px;z-index:2;animation:none;filter:drop-shadow(0 9px 8px #4e624d25)}.fairy-wing{display:block;position:absolute;top:-18px;width:60px;height:90px;z-index:1;backface-visibility:visible;transform-style:preserve-3d;filter:drop-shadow(0 0 3px #fff8de80);animation:fairy-left-wing .48s ease-in-out .08s infinite alternate}.fairy-wing svg{width:100%;height:100%;overflow:visible}.fairy-wing-left{left:-11px;transform-origin:96% 62%}.fairy-wing-right{left:46px;transform-origin:4% 62%;animation-name:fairy-right-wing}.fairy-rest-art{display:none}.fairy-wing-sparks{position:absolute;left:-23px;top:-22px;width:140px;height:180px;overflow:visible;pointer-events:none;z-index:3}.magic-particle{opacity:0;transform-origin:0 0;animation:fairy-light-trail 2.4s cubic-bezier(.15,.65,.3,1) both infinite;animation-delay:calc(.12s + var(--lag));will-change:transform,opacity}.magic-star path{vector-effect:non-scaling-stroke}.section-fairy.fairy-celebrate .section-fairy-art{animation:none}#fairy-guide[data-visible="false"] .fairy-flight-arrival,#fairy-guide[data-visible="false"] .fairy-flight,#fairy-guide[data-visible="false"] .fairy-wing,#fairy-guide[data-visible="false"] .magic-particle{animation-play-state:paused}#waitlist-form{position:relative;isolation:isolate}.registration-sparks{position:absolute;right:-15px;bottom:-18px;width:220px;height:100px;overflow:visible;pointer-events:none;z-index:3;display:none}.registration-enchanted .registration-sparks{display:block}.registration-sparks .magic-particle{animation-name:registration-light-burst;animation-duration:1.8s;animation-iteration-count:2;animation-delay:calc(.6s + var(--lag)*.5)}.registration-enchanted button{animation:registration-call 1.8s ease-in-out .6s 2}.registration-confirmed .registration-sparks .magic-particle{animation-name:registration-confirmed-burst}.registration-confirmed button{animation:none}.waitlist .section-fairy .fairy-flight-body{filter:drop-shadow(0 0 9px #fff4ca55)}
@keyframes fairy-fly-in{0%{opacity:0;transform:translate(-14px,18px) rotate(-7deg) scale(.88)}45%{opacity:1;transform:translate(4px,-10px) rotate(3deg) scale(1.02)}75%{transform:translate(-2px,2px) rotate(-1deg)}100%{opacity:1;transform:none}}@keyframes fairy-hover-flight{0%,100%{transform:translate(0,0) rotate(-1deg)}30%{transform:translate(3px,-7px) rotate(1deg)}65%{transform:translate(-2px,-3px) rotate(-.5deg)}}@keyframes fairy-left-wing{from{transform:rotateY(-8deg) rotateZ(-4deg)}to{transform:rotateY(68deg) rotateZ(4deg)}}@keyframes fairy-right-wing{from{transform:rotateY(8deg) rotateZ(4deg)}to{transform:rotateY(-68deg) rotateZ(-4deg)}}@keyframes fairy-light-trail{0%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(0)}12%{opacity:.95;transform:translate(var(--sx),var(--sy)) scale(var(--scale))}38%{opacity:.7}68%,100%{opacity:0;transform:translate(calc(var(--sx) + var(--dx)),calc(var(--sy) + var(--dy))) scale(.08)}}@keyframes registration-light-burst{0%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(0)}18%{opacity:1;transform:translate(var(--sx),var(--sy)) scale(var(--scale))}45%{opacity:.8}100%{opacity:0;transform:translate(calc(var(--sx) + var(--dx)),calc(var(--sy) + var(--dy))) scale(.05)}}@keyframes registration-confirmed-burst{0%{opacity:0;transform:translate(var(--sx),var(--sy)) scale(0)}18%{opacity:1;transform:translate(var(--sx),var(--sy)) scale(var(--scale))}100%{opacity:0;transform:translate(calc(var(--sx) + var(--dx)*1.5),calc(var(--sy) + var(--dy)*1.5)) scale(.05)}}@keyframes registration-call{0%,100%{box-shadow:0 0 0 0 #e9dca900}45%{box-shadow:0 0 0 5px #e9dca930,0 0 23px #f8e6ac65}}
@media(max-width:760px){.fairy-flight-arrival,.fairy-flight{width:72px;height:124px}.fairy-flight-arrival{transform-origin:center center}.fairy-flight .fairy-flight-body{left:0;width:72px;height:116px}.fairy-wing{width:49px;height:74px;top:-12px}.fairy-wing-left{left:-11px}.fairy-wing-right{left:36px}.fairy-wing-sparks{left:-23px;top:-15px;width:120px;height:156px}.registration-sparks{right:-5px;width:180px;height:86px}}
@media(prefers-reduced-motion:reduce){.section-fairy,.fairy-flight-arrival,.fairy-flight,.fairy-wing,.magic-particle,.registration-enchanted button{animation:none!important}.moment-bloom,.moment-bloom svg{transition:none!important}.fairy-wing-sparks,.registration-sparks,.fairy-wing,.fairy-flight-body{display:none!important}.fairy-rest-art{display:block;width:88px;height:132px;object-fit:contain}.fairy-flight-arrival,.fairy-flight{perspective:none;transform:none!important}}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.fairy-rest-art{width:72px;height:116px}}

.registration-button-wrap{position:relative;display:inline-flex;align-self:stretch;flex:0 0 auto;isolation:isolate}.registration-button-wrap>button{width:100%}.registration-button-wrap .registration-sparks{left:-40px;right:auto;bottom:-22px;width:calc(100% + 80px);height:100px}#waitlist-form{overflow:clip;overflow-clip-margin:14px}
/* Confine wing depth to its own plane: it can never cross the body layer. */
.fairy-flight-arrival{perspective:none}.fairy-flight{transform-style:flat;isolation:isolate}.fairy-wing-plane{position:absolute;inset:0;z-index:0;isolation:isolate;perspective:350px;transform-style:flat;pointer-events:none}.fairy-flight .fairy-flight-body{z-index:2;transform:translateZ(0)}
/* Presentation groups enter once as they reach the viewport; layout is reserved. */
.scroll-entrance-pending{opacity:0}.avatar-preview canvas{opacity:1}.avatar-option-picture canvas{display:block;width:100%;height:auto}
@media(prefers-reduced-motion:reduce){.scroll-entrance-pending{opacity:1}}
.avatar-preview{aspect-ratio:1}
/* A real label, rather than cosmetic packaging, is the scanning target. */
.scan-product{height:auto;min-height:350px;padding:22px;background:radial-gradient(ellipse at 40% 30%,#fffefa,#e4eadc)}.scan-label{position:relative;width:100%;max-width:290px;padding:20px 18px 12px;background:#fffefa;color:#302f29;border:1px solid #d3d8ca;border-radius:5px;box-shadow:5px 10px 24px #43543722;transform:rotate(-2deg);z-index:1}.scan-label-head{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #c4cbba;padding-bottom:12px;font-size:11px}.scan-label-head small{font-size:8px;color:#626756;white-space:nowrap}.scan-label-name{display:block;font-size:17px;font-weight:500;line-height:1.35;margin:14px 0}.scan-label-ingredients{padding:12px 0;border-top:1px solid #deddd3;border-bottom:1px solid #deddd3}.scan-label-ingredients>span{font-size:9px;letter-spacing:1px;text-transform:uppercase}.scan-label-ingredients p{font-size:10px!important;line-height:1.6!important;margin:8px 0 0!important;color:#4d5147}.scan-label-code{text-align:center;padding-top:12px}.demo-barcode{display:block;width:174px;max-width:100%;height:73px;margin:0 auto;fill:#252b24}.scan-label-code>small{font-size:8px;color:#626756}.is-scanning .scan-label{animation:label-read-in 1.8s ease-in-out}.scan-product .scan-beam{z-index:3;background:#587a42;box-shadow:0 0 10px 4px #97b98099}.scan-corner{z-index:4}.scan-product .top-left{top:12px;left:12px}.scan-product .bottom-right{bottom:12px;right:12px}@keyframes label-read-in{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(0deg)}}
/* Depth and light follow scrolling across the entire page. */
.scroll-scene{position:relative;isolation:isolate}.section-aura{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;contain:paint}.section-aura-light{position:absolute;width:min(70vw,750px);height:550px;left:35%;top:15%;border-radius:50%;background:radial-gradient(ellipse,#cadbb37a,transparent 70%);transform:translate3d(0,var(--scene-shift,0px),0) scale(calc(.9 + var(--scene-progress,0)*.25));opacity:.7}.section-aura-leaf{position:absolute;right:3%;top:30%;width:135px;height:190px;fill:#c8d7b415;stroke:#96ad7950;stroke-width:.6;transform:translate3d(0,var(--scene-shift,0px),0) rotate(var(--scene-turn,0deg));transform-origin:center;opacity:.75}.section-aura-leaf path+path{fill:none}.waitlist .section-aura-light{background:radial-gradient(ellipse,#e9daa72e,transparent 70%)}.waitlist .section-aura-leaf{stroke:#e8eac642;fill:#eff1cd0a}.journey-progress{position:fixed;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,#4e624d,#a8be88,#dac793);transform:scaleX(0);transform-origin:left;pointer-events:none;z-index:40;box-shadow:0 0 7px #a8be8866}.scroll-scene .pack,.scroll-scene .feature-large>img,.scroll-scene .small-panel>img,.scroll-scene .philosophy-image>img{will-change:translate}
/* Audio is off by default and is always controlled by the visitor. */
.sound-control{position:fixed;left:14px;bottom:14px;z-index:25;max-width:230px;color:#344a33;font:12px/1.5 Inter,sans-serif}.sound-toggle{display:flex;align-items:center;gap:8px;background:#fffefaf2;border:1px solid #aebca3;border-radius:99px;box-shadow:0 4px 18px #344a3318;min-height:44px;padding:10px 14px;font-size:11px}.sound-toggle svg{width:18px;height:18px;flex-shrink:0}.sound-toggle[aria-pressed=false] .sound-waves{opacity:.35}.sound-on .sound-toggle{background:#4e624d;color:#fffefa;border-color:#4e624d}.sound-settings{position:absolute;left:0;bottom:54px;width:225px;border:1px solid #c1cdb5;border-radius:15px;background:#fffefa;padding:15px;box-shadow:0 10px 30px #344a3326}.sound-settings label{display:flex;justify-content:space-between;font-size:12px}.sound-settings input{width:100%;min-height:32px;accent-color:#4e624d}.sound-settings p{font-size:10px;color:#536550;margin:4px 0 0}.sound-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.sound-writing{bottom:auto;top:14px}.sound-writing .sound-settings{bottom:auto;top:54px}
@media(max-width:760px){.section-aura-leaf{width:90px;height:130px;right:-5%;opacity:.6}.section-aura-light{width:100%;left:20%;height:400px}.sound-control{left:10px;bottom:10px}.sound-writing{top:10px;bottom:auto}.sound-toggle{font-size:10px;padding:9px 12px}.scan-product{padding:18px 14px;min-height:330px}.scan-label{padding:15px 13px 10px}.scan-label-name{font-size:15px}.scan-label-head{font-size:10px}.scan-label-head small{font-size:7px}.scan-label-ingredients p{font-size:9px!important}.demo-barcode{width:160px;height:67px}}
@media(prefers-reduced-motion:reduce){.is-scanning .scan-label{animation:none!important}.section-aura,.journey-progress{display:none}}
.sound-control{display:flex;align-items:flex-end;gap:6px}.sound-volume{width:42px;min-height:44px;padding:10px;display:grid;place-items:center;border-radius:50%;border:1px solid #aebca3;background:#fffefa;color:#344a33;box-shadow:0 4px 18px #344a3318}.sound-volume svg{width:18px;height:18px}
