:root{--ink:#17201c;--green:#183d31;--leaf:#476b50;--mist:#edf0e9;--paper:#f7f5ef;--gold:#b69154;--line:rgba(23,32,28,.17);--shell:min(1180px,calc(100% - 64px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,"Noto Sans SC","Microsoft YaHei",sans-serif;line-height:1.6}button,input,select,textarea{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}.shell{width:var(--shell);margin-inline:auto}.announcement{height:34px;padding:0 max(32px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:#fff;font-size:11px;letter-spacing:.12em}.announcement button{border:0;background:none;color:#fff;text-transform:uppercase;font-size:10px;letter-spacing:.12em}.site-header{height:86px;background:rgba(247,245,239,.94);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.nav{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:36px}.nav-group{display:flex;gap:27px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.nav-right{justify-content:flex-end}.nav-group a{position:relative}.nav-group a:after{content:"";position:absolute;left:0;right:100%;height:1px;bottom:-8px;background:var(--green);transition:.25s}.nav-group a:hover:after,.nav-group a.active:after{right:0}.brand{display:flex;flex-direction:column;align-items:center;line-height:1;font-family:Georgia,serif;font-size:10px;letter-spacing:.15em}.brand img{width:44px;height:44px;object-fit:contain}.menu-toggle{display:none;border:0;background:none}.hero{height:min(710px,calc(100vh - 80px));min-height:600px;position:relative;overflow:hidden;background:var(--mist)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(237,240,233,.98) 0 47%,rgba(237,240,233,.18) 73%),radial-gradient(circle at 85% 30%,#9cae9d,transparent 42%),linear-gradient(135deg,#7e927e,#d9dfd4)}.hero-art{position:absolute;right:2%;top:-12%;width:52%;height:125%;display:grid;place-items:center;opacity:.55;filter:drop-shadow(0 25px 35px rgba(17,48,34,.2))}.hero-art img{width:min(650px,90%);mix-blend-mode:multiply}.hero-content{position:relative;z-index:2;padding-top:115px}.eyebrow{margin:0 0 23px;text-transform:uppercase;color:var(--leaf);font-size:11px;font-weight:bold;letter-spacing:.23em}.eyebrow.light{color:#c9d5cc}.hero h1,.story h2,.section-intro h2,.product h2,.location h2,.contact h2{font-family:Georgia,"Noto Serif SC",serif;font-weight:400;letter-spacing:0}.hero h1{font-size:clamp(54px,6vw,90px);line-height:1.08;margin:0 0 24px}.hero-copy{max-width:520px;font-size:16px;color:#435149}.hero-actions{display:flex;gap:32px;align-items:center;margin-top:35px}.btn{min-height:51px;border:0;border-radius:0;padding:0 28px;font-size:12px;font-weight:bold;letter-spacing:.1em}.btn-primary{background:var(--green);color:white}.btn-dark{background:var(--ink);color:white}.btn-light{background:white;color:var(--ink)}.text-link,.line-link{font-size:12px;font-weight:bold;letter-spacing:.08em;border-bottom:1px solid currentColor;padding-bottom:5px}.hero-facts{display:flex;gap:45px;margin-top:80px}.hero-facts div{display:grid;grid-template-columns:auto auto;column-gap:10px;align-items:center}.hero-facts strong{font-family:Georgia,serif;font-size:21px;color:var(--gold)}.hero-facts span{font-size:11px;letter-spacing:.08em}.scroll-hint{position:absolute;bottom:25px;right:28px;font-size:9px;letter-spacing:.3em;writing-mode:vertical-rl}.section{padding:130px 0}.story{background:#fff}.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.story-visual{height:560px;background:var(--green);position:relative;display:grid;place-items:center;overflow:hidden}.story-visual:before{content:"";width:400px;height:400px;border:1px solid rgba(255,255,255,.18);position:absolute;transform:rotate(45deg)}.seal{width:310px;height:310px;border-radius:50%;background:#f0eadc;display:grid;place-items:center;position:relative;z-index:2}.seal img{width:83%;mix-blend-mode:multiply}.vertical-note{position:absolute;right:24px;bottom:30px;color:#d2dbd4;font-size:9px;letter-spacing:.2em;writing-mode:vertical-rl}.story-copy h2,.section-intro h2,.location h2{font-size:48px;line-height:1.25;margin:0 0 35px}.story-copy>p:not(.eyebrow){font-size:15px;color:#59645e;margin:0 0 20px}.line-link{display:inline-block;margin-top:20px}.revival{background:var(--green);padding:125px 0 0;color:white}.revival-head{text-align:center}.revival-head h2{font-family:Georgia,serif;font-size:70px;font-weight:400;line-height:1;margin:0}.revival-head h2 em{color:#a9bba9;font-weight:400}.revival-head>p:last-child{color:#d0d9d2;font-size:13px;letter-spacing:.2em}.program-stage{margin-top:70px}.program-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;color:var(--ink)}.program-tab{height:180px;border:0;border-right:1px solid var(--line);background:#f8f8f5;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:35px;position:relative}.program-tab span{position:absolute;right:25px;top:18px;color:#a1aaa4;font-family:Georgia,serif}.program-tab strong{font-family:Georgia,"Noto Serif SC",serif;font-size:25px;font-weight:400}.program-tab small{font-size:9px;letter-spacing:.15em;margin-top:8px}.program-tab.active{background:#dbe2d9}.program-detail{min-height:320px;background:#fff;color:var(--ink);display:grid;grid-template-columns:1fr auto;align-items:center;padding:55px 10%;gap:50px}.detail-kicker{font-size:11px;color:var(--leaf);letter-spacing:.1em}.program-detail h3{font-family:Georgia,"Noto Serif SC",serif;font-size:34px;font-weight:400;margin:8px 0 15px}.program-detail>div>p{max-width:620px;color:#667169}.program-detail ul{display:flex;list-style:none;padding:0;margin:28px 0 0;gap:25px;font-size:11px;font-weight:bold}.booking-medallion{width:140px;height:140px;border-radius:50%;border:0;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.booking-medallion span{font-family:Georgia,"Noto Serif SC",serif;font-size:24px}.booking-medallion small{font-size:8px;letter-spacing:.2em}.section-intro{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:70px}.section-intro h2{margin:0}.section-intro>p{font-size:14px;color:#626d66}.service-list{margin-top:70px;border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:80px 1fr 1fr 50px;align-items:center;min-height:120px;border-bottom:1px solid var(--line);transition:.2s}.service-list article:hover{padding-inline:15px;background:#eeefe9}.service-list article>span{color:var(--gold);font-family:Georgia,serif}.service-list h3{font-family:Georgia,"Noto Serif SC",serif;font-size:28px;font-weight:400}.service-list p{color:#6d766f;font-size:12px;letter-spacing:.08em}.service-list button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent}.product{padding:125px 0;background:#e5e8df}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.product-image{height:570px;background:#cfd8cc;position:relative;display:grid;place-items:center;overflow:hidden}.ritual-label{position:absolute;left:25px;top:25px;font-size:9px;letter-spacing:.2em}.bottle{width:175px;height:370px;background:linear-gradient(90deg,#e9e6db,#fff 48%,#d9d4c8);border-radius:18px 18px 28px 28px;box-shadow:0 30px 40px rgba(38,56,44,.17);position:relative;display:grid;place-items:center;text-align:center;font-family:Georgia,serif;letter-spacing:.12em}.bottle:before{content:"";position:absolute;width:100px;height:70px;top:-60px;background:#283c31;border-radius:4px 4px 0 0}.bottle i{font-style:normal;font-size:18px;border-top:1px solid;border-bottom:1px solid;padding:20px 0}.product-leaf{position:absolute;font-family:Georgia,serif;font-size:200px;color:#9cad9b;opacity:.4;right:-30px;bottom:-60px;transform:rotate(-25deg)}.product-copy h2{font-size:47px;margin:0 0 12px}.price{font-family:Georgia,serif;font-size:29px;color:var(--green)!important}.price small{font-family:Arial,sans-serif;font-size:11px}.product-copy>p{font-size:14px;color:#5d6961;max-width:520px}.benefits{display:flex;gap:10px;margin:35px 0}.benefits span{padding:7px 12px;border:1px solid #9ba69d;font-size:10px;letter-spacing:.08em}.purchase{display:flex;gap:15px}.qty{display:grid;grid-template-columns:40px 40px 40px;border:1px solid #9aa59c}.qty button,.qty output{border:0;background:transparent;display:grid;place-items:center}.product-note{font-size:10px!important}.location{background:#fff}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.location-grid>div:first-child .btn{margin-top:20px}.location-panel{border-left:1px solid var(--line);padding:20px 0 20px 70px}.location-panel>span{font-size:9px;letter-spacing:.2em}.location-panel h3{font-family:Georgia,"Noto Serif SC",serif;font-size:30px;font-weight:400}.location-panel p{color:#667168}.location-panel dl{display:grid;grid-template-columns:100px 1fr;font-size:12px;margin-top:30px;border-top:1px solid var(--line)}.location-panel dt,.location-panel dd{margin:0;padding:13px 0;border-bottom:1px solid var(--line)}.location-panel dt{font-weight:bold}.contact{background:var(--green);color:#fff;padding:80px 0}.contact-inner{display:flex;align-items:end;justify-content:space-between}.contact h2{font-size:45px;margin:0}footer{background:#111915;color:#dce2de;padding:70px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:60px}.footer-brand{display:flex;align-items:center;font-family:Georgia,serif;letter-spacing:.12em}.footer-brand img{width:70px;filter:invert(1);margin-right:15px}.footer-brand small{display:block;font-family:Arial;font-size:7px;margin-top:8px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px;font-size:11px}.footer-grid strong{color:#8ea095;margin-bottom:8px;font-size:9px;letter-spacing:.18em}.footer-grid button{border:0;background:none;color:inherit;padding:0;text-align:left}.footer-grid>p{font-size:9px;color:#8ea095}.booking-dialog{width:min(520px,calc(100% - 32px));border:0;border-radius:0;padding:45px;background:var(--paper);box-shadow:0 30px 90px #0007}.booking-dialog::backdrop{background:rgba(14,27,20,.72);backdrop-filter:blur(3px)}.dialog-close{position:absolute;top:15px;right:18px;border:0;background:none;font-size:26px}.dialog-head h2{font-family:Georgia,"Noto Serif SC",serif;font-size:34px;font-weight:400;margin:0}.dialog-head>p:last-child{font-size:12px;color:#68736c}.booking-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:25px}.booking-dialog label{font-size:10px;font-weight:bold;letter-spacing:.08em}.booking-dialog input,.booking-dialog select,.booking-dialog textarea{width:100%;border:0;border-bottom:1px solid #98a39b;background:transparent;padding:10px 2px;border-radius:0;outline:none;font-size:13px}.booking-dialog label:nth-of-type(4),.booking-dialog label:nth-of-type(5),.booking-dialog form>.btn,.form-status{grid-column:1/-1}.form-status{font-size:11px;margin:0;min-height:18px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);margin:6px}
@media(max-width:900px){:root{--shell:calc(100% - 36px)}.announcement{padding-inline:18px}.nav{grid-template-columns:1fr auto}.nav-group{display:none}.brand{align-items:flex-start}.menu-toggle{display:block;justify-self:end}.site-header.menu-open{height:auto}.site-header.menu-open .nav{padding-block:20px}.site-header.menu-open .nav-group{display:flex;grid-column:1/-1;flex-wrap:wrap;justify-content:flex-start}.site-header.menu-open .nav-right{padding-bottom:15px}.hero{height:700px}.hero:before{background:linear-gradient(0deg,rgba(237,240,233,.98) 0 50%,rgba(237,240,233,.25)),radial-gradient(circle at 70% 20%,#8ea18e,#d8dfd5 52%)}.hero-art{width:90%;height:55%;right:-15%;top:-3%}.hero-content{padding-top:280px}.hero-facts{margin-top:45px;gap:18px}.hero-facts div{grid-template-columns:1fr}.story-grid,.product-grid,.location-grid{grid-template-columns:1fr;gap:55px}.story-visual{height:440px}.story-copy h2,.section-intro h2,.location h2{font-size:38px}.section{padding:90px 0}.revival{padding-top:90px}.revival-head h2{font-size:50px}.program-tabs{overflow-x:auto;grid-template-columns:repeat(3,230px)}.program-tab{height:140px}.program-detail{grid-template-columns:1fr;padding:45px 30px}.booking-medallion{width:110px;height:110px}.section-intro{grid-template-columns:1fr;gap:20px}.service-list article{grid-template-columns:40px 1fr 42px}.service-list article p{display:none}.product-grid{gap:45px}.product-image{height:480px}.product-copy h2{font-size:38px}.location-panel{padding-left:30px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.contact-inner{align-items:flex-start;gap:35px;flex-direction:column}}
@media(max-width:540px){.announcement span{letter-spacing:.04em}.hero{min-height:650px}.hero h1{font-size:48px}.hero-copy{font-size:14px}.hero-facts div:last-child{display:none}.hero-actions{gap:20px}.seal{width:245px;height:245px}.story-visual{height:370px}.story-copy h2,.section-intro h2,.location h2,.contact h2{font-size:34px}.program-detail ul{flex-direction:column;gap:5px}.product-image{height:420px}.bottle{transform:scale(.8)}.purchase{flex-direction:column}.purchase .btn{width:100%}.contact{padding:65px 0}.booking-dialog{padding:38px 25px}.booking-dialog form{grid-template-columns:1fr}.booking-dialog label{grid-column:1}.footer-grid{gap:35px}.footer-grid>p{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.auth-error-dialog{width:min(340px,calc(100% - 32px));border:0;border-top:3px solid var(--leaf);background:#f7f5ef;padding:28px 28px 24px;box-shadow:0 20px 55px #0006}.auth-error-dialog::backdrop{background:rgba(14,27,20,.65);backdrop-filter:blur(3px)}.auth-error-dialog .eyebrow{margin:0 0 10px;color:var(--leaf);font-size:10px;letter-spacing:.2em}.auth-error-dialog .auth-error-message{margin:0 0 22px;color:var(--green);font-size:16px;line-height:1.5}.auth-error-dialog .btn{min-width:92px;min-height:42px;padding:0 18px}
.auth-error-dialog.is-success{border-top-color:var(--green)}.auth-error-dialog.is-success .auth-dialog-kicker{color:var(--green)}

/* Navigation, comparison treatment and care picker */
.nav{grid-template-columns:auto 1fr auto auto;gap:38px}.nav .brand{align-items:flex-start}.nav-left{justify-content:flex-start}.account-link{width:48px;height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-left:1px solid var(--line);padding-left:20px}.account-link small{font-size:9px;letter-spacing:.1em}.account-icon{width:21px;height:21px;border:1px solid var(--ink);border-radius:50%;display:block;position:relative}.account-icon:before{content:"";position:absolute;width:5px;height:5px;border:1px solid var(--ink);border-radius:50%;left:6px;top:3px}.account-icon i{position:absolute;width:11px;height:6px;border:1px solid var(--ink);border-radius:9px 9px 0 0;border-bottom:0;left:4px;bottom:3px}
.revival{padding-bottom:120px}.revival-compare{height:610px;margin-top:70px;position:relative;overflow:hidden;background:#fff;color:var(--ink)}.hair-state{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}.hair-state span{position:absolute;top:32px;font-family:Georgia,serif;font-size:11px;letter-spacing:.24em}.hair-state strong{position:absolute;bottom:37px;font-family:Georgia,"Noto Serif SC",serif;font-size:14px;font-weight:400;letter-spacing:.14em}.hair-white{background:#f3f1eb;color:#68716c;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.hair-black{background:#101713;color:#fff;clip-path:inset(0 0 0 var(--split))}.hair-white span,.hair-white strong{left:35px}.hair-black span,.hair-black strong{right:35px}.hair-portrait{width:520px;height:520px;display:grid;place-items:center}.hair-portrait img{width:100%;height:100%;object-fit:contain}.hair-white img{filter:grayscale(1) opacity(.22)}.hair-black img{filter:grayscale(1) brightness(.2) invert(1);opacity:.68}.compare-copy{position:absolute;z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none;color:#fff;mix-blend-mode:difference;width:440px}.compare-copy small{font-size:8px;letter-spacing:.26em}.compare-copy h3{font-family:Georgia,"Noto Serif SC",serif;font-size:52px;font-weight:400;margin:8px}.compare-copy p{font-size:12px}.compare-range{position:absolute;z-index:8;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize}.compare-handle{position:absolute;z-index:7;left:var(--split);top:0;bottom:0;width:1px;background:#c6a666;color:#fff;transform:translateX(-50%);pointer-events:none}.compare-handle:before{content:"";position:absolute;left:50%;top:50%;width:64px;height:64px;transform:translate(-50%,-50%);border:1px solid #c6a666;border-radius:50%;background:rgba(24,34,29,.84)}.compare-handle span{position:absolute;z-index:2;top:calc(50% - 14px);font-size:20px}.compare-handle span:first-child{right:10px}.compare-handle span:last-child{left:10px}.compare-handle i{position:absolute;z-index:2;left:50%;top:calc(50% - 8px);height:16px;border-left:1px solid #c6a666}.revival-compare .booking-medallion{position:absolute;z-index:9;right:32px;bottom:28px;width:105px;height:105px}.compare-foot{position:absolute;z-index:7;left:50%;bottom:38px;transform:translateX(-50%);display:flex;gap:32px;font-size:9px;letter-spacing:.1em;color:#fff;mix-blend-mode:difference;white-space:nowrap}
.care-picker{height:610px;margin-top:75px;display:grid;grid-template-columns:34% 66%;background:#fff;border:1px solid var(--line);overflow:hidden}.care-wheel-wrap{height:100%;position:relative;background:#e8ece5;overflow:hidden;border-right:1px solid var(--line)}.wheel-caption{position:absolute;z-index:4;top:22px;left:25px;font-size:8px;letter-spacing:.22em}.care-wheel{--care-index:1;position:absolute;z-index:2;left:0;right:0;top:50%;height:440px;transform:translateY(-50%);outline:none;overflow:hidden}.care-wheel:before,.care-wheel:after{content:"";display:block;height:176px}.care-option{height:88px;width:100%;border:0;background:transparent;display:grid;grid-template-columns:55px 1fr;align-items:center;text-align:left;padding:0 40px;opacity:.24;transform:scale(.83);transform-origin:left center;transition:opacity .3s,transform .3s}.care-option span{font-family:Georgia,serif;color:var(--gold)}.care-option strong{font-family:Georgia,"Noto Serif SC",serif;font-size:24px;font-weight:400}.care-option.active{opacity:1;transform:scale(1)}.care-option:nth-child(1){margin-top:calc(var(--care-index) * -88px)}.wheel-focus{position:absolute;z-index:1;left:20px;right:20px;top:50%;height:88px;transform:translateY(-50%);border-top:1px solid var(--green);border-bottom:1px solid var(--green)}.wheel-fade{position:absolute;z-index:3;left:0;right:0;height:170px;pointer-events:none}.wheel-fade-top{top:0;background:linear-gradient(#e8ece5 30%,transparent)}.wheel-fade-bottom{bottom:0;background:linear-gradient(transparent,#e8ece5 70%)}.care-display{display:grid;grid-template-columns:1.05fr .95fr;min-width:0}.care-image{position:relative;display:grid;place-items:center;overflow:hidden;transition:background .35s}.care-image:before{content:"";position:absolute;width:310px;height:310px;border:1px solid rgba(255,255,255,.35);transform:rotate(45deg)}.care-image img{width:80%;position:relative;z-index:1;mix-blend-mode:multiply;opacity:.65}.care-image span{position:absolute;left:24px;bottom:25px;font-size:8px;letter-spacing:.2em}.care-image i{position:absolute;right:18px;top:8px;font-family:Georgia,serif;font-size:82px;font-style:normal;opacity:.12}.care-tone-0{background:#c7d5ce}.care-tone-1{background:#aabdac}.care-tone-2{background:#d6ccb4}.care-tone-3{background:#46554d;color:#fff}.care-tone-4{background:#bcc5c1}.care-copy{padding:65px 45px;align-self:center}.care-copy h3{font-family:Georgia,"Noto Serif SC",serif;font-size:38px;font-weight:400;margin:8px 0 15px}.care-copy>p{font-size:13px;color:#667169}.care-copy ul{padding:0;list-style:none;margin:28px 0;display:grid;gap:8px;font-size:11px}.care-copy li:before{content:"—";color:var(--gold);margin-right:10px}
.account-page{min-height:100vh;background:#edf0e9}.account-header{height:105px;display:flex;justify-content:space-between;align-items:center}.account-header .brand{align-items:flex-start}.back-home{font-size:11px;letter-spacing:.1em}.account-main{min-height:calc(100vh - 105px);display:grid;grid-template-columns:1fr 1fr}.account-brand{background:var(--green);color:#fff;padding:8vh 9vw;position:relative;overflow:hidden}.account-brand:before{content:"";position:absolute;width:600px;height:600px;border:1px solid #ffffff24;transform:rotate(45deg);left:-230px;bottom:-310px}.account-brand img{width:180px;filter:invert(1);opacity:.65}.account-brand p{font-size:9px;letter-spacing:.22em;margin-top:50px}.account-brand h1{font-family:Georgia,"Noto Serif SC",serif;font-size:48px;font-weight:400;line-height:1.3;margin-top:20px}.auth-panel{background:#fff;padding:8vh 10vw;display:flex;flex-direction:column;justify-content:center}.auth-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:50px}.auth-tabs button{border:0;background:none;padding:0 0 12px;font-size:13px;color:#8b938e}.auth-tabs button.active{color:var(--ink);border-bottom:2px solid var(--green)}.auth-copy h2{font-family:Georgia,"Noto Serif SC",serif;font-size:36px;font-weight:400;margin:0}.auth-copy>p:last-child{font-size:12px;color:#6b756e}.auth-form{display:grid;gap:23px;margin-top:30px}.auth-form>label{font-size:10px;font-weight:bold;letter-spacing:.08em}.auth-form input[type=text],.auth-form input[type=password]{width:100%;border:0;border-bottom:1px solid #9ca69f;background:transparent;padding:12px 2px;outline:none}.auth-options{display:flex;justify-content:space-between;font-size:10px}.auth-options button{border:0;background:none}.register-only{display:none}.register-mode .register-only{display:block}.auth-note{font-size:9px;color:#89918c;margin-top:20px}
@media(max-width:900px){.nav{grid-template-columns:auto 1fr auto}.nav .brand{grid-column:1}.nav .account-link{grid-column:2;justify-self:end}.nav .menu-toggle{grid-column:3}.site-header.menu-open .nav-group{grid-column:1/-1}.revival-compare{height:540px}.hair-portrait{width:420px;height:420px}.compare-copy{width:300px}.compare-copy h3{font-size:42px}.compare-foot{display:none}.care-picker{height:auto;grid-template-columns:1fr}.care-wheel-wrap{height:350px;border-right:0;border-bottom:1px solid var(--line)}.care-display{min-height:500px}.account-main{grid-template-columns:1fr}.account-brand{display:none}.auth-panel{min-height:calc(100vh - 105px);padding:8vh 12vw}}
@media(max-width:540px){.account-link{padding-left:12px;width:40px}.account-link small{display:none}.revival{padding-bottom:70px}.revival-compare{height:500px;margin-top:45px;width:100%}.hair-portrait{width:330px;height:330px}.compare-copy{top:57%;width:260px}.compare-copy h3{font-size:36px}.compare-copy p{display:none}.hair-state strong{bottom:25px}.hair-state span{top:20px}.revival-compare .booking-medallion{width:78px;height:78px;right:16px;bottom:55px}.revival-compare .booking-medallion span{font-size:18px}.care-picker{width:100%;margin-top:45px;border-inline:0}.care-display{grid-template-columns:1fr;min-height:690px}.care-image{height:330px}.care-copy{padding:42px 25px}.account-header{height:85px}.account-main{min-height:calc(100vh - 85px)}.auth-panel{padding:55px 25px}.auth-tabs{margin-bottom:35px}}

.account-session{margin-top:30px}.session-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px;font-size:11px;font-weight:bold;letter-spacing:.1em}.session-title button{border:0;background:none;font-size:10px;color:var(--leaf)}#sessionUser{font-family:Georgia,"Noto Serif SC",serif;font-size:26px}.admin-users{margin-top:35px}.admin-users h3{font-family:Georgia,"Noto Serif SC",serif;font-size:23px;font-weight:400}.users-row{display:grid;grid-template-columns:40px 1fr 60px 145px;gap:8px;padding:9px 0;border-bottom:1px solid var(--line);font-size:10px}.users-head{color:var(--leaf);font-weight:bold}
.account-page{background:#f5f3ed}.account-page .account-header{max-width:1280px}.account-page .account-main{min-height:calc(100vh - 105px);grid-template-columns:minmax(390px,.9fr) 1.1fr}.account-page .account-brand{padding:12vh clamp(40px,8vw,130px);background:#183d31}.account-page .account-brand img{width:145px;opacity:.72}.account-page .account-brand p{font-size:9px;letter-spacing:.24em;margin-top:68px;color:#b9c9be}.account-page .account-brand h1{font-size:clamp(38px,4vw,62px);line-height:1.25;letter-spacing:0}.account-page .auth-panel{background:transparent;padding:10vh clamp(35px,9vw,150px);max-width:730px;justify-content:center}.account-page .auth-tabs{gap:28px;border-bottom:0;margin:0 0 58px}.account-page .auth-tabs button{padding:0 0 10px;font-size:12px;letter-spacing:.08em}.account-page .auth-copy h2{font-size:44px;letter-spacing:0;margin-bottom:12px}.account-page .auth-copy>p:last-child{font-size:13px;color:#7a847d;margin:0}.account-page .auth-form{gap:0;margin-top:43px}.account-page .auth-form>label{display:block;margin-bottom:27px;color:#6a766e;font-size:10px;letter-spacing:.15em}.account-page .auth-form input[type=text],.account-page .auth-form input[type=email],.account-page .auth-form input[type=password]{border:0;border-bottom:1px solid #aeb7b0;padding:12px 0 13px;background:transparent;font-size:14px;color:var(--ink)}.account-page .auth-form input:focus{border-bottom-color:var(--green);box-shadow:none}.account-page .auth-options{border-top:1px solid #d6dbd5;padding-top:15px;margin:2px 0 30px;color:#87918a}.account-page .auth-options label{font-size:10px}.account-page .auth-options button{color:#87918a;font-size:10px}.account-page .auth-form>.btn-primary{width:auto;min-height:auto;padding:0 0 8px;border-bottom:1px solid var(--green);background:transparent;color:var(--green);font-size:12px;letter-spacing:.15em;text-align:left;justify-self:start}.account-page .auth-form>.btn-primary:after{content:"  ↗";font-size:15px}.account-page .email-code-row,.account-page .captcha-row{margin-bottom:27px}.account-page .email-code-row input,.account-page .captcha-row input{border-bottom:1px solid #aeb7b0}.account-page .email-code-row button,.account-page .captcha-row button{height:auto;border:0;border-bottom:1px solid var(--green);background:transparent;padding:0 0 7px;color:var(--green);font-size:10px;letter-spacing:.08em}.account-page .captcha-row img{width:150px;height:42px;border:0;mix-blend-mode:multiply}.account-page .captcha-row button{height:42px;border-bottom:0;font-size:18px}.account-page .auth-note{color:#9aa29c;margin-top:38px}.account-page .form-status{color:var(--leaf);margin:14px 0}.account-page .account-session{border-top:1px solid #cbd3cc;padding-top:20px}.account-page .session-title{border:0;padding:0}.account-page .session-title button{border-bottom:1px solid var(--leaf);padding-bottom:5px}.account-page .admin-users{border-top:1px solid #d6dbd5}.account-page .users-row{border-color:#d6dbd5}
.email-code-row,.captcha-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.email-code-row input,.captcha-row input{min-width:0}.email-code-row button,.captcha-row button{height:35px;border:1px solid var(--line);background:transparent;color:var(--leaf);font-size:10px;padding:0 10px;white-space:nowrap}.captcha-row{grid-template-columns:1fr 150px 35px}.captcha-row img{width:150px;height:48px;object-fit:cover;border:1px solid var(--line);align-self:end}.captcha-row button{height:48px;font-size:20px;padding:0}.register-only{display:none}.register-mode .register-only{display:block}.register-mode .email-code-row{display:grid}.register-mode .login-only{display:none}
.account-page .auth-form .register-only{display:none}.account-page.register-mode .auth-form .register-only{display:block}.account-page.register-mode .auth-form .email-code-row{display:grid}

/* Admin console */
.admin-pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:16px 0;color:#6e7a72;font-size:10px}.admin-pager>span{margin-right:auto}.admin-pager label{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#7d8880}.admin-pager select,.admin-pager button{height:30px;border:1px solid #d4ddd5;background:#fff;color:#315342;font:inherit;padding:0 9px}.admin-pager select{min-width:52px}.admin-pager button{min-width:50px}.admin-pager button:hover:not(:disabled){border-color:#7c9684;background:#f4f7f3}.admin-pager button:disabled{opacity:.38;cursor:not-allowed}.users-panel-foot>.admin-pager{margin-left:auto;padding:0}.users-panel-foot>.admin-pager>span{display:none}@media(max-width:800px){.admin-pager{justify-content:flex-start}.admin-pager>span{width:100%;margin-right:0}.users-panel-foot>.admin-pager{margin-left:0;width:100%}}
.security-icon{border-radius:50%;position:relative}.security-icon:before{content:"";position:absolute;left:4px;top:4px;width:7px;height:7px;border:1px solid currentColor;border-radius:50%}.security-icon:after{content:"";position:absolute;left:7px;top:1px;height:13px;border-left:1px solid currentColor}
.admin-page{min-height:100vh;background:#f1f3ee;color:var(--ink);display:flex}.admin-sidebar{width:250px;min-height:100vh;background:#122f26;color:#e8eee9;display:flex;flex-direction:column;padding:34px 25px 25px;flex:0 0 250px}.admin-logo{display:flex;align-items:center;gap:12px;font-family:Georgia,serif;letter-spacing:.12em;font-size:12px}.admin-logo img{width:48px;filter:invert(1);opacity:.9}.admin-logo small{display:block;font-family:Arial,sans-serif;letter-spacing:.18em;font-size:7px;color:#94aa9d;margin-top:7px}.admin-sidebar nav{display:grid;gap:6px;margin-top:85px}.admin-sidebar nav a{display:flex;align-items:center;gap:13px;padding:14px 12px;color:#aebfb5;font-size:11px;letter-spacing:.08em}.admin-sidebar nav a.active,.admin-sidebar nav a:hover{color:#fff;background:#234a3d}.side-icon{width:17px;height:17px;display:inline-block;border:1px solid currentColor;opacity:.8}.users-icon{border-radius:50%;position:relative}.users-icon:after{content:"";position:absolute;width:7px;height:4px;border:1px solid currentColor;border-bottom:0;border-radius:6px 6px 0 0;left:4px;bottom:1px}.site-icon{border-radius:3px;transform:rotate(45deg) scale(.75)}.admin-profile{margin-top:auto;border-top:1px solid #ffffff1c;padding-top:20px;display:grid;grid-template-columns:33px 1fr 22px;align-items:center;gap:9px}.profile-mark{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#d4aa68;color:#183d31;font-family:Georgia,serif}.admin-profile strong,.admin-profile small{display:block}.admin-profile strong{font-size:11px}.admin-profile small{font-size:9px;color:#9db0a5;margin-top:2px}.admin-profile button{border:0;background:none;color:#aebfb5;font-size:16px}.admin-main{min-width:0;flex:1}.admin-topbar{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(25px,5vw,75px);font-size:12px}.admin-topbar>div{display:flex;align-items:center;gap:18px}.admin-topbar>div>span{font-weight:bold}.admin-topbar small{color:#8a958e;font-size:10px}.admin-topbar>a{font-size:10px;color:var(--leaf);border-bottom:1px solid var(--leaf);padding-bottom:4px}.admin-menu{display:none}.admin-content{padding:70px clamp(25px,5vw,75px);max-width:1420px}.admin-heading{display:flex;justify-content:space-between;align-items:end}.admin-heading p{color:var(--leaf);font-size:10px;font-weight:bold;letter-spacing:.24em;margin:0 0 12px}.admin-heading h1{font-family:Georgia,"Noto Serif SC",serif;font-size:44px;font-weight:400;margin:0}.admin-heading span{display:block;color:#79847c;font-size:12px;margin-top:8px}.refresh-users{height:42px;padding:0 17px;border:1px solid var(--line);background:transparent;font-size:11px;color:var(--leaf)}.refresh-users span{font-size:18px;vertical-align:-1px;margin-right:4px}.refresh-users:disabled{opacity:.45}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:48px 0 22px}.admin-stats article{background:#fff;border:1px solid #e1e5df;padding:22px 25px}.admin-stats span,.admin-stats small{display:block;font-size:10px;color:#7c877f}.admin-stats strong{display:block;font-family:Georgia,serif;font-size:42px;font-weight:400;margin:8px 0 2px}.users-panel{background:#fff;border:1px solid #e1e5df}.users-toolbar{padding:18px 22px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.admin-search{display:flex;align-items:center;gap:9px;border-bottom:1px solid #a3ada6;width:230px}.admin-search span{width:12px;height:12px;border:1px solid var(--leaf);border-radius:50%;position:relative}.admin-search span:after{content:"";position:absolute;width:5px;border-top:1px solid var(--leaf);right:-4px;bottom:-2px;transform:rotate(45deg)}.admin-search input{border:0;outline:0;padding:8px 0;background:transparent;width:100%;font-size:11px}.role-filter{display:flex;gap:5px}.role-filter button{border:0;background:transparent;padding:6px 12px;color:#818c85;font-size:10px}.role-filter button.active{background:#e6eee8;color:var(--green);font-weight:bold}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}.admin-table th{height:46px;background:#f7f8f5;color:#7f8b83;font-size:9px;font-weight:bold;letter-spacing:.1em}.admin-table th,.admin-table td{padding:0 22px}.admin-table td{height:68px;border-top:1px solid #edf0eb;color:#667169}.user-cell{display:flex;align-items:center;gap:10px;color:var(--ink)}.user-cell>span{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#dbe7dc;color:var(--green);font-family:Georgia,serif}.user-cell strong{font-size:11px}.role-badge{font-style:normal;font-size:9px;padding:5px 9px;background:#e9f0eb;color:var(--green)}.role-badge.admin{background:#f5ecdc;color:#87672d}.table-state{text-align:center!important;color:#89938c!important;height:120px!important}.table-state.error{color:#9b574d!important}.users-panel-foot{display:flex;justify-content:space-between;padding:16px 22px;color:#7d8880;font-size:10px;border-top:1px solid var(--line)}.users-panel-foot small{color:#a0aaa3}
@media(max-width:800px){.admin-sidebar{position:fixed;z-index:30;left:-250px;transition:left .25s}.admin-menu-open .admin-sidebar{left:0}.admin-topbar{padding:0 25px}.admin-menu{display:block;width:22px;border:0;background:none;padding:0}.admin-menu span{display:block;border-top:1px solid var(--ink);margin:6px 0}.admin-content{padding:48px 20px}.admin-heading{align-items:start;gap:20px;flex-direction:column}.admin-heading h1{font-size:38px}.admin-stats{gap:8px}.admin-stats article{padding:15px}.admin-stats strong{font-size:30px}.users-toolbar{align-items:start;flex-direction:column}.admin-search{width:100%}.role-filter{width:100%;overflow:auto}.role-filter button{white-space:nowrap}.admin-table th,.admin-table td{padding:0 14px}.admin-table th:nth-child(4),.admin-table td:nth-child(4){display:none}.users-panel-foot{padding:14px;gap:12px;flex-direction:column}}

/* Cylindrical wheel picker */
.care-wheel-wrap:before,.care-wheel-wrap:after{content:"";position:absolute;z-index:5;top:76px;bottom:76px;width:12px;opacity:.22;background:repeating-linear-gradient(to bottom,var(--green) 0 1px,transparent 1px 11px);pointer-events:none}.care-wheel-wrap:before{left:16px}.care-wheel-wrap:after{right:16px}.care-wheel{height:430px;perspective:620px;perspective-origin:50% 50%;transform-style:preserve-3d;touch-action:none;cursor:grab}.care-wheel.dragging{cursor:grabbing}.care-wheel:before,.care-wheel:after{display:none}.care-option,.care-option:nth-child(1){position:absolute;left:0;top:50%;height:88px;margin:0;width:100%;transform-origin:50% 50%;backface-visibility:hidden;transition:transform .46s cubic-bezier(.2,.8,.2,1),opacity .35s ease,color .3s;will-change:transform,opacity;padding-inline:46px}.care-option.is-moving,.care-wheel.dragging .care-option{transition:none}.care-option.active{transform:none}.care-option strong{transition:font-size .35s}.care-option.active strong{font-size:27px}.wheel-focus{z-index:4;background:linear-gradient(90deg,transparent,rgba(255,255,255,.32),transparent);box-shadow:0 9px 22px rgba(31,55,43,.06)}.wheel-focus:before,.wheel-focus:after{content:"";position:absolute;left:50%;width:6px;height:6px;border-radius:50%;background:var(--gold);transform:translateX(-50%)}.wheel-focus:before{top:-4px}.wheel-focus:after{bottom:-4px}.wheel-fade{height:145px}.wheel-fade-top{background:linear-gradient(#e8ece5 20%,rgba(232,236,229,.92) 45%,transparent)}.wheel-fade-bottom{background:linear-gradient(transparent,rgba(232,236,229,.92) 55%,#e8ece5 80%)}
.care-wheel-wrap{overscroll-behavior:contain;touch-action:none}

@media(max-width:800px){.account-page .account-main{display:block;min-height:calc(100vh - 85px)}.account-page .account-brand{display:block;min-height:260px;padding:45px 25px}.account-page .account-brand img{width:90px}.account-page .account-brand p{margin-top:20px}.account-page .account-brand h1{font-size:31px;margin:15px 0 0}.account-page .auth-panel{padding:48px 25px 70px;max-width:none}.account-page .auth-tabs{margin-bottom:40px}.account-page .auth-copy h2{font-size:36px}.account-page .auth-form{margin-top:35px}.account-page .captcha-row{grid-template-columns:1fr 130px 30px}.account-page .captcha-row img{width:130px}.account-page .email-code-row{grid-template-columns:1fr auto}}
.account-page .captcha-row input{border:0;border-bottom:1px solid #aeb7b0;border-radius:0;outline:0;background:transparent;padding:12px 0 13px;font-size:14px}
.user-cell small{display:block;color:#87938b;font-size:9px;margin-top:3px}.order-summary{font-size:11px;font-weight:400;color:var(--green)}
.account-page .form-status{display:block;min-height:24px;margin:20px 0 0;padding:11px 14px;border-left:2px solid var(--leaf);background:#e7eee8;color:var(--green);font-size:12px;font-weight:bold}.account-page .form-status[data-type=error]{border-color:#a85a4c;background:#f4e8e4;color:#8d4035}.account-page .form-status[hidden]{display:none}.captcha-dialog{width:min(390px,calc(100% - 32px));border:0;background:#f7f5ef;padding:34px;box-shadow:0 30px 90px #0006}.captcha-dialog::backdrop{background:#122f2690;backdrop-filter:blur(4px)}.captcha-dialog h2{font-family:Georgia,"Noto Serif SC",serif;font-size:30px;font-weight:400;margin:0 0 8px}.captcha-dialog>p:not(.eyebrow){font-size:12px;color:#758078}.captcha-close{position:absolute;right:15px;top:12px;border:0;background:none;font-size:24px}.popup-captcha{display:grid;grid-template-columns:1fr 150px 35px;gap:8px;align-items:center;margin:25px 0}.popup-captcha input{border:0;border-bottom:1px solid #aeb7b0;background:transparent;padding:12px 0;outline:0}.popup-captcha img{width:150px;height:42px}.popup-captcha button{border:0;background:transparent;font-size:19px}.captcha-dialog .btn{width:100%}.popup-status{min-height:20px;color:#9b4f43;font-size:11px}.member-page{background:#f5f3ed;min-height:100vh}.member-header{height:92px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.member-header nav{display:flex;gap:25px;align-items:center;font-size:11px}.member-header nav button{border:0;border-bottom:1px solid var(--leaf);background:none;padding:0 0 4px;font-size:11px;color:var(--leaf)}.member-main{padding:75px 0}.member-welcome h1{font-family:Georgia,"Noto Serif SC",serif;font-size:58px;font-weight:400;margin:0}.member-welcome h1 span{color:var(--leaf)}.member-welcome>p:last-child{color:#758078;font-size:13px}.member-profile{margin-top:60px;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.member-profile>div>span{font-size:10px;letter-spacing:.15em;color:var(--leaf);font-weight:bold}.member-profile dl{display:grid;grid-template-columns:110px 1fr;max-width:500px;font-size:12px;margin-top:20px}.member-profile dt,.member-profile dd{margin:0;padding:9px 0;border-bottom:1px solid #dfe4df}.member-profile dt{color:#829087}.member-profile dd{font-weight:bold}.member-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8a978e;letter-spacing:.2em;font-size:9px}.member-mark img{width:130px;opacity:.5}.member-orders{margin-top:70px}.member-section-head{display:flex;align-items:end;justify-content:space-between}.member-section-head h2{font-family:Georgia,"Noto Serif SC",serif;font-size:42px;font-weight:400;margin:0}.member-section-head>span{font-size:11px;color:#87928b}.member-order-list{margin-top:25px;border-top:1px solid var(--line)}.member-order-list article{display:grid;grid-template-columns:1fr 140px 90px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.member-order-list article h3{font-family:Georgia,"Noto Serif SC",serif;font-size:20px;font-weight:400;margin:3px 0}.member-order-list small,.member-order-list span{font-size:10px;color:#849087}.member-order-list strong{font-family:Georgia,serif;font-size:22px;font-weight:400}.member-order-list em{font-style:normal;color:var(--leaf);font-size:10px}.empty-orders{padding:35px 0;color:#8a958e;font-size:12px}
@media(max-width:600px){.captcha-dialog{padding:28px 22px}.popup-captcha{grid-template-columns:1fr 115px 28px}.popup-captcha img{width:115px}.member-main{padding:50px 18px}.member-welcome h1{font-size:42px}.member-profile{grid-template-columns:1fr;gap:28px}.member-mark{align-items:flex-start}.member-order-list article{grid-template-columns:1fr 80px}.member-order-list article em{grid-column:1/-1;margin-top:10px}}
.dashboard-page{display:flex}.member-sidebar{width:250px;min-height:100vh;position:fixed;left:0;top:0;bottom:0;background:#173b30;color:#e8eee9;padding:34px 25px 25px;display:flex;flex-direction:column;z-index:25}.member-sidebar nav{display:grid;gap:6px;margin-top:85px}.member-sidebar nav a{display:flex;align-items:center;gap:13px;padding:14px 12px;color:#afc0b6;font-size:11px;letter-spacing:.08em}.member-sidebar nav a:hover,.member-sidebar nav a.active{background:#285344;color:#fff}.order-icon{position:relative;border-radius:2px}.order-icon:before,.order-icon:after{content:"";position:absolute;left:3px;right:3px;border-top:1px solid currentColor}.order-icon:before{top:5px}.order-icon:after{top:10px}.member-side-profile{margin-top:auto;border-top:1px solid #ffffff1c;padding-top:20px;display:grid;grid-template-columns:33px 1fr 22px;align-items:center;gap:9px}.member-side-profile>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#d4aa68;color:#183d31;font-family:Georgia,serif}.member-side-profile strong,.member-side-profile small{display:block}.member-side-profile strong{font-size:11px}.member-side-profile small{font-size:9px;color:#9db0a5}.member-side-profile button{border:0;background:none;color:#afc0b6;font-size:16px}.member-dashboard{margin-left:250px;width:calc(100% - 250px)}.member-content{width:min(1080px,calc(100% - 80px));margin:auto;padding:70px 0 100px}.member-menu{display:none}.admin-shopping{margin-top:80px;padding-top:70px;border-top:1px solid var(--line)}.admin-heading.compact h1{font-size:36px}.clickable-user{cursor:pointer;transition:background .2s}.clickable-user:hover{background:#f1f5f1}.admin-sidebar .order-icon{border-radius:2px}
@media(max-width:800px){.member-sidebar{left:-250px;transition:left .25s}.member-menu-open .member-sidebar{left:0}.member-dashboard{margin-left:0;width:100%}.member-menu{display:block;width:22px;border:0;background:none;padding:0}.member-menu span{display:block;border-top:1px solid var(--ink);margin:6px 0}.member-content{width:calc(100% - 36px);padding-top:45px}.member-welcome h1{font-size:42px}.admin-shopping{margin-top:55px;padding-top:45px}.admin-shopping .admin-table th:nth-child(6),.admin-shopping .admin-table td:nth-child(6){display:none}}
.member-dashboard .admin-topbar{gap:18px}.member-dashboard .admin-topbar>div:nth-of-type(1){min-width:0}.member-dashboard .admin-topbar>div:nth-of-type(1) span{white-space:nowrap}.member-dashboard .admin-topbar>div:nth-of-type(1) small{white-space:nowrap}.member-profile{grid-template-columns:minmax(0,1.55fr) minmax(190px,.7fr);gap:34px;align-items:start}.member-profile>div:first-child{border-radius:3px}.member-profile>div:first-child>span{display:block;margin-bottom:22px}.member-profile form label{font-weight:500}.member-mark{min-height:250px;background:#e9eee8;border:1px solid #d7dfd8}.member-orders{margin-top:64px}.member-orders .member-section-head{padding-bottom:18px;border-bottom:1px solid var(--line)}
@media(max-width:600px){.member-profile{grid-template-columns:1fr}.member-mark{min-height:150px}.member-dashboard .admin-topbar{gap:10px;padding:0 16px}.member-language-switch{margin-right:0}.member-dashboard .admin-topbar>div:nth-of-type(1) small{display:none}}
.admin-users-page .admin-shopping{display:none}.admin-profile button{width:auto;border:0;border-bottom:1px solid #9db0a5;background:transparent;color:#dce7e0;padding:4px 0;font-size:10px;white-space:nowrap;letter-spacing:.04em}.admin-profile{grid-template-columns:33px 1fr auto}
.product-icon{position:relative}.product-icon:before{content:"";position:absolute;inset:3px;border:1px solid currentColor}.product-admin-list{margin-top:45px;border-top:1px solid var(--line)}.product-admin-list article{display:grid;grid-template-columns:95px minmax(220px,1fr) 150px 180px;gap:24px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.admin-product-image{width:90px;height:90px;background:#dce4da;display:grid;place-items:center;overflow:hidden;font-family:Georgia,serif;text-align:center;font-size:11px;letter-spacing:.1em}.admin-product-image img{width:100%;height:100%;object-fit:cover}.product-admin-list h3{font-family:Georgia,"Noto Serif SC",serif;font-size:22px;font-weight:400;margin:3px 0}.product-admin-list p{font-size:11px;color:#7c877f;margin:0}.product-admin-list small{color:#909b94}.admin-product-meta{display:grid;gap:5px}.admin-product-meta strong{font-family:Georgia,serif;font-size:22px}.admin-product-meta span{font-size:10px;color:#7d8881}.product-status{font-style:normal;font-size:9px;color:#8b5549}.product-status.active{color:var(--leaf)}.admin-product-actions{display:flex;gap:7px}.admin-product-actions button{border:0;border-bottom:1px solid var(--leaf);background:none;padding:5px 0;color:var(--leaf);font-size:10px}.admin-product-actions .danger{color:#9b4f43;border-color:#9b4f43}.product-dialog{width:min(620px,calc(100% - 30px));border:0;background:#f7f5ef;padding:40px}.product-dialog::backdrop{background:#122f2688}.product-dialog h2{font-family:Georgia,"Noto Serif SC",serif;font-size:32px;font-weight:400}.product-dialog form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.product-dialog label{font-size:10px;font-weight:bold;color:#69756d}.product-dialog input,.product-dialog select,.product-dialog textarea{display:block;width:100%;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:10px 0;outline:0}.product-dialog .full{grid-column:1/-1}.product-form-status{color:#9b4f43;font-size:11px}.store-heading{padding-top:100px}.store-heading h2{font-family:Georgia,"Noto Serif SC",serif;font-size:45px;font-weight:400}.store-products{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;padding:40px 0 110px}.store-products article{display:grid;grid-template-columns:44% 56%;min-height:420px;background:#fff}.store-product-image{position:relative;background:#cfd8cc;display:grid;place-items:center;overflow:hidden}.store-product-image>img{width:100%;height:100%;object-fit:cover}.store-product-image>.bottle{transform:scale(.68)}.store-product-image>span{position:absolute;left:18px;top:16px;font-size:8px;letter-spacing:.18em}.store-product-copy{padding:42px 35px;display:flex;flex-direction:column}.store-product-copy>small{font-size:8px;letter-spacing:.17em;color:var(--leaf)}.store-product-copy h3{font-family:Georgia,"Noto Serif SC",serif;font-size:25px;font-weight:400}.store-product-copy p{font-size:12px;color:#6d7870}.store-product-copy>div{margin-top:auto;display:flex;align-items:center;justify-content:space-between}.store-product-copy strong{font-family:Georgia,serif;font-size:25px}.store-product-copy .btn{padding:0 16px}
@media(max-width:850px){.product-admin-list article{grid-template-columns:75px 1fr}.admin-product-image{width:70px;height:70px}.admin-product-meta,.admin-product-actions{grid-column:2}.store-products{grid-template-columns:1fr}.store-products article{min-height:390px}}@media(max-width:520px){.product-dialog{padding:30px 22px}.product-dialog form{grid-template-columns:1fr}.product-dialog label{grid-column:1/-1}.store-products article{grid-template-columns:1fr}.store-product-image{height:300px}.store-product-copy{min-height:300px;padding:32px 24px}}
.profile-icon{border-radius:50%;position:relative}.profile-icon:before{content:"";position:absolute;width:5px;height:5px;border:1px solid currentColor;border-radius:50%;left:5px;top:3px}.profile-icon:after{content:"";position:absolute;width:9px;height:5px;border:1px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0;left:3px;bottom:2px}.admin-profile-editor{margin-top:50px;display:grid;grid-template-columns:240px minmax(320px,560px);gap:70px;padding-top:40px;border-top:1px solid var(--line)}.profile-editor-mark{min-height:330px;background:#173b30;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#bccdc2;font-size:8px;letter-spacing:.2em}.profile-editor-mark img{width:130px;filter:invert(1);opacity:.65;margin-bottom:25px}.admin-profile-editor form{display:grid;gap:22px}.admin-profile-editor label{font-size:10px;font-weight:bold;letter-spacing:.1em;color:#6d7871}.admin-profile-editor input{display:block;width:100%;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:12px 0;outline:0;font-size:14px}.admin-profile-editor input[readonly]{color:#9aa39d}.admin-profile-editor .btn{justify-self:start}.profile-save-status{min-height:20px;color:var(--leaf);font-size:12px;font-weight:bold}.profile-save-status[data-type=error]{color:#9b4f43}@media(max-width:700px){.admin-profile-editor{grid-template-columns:1fr;gap:35px}.profile-editor-mark{min-height:220px}}
.popup-status:not(:empty){margin-top:15px;padding:10px 12px;border-left:2px solid var(--leaf);background:#e6ede7;color:var(--green);font-size:12px;font-weight:bold}
.account-page .auth-form>.btn-primary{min-width:132px;padding:13px 18px;border:0;background:var(--green);color:#fff;text-align:center;letter-spacing:.12em;transition:background .2s,transform .2s}.account-page .auth-form>.btn-primary:after{content:"  ↗"}.account-page .auth-form>.btn-primary:hover{background:#285744;transform:translateY(-1px)}.account-page .email-code-row input,.account-page .captcha-row input{border:0!important;border-bottom:1px solid #aeb7b0!important;border-radius:0!important;outline:0;background:transparent;padding:12px 0 13px;font-size:14px;box-shadow:none!important}.account-page .email-code-row button{align-self:end;padding-bottom:9px}
.account-page .auth-form>label.register-only{display:none;width:100%;margin-bottom:27px}.account-page.register-mode .auth-form>label.register-only{display:block}.account-page .auth-form>label.register-only input[type=email]{display:block;width:100%;height:43px;border:0!important;border-bottom:1px solid #aeb7b0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0;padding:12px 0 13px;-webkit-appearance:none;appearance:none}.account-page .auth-form>div.email-code-row{width:100%;display:none}.account-page.register-mode .auth-form>div.email-code-row{display:grid}
.account-page .register-required-note{display:none;margin:0 0 22px;color:#68756d;font-size:11px}.account-page.register-mode .register-required-note{display:block}.account-page .register-required-note span,.account-page .required-mark{color:#a14f45;font-weight:700}.account-page .email-code-row label{display:block;color:#6a766e;font-size:10px;font-weight:bold;letter-spacing:.15em}.account-page .email-code-row label input{display:block;width:100%;margin-top:7px}
.cart-trigger{position:fixed;z-index:18;right:24px;bottom:24px;border:0;background:var(--green);color:#fff;padding:13px 18px;font-size:11px;box-shadow:0 10px 30px #173b3040}.cart-trigger span{display:inline-grid;place-items:center;width:20px;height:20px;margin-left:8px;border-radius:50%;background:#d4aa68;color:var(--ink)}.cart-panel{width:min(520px,calc(100% - 30px));border:0;background:#f7f5ef;padding:38px;box-shadow:0 30px 80px #0006}.cart-panel::backdrop{background:#122f2680}.cart-panel h2{font-family:Georgia,"Noto Serif SC",serif;font-size:34px;font-weight:400}.cart-items{border-top:1px solid var(--line)}.cart-items>div{display:grid;grid-template-columns:1fr 28px 28px 28px 80px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:11px}.cart-items button{border:0;background:none}.cart-items em{text-align:right;font-style:normal}.cart-total{text-align:right;padding:20px 0;font-family:Georgia,serif;font-size:22px}.cart-status{color:var(--leaf);font-size:11px}.order-actions{display:flex;gap:8px}.order-actions button{border:0;border-bottom:1px solid var(--leaf);background:none;color:var(--leaf);font-size:9px;padding:4px 0}.admin-table td small{display:block;font-size:8px;color:#8a958e;margin-top:3px}
.checkout-payment{display:grid;grid-template-columns:1fr 120px;gap:16px;margin:0 0 22px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.checkout-payment label{font-size:10px;font-weight:bold;color:#69756d}.checkout-payment input{display:block;width:100%;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:9px 0;outline:0}.checkout-payment small{grid-column:1/-1;color:#7d8881;font-size:9px}.payment-dialog{width:min(480px,calc(100% - 30px));border:0;background:#f7f5ef;padding:38px;box-shadow:0 30px 80px #0006}.payment-dialog::backdrop{background:#122f2680}.payment-dialog h2{font-family:Georgia,"Noto Serif SC",serif;font-size:32px;font-weight:400}.payment-dialog dl{display:grid;grid-template-columns:110px 1fr;margin:25px 0;border-top:1px solid var(--line)}.payment-dialog dt,.payment-dialog dd{margin:0;padding:13px 0;border-bottom:1px solid var(--line)}.payment-dialog dt{font-size:10px;color:#77827b}.payment-dialog dd{font-family:monospace;font-size:16px;font-weight:bold;overflow-wrap:anywhere}.payment-warning{font-size:10px;color:#8b5549}.payment-status{min-height:20px;color:var(--leaf);font-size:11px}.payment-dialog>.dialog-close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:24px}@media(max-width:520px){.checkout-payment{grid-template-columns:1fr}.checkout-payment small{grid-column:auto}.payment-dialog{padding:30px 22px}}
.account-page .form-status:empty,.account-page .form-status[hidden]{display:none!important}.account-page .form-status:not(:empty){min-height:0;margin:18px 0 2px;padding:3px 0 3px 14px;border:0;background:transparent;font-size:11px;font-weight:600;position:relative}.account-page .form-status:not(:empty):before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:50%;background:var(--leaf)}.account-page .form-status[data-type=error]{background:transparent;color:#8d4035}.account-page .form-status[data-type=error]:before{background:#a85a4c}.member-side-profile{grid-template-columns:33px 1fr auto}.member-side-profile button{width:auto;border:0;border-bottom:1px solid #9db0a5;background:transparent;color:#dce7e0;padding:4px 0;font-size:10px;white-space:nowrap;letter-spacing:.04em}
.password-input{display:block;position:relative}.account-page .auth-form .password-input input{display:block;width:100%;padding-right:38px}.password-toggle{position:absolute;right:0;bottom:4px;width:30px;height:30px;padding:5px;border:0;background:transparent;color:#68756d;display:grid;place-items:center}.password-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.password-toggle .eye-slash{display:none}.password-toggle.is-visible .eye-slash{display:block}.password-toggle:focus-visible,.cart-trigger:focus-visible{outline:2px solid var(--leaf);outline-offset:2px}.nav-right .cart-trigger{position:relative;z-index:auto;right:auto;bottom:auto;width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--ink);display:inline-grid;place-items:center;box-shadow:none}.nav-right .cart-trigger svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-right .cart-trigger span{position:absolute;right:-7px;top:-7px;display:grid;place-items:center;min-width:15px;height:15px;margin:0;padding:0 3px;border-radius:50%;background:#d4aa68;color:var(--ink);font-size:8px;line-height:1}@media(max-width:900px){.site-header.menu-open .nav-right .cart-trigger{display:inline-grid}}.cart-trigger:not(.nav-right .cart-trigger){display:none}.revival .revival-compare{width:100%;max-width:none;height:660px;margin-left:0;margin-right:0}@media(max-width:900px){.revival .revival-compare{height:575px}}@media(max-width:540px){.revival .revival-compare{height:530px}}.product .product-grid{grid-template-columns:1fr;gap:42px}.product .product-image{width:100%;height:500px}.product .product-copy{width:min(680px,100%);margin:0 auto}.product .product-copy .purchase{align-items:center}.store-products article{grid-template-columns:1fr;min-height:0}.store-product-image{height:360px}.store-product-copy{min-height:300px;padding:32px}.store-product-copy>div{margin-top:28px}.order-success-dialog{width:min(410px,calc(100% - 32px));border:0;background:#f7f5ef;padding:44px 38px 38px;text-align:center;box-shadow:0 30px 90px #0007}.order-success-dialog::backdrop{background:#122f2688;backdrop-filter:blur(3px)}.order-success-dialog h2{font-family:Georgia,"Noto Serif SC",serif;font-size:34px;font-weight:400;margin:12px 0 8px}.order-success-dialog>p:not(.eyebrow){margin:0;color:#68756d;font-size:12px}.order-success-dialog .eyebrow{margin:18px 0 0}.order-success-dialog .btn{margin-top:28px;min-width:130px}.order-success-icon{width:52px;height:52px;margin:auto;border:1px solid var(--leaf);border-radius:50%;display:grid;place-items:center;color:var(--leaf);font-size:27px}@media(max-width:540px){.product .product-image{height:400px}.product .product-copy .purchase{align-items:stretch}.store-product-image{height:300px}.store-product-copy{padding:28px 24px}.order-success-dialog{padding:40px 26px 30px}}
.footer-simple{grid-template-columns:minmax(240px,1fr) 180px minmax(260px,340px);align-items:start;gap:clamp(42px,8vw,130px)}.footer-simple .footer-brand{grid-column:auto}.footer-social,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:9px;font-size:11px}.footer-simple strong{margin:0 0 10px;color:#8ea095;font-size:9px;letter-spacing:.18em}.footer-social span{color:#dce2de}.footer-contact p{margin:0 0 12px;color:#9eaca4;font-size:11px;line-height:1.8}.footer-contact button{border:0;border-bottom:1px solid #9eaca4;background:transparent;color:#dce2de;padding:0 0 5px;font-size:11px;letter-spacing:.08em}@media(max-width:900px){.footer-simple{grid-template-columns:1fr 1fr;gap:40px}.footer-simple .footer-brand{grid-column:1/-1}.footer-contact{grid-column:1/-1;max-width:350px}}@media(max-width:540px){.footer-simple{grid-template-columns:1fr;gap:32px}.footer-simple .footer-brand,.footer-contact{grid-column:auto}}
.footer-simple{grid-template-columns:minmax(240px,1fr) auto minmax(260px,340px)}.footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.footer-simple .footer-identity .footer-brand{display:flex;grid-column:auto}.footer-identity>p{margin:0;color:#8ea095;font-size:9px;line-height:1.8}.footer-simple .footer-social{display:flex;flex-direction:row;align-items:center;align-self:center;gap:12px}.footer-social a{width:34px;height:34px;border:1px solid #607469;background:transparent;color:#dce2de;padding:7px;display:grid;place-items:center}.footer-social svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.footer-social a:hover{border-color:#dce2de;color:#fff}.footer-contact address{display:flex;flex-direction:column;gap:7px;margin:0;font-style:normal;color:#9eaca4;font-size:11px;line-height:1.7}.footer-contact address a{color:#dce2de}@media(max-width:900px){.footer-simple .footer-social{grid-column:2;justify-self:end;align-self:end}.footer-simple .footer-contact{grid-column:1/-1}}@media(max-width:540px){.footer-simple .footer-social{grid-column:auto;justify-self:start;align-self:auto}.footer-simple .footer-contact{grid-column:auto}}
.footer-simple .footer-social{display:flex!important;flex-direction:row!important;flex-wrap:nowrap;white-space:nowrap}
.footer-simple .footer-social{transform:translate(-96px,18px)}@media(max-width:900px){.footer-simple .footer-social{transform:translate(-38px,10px)}}@media(max-width:540px){.footer-simple .footer-social{transform:none}}
.language-toggle{min-width:30px;height:28px;padding:0 6px;border:1px solid #98a79d;background:transparent;color:var(--ink);font-size:9px;letter-spacing:.08em;line-height:1}.language-toggle[aria-pressed=true]{border-color:var(--green);background:var(--green);color:#fff}.language-toggle:focus-visible{outline:2px solid var(--leaf);outline-offset:2px}@media(max-width:900px){.site-header.menu-open .language-toggle{display:inline-block}}
.language-switch{display:inline-flex;height:28px;border:1px solid #98a79d}.language-switch button{min-width:29px;border:0;border-right:1px solid #98a79d;background:transparent;color:var(--ink);padding:0 6px;font-size:9px;letter-spacing:.06em}.language-switch button:last-child{border-right:0}.language-switch button.active{background:var(--green);color:#fff}.language-switch button:focus-visible{outline:2px solid var(--leaf);outline-offset:2px}@media(max-width:900px){.site-header.menu-open .language-switch{display:inline-flex}}
.product .store-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.product .store-products article{display:grid;grid-template-columns:1fr;min-height:0;overflow:hidden;background:#fff;border:1px solid #d4dcd3;box-shadow:0 14px 30px rgba(23,32,28,.08)}.product .store-product-image{height:360px;border-bottom:1px solid #d4dcd3}.product .store-product-copy{min-height:290px;padding:30px 32px}.product .store-product-copy>div{margin-top:28px}.product .store-product-copy .btn{white-space:nowrap}footer{display:block!important;visibility:visible!important;min-height:260px}@media(max-width:850px){.product .store-products{grid-template-columns:1fr}.product .store-product-image{height:330px}}@media(max-width:540px){.product .store-product-image{height:280px}.product .store-product-copy{padding:26px 22px}}
.admin-product-name-en{display:block;margin:0 0 5px;color:#526159;font-family:Georgia,serif;font-size:13px;font-weight:400}.product-admin-list .admin-product-description-en{margin-top:4px;color:#909991;font-style:italic}
.admin-product-image img.is-fallback,.store-product-image img.is-fallback{object-fit:contain;padding:18%;background:#dce4da}
.product{padding:72px 0}.product .product-grid{width:min(520px,calc(100% - 36px));margin:0 auto;gap:0;background:#fff;border:1px solid #d4dcd3;box-shadow:0 14px 30px rgba(23,32,28,.08)}.product .product-image{height:300px;border-bottom:1px solid #d4dcd3}.product .product-image .bottle{transform:scale(.68)}.product .product-copy{width:100%;padding:30px 32px}.product .product-copy h2{font-size:32px}.product .product-copy .benefits{margin:22px 0}.product .product-copy .purchase{align-items:center}@media(max-width:540px){.product{padding:48px 0}.product .product-grid{width:calc(100% - 36px)}.product .product-image{height:260px}.product .product-copy{padding:26px 22px}.product .product-copy h2{font-size:28px}}
.product-loading{min-height:180px;display:grid;place-items:center;color:#69766e;font-size:12px;letter-spacing:.08em}.product:has(.product-loading){padding:42px 0} 
.product .store-products{grid-template-columns:repeat(auto-fill,minmax(240px,300px));justify-content:start;align-content:start;gap:22px;max-height:850px;overflow-y:auto;overscroll-behavior:contain;padding:28px 12px 72px 0;scrollbar-color:#87988d #e4e9e4;scrollbar-width:thin}.product .store-products::-webkit-scrollbar{width:7px}.product .store-products::-webkit-scrollbar-track{background:#e4e9e4}.product .store-products::-webkit-scrollbar-thumb{background:#87988d}.product .store-products article{width:100%;box-shadow:0 9px 22px rgba(23,32,28,.07)}.product .store-product-image{height:210px}.product .store-product-copy{min-height:190px;padding:20px 22px}.product .store-product-copy h3{margin:10px 0 8px;font-size:20px}.product .store-product-copy p{margin:0;line-height:1.65}.product .store-product-copy>div{margin-top:18px}.product .store-product-copy strong{font-size:21px}.product .store-product-copy .btn{height:34px;padding:0 12px;font-size:9px}@media(max-width:540px){.product .store-products{grid-template-columns:minmax(0,300px);justify-content:start;max-height:700px;padding:24px 10px 58px 0}.product .store-product-image{height:200px}.product .store-product-copy{min-height:180px;padding:19px 20px}}
.product-catalog-shell{width:100%}.product-catalog-shell .store-heading{padding-inline:max(32px,calc((100vw - 1440px)/2))}.product-catalog-shell .store-products{padding-left:max(32px,calc((100vw - 1440px)/2));padding-right:12px}@media(max-width:540px){.product-catalog-shell .store-heading{padding-inline:18px}.product-catalog-shell .store-products{padding-left:18px;padding-right:10px}}
.product-catalog-shell{width:var(--shell);margin-inline:auto}.product-catalog-shell .store-heading{padding-inline:0}.product-catalog-shell .store-products{grid-template-columns:repeat(3,minmax(0,300px));justify-content:space-between;max-height:none;overflow:visible;padding:28px 0 72px;scrollbar-width:auto}.product-catalog-shell .store-products article{width:100%}@media(max-width:1000px){.product-catalog-shell .store-products{grid-template-columns:repeat(2,minmax(0,300px));justify-content:space-between}}@media(max-width:620px){.product-catalog-shell .store-heading{padding-inline:0}.product-catalog-shell .store-products{grid-template-columns:minmax(0,300px);justify-content:start;max-height:none;padding:24px 0 58px}}

/* Homepage media enhancement */
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}.hero:before{z-index:1;background:linear-gradient(90deg,rgba(238,240,233,.97) 0%,rgba(238,240,233,.87) 34%,rgba(238,240,233,.18) 67%,rgba(17,28,23,.08) 100%)}.story-visual{display:block;background:#16251d}.story-visual:before{display:none}.story-visual>img{width:100%;height:100%;object-fit:cover}.story-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(12,26,18,.42))}.story-visual .vertical-note{z-index:2;color:#fff}.hair-portrait{width:100%;height:100%}.hair-portrait img{width:100%;height:100%;object-fit:cover}.hair-white img,.hair-black img{filter:none;opacity:1}.care-image{background:#dce3dc}.care-image img{width:100%;height:100%;object-fit:cover;object-position:center}.care-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 62%,rgba(10,25,17,.55));pointer-events:none}.care-image span,.care-image i{z-index:2;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.35)}
@media(max-width:900px){.hero:before{background:linear-gradient(0deg,rgba(238,240,233,.98) 0%,rgba(238,240,233,.9) 48%,rgba(238,240,233,.14) 75%)}.hero-media{object-position:62% center}.story-visual>img{object-position:center}.hair-portrait img{object-position:center}.care-image img{object-position:center}}
.hero{background:#d9dfd5 url('/static/images/images/brand-story-home.webp') center/cover no-repeat}
/* Member profile form */
.member-profile>div:first-child{background:#fff;border:1px solid #d7dfd8;padding:30px 34px;box-shadow:0 12px 28px rgba(23,59,48,.06)}#memberProfileForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px;margin-top:18px}#memberProfileForm label{display:grid;gap:7px;color:#69766e;font-size:10px;letter-spacing:.05em}#memberProfileForm label:nth-of-type(4),#memberProfileForm label:nth-of-type(5),#memberProfileForm label:nth-of-type(9){grid-column:1/-1}#memberProfileForm input,#memberProfileForm select{width:100%;height:42px;border:1px solid #cbd6ce;border-radius:2px;background:#fbfcfa;padding:0 12px;color:var(--ink);font:inherit;letter-spacing:0;outline:0;transition:border-color .2s,box-shadow .2s}#memberProfileForm input:focus,#memberProfileForm select:focus{border-color:var(--leaf);box-shadow:0 0 0 3px rgba(91,125,104,.13);background:#fff}#memberProfileForm button{margin-top:3px;min-width:150px}#memberProfileStatus{min-height:18px;margin:0;color:var(--leaf);font-size:11px;align-self:center}.member-profile dl{margin-top:26px;padding-top:18px;border-top:1px solid #e1e7e2}@media(max-width:600px){#memberProfileForm{grid-template-columns:1fr}#memberProfileForm label:nth-of-type(4),#memberProfileForm label:nth-of-type(5),#memberProfileForm label:nth-of-type(9){grid-column:auto}.member-profile>div:first-child{padding:24px 20px}.member-profile{border:0;padding:0}}
.member-language-switch{display:inline-flex!important;flex:0 0 auto;height:28px;margin-left:auto;margin-right:24px;gap:0!important;border:1px solid #98a79d;background:#fff}.member-language-switch button{display:block;min-width:29px;height:26px;border:0;border-right:1px solid #98a79d;background:transparent;color:var(--ink);padding:0 6px;font-size:9px;letter-spacing:.06em;line-height:26px;text-align:center}.member-language-switch button:last-child{border-right:0}.member-language-switch button.active{background:var(--green);color:#fff}.member-language-switch button:hover:not(.active){background:#edf2ed;color:var(--green)}
@media(max-width:600px){.member-language-switch{margin-right:12px}.member-dashboard .admin-topbar>a{display:none}}
.member-save-choice{grid-column:1/-1!important;display:flex!important;align-items:center;gap:8px!important;color:#68756d!important}.member-save-choice input{width:15px!important;height:15px!important;accent-color:var(--green)}
.store-policy,.cart-policy{display:block;margin-top:10px;color:#718078;font-size:10px;letter-spacing:.04em}.cart-policy{margin-top:8px;font-family:Arial,sans-serif;font-size:10px;text-align:right}

/* 2026 public-site redesign. Account, member and admin styles above remain unchanged. */
.home-page{--ink:#17251f;--green:#163d31;--leaf:#56705d;--paper:#f4f1ea;--gold:#b79965;--line:rgba(23,37,31,.16);background:var(--paper);color:var(--ink)}
.home-page .shell{width:min(1240px,calc(100% - 80px))}.home-page .announcement{height:32px;background:#15352c;padding:0 max(40px,calc((100vw - 1240px)/2));font-size:10px;letter-spacing:.16em}.home-page .announcement button{display:flex;align-items:center;gap:12px}.home-page .site-header{height:84px;background:rgba(246,243,236,.94)}
.home-page .nav{grid-template-columns:1fr auto 1fr;gap:34px}.home-page .nav-group{gap:24px;font-size:11px;letter-spacing:.1em}.home-page .brand img{width:47px;height:47px}.home-page .brand span{font-family:Arial,sans-serif;font-size:9px;letter-spacing:.22em;margin-top:4px}.home-page .account-link{position:absolute;right:-50px}.home-page .cart-trigger{position:relative;width:30px;height:30px;border:0;background:transparent;font-size:0}.home-page .cart-trigger:before{content:"";display:block;width:15px;height:18px;margin:auto;border:1px solid currentColor;border-top:0}.home-page .cart-trigger:after{content:"";position:absolute;width:7px;height:6px;border:1px solid currentColor;border-bottom:0;border-radius:8px 8px 0 0;top:3px;left:11px}.home-page .cart-trigger span{position:absolute;right:-1px;top:-1px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--green);color:#fff;font-size:8px}
.home-page .hero{height:calc(100vh - 116px);min-height:650px;background:#1d3029 url('/static/images/images/brand-story-home.webp') center/cover no-repeat}.home-page .hero:before{display:none}.home-page .hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,25,19,.82) 0,rgba(8,25,19,.45) 47%,rgba(8,25,19,.08) 78%),linear-gradient(0deg,rgba(8,25,19,.35),transparent 45%)}.home-page .hero-content{padding-top:clamp(90px,15vh,155px);color:#fff}.home-page .hero h1{max-width:790px;margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(50px,5.5vw,82px);line-height:1.16}.hero-en{font-family:Georgia,serif;font-size:19px;line-height:1.45;color:#d7dfda;margin:20px 0}.home-page .hero-copy{max-width:590px;color:#e3e8e5;font-size:14px}.home-page .hero-actions{margin-top:34px}.home-page .hero-actions .text-link{color:#fff}.hero-index{position:absolute;right:35px;bottom:36px;color:#fff;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.16em}.hero-index i{width:65px;height:1px;background:rgba(255,255,255,.55)}
.home-page .section{padding:120px 0}.home-page .story{background:#f7f5ef}.home-page .story-grid{grid-template-columns:1.08fr .92fr;gap:9vw}.home-page .story-visual{height:650px;background:#d9d8d0;display:block}.home-page .story-visual:before{display:none}.home-page .story-visual img{width:100%;height:100%;object-fit:cover}.home-page .story-copy h2{font-size:clamp(38px,4vw,56px);line-height:1.13}.home-page .story-copy h2 em{font-weight:400;color:var(--leaf)}
.ritual{padding:110px 0;background:var(--green);color:#fff}.ritual-head{display:flex;justify-content:space-between;align-items:end}.ritual-head h2{font:400 48px/1.25 Georgia,"Noto Serif SC",serif;margin:0}.ritual-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;border-top:1px solid rgba(255,255,255,.25)}.ritual-steps article{padding:28px 20px 8px 0;border-right:1px solid rgba(255,255,255,.18);display:grid}.ritual-steps span{font:20px Georgia,serif;color:var(--gold)}.ritual-steps strong{font:400 30px Georgia,serif;margin-top:55px}.ritual-steps small{color:#bfcac5;margin-top:5px;letter-spacing:.12em}
.home-page .revival{padding:120px 0 0;background-color:#147b29;background-image:url('/static/images/images/bg.webp');background-size:cover;background-position:center;background-repeat:no-repeat;background-blend-mode:normal}.home-page .revival-head h2{font-size:clamp(44px,5vw,68px);line-height:1.16}.home-page .revival-head>p:last-child{font-family:Georgia,serif;letter-spacing:.05em}.home-page .revival-compare{margin-top:70px}.home-page .compare-copy h3{font-size:32px;line-height:1.3}.home-page .compare-copy p{max-width:470px}
.home-page .section-intro h2,.location-heading h2{font:400 clamp(40px,4vw,56px)/1.22 Georgia,"Noto Serif SC",serif}.service-browser{margin-top:65px;border-top:1px solid var(--line)}.service-series{display:grid;grid-template-columns:repeat(3,1fr)}.service-series button{min-height:130px;text-align:left;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;padding:25px 28px;font:400 21px Georgia,"Noto Serif SC",serif;transition:.25s}.service-series button span{display:block;font:11px Arial,sans-serif;color:var(--gold);margin-bottom:15px}.service-series button small{display:block;font:9px Arial,sans-serif;letter-spacing:.08em;color:#748078;margin-top:7px}.service-series button.active{background:var(--green);color:#fff}.service-series button.active small{color:#c7d2cc}.service-stage{display:grid;grid-template-columns:35% 65%;min-height:700px}.service-stage-image{position:relative;overflow:hidden;background:#d9ddd6}.service-stage-image img{width:100%;height:100%;object-fit:cover}.service-stage-image span{position:absolute;left:25px;bottom:22px;color:#fff;font-size:10px;letter-spacing:.18em}.home-page .service-list{margin:0;border:0}.home-page .service-list article{position:relative;display:grid;grid-template-columns:1.05fr .65fr 1fr 36px;gap:25px;padding:28px 35px;min-height:140px;border-bottom:1px solid var(--line)}.home-page .service-list article:hover{padding-inline:35px;background:#ebece5}.service-title{display:flex;gap:18px}.service-title>span{font:18px Georgia,serif;color:var(--gold)}.home-page .service-list h3{font-size:22px;margin:0}.service-title small{font-size:9px;color:#758078}.service-meta{display:flex;flex-direction:column;font-size:11px}.service-meta strong{font-size:12px}.service-meta span{color:#68746c;margin-top:8px}.home-page .service-list p{margin:0;font-size:11px;line-height:1.7;letter-spacing:0}.home-page .service-list button{width:34px;height:34px;border-radius:0}
.product-band{background:#9aa696 center 40%/cover no-repeat;color:#fff;min-height:500px;display:flex;align-items:end;position:relative}.product-band:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,46,36,.52),rgba(20,46,36,.08))}.product-band .shell{position:relative;padding-bottom:65px}.product-band .shell>div{display:grid;grid-template-columns:1fr 1fr;align-items:end}.product-band h2{font:400 55px/1.2 Georgia,"Noto Serif SC",serif;margin:0}.product-band p{max-width:480px}.home-page .product{padding:100px 0;background:#f2f0e9}.home-page .product-catalog-shell{width:min(1240px,calc(100% - 80px))}.home-page .store-heading h2{font-size:48px}.home-page .store-products{grid-template-columns:repeat(3,1fr);gap:60px 24px}.home-page .store-products article{background:transparent}.home-page .store-product-image{height:420px;background:#e1e2db}.home-page .store-product-copy{padding:22px 0}.home-page .store-product-copy h3{font-size:22px}
.home-page .location{background:#fff}.location-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end}.location-heading .eyebrow{grid-column:1/-1}.location-heading h2{margin:0}.location-heading>p{max-width:480px;color:#6b756f}.location-list{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--line);border-left:1px solid var(--line)}.location-list article{min-height:260px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative}.location-list article>span{font:18px Georgia,serif;color:var(--gold)}.location-list h3{font:400 27px Georgia,serif;margin:45px 0 12px}.location-list p{font-size:12px;color:#68736c}.location-list a{font-size:12px;border-bottom:1px solid currentColor}
.partnership{min-height:560px;display:flex;align-items:center;justify-content:center;background:#193a30;color:#fff}.partnership-copy{width:var(--shell);display:flex;flex-direction:column;align-items:center;text-align:center;padding:80px 0}.partnership-copy h2{font:400 clamp(40px,4vw,58px)/1.22 Georgia,"Noto Serif SC",serif;margin:0 0 25px}.partnership-copy>p:not(.eyebrow){color:#c9d2ce;max-width:620px;margin:0}.partnership-link{display:inline-flex;align-items:center;gap:13px;margin-top:31px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.75);color:#fff;font-size:12px;font-weight:bold;letter-spacing:.12em}.partnership-link span{font-size:18px;font-weight:400;line-height:.7;transition:transform .2s ease}.partnership-link:hover span{transform:translateX(5px)}
.home-page footer{padding:85px 0 30px;background:#112820}.home-page .footer-grid{grid-template-columns:1.3fr .6fr 1fr .9fr;gap:55px}.home-page .footer-links,.home-page .footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:11px}.home-page footer strong{color:#fff}.home-page .footer-action{border-left:1px solid rgba(255,255,255,.15);padding-left:35px}.home-page .footer-action p{margin:0}.home-page .footer-action strong{font:400 32px Georgia,serif;display:block;margin:5px 0 18px}.footer-bottom{display:flex;justify-content:space-between;margin-top:60px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15);font-size:9px;letter-spacing:.1em;color:#9eb0a7}
@media(max-width:1050px){.home-page .nav{grid-template-columns:auto 1fr auto}.home-page .nav-group{display:none}.home-page .brand{justify-self:start}.home-page .menu-toggle{display:block}.home-page .account-link{position:static}.home-page .site-header.menu-open .nav-group{display:flex;position:absolute;left:0;right:0;top:84px;background:var(--paper);padding:25px 40px;flex-wrap:wrap}.home-page .site-header.menu-open .nav-left{padding-bottom:70px}.home-page .site-header.menu-open .nav-right{top:140px}.service-stage{grid-template-columns:40% 60%}.home-page .service-list article{grid-template-columns:1fr 1fr 34px}.home-page .service-list p{grid-column:1/-1}.home-page .footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.home-page .shell,.home-page .product-catalog-shell{width:calc(100% - 36px)}.home-page .announcement{padding:0 18px}.home-page .site-header{height:70px}.home-page .nav{gap:10px}.home-page .account-link{display:none}.home-page .site-header.menu-open .nav-group{top:70px;padding-inline:18px}.home-page .site-header.menu-open .nav-right{top:126px}.home-page .hero{height:calc(100svh - 102px);min-height:620px;background-position:35% center}.home-page .hero-media{display:block}.home-page .hero h1{font-size:43px}.home-page .hero-content{padding-top:80px}.hero-en{font-size:16px}.home-page .hero-copy{font-size:13px}.home-page .hero-actions{align-items:flex-start;flex-direction:column;gap:18px}.home-page .section{padding:80px 0}.home-page .story-grid,.product-band .shell>div,.location-heading,.partnership{grid-template-columns:1fr}.home-page .story-visual{height:390px}.home-page .story-copy h2{font-size:37px}.ritual{padding:75px 0}.ritual-head{display:block}.ritual-head h2{font-size:36px}.ritual-steps{grid-template-columns:1fr 1fr}.ritual-steps article{min-height:160px;border-bottom:1px solid rgba(255,255,255,.18)}.ritual-steps strong{margin-top:28px;font-size:25px}.home-page .revival{padding-top:80px}.home-page .revival-compare{margin-top:40px}.service-series{grid-template-columns:1fr}.service-series button{min-height:86px;padding:15px 20px}.service-series button span{display:inline;margin-right:14px}.service-series button small{margin-left:33px}.service-stage{grid-template-columns:1fr}.service-stage-image{height:420px}.home-page .service-list article{grid-template-columns:1fr auto 34px;padding:23px 18px;gap:12px}.home-page .service-list article:hover{padding-inline:18px}.home-page .service-list p{grid-column:1/-1}.product-band{min-height:560px}.product-band .shell>div{gap:18px}.product-band h2{font-size:42px}.home-page .store-products{grid-template-columns:1fr 1fr;gap:40px 12px}.home-page .store-product-image{height:270px}.home-page .store-product-copy h3{font-size:18px}.location-heading{gap:18px}.location-list{grid-template-columns:1fr}.location-list article{min-height:230px}.partnership-image{height:430px}.partnership-copy{padding:70px 25px}.home-page .footer-grid{grid-template-columns:1fr}.home-page .footer-links{display:none}.home-page .footer-action{border:0;padding:0}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}}
@media(max-width:440px){.home-page .store-products{grid-template-columns:1fr}.home-page .store-product-image{height:390px}}

/* Inline checkout profile completion */
.cart-panel{max-height:calc(100dvh - 30px);overflow-y:auto}
.checkout-profile{margin:0 0 22px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.checkout-profile[hidden]{display:none}
.checkout-profile .eyebrow{margin-bottom:6px}
.checkout-profile-note{margin:0 0 16px;color:#718078;font-size:10px}
.checkout-profile form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px}
.checkout-profile form>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px;grid-column:1/-1}
.checkout-profile form>div:nth-of-type(2){grid-template-columns:1.2fr .6fr 1fr}
.checkout-profile form>label{display:grid;grid-column:1/-1;gap:6px;color:#69766e;font-size:10px;font-weight:bold;letter-spacing:.05em}
.checkout-profile form>div label{display:grid;gap:6px;color:#69766e;font-size:10px;font-weight:bold;letter-spacing:.05em}
.checkout-profile input,.checkout-profile select{width:100%;height:38px;border:1px solid #cbd6ce;border-radius:2px;background:#fbfcfa;padding:0 10px;color:var(--ink);font-size:12px;letter-spacing:0;outline:0}
.checkout-profile input:focus,.checkout-profile select:focus{border-color:var(--leaf);box-shadow:0 0 0 3px rgba(71,107,80,.12);background:#fff}
.checkout-profile .field-invalid{color:#a14f45}.checkout-profile .field-invalid input,.checkout-profile .field-invalid select{border-color:#a14f45;background:#fff7f5;box-shadow:0 0 0 3px rgba(161,79,69,.12)}.checkout-profile-status.is-error{color:#a14f45;font-weight:700}
.checkout-error-dialog{border-left-color:#a14f45}.checkout-error-dialog .order-success-icon{background:#a14f45;box-shadow:0 0 0 9px #f1deda,0 13px 25px rgba(111,45,36,.18)}.checkout-error-dialog .eyebrow,.checkout-error-dialog .order-success-copy{color:#8c4035}.checkout-error-dialog .order-success-view{border-color:#8c4035;background:#8c4035}.checkout-error-dialog .order-success-view:hover{background:#6d3028}
.checkout-error-dialog{width:min(440px,calc(100% - 32px));border-left:0;border-top:4px solid #a14f45;padding:48px 44px 42px;text-align:center}.checkout-error-dialog .order-success-head{display:block;padding:0}.checkout-error-dialog .order-success-icon{margin:0 auto 25px}.checkout-error-dialog .eyebrow{margin:0 0 10px;font-size:10px;line-height:1.4}.checkout-error-dialog .order-success-head h2{margin:0;font-size:31px;line-height:1.2}.checkout-error-dialog .order-success-copy{margin:22px auto 30px;font-size:16px;line-height:1.75}.checkout-error-dialog .order-success-actions{display:block}.checkout-error-dialog .order-success-view{width:min(230px,100%);margin:auto}@media(max-width:540px){.checkout-error-dialog{padding:42px 25px 30px}.checkout-error-dialog .order-success-icon{margin-bottom:22px}.checkout-error-dialog .order-success-head h2{font-size:29px}.checkout-error-dialog .order-success-copy{margin:20px auto 27px;font-size:15px}}
.checkout-profile .checkout-profile-save{display:flex;grid-column:1/-1;grid-template-columns:auto 1fr;align-items:center;gap:8px;font-weight:normal}
.checkout-profile .required-mark{order:-1;color:#a14f45;font-weight:700}
.checkout-profile .checkout-profile-save input{width:15px;height:15px;margin:0}
.checkout-profile form button{grid-column:1/-1;justify-self:start;min-height:44px;padding-inline:22px}
.checkout-profile-status{grid-column:1/-1;min-height:17px;margin:0;color:var(--leaf);font-size:10px}
@media(max-width:520px){.checkout-profile form,.checkout-profile form>div,.checkout-profile form>div:nth-of-type(2){grid-template-columns:1fr}.checkout-profile form>div label{grid-column:1}.checkout-profile form button{width:100%}}

/* Subtle Apple-like hover response for the left treatment selector. */
@media(hover:hover) and (pointer:fine){.home-page .service-series button b{display:inline-block;transform-origin:left center;transition:transform .42s cubic-bezier(.22,1,.36,1),color .25s ease;will-change:transform}.home-page .service-series button:hover b{transform:scale(1.12);color:var(--green)}.home-page .service-series button.active:hover b{transform:scale(1.08)}}

/* Keep the story page title compact and readable in three short lines. */
.inner-page .page-hero h1{max-width:920px;font-size:clamp(38px,4.5vw,64px);line-height:1.14}
.story-intro .eyebrow,.story-intro h2{display:none}.story-intro .story-prose{padding-top:90px}
.revival-english[hidden]{display:none}.revival-compare-table{width:100%;border-collapse:collapse;margin:30px 0 48px;font-size:13px}.revival-compare-table th,.revival-compare-table td{border:1px solid var(--line);padding:14px;text-align:left}.prose h3{font:400 28px/1.3 Georgia,"Noto Serif SC",serif;margin:48px 0 18px}.prose ul{padding-left:22px;color:#56615a;line-height:1.9}
.revival-figure{margin:36px 0 42px}.revival-figure img{display:block;width:min(100%,760px);height:300px;object-fit:cover}

/* Keep the established navigation and footer intact. */
.home-page .nav{grid-template-columns:auto 1fr auto auto;gap:38px}.home-page .nav .brand{align-items:center}.home-page .nav-left{justify-content:flex-start}.home-page .nav-group{gap:27px;font-size:12px}.home-page .brand img{width:44px;height:44px}.home-page .brand span{font-family:Georgia,serif;font-size:10px;letter-spacing:.15em;margin-top:0}.home-page .account-link{position:static;right:auto}.service-series b{font:inherit;font-weight:400}.revival .revival-compare{width:100vw;max-width:none;margin-left:0;margin-right:0}.revival .hair-state,.revival .hair-portrait{width:100%;max-width:none}.revival .hair-portrait img{width:100%;height:100%;object-fit:cover}.home-page footer{padding:70px 0;background:#111915}.home-page .footer-grid.footer-simple{grid-template-columns:minmax(240px,1fr) auto minmax(260px,340px);align-items:start;gap:clamp(42px,8vw,130px)}.home-page .footer-simple .footer-contact{gap:9px}.home-page .footer-simple strong{color:#8ea095}.home-page .footer-social{display:flex;flex-direction:row;align-items:center}.home-page .footer-identity{gap:22px}
@media(max-width:1050px){.home-page .nav{grid-template-columns:auto 1fr auto}.home-page .nav .brand{grid-column:1}.home-page .nav .account-link{grid-column:2;justify-self:end}.home-page .nav .menu-toggle{grid-column:3}.home-page .site-header.menu-open .nav-group{grid-column:1/-1}.home-page .site-header.menu-open .nav-left{padding-bottom:70px}.home-page .footer-grid.footer-simple{grid-template-columns:1fr 1fr}.home-page .footer-simple .footer-social{grid-column:2;justify-self:end}.home-page .footer-simple .footer-contact{grid-column:1/-1}}
@media(max-width:700px){.home-page .account-link{display:flex}.home-page .footer-grid.footer-simple{grid-template-columns:1fr;gap:32px}.home-page .footer-simple .footer-social,.home-page .footer-simple .footer-contact{grid-column:auto;justify-self:start}.revival .revival-compare{width:100%}}
.inner-page main{background:var(--paper)}.page-hero{min-height:68vh;display:flex;align-items:flex-end;position:relative;overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(12,20,18,.72),rgba(12,20,18,.18)),var(--page-bg) center/cover}.page-hero .shell{width:100%;padding:clamp(110px,16vw,180px) 0 88px;max-width:1180px}.page-hero h1{max-width:720px;margin:14px 0 22px;font-size:clamp(44px,6vw,84px);line-height:1.06;font-weight:400}.page-hero p:not(.eyebrow){max-width:600px;font-size:18px;line-height:1.8;color:rgba(255,255,255,.9)}.prose{max-width:820px;padding-top:110px;padding-bottom:120px}.prose h2,.product-page-intro h2{font-size:clamp(34px,4vw,58px);line-height:1.15;font-weight:400;margin:12px 0 28px}.prose p,.product-page-intro p{max-width:700px;font-size:17px;line-height:1.9;color:#56615a;margin:0 0 20px}.prose .btn{margin-top:18px}.service-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d7d8d1;padding:110px 0 120px}.service-page-grid article{background:var(--paper);padding:38px 32px;min-height:260px}.service-page-grid span{color:#87958b;font-size:13px;letter-spacing:.12em}.service-page-grid h2{font-size:30px;font-weight:400;margin:34px 0 16px}.service-page-grid p{color:#56615a;line-height:1.75}.product-page-intro{padding:110px 0 130px}
.inner-page #products{padding:48px 0;background:#f2f0e9}.inner-page #products:has(.product-loading){padding:18px 0}.inner-page #products .product-loading{min-height:72px}.inner-page #products .product-catalog-shell{width:min(1240px,calc(100% - 80px))}.inner-page #products .store-products{grid-template-columns:repeat(3,1fr);gap:60px 24px}.inner-page #products .store-product-image{height:420px;background:#e1e2db}.inner-page #products .store-product-copy{padding:22px 0}@media(max-width:850px){.inner-page #products .store-products{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.inner-page #products .product-catalog-shell{width:calc(100% - 36px)}.inner-page #products .store-products{grid-template-columns:1fr}}
.inner-page .section:has(.product-page-intro){padding:44px 0 22px}.inner-page .product-page-intro{padding:0}
.story-intro{background:#f7f5ef}.story-prose{max-width:850px}.story-prose h2,.story-system h2,.value-grid h2,.grey-story h2{font:400 clamp(36px,4.5vw,62px)/1.16 Georgia,"Noto Serif SC",serif;margin:0 0 30px}.story-prose p{max-width:760px;margin:0 0 22px;font-size:16px;line-height:1.95;color:#56615a}.story-system{padding:120px 0;background:#183d31;color:#fff}.story-system-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11vw}.story-system .eyebrow{color:#b9c8bd}.story-system h2{color:#fff}.story-system p:not(.eyebrow){margin:0 0 20px;color:#d4ded7;font-size:16px;line-height:1.95}.story-prose blockquote{margin:52px 0 20px;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font:400 clamp(24px,3vw,38px)/1.35 Georgia,"Noto Serif SC",serif}.story-signoff{font:400 22px/1.65 var(--font-heading)!important;letter-spacing:0!important;color:var(--green)!important}@media(max-width:560px){.story-signoff{font-size:18px!important}}.story-values{padding:0;background:#e8ece5}.value-grid{display:grid;grid-template-columns:1fr 1fr}.value-grid article{min-height:420px;padding:70px clamp(28px,6vw,90px);border-right:1px solid rgba(23,61,49,.18)}.value-grid article:last-child{border-right:0}.value-grid h2{font-size:44px}.value-grid p:not(.eyebrow){max-width:430px;color:#56615a;font-size:16px;line-height:1.9}.grey-story{padding:120px 0;background:#172c24;color:#fff}.grey-story .eyebrow{color:#bbcbbf}.grey-story h2{color:#fff}.grey-story p{color:#d2ddd5}.grey-story blockquote{border-color:rgba(255,255,255,.2);color:#fff}.grey-story .btn{margin-top:10px}.grey-story .btn:hover{background:#e6eee7}@media(max-width:700px){.story-system,.grey-story{padding:80px 0}.story-system-grid,.value-grid{grid-template-columns:1fr}.story-system-grid{gap:26px}.value-grid article{min-height:0;padding:55px 28px;border-right:0;border-bottom:1px solid rgba(23,61,49,.18)}.value-grid article:last-child{border-bottom:0}.story-prose p,.story-system p:not(.eyebrow),.value-grid p:not(.eyebrow){font-size:15px}.story-prose blockquote{margin-top:38px}}
.home-page .service-browser{display:grid;grid-template-columns:175px minmax(280px,.72fr) minmax(480px,1.28fr);border-top:1px solid var(--line);align-items:stretch}.home-page .service-series{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:34px 0;border-right:1px solid var(--line);background:#eef0e9}.home-page .service-series button{min-height:92px;border:0;border-left:3px solid transparent;border-bottom:0;background:transparent;padding:16px 18px;text-align:left;color:#637069}.home-page .service-series button span{margin-bottom:8px}.home-page .service-series button.active{border-left-color:var(--green);background:#fff;color:var(--ink)}.home-page .service-stage{display:contents}.home-page .service-stage-image{min-height:680px}.home-page .service-list{max-height:680px;overflow:auto;border-top:0;background:#fff}.home-page .service-list article{grid-template-columns:1.05fr .65fr 36px;padding:26px 28px}.home-page .service-list article p{grid-column:1/-1}.home-page .service-list article:hover{padding-inline:28px}@media(max-width:1050px){.home-page .service-browser{grid-template-columns:145px 38% 1fr}.home-page .service-stage-image{min-height:620px}.home-page .service-list{max-height:620px}}@media(max-width:700px){.home-page .service-browser{display:block}.home-page .service-series{display:grid;grid-template-columns:1fr;border-right:0;padding:0}.home-page .service-series button{min-height:78px;border-left:0;border-bottom:1px solid var(--line);border-top:3px solid transparent}.home-page .service-series button.active{border-top-color:var(--green);border-left:0}.home-page .service-stage{display:grid}.home-page .service-stage-image{min-height:420px}.home-page .service-list{max-height:none}}
.home-page .service-series{max-height:680px;overflow:hidden;perspective:700px}.home-page .service-series button{transition:transform .22s ease,opacity .22s ease;transform-origin:center}
.home-page .service-series{position:relative;isolation:isolate;padding:92px 12px;border-right:1px solid #c8d0c8;background:#e9ede7;box-shadow:inset -12px 0 26px rgba(23,61,49,.05),inset 12px 0 26px rgba(23,61,49,.04)}.home-page .service-series:before{content:"";position:absolute;left:8px;right:8px;top:50%;height:94px;transform:translateY(-50%);border:1px solid rgba(24,61,49,.2);border-radius:4px;background:#f8f8f3;box-shadow:0 8px 18px rgba(23,32,28,.08);z-index:-1}.home-page .service-series:after{content:"";position:absolute;left:0;right:0;top:34px;height:1px;background:#d0d8d0;box-shadow:0 611px #d0d8d0}.home-page .service-series button{position:relative;z-index:1;min-height:92px;border:0!important;background:transparent!important;padding:15px 18px;color:#718077;transform-origin:center}.home-page .service-series button span{font-size:10px;letter-spacing:.18em;color:#9b6e36;margin-bottom:7px}.home-page .service-series button b{font-size:18px;white-space:nowrap}.home-page .service-series button.active{color:#173d31}.home-page .service-series button.active b{font-size:21px}.home-page .service-series button.active:after{content:"";position:absolute;right:11px;top:50%;width:5px;height:5px;border-radius:50%;background:#b69154;transform:translateY(-50%)}
.home-page .service-series{max-height:680px;overflow:hidden;perspective:700px}.home-page .service-series button{transition:transform .22s ease,opacity .22s ease;transform-origin:center}
@media(max-width:700px){.home-page .service-series{max-height:none;padding:0;box-shadow:none}.home-page .service-series:before,.home-page .service-series:after{display:none}.home-page .service-series button,.home-page .service-series button.active{min-height:78px}.home-page .service-series button.active:after{display:none}}
.home-page .service-list{max-height:none;overflow:visible}.home-page .service-series{height:680px;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scrollbar-width:none}.home-page .service-series::-webkit-scrollbar{display:none}.home-page .service-series button{scroll-snap-align:center}
@media(max-width:700px){.home-page .service-series{height:auto;overflow:visible;scroll-snap-type:none}}
.home-page .service-series{perspective:420px;transform-style:preserve-3d}.home-page .service-series button{backface-visibility:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .35s ease,filter .35s ease}.home-page .service-series button:not(.active){filter:blur(.15px)}
.home-page .service-list article{grid-template-columns:1.15fr .7fr}.home-page .service-list article button{display:none}

/* Primary services: a time-picker-like wheel on the left and its selected program on the right. */
.home-page .service-browser{grid-template-columns:205px minmax(0,1.05fr) minmax(360px,.95fr);height:680px;min-height:680px;border:1px solid var(--line);border-top:1px solid var(--line);background:#fff}.home-page .service-series{height:678px;max-height:none;overflow:hidden;position:relative;display:flex;flex-direction:column;justify-content:center;gap:0;padding:0 16px;border:0;border-right:1px solid #cbd2ca;background:#e8ede6;perspective:560px;isolation:isolate;touch-action:pan-x}.home-page .service-series:before{left:12px;right:12px;top:50%;height:94px;border-color:transparent;background:transparent;box-shadow:none;z-index:-1}.home-page .service-series:after{left:16px;right:16px;top:calc(50% - 48px);height:1px;background:#c1cbc0;box-shadow:0 94px #c1cbc0}.home-page .service-series button{min-height:94px;padding:14px 18px;border:0!important;background:transparent!important;color:#718077;backface-visibility:hidden;transform-origin:center;transition:transform .48s cubic-bezier(.22,1,.36,1),opacity .42s ease,color .32s ease,filter .42s ease;will-change:transform,opacity}.home-page .service-series button span{font-size:10px;letter-spacing:.18em;color:#9b6e36;margin-bottom:7px}.home-page .service-series button b{font:400 18px Georgia,"Noto Serif SC",serif;white-space:nowrap}.home-page .service-series button.active{color:#173d31}.home-page .service-series button.active b{font-size:21px}.home-page .service-series button:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}.home-page .service-stage{display:contents}.home-page .service-stage-image{grid-column:3;grid-row:1;height:678px;min-height:0;overflow:hidden}.home-page .service-list{grid-column:2;grid-row:1;max-height:678px;min-width:0;overflow:auto;background:#fff;scrollbar-width:thin;scrollbar-color:#a7b4a8 transparent;transition:opacity .18s ease,transform .18s ease}.home-page .service-list.is-changing{opacity:.15;transform:translateY(7px)}.home-page .service-stage-image img{transition:opacity .08s ease,transform .16s cubic-bezier(.22,1,.36,1)}.home-page .service-stage-image img.is-changing{opacity:.2;transform:scale(1.025)}.home-page .service-list article{grid-template-columns:minmax(145px,1.15fr) minmax(125px,.7fr);gap:18px;padding:25px 28px}.home-page .service-list article p{grid-column:1/-1}.home-page .service-list article:hover{padding-inline:28px}@media(max-width:1050px){.home-page .service-browser{grid-template-columns:175px minmax(0,1.05fr) minmax(290px,.95fr);height:620px;min-height:620px}.home-page .service-series{height:618px;padding-inline:10px}.home-page .service-stage-image,.home-page .service-list{min-height:618px;max-height:618px}.home-page .service-list article{grid-template-columns:minmax(140px,1fr) minmax(112px,.7fr);padding-inline:22px}}@media(max-width:700px){.home-page .service-browser{display:block;height:auto;min-height:0}.home-page .service-series{height:auto;display:grid;grid-template-columns:1fr;padding:0;overflow:visible;perspective:none;border:0;border-bottom:1px solid var(--line);background:#eef0e9}.home-page .service-series:before,.home-page .service-series:after{display:none}.home-page .service-series button{min-height:76px!important;transform:none!important;opacity:1!important;border-bottom:1px solid var(--line)!important}.home-page .service-series button.active{background:#fff!important}.home-page .service-stage{display:grid;grid-template-columns:1fr}.home-page .service-stage-image,.home-page .service-list{grid-column:auto;grid-row:auto;min-height:0;max-height:none}.home-page .service-stage-image{height:390px}.home-page .service-list{overflow:visible}.home-page .service-list article{grid-template-columns:1fr auto;padding:22px 18px}.home-page .service-list article p{grid-column:1/-1}}

@media(min-width:701px){.home-page .service-browser{grid-template-columns:205px minmax(0,1.25fr) minmax(280px,.75fr);height:560px;min-height:560px}.home-page .service-series{height:558px}.home-page .service-stage-image{height:558px}.home-page .service-list{height:558px;max-height:558px}}@media(min-width:701px) and (max-width:1050px){.home-page .service-browser{grid-template-columns:175px minmax(0,1.15fr) minmax(240px,.85fr);height:520px;min-height:520px}.home-page .service-series{height:518px}.home-page .service-stage-image,.home-page .service-list{height:518px;max-height:518px}}

/* Let long English series names wrap inside the narrow selector column. */
html[lang="en"] .home-page .service-series button b{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.1}
.booking-dialog textarea{display:block;min-height:42px;resize:vertical;line-height:20px}

/* Gray Hair Rescue: bilingual editorial treatment page. */
.revival-language[hidden]{display:none}.revival-language h2{font:400 clamp(38px,4.6vw,66px)/1.12 Georgia,"Noto Serif SC",serif;letter-spacing:0}.revival-language h3{font:400 26px/1.35 Georgia,"Noto Serif SC",serif;letter-spacing:0}.revival-language p,.revival-language li{font-size:16px;line-height:1.9}.revival-hero{min-height:76vh;background-position:center 28%}.revival-hero .shell{padding-bottom:clamp(70px,8vw,110px)}.revival-intro{padding:clamp(90px,10vw,145px) 0;background:#f7f5ef}.revival-intro-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:clamp(60px,10vw,150px);align-items:start}.revival-heading{position:sticky;top:125px}.revival-heading h2{max-width:560px;margin:17px 0 0}.revival-narrative p{margin:0 0 26px;color:#56615a}.revival-narrative .revival-lead{font:400 24px/1.65 Georgia,"Noto Serif SC",serif;color:#21352e}.revival-wide-figure{margin:0;background:#111915}.revival-wide-figure img{display:block;width:100%;height:clamp(430px,58vw,720px);object-fit:cover}.revival-wide-figure figcaption{display:flex;gap:22px;align-items:center;padding-top:22px;padding-bottom:22px;color:#cbd7ce;font-size:12px;letter-spacing:.08em}.revival-wide-figure figcaption span{color:#b89a63}.revival-system{padding:clamp(90px,11vw,150px) 0;background:#183d31;color:#fff}.revival-system-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(520px,1.2fr);gap:clamp(55px,9vw,130px);align-items:start}.revival-system h2{max-width:520px;margin:14px 0 30px}.revival-system-grid>div>p:not(.eyebrow){max-width:520px;color:#cfdbd3}.revival-steps{display:grid;grid-template-columns:1fr 1fr;list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}.revival-steps li{min-height:205px;padding:26px 28px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.revival-steps li:nth-child(2n){border-right:0}.revival-steps span{display:block;margin-bottom:30px;color:#bda16d;font-size:11px;letter-spacing:.15em}.revival-steps strong{display:block;font:400 22px/1.35 Georgia,"Noto Serif SC",serif}.revival-steps p{margin:10px 0 0;color:#bdcbc1;font-size:13px;line-height:1.75}.revival-comparison,.revival-audience{padding:clamp(90px,10vw,140px) 0;background:#f7f5ef}.revival-section-head{display:grid;grid-template-columns:.65fr 1.35fr;align-items:end;margin-bottom:55px}.revival-section-head h2{max-width:760px;margin:0}.revival-table-wrap{overflow-x:auto}.revival-compare-table{min-width:740px;margin:0;border-collapse:collapse;background:transparent}.revival-compare-table th,.revival-compare-table td{border:0;border-bottom:1px solid #cbd0c8;padding:23px 26px;font-size:15px;line-height:1.6;vertical-align:top}.revival-compare-table thead th{padding-top:17px;padding-bottom:17px;background:#173d31;color:#fff;font-size:11px;letter-spacing:.08em}.revival-compare-table thead th:first-child{width:20%}.revival-compare-table tbody th{color:#8c7448;font-weight:500}.revival-compare-table tbody td:last-child{background:#edf0e9;color:#173d31}.revival-formula{background:#111915;color:#fff}.revival-formula-grid{width:100%;max-width:none;display:grid;grid-template-columns:1.08fr .92fr;align-items:stretch}.revival-formula figure{min-height:680px;margin:0;overflow:hidden}.revival-formula figure img{width:100%;height:100%;display:block;object-fit:cover}.revival-formula-grid>div{display:flex;flex-direction:column;justify-content:center;padding:clamp(65px,8vw,125px)}.revival-formula h2{max-width:600px;margin:16px 0 32px}.revival-formula p:not(.eyebrow){max-width:600px;color:#d0d9d3}.revival-formula .revival-note{margin-top:25px;padding-top:25px;border-top:1px solid rgba(255,255,255,.2);font-size:13px;color:#aebdb3}.revival-audience-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cbd0c8}.revival-audience-grid article{min-height:420px;padding:clamp(35px,5vw,70px);border-right:1px solid #cbd0c8}.revival-audience-grid article:last-child{border-right:0;background:#edf0e9}.revival-audience-grid article>span{display:block;color:#9a7942;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.revival-audience-grid h3{max-width:420px;margin:28px 0 24px}.revival-audience-grid ul{margin:0;padding-left:19px;color:#56615a}.revival-audience-grid li{margin-bottom:9px;font-size:14px;line-height:1.75}.revival-cta{padding:clamp(90px,12vw,160px) 0;background:#193027;color:#fff;text-align:center}.revival-cta h2{max-width:900px;margin:18px auto 28px}.revival-cta p:not(.eyebrow){max-width:690px;margin:0 auto 34px;color:#cbd7cf}.revival-cta .btn{margin-top:5px}
@media(max-width:900px){.revival-intro-grid,.revival-system-grid{grid-template-columns:1fr;gap:55px}.revival-heading{position:static}.revival-system-grid>div>p:not(.eyebrow){max-width:680px}.revival-section-head{grid-template-columns:1fr;gap:20px}.revival-formula-grid{grid-template-columns:1fr}.revival-formula figure{min-height:0;height:540px}.revival-formula-grid>div{padding:80px 7vw}.revival-audience-grid article{padding:45px 35px}}
@media(max-width:620px){.revival-hero{min-height:650px;background-position:42% center}.revival-hero .shell{width:100%;padding:0 18px 62px}.revival-hero h1{font-size:42px}.revival-hero p:not(.eyebrow){font-size:15px;max-width:100%;overflow-wrap:anywhere}.revival-intro{padding:75px 0}.revival-language h2{font-size:36px}.revival-narrative .revival-lead{font-size:21px}.revival-language p{font-size:15px}.revival-wide-figure img{height:340px;object-position:62% center}.revival-wide-figure figcaption{font-size:10px}.revival-system{padding:75px 0}.revival-steps{grid-template-columns:1fr}.revival-steps li{min-height:0;border-right:0;padding:25px 20px}.revival-steps span{margin-bottom:15px}.revival-comparison,.revival-audience{padding:75px 0}.revival-section-head{margin-bottom:34px}.revival-compare-table th,.revival-compare-table td{padding:18px 16px}.revival-formula figure{height:360px}.revival-formula-grid>div{padding:68px 18px}.revival-audience-grid{grid-template-columns:1fr}.revival-audience-grid article{min-height:0;padding:40px 24px;border-right:0;border-bottom:1px solid #cbd0c8}.revival-audience-grid article:last-child{border-bottom:0}.revival-cta{text-align:left}.revival-cta h2{font-size:34px}.revival-cta .btn{width:100%}}
@media(max-width:620px){.revival-table-wrap{overflow:visible}.revival-compare-table{display:block;min-width:0;width:100%}.revival-compare-table thead{display:none}.revival-compare-table tbody{display:grid;gap:16px}.revival-compare-table tbody tr{display:block;border:1px solid #cbd0c8;background:#fff}.revival-compare-table tbody th,.revival-compare-table tbody td{display:block;border:0;border-bottom:1px solid #cbd0c8;padding:14px 16px;font-size:14px;line-height:1.6}.revival-compare-table tbody th{background:#f0f2ed;color:#8c7448;font-size:12px;letter-spacing:.06em}.revival-compare-table tbody td:last-child{border-bottom:0;background:#edf0e9;color:#173d31}.revival-compare-table tbody td:before{display:block;content:attr(data-label);margin-bottom:4px;color:#7d6a47;font-size:10px;font-weight:bold;letter-spacing:.08em}}

/* Preserve the square follicle artwork in both illustration placements. */
.revival-wide-figure{background:#efd1a8}.revival-wide-figure img{height:clamp(500px,58vw,720px);object-fit:contain}.revival-wide-figure figcaption{background:#111915}.revival-formula figure{background:#efd1a8}.revival-formula figure img{object-fit:contain}@media(max-width:620px){.revival-wide-figure img{height:390px;object-position:center}}
.revival-formula-grid{display:block;max-width:900px}.revival-formula-grid>div{max-width:760px;margin-inline:auto;padding-inline:0}

/* Match the homepage's draggable before/after treatment on the Gray Hair Rescue hero. */
.revival-hero{display:block;min-height:0;background:#1b2e27}
.revival-hero>.shell{padding-top:clamp(100px,12vw,155px);padding-bottom:clamp(48px,6vw,76px)}
.revival-hero-compare{width:100%;height:clamp(500px,58vw,680px);margin:0;background:#111915}
@media(max-width:620px){.revival-hero>.shell{padding:80px 18px 42px}.revival-hero-compare{height:500px}.revival-hero .compare-copy{top:57%}}

/* Website terms: a quiet, readable legal page aligned with the main site system. */
.terms-hero{padding:clamp(100px,13vw,170px) 0 clamp(64px,8vw,105px);background:#183d31;color:#fff}.terms-hero .eyebrow{color:#c4d1c5}.terms-hero h1{max-width:780px;margin:0 0 20px;font:400 clamp(46px,6vw,76px)/1.08 Georgia,"Noto Serif SC",serif}.terms-hero p:not(.eyebrow){max-width:590px;margin:0;color:#d3ded6;font-size:17px;line-height:1.85}.terms-content{padding:clamp(76px,10vw,142px) 0;background:#f7f5ef}.terms-layout{display:grid;grid-template-columns:minmax(230px,.55fr) minmax(0,1.45fr);gap:clamp(52px,10vw,150px);align-items:start}.terms-aside{position:sticky;top:118px;padding:4px 0 22px;border-top:1px solid #b9c6ba}.terms-aside .eyebrow{margin-top:22px}.terms-aside p:not(.eyebrow){margin:0 0 18px;color:#5d6961;font-size:13px;line-height:1.8}.terms-sections{border-top:1px solid #b9c6ba}.terms-sections article{position:relative;padding:35px 0 38px 66px;border-bottom:1px solid #c9d1ca}.terms-sections article>span{position:absolute;top:39px;left:0;color:#9a7942;font:400 14px/1.4 Georgia,serif;letter-spacing:.08em}.terms-sections h2{margin:0 0 14px;color:#173d31;font:400 clamp(25px,2.45vw,34px)/1.25 Georgia,"Noto Serif SC",serif}.terms-sections p{max-width:740px;margin:0;color:#56615a;font-size:15px;line-height:1.95}.footer-legal{display:inline-block;border-bottom:1px solid #8ea095;color:#dce2de;font-size:10px;letter-spacing:.08em;padding-bottom:3px}.footer-legal:hover{border-color:#fff;color:#fff}@media(max-width:800px){.terms-layout{grid-template-columns:1fr;gap:45px}.terms-aside{position:static;max-width:620px}.terms-sections article{padding-left:52px}.terms-sections article>span{font-size:12px}}@media(max-width:540px){.terms-hero{padding:80px 0 58px}.terms-hero h1{font-size:43px}.terms-hero p:not(.eyebrow){font-size:15px}.terms-content{padding:64px 0}.terms-sections article{padding:28px 0 31px 43px}.terms-sections article>span{top:31px;font-size:11px}.terms-sections h2{font-size:25px}.terms-sections p{font-size:14px;line-height:1.85}}
.account-page .account-main{min-height:calc(100vh - 365px)}

/* Contact and partnership page. */
.contact-hero{min-height:clamp(490px,65vh,690px);display:flex;align-items:flex-end;position:relative;isolation:isolate;background:var(--contact-bg) center/cover no-repeat;color:#fff}.contact-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,28,22,.84) 0%,rgba(12,28,22,.52) 43%,rgba(12,28,22,.08) 76%)}.contact-hero .shell{width:100%;padding-bottom:clamp(62px,8vw,105px)}.contact-hero .eyebrow{color:#ccdbcf}.contact-hero h1,.contact-intro h2,.contact-partner h2,.contact-form-section h2{margin:0;font:400 clamp(42px,5.5vw,74px)/1.12 Georgia,"Noto Serif SC",serif}.contact-hero h1{max-width:760px}.contact-hero p:not(.eyebrow){max-width:570px;margin:23px 0 0;color:#e2e9e3;font-size:17px;line-height:1.85}.contact-intro{padding:clamp(85px,11vw,150px) 0;background:#f7f5ef}.contact-intro-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(400px,1.1fr);gap:clamp(60px,11vw,160px);align-items:start}.contact-intro h2{max-width:560px;color:#173d31}.contact-intro-copy>p{max-width:620px;margin:3px 0 35px;color:#59665e;font-size:16px;line-height:1.9}.contact-intro dl{margin:0 0 38px;border-top:1px solid #c7d0c8}.contact-intro dl>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid #c7d0c8}.contact-intro dt{color:#8e7548;font-size:11px;letter-spacing:.08em}.contact-intro dd{margin:0;color:#263b32;font-size:15px}.contact-intro dd a{border-bottom:1px solid currentColor}.contact-partner{padding:clamp(85px,11vw,155px) 0;background:#183d31;color:#fff}.contact-partner-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(430px,1.1fr);gap:clamp(65px,10vw,155px);align-items:start}.contact-partner .eyebrow{color:#bdcdbf}.contact-partner h2{max-width:620px}.contact-partner-copy>p:not(.eyebrow){max-width:600px;margin:28px 0 0;color:#d2dcd5;font-size:16px;line-height:1.95}.contact-brand-link{display:inline-block;margin-top:33px;color:#fff}.contact-partner-details{border-top:1px solid rgba(255,255,255,.25)}.contact-partner-details>div{padding:29px 0 33px;border-bottom:1px solid rgba(255,255,255,.25)}.contact-partner-details p:not(.eyebrow){margin:0;color:#cfdbd3;font-size:15px;line-height:1.9}.contact-partner-standards ul{margin:0;padding:0;list-style:none}.contact-partner-standards li{position:relative;margin:0 0 14px;padding-left:20px;color:#cfdbd3;font-size:15px;line-height:1.75}.contact-partner-standards li:before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;border-radius:50%;background:#b69154}.contact-form-section{padding:clamp(85px,11vw,150px) 0;background:#e9ede6}.contact-form-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(450px,1.2fr);gap:clamp(60px,11vw,155px);align-items:start}.contact-form-section h2{max-width:540px;margin-top:15px;color:#173d31}.contact-form-section>div>div>p:not(.eyebrow),.contact-form-layout>div>p:not(.eyebrow){max-width:480px;margin:25px 0 0;color:#59665e;font-size:16px;line-height:1.9}.contact-partnership-form{display:grid;grid-template-columns:1fr 1fr;gap:25px 28px;padding-top:5px}.contact-partnership-form label{display:block;color:#526159;font-size:10px;font-weight:bold;letter-spacing:.1em}.contact-partnership-form label:nth-of-type(4),.contact-partnership-form label:nth-of-type(6),.contact-partnership-form label:nth-of-type(7),.contact-partnership-form>.btn,.contact-partnership-form>.form-status{grid-column:1/-1}.contact-partnership-form label span{display:block;margin-bottom:10px}.contact-partnership-form input,.contact-partnership-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #8fa096;background:transparent;padding:9px 1px;color:var(--ink);outline:0;resize:vertical;font-size:14px;line-height:1.6}.contact-partnership-form input:focus,.contact-partnership-form textarea:focus{border-bottom-color:#173d31}.contact-partnership-form .btn{justify-self:start;margin-top:8px}.contact-partnership-form .form-status{margin:0;color:#315342}@media(max-width:850px){.contact-intro-grid,.contact-partner-grid,.contact-form-layout{grid-template-columns:1fr;gap:48px}.contact-hero{min-height:560px}.contact-intro h2{max-width:700px}.contact-partner-copy>p:not(.eyebrow){max-width:700px}}@media(max-width:560px){.contact-hero{min-height:510px;background-position:57% center}.contact-hero .shell{padding-bottom:55px}.contact-hero h1{font-size:42px}.contact-hero p:not(.eyebrow){font-size:15px}.contact-intro,.contact-partner,.contact-form-section{padding:72px 0}.contact-intro h2,.contact-partner h2,.contact-form-section h2{font-size:35px}.contact-intro dl>div{grid-template-columns:1fr;gap:5px;padding:15px 0}.contact-intro dd{font-size:14px}.contact-partnership-form{grid-template-columns:1fr;gap:23px}.contact-partnership-form label:nth-of-type(4),.contact-partnership-form label:nth-of-type(6),.contact-partnership-form label:nth-of-type(7),.contact-partnership-form>.btn,.contact-partnership-form>.form-status{grid-column:auto}.contact-partnership-form .btn{width:100%}}
.contact-partnership-form label:nth-of-type(4),.contact-partnership-form label:nth-of-type(6){grid-column:auto}.contact-partnership-form label:nth-of-type(5),.contact-partnership-form label:nth-of-type(7){grid-column:1/-1}
.contact-program{padding:clamp(85px,11vw,150px) 0;background:#f7f5ef}.contact-program-head{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(400px,1.1fr);gap:clamp(60px,11vw,160px);align-items:end;margin-bottom:clamp(42px,6vw,76px)}.contact-program h2{margin:0;color:#173d31;font:400 clamp(42px,5.5vw,74px)/1.12 Georgia,"Noto Serif SC",serif}.contact-program-head>p{max-width:580px;margin:0;color:#59665e;font-size:16px;line-height:1.9}.contact-program-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,60px);align-items:start}.contact-program-images figure{margin:0}.contact-program-images img{display:block;width:100%;height:auto;border:1px solid #d8c7a9;background:#fff}.contact-program-images figcaption{margin-top:16px;color:#7d6640;font-size:10px;font-weight:bold;letter-spacing:.12em;text-transform:uppercase}@media(max-width:850px){.contact-program-head{grid-template-columns:1fr;gap:28px}.contact-program-images{gap:32px}}@media(max-width:560px){.contact-program{padding:72px 0}.contact-program h2{font-size:35px}.contact-program-head{margin-bottom:40px}.contact-program-head>p{font-size:15px}.contact-program-images{grid-template-columns:1fr;gap:42px}}
.story-evidence{padding:0;background:#e7ece5}.story-evidence-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:1px;background:#cbd4ca}.story-evidence figure{margin:0;background:#f7f5ef}.story-evidence-feature{display:grid;grid-template-rows:1fr auto}.story-evidence-feature img{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}.story-evidence figcaption{padding:22px 28px;color:#173d31}.story-evidence-feature figcaption{display:flex;gap:18px;align-items:center}.story-evidence figcaption span{color:#a17a42;font:12px Arial,sans-serif;letter-spacing:.16em}.story-evidence figcaption strong{font:400 21px/1.35 Georgia,"Noto Serif SC",serif}.story-evidence-side{display:grid;grid-template-rows:1fr 1fr;gap:1px}.story-evidence-side img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover}.story-evidence-side figcaption{font-size:12px;letter-spacing:.06em}.service-visual-story{padding:0;background:#172c24}.service-visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.18)}.service-visual-grid figure{margin:0;background:#172c24;color:#fff}.service-visual-grid img{display:block;width:100%;height:500px;object-fit:cover}.service-visual-grid figcaption{padding:22px 24px 28px;min-height:82px;color:#cfdbd3;font-size:13px;line-height:1.7}.service-visual-grid figcaption span{display:block;margin-bottom:10px;color:#b89a63;font-size:10px;letter-spacing:.15em}.service-menu-reference{padding:clamp(80px,10vw,130px) 0;background:#f7f5ef}.service-menu-reference>.shell{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,9vw,130px);align-items:center}.service-menu-reference h2{margin:14px 0 22px;font:400 clamp(36px,4.4vw,58px)/1.15 Georgia,"Noto Serif SC",serif;color:#173d31}.service-menu-reference p{max-width:460px;color:#56615a;line-height:1.9}.service-menu-reference img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;object-position:center;border:1px solid #d8c7a9;background:#fff}.product-editorial{padding:0;background:#f7f5ef}.product-editorial-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,10vw,150px);align-items:center}.product-editorial .product-page-intro{padding:110px 0}.product-editorial figure{margin:0}.product-editorial figure img{display:block;width:100%;height:480px;object-fit:cover}.product-editorial figcaption{margin-top:13px;color:#80683f;font-size:11px;letter-spacing:.1em}.contact-calligraphy{margin:38px 0 0;max-width:450px}.contact-calligraphy img{display:block;width:100%;height:170px;object-fit:cover;filter:saturate(.7)}
@media(max-width:800px){.story-evidence-grid,.service-visual-grid,.service-menu-reference>.shell,.product-editorial-grid{grid-template-columns:1fr}.story-evidence-side{grid-template-columns:1fr 1fr;grid-template-rows:none}.story-evidence-side img{min-height:190px}.service-visual-grid img{height:360px}.service-menu-reference img{max-height:460px}.product-editorial .product-page-intro{padding:78px 0 34px}.product-editorial figure img{height:330px}.contact-calligraphy{margin-top:28px}}
@media(max-width:560px){.story-evidence-side{grid-template-columns:1fr}.story-evidence-side img{min-height:220px}.story-evidence-feature img{min-height:300px}.story-evidence figcaption{padding:18px}.story-evidence-feature figcaption strong{font-size:18px}.service-visual-grid figcaption{padding:18px}.service-menu-reference{padding:75px 0}.contact-calligraphy img{height:125px}}
.story-community{padding:clamp(80px,10vw,130px) 0;background:#f7f5ef}.story-community-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(45px,10vw,150px);align-items:center}.story-community figure{margin:0}.story-community img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.story-community h2{margin:14px 0 24px;color:#173d31;font:400 clamp(36px,4.5vw,62px)/1.14 Georgia,"Noto Serif SC",serif}.story-community p:not(.eyebrow){max-width:540px;color:#56615a;font-size:16px;line-height:1.9}.revival-consultation-inset{padding:clamp(85px,10vw,135px) 0;background:#edf0e9}.revival-consultation-inset>.shell{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(45px,9vw,130px);align-items:center}.revival-consultation-inset figure{margin:0}.revival-consultation-inset img{display:block;width:100%;height:480px;object-fit:cover}.revival-consultation-inset h2{margin:15px 0 25px;color:#173d31;font:400 clamp(36px,4.4vw,58px)/1.14 Georgia,"Noto Serif SC",serif}.revival-consultation-inset p:not(.eyebrow){color:#56615a;font-size:16px;line-height:1.9}.revival-consultation-inset small{display:block;margin-top:25px;padding-top:17px;border-top:1px solid #cbd3ca;color:#6b776f;font-size:12px;line-height:1.6}@media(max-width:800px){.story-community-grid,.revival-consultation-inset>.shell{grid-template-columns:1fr}.story-community img{max-height:450px}.revival-consultation-inset img{height:360px}}@media(max-width:560px){.story-community,.revival-consultation-inset{padding:75px 0}.story-community p:not(.eyebrow),.revival-consultation-inset p:not(.eyebrow){font-size:15px}.revival-consultation-inset img{height:280px}}
/* Keep the contact copy within the site gutter and the treatment subject visible. */
.contact-hero{background-position:58% 36%}
.contact-hero:before{background:linear-gradient(90deg,rgba(12,28,22,.87) 0%,rgba(12,28,22,.72) 28%,rgba(12,28,22,.34) 45%,rgba(12,28,22,.08) 57%,transparent 67%)}
.contact-hero .shell{width:var(--shell);padding-top:clamp(116px,14vw,172px);padding-bottom:clamp(62px,8vw,105px)}
.contact-hero h1{max-width:620px}
@media(max-width:560px){.contact-hero{background-position:62% 35%}.contact-hero:before{background:linear-gradient(90deg,rgba(12,28,22,.82),rgba(12,28,22,.46) 58%,rgba(12,28,22,.12))}.contact-hero .shell{width:var(--shell);padding-top:92px}}

.contact-calligraphy{max-width:450px;aspect-ratio:3/2}
.contact-calligraphy img{height:100%;object-position:center}

.contact-program-downloads{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:860px}.contact-program-download{min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:30px 34px;border:1px solid #c7d0c8;background:#fff;color:#173d31;transition:background .2s,color .2s,border-color .2s}.contact-program-download:hover{border-color:#173d31;background:#173d31;color:#fff}.contact-program-download span{color:#a27e49;font-size:11px;font-weight:bold;letter-spacing:.16em}.contact-program-download strong{margin:17px 0 8px;font:400 27px/1.25 Georgia,"Noto Serif SC",serif}.contact-program-download small{color:#68766d;font-size:11px;letter-spacing:.04em}.contact-program-download:hover small{color:#d2ddd4}@media(max-width:560px){.contact-program-downloads{grid-template-columns:1fr;gap:14px}.contact-program-download{min-height:144px;padding:25px 24px}.contact-program-download strong{font-size:24px}}

.order-success-dialog{width:min(520px,calc(100% - 32px));border:0;border-top:4px solid #b69154;background:#f7f5ef;padding:54px 48px 46px;text-align:center;box-shadow:0 36px 110px rgba(0,0,0,.42)}.order-success-dialog::backdrop{background:rgba(11,28,21,.76);backdrop-filter:blur(7px)}.order-success-dialog[open]{animation:order-success-enter .32s cubic-bezier(.22,1,.36,1)}.order-success-dialog .dialog-close{top:16px;right:19px;color:#617068}.order-success-icon{width:76px;height:76px;margin:auto;border:0;border-radius:50%;background:#183d31;color:#fff;box-shadow:0 0 0 9px #dce6dc,0 13px 25px rgba(21,57,45,.18);font-size:41px;font-weight:300;line-height:1}.order-success-dialog .eyebrow{margin:28px 0 0;color:#8c7041}.order-success-dialog h2{margin:12px 0;color:#173d31;font:400 clamp(36px,4vw,44px)/1.14 Georgia,"Noto Serif SC",serif}.order-success-dialog>p:not(.eyebrow){max-width:350px;margin:0 auto;color:#5d6d63;font-size:15px;line-height:1.8}.order-success-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}.order-success-actions .btn,.order-success-dismiss{min-height:50px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px}.order-success-actions .btn{width:100%;font-size:12px}.order-success-dismiss{border:1px solid #9aa99e;background:transparent;color:#315342;font-size:12px;letter-spacing:.06em;transition:background .2s,color .2s,border-color .2s}.order-success-dismiss:hover{border-color:#173d31;background:#e3eae2;color:#173d31}@keyframes order-success-enter{from{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:540px){.order-success-dialog{padding:48px 24px 30px}.order-success-icon{width:68px;height:68px;font-size:36px}.order-success-dialog .eyebrow{margin-top:25px}.order-success-dialog h2{font-size:34px}.order-success-dialog>p:not(.eyebrow){font-size:14px}.order-success-actions{grid-template-columns:1fr;gap:10px;margin-top:28px}}
.order-success-dialog{width:min(480px,calc(100% - 32px));border:0;border-left:4px solid #b69154;background:#f8f7f2;padding:42px 44px 40px;text-align:left;box-shadow:0 30px 90px rgba(0,0,0,.38)}.order-success-dialog .dialog-close{top:14px;right:17px}.order-success-head{display:flex;align-items:center;gap:19px;padding-right:28px}.order-success-icon{flex:0 0 56px;width:56px;height:56px;margin:0;box-shadow:none;font-size:31px}.order-success-head .eyebrow{margin:0 0 5px;color:#927645;font-size:10px;line-height:1.2}.order-success-head h2{margin:0;color:#173d31;font:400 32px/1.15 Georgia,"Noto Serif SC",serif}.order-success-dialog .order-success-copy{max-width:none;margin:27px 0 29px;color:#607067;font-size:15px;line-height:1.8}.order-success-dialog .order-success-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:0}.order-success-dialog .order-success-actions .btn,.order-success-dialog .order-success-dismiss{box-sizing:border-box;width:100%;min-height:52px;display:flex;align-items:center;justify-content:center;padding:0 12px;font-size:12px;font-weight:bold;letter-spacing:.08em}.order-success-dialog .order-success-dismiss{border:1px solid #84958a;background:transparent;color:#315342}.order-success-dialog .order-success-dismiss:hover{border-color:#173d31;background:#e5ebe4;color:#173d31}@media(max-width:540px){.order-success-dialog{padding:37px 25px 28px}.order-success-head{gap:14px}.order-success-icon{flex-basis:50px;width:50px;height:50px;font-size:28px}.order-success-head h2{font-size:29px}.order-success-dialog .order-success-copy{margin:23px 0 25px;font-size:14px}.order-success-dialog .order-success-actions{grid-template-columns:1fr}}

/* Studio directory based on the supplied location page copy and QR assets. */
.locations-intro{padding:clamp(82px,10vw,135px) 0;background:#f7f5ef}.locations-intro-grid{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(400px,1.1fr);gap:clamp(60px,11vw,160px);align-items:end}.locations-intro h2,.locations-closing h2{margin:0;font:400 clamp(38px,4.8vw,64px)/1.15 Georgia,"Noto Serif SC",serif;color:#173d31}.locations-intro-grid>p{max-width:560px;margin:0;color:#59665e;font-size:16px;line-height:1.9}.studio-directory{padding:0 0 clamp(85px,10vw,135px);background:#f7f5ef}.studio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #c6d0c7;border-left:1px solid #c6d0c7}.studio-grid article{min-height:460px;padding:34px clamp(25px,4vw,54px);border-right:1px solid #c6d0c7;border-bottom:1px solid #c6d0c7;background:#fff}.studio-grid article>span{display:block;color:#a17d47;font:400 14px/1 Georgia,serif}.studio-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:30px 0 20px}.studio-head h3{margin:0;color:#173d31;font:400 clamp(25px,2.6vw,34px)/1.2 Georgia,"Noto Serif SC",serif}.studio-head small{color:#809087;font-size:9px;letter-spacing:.12em;white-space:nowrap}.studio-grid address{min-height:45px;margin:0;color:#58675d;font-size:14px;font-style:normal;line-height:1.7}.studio-phone{display:inline-block;margin-top:16px;border-bottom:1px solid currentColor;color:#173d31;font-size:15px}.studio-actions{display:flex;align-items:center;gap:22px;margin-top:26px}.studio-actions button,.studio-actions a{border:0;border-bottom:1px solid #50665a;background:transparent;padding:0 0 5px;color:#173d31;font-size:11px;letter-spacing:.08em}.studio-note{min-height:40px;margin:25px 0 18px;padding-top:16px;border-top:1px solid #d8dfd8;color:#728078;font-size:11px;line-height:1.7}.studio-qr{display:flex;align-items:flex-start;gap:14px}.studio-qr figure{width:66px;margin:0}.studio-qr img{display:block;width:66px;height:66px;object-fit:contain;background:#fff}.studio-qr figcaption{margin-top:5px;color:#718076;font-size:7px;line-height:1.2;letter-spacing:.05em;text-align:center}.locations-closing{padding:clamp(82px,11vw,145px) 0;background:#183d31;color:#fff}.locations-closing .eyebrow{color:#c7d6cb}.locations-closing h2{max-width:720px;color:#fff}.locations-closing>div>p:not(.eyebrow){max-width:620px;margin:26px 0 32px;color:#cedbd2;font-size:16px;line-height:1.9}.locations-closing .btn{margin-top:0}@media(max-width:800px){.locations-intro-grid{grid-template-columns:1fr;gap:30px}.studio-grid{grid-template-columns:1fr}.studio-grid article{min-height:0}.locations-intro h2{max-width:640px}}@media(max-width:560px){.locations-intro,.studio-directory,.locations-closing{padding-bottom:70px}.locations-intro{padding-top:70px}.studio-grid article{padding:28px 22px}.studio-head{margin-top:24px}.studio-head h3{font-size:27px}.studio-grid address{font-size:13px}.studio-actions{gap:17px}.studio-qr{gap:12px}.studio-qr figure,.studio-qr img{width:60px}.studio-qr img{height:60px}.locations-closing h2{font-size:35px}.locations-closing h2{white-space:nowrap}}
.locations-intro-grid{grid-template-columns:1fr;gap:12px}.locations-intro h2{font-size:clamp(28px,3.5vw,44px);white-space:normal}.locations-intro-grid>p{max-width:720px}@media(max-width:560px){.locations-intro h2{font-size:20px}}
.studio-qr figure{width:84px}.studio-qr img{width:84px;height:84px;cursor:zoom-in}.studio-qr img:focus-visible{outline:2px solid #173d31;outline-offset:3px}.studio-qr-dialog{width:min(470px,calc(100% - 32px));border:0;background:#f7f5ef;padding:52px;box-shadow:0 30px 90px #0007}.studio-qr-dialog::backdrop{background:rgba(14,27,20,.72);backdrop-filter:blur(3px)}.studio-qr-dialog img{display:block;width:100%;height:auto;max-height:min(70vh,500px);object-fit:contain}@media(max-width:560px){.studio-qr figure,.studio-qr img{width:74px}.studio-qr img{height:74px}.studio-qr-dialog{padding:44px 30px}}
.service-menu-reference img{cursor:zoom-in}.service-menu-reference img:focus-visible{outline:2px solid #173d31;outline-offset:4px}.service-menu-dialog{width:min(1120px,calc(100% - 32px));max-height:calc(100vh - 32px);border:0;background:#f7f5ef;padding:clamp(30px,5vw,58px);box-shadow:0 30px 90px #0007;overflow:auto}.service-menu-dialog::backdrop{background:rgba(14,27,20,.72);backdrop-filter:blur(3px)}.service-menu-dialog img{display:block;width:100%;height:auto;max-height:calc(100vh - 148px);object-fit:contain}@media(max-width:560px){.service-menu-dialog{padding:40px 24px}.service-menu-dialog img{max-height:calc(100vh - 120px)}}
.security-settings-page{max-width:1460px}.security-card{margin-top:30px;background:#fff;border:1px solid #dfe5de;padding:34px 38px}.security-card-head p{margin:0 0 12px;color:var(--leaf);font-size:10px;letter-spacing:.24em;font-weight:bold}.security-card-head h2{margin:0;color:#173d31;font:400 34px/1.2 Georgia,"Noto Serif SC",serif}.security-card-head span{display:block;margin-top:10px;color:#78857c;font-size:12px}.security-form{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:16px;align-items:end;margin-top:32px}.security-form label{color:#526159;font-size:10px;font-weight:bold}.security-form input{display:block;width:100%;box-sizing:border-box;margin-top:10px;border:1px solid #cbd5cc;background:#f8faf7;padding:13px 12px;color:var(--ink);font-size:16px;outline:0}.security-form input:focus{border-color:#557866}.security-form small{display:block;margin-top:8px;color:#8a968e;font-weight:400}.security-form .btn{height:48px;white-space:nowrap}.form-status{grid-column:1/-1;margin:0;color:#315342;font-size:12px}.form-status.error{color:#a14f45}.locked-card{margin-top:34px}.security-card-head.inline{display:flex;justify-content:space-between;align-items:flex-start}.table-action{border:1px solid #b5c5b8;background:#f5f8f4;color:#315342;padding:7px 12px;font-size:10px}.table-action:hover{background:#e6eee8}@media(max-width:1000px){.security-form{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.security-card{padding:24px 18px}.security-card-head h2{font-size:28px}.security-form{grid-template-columns:1fr 1fr;gap:18px 12px}.security-form .btn{grid-column:1/-1;width:100%}.security-card-head.inline{gap:16px}}
.security-form .btn{align-self:start;margin-top:27px}

.shipment-dialog label{display:block;margin-top:18px;color:#637067;font-size:10px;font-weight:bold;letter-spacing:.05em}.shipment-dialog input{display:block;width:100%;margin-top:7px;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:10px 0;color:var(--ink);font-size:14px;outline:0}.shipment-dialog input:focus{border-color:var(--green)}.shipment-note{margin:20px 0;color:#69756d;font-size:11px;line-height:1.7}.shipment-dialog .btn{margin-top:0}
.admin-page .admin-sidebar nav,.admin-page .admin-sidebar .admin-profile{visibility:visible}.admin-topbar-actions{display:flex;align-items:center;gap:24px;margin-left:auto}.admin-topbar-actions>a{font-size:10px;color:var(--leaf);border-bottom:1px solid var(--leaf);padding-bottom:4px}@media(max-width:800px){.admin-topbar-actions>a{display:none}.admin-topbar-actions{margin-left:auto}}@media(max-width:600px){.admin-topbar-actions{margin-right:0}}
/* Booking has been retired; keep consultation and contact flows available. */
[data-open-booking],[data-open-service],.booking-dialog{display:none!important}

/* Use the supplied textured background directly on existing green surfaces. */
:is(.account-brand,.story-visual,.revival,.story-system,.grey-story,.revival-system,.revival-cta,.contact,.contact-partner,.locations-closing,.terms-hero,.service-visual-story,.service-visual-grid figure,.revival-hero,footer,.hair-black,.care-tone-3,.admin-sidebar,.member-sidebar,.profile-editor-mark,.ritual,.partnership,.revival-wide-figure,.revival-formula,.revival-compare-table thead th,.revival-hero-compare){background-image:url('/static/images/images/bg.webp');background-size:cover;background-position:center;background-repeat:repeat}

/* Keep the supplied texture, but let the existing deep tones control its intensity. */
:is(.story-visual,.revival,.story-system,.grey-story,.revival-system,.revival-cta,.contact,.contact-partner,.locations-closing,.terms-hero,.service-visual-story,.service-visual-grid figure,.revival-hero,footer,.hair-black,.care-tone-3,.admin-sidebar,.member-sidebar,.profile-editor-mark,.ritual,.partnership,.revival-wide-figure,.revival-formula,.revival-compare-table thead th,.revival-hero-compare){background-blend-mode:multiply}
.account-page .account-brand{background-image:url('/static/images/images/bg.webp');background-size:cover;background-position:center;background-repeat:no-repeat;background-blend-mode:normal}
.home-page footer,footer{background-color:#111915;background-blend-mode:multiply}
@media(max-width:900px){.account-page .account-brand{display:block;min-height:300px;padding:8vh 12vw}}

/* Apply the final account texture in the first paint to avoid a dark-green flash while the image loads. */
.account-page .account-brand{background-color:#147b29;background-image:url('/static/images/images/bg.webp');background-size:cover;background-position:center;background-repeat:no-repeat}

/* Keep the subject centered when the portrait is cropped into the story panel. */
.home-page .story-visual>img{object-position:right center}

/* Place the Gray Hair Rescue introduction in the open upper-right area of the comparison image. */
.home-page .revival-hero-compare .revival-hero-copy{z-index:10;left:auto;right:6%;top:13%;transform:none;width:min(430px,34%);text-align:left;color:#173d31;mix-blend-mode:normal}
.home-page .revival-hero-copy .eyebrow{margin:0 0 12px;color:#68766e;font-size:9px;letter-spacing:.22em}
.home-page .revival-hero-copy h1{margin:0;font:400 clamp(26px,2.4vw,38px)/1.28 Georgia,"Noto Serif SC",serif;letter-spacing:0}
.home-page .revival-hero-copy>p:last-child{max-width:390px;margin:14px 0 0;color:#53645c;font-size:12px;line-height:1.7}
@media(max-width:700px){.home-page .revival-hero-compare .revival-hero-copy{right:5%;top:9%;width:46%;text-align:left}.home-page .revival-hero-copy .eyebrow{margin-bottom:8px;font-size:7px}.home-page .revival-hero-copy h1{font-size:23px}.home-page .revival-hero-copy>p:last-child{margin-top:10px;font-size:10px;line-height:1.55}}
@media(max-width:540px){.home-page .revival-hero-compare .revival-hero-copy{right:4%;top:3%;width:54%;box-sizing:border-box;padding:0;background:transparent}.home-page .revival-hero-copy .eyebrow{font-size:7px}.home-page .revival-hero-copy h1{font-size:20px;text-shadow:0 1px 10px rgba(247,245,239,.9)}.home-page .revival-hero-copy>p:last-child{display:block;font-size:9px;line-height:1.5;text-shadow:0 1px 8px rgba(247,245,239,.9)}}

/* Pair the origin-care explanation with its follicle illustration. */
.revival-intro-grid{grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:clamp(48px,7vw,110px);align-items:center}
.revival-intro-copy{min-width:0}.revival-intro-copy .revival-heading{position:static;margin-bottom:clamp(32px,4vw,54px)}
.revival-intro-copy .revival-heading h2{max-width:560px}.revival-intro-copy .revival-narrative{max-width:620px}
.revival-intro .revival-intro-figure{display:grid;grid-template-rows:minmax(0,1fr) auto;align-self:stretch;height:clamp(500px,45vw,650px);background:#efd1a8;background-image:none;background-blend-mode:normal}
.revival-intro .revival-intro-figure img{width:100%;height:100%;min-height:0;object-fit:contain;object-position:center}
.revival-intro .revival-intro-figure figcaption{padding:18px 22px;background:#111915;color:#cbd7ce;font-size:11px;line-height:1.5}.revival-intro .revival-intro-figure figcaption span{margin-right:14px;color:#b89a63}
@media(max-width:900px){.revival-intro-grid{grid-template-columns:1fr;gap:48px}.revival-intro .revival-intro-figure{width:100%;height:clamp(390px,70vw,560px);max-width:680px}.revival-intro-copy .revival-heading{margin-bottom:28px}}
@media(max-width:620px){.revival-intro .revival-intro-figure{height:clamp(330px,86vw,430px)}.revival-intro .revival-intro-figure figcaption{padding:14px 16px;font-size:10px}}

/* Keep desktop consultation columns from overriding the phone layout. */
@media(min-width:801px){.revival-consultation-inset>.shell{grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px)}}
.revival-consultation-inset h2{font-size:clamp(36px,3.8vw,52px);line-height:1.2}
@media(max-width:800px){
  .revival-consultation-inset>.shell{grid-template-columns:minmax(0,1fr);gap:28px}
  .revival-consultation-inset>.shell>div{min-width:0}
  .revival-consultation-inset img{height:auto}
  .revival-consultation-inset h2{font-size:clamp(26px,7vw,32px);line-height:1.25;overflow-wrap:break-word}
}

/* Keep the formula story in the same left-copy, right-visual rhythm. */
@media(min-width:901px){.revival-formula{padding:clamp(42px,5vw,76px) 0}.revival-formula-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,8vw,130px);max-width:none;align-items:center}.revival-formula-grid>div{grid-column:1;grid-row:1;max-width:560px;margin:0;padding:0}.revival-formula-grid>figure{grid-column:2;grid-row:1;min-height:0;height:clamp(460px,42vw,620px);margin:0;background:#efd1a8}.revival-formula-grid>figure img{width:100%;height:100%;object-fit:contain}}

/* The second Gray Hair Rescue reading block carries its supporting botanical image. */
.revival-system-grid-with-image{align-items:center}.revival-system-grid-with-image .revival-system-copy>p:not(.eyebrow){margin:0 0 20px}.revival-system-grid-with-image .revival-system-figure{display:grid;grid-template-rows:minmax(0,1fr) auto;align-self:stretch;min-height:480px;margin:0;overflow:hidden;background:#10261d}.revival-system-figure img{display:block;width:100%;height:100%;object-fit:cover}.revival-system-figure figcaption{padding:18px 22px;background:#111915;color:#cbd7ce;font-size:11px;line-height:1.5}.revival-system-figure figcaption span{margin-right:14px;color:#b89a63}.revival-system-grid-with-image .revival-steps{grid-column:1/-1;margin-top:clamp(22px,3vw,42px)}
@media(max-width:900px){.revival-system-grid-with-image .revival-system-figure{width:100%;max-width:680px;min-height:0;height:clamp(390px,70vw,560px)}.revival-system-grid-with-image .revival-steps{margin-top:0}}
@media(max-width:620px){.revival-system-grid-with-image .revival-system-figure{height:clamp(330px,86vw,430px)}.revival-system-figure figcaption{padding:14px 16px;font-size:10px}}

/* Ingredient reference supplied with the Gray Hair Rescue copy. */
.revival-ingredients{padding:clamp(72px,9vw,122px) 0;background:#e9ede6}.revival-ingredients-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(28px,5vw,76px);align-items:start;margin-bottom:clamp(36px,5vw,64px)}.revival-ingredients-head .eyebrow{margin:0}.revival-ingredients-head>p:last-child{max-width:650px;margin:0;color:#56615a;font-size:15px;line-height:1.85}.revival-ingredients-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.2vw,32px)}.revival-ingredients-grid figure{margin:0;padding:clamp(18px,2vw,28px);background:#f7f5ef;border-top:1px solid #c8d1c7}.revival-ingredients-grid img{display:block;width:100%;aspect-ratio:1;object-fit:contain}.revival-ingredients-grid figcaption{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:7px 14px;margin-top:14px;padding-top:15px;border-top:1px solid #d4ddd2;color:#526158}.revival-ingredients-grid strong{font:400 20px/1.3 Georgia,"Noto Serif SC",serif;color:#173d31}.revival-ingredients-grid span{font-size:10px;letter-spacing:.06em}.revival-ingredients-note{max-width:650px;margin:clamp(26px,3vw,40px) 0 0;color:#6b776f;font-size:12px;line-height:1.75}
@media(max-width:800px){.revival-ingredients-head{grid-template-columns:1fr;gap:18px}.revival-ingredients-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.revival-ingredients-grid figure{padding:14px}.revival-ingredients-grid strong{font-size:17px}.revival-ingredients-grid figcaption{display:block}.revival-ingredients-grid span{display:block;margin-top:5px;line-height:1.4}}
@media(max-width:620px){.revival-ingredients{padding:72px 0}.revival-ingredients-head>p:last-child{font-size:15px}.revival-ingredients-grid{grid-template-columns:1fr;gap:16px}.revival-ingredients-grid figure{display:grid;grid-template-columns:118px 1fr;gap:18px;align-items:center;padding:16px}.revival-ingredients-grid img{grid-row:1 / span 2}.revival-ingredients-grid figcaption{margin:0;padding:0;border:0}.revival-ingredients-note{margin-top:25px}}

/* Supporting care options from the supplied Strength & Strand Care copy. */
.revival-strength{padding:clamp(78px,10vw,132px) 0;background:#f7f5ef}.revival-strength-head{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(28px,5vw,76px);align-items:start;margin-bottom:clamp(38px,5vw,66px)}.revival-strength-head .eyebrow{margin:0}.revival-strength-head>p:last-child{max-width:650px;margin:0;color:#56615a;font-size:15px;line-height:1.85}.revival-strength-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,4vw,56px)}.revival-strength-grid article{min-width:0;border-top:1px solid #c8d1c7}.revival-strength-grid figure{margin:0;background:#efd1a8}.revival-strength-grid img{display:block;width:100%;aspect-ratio:1.25;object-fit:contain}.revival-strength-grid article>div{padding-top:25px}.revival-strength-grid h3{margin:11px 0 18px;color:#173d31;font:400 clamp(26px,2.5vw,34px)/1.25 Georgia,"Noto Serif SC",serif}.revival-strength-grid article>div>p:not(.eyebrow){margin:0;color:#56615a;font-size:15px;line-height:1.9}.revival-strength-grid .revival-strength-note{margin-top:16px;padding-top:16px;border-top:1px solid #d1d9d0;color:#6a766e;font-size:13px;line-height:1.75}
@media(max-width:800px){.revival-strength-head{grid-template-columns:1fr;gap:18px}.revival-strength-grid{gap:28px}.revival-strength-grid img{aspect-ratio:1.15}.revival-strength-grid h3{font-size:27px}}
@media(max-width:620px){.revival-strength{padding:72px 0}.revival-strength-grid{grid-template-columns:1fr;gap:40px}.revival-strength-grid img{aspect-ratio:1.28}.revival-strength-grid article>div{padding-top:20px}.revival-strength-grid article>div>p:not(.eyebrow){font-size:15px}}

/* Service menu follows the supplied grouped treatment guide. */
.service-menu-hero{min-height:clamp(500px,64vh,680px)}.service-menu-intro{padding:clamp(82px,10vw,135px) 0;background:#f7f5ef}.service-menu-intro .shell{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(400px,1.15fr);gap:clamp(45px,9vw,140px);align-items:end}.service-menu-intro .eyebrow{grid-column:1}.service-menu-intro h2{grid-column:1;margin:0;color:#173d31;font:400 clamp(38px,4.7vw,62px)/1.16 Georgia,"Noto Serif SC",serif}.service-menu-intro>div>p:last-child{grid-column:2;grid-row:1 / span 2;max-width:580px;margin:0;color:#56615a;font-size:16px;line-height:1.9}.service-menu-category{padding:clamp(82px,10vw,138px) 0;background:#e9ede6}.service-menu-category-dark{background:#183d31;color:#fff}.service-menu-category-head{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(380px,1.15fr);gap:clamp(25px,4vw,65px);align-items:end;margin-bottom:clamp(40px,5vw,70px)}.service-menu-category-head .eyebrow{grid-column:1;margin:0}.service-menu-category-head h2{grid-column:1;margin:14px 0 0;color:#173d31;font:400 clamp(38px,4.6vw,60px)/1.15 Georgia,"Noto Serif SC",serif}.service-menu-category-head>p:last-child{grid-column:2;grid-row:1 / span 2;max-width:570px;margin:0;color:#59675e;font-size:16px;line-height:1.9}.service-menu-category-dark .service-menu-category-head h2{color:#fff}.service-menu-category-dark .service-menu-category-head>p:last-child{color:#cbd8cf}.service-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,2.4vw,38px)}.service-menu-card{display:flex;flex-direction:column;min-width:0;background:#fff;color:#173d31}.service-menu-card figure{margin:0;aspect-ratio:3/4;overflow:hidden;background:#dfe4dc}.service-menu-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.service-menu-card:hover img{transform:scale(1.07)}.service-menu-card>div{display:flex;flex:1;flex-direction:column;padding:24px 24px 27px}.service-menu-card h3{margin:0;color:#173d31;font:400 25px/1.25 Georgia,"Noto Serif SC",serif}.service-card-meta{display:flex;justify-content:space-between;gap:16px;margin:19px 0 7px;color:#5e6e63;font-size:12px;letter-spacing:.04em}.service-card-meta b{color:#173d31;font:400 17px Georgia,serif}.service-card-price{margin:0 0 17px;padding-bottom:15px;border-bottom:1px solid #d8e0d8;color:#897048;font-size:11px;letter-spacing:.04em}.service-menu-card>div>p:last-child{margin:0;color:#5b685f;font-size:13px;line-height:1.8}.service-menu-category-dark .service-menu-card{background:#f4f4ed}.service-menu-category-dark .service-menu-card figure{background:#d9cba8}@media(max-width:950px){.service-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-menu-intro .shell,.service-menu-category-head{grid-template-columns:1fr;gap:20px}.service-menu-intro h2,.service-menu-category-head h2{grid-column:auto}.service-menu-intro>div>p:last-child,.service-menu-category-head>p:last-child{grid-column:auto;grid-row:auto;max-width:660px}}@media(max-width:620px){.service-menu-intro,.service-menu-category{padding:72px 0}.service-menu-intro h2,.service-menu-category-head h2{font-size:35px}.service-menu-intro>div>p:last-child,.service-menu-category-head>p:last-child{font-size:15px}.service-menu-grid{grid-template-columns:1fr;gap:24px}.service-menu-card figure{aspect-ratio:4/5}.service-menu-card>div{padding:22px}.service-menu-card h3{font-size:24px}}

/* The service-menu introduction is a compact vertical reading block. */
.service-menu-intro .shell{display:block;max-width:880px}.service-menu-intro .eyebrow{margin:0 0 18px}.service-menu-intro h2{max-width:760px;margin:0;color:#173d31;font-size:clamp(38px,4vw,54px);line-height:1.16}.service-menu-intro .service-menu-summary{max-width:680px;margin:22px 0 0;color:#56615a;font-size:16px;line-height:1.9}.service-menu-overview{width:min(1100px,calc(100vw - 80px));margin:clamp(42px,6vw,72px) 0 0 50%;transform:translateX(-50%)}.service-menu-overview img{display:block;width:100%;height:auto;cursor:zoom-in}.service-menu-overview img:focus-visible{outline:2px solid #173d31;outline-offset:5px}
@media(max-width:620px){.service-menu-intro h2{font-size:35px}.service-menu-intro .service-menu-summary{font-size:15px}.service-menu-overview{width:calc(100vw - 36px);margin-top:36px}}

/* The locations directory opens directly with the studio introduction. */
.locations-hero{display:none}

/* The replacement group portrait is square; keep all faces visible in the tall stage. */
.home-page #seriesImage[src$="community-hair-portrait.png"]{object-fit:contain;background:#d9ddd6}

/* Product packshots retain their source transparency and are never cropped. */
#products .store-products .store-product-image,.admin-product-image{background:transparent}
#products .store-products .store-product-image>img,.admin-product-image img{display:block;width:100%;height:100%;object-fit:contain;background:transparent;padding:10px}
.admin-product-image img.is-fallback,.store-product-image img.is-fallback{object-fit:contain;background:transparent;padding:10px}

/* Use the source portrait ratio so the bottom of each product remains visible. */
#products .store-products .store-product-image{height:auto;min-height:0;aspect-ratio:2/3;overflow:visible}
#products .store-products .store-product-image>img{width:auto;height:auto;max-width:100%;max-height:100%}

/* Compact product cards with a full-bleed hover image on pointer devices. */
#products .store-products .store-product-image{height:clamp(280px,28vw,360px);aspect-ratio:auto;overflow:hidden;isolation:isolate}
#products .store-products .store-product-image::before{content:"";position:absolute;inset:0;z-index:0;background:var(--product-hover-image) center/cover no-repeat;opacity:0;transform:scale(1.04);transition:opacity .32s ease,transform .5s ease}
#products .store-products .store-product-image>img{position:relative;z-index:1;transition:opacity .28s ease,transform .5s ease}
#products .store-products .store-product-image>span{z-index:2}
@media(hover:hover) and (pointer:fine){#products .store-products .store-product-image:hover::before{opacity:1;transform:scale(1)}#products .store-products .store-product-image:hover>img{opacity:0;transform:scale(.96)}}
@media(max-width:540px){#products .store-products .store-product-image{height:280px}}

/* Hover artwork uses a dedicated product-care visual while the packshot stays fully visible at rest. */
#products .store-products .store-product-image::before{background-color:#334239;background-image:linear-gradient(180deg,rgba(16,29,23,.12),rgba(16,29,23,.28)),var(--product-hover-image);background-position:center;background-size:cover;background-repeat:no-repeat}
@media(hover:hover) and (pointer:fine){#products .store-products article:hover .store-product-image>span{color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.45)}}

/* The resting packshot always fits inside the card; only the hover artwork fills its background. */
#products .store-products .store-product-image>img{position:absolute;inset:16px;width:calc(100% - 32px)!important;height:calc(100% - 32px)!important;max-width:none;max-height:none;box-sizing:border-box;padding:0;object-fit:contain}
@media(max-width:540px){#products .store-products .store-product-image>img{inset:12px;width:calc(100% - 24px)!important;height:calc(100% - 24px)!important}}

/* Admin-uploaded products may only have one image. Give them the same polished interaction without hiding the packshot. */
#products .store-products .store-product-image.is-generic-hover::before{background-image:linear-gradient(135deg,rgba(255,255,255,.28),rgba(22,61,49,.2)),var(--product-hover-image);background-size:cover;background-position:center;filter:saturate(.85) blur(2px)}
#products .store-products .store-product-image.is-generic-hover::after{content:"";position:absolute;inset:-35% -15%;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.34) 48%,transparent 61%);opacity:0;transform:translateX(-45%) rotate(8deg);transition:opacity .25s ease,transform .7s ease}
#products .store-products .store-product-image.is-generic-hover>img{z-index:2;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
@media(hover:hover) and (pointer:fine){#products .store-products .store-product-image.is-generic-hover:hover::before{opacity:.72;transform:scale(1.08)}#products .store-products .store-product-image.is-generic-hover:hover::after{opacity:1;transform:translateX(45%) rotate(8deg)}#products .store-products .store-product-image.is-generic-hover:hover>img{opacity:1;transform:scale(1.07);filter:drop-shadow(0 18px 18px rgba(15,38,29,.22))}}

/* Homepage studio directory: navigate by city, then scan the selected studio details. */
.home-studio-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:42px;border-top:1px solid #cbd5cc;border-left:1px solid #cbd5cc}.home-studio-nav a{min-height:68px;display:flex;align-items:center;padding:15px 20px;border-right:1px solid #cbd5cc;border-bottom:1px solid #cbd5cc;background:#f7f5ef;font:400 18px Georgia,serif;transition:background .2s,color .2s}.home-studio-nav a:hover{background:#183d31;color:#fff}.home-studio-directory{display:grid;gap:32px;margin-top:38px}.locations-home-studio-directory{margin-top:0}.home-studio{scroll-margin-top:112px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);border:1px solid #cbd5cc;background:#fff}.home-studio-image{min-height:430px;margin:0;background:#dfe5de;overflow:hidden}.home-studio-image img{display:block;width:100%;height:100%;object-fit:cover}.home-studio-content{padding:42px clamp(28px,4vw,58px);display:flex;flex-direction:column;align-items:flex-start}.home-studio-content>span{color:#9b7744;font-size:10px;letter-spacing:.16em}.home-studio-content h3{margin:24px 0 17px;color:#173d31;font:400 clamp(30px,3vw,43px)/1.1 Georgia,"Noto Serif SC",serif}.home-studio-content address{margin:0;color:#5d6a62;font-size:14px;font-style:normal;line-height:1.8}.home-studio-phone{margin-top:16px;border-bottom:1px solid #173d31;color:#173d31;font:400 18px Georgia,serif}.home-studio-actions{margin:22px 0 25px}.home-studio-actions a{display:inline-block;border-bottom:1px solid #52655a;color:#314d3f;padding-bottom:4px;font-size:11px;letter-spacing:.1em}.home-studio-qr{display:flex;flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:22px;border-top:1px solid #d9e0d9;width:100%}.home-studio-qr figure{width:78px;margin:0}.home-studio-qr img{display:block;width:78px;height:78px;object-fit:contain;background:#fff}.home-studio-qr figcaption{margin-top:7px;color:#63736a;font-size:8px;letter-spacing:.08em;text-align:center}
@media(max-width:700px){.home-studio-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:30px}.home-studio-nav a{min-height:58px;padding:12px 14px;font-size:16px}.home-studio{grid-template-columns:1fr}.home-studio-image{min-height:280px}.home-studio-content{padding:30px 22px}.home-studio-content h3{font-size:31px}.home-studio-qr figure,.home-studio-qr img{width:68px}.home-studio-qr img{height:68px}}
.home-studio-qr figcaption{font-size:10px;letter-spacing:.06em}
.home-studio-qr figcaption{font-size:14px;font-weight:600;letter-spacing:0;line-height:1.3;white-space:nowrap}

/* The city navigation switches one studio detail panel at a time. */
.home-studio-nav button{min-height:68px;display:flex;align-items:center;border:0;border-right:1px solid #cbd5cc;border-bottom:1px solid #cbd5cc;background:#f7f5ef;padding:15px 20px;color:#17201c;text-align:left;font:400 18px Georgia,serif;transition:background .2s,color .2s}.home-studio-nav button:hover,.home-studio-nav button.active{background:#183d31;color:#fff}.home-studio[hidden]{display:none}
@media(max-width:700px){.home-studio-nav button{min-height:58px;padding:12px 14px;font-size:16px}}

/* Homepage cards open the corresponding product on the catalog page. */
.home-page .store-products article{cursor:pointer}.home-page .store-products article button{cursor:pointer}

/* Brand story follows the supplied editorial reference: an image-led opening, then concise themed chapters. */
.story-intro{padding:clamp(82px,9vw,132px) 0;background:#f7f5ef;color:#173d31}
.story-intro .story-prose{max-width:none;padding:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);column-gap:clamp(48px,8vw,128px);align-items:center;align-content:center}
.story-intro .story-prose:before{content:"";grid-column:1;grid-row:1 / span 5;align-self:start;width:100%;height:480px;min-height:0;background:url('/static/images/images/salon-care-consultation.jpg') center/cover no-repeat}
.story-intro .story-prose>.eyebrow,.story-intro .story-prose>h2{display:none}
.story-intro .story-prose>p{grid-column:2;max-width:100%;margin-bottom:20px;color:#56615a;font-size:16px;line-height:1.88}

.story-system{padding:clamp(88px,10vw,145px) 0;background:#f7f5ef!important;background-image:none!important;background-blend-mode:normal!important;color:#173d31}.story-system-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(50px,10vw,165px)}.story-system .eyebrow{color:#8a6940}.story-system h2{color:#173d31}.story-system p:not(.eyebrow){max-width:600px;color:#56615a;font-size:16px;line-height:1.95}

/* Remove the research-lab image but retain its editorial caption and the two supporting visuals. */
.story-evidence{padding:clamp(72px,9vw,120px) 0;background:#e7ece5}.story-evidence-grid{display:block;background:transparent}.story-evidence-feature{display:block;background:transparent!important}.story-evidence-feature img{display:none}.story-evidence-feature figcaption{max-width:720px;margin:0 auto 42px;padding:0;background:transparent;color:#173d31}.story-evidence-feature figcaption strong{font-size:clamp(28px,3.1vw,44px);line-height:1.25}.story-evidence-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:none;gap:clamp(20px,3vw,42px);max-width:980px;margin:0 auto}.story-evidence-side figure{background:transparent}.story-evidence-side img{min-height:360px}.story-evidence-side figcaption{padding:16px 0 0;color:#42554a;font-size:12px;letter-spacing:.08em}

.inner-page main>.section:has(.story-signoff){padding:clamp(84px,10vw,140px) 0;background:#f7f5ef}.inner-page main>.section:has(.story-signoff) .story-prose{max-width:780px}.inner-page main>.section:has(.story-signoff) .story-prose>p:first-child{font-size:clamp(20px,2.2vw,28px);line-height:1.75;color:#314a3d}.inner-page main>.section:has(.story-signoff) blockquote{border-color:#b9c6bb}
.story-values{background:#e7ece5;background-image:none}.value-grid{border-left:1px solid rgba(23,61,49,.18)}.value-grid article{min-height:460px;border-color:rgba(23,61,49,.18)}.value-grid .eyebrow{color:#8a6940}.value-grid h2{color:#173d31}.value-grid p:not(.eyebrow){color:#56615a}
.grey-story{padding:clamp(88px,10vw,145px) 0;background:#f7f5ef;color:#173d31;background-image:none}.grey-story .eyebrow{color:#8a6940}.grey-story h2{color:#173d31}.grey-story p{color:#56615a}.grey-story blockquote{border-color:#bcc8be;color:#173d31}.grey-story .btn-light{background:#183d31;color:#fff}.grey-story .btn:hover{background:#2d5847;color:#fff}
@media(max-width:700px){.story-intro{padding:70px 0}.story-intro .story-prose{display:block}.story-intro .story-prose:before{display:block;min-height:0;height:clamp(260px,72vw,360px);margin-bottom:38px}.story-intro .story-prose>p{font-size:15px}.story-system{padding:76px 0}.story-evidence{padding:70px 0}.story-evidence-feature figcaption{margin-bottom:30px}.story-evidence-feature figcaption strong{font-size:28px}.story-evidence-side{grid-template-columns:1fr;gap:34px}.story-evidence-side img{min-height:280px}.inner-page main>.section:has(.story-signoff){padding:76px 0}.value-grid article{min-height:0}.grey-story{padding:76px 0}}

/* Research visuals and their original copy are paired as editorial rows. */
.story-research-pairs{padding:clamp(85px,10vw,145px) 0;background:#f7f5ef}.story-research-pairs .shell{display:grid;gap:clamp(82px,10vw,145px)}.story-research-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(50px,9vw,145px);align-items:center}.story-research-pair figure{margin:0}.story-research-pair figure img{display:block;width:100%;height:440px;object-fit:cover}.story-research-pair figure figcaption{margin-top:14px;color:#65746a;font-size:11px;letter-spacing:.08em}.story-research-pair .story-prose{max-width:580px;padding:0}.story-research-pair .story-prose>p:first-child{font-size:clamp(20px,2.1vw,27px);line-height:1.75;color:#314a3d}.story-research-pair .story-prose blockquote{margin:38px 0 18px;border-color:#b9c6bb}.story-research-caption{max-width:500px}.story-research-caption figcaption{display:flex;align-items:center;gap:18px;margin:0;color:#173d31}.story-research-caption figcaption span{color:#a17a42;font-size:12px;letter-spacing:.16em}.story-research-caption figcaption strong{font:400 clamp(28px,3vw,43px)/1.25 Georgia,"Noto Serif SC",serif}.story-research-pair-reverse figure{grid-column:2;grid-row:1}.story-research-pair-reverse .story-research-caption{grid-column:1;grid-row:1}@media(max-width:700px){.story-research-pairs{padding:72px 0}.story-research-pairs .shell{gap:72px}.story-research-pair{grid-template-columns:1fr;gap:28px}.story-research-pair figure img{height:300px}.story-research-pair-reverse figure,.story-research-pair-reverse .story-research-caption{grid-column:auto;grid-row:auto}.story-research-pair-reverse .story-research-caption{order:2}.story-research-pair .story-prose>p:first-child{font-size:20px}.story-research-caption figcaption strong{font-size:29px}}
.home-page .hero{background-image:none}

/* Keep every admin sidebar aligned to the viewport, regardless of page content height. */
.admin-page{display:block}
.admin-sidebar{position:fixed;inset:0 auto 0 0;width:250px;height:100vh;min-height:0;box-sizing:border-box;z-index:30}
.admin-main{margin-left:250px;min-width:0}
@media(max-width:800px){.admin-sidebar{left:-250px;right:auto;bottom:0;transition:left .25s}.admin-menu-open .admin-sidebar{left:0}.admin-main{margin-left:0}}
.bundle-manager{margin:44px 0 18px;padding:28px 30px;background:#fff;border:1px solid #e1e5df}.bundle-manager h2{margin:0;font:400 30px/1.2 Georgia,"Noto Serif SC",serif;color:#173d31}.bundle-manager-copy{margin:8px 0 24px;color:#7b877f;font-size:12px}.bundle-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 20px}.bundle-form label{font-size:10px;font-weight:bold;color:#69756d}.bundle-form input,.bundle-form textarea,.bundle-form select{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:9px 0;outline:0}.bundle-form fieldset{grid-column:1/-1;border:1px solid #d7dfd8;padding:14px}.bundle-form legend{padding:0 6px;color:#69756d;font-size:10px;font-weight:bold}.bundle-product-options{display:flex;flex-wrap:wrap;gap:10px 20px}.bundle-product-options label{font-weight:400}.bundle-form .btn{justify-self:start}.bundle-cancel{border:0;border-bottom:1px solid #83948a;background:none;color:#315342;font-size:11px;justify-self:start}.bundle-form-status{grid-column:1/-1;margin:0;color:#315342;font-size:11px}.bundle-list{margin-top:26px;border-top:1px solid var(--line)}.bundle-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:20px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.bundle-list strong,.bundle-list small,.bundle-list p{display:block}.bundle-list small,.bundle-list p{color:#7d8880;font-size:10px;margin:2px 0 0}.bundle-list em{font-style:normal;color:#476b50;font-size:10px}.bundle-list button{border:0;border-bottom:1px solid #476b50;background:none;color:#315342;font-size:10px;padding:4px}.store-bundles{margin-top:72px;padding-top:46px;border-top:1px solid var(--line)}.store-bundles h2{margin:0 0 25px;font:400 38px/1.2 Georgia,"Noto Serif SC",serif;color:#173d31}.store-bundle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.store-bundle-card{display:grid;grid-template-columns:38% 62%;background:#fff;border:1px solid #e0e5df}.store-bundle-image{min-height:260px;background:#e2e8e0;display:grid;place-items:center;overflow:hidden}.store-bundle-image img{width:100%;height:100%;object-fit:cover}.store-bundle-image span{font:400 22px Georgia,serif;color:#78907f;letter-spacing:.18em}.store-bundle-copy{padding:25px 24px;display:flex;flex-direction:column}.store-bundle-copy>small{font-size:8px;letter-spacing:.16em;color:var(--leaf)}.store-bundle-copy h3{margin:12px 0 8px;font:400 25px/1.25 Georgia,"Noto Serif SC",serif;color:#173d31}.store-bundle-copy>p{margin:0;color:#6c7970;font-size:12px;line-height:1.7}.store-bundle-items{display:flex;flex-wrap:wrap;gap:5px;margin-top:16px}.store-bundle-items span{padding:4px 7px;background:#eef2ed;color:#587064;font-size:9px}.store-bundle-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:22px}.store-bundle-foot strong{font:400 23px Georgia,serif;color:#173d31}.store-bundle-foot .btn{padding:0 13px;min-height:42px;font-size:10px}@media(max-width:850px){.store-bundle-grid{grid-template-columns:1fr}}@media(max-width:540px){.bundle-form{grid-template-columns:1fr}.store-bundle-card{grid-template-columns:1fr}.store-bundle-image{min-height:190px}.store-bundles h2{font-size:31px}}

.cart-toast{position:fixed;z-index:40;top:104px;right:24px;max-width:min(360px,calc(100vw - 36px));padding:15px 20px;border:1px solid rgba(255,255,255,.18);background:var(--green,#163d31);color:#fff;font-size:11px;line-height:1.5;letter-spacing:.04em;box-shadow:0 14px 34px rgba(17,40,32,.22);opacity:0;pointer-events:none;transform:translate3d(24px,0,0);transition:opacity .35s ease,transform .35s ease}.cart-toast.is-visible{opacity:1;transform:translate3d(0,0,0)}@media(max-width:540px){.cart-toast{top:84px;right:18px;max-width:calc(100vw - 36px);padding:13px 16px}}@media(prefers-reduced-motion:reduce){.cart-toast{transition:none}}
.bundle-manager>.bundle-form{display:grid}.bundle-manager .bundle-image-upload~.bundle-image-upload{display:none}.bundle-manager .bundle-form>label:nth-of-type(6){display:none}.bundle-dialog{width:min(720px,calc(100% - 30px));border:0;background:#f7f5ef;padding:34px;box-shadow:0 30px 90px #0007}.bundle-dialog::backdrop{background:#122f2688}.bundle-dialog .bundle-form{display:grid}
.bundle-form label:has(input[name="price"])~label:has(input[name="price"]){display:none!important}.bundle-form input.bundle-image-upload+input.bundle-image-upload{display:none!important}
.bundle-manager .bundle-form>label:nth-of-type(5) input[type=file]{display:none}.bundle-manager .bundle-form>label:nth-of-type(6){display:none}.bundle-manager .bundle-form>label:nth-of-type(7){display:none}

/* Shared material palette: supplied paper grain for light surfaces and botanical green texture for dark bands. */
:root{--texture-paper:url('/static/images/images/bg2.webp');--texture-green:url('/static/images/images/bg.webp');--paper-grain:#f5f0e4;--paper-grain-alt:#ece4d1;--green-grain:#173d31}
body{background-color:var(--paper-grain);background-image:var(--texture-paper);background-size:520px auto;background-repeat:repeat}
:is(.site-header,.story,.section,.product,.location,.story-intro,.story-values,.terms-content,.contact-intro,.contact-form-section,.contact-program,.locations-intro,.studio-directory,.service-menu-intro,.service-menu-category,.service-menu-reference,.product-editorial,.story-community,.revival-intro,.revival-comparison,.revival-audience,.revival-ingredients,.revival-strength,.revival-consultation-inset,.account-page,.member-page,.admin-main){background-color:var(--paper-grain);background-image:var(--texture-paper);background-size:520px auto;background-repeat:repeat;background-blend-mode:normal}
:is(.service-browser,.service-series,.service-list,.home-studio,.service-menu-card,.service-menu-overview,.service-menu-reference,.program-tab,.program-detail,.care-picker,.store-products article,.store-bundle-card,.bundle-manager,.security-card,.users-panel,.product-dialog,.cart-panel,.payment-dialog,.booking-dialog,.captcha-dialog,.bundle-dialog,.order-success-dialog,.revival-ingredients-grid figure,.revival-strength-grid figure,.revival-audience-grid article,.contact-program-download){background-color:#faf6ed;background-image:var(--texture-paper);background-size:390px auto;background-repeat:repeat;background-blend-mode:normal}
:is(.announcement,.revival,.ritual,.partnership,.grey-story,.revival-system,.revival-cta,.contact,.contact-partner,.locations-closing,.terms-hero,.service-visual-story,.service-menu-category-dark,.admin-sidebar,.member-sidebar,.profile-editor-mark,footer,.hair-black,.care-tone-3,.cart-toast,.revival-hero,.revival-wide-figure){background-color:#147b29;background-image:var(--texture-green);background-size:720px 720px;background-position:center;background-repeat:repeat;background-blend-mode:normal}
.site-header{background-color:rgba(250,246,237,.96);background-size:390px auto}.service-menu-category-dark .service-menu-card{background-color:#f8f3e9;background-image:var(--texture-paper);background-size:390px auto}.revival-strength-grid figure{background-color:var(--paper-grain-alt)}
.story-system,.grey-story,.story-evidence,.story-research-pairs,.service-page-grid,.inner-page main>.section:has(.story-signoff){background-color:var(--paper-grain)!important;background-image:var(--texture-paper)!important;background-size:520px auto!important;background-repeat:repeat!important;background-blend-mode:normal!important}

/* Match the botanical green texture used by the Gray Hair Rescue page. */
:is(.story-system,.story-evidence){background-color:#147b29!important;background-image:var(--texture-green)!important;background-size:720px 720px!important;background-position:center!important;background-repeat:repeat!important;background-blend-mode:normal!important;color:#fff}
.story-system .eyebrow{color:#c9d5cc}.story-system h2{color:#fff}.story-system p:not(.eyebrow){color:#cfdbd3}
.story-evidence-feature figcaption,.story-evidence-side figcaption{color:#cfdbd3}.story-evidence-feature figcaption strong{color:#fff}.story-research-pairs .story-prose p{color:#cfdbd3}.story-research-pairs .story-prose>p:first-child{color:#e6eee7}.story-research-pairs .story-prose blockquote{border-color:rgba(255,255,255,.2);color:#fff}.story-research-pair figure figcaption{color:#cfdbd3}.story-research-caption figcaption,.story-research-caption figcaption strong{color:#fff}

/* Use one continuous texture per green section so tile seams do not read as folds. */
:is(.announcement,.revival,.ritual,.partnership,.grey-story,.revival-system,.revival-cta,.contact,.contact-partner,.locations-closing,.terms-hero,.service-visual-story,.service-menu-category-dark,.admin-sidebar,.member-sidebar,.profile-editor-mark,footer,.hair-black,.care-tone-3,.cart-toast,.revival-hero,.revival-wide-figure,.story-system,.story-evidence){background-size:cover!important;background-repeat:no-repeat!important;background-position:center!important}

/* Alternate each research paragraph: khaki paper, then botanical green. */
.story-research-pairs{padding:0!important;background:transparent!important;color:var(--ink)}
.story-research-pairs>.shell{gap:0}
.story-research-pair{position:relative;isolation:isolate;padding:clamp(85px,10vw,145px) 0}
.story-research-pair:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);pointer-events:none}
.story-research-pair:first-child:before{background-color:var(--paper-grain);background-image:var(--texture-paper);background-size:520px auto;background-position:center;background-repeat:repeat}
.story-research-pair:nth-child(2):before{background-color:#147b29;background-image:var(--texture-green);background-size:cover;background-position:center;background-repeat:no-repeat}
.story-research-pairs .story-prose p{color:#56615a}.story-research-pairs .story-prose>p:first-child{color:#314a3d}.story-research-pairs .story-prose blockquote{border-color:#b9c6bb;color:#173d31}.story-research-pair figure figcaption{color:#65746a}.story-research-caption figcaption,.story-research-caption figcaption strong{color:#173d31}
.story-research-pair:nth-child(2) .story-prose p{color:#cfdbd3}.story-research-pair:nth-child(2) .story-prose>p:first-child{color:#e6eee7}.story-research-pair:nth-child(2) .story-prose blockquote{border-color:rgba(255,255,255,.2);color:#fff}.story-research-pair:nth-child(2) figure figcaption{color:#cfdbd3}.story-research-pair:nth-child(2) .story-research-caption figcaption,.story-research-pair:nth-child(2) .story-research-caption figcaption strong{color:#fff}

/* Continue the alternating rhythm through the remaining brand-story chapters. */
.story-values{background-color:var(--paper-grain)!important;background-image:var(--texture-paper)!important;background-size:520px auto!important;background-position:center!important;background-repeat:repeat!important;background-blend-mode:normal!important;color:#173d31}
.story-values .value-grid{border-color:rgba(23,61,49,.18)}.story-values .value-grid article{border-color:rgba(23,61,49,.18)}.story-values .value-grid .eyebrow{color:#8a6940}.story-values .value-grid h2{color:#173d31}.story-values .value-grid p:not(.eyebrow){color:#56615a}
.grey-story{background-color:#147b29!important;background-image:var(--texture-green)!important;background-size:720px 720px!important;background-position:center!important;background-repeat:repeat!important;background-blend-mode:normal!important;color:#fff}
.grey-story .eyebrow{color:#c9d5cc}.grey-story h2{color:#fff}.grey-story p{color:#cfdbd3}.grey-story blockquote{border-color:rgba(255,255,255,.2);color:#fff}.grey-story .btn-light{background:#fff;color:#173d31}.grey-story .btn:hover{background:#e6eee7;color:#173d31}
@media(max-width:700px){.story-research-pair{padding:72px 0}}

/* The supplied cleansing and activation rituals sit directly below the home service selector. */
.service-menu-videos{padding:clamp(56px,7vw,96px) 0;background-color:var(--paper-grain);background-image:var(--texture-paper);background-size:520px auto;background-repeat:repeat}.service-menu-videos>.shell{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.8vw,36px)}.service-menu-videos figure{margin:0;min-width:0;border-top:1px solid #bfcbbd;background:#faf6ed}.service-menu-videos video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#10291d}.service-menu-videos figcaption{padding:14px 17px 16px;color:#173d31;font:400 20px/1.25 Georgia,"Noto Serif SC",serif;letter-spacing:0;background-color:#faf6ed;background-image:var(--texture-paper);background-size:390px auto;background-repeat:repeat}@media(max-width:620px){.service-menu-videos{padding:48px 0}.service-menu-videos>.shell{grid-template-columns:1fr;gap:22px}.service-menu-videos figcaption{padding:13px 15px 15px;font-size:19px}}

/* Inner-page title lockup: the main heading leads, with the section label below it. */
.inner-page .page-hero .shell,.contact-hero .shell,.terms-hero .shell{display:flex;flex-direction:column;align-items:flex-start}
.inner-page .page-hero h1,.contact-hero h1,.terms-hero h1{order:1;max-width:none;margin:0 0 14px;font-size:clamp(25px,2.2vw,32px);line-height:1.25}
.inner-page .page-hero .eyebrow,.contact-hero .eyebrow,.terms-hero .eyebrow{order:2;margin:0 0 18px}
.inner-page .page-hero p:not(.eyebrow),.contact-hero p:not(.eyebrow),.terms-hero p:not(.eyebrow){order:3;margin-top:0}
.inner-page .page-hero .story-hero-secondary{margin:2px 0 18px;color:#fff;font:400 clamp(29px,3vw,43px)/1.2 Georgia,"Noto Serif SC",serif}
.inner-page .page-hero h1 br,.contact-hero h1 br{content:" ";display:inline}
.inner-page .revival-hero-copy{display:flex;flex-direction:column;align-items:flex-start}
.inner-page .revival-hero-copy h1{order:1;margin:0 0 10px;font-size:clamp(22px,2vw,30px);line-height:1.25}
.inner-page .revival-hero-copy .eyebrow{order:2;margin:0 0 12px}
.inner-page .revival-hero-copy>p:last-child{order:3;margin-top:0}
.locations-intro-grid>div{display:flex;flex-direction:column;align-items:flex-start}
.locations-intro h2{order:1;margin:0 0 14px;font-size:clamp(25px,2.2vw,32px);line-height:1.25}
.locations-intro .eyebrow{order:2;margin:0}
.locations-intro h2 br{content:" ";display:inline}
@media(min-width:900px){.inner-page .page-hero h1,.contact-hero h1,.terms-hero h1,.locations-intro h2{white-space:nowrap}.inner-page .revival-hero-copy h1{white-space:normal}}
@media(max-width:899px){.inner-page .page-hero h1,.contact-hero h1,.terms-hero h1,.locations-intro h2{white-space:normal}.inner-page .revival-hero-copy h1{font-size:clamp(19px,5vw,26px)}}


/* Keep the home product-band description directly below its main heading. */
.service-booking-link{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:46px;margin:0;border-top:1px solid rgba(71,107,80,.24);border-bottom:1px solid rgba(71,107,80,.24);background:rgba(250,246,237,.62);color:var(--leaf);font-size:16px;font-weight:bold;letter-spacing:.14em;transition:background .2s,color .2s}.service-booking-link i{font-style:normal;font-size:16px;line-height:1;transition:transform .2s}.service-booking-link:hover{background:#e7eee8;color:var(--green)}.service-booking-link:hover i{transform:translate(2px,-2px)}
@media(max-width:700px){.service-booking-link{min-height:48px}}

/* Keep the home service booking action at the bottom of the series selector. */
@media(min-width:701px){.home-page .service-series .service-booking-link{position:absolute;z-index:3;right:0;bottom:0;left:0;min-height:54px;border-top:1px solid #c1cbc0;border-bottom:0;background:rgba(250,246,237,.9)}}
@media(max-width:700px){.home-page .service-series .service-booking-link{position:static;min-height:56px;border-bottom:0;background:#faf6ed}}
body.home-page:not(.inner-page) .product-band .shell>div{display:block}
body.home-page:not(.inner-page) .product-band .eyebrow{margin:0 0 22px}
body.home-page:not(.inner-page) .product-band h2{margin:0}
body.home-page:not(.inner-page) .product-band .shell>div>p{max-width:620px;margin:22px 0 0}

/* Keep the home studio note directly below the section heading. */
body.home-page:not(.inner-page) .location-heading{grid-template-columns:1fr;align-items:start;gap:0}
body.home-page:not(.inner-page) .location-heading .eyebrow{grid-column:1;margin:0 0 22px}
body.home-page:not(.inner-page) .location-heading h2{margin:0}
body.home-page:not(.inner-page) .location-heading>p{grid-column:1;max-width:620px;margin:22px 0 0}

/* Home services: keep the explanatory subtitle directly below the heading. */
@media(min-width:900px){body.home-page:not(.inner-page) .section-intro{grid-template-columns:1fr;gap:0;align-items:start}body.home-page:not(.inner-page) .section-intro>div{display:block}body.home-page:not(.inner-page) .section-intro .eyebrow{margin:0 0 22px}body.home-page:not(.inner-page) .section-intro h2{margin:0;white-space:nowrap;font-size:clamp(40px,4vw,56px)}body.home-page:not(.inner-page) .section-intro>p{max-width:720px;margin:22px 0 0}}

/* The service-page hero title uses a continuous line on wide screens. */
@media(min-width:900px){.service-menu-hero h1{display:block;width:max-content;max-width:none!important;white-space:nowrap!important;font-size:clamp(24px,2.1vw,32px)!important}.service-menu-hero h1 br{display:none!important}}

/* The home service image is a single fixed portrait, framed consistently beside the service list. */
body.home-page:not(.inner-page) .service-stage-image{border-left:1px solid var(--line);background:#d9ddd6}
body.home-page:not(.inner-page) #seriesImage{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#d9ddd6}

/* Service-category descriptions follow their main headings instead of sitting in a second column. */
.service-menu-category-head{grid-template-columns:1fr;gap:0;align-items:start}
.service-menu-category-head .eyebrow{margin:0 0 22px}
.service-menu-category-head h2{margin:0}
.service-menu-category-head>p:last-child{grid-column:1;grid-row:auto;max-width:720px;margin:22px 0 0}

/* Give the service-menu overview a true edge-to-edge width, followed by its contained text block. */
.service-menu-intro{padding:0 0 32px}
.service-menu-intro .shell{display:flex;width:100%;max-width:none;flex-direction:column;align-items:stretch;gap:0}
.service-menu-intro .service-menu-overview{width:100%;margin:0;transform:none}
.service-menu-intro .service-menu-copy{width:min(1240px,calc(100% - 80px));margin:clamp(28px,3vw,42px) auto 0}
.service-menu-intro .eyebrow{margin:0 0 10px}
.service-menu-intro h2{margin:0}
.service-menu-intro .service-menu-summary{margin:14px 0 0}
@media(max-width:700px){.service-menu-intro{padding:0 0 24px}.service-menu-intro .service-menu-copy{width:calc(100% - 36px);margin-top:28px}}
.service-menu-videos{padding:0}
.service-menu-videos+.service-menu-category{padding-top:40px}
.service-menu-videos>.shell{row-gap:24px}
.service-video-booking{grid-column:1/-1;text-align:center}
.service-video-booking .btn{display:inline-flex;align-items:center;justify-content:center;min-width:160px;letter-spacing:0}
#booking-qr{scroll-margin-top:110px}
@media(max-width:700px){.service-menu-videos+.service-menu-category{padding-top:32px}#booking-qr{scroll-margin-top:90px}}

/* Product cards are editorial listings rather than framed panels. */
#products .store-products article{overflow:visible;background:transparent;border:0;box-shadow:none}
#products .store-product-image{border:0}
#products .store-product-copy{min-height:0;padding:20px 0 0;background:transparent}

/* Location page: each studio is a two-by-two grid of visual, details, QR codes, and map. */
.studio-directory:has(.location-page-directory){padding:0 0 clamp(80px,10vw,130px)}
.location-page-directory{display:grid;gap:clamp(44px,6vw,82px)}
.location-page-card{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);grid-template-areas:"visual info" "qrs map";border:1px solid #c6d0c7;background:#f7f5ef}
.location-page-card>*{min-width:0;margin:0}
.location-page-visual{grid-area:visual;border-right:1px solid #c6d0c7;border-bottom:1px solid #c6d0c7;min-height:310px;background:#dfe5de;overflow:hidden}
.location-page-visual img{display:block;width:100%;height:100%;object-fit:cover}
.location-page-info{grid-area:info;display:flex;flex-direction:column;align-items:flex-start;padding:clamp(30px,4vw,58px);background:#faf6ed}
.location-page-info>span{color:#9b7744;font-size:10px;letter-spacing:.16em}
.location-page-info h3{margin:20px 0 17px;color:#173d31;font:400 clamp(29px,3vw,43px)/1.1 Georgia,"Noto Serif SC",serif}
.location-page-info address{margin:0;color:#5d6a62;font-size:14px;font-style:normal;line-height:1.8}
.location-page-info>a{margin-top:16px;border-bottom:1px solid #173d31;color:#173d31;font:400 18px Georgia,serif}
.location-page-info p{max-width:480px;margin:24px 0 0;padding-top:16px;border-top:1px solid #d9e0d9;color:#69776e;font-size:12px;line-height:1.75}
.location-page-info p b{display:block;margin-bottom:5px;color:#8e7548;font-size:9px;letter-spacing:.1em}
.location-page-qrs{grid-area:qrs;display:flex;align-items:center;gap:clamp(14px,2vw,25px);min-height:255px;padding:clamp(25px,3.5vw,48px);border-right:1px solid #c6d0c7;background:#edf1eb}
.location-page-qrs figure{width:min(29%,118px);margin:0}
.location-page-qrs img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff;cursor:zoom-in}
.location-page-qrs figcaption{margin-top:10px;color:#53665b;font-size:16px;font-weight:600;line-height:1.3;letter-spacing:0;text-align:center;white-space:nowrap}
.location-page-map{grid-area:map;position:relative;min-height:255px;background:#dfe5de;overflow:hidden}
.location-page-map iframe{display:block;width:100%;height:100%;min-height:255px;border:0}
.location-page-map figcaption{position:absolute;right:14px;bottom:12px;margin:0;padding:4px 7px;background:rgba(247,245,239,.88);color:#53645b;font-size:9px;letter-spacing:.08em}
@media(max-width:760px){.location-page-directory{gap:34px}.location-page-card{grid-template-columns:1fr;grid-template-areas:"visual" "info" "qrs" "map"}.location-page-visual{min-height:260px;border-right:0}.location-page-info{padding:30px 22px}.location-page-qrs{min-height:0;padding:28px 22px;border-right:0;border-bottom:1px solid #c6d0c7}.location-page-map,.location-page-map iframe{min-height:300px}}

/* Contact page headings stay on one line within their individual column widths. */
.contact-hero h1,.contact-intro h2,.contact-partner h2,.contact-program h2,.contact-form-section h2{white-space:nowrap!important;max-width:100%!important}
.contact-hero h1{font-size:clamp(36px,4vw,58px)!important}
.contact-intro h2{font-size:clamp(26px,2.3vw,36px)!important}
.contact-partner h2{font-size:clamp(25px,2.2vw,33px)!important}
.contact-program h2{font-size:clamp(24px,2.1vw,32px)!important}
.contact-form-section h2{font-size:clamp(25px,2.2vw,33px)!important}
@media(max-width:900px){.contact-hero h1{font-size:clamp(28px,5vw,42px)!important}.contact-intro h2,.contact-partner h2,.contact-program h2,.contact-form-section h2{font-size:clamp(23px,4vw,34px)!important}}
@media(max-width:560px){.contact-hero h1,.contact-intro h2,.contact-partner h2,.contact-program h2,.contact-form-section h2{font-size:clamp(15px,5.8vw,29px)!important}}

/* Partnership materials are offered only after a successful inquiry submission. */
.contact-brand-link,.contact-program{display:none!important}
.partnership-download-dialog{width:min(540px,calc(100% - 32px));border:0;border-left:4px solid #b69154;background:#f8f7f2;padding:44px 46px 42px;box-shadow:0 30px 90px rgba(0,0,0,.38)}
.partnership-download-dialog::backdrop{background:rgba(11,28,21,.76);backdrop-filter:blur(6px)}
.partnership-download-dialog .dialog-close{top:14px;right:17px;color:#617068}
.partnership-download-dialog .eyebrow{margin:0 0 10px;color:#927645}
.partnership-download-dialog h2{margin:0;color:#173d31;font:400 clamp(29px,3vw,38px)/1.2 Georgia,"Noto Serif SC",serif;white-space:normal!important}
.partnership-download-dialog>p:not(.eyebrow){max-width:390px;margin:18px 0 28px;color:#607067;font-size:15px;line-height:1.8}
.partnership-download-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.partnership-download-actions a{min-height:52px;display:flex;align-items:center;justify-content:center;padding:0 14px;text-align:center}
.partnership-download-secondary{border:1px solid #84958a;color:#315342;font-size:12px;font-weight:bold;letter-spacing:.06em}
.partnership-download-secondary:hover{border-color:#173d31;background:#e5ebe4}
.contact-form-layout>div>.partnership-download-note{margin-top:16px;border-left:3px solid #b69154;padding-left:12px;color:#315342;font-size:14px;font-weight:700;line-height:1.7}
@media(max-width:540px){.partnership-download-dialog{padding:39px 25px 30px}.partnership-download-actions{grid-template-columns:1fr}.partnership-download-dialog>p:not(.eyebrow){font-size:14px}}

/* Website settings */
.settings-icon{border-radius:3px;position:relative}.settings-icon:before,.settings-icon:after{content:"";position:absolute;left:3px;right:3px;border-top:1px solid currentColor}.settings-icon:before{top:5px}.settings-icon:after{bottom:5px}.site-settings-card{max-width:820px;margin-top:42px;border:1px solid #dfe5de;background:#faf6ed;padding:38px}.site-settings-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding-bottom:30px;border-bottom:1px solid #dfe5de}.site-settings-card-head p{margin:0 0 12px;color:#476b50;font-size:10px;font-weight:bold;letter-spacing:.24em}.site-settings-card-head h2{margin:0;color:#173d31;font:400 34px/1.2 Georgia,"Noto Serif SC",serif}.site-settings-card-head span{display:block;margin-top:10px;color:#78857c;font-size:12px}.announcement-settings-form{display:grid;gap:24px;margin-top:30px}.announcement-settings-form label{color:#526159;font-size:10px;font-weight:bold;letter-spacing:.1em}.announcement-settings-form input:not([type=checkbox]){display:block;width:100%;border:0;border-bottom:1px solid #aab4ac;background:transparent;padding:12px 0;color:var(--ink);font-size:14px;outline:0}.announcement-settings-form input:focus{border-bottom-color:#173d31}.site-settings-actions{display:flex;align-items:center;gap:22px;margin-top:4px}.site-settings-actions a{border-bottom:1px solid #315342;color:#315342;padding-bottom:4px;font-size:11px;font-weight:bold;letter-spacing:.06em}@media(max-width:620px){.site-settings-card{margin-top:30px;padding:26px 20px}.site-settings-card-head{display:grid;gap:22px}.site-settings-card-head h2{font-size:28px}.site-settings-actions{align-items:stretch;flex-direction:column}.site-settings-actions .btn{width:100%}}
.announcement[hidden]{display:none!important}

/* Hover imagery is fetched only when a pointer actually enters a product card. */
#products .store-products .store-product-image::before{background-image:none!important}
@media(hover:hover) and (pointer:fine){#products .store-products .store-product-image:hover::before{background-image:var(--product-hover-image)!important}.store-product-image.is-generic-hover:hover::before{background-image:linear-gradient(180deg,rgba(16,29,23,.12),rgba(16,29,23,.28)),var(--product-hover-image)!important}}

/* Keep the hover stage warm brown while the replacement image is loading. */
#products .store-products .store-product-image::before{background-color:#b79a72!important}

/* Store product detail gallery. */
.product-detail-dialog{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);margin:0;width:min(1120px,calc(100% - 44px));max-height:calc(100dvh - 44px);border:0;background:#faf6ed;padding:0;box-shadow:0 34px 110px rgba(0,0,0,.46);overflow:hidden}.product-detail-dialog::backdrop{background:rgba(11,28,21,.8);backdrop-filter:blur(7px)}.product-detail-dialog .dialog-close{z-index:2;position:absolute;top:24px;right:26px;width:46px;height:46px;border:1px solid rgba(23,61,49,.32);border-radius:50%;background:rgba(250,246,237,.94);color:#173d31;font-size:26px;font-weight:300;line-height:1;transition:background .2s,border-color .2s,color .2s,transform .2s}.product-detail-dialog .dialog-close:hover{border-color:#b69154;background:#b69154;color:#fff;transform:rotate(90deg)}.product-detail-dialog-head{display:flex;align-items:end;justify-content:space-between;gap:32px;padding:48px 76px 38px;border-bottom:1px solid #d8ded7}.product-detail-dialog-head .eyebrow{margin:0 0 11px;color:#927645}.product-detail-dialog-head h2{margin:0;color:#173d31;font:400 clamp(32px,3.6vw,50px)/1.12 Georgia,"Noto Serif SC",serif}.product-detail-dialog-head span{padding:0 60px 7px 0;color:#7b887f;font-size:11px;font-weight:bold;letter-spacing:.1em;white-space:nowrap}.product-detail-images{max-height:calc(100dvh - 190px);padding:0 76px 64px;overflow-y:auto;scrollbar-color:#93a296 transparent}.product-detail-images img{display:block;width:100%;height:auto;margin-top:42px;background:#f4f1e9}@media(max-width:600px){.product-detail-dialog{width:calc(100% - 18px);max-height:calc(100dvh - 18px)}.product-detail-dialog .dialog-close{top:16px;right:16px;width:40px;height:40px;font-size:23px}.product-detail-dialog-head{display:block;padding:32px 26px 25px}.product-detail-dialog-head h2{font-size:32px}.product-detail-dialog-head span{display:block;margin-top:14px;padding:0}.product-detail-images{max-height:calc(100dvh - 170px);padding:0 26px 32px}.product-detail-images img{margin-top:26px}}
/* Give the order confirmation copy more breathing room. */
.checkout-payment{grid-template-columns:minmax(180px,1fr) 100px 110px}
.account-header-actions{display:flex;align-items:center;gap:18px}.account-language-switch{display:flex;gap:3px}.account-language-switch button{border:0;background:transparent;color:inherit;font:inherit;font-size:11px;letter-spacing:.08em;padding:5px 7px;cursor:pointer}.account-language-switch button.active{background:#173d31;color:#fff}.pickup-location-field select{width:100%}
.checkout-choice{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:0 0 26px;padding:20px 0;border-top:1px solid #d8ded7;border-bottom:1px solid #d8ded7}.checkout-choice label{display:grid;gap:8px;color:#66736b;font-size:11px;letter-spacing:.08em}.checkout-choice [hidden]{display:none!important}.checkout-choice select{width:100%;height:44px;border:1px solid #aebbb1;border-radius:0;background:#faf8f1;color:#173d31;padding:0 38px 0 13px;font:400 14px/1.2 Arial,sans-serif;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#173d31 50%),linear-gradient(135deg,#173d31 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.checkout-choice select:focus{outline:0;border-color:#173d31;box-shadow:0 0 0 3px rgba(23,61,49,.1)}@media(max-width:560px){.checkout-choice{grid-template-columns:1fr;gap:12px}}
.checkout-choice{gap:16px;margin:0 0 22px;padding:18px 0;border-top:0;border-bottom:1px solid var(--line)}.checkout-choice label{gap:6px;color:#69756d;font-size:10px;font-weight:bold;letter-spacing:.05em}.checkout-choice select{height:38px;border:1px solid #cbd6ce;border-radius:2px;background-color:#fbfcfa;padding:0 34px 0 10px;color:var(--ink);font:400 12px/1.2 Arial,sans-serif;background-position:calc(100% - 15px) 16px,calc(100% - 10px) 16px}.checkout-choice select:focus{border-color:var(--leaf);box-shadow:0 0 0 3px rgba(71,107,80,.12);background-color:#fff}
.checkout-choice select,.checkout-choice select:focus{background-color:rgba(250,246,237,.55)}
.checkout-payment #checkoutExpiry{text-transform:uppercase}
@media(max-width:520px){.checkout-payment{grid-template-columns:1fr}}

.order-success-dialog .order-success-head{gap:24px}.order-success-dialog .order-success-head h2{line-height:1.28}.order-success-dialog .order-success-copy{margin-top:30px;margin-bottom:34px;line-height:2.05;letter-spacing:.02em}.order-success-dialog .order-success-actions{margin-top:0;gap:16px}.order-success-dialog .order-success-actions .btn,.order-success-dialog .order-success-dismiss{line-height:1.5;letter-spacing:.1em}
.order-success-dialog .order-success-head{gap:18px}.order-success-dialog .order-success-head h2{font-size:30px!important;line-height:1.3!important}.order-success-dialog .order-success-copy{font-size:14px!important;line-height:2.15!important;letter-spacing:0!important}.order-success-dialog .order-success-actions{width:min(390px,100%);margin:0 auto;gap:12px}.order-success-dialog .order-success-actions .order-success-action{height:44px!important;min-height:44px!important;padding:0 10px!important;font-size:11px!important;line-height:1.4!important;letter-spacing:.06em!important}
.order-success-dialog .order-success-head{transform:translateY(-8px)}.order-success-dialog .order-success-copy{font-size:13px!important;line-height:2!important}.order-success-dialog .order-success-actions{margin:10px auto 0!important}
.order-success-dialog:not(.checkout-error-dialog){min-height:380px;padding:38px 44px 112px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-head{transform:translateY(-14px)}.order-success-dialog:not(.checkout-error-dialog) .order-success-copy{margin:8px 0 0!important;font-size:13px!important;line-height:2.15!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-actions{position:absolute;right:44px;bottom:30px;left:44px;width:auto!important;margin:0!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-action{height:40px!important;min-height:40px!important}
@media(max-width:540px){.order-success-dialog:not(.checkout-error-dialog){min-height:0;padding:34px 24px 28px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-head{transform:none}.order-success-dialog:not(.checkout-error-dialog) .order-success-copy{margin:18px 0 28px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-actions{position:static;width:100%!important}}
.order-success-dialog:not(.checkout-error-dialog){min-height:0;padding:36px 44px 34px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-head{transform:translateY(-5px)}.order-success-dialog:not(.checkout-error-dialog) .order-success-copy{margin:14px 0 30px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-actions{position:static;width:min(390px,100%)!important;margin:0 auto!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-action{height:42px!important;min-height:42px!important}
@media(max-width:540px){.order-success-dialog:not(.checkout-error-dialog){padding:32px 24px 26px!important}.order-success-dialog:not(.checkout-error-dialog) .order-success-head{transform:none}}
.order-success-dialog[open]:not(.checkout-error-dialog){position:fixed;inset:50% auto auto 50%;margin:0;transform:translate(-50%,-50%)}
@keyframes order-success-enter-centered{from{opacity:0;transform:translate(-50%,calc(-50% + 14px)) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.order-success-dialog[open]:not(.checkout-error-dialog){animation:order-success-enter-centered .26s cubic-bezier(.22,1,.36,1)}

/* Balance the ginger shampoo packshot with the taller bottles beside it. */
#products .store-products article.product-anti-alopecia .store-product-image>img{transform:scale(1.4)}
#products .store-products article.product-anti-alopecia .store-product-image::before{background-size:auto 145%;background-position:center;background-repeat:no-repeat}
@media(max-width:540px){#products .store-products article.product-anti-alopecia .store-product-image>img{transform:scale(1.4)}#products .store-products article.product-anti-alopecia .store-product-image::before{background-size:auto 145%}}

/* Prevent visible seams wherever the botanical green texture is used. */
:is(.account-brand,.story-visual,.revival,.story-system,.grey-story,.revival-system,.revival-cta,.contact,.contact-partner,.locations-closing,.terms-hero,.service-visual-story,.service-visual-grid figure,.revival-hero,footer,.hair-black,.care-tone-3,.admin-sidebar,.member-sidebar,.profile-editor-mark,.ritual,.partnership,.revival-wide-figure,.revival-formula,.revival-compare-table thead th,.revival-hero-compare,.announcement,.service-menu-category-dark,.cart-toast,.story-evidence){background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.story-research-pair:nth-child(2):before{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}

/* Shared footer: brand, six ordered studios, and contact with social links. */
.footer-grid.footer-simple,.home-page .footer-grid.footer-simple{grid-template-columns:220px minmax(0,1fr) 220px;gap:clamp(28px,3.4vw,48px);align-items:start}
.footer-locations{min-width:0}
.footer-locations>strong{display:block;margin:0 0 22px}
.footer-location-list{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;list-style:none;margin:0;padding:0}
.footer-location-list li{display:grid;grid-template-columns:145px minmax(0,1fr);gap:16px;align-items:baseline;min-width:0}
.footer-location-list h3{display:flex;gap:9px;align-items:baseline;margin:0;color:#dce2de;font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.025em}
.footer-location-list address{margin:0;color:#9eaca4;font-size:11px;font-style:normal;line-height:1.8}
.footer-simple .footer-contact,.home-page .footer-simple .footer-contact{grid-column:auto;justify-self:end;width:100%;max-width:none}
.footer-simple .footer-contact .footer-social{margin-top:24px;transform:none;align-self:flex-start;justify-self:start;gap:12px}
.footer-contact .footer-social a{width:34px;height:34px;padding:7px;border:1px solid #607469}
.footer-contact .footer-social a:hover{border-color:#dce2de}
@media(max-width:1050px){.footer-grid.footer-simple,.home-page .footer-grid.footer-simple{grid-template-columns:minmax(0,1fr) 220px;gap:38px 48px}.footer-locations{grid-column:1/-1;grid-row:2}.footer-simple .footer-contact,.home-page .footer-simple .footer-contact{grid-column:2;grid-row:1}}
@media(max-width:700px){.footer-grid.footer-simple,.home-page .footer-grid.footer-simple{grid-template-columns:1fr;gap:36px}.footer-locations{grid-column:auto;grid-row:auto}.footer-simple .footer-contact,.home-page .footer-simple .footer-contact{grid-column:auto;grid-row:auto;justify-self:start}.footer-simple .footer-contact .footer-social{margin-top:18px}}
@media(max-width:540px){.footer-location-list{gap:18px}.footer-location-list li{grid-template-columns:1fr;gap:3px}.footer-location-list address{padding-left:0}}

/* Match the reference site's Rubik headings across page and dialog styles. */
@font-face{
  font-family:"Rubik";
  src:url("/static/fonts/rubik-regular.woff2") format("woff2");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
:root{--font-heading:"Rubik","Noto Sans SC","Microsoft YaHei",Arial,sans-serif}
/* These properties also override component font shorthands and injected styles. */
h1,h2,h3,h4,h5,h6,
:is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,em),
[role="heading"],.eyebrow,
.program-tab strong,.care-option strong,.ritual-steps strong,
.service-series button,.service-series button b,
.revival-steps strong,.revival-ingredients-grid strong,
.story-evidence figcaption strong,.story-research-caption figcaption strong,
.service-menu-videos figcaption,.story-hero-secondary,
.contact-program-download strong,.footer-action strong,
.footer-locations>strong,.footer-contact>strong{
  font-family:var(--font-heading)!important;
  font-weight:400!important;
  letter-spacing:0!important;
}
@media(max-width:700px){
  .story-system-grid{grid-template-columns:minmax(0,1fr);gap:26px}
}

/* Use the contact hero's title scale on the other main information pages. */
:root{--page-hero-heading-size:58px}
.inner-page .page-hero:not(.revival-hero) h1,.locations-intro h2,.contact-hero h1{
  font-size:var(--page-hero-heading-size)!important;
  line-height:1.25;
  width:auto;
  max-width:100%!important;
  white-space:normal!important;
}
@media(max-width:1100px){:root{--page-hero-heading-size:42px}}
@media(max-width:560px){:root{--page-hero-heading-size:24px}}
.locations-intro h2 br{display:block;content:normal}
.inner-page .page-hero:has(.story-hero-secondary) .eyebrow{order:-2}
.inner-page .page-hero p.story-hero-secondary{order:-1;font-size:24px;line-height:1.4}
@media(max-width:560px){.inner-page .page-hero p.story-hero-secondary{font-size:18px}}

/* Keep each English care-step pair together within its own column. */
html:lang(en) .story-system-grid>div:first-child{container-type:inline-size}
html:lang(en) .story-system h2{font-size:min(62px,10.5cqi);white-space:nowrap}
html:lang(en) .story-system h2 br{display:block;content:normal}

.account-header .brand{align-items:center;text-align:center}

.member-side-profile{grid-template-columns:33px minmax(0,1fr)}
.member-side-profile>div{min-width:0}
.member-side-profile strong{overflow-wrap:anywhere}
.member-side-profile button{grid-column:2;justify-self:start;min-height:32px;margin-top:3px}

.footer-social a.footer-social-xhs{width:auto;min-width:34px;padding-inline:8px;font-size:11px;line-height:18px;font-weight:600}

/* Single-visit introductory prices, shared by the home and service menus. */
.service-single-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0}
.service-meta .service-single-price{margin-top:8px}
.service-meta .service-single-price>span{margin-top:0}
.service-single-price .service-new-client-price,.service-meta>.service-new-client-price{color:#173d31;font-size:12px;font-weight:600;line-height:1.5;letter-spacing:0}
.service-card-meta{flex-wrap:wrap;align-items:baseline;gap:8px 16px}
.service-card-meta .service-single-price{flex:1;justify-content:flex-end}
.service-meta>.service-new-client-price{margin-top:8px}
@media(max-width:700px){.home-page .service-list article{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* Service cards: duration and packages on the left, stacked prices on the right. */
.service-card-pricing{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:6px 16px;margin:19px 0 17px;padding-bottom:15px;border-bottom:1px solid #d8e0d8}
.service-card-pricing .service-card-meta,.service-card-pricing .service-single-price{display:contents}
.service-card-pricing .service-card-meta>span:first-child{grid-column:1;grid-row:1}
.service-card-pricing .service-single-price>b{grid-column:2;grid-row:1;text-align:right}
.service-card-pricing .service-new-client-price{grid-column:2;grid-row:2;text-align:right;color:#111;font-weight:700}
.service-card-pricing .service-card-price{grid-column:1;grid-row:2;margin:0;padding:0;border:0;line-height:1.5}

/* Manual playback remains available when a mobile browser blocks autoplay. */
.service-menu-videos figure{position:relative}
.video-play-button{position:absolute;z-index:4;padding:10px 16px;border:1px solid rgba(255,255,255,.7);border-radius:4px;background:rgba(16,41,29,.88);color:#fff;font:600 13px/1.4 Arial,sans-serif;cursor:pointer}
.video-play-button[hidden]{display:none}
.service-menu-videos .video-play-button{top:16px;left:16px}
.video-play-button:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* Let translated mobile navigation wrap without overlapping the next group. */
@media(max-width:1050px){
  .home-page .site-header.menu-open{height:auto;max-height:100svh;overflow-y:auto}
  .home-page .site-header.menu-open .nav{height:auto;min-height:84px;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto auto auto;gap:16px 20px;padding-block:16px}
  .home-page .site-header.menu-open .brand{grid-column:1;grid-row:1;justify-self:start}
  .home-page .site-header.menu-open .account-link{grid-column:2;grid-row:1}
  .home-page .site-header.menu-open .menu-toggle{grid-column:3;grid-row:1}
  .home-page .site-header.menu-open .nav-group{position:static;grid-column:1/-1;min-width:0;flex-wrap:wrap;justify-content:flex-start;gap:14px 20px;padding:0;background:transparent}
  .home-page .site-header.menu-open .nav-left{grid-row:2;padding-block:8px}
  .home-page .site-header.menu-open .nav-right{grid-row:3;padding-bottom:8px}
  .home-page .site-header.menu-open .nav-group>a{max-width:100%;overflow-wrap:anywhere}
}

/* Keep the face near the center when the story hero is cropped for phones. */
@media(max-width:700px){.inner-page .story-hero{background-position:center,88% center}}

/* Shared phone hero layout, following the contact page's lower-left copy. */
@media(max-width:700px){
  .home-page .mobile-hero:not(.revival-hero):not(.locations-hero),.terms-hero.mobile-hero{display:flex;align-items:flex-end;height:auto;min-height:max(510px,68svh);padding:0}
  .mobile-hero>.shell,.home-page .mobile-hero>.hero-content{display:flex;flex-direction:column;align-items:flex-start;width:calc(100% - 36px);max-width:none;margin-inline:auto;padding:180px 0 62px;text-align:left}
  .home-page .mobile-hero h1,.mobile-hero h1{order:1;width:auto;max-width:100%!important;margin:0 0 14px;font-size:clamp(22px,5.8vw,29px)!important;line-height:1.25;white-space:normal!important;overflow-wrap:break-word}
  .home-page .mobile-hero .eyebrow,.mobile-hero .eyebrow{display:block;order:2;margin:0 0 18px;font-size:10px;line-height:1.5}
  .home-page .mobile-hero p:not(.eyebrow),.mobile-hero p:not(.eyebrow){display:block;order:4;max-width:100%;margin:0;font-size:15px;line-height:1.8}
  .inner-page .mobile-hero p.story-hero-secondary{order:3;margin:0 0 14px;font-size:18px;line-height:1.4}
  .home-page .mobile-hero .hero-actions{order:5;margin-top:20px}
  .home-page .mobile-hero .hero-index{bottom:20px;right:18px}
  .home-page .mobile-hero .hero-shade{background:linear-gradient(0deg,rgba(8,25,19,.85),rgba(8,25,19,.4) 55%,rgba(8,25,19,.12))}
}

/* Keep the phone background full-height; each scene supplies its own focal point. */
@media(max-width:700px){
  .home-page .hero.mobile-hero>.hero-media{object-position:var(--mobile-video-focus,92%) center}
  .home-page .hero.mobile-hero>.hero-content{width:calc(100% - 44px);margin-left:26px;margin-right:18px}
}

/* Slightly larger text in the partnership form, studio footer, and admin lists. */
.contact-partnership-form label{font-size:12px;line-height:1.6}
.contact-partnership-form input,.contact-partnership-form textarea{font-size:16px}
.footer-simple .footer-locations>strong,.footer-simple .footer-contact>strong{font-size:11px}
.footer-location-list h3,.footer-location-list address,.footer-simple .footer-contact address{font-size:13px}
.footer-location-list address,.footer-simple .footer-contact address{overflow-wrap:anywhere}

:is(.admin-users-page,.admin-inquiries-page) .admin-heading>div>span{font-size:14px;line-height:1.6}
:is(.admin-users-page,.admin-inquiries-page) .refresh-users{font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:6px}
:is(.admin-users-page,.admin-inquiries-page) .refresh-users>span{margin:0}
.admin-users-page #adminDate{font-size:12px}
.admin-users-page .admin-stats span,.admin-users-page .admin-stats small{font-size:12px;line-height:1.6}
.admin-users-page .admin-stats strong{font-size:44px}
:is(.admin-users-page,.admin-inquiries-page) .admin-table{font-size:13px}
:is(.admin-users-page,.admin-inquiries-page) .admin-table th{font-size:11px}
:is(.admin-users-page,.admin-inquiries-page) .admin-table td{padding-block:12px}
.admin-users-page .user-cell strong,.admin-users-page .order-summary{font-size:13px}
.admin-users-page .user-cell small,.admin-inquiries-page .inquiry-source{font-size:11px}
:is(.admin-users-page,.admin-inquiries-page) .role-badge{font-size:11px;white-space:nowrap}
.admin-users-page .user-action{font-size:12px}
:is(.admin-users-page,.admin-inquiries-page) .admin-search input,
:is(.admin-users-page,.admin-inquiries-page) .role-filter button{font-size:12px}
:is(.admin-users-page,.admin-inquiries-page) .users-panel-foot{font-size:12px;gap:12px;flex-wrap:wrap;align-items:center}
:is(.admin-users-page,.admin-inquiries-page) .users-panel-foot small{font-size:11px}
:is(.admin-users-page,.admin-inquiries-page) .admin-pager{font-size:12px}
.admin-inquiries-page .inquiry-notifications strong{font-size:15px}
.admin-inquiries-page .inquiry-notifications p{font-size:13px;line-height:1.6}
.admin-inquiries-page .toggle-control{font-size:13px!important}
@media(max-width:800px){.admin-users-page .admin-stats strong{font-size:32px}}

/* Use the supplied green texture unchanged, matching the other green sections. */
.locations-intro{
  background-color:#147b29;
  background-image:url('/static/images/images/bg.webp');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.locations-intro h2{color:#fff}
.locations-intro .eyebrow{color:#c7d6cb}
.locations-intro-grid>p{color:#cedbd2}

/* Separate the green introduction from the first studio with a paper-textured gap. */
.locations-intro+.studio-directory{padding-top:clamp(24px,3vw,40px)}

/* Keep mobile comparison copy in the open upper-right area, clear of the face. */
@media(max-width:700px){
  .home-page .revival-hero-compare .revival-hero-copy{
    position:absolute;left:auto;right:3%;top:9%;bottom:auto;
    width:30%;max-width:none;margin:0;padding:0;transform:none;
    display:flex;flex-direction:column;align-items:flex-start;gap:5px;
    text-align:left;color:#173d31;mix-blend-mode:normal;
  }
  .home-page .revival-hero-compare .revival-hero-copy :is(h1,h3){
    order:1;width:100%;max-width:none!important;margin:0;
    font-size:clamp(12px,3.2vw,16px)!important;line-height:1.35;
    letter-spacing:0;white-space:normal!important;overflow-wrap:break-word;
    color:#173d31;text-shadow:0 1px 8px rgba(247,245,239,.85);
  }
  .home-page .revival-hero-compare .revival-hero-copy :is(small,.eyebrow){
    order:2;margin:0;font-size:6px;line-height:1.4;letter-spacing:.08em;color:#53645c;
  }
  .home-page .revival-hero-compare .revival-hero-copy>p:last-child{
    order:3;display:block;width:100%;max-width:none;margin:0;
    font-size:clamp(9px,2.3vw,11px);line-height:1.4;color:#53645c;
    text-shadow:0 1px 8px rgba(247,245,239,.9);
  }
}

/* Service gift-card reminder */
.gift-card-reminder{display:flex;align-items:center;gap:30px;position:relative;overflow:hidden;margin-top:0;margin-bottom:48px;padding:34px 40px;color:#faf6ed;background:linear-gradient(115deg,#15392e,#244e3d);border:1px solid #9c8556;box-shadow:0 12px 32px #183d3110}
.gift-card-reminder[hidden]{display:none}
.gift-card-reminder:after{content:"";position:absolute;right:-70px;top:-125px;width:330px;height:330px;border:1px solid #d5bd8730;border-radius:50%;pointer-events:none}
.gift-card-art{flex:0 0 88px;color:#dcc38e;transform:rotate(-7deg)}
.gift-card-art svg{display:block;width:100%;stroke:currentColor;stroke-width:1.4}
.gift-card-copy{flex:1;min-width:0;position:relative;z-index:1}
.gift-card-kicker{margin:0 0 8px;color:#dcc38e;font-size:10px;letter-spacing:.2em}
.gift-card-copy h2{margin:0 0 10px;font:400 clamp(23px,2.3vw,30px)/1.35 Georgia,"Noto Serif SC",serif;color:#faf6ed}
.gift-card-copy #giftCardText{margin:0;color:#e5e9df;font-size:15px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-line}
.gift-card-link{display:flex;align-items:center;gap:22px;flex-shrink:0;position:relative;z-index:1;padding:12px 0;border-bottom:1px solid #dcc38e;color:#f3e4c6;font-size:13px;transition:color .2s}
.gift-card-link:hover{color:#fff}.gift-card-link:focus-visible{outline:2px solid #dcc38e;outline-offset:6px}
@media(max-width:700px){.gift-card-reminder{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;margin-bottom:32px;padding:28px 22px}.gift-card-art{align-self:start;margin-top:6px}.gift-card-copy h2{font-size:23px}.gift-card-copy #giftCardText{font-size:14px}.gift-card-link{grid-column:2;justify-self:start}.gift-card-kicker{font-size:9px;letter-spacing:.12em}}
.site-settings-card .toggle-control{display:flex;align-items:center;gap:10px;position:relative;flex-shrink:0;cursor:pointer;padding-block:4px}
.site-settings-card .toggle-control input{position:absolute;left:0;width:42px;height:24px;margin:0;opacity:0;cursor:pointer}
.site-settings-card .toggle-control>span{display:block;position:relative;width:42px;height:24px;margin:0;border-radius:14px;background:#b3beb5;transition:background .2s;pointer-events:none}
.site-settings-card .toggle-control>span:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s}
.site-settings-card .toggle-control input:checked+span{background:#254e3b}
.site-settings-card .toggle-control input:checked+span:after{transform:translateX(18px)}
.site-settings-card .toggle-control input:focus-visible+span{outline:2px solid #b69154;outline-offset:4px}
.site-settings-card .toggle-control input:disabled+span{opacity:.5}
.site-settings-card .toggle-control b{font-size:12px;font-weight:500;color:#315342}
.gift-card-reminder{scroll-margin-top:110px}

.service-menu-intro .gift-card-reminder{width:min(1240px,calc(100% - 80px));margin:clamp(28px,3vw,42px) auto 0}
.service-menu-intro .gift-card-copy h2{margin:0 0 10px;color:#faf6ed;font-size:clamp(23px,2.3vw,30px);line-height:1.35}
@media(max-width:700px){.service-menu-intro .gift-card-reminder{width:calc(100% - 36px);margin-top:28px}.service-menu-intro .gift-card-copy h2{font-size:23px}}

/* Password change and account recovery */
.password-editor h2{margin:0 0 18px;font-size:24px}.password-editor p,.password-editor small,.password-help{font-size:13px;line-height:1.7;color:#626f67}.password-reset-dialog{width:min(520px,calc(100vw - 32px));max-height:90dvh;overflow-y:auto}.password-reset-dialog .auth-form{margin-top:22px}.password-reset-dialog .form-status{display:block;min-height:22px}.password-reset-dialog .form-status[data-type=error]{color:#9b4f43}.password-reset-dialog .popup-captcha{margin:0}.password-reset-dialog .password-help{margin:0}.password-editor input:focus-visible{outline:2px solid #59765f;outline-offset:3px}
.account-page .password-reset-dialog .auth-form{gap:18px;margin-top:22px;min-width:0}.account-page .password-reset-dialog .auth-form>label{display:grid;gap:4px;margin:0;min-width:0}.account-page .password-reset-dialog input{display:block;width:100%;min-width:0;border:0;border-bottom:1px solid #aeb7b0;border-radius:0;background:transparent;padding:10px 0;font-size:14px;color:var(--ink);box-sizing:border-box}.password-reset-dialog .popup-captcha{grid-template-columns:minmax(0,1fr) 100px 28px;min-width:0}.password-reset-dialog .popup-captcha img{width:100px;max-width:100%}.password-reset-dialog .password-help{overflow-wrap:anywhere}.password-reset-dialog #sendResetCode{min-width:0;white-space:normal;padding:12px;border:1px solid #aeb7b0}.password-reset-dialog input:focus-visible{outline:2px solid #59765f;outline-offset:3px}.password-reset-dialog .form-status{overflow-wrap:anywhere}


#products .store-products .store-product-image:not(:hover)::before{background-image:none!important}
@media(hover:none){#products .store-products .store-product-image::before{background-image:none!important}}
.product-sale-price{color:#a04732;margin-left:10px}.product-original-price{color:#8c938c;font-weight:400}.admin-product-meta del{color:#8c938c;font-weight:400}.admin-product-meta .sale-price{color:#a04732}.sale-price-field>span{display:flex;align-items:center;gap:8px;margin-bottom:8px}.sale-price-field input[type=checkbox]{width:auto}.admin-file-picker{display:flex;align-items:center;gap:10px;margin:8px 0 4px}.admin-file-picker input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.admin-file-button{border:1px solid #aeb7b0;background:#f7f8f5;color:#315342;padding:7px 12px;font:inherit;font-size:11px;cursor:pointer}.admin-file-name{color:#7b877f;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
