@import url('fonts.css');
:root{--black:#0d0f0d;--light:#f4f2eb;--gold:#c8af7d;--dim:#a9aba0;--border:#ffffff29;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--black);color:var(--light);font:16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}em{font-weight:400}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;padding:12px;background:var(--light);color:var(--black);z-index:20}.skip:focus{top:10px}.header{height:100px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--border);position:relative;z-index:2}.wordmark{font:31px/.9 var(--serif);letter-spacing:5px;display:block}.wordmark span{font:9px/1 var(--sans);letter-spacing:2.7px;display:block;margin-top:11px;text-align:center}.header nav{display:flex;gap:34px;font-size:14px}.header nav a{transition:color .2s}.header nav a:hover{color:var(--gold)}.header-contact{font-size:14px;color:var(--gold);border:1px solid #c8af7d70;padding:11px 27px}.hero{position:relative;min-height:780px;height:calc(100svh - 100px);max-height:1000px;overflow:hidden}.hero-photo{position:absolute;inset:0}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:center 38%}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#0d0f0ded,#0d0f0d80 38%,transparent 70%),linear-gradient(0deg,#0d0f0dbd,transparent 25%)}.hero-topline{position:absolute;left:6%;right:6%;top:35px;display:flex;justify-content:space-between;gap:25px;font-size:11px;letter-spacing:2px;color:#d4c19c;z-index:2}.hero-copy{position:relative;z-index:3;width:68%;padding:145px 6% 235px}h1{font-size:clamp(60px,6.4vw,99px);line-height:1.03;letter-spacing:-2px}h1 em{color:var(--gold);white-space:nowrap}.hero-copy p{font-size:16px;color:#d5d5cb;margin:27px 0 29px;line-height:1.7}.button{display:inline-flex;align-items:center;justify-content:center;padding:17px 31px;min-height:56px;border:1px solid transparent;font-size:14px;font-weight:600;transition:background .25s,transform .25s}.button:hover{transform:translateY(-2px)}.gold{background:var(--gold);color:#13140f}.gold:hover{background:#dfc597}.outline{border-color:#727669;color:var(--light)}.hero-sign{position:absolute;left:5%;bottom:60px;font:clamp(140px,18vw,290px)/.82 var(--serif);letter-spacing:.075em;color:#f5eadf25;z-index:2;pointer-events:none}.hero-bottom{position:absolute;left:6%;right:6%;bottom:25px;display:flex;justify-content:space-between;align-items:center;gap:20px;z-index:3;font-size:12px;color:#dadace}.hero-bottom a{border-bottom:1px solid #c8af7d70;padding-bottom:3px}.section{padding:110px 7%;max-width:1600px;margin:auto}.eyebrow{font:12px/1.5 var(--sans);letter-spacing:2.5px;color:var(--gold)}h2{font-size:clamp(48px,5.8vw,82px);line-height:1.05;letter-spacing:-1.5px}h2 em{color:var(--gold)}.intro{background:var(--light);color:var(--black);max-width:none;padding-top:115px;padding-bottom:105px;display:grid;grid-template-columns:1.5fr 1fr;gap:50px}.intro>.eyebrow{grid-column:1/-1;margin-bottom:-10px;color:#847048}.intro h2{font-size:clamp(48px,5.2vw,76px)}.intro h2 em{color:#8c7650}.intro-copy{color:#64685b;max-width:400px;align-self:end;padding-bottom:6px;font-size:16px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:46px}.section-heading .eyebrow{margin-bottom:25px}.section-heading>p{max-width:340px;color:var(--dim);font-size:15px}.services .section-heading>p{max-width:310px}.service-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:75px;align-items:start}.service-photo{height:590px;position:relative}.service-photo img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.82)}.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 48%);pointer-events:none}.service-photo p{z-index:1;position:absolute;left:25px;bottom:25px;font:32px/1.15 var(--serif);color:white;text-shadow:0 2px 15px #0008}.service-list{border-top:1px solid var(--border)}.service-list details{border-bottom:1px solid var(--border)}.service-list summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:25px 0;font:34px/1.2 var(--serif);cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-list summary:after{content:'+';color:var(--gold);font:26px/1 var(--sans);font-weight:400}.service-list details[open] summary:after{content:'−'}.service-content{padding:0 0 28px}.service-content>p{color:#afb1a5;max-width:460px;font-size:15px}.service-content ul{list-style:none;padding:0;margin:23px 0;display:flex;flex-wrap:wrap;gap:10px}.service-content li{border:1px solid #ffffff25;padding:7px 13px;font-size:12px;color:#d1d2c8}.text-link{display:inline-block;border-bottom:1px solid #a38b5d;font-size:14px;padding-bottom:4px}.service-note{font-size:12px;color:#8d9282;margin-top:30px}.salon{padding:110px 0 0;border-top:1px solid var(--border);max-width:none}.salon-top{padding:0 7%;display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end}.salon-top .eyebrow{margin-bottom:26px}.salon-top p.copy{color:var(--dim);max-width:390px;font-size:16px}.salon-panorama{margin-top:65px;position:relative;height:570px;overflow:hidden}.salon-panorama img{height:100%;width:100%;object-fit:cover;object-position:center 55%;filter:grayscale(1) brightness(.9)}.salon-panorama:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0d0f0de8,transparent 65%)}.salon-caption{position:absolute;left:7%;bottom:35px;z-index:1;font-size:12px;letter-spacing:2px}.salon-facts{padding:42px 7% 50px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;border-bottom:1px solid var(--border)}.salon-facts h3{font-size:32px;line-height:1.2;margin-bottom:12px;color:#dec79d}.salon-facts p{font-size:14px;color:var(--dim);max-width:280px}.gallery{background:var(--light);color:var(--black);max-width:none}.gallery .eyebrow{color:#847048}.gallery h2 em{color:#8c7650}.gallery .section-heading>p{color:#676b5e}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:start}.gallery-item{background:none;border:0;padding:0;display:block;text-align:left;color:inherit;width:100%}.gallery-item img{height:410px;width:100%;object-fit:cover;filter:grayscale(1);transition:filter .35s}.gallery-item:nth-child(2){margin-top:70px}.gallery-item:hover img{filter:saturate(1)}.gallery-item span{display:block;margin-top:16px;font-size:14px}.gallery-item small{display:block;margin-top:5px;color:#7b7f6e;font-size:12px}.gallery-bottom{display:flex;justify-content:end;margin-top:40px}.reviews{padding-top:95px;padding-bottom:100px}.review-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px}.review-card{border-top:1px solid var(--border);padding-top:25px}.review-card blockquote{font:32px/1.25 var(--serif);margin:20px 0 28px;min-height:120px;color:#ece8de}.review-card .stars{color:var(--gold);letter-spacing:4px;font-size:13px}.review-card cite{font-style:normal;font-size:14px}.review-card small{display:block;font-size:12px;color:#919584;margin-top:8px}.reviews-bottom{margin-top:45px;display:flex;justify-content:space-between;align-items:center;gap:25px}.reviews-bottom p{font-size:12px;color:#919584}.booking{background:var(--gold);color:var(--black);padding:90px 7%;display:flex;justify-content:space-between;align-items:center;gap:50px}.booking .eyebrow{color:#534832;margin-bottom:22px}.booking h2{font-size:clamp(52px,5vw,73px)}.booking h2 em{color:#4d452f}.booking-action{max-width:340px}.booking-action p{font-size:15px;margin-bottom:27px;color:#4b4c3e}.booking .button{background:var(--black);color:var(--light)}.contacts{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contacts .eyebrow{margin-bottom:25px}.contacts h2{font-size:clamp(50px,5vw,73px)}.contact-phone{font:clamp(30px,3vw,42px)/1.2 var(--serif);display:block;margin-top:35px;color:#dec79d;white-space:nowrap}.contact-right{padding-top:15px}.contact-right>div{border-bottom:1px solid var(--border);padding:20px 0;display:flex;gap:30px;justify-content:space-between}.contact-right>div:first-child{padding-top:0}.contact-right small{font-size:11px;color:#9da28f;letter-spacing:1.5px;flex-basis:100px;flex-shrink:0}.contact-right p{font-size:16px;text-align:right}.contact-actions{display:flex;gap:20px;justify-content:end;margin-top:30px}.faq{padding-top:0}.faq .eyebrow{margin-bottom:30px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 45px}.faq-grid details{border-bottom:1px solid var(--border);padding-bottom:20px}.faq-grid summary{cursor:pointer;font-size:16px;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq-grid summary:after{content:'+';color:var(--gold)}.faq-grid details[open] summary:after{content:'−'}.faq-grid p{font-size:14px;color:#a3a896;margin-top:18px;max-width:500px}.footer{padding:35px 7%;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:30px}.footer .wordmark{font-size:27px}.footer p,.footer>a{font-size:12px;color:#929787}.mobile-book{display:none}.lightbox{border:0;background:#12140f;color:var(--light);padding:50px 20px 20px;max-width:92vw;max-height:94svh}.lightbox::backdrop{background:#000d}.lightbox img{max-height:76svh;width:auto;margin:auto;object-fit:contain}.lightbox button{position:absolute;right:10px;top:5px;width:40px;height:40px;font-size:28px;background:none;color:var(--light);border:0}.lightbox p{font-size:14px;margin-top:15px;text-align:center}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s,transform .9s}.js-motion .reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){.header nav{gap:20px}.hero-copy{width:76%;padding-top:170px}h1{font-size:76px}.service-grid{gap:45px}.service-photo{height:530px}.gallery-item img{height:350px}.salon-top{gap:45px}.contacts{gap:45px}.review-grid{gap:25px}.review-card blockquote{font-size:29px}}
@media(max-width:760px){.header{height:85px;padding:0 6%;gap:20px}.wordmark{font-size:28px;letter-spacing:4px}.wordmark span{font-size:8px;letter-spacing:2.5px}.header nav{display:none}.header-contact{font-size:12px;padding:9px 17px}.hero{height:auto;min-height:830px;max-height:none}.hero-photo{height:490px}.hero-photo img{object-position:70% 30%}.hero-overlay{background:linear-gradient(0deg,#0d0f0d 35%,#0d0f0d96 55%,transparent 88%)}.hero-topline{top:24px;left:6%;right:6%;font-size:10px;letter-spacing:1.5px}.hero-topline span:last-child{display:none}.hero-copy{width:100%;padding:400px 6% 120px}h1{font-size:clamp(44px,10.6vw,65px);letter-spacing:-1px}h1 em{white-space:normal}.hero-copy p{font-size:15px;margin:23px 0}.hero-sign{font-size:24vw;bottom:70px;left:5%;opacity:.6;letter-spacing:.03em}.hero-bottom{left:6%;right:6%;bottom:23px;font-size:11px}.hero-bottom a{display:none}.section{padding:75px 6%}h2{font-size:48px;letter-spacing:-1px}.intro{display:block;padding:75px 6%}.intro>.eyebrow{margin-bottom:25px}.intro h2{font-size:45px}.intro-copy{margin-top:30px;max-width:none;font-size:16px}.section-heading{display:block;margin-bottom:33px}.section-heading>p{margin-top:24px;font-size:15px;max-width:none}.section-heading .eyebrow{margin-bottom:20px}.service-grid{display:flex;flex-direction:column;gap:35px}.service-photo{height:340px;width:100%}.service-photo img{object-position:center 60%}.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000b,transparent 48%);pointer-events:none}.service-photo p{z-index:1;font-size:29px}.service-list{width:100%}.service-list summary{font-size:30px;padding:22px 0}.service-content>p{font-size:15px}.service-content li{font-size:12px}.salon{padding-top:75px}.salon-top{display:block;padding:0 6%}.salon-top p.copy{margin-top:28px;max-width:none;font-size:16px}.salon-panorama{height:440px;margin-top:40px}.salon-panorama img{object-position:center 55%}.salon-caption{left:6%;font-size:10px;bottom:28px;letter-spacing:1.5px}.salon-facts{padding:40px 6% 45px;grid-template-columns:1fr;gap:30px}.salon-facts h3{font-size:30px;margin-bottom:10px}.salon-facts p{max-width:none;font-size:14px}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px}.gallery-item img{height:255px}.gallery-item:nth-child(2){margin-top:45px}.gallery-item:nth-child(3){grid-column:1/-1;margin-top:18px}.gallery-item:nth-child(3) img{height:360px}.gallery-item span{font-size:13px}.gallery-bottom{justify-content:start;margin-top:35px}.review-grid{grid-template-columns:1fr;gap:35px}.review-card blockquote{font-size:32px;min-height:0;margin:18px 0 23px}.reviews{padding:75px 6%}.reviews-bottom{align-items:start;flex-direction:column;gap:20px;margin-top:35px}.booking{padding:75px 6%;display:block}.booking h2{font-size:52px}.booking-action{margin-top:28px;max-width:none}.booking .button{width:100%}.contacts{display:block}.contacts h2{font-size:50px}.contact-phone{font-size:34px;margin:30px 0 45px}.contact-right{padding:0}.contact-right small{font-size:10px;flex-basis:85px}.contact-right p{font-size:15px}.contact-actions{justify-content:start;flex-wrap:wrap;gap:20px}.faq{padding-top:0}.faq-grid{grid-template-columns:1fr;gap:25px}.faq-grid summary{font-size:15px}.footer{padding:30px 6% 100px;flex-wrap:wrap;gap:25px}.footer p{width:100%;order:3}.mobile-book{display:flex;position:fixed;z-index:10;left:6%;right:6%;bottom:16px;min-height:50px;padding:13px;box-shadow:0 5px 30px #0007}.lightbox{max-width:96vw}}
@media(max-width:360px){h1{font-size:42px}.intro h2,h2{font-size:41px}.hero-copy{padding-top:390px}.hero{min-height:800px}.contact-phone{font-size:30px}.gallery-item img{height:230px}.contact-right>div{gap:12px}.booking h2{font-size:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js-motion .reveal{opacity:1;transform:none}}

/* Updated unbranded salon and supplied interior photographs. */
.hero-sign{font-size:clamp(100px,14vw,210px);letter-spacing:.035em}.wordmark{letter-spacing:3px}.wordmark span{letter-spacing:4px}.gallery-item img{filter:saturate(.75)}.gallery-item:hover img{filter:saturate(1)}.salon-panorama img{filter:saturate(.8)}.gallery-grid:has(.gallery-item:nth-child(4)){grid-template-columns:repeat(3,1fr)}.gallery-item:nth-child(n+4){margin-top:25px}.footer{flex-wrap:wrap}.contact-right p{max-width:310px}@media(max-width:760px){.hero-sign{font-size:17vw}.wordmark{font-size:27px}.wordmark span{font-size:8px;letter-spacing:3.8px}.gallery-grid:has(.gallery-item:nth-child(4)){grid-template-columns:1fr 1fr}.gallery-item:nth-child(n+3){grid-column:auto}.gallery-item:nth-child(n+3) img{height:255px}.gallery-grid:not(:has(.gallery-item:nth-child(4))) .gallery-item:nth-child(3){grid-column:1/-1}.gallery-grid:not(:has(.gallery-item:nth-child(4))) .gallery-item:nth-child(3) img{height:360px}.salon-facts h3{font-size:29px}}

/* Optional provider details and documents. */
.footer{display:block}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-main>a:not(.wordmark){font-size:12px;color:#929787}.legal-details{margin-top:30px;padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.legal-label{display:block;font-size:9px;letter-spacing:1.5px;color:var(--gold);margin-bottom:14px}.legal-providers .provider{margin:0 0 12px;display:flex;flex-wrap:wrap;gap:6px 16px;overflow-wrap:anywhere}.provider small{font-size:11px;color:var(--dim)}.legal-links{display:flex;flex-direction:column;align-items:flex-end;gap:12px;font-size:12px;max-width:100%;overflow-wrap:anywhere}.legal-links a{text-decoration:underline;text-underline-offset:4px}.legal-links a:hover{color:var(--gold)}.policy-page{max-width:1200px;margin-inline:auto}.policy-page h1{font-size:clamp(36px,5vw,70px);line-height:1.1;overflow-wrap:anywhere}.policy-copy{white-space:pre-wrap;overflow-wrap:anywhere;margin:45px 0;font-size:15px;line-height:1.9;color:var(--light)}
@media(max-width:700px){.footer-main{flex-wrap:wrap;gap:25px}.legal-details{flex-direction:column;gap:18px}.legal-links{align-items:flex-start}.legal-providers .provider{width:auto;flex-direction:column;gap:0}.policy-copy{font-size:14px;margin-top:30px}}
