@font-face{font-family:BelEditorial;src:url('assets/editorial-regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:BelEditorial;src:url('assets/editorial-italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
:root{--paper:#f6f0eb;--ink:#4c242d;--muted:#71545b;--line:#d9c8c4;--rose:#ead9d2;--white:#fffcf9;--serif:BelEditorial,Georgia,serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 var(--sans)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}a,button,summary{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}figure,h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.06}em{font-weight:400}p+p{margin-top:1.2rem}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline:3px solid #b16c4a;outline-offset:5px}[hidden]{display:none!important}
.skip-link{position:absolute;left:16px;top:-80px;z-index:40;padding:12px;background:var(--white)}.skip-link:focus{top:12px}
.site-header{height:88px;padding:18px 5.5%;display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--paper)}
.wordmark{font-family:var(--serif);font-size:42px;line-height:1;letter-spacing:-.055em;white-space:nowrap}.site-header nav{display:flex;align-items:center;gap:36px;font-size:14px}.nav-signup{border-bottom:1px solid var(--ink);padding:8px 0}.nav-signup span{margin-left:22px;font-size:20px}
.eyebrow{font-size:12px;line-height:1.4;letter-spacing:.15em;font-weight:500}
.button{min-height:56px;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid transparent;border-radius:0;padding:14px 25px;font-size:16px;font-weight:500;line-height:1.5;transition:background .2s}
.button-dark{background:var(--ink);color:var(--white)}.button-dark:hover{background:#64333d}.button>span{font-size:22px;line-height:1}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:16px;min-height:44px;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:7px 0;color:var(--ink);background:transparent}.text-link span{font-size:22px;line-height:1}
/* A single photographic space, with live type in its reserved copy area. */
.campaign-hero{position:relative;isolation:isolate;min-height:clamp(660px,51vw,840px);padding:36px 6% 70px;overflow:hidden;background:#f1e6d9}
.hero-visual{position:absolute;inset:0;z-index:0;display:block}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-copy,.hero-action{position:relative;z-index:1;width:43%;max-width:570px}.hero-category{font-size:14px;line-height:1.5;margin-top:7px;color:var(--ink)}
h1{font-size:clamp(55px,4.8vw,78px);line-height:1.01;letter-spacing:-.04em;margin-top:20px;text-wrap:initial}.hero-description{font-size:17px;line-height:1.6;max-width:360px;margin-top:18px;color:var(--ink)}
.hero-action{margin-top:20px}.hero-action .button{width:310px;max-width:100%}.cta-note{font-size:14px;color:var(--ink);line-height:1.5;margin-top:8px;max-width:320px}.cta-note strong{font-weight:600;color:var(--ink)}
/* Relevance fills the viewport width; the person and room give the hair context. */
.relevance-section{position:relative;isolation:isolate;min-height:660px;padding:94px 6%;display:flex;align-items:center;overflow:hidden;background:#eee4d8}
.relevance-copy{position:relative;z-index:1;width:43%;max-width:550px}.relevance-section h2{font-size:clamp(37px,3.7vw,56px);line-height:1.13;letter-spacing:-.032em;margin-top:25px;text-wrap:balance}.relevance-section h2 em{display:block;font-style:normal;text-wrap:balance}.relevance-section h2 br{display:none}
.relevance-body{font-size:16px;line-height:1.65;color:var(--ink);max-width:410px;margin-top:27px}.relevance-body p:first-child{font-size:14px;color:var(--ink)}.relevance-body p+p{margin-top:13px}
.relevance-scene{position:absolute;inset:0;z-index:0}.relevance-scene img{width:100%;height:100%;object-fit:cover;object-position:center}
/* A deliberate typographic pause between photographic scenes. */
.promise-section{position:relative;overflow:hidden;background:var(--ink);color:var(--rose);padding:54px 7% 52px}.promise-curve{position:absolute;right:0;top:0;width:30%;height:calc(100% - 52px);opacity:.13;pointer-events:none}.promise-curve path{stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}
.promise-section h2{position:relative;font-size:clamp(64px,6.6vw,102px);letter-spacing:-.04em;line-height:1.02;margin-top:24px}.promise-section h2>span{display:block;font-size:.45em;letter-spacing:-.03em}.promise-section h2>em{display:block;margin:24px 0 0 9%}.promise-section h2>em>span{display:block}
.ritual-section{padding:66px 0 58px;background:var(--paper)}.section-heading{padding:0 6%;display:grid;grid-template-columns:1fr 1.65fr;align-items:start;gap:30px}.section-heading>.eyebrow{padding-top:10px}.section-heading h2{font-size:clamp(44px,4.4vw,65px);line-height:1.05;letter-spacing:-.035em}.section-heading h2 br{display:none}.section-heading h2 em{font-style:normal}.section-heading h2 em:before{content:' '}
.ritual-video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;object-position:center;background:var(--rose);margin-top:35px}
.ritual-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;list-style:none;padding:0;margin:30px 6% 0}.ritual-steps li{display:grid;grid-template-columns:27px minmax(0,1fr);gap:13px;min-width:0}.step-number{font-size:12px;line-height:1.6;letter-spacing:.08em;color:var(--muted);padding-top:5px}.ritual-steps h3{font-size:25px;line-height:1.2}.ritual-steps p{font-size:16px;line-height:1.6;color:var(--muted);margin-top:8px}
.ritual-footer{display:flex;align-items:center;justify-content:space-between;gap:26px;margin:33px 6% 0;border-top:1px solid var(--line);padding-top:21px}.product-micro-spec{font-size:13px;line-height:1.6;color:var(--muted)}.ritual-cta{flex-shrink:0}
/* One continuous fabric scene. Copy stays in the photographed negative space. */
.origin-section{position:relative;isolation:isolate;overflow:hidden;min-height:max(650px,56.28vw);padding:100px 7%;display:flex;justify-content:flex-end;align-items:center;background:#ede2d5}.sensory-scene{position:absolute;inset:0;z-index:0}.sensory-scene img{width:100%;height:100%;object-fit:cover;object-position:center}
.origin-copy{position:relative;z-index:1;width:42%;max-width:510px}.origin-copy h2{font-size:clamp(42px,4.2vw,62px);line-height:1.07;letter-spacing:-.035em;margin-top:24px}.origin-copy h2 em{font-style:normal}.origin-description{font-size:16px;line-height:1.7;max-width:360px;margin-top:27px;color:var(--ink)}.origin-scent{font:italic 30px/1.2 var(--serif);margin-top:35px}
.signup-section{padding:74px 6% 78px;display:grid;grid-template-columns:1.15fr 1fr;gap:10%;background:var(--ink);color:var(--paper);align-items:center}.signup-copy h2{font-size:clamp(43px,4.4vw,62px);line-height:1.07;letter-spacing:-.035em;margin-top:25px}.signup-copy h2>span,.signup-copy h2>em{display:block}.signup-copy h2 em{font-style:italic;margin-top:12px}.signup-copy>p:not(.eyebrow){max-width:470px;margin-top:23px;font-size:16px;line-height:1.65;color:#ebd9d5}.signup-panel{min-width:0}
.benefit-rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;padding:17px 0;margin:0 0 25px;border-block:1px solid #8a6168;font-size:12px;line-height:1.5;letter-spacing:.055em;text-transform:uppercase;color:var(--paper)}
form>label:not(.consent-label){font-size:14px;display:block;margin-bottom:9px}.phone-input{display:flex;align-items:center;border:1px solid #af9395;background:var(--white);color:var(--ink);border-radius:0;min-height:55px}.phone-input>span{padding:0 15px;font-size:15px;border-right:1px solid var(--line)}.phone-input input{width:100%;min-width:0;color:var(--ink);padding:13px 15px;border:0;background:transparent;border-radius:0;font-size:16px}.phone-input:focus-within{outline:2px solid var(--rose);outline-offset:3px}.phone-input input:focus{outline:0}input::placeholder{color:#927b7d}.field-help{font-size:13px;color:#e4cbc7;margin-top:8px}.consent-label{display:flex;align-items:flex-start;gap:11px;font-size:14px;line-height:1.5;margin:20px 0}.consent-label input{width:18px;height:18px;margin:2px 0 0;flex-shrink:0;accent-color:var(--ink)}form>.button{width:100%;justify-content:space-between}.signup-panel .button-dark{background:var(--paper);color:var(--ink)}.signup-panel .button-dark:hover{background:var(--rose)}.preview-note{font-size:12px;line-height:1.6;text-align:left;color:#e4cbc7;margin:0 0 22px}.privacy-link{border:0;background:none;color:#e4cbc7;padding:5px 0;font-size:13px;text-decoration:underline;display:block;margin:12px 0 0}.field-error{font-size:13px;color:#ffd1c8;margin:9px 0;line-height:1.45}.form-result{padding:28px 0}.result-symbol{font-size:32px;display:block;margin-bottom:22px}.form-result h3{font-size:39px;margin-bottom:20px}.form-result p{font-size:16px;color:var(--rose)}.form-result .text-link{margin-top:24px;color:var(--paper);border-color:var(--paper)}
.faq-section{max-width:1440px;margin:auto;padding:60px 6%;display:grid;grid-template-columns:.65fr 1.35fr;gap:9%}.faq-section h2{font-size:41px;letter-spacing:-.035em;margin-top:25px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:19px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px;min-height:67px}summary::-webkit-details-marker{display:none}summary>span{font-size:25px;line-height:1;font-weight:300}details[open] summary>span{transform:rotate(45deg)}details>p{color:var(--muted);font-size:16px;padding:0 35px 25px 0;max-width:600px}
footer{max-width:1600px;margin:auto;padding:0 6%}.footer-top{border-top:1px solid var(--line);padding:32px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-top .wordmark{font-size:38px}.footer-top>p{font:italic 21px var(--serif)}.footer-top>a:last-child{font-size:14px}.footer-top>a:last-child>span{margin-left:15px}.footer-bottom{border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted)}
dialog{border:0;background:var(--paper);color:var(--ink);border-radius:0;max-width:500px;width:calc(100% - 40px);padding:30px}dialog::backdrop{background:#24141ab3}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dialog-top button{border:0;background:none;font-size:30px;color:var(--ink);min-width:44px;min-height:44px}dialog h2{font-size:44px;margin-bottom:22px}dialog>p{font-size:16px;color:var(--muted)}dialog>.button{margin-top:25px;width:100%}
@media(min-width:701px) and (max-width:1050px){.campaign-hero{padding:55px 5%;min-height:640px}.hero-copy,.hero-action{width:45%}h1{font-size:clamp(44px,5.1vw,56px)}.hero-description{font-size:16px}.relevance-section{padding:65px 5%;min-height:620px}.relevance-copy{width:45%}.relevance-section h2{font-size:38px}.origin-section{padding:32px 5%;min-height:0;aspect-ratio:1672/941}.origin-copy{width:44%}.origin-copy h2{font-size:clamp(32px,4vw,42px);margin-top:18px}.origin-description{font-size:14px;line-height:1.6;margin-top:18px}.origin-scent{font-size:26px;margin-top:20px}.signup-section{gap:7%}.signup-copy h2{font-size:43px}.benefit-rail{font-size:12px;gap:10px;letter-spacing:.02em}}
@media(max-width:700px){
 .site-header{height:68px;padding:15px 6%;gap:16px}.wordmark{font-size:27px}.site-header nav{gap:0}.nav-product{display:none}.nav-signup{font-size:12px;white-space:nowrap}.nav-signup span{font-size:17px;margin-left:12px}.eyebrow{font-size:12px;letter-spacing:.1em}
 .campaign-hero{min-height:0;padding:24px 0 0;display:flex;flex-direction:column;background:var(--paper)}.hero-copy,.hero-action{width:88%;max-width:none;margin-inline:6%}.hero-visual{position:relative;inset:auto;display:block;flex:none;width:100%;aspect-ratio:5/4}.hero-category{font-size:13px;margin-top:5px}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:56% center}
 h1{font-size:clamp(39px,10.5vw,48px);line-height:1.02;letter-spacing:-.04em;margin-top:21px;max-width:360px}.hero-description{font-size:16px;line-height:1.5;max-width:345px;margin-top:17px}.hero-action{position:relative;inset:auto;display:flex;flex-direction:column;gap:10px;margin-top:18px;margin-bottom:20px}.hero-action .button{width:100%;min-height:52px;padding-block:12px}.cta-note{order:-1;font-size:14px;line-height:1.45;margin:0;max-width:none;color:var(--ink)}
 .relevance-section{display:block;min-height:820px;padding:34px 6%;background:#eee4d8}.relevance-copy{width:100%;max-width:none;margin:0;padding:0}.relevance-section h2{font-size:clamp(31px,8.2vw,37px);line-height:1.14;margin-top:19px}.relevance-body{font-size:16px;line-height:1.6;margin-top:21px}.relevance-body p:first-child{font-size:14px}.relevance-scene img{object-fit:cover;object-position:62% bottom}
 .promise-section{padding:36px 6%}.promise-curve{width:42%;height:calc(100% - 36px);right:0;top:0}.promise-section h2{font-size:clamp(39px,10.5vw,47px);line-height:1.09;margin-top:20px;letter-spacing:-.045em}.promise-section h2>span{font-size:.7em}.promise-section h2>em{margin:18px 0 0}
 .ritual-section{padding:40px 0 43px}.section-heading{display:block;padding:0 6%}.section-heading>.eyebrow{padding:0}.section-heading h2{font-size:37px;line-height:1.08;margin-top:18px;max-width:310px}.ritual-video{margin-top:25px}.ritual-steps{grid-template-columns:1fr;gap:21px;margin:25px 6% 0}.ritual-steps li{grid-template-columns:24px 1fr;gap:13px}.step-number{padding-top:4px}.ritual-steps h3{font-size:23px;line-height:1.2}.ritual-steps p{font-size:16px;line-height:1.5;margin-top:5px}.ritual-footer{display:block;margin:26px 6% 0;padding-top:20px}.product-micro-spec{font-size:13px;line-height:1.6}.ritual-cta{display:flex;width:100%;margin-top:13px;min-height:49px}
 .origin-section{display:block;min-height:0;padding:30px 6%}.origin-copy{width:100%;max-width:365px;min-height:calc(177.6833vw - 60px)}.origin-copy h2{font-size:clamp(36px,9.7vw,43px);line-height:1.1;margin-top:18px}.origin-description{font-size:16px;line-height:1.65;margin-top:18px;max-width:330px}.origin-scent{position:absolute;left:0;bottom:0;font-size:26px;margin:0}.sensory-scene img{object-position:center}
 .signup-section{display:block;padding:44px 6% 46px}.signup-copy h2{font-size:clamp(35px,9.3vw,41px);line-height:1.1;margin-top:20px;max-width:375px}.signup-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-top:20px}.signup-panel{margin-top:25px}.benefit-rail{font-size:12px;line-height:1.45;letter-spacing:.02em;gap:16px;padding:15px 0;margin-bottom:19px}.preview-note{margin-bottom:18px}.phone-input{min-height:55px}
 .faq-section{display:block;padding:42px 6%}.faq-section h2{font-size:34px;margin-top:18px}.faq-section h2 br{display:none}.faq-section h2 em:before{content:' '}.faq-list{margin-top:24px}summary{min-height:64px;padding:17px 0;line-height:1.45}details>p{padding-right:15px}.footer-top{flex-wrap:wrap;padding:27px 0;gap:17px}.footer-top .wordmark{font-size:30px}.footer-top>p{order:3;width:100%;font-size:20px}.footer-bottom{font-size:12px;align-items:flex-start}.footer-bottom>span:last-child{text-align:right}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Revision 09: one clear comparison, followed immediately by the launch action. */
.comparison-section{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);grid-template-areas:"copy visual" "action visual";column-gap:6%;row-gap:28px;max-width:1600px;margin-inline:auto;padding:76px 6%;background:var(--paper)}
.comparison-copy{grid-area:copy;align-self:end;min-width:0}.comparison-copy h2{font-size:clamp(40px,3.9vw,60px);line-height:1.07;letter-spacing:-.035em;margin-top:0}.comparison-description{font-size:16px;line-height:1.6;max-width:340px;margin-top:23px;color:var(--muted)}
.comparison-visual{grid-area:visual;min-width:0;align-self:center}.comparison-labels{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-bottom:12px;font:500 12px/1.4 var(--sans);letter-spacing:.13em;text-align:center}.comparison-visual img{width:100%;height:auto;object-fit:contain}
.comparison-action{grid-area:action;align-self:start;min-width:0}.comparison-action .button{width:310px;max-width:100%}.comparison-helper{max-width:330px;margin-top:12px;font-size:14px;line-height:1.5;color:var(--ink)}.comparison-helper strong{font-weight:600}
@media(max-width:700px){.comparison-section{grid-template-columns:minmax(0,1fr);grid-template-areas:"copy" "visual" "action";gap:24px;padding:40px 6% 42px}.comparison-copy h2{font-size:clamp(35px,9.5vw,43px);margin-top:0;line-height:1.08}.comparison-description{margin-top:17px;max-width:360px}.comparison-labels{margin-bottom:10px}.comparison-action .button{width:100%;min-height:52px;padding-block:12px}.comparison-helper{margin-top:10px;max-width:none}.comparison-action{margin-top:0}}

/* Revision 11: a quiet, persistent launch offer with an immediately available action. */
html{scroll-padding-top:66px}
.announcement-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:20px;height:42px;padding:0 5.5%;background:var(--ink);color:var(--paper)}
.announcement-message{flex:1;min-width:0;overflow:hidden;line-height:42px}
.announcement-static{display:block;font-size:12px;white-space:nowrap}
.announcement-track{display:none;width:max-content;min-width:200%;align-items:center}
.announcement-sequence{display:flex;align-items:center;justify-content:space-between;flex:1 0 auto;gap:30px;padding-right:30px;white-space:nowrap;font-size:12px;letter-spacing:.09em}
.announcement-bar.is-animated .announcement-static{display:none}.announcement-bar.is-animated .announcement-track{display:flex;animation:announcement-scroll 26s linear infinite}
.announcement-bar.is-paused .announcement-track,.announcement-message:hover .announcement-track,.announcement-message:focus .announcement-track{animation-play-state:paused}
.announcement-cta{display:flex;align-items:center;gap:12px;flex-shrink:0;align-self:stretch;font-size:12px;font-weight:600;white-space:nowrap}.announcement-cta>span{font-size:17px}
.announcement-pause{flex:0 0 42px;align-self:stretch;display:grid;place-items:center;border:0;padding:0;background:transparent;color:#d9c8c4;font-size:14px;line-height:1}
.announcement-bar :focus-visible{outline:2px solid var(--paper);outline-offset:-3px}
.coupon-combination{display:block;margin-top:6px}
@keyframes announcement-scroll{to{transform:translateX(-50%)}}
@media(max-width:700px){.announcement-bar{gap:12px;padding:0 0 0 6%}.announcement-sequence{gap:22px;padding-right:22px;font-size:12px;letter-spacing:.07em}.announcement-cta{gap:6px;font-size:12px}.announcement-pause{flex-basis:38px}.announcement-static{font-size:12px;white-space:normal;line-height:1.25}}
@media(prefers-reduced-motion:reduce){.announcement-bar.is-animated .announcement-track{display:none}.announcement-bar.is-animated .announcement-static{display:block}.announcement-pause{display:none}}

/* Revision 13: the offer, navigation and primary action have distinct roles. */
.announcement-cta{font-size:12px;letter-spacing:.04em}
.hero-action .cta-note{margin:0;max-width:330px}
.cta-delivery{display:block;margin-top:4px}
.hero-action .button{width:330px;font-size:14px;gap:16px;padding-inline:20px}
.coupon-offer{margin:14px 0 16px;max-width:330px}
.offer-intro{font-size:12px;line-height:1.4;margin:0 0 7px;color:var(--muted)}
.offer-pair{display:grid;grid-template-columns:1fr 28px 1.4fr;align-items:center;gap:12px;margin:0;font-size:12px;line-height:1.45;letter-spacing:.07em;text-transform:uppercase}
.offer-pair strong{font-weight:600}.offer-eligible{font-size:12px;letter-spacing:.07em}
.offer-pair .offer-plus{font:400 28px/1 var(--serif);text-align:center}
.signup-copy h2{font-size:clamp(43px,4vw,58px)}
.benefit-rail{margin-bottom:0;align-items:start}.benefit-rail li>span{font-size:12px;letter-spacing:.04em}
.coupon-conditions{font-size:12px;line-height:1.5;color:#e4cbc7;margin:10px 0 22px;max-width:370px}
@media(max-width:700px){
 .announcement-cta{font-size:12px;letter-spacing:.02em}
 .hero-action{gap:12px}.hero-action .cta-note{order:0;max-width:345px}.hero-action .coupon-offer{order:0;margin:0;max-width:345px;width:100%}.hero-action .button{order:0;width:100%}
 .offer-pair{grid-template-columns:1fr 24px 1.4fr;gap:12px}.offer-intro{margin-bottom:5px}
 .signup-copy h2{font-size:clamp(35px,9.3vw,41px)}.signup-copy h2 em{margin-top:10px}
 .benefit-rail{gap:12px;margin-bottom:0}.coupon-conditions{margin-bottom:20px}
}

/* Revision 14: readable offer, reliable form states and compact static fallback. */
.offer-value{font:400 36px/1 var(--serif);letter-spacing:-.03em;text-transform:none;white-space:nowrap}
.offer-pair{grid-template-columns:1.2fr 24px 1.4fr;font-size:12px}
.announcement-static{line-height:1.3}
.announcement-static>span{display:inline}
.button:disabled{cursor:wait;opacity:.7}
.signup-panel [aria-invalid="true"]{outline:2px solid #ffd1c8;outline-offset:2px}
.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}
#submit-error{margin-top:12px}
.privacy-link{min-height:44px}
dialog p a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){
 .announcement-bar{gap:8px;padding-left:4%}
 .announcement-static>span{display:block}
 .announcement-cta{font-size:12px;letter-spacing:0;gap:4px}
 .announcement-cta>span{display:none}
 .announcement-pause{flex-basis:32px}
 .announcement-message{min-height:42px;display:flex;align-items:center}
 .offer-value{font-size:34px}
}
