:root{--cream:#ece7df;--ink:#1b1b1b;--red:#a14332;--line:#c8c1b8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}header{height:78px;padding:0 clamp(18px,4vw,60px);display:flex;align-items:center;gap:40px;border-bottom:1px solid var(--line)}.logo{font-size:1.4rem;font-weight:900;letter-spacing:.12em}nav{display:flex;gap:28px;margin:auto;font-size:.82rem}.book,button[data-book],.contact button{border:0;border-bottom:1px solid;background:none;padding:8px 0;cursor:pointer;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem}.hero{min-height:calc(100svh - 78px);display:grid;grid-template-columns:58% 42%}.hero-image{padding:clamp(14px,3vw,42px);padding-right:0}.hero img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.hero-copy{padding:clamp(38px,6vw,90px);display:flex;flex-direction:column;justify-content:center}.kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:var(--red)}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:.96}h1{font-size:clamp(3.6rem,7vw,7.4rem);margin:.3em 0}h2{font-size:clamp(2.5rem,5vw,5rem);margin:.25em 0}.hero-copy>p:not(.kicker){max-width:480px}.hero-copy button{align-self:flex-start;background:var(--ink);color:var(--cream);border:1px solid var(--ink);padding:14px 20px;margin-top:22px;cursor:pointer}.statement,.services,.team,.contact{padding:clamp(80px,11vw,150px) clamp(18px,7vw,105px)}.statement{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 3fr;gap:6vw}.statement h2{max-width:1100px;margin-top:0}.section-title{display:grid;grid-template-columns:1fr 2fr;gap:5vw}.service-list{margin-top:50px;border-top:1px solid var(--ink)}.service-list article{display:grid;grid-template-columns:50px 1fr auto;gap:20px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.service-list h3,.service-list p{margin:0}.service-list p{color:#666}.service-list>article>span{color:var(--red);font-size:.75rem}.service-list strong{font-size:.82rem}.team{background:var(--ink);color:var(--cream)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:50px}.portrait{aspect-ratio:3/4;display:grid;place-items:center;font-family:Georgia,serif;font-size:clamp(3rem,7vw,7rem);border:1px solid #444}.p1{background:#433c38}.p2{background:#695348}.p3{background:#363b3a}.team-grid h3{margin:18px 0 0}.team-grid p{margin:4px 0;color:#aaa}.contact{display:grid;grid-template-columns:1.5fr 1fr;gap:8vw;border-bottom:1px solid var(--line)}footer{padding:30px clamp(18px,4vw,60px);display:flex;justify-content:space-between;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}dialog{width:min(720px,calc(100% - 24px));border:1px solid var(--line);background:var(--cream);color:var(--ink);padding:clamp(24px,5vw,55px)}dialog::backdrop{background:rgba(20,18,16,.65)}.close{position:absolute;right:16px;top:12px;border:0;background:none;font-size:2rem;cursor:pointer}.steps{display:flex;gap:24px;font-size:.7rem;text-transform:uppercase;color:#999}.steps .active{color:var(--red)}dialog h2{font-size:2.6rem}.choices{display:grid;gap:10px}.choices label{cursor:pointer}.choices input{position:absolute;opacity:0}.choices span{display:flex;justify-content:space-between;border:1px solid var(--line);padding:18px}.choices input:checked+span{border-color:var(--ink);background:var(--ink);color:var(--cream)}.choices b{font-weight:400}.field{display:grid;gap:5px;margin:12px 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.field input{padding:13px;background:white;border:1px solid var(--line);font:inherit}.form-actions{display:flex;justify-content:space-between;margin-top:25px}.form-actions button,.done{padding:12px 18px;border:1px solid var(--ink);background:var(--ink);color:var(--cream);cursor:pointer}.form-actions #back{background:none;color:var(--ink)}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:760px){nav{display:none}.book{margin-left:auto}.hero{grid-template-columns:1fr}.hero-image{padding:14px;height:58vh}.statement,.section-title,.contact{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.service-list article{grid-template-columns:35px 1fr}.service-list strong{grid-column:2}.statement h2{margin-top:20px}footer{gap:15px;flex-direction:column}}
:root body{overflow-x:hidden}:root body .hero .hero-copy{padding:clamp(32px,4vw,64px);min-width:0}:root body .hero h1{font-size:clamp(3.2rem,4.8vw,6.2rem)}
:root body.beauty-subpage{overflow-x:hidden}.beauty-subpage header{position:sticky;top:0;background:var(--cream);z-index:5}.beauty-page-title{padding:clamp(70px,10vw,140px) clamp(18px,7vw,105px);display:grid;grid-template-columns:1fr 3fr;gap:5vw}.beauty-page-title h1{font-size:clamp(3.7rem,8vw,8rem);margin:0}.beauty-page-title>p:last-child{grid-column:2;max-width:560px}.beauty-wide{margin:0}.beauty-wide img{display:block;width:100%;max-height:82vh;object-fit:cover}.beauty-wide figcaption{padding:10px clamp(18px,4vw,60px);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.service-note{background:var(--red);color:var(--cream);padding:clamp(60px,9vw,120px) clamp(18px,7vw,105px);display:grid;grid-template-columns:1.5fr 1fr;gap:6vw}.service-note h2{margin:0}.service-note button{justify-self:start;align-self:end;background:var(--cream);border:1px solid var(--cream);padding:13px 20px;cursor:pointer}.studio-gallery{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;padding:0 clamp(18px,3vw,40px)}.studio-gallery img{width:100%;height:70vw;max-height:850px;object-fit:cover}.studio-gallery img:last-child{height:45vw;align-self:end}.studio-copy{padding:clamp(80px,11vw,150px) clamp(18px,7vw,105px);display:grid;grid-template-columns:1fr 3fr;gap:6vw}.studio-copy div{max-width:850px}.studio-copy div p{max-width:600px}@media(max-width:760px){.beauty-page-title,.service-note,.studio-gallery,.studio-copy{grid-template-columns:1fr}.beauty-page-title>p:last-child{grid-column:1}.studio-gallery img,.studio-gallery img:last-child{height:110vw}}
.portrait{background-size:cover!important;background-position:center!important}.booking-shell{display:grid;grid-template-columns:.85fr 1.15fr;min-height:calc(100vh - 78px)}.booking-copy{padding:clamp(55px,8vw,120px);background:var(--ink);color:var(--cream)}.booking-copy h1{font-size:clamp(3.8rem,6vw,6.5rem)}.booking-copy>p:not(.kicker){max-width:460px;color:#bbb}.booking-copy dl{margin-top:60px;border-top:1px solid #444}.booking-copy dl div{display:grid;grid-template-columns:1fr 1fr;padding:14px 0;border-bottom:1px solid #444}.booking-copy dd{margin:0;color:#aaa}.booking-page-form{padding:clamp(45px,7vw,100px);align-content:center}.booking-page-form fieldset{border:0;border-top:1px solid var(--line);padding:22px 0;margin:0}.booking-page-form legend{padding-right:15px;color:var(--red);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.choice{display:block;cursor:pointer}.choice input{position:absolute;opacity:0}.choice span{display:flex;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line)}.choice input:checked+span{background:var(--ink);color:var(--cream)}.choice small{font-weight:400}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.booking-page-form label:not(.choice){display:grid;gap:7px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.booking-page-form input,.booking-page-form select,.booking-page-form textarea{width:100%;padding:13px;background:#f7f4ef;border:1px solid var(--line);font:inherit}.book-submit{width:100%;padding:15px;background:var(--red);color:var(--cream);border:1px solid var(--red);cursor:pointer}.book-submit:disabled{opacity:.55}.booking-confirmation{padding:16px;border:1px solid var(--red)}@media(max-width:800px){.booking-shell{grid-template-columns:1fr}.booking-copy,.booking-page-form{padding:55px 22px}.form-grid{grid-template-columns:1fr}}
