@font-face{font-family:Editorial;src:url('assets/fonts/serif.woff2') format('woff2');font-display:swap}@font-face{font-family:Editorial;src:url('assets/fonts/serif-italic.woff2') format('woff2');font-style:italic;font-display:swap}@font-face{font-family:Inter;src:url('assets/fonts/sans.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--cream:#f5f1e9;--wine:#51272c;--ink:#352b28;--muted:#746c62;--line:#d9d1c6;--rose:#e4d2cc;--serif:Editorial,Georgia,serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}body.modal-open{overflow:hidden}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button,select{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}button{border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b16d48;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}em{font-weight:400}h2{font-size:clamp(48px,5.1vw,82px);line-height:1.04;letter-spacing:-.025em}h2 em{color:var(--wine)}.eyebrow{font-size:12px;font-weight:550;letter-spacing:.12em;line-height:1.5}.section-pad{padding:100px 5.4%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;min-height:52px;padding:16px 24px;font-size:14px;font-weight:500;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.button-dark{background:var(--wine);color:var(--cream)}.button-dark:hover{background:#713c42}.button-cream{background:var(--cream);color:var(--wine)}.button-cream:hover{background:#e6d9c9}.text-link{background:none;padding:12px 0 9px;border-bottom:1px solid currentColor;display:inline-flex;gap:55px;align-items:center;font-weight:500;font-size:15px}.text-link span{font-size:24px}.skip-link{position:absolute;left:12px;top:-100px;background:var(--wine);color:white;padding:12px;z-index:30}.skip-link:focus{top:12px}.header{height:116px;display:flex;align-items:center;justify-content:space-between;padding:0 5.4%;border-bottom:1px solid var(--line);gap:30px}.wordmark{font-family:var(--serif);font-size:62px;line-height:.72;letter-spacing:-.055em;color:var(--wine)}.wordmark span{display:block;font-family:var(--sans);font-size:9px;line-height:1;letter-spacing:.23em;margin-top:14px;margin-left:4px}.header nav{display:flex;gap:38px;font-size:14px}.header nav a{padding:10px 0;border-bottom:1px solid transparent}.header nav a:hover{border-color:var(--wine)}.hero{display:grid;grid-template-columns:44% 56%;min-height:720px}.hero-copy{padding:44px 9% 24px 12.25%;display:flex;flex-direction:column;align-items:flex-start}.hero .eyebrow{display:flex;gap:12px;align-items:center;font-size:11px}.little-star{font-size:26px;color:var(--wine);line-height:1}h1{font-size:clamp(76px,7.4vw,118px);line-height:.89;letter-spacing:-.03em;margin:36px 0 24px}h1 em{color:var(--wine)}.hero-intro{font-size:15px;line-height:1.65;color:#675b53}.hero-copy>.text-link{margin-top:20px;color:var(--wine)}.hero-meta{display:flex;justify-content:space-between;gap:20px;align-self:stretch;font-size:9px;letter-spacing:.12em;margin-top:auto;padding-top:36px}.hero-photo{position:relative;overflow:hidden;background:#b6a18d}.hero-photo>img{position:absolute;inset:0;object-position:58% center}.photo-caption{position:absolute;bottom:30px;left:32px;right:90px;display:flex;flex-direction:column;gap:9px;color:white;text-shadow:0 1px 8px #36251b}.photo-caption span:first-child{font-size:10px;letter-spacing:.14em}.photo-caption span:last-child{font:italic 26px var(--serif)}.hero-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#30201266);pointer-events:none}.photo-caption,.round-link{z-index:1}.round-link{position:absolute;bottom:31px;right:30px;border:1px solid #ffffffaa;border-radius:50%;height:48px;width:48px;display:grid;place-items:center;color:white;font-size:23px;transition:background .2s}.round-link:hover{background:#ffffff33}.manifesto-line{display:flex;align-items:center;justify-content:space-around;gap:30px;background:var(--wine);color:var(--cream);padding:23px 4%;font:36px var(--serif);white-space:nowrap}.manifesto-line i{font-style:normal;font-size:27px;color:#cba596}.philosophy{display:grid;grid-template-columns:30% 70%;gap:0;padding-top:112px;padding-bottom:110px}.philosophy>.eyebrow{padding-top:12px}.philosophy-bottom{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:35px;max-width:750px}.philosophy-bottom p{color:#6c6058;font-size:16px;line-height:1.75}.looks{padding-top:0;padding-bottom:105px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-bottom:35px}.section-heading h2{font-size:58px}.section-heading .eyebrow{font-size:10px}.look-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.look-short{padding-top:85px}.look-image{height:440px;overflow:hidden;position:relative;background:#d0bfb0}.look-image img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.look:hover img{transform:scale(1.04)}.look-long img{object-position:60% 50%}.look-short img{object-position:50% 44%}.image-label{position:absolute;bottom:18px;left:22px;color:white;font:italic 48px var(--serif);text-shadow:0 1px 10px #0004}.look figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:18px;align-items:center}.look h3{font-size:31px;line-height:1.1}.look p{margin-top:6px;font-size:14px;color:var(--muted)}.look figcaption button{border:1px solid var(--line);border-radius:50%;width:45px;height:45px;background:transparent;color:var(--wine);font-size:24px;flex-shrink:0}.look figcaption button:hover{background:var(--wine);color:white}.services{background:#ede6dc;display:grid;grid-template-columns:1fr 1.15fr;gap:8%;padding-top:94px;padding-bottom:94px}.service-intro h2{margin:26px 0}.service-intro>p:not(.eyebrow){color:#766960;line-height:1.7}.service-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:30px}.service-filters button{padding:8px 17px;border:1px solid #c8bdb0;background:transparent;border-radius:30px;font-size:14px}.service-filters button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:var(--cream)}.service-intro .price-note{font-size:12px;max-width:330px;margin-top:24px}.service-item{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:25px 0;border-bottom:1px solid #cec2b5}.service-item:first-child{border-top:1px solid #cec2b5}.service-item h3{font-size:30px;line-height:1.2}.service-item p{font-size:13px;color:#766960;margin-top:7px}.service-buy{display:flex;align-items:center;gap:20px}.service-price{font-size:15px;white-space:nowrap;text-align:right}.service-price small{display:block;font-size:10px;color:#766960}.service-buy button{width:37px;height:37px;display:grid;place-items:center;border:1px solid #b9a795;border-radius:50%;background:transparent;font-size:20px}.service-buy button:hover{background:var(--wine);color:white}.atelier{display:grid;grid-template-columns:55% 45%;min-height:680px}.atelier-photo{min-height:100%;overflow:hidden}.atelier-copy{padding:80px 12%;display:flex;flex-direction:column;align-items:flex-start}.atelier-copy h2{font-size:90px;margin:25px 0}.atelier-copy>p:not(.eyebrow){font-size:15px;color:#74675c;line-height:1.8;margin-bottom:16px}.atelier-copy .text-link{margin-top:8px}.atelier-signature{margin-top:48px;font:italic 29px var(--serif);color:var(--wine)}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10%;border-top:1px solid var(--line)}.faq h2{margin-top:24px}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;gap:15px;align-items:center;padding:24px 0;font-size:16px;cursor:pointer}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:24px;font-weight:300;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:15px;color:#74675c;line-height:1.8;padding:0 25px 25px 0}.visit{background:var(--wine);color:var(--cream);padding-top:80px;padding-bottom:44px}.visit-top{text-align:center}.visit-top h2{font-size:92px;margin:26px 0 32px}.visit-top h2 em{color:#dfbdb1}.visit-info{border-top:1px solid #ffffff33;padding-top:30px;margin-top:80px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}.visit-info .eyebrow{font-size:10px;color:#d6b9af}.visit-info p{font-size:15px;margin-top:10px;line-height:1.7}.visit-info p span{color:#d6b9af;font-size:13px}footer{padding:36px 5.4% 30px}.footer-wordmark{font:clamp(120px,25vw,390px)/.88 var(--serif);letter-spacing:-.055em;color:var(--wine);display:flex;justify-content:space-between;align-items:center;overflow:hidden;padding-bottom:25px}.footer-wordmark>span{font-size:.28em;letter-spacing:0;padding-right:3%}.footer-bottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;gap:30px;align-items:flex-start;font-size:10px;letter-spacing:.06em}.footer-bottom span:nth-child(2){font-size:12px;letter-spacing:0;color:var(--muted)}.footer-bottom a{font-size:13px;white-space:nowrap}.mobile-book{display:none}dialog{border:0;background:var(--cream);color:var(--ink);padding:40px;width:min(610px,calc(100% - 32px));max-height:calc(100dvh - 40px);margin:auto;overscroll-behavior:contain}dialog::backdrop{background:#201217aa;backdrop-filter:blur(5px)}.close-dialog{position:absolute;right:16px;top:10px;font-size:30px;background:none;width:40px;height:40px}.booking-top h2{font-size:50px;margin:12px 0}.demo-notice{font-size:12px;color:#7b514b;background:#e9dcd4;padding:8px 10px;margin-bottom:28px}form>label,legend{font-size:13px;letter-spacing:.02em;font-weight:550;display:block;margin-bottom:10px}select{appearance:auto;width:100%;padding:13px;border:1px solid #c7b8ac;color:var(--ink);border-radius:0;background:#fffcf5;font-size:15px}fieldset{border:0;margin:22px 0 0;padding:0;min-width:0}.date-choices,.time-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.date-choice,.time-choice{position:relative;cursor:pointer}.date-choice input,.time-choice input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.date-choice span,.time-choice span{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:67px;border:1px solid #c7b8ac;font-size:12px;gap:2px}.date-choice strong{font-size:23px;font-weight:400}.time-choice span{min-height:42px;font-size:14px}input:checked+span{background:var(--wine);color:var(--cream);border-color:var(--wine)}input:focus-visible+span{outline:3px solid #b16d48;outline-offset:2px}.booking-summary{display:flex;justify-content:space-between;gap:15px;padding:20px 0;font-size:14px}.confirm-book{width:100%}.booking-note{font-size:11px;line-height:1.6;color:var(--muted);margin-top:12px;text-align:center}#booking-result{text-align:center}#booking-result[hidden]{display:none}.result-mark{font-size:62px;color:var(--wine)}#booking-result h3{font-size:42px;margin:10px 0}#booking-result p{font-size:15px;line-height:1.7;margin:20px 0;color:#74675c}#booking-result #result-copy{background:#e9e0d4;color:var(--ink);padding:20px}.close-result{width:100%;margin-top:10px}
@media(min-width:1600px){.hero{min-height:810px}.hero-copy{padding-top:60px}.hero h1{font-size:134px}.hero-intro{font-size:17px}.hero-meta{font-size:11px}.hero .eyebrow{font-size:13px}.look-image{height:540px}}
@media(max-width:1100px){.header{padding:0 4%;height:100px}.header nav{gap:22px}.header-book{padding:14px 18px;gap:15px}.hero{min-height:660px;grid-template-columns:45% 55%}.hero-copy{padding-left:9%;padding-right:7%}.hero h1{font-size:90px}.hero-meta{font-size:8px;gap:6px}.hero .eyebrow{font-size:9px;gap:8px}.hero-photo>img{object-position:57%}.section-pad{padding-left:5%;padding-right:5%}.philosophy{grid-template-columns:24% 76%}.philosophy-bottom{gap:30px}.look-image{height:370px}.services{gap:5%;grid-template-columns:.9fr 1.1fr}.service-buy{gap:12px}.service-item h3{font-size:26px}.atelier-copy{padding:60px 10%}.atelier-copy h2{font-size:78px}.faq{gap:5%}.visit-top h2{font-size:80px}}
@media(max-width:760px){.header{height:90px;padding:0 6%;gap:10px}.wordmark{font-size:51px}.wordmark span{font-size:7px;margin-top:11px}.header nav{display:none}.header-book{font-size:12px;gap:15px;min-height:42px;padding:11px 14px}.header-book span{font-size:17px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:32px 6% 26px;position:relative}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(52px,12.4vw,94px);line-height:.98;margin:25px 0 20px;letter-spacing:-.035em}.hero h1 br:first-child{display:none}.hero h1 em br{display:none}.hero h1 em{white-space:nowrap}.hero-intro{font-size:14px}.hero-copy>.text-link{margin-top:14px;gap:40px}.hero-meta{font-size:9px;padding-top:27px}.hero-photo{height:440px}.hero-photo>img{object-position:56% 45%}.photo-caption{left:6%;bottom:25px}.photo-caption span:last-child{font-size:25px}.round-link{right:6%;bottom:25px}.manifesto-line{font-size:23px;gap:12px;padding:20px 4%}.manifesto-line i{font-size:16px}.manifesto-line i:last-child{display:none}.section-pad{padding:65px 6%}.philosophy{grid-template-columns:1fr;gap:27px}.philosophy>.eyebrow{padding:0}h2{font-size:52px}.philosophy-bottom{grid-template-columns:1fr;gap:18px;margin-top:25px}.philosophy-bottom p{font-size:15px}.looks{padding-top:0}.section-heading{display:block;margin-bottom:25px}.section-heading h2{font-size:45px}.section-heading .eyebrow{display:block;margin-top:16px;font-size:9px}.look-grid{gap:36px;grid-template-columns:1fr}.look-image{height:420px}.look-short{padding-top:0}.look h3{font-size:29px}.look p{font-size:13px}.services{grid-template-columns:1fr;gap:32px}.service-intro h2{margin:21px 0}.service-intro .price-note{max-width:none}.service-item{padding:22px 0}.service-item h3{font-size:28px}.service-item p{font-size:12px}.service-buy{gap:13px}.service-price{font-size:14px}.service-buy button{width:34px;height:34px}.atelier{grid-template-columns:1fr;min-height:0}.atelier-photo{height:410px}.atelier-copy{padding:55px 6%}.atelier-copy h2{font-size:74px}.atelier-copy>p:not(.eyebrow){max-width:480px}.atelier-signature{margin-top:35px;font-size:28px}.faq{grid-template-columns:1fr;gap:32px}.faq h2{font-size:52px}.faq summary{font-size:15px;padding:21px 0}.visit-top h2{font-size:60px;margin:24px 0 30px}.visit-info{grid-template-columns:1fr;gap:27px;margin-top:55px}.visit-info p{font-size:14px}.visit-top>.eyebrow{font-size:10px}footer{padding:30px 6% 106px}.footer-wordmark{font-size:26vw;padding-bottom:23px}.footer-bottom{flex-wrap:wrap;gap:20px;font-size:9px}.footer-bottom span:nth-child(2){font-size:11px;order:3;width:100%}.footer-bottom a{font-size:12px}.mobile-book{display:block;position:fixed;bottom:0;left:0;right:0;z-index:10;padding:10px 6% max(10px,env(safe-area-inset-bottom));background:#f5f1e9f0;backdrop-filter:blur(10px);border-top:1px solid var(--line)}.mobile-book .button{width:100%;font-size:14px;min-height:47px;padding:13px 20px}dialog{padding:32px 23px 25px;width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.booking-top h2{font-size:43px}.booking-top>.eyebrow{font-size:9px}.demo-notice{font-size:11px;margin-bottom:22px}.booking-summary{font-size:13px}.date-choices,.time-choices{gap:6px}}
@media(max-width:370px){.hero h1{font-size:49px}.header-book{font-size:11px;gap:8px}.wordmark{font-size:46px}.manifesto-line{font-size:21px}.service-item h3{font-size:24px}.look-image{height:370px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
