@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@300;400;500;600&display=swap');
:root{--ivory:#f7f3ec;--ink:#242321;--stone:#e7ded2;--gold:#72583d;--line:#d4c8b9;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Heebo,sans-serif;font-weight:300;line-height:1.8}a{color:inherit;text-decoration:none}button,summary{cursor:pointer}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2{font-weight:400;line-height:1.13;letter-spacing:-.05em}h1{font-size:clamp(48px,6.2vw,94px)}h2{font-size:clamp(36px,4vw,62px)}h3{font-weight:400;font-size:25px;line-height:1.3}em{font-style:normal;color:var(--gold)}p{font-size:17px;line-height:1.9}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}header{height:106px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);background:rgba(247,243,236,.95);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px)}.brand{display:flex;gap:13px;align-items:center}.brand img{width:59px;height:59px;object-fit:contain;border-radius:50%}.brand>span{font-family:Heebo,sans-serif;font-size:28px;letter-spacing:.18em;line-height:1.2}.brand small{display:block;font:8px Heebo;letter-spacing:.24em;text-align:center;margin-top:6px}header nav{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:400}header nav a{position:relative}header nav a:after,.text-link:after{content:'';height:1px;background:currentColor;position:absolute;bottom:0;right:0;width:0;transition:width .4s var(--ease)}header nav a:hover:after,.text-link:hover:after{width:100%}.nav-services{position:relative}.nav-services summary{list-style:none}.nav-services summary:after{content:'⌄';padding-right:7px}.nav-services>div{position:absolute;top:36px;right:-24px;width:210px;padding:20px;background:var(--ivory);box-shadow:0 10px 30px #2423211a;border:1px solid var(--line);display:grid;gap:9px}.header-cta{font-size:14px;border-bottom:1px solid var(--ink);padding:8px 0;white-space:nowrap}.button{display:inline-flex;gap:30px;align-items:center;background:var(--ink);color:var(--ivory);padding:16px 25px;min-height:56px;font-size:14px;font-weight:400;position:relative;overflow:hidden;transition:background .35s,transform .35s var(--ease)}.button:hover{background:#594a3b;transform:translateY(-3px)}.button span{transition:transform .35s}.button:hover span{transform:translate(-4px,-4px)}.button.light{background:var(--ivory);color:var(--ink)}.text-link{font-size:15px;position:relative;display:inline-block;padding:8px 0;border-bottom:1px solid var(--line);font-weight:400}.eyebrow{font:11px Heebo,sans-serif;letter-spacing:.19em;line-height:1.6;margin-bottom:26px;color:var(--gold)}.intro{font-size:19px;font-weight:300;line-height:1.85}.hero{display:grid;grid-template-columns:1.04fr 1fr;min-height:740px;height:calc(100svh - 106px);max-height:980px;position:relative;padding:45px 5vw 65px;gap:5vw}.hero-copy{align-self:center;padding-bottom:15px}.hero-copy h1{margin-bottom:26px}.hero-copy .intro{margin-bottom:30px}.actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.hero-note{display:block;font-size:12px;color:#766e65;margin-top:45px}.hero-visual{position:relative;overflow:hidden;background:var(--stone)}.hero-visual img{object-position:43% center;transition:transform 1s var(--ease);will-change:transform}.hero-visual:hover img{transform:scale(1.035)}.hero-visual figcaption{position:absolute;bottom:0;padding:24px;color:white;background:linear-gradient(transparent,#24232199);width:100%;display:flex;justify-content:space-between;gap:15px;font-size:10px}.hero-visual figcaption span:first-child{font:9px Heebo;letter-spacing:.12em;max-width:45%}.hero-index{position:absolute;top:20px;left:22px;writing-mode:vertical-rl;color:white;font:10px Heebo;letter-spacing:.2em}.scroll-hint{position:absolute;bottom:18px;right:5vw;font-size:11px;color:#766e65}.ribbon{display:flex;justify-content:space-around;gap:30px;padding:20px;background:var(--stone);border-block:1px solid var(--line);font:11px Heebo;letter-spacing:.22em}.section{padding:115px 7vw}.section-heading{max-width:670px;margin-bottom:50px}.section-heading h2,.section-heading h1{margin-bottom:25px}.section-heading p:not(.eyebrow){max-width:550px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:33px}.gallery-item{border:0;padding:0;text-align:right;background:transparent;color:var(--ink);overflow:hidden}.gallery-item img{aspect-ratio:3/4;height:auto;transition:transform .85s var(--ease),filter .85s}.gallery-item:hover img{transform:scale(1.035);filter:brightness(1.035)}.gallery-item span{display:flex;justify-content:space-between;align-items:center;background:var(--ivory);position:relative;padding:15px 0 0;font-size:12px}.gallery-item i{font-style:normal;font-size:22px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:95px 7vw;align-items:center}.dark{background:var(--ink);color:var(--ivory)}.dark em,.dark .eyebrow{color:#c8ac88}.editorial-image{height:640px;position:relative;overflow:hidden}.editorial-image img{transition:transform 1s}.editorial-image:hover img{transform:scale(1.025)}.image-label{position:absolute;bottom:24px;left:24px;font:10px Heebo;letter-spacing:.18em;color:white}.editorial-copy h2{margin-bottom:30px}.editorial-copy p:not(.eyebrow){margin-bottom:24px;max-width:490px}.editorial-copy .button,.editorial-copy .text-link{margin-top:15px}.service-row{display:grid;grid-template-columns:50px 1fr 1fr 30px;gap:18px;align-items:center;padding:29px 12px;border-top:1px solid var(--line);transition:background .4s,padding .4s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:hover{background:var(--stone);padding-inline:24px}.service-row:first-of-type h3{color:var(--gold)}.service-num{font:12px Heebo;color:var(--gold)}.service-row h3{font-size:31px}.service-row p{font-size:15px;color:#6d6358}.arrow{font-size:28px;transition:transform .4s}.service-row:hover .arrow{transform:translate(-4px,-4px)}.about-preview{background:#eee7dd}.salon{position:relative;height:510px}.salon img{object-fit:cover}.salon figcaption{position:absolute;bottom:15px;right:15px;padding:5px 11px;background:#f7f3eceb;color:var(--ink);font-size:11px}.instagram-line{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:35px;margin-top:35px}.instagram-line p{font-size:15px;margin-top:10px}.faq{padding-top:40px}.faq details{border-bottom:1px solid var(--line);padding:23px 0;max-width:970px}.faq summary{font-size:20px;font-weight:400;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:25px;color:var(--gold)}.faq details[open] summary:after{content:'−'}.faq details p{padding-top:15px;max-width:800px}.faq a{text-decoration:underline}.closing{text-align:center;padding:115px 20px;background:var(--stone)}.closing h2{font-size:clamp(42px,5.7vw,80px);margin-bottom:25px}.closing p:not(.eyebrow){margin-bottom:28px}footer{padding:65px 7vw 45px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;font-size:13px}footer b{font:22px Heebo;letter-spacing:.1em}footer p{font-size:14px;margin-top:15px}footer a:hover{text-decoration:underline}.footer-links{display:flex;flex-wrap:wrap;gap:15px 26px;align-content:start;max-width:260px}.foot-note{text-align:left;font:10px Heebo;letter-spacing:.14em;line-height:2}.foot-note a{display:block;font:15px Heebo;margin-top:16px}.menu-toggle,.mobile-cta{display:none}.skip{position:fixed;top:-80px;right:20px;background:var(--ink);color:white;padding:10px;z-index:100}.skip:focus{top:8px}.page-hero{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:75px 7vw 90px}.page-hero h1{font-size:clamp(45px,5.2vw,75px);margin-bottom:30px}.page-hero .intro{margin-bottom:30px}.page-hero>figure{height:610px;position:relative}.page-hero figcaption:not(.salon figcaption){position:absolute;bottom:12px;right:15px;background:#f7f3eccc;padding:3px 8px;font-size:11px}.page-hero>div>p:not(.eyebrow){margin-bottom:25px}.three-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.three-columns>div{border-top:1px solid var(--line);padding-top:22px}.three-columns span{font:13px Heebo;color:var(--gold)}.three-columns h3{margin:16px 0}.three-columns p{font-size:16px}.connection{display:grid;grid-template-columns:1.1fr .8fr;gap:9vw;align-items:center}.connection .section-heading p{margin-bottom:30px}.video-wrap{max-width:400px}.video-wrap video{width:100%;height:auto;max-height:620px;object-fit:cover;background:var(--stone)}.video-wrap p{font-size:12px;margin-top:12px}.question-list{margin:0;padding-right:25px;max-width:880px}.question-list li{font-size:20px;padding:17px 0 17px 15px;border-bottom:1px solid var(--line)}.question-list li::marker{color:var(--gold);font-size:13px}.care-note{background:#eee7dd;padding:80px 10vw}.care-note h2{font-size:42px;margin-bottom:25px}.care-note p{max-width:730px;margin-bottom:25px}.type-art{background:var(--stone);min-height:560px;padding:65px 40px;display:flex;flex-direction:column;justify-content:center;text-align:center;color:var(--gold)}.type-art span{font:70px Heebo;letter-spacing:.17em}.type-art i{font:italic 30px Heebo;margin:20px 0}.type-art div{font:11px Heebo;letter-spacing:.27em;line-height:2;margin-top:50px}.related{display:flex;gap:15px;flex-wrap:wrap;margin-top:35px}.related a{border:1px solid var(--line);padding:12px 20px;font-size:14px;transition:background .3s}.related a:hover{background:var(--stone)}.gallery-page{padding-top:70px}.gallery-page .gallery-grid{row-gap:45px}.contact-page{padding-top:95px}.contact-page h1{margin-bottom:30px}.contact-page>.intro{margin-bottom:28px}.contact-details{margin-top:90px;display:grid;grid-template-columns:repeat(3,1fr);gap:50px;border-top:1px solid var(--line);padding-top:40px}.contact-details span{display:block;font:10px Heebo;letter-spacing:.15em;color:var(--gold);margin-bottom:20px}.contact-details a{display:inline-block}.contact-details h2{font-size:29px;margin-bottom:10px}.contact-details>div:first-child a{font:25px Heebo}dialog{border:0;background:var(--ivory);padding:18px;max-width:min(90vw,1000px);max-height:94svh;overflow:auto}dialog::backdrop{background:#161513e8}dialog img{height:auto;max-height:78svh;width:auto;max-width:100%;object-fit:contain;margin:auto}dialog p{font-size:13px;margin-top:10px}.lightbox-close{border:0;background:var(--ivory);font-size:32px;line-height:1;width:45px;height:45px;position:absolute;top:8px;right:8px;z-index:1}.js .reveal{transition:opacity .8s var(--ease),transform .8s var(--ease)}.js .reveal.pending{opacity:0;transform:translateY(35px)}.reveal:nth-child(3n+2){transition-delay:80ms}.reveal:nth-child(3n+3){transition-delay:160ms}
@media(min-width:1000px){.hero-copy{animation:arrive 1s var(--ease)}.hero-visual{animation:arrive 1.25s var(--ease)}@keyframes arrive{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}}
@media(max-width:1050px){header{padding-inline:4vw}header nav{gap:18px;font-size:12px}.header-cta{font-size:12px}.hero{min-height:650px;gap:4vw}.actions{gap:18px}.editorial{gap:5vw}.editorial-image{height:530px}.hero-visual figcaption{display:block}.hero-visual figcaption span{display:block;margin-top:8px}.three-columns{gap:25px}}
@media(max-width:760px){html{scroll-padding-top:80px}header{height:80px;padding:0 6vw}header nav,.header-cta{display:none}.brand img{width:44px;height:44px}.brand>span{font-size:23px}.brand small{font-size:7px}.menu-toggle{display:block;width:44px;height:44px;border:0;background:transparent;padding:10px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);margin:7px 0;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}#mobile-nav{position:fixed;top:80px;right:0;left:0;background:var(--ivory);z-index:19;padding:22px 7vw 30px;max-height:calc(100svh - 80px);overflow:auto;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #24232117}#mobile-nav:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:0 20px}#mobile-nav a{padding:10px 0;border-bottom:1px solid var(--line);font-size:15px}#mobile-nav>a:first-child{grid-column:1/-1;color:var(--gold);font-size:21px}.hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;padding:45px 6vw 45px;gap:35px}.hero-copy{padding:0;width:100%}.hero h1{font-size:60px;line-height:1.05;margin-bottom:25px}.eyebrow{font-size:9px;margin-bottom:22px}.hero-copy .intro{font-size:16px}.hero-copy .intro br{display:none}.actions{gap:18px;align-items:flex-start;flex-direction:column}.button{font-size:13px;padding:14px 20px;min-height:52px;gap:20px}.hero-note{margin-top:22px;font-size:11px}.hero-visual{height:440px;width:100%}.hero-visual figcaption{padding:18px}.hero-visual figcaption span:first-child{max-width:100%}.scroll-hint{display:none}.ribbon{padding:17px 12px;font-size:8px;gap:12px;letter-spacing:.11em}.ribbon span:last-child{display:none}.section{padding:70px 6vw}.section-heading{margin-bottom:32px}.section-heading h2{font-size:41px;margin-bottom:22px}.section-heading p:not(.eyebrow){font-size:16px}.gallery-grid{gap:15px;grid-template-columns:1fr 1fr}.gallery-grid>.gallery-item:first-child{grid-column:1/-1}.gallery-item span{font-size:10px;line-height:1.6;padding-top:11px;gap:10px}.gallery-item i{font-size:20px}.editorial{display:flex;flex-direction:column;padding:65px 6vw;gap:40px;align-items:stretch}.editorial-image{height:450px;width:100%}.editorial-copy h2{font-size:43px;margin-bottom:24px}.editorial-copy p:not(.eyebrow){font-size:16px;margin-bottom:20px}.dark .editorial-image{order:2}.service-row{grid-template-columns:26px 1fr 22px;gap:10px;padding:22px 0}.service-row h3{font-size:27px}.service-row p{grid-column:2;grid-row:2;font-size:13px}.service-row .arrow{grid-column:3;grid-row:1/3}.service-row:hover{padding-inline:10px}.service-num{font-size:10px}.salon{height:350px}.about-preview .salon img{object-position:center}.instagram-line{flex-direction:column;align-items:flex-start;padding-top:25px;gap:15px}.instagram-line h3{font-size:24px}.faq{padding-top:15px}.faq summary{font-size:17px}.faq details p{font-size:15px}.closing{padding:75px 6vw}.closing h2{font-size:44px}.closing p:not(.eyebrow){font-size:15px}.closing .button{margin-top:5px}footer{padding:45px 6vw 105px;grid-template-columns:1fr;gap:30px}.footer-links{max-width:100%}.foot-note{text-align:right}.foot-note a{margin-top:10px}.mobile-cta{position:fixed;display:flex;align-items:center;justify-content:space-between;bottom:0;right:0;left:0;z-index:18;background:var(--ink);color:var(--ivory);padding:16px 6vw calc(16px + env(safe-area-inset-bottom));min-height:58px;font-size:14px;border-top:1px solid #ffffff30}.page-hero{display:flex;flex-direction:column;padding:50px 6vw 60px;gap:35px;align-items:stretch}.page-hero h1{font-size:48px}.page-hero .intro{font-size:17px}.page-hero>figure{height:430px}.three-columns{grid-template-columns:1fr;gap:28px}.three-columns h3{font-size:27px;margin:10px 0}.three-columns p{font-size:16px}.connection{display:flex;flex-direction:column;gap:30px;align-items:stretch}.connection .section-heading{margin-bottom:0}.video-wrap{max-width:100%}.video-wrap video{max-height:570px;width:100%;background:var(--stone)}.question-list li{font-size:17px;padding-block:15px}.care-note{padding:60px 6vw}.care-note h2{font-size:35px}.care-note p{font-size:16px}.type-art{min-height:320px;padding:40px 20px}.type-art span{font-size:53px}.type-art i{font-size:24px}.type-art div{margin-top:25px}.related{gap:10px}.related a{padding:9px 14px;font-size:13px}.gallery-page .gallery-grid{row-gap:26px}.gallery-page .gallery-grid>.gallery-item:first-child{grid-column:auto}.gallery-page .section-heading h1{font-size:52px}.contact-page{padding-top:60px}.contact-page h1{font-size:48px}.contact-details{grid-template-columns:1fr;margin-top:55px;gap:30px}.contact-details span{margin-bottom:12px}.contact-page .related{margin-top:45px}.contact-page+.closing{display:none}dialog{padding:10px;max-width:94vw}dialog img{max-height:75svh}.js .reveal.pending{transform:translateY(22px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;transform:none!important}.js .reveal.pending{opacity:1!important}}
@media(min-width:761px) and (max-width:1000px){header nav{gap:12px}.brand>span{font-size:23px}.brand img{width:48px;height:48px}.hero{min-height:700px}.hero-copy h1{font-size:67px}.hero .intro{font-size:17px}.page-hero h1{font-size:51px}.page-hero>figure{height:530px}.contact-details{gap:25px}}
header:after{content:'';position:absolute;right:0;bottom:-1px;height:2px;width:100%;background:var(--gold);transform:scaleX(var(--reading-progress,0));transform-origin:right;pointer-events:none}
