:root{--ink:#28231f;--paper:#f3eee8;--sand:#ded1c6;--rose:#b79a8d;--cream:#fbf8f4;--line:rgba(40,35,31,.22);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img,video{display:block;width:100%;height:100%;object-fit:cover}button,input,select{font:inherit;color:inherit}.skip{position:fixed;top:-60px;left:20px;background:var(--cream);padding:12px;z-index:20}.skip:focus{top:20px}.header{position:fixed;z-index:10;top:0;left:0;width:100%;height:88px;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:white;border-bottom:1px solid rgba(255,255,255,.4);transition:.4s}.header.scrolled{height:72px;background:rgba(243,238,232,.94);backdrop-filter:blur(12px);color:var(--ink);border-color:var(--line)}.brand{font-family:Georgia,serif;font-size:25px;letter-spacing:.1em;line-height:.8}.brand span,.footer-logo span{display:block;font:8px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;margin-top:8px}.header nav{display:flex;gap:34px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.header nav a{position:relative}.header nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:currentColor;transition:.35s}.header nav a:hover:after{width:100%}.reserve{display:inline-flex;justify-content:center;align-items:center;background:var(--cream);color:var(--ink);text-transform:uppercase;letter-spacing:.11em;font-size:9px;padding:19px 25px;transition:.35s}.reserve:hover{background:var(--ink);color:white}.reserve--small{justify-self:end}.header.scrolled .reserve{background:var(--ink);color:white}.menu{display:none;background:none;border:0;padding:12px}.hero{height:100svh;min-height:680px;position:relative;color:white;overflow:hidden}.hero video{filter:saturate(.62) contrast(.93);transform:scale(1.01)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,20,17,.58),rgba(26,20,17,.08) 62%,rgba(26,20,17,.16))}.hero-copy{position:absolute;left:3.2vw;bottom:9vh;width:min(800px,78vw);animation:rise .9s .15s var(--ease) both}.kicker,.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.17em}.hero h1,.manifesto h2,.services h2,.results h2,.studio h2,.booking h2{font:400 clamp(74px,9.4vw,155px)/.82 Georgia,serif;letter-spacing:-.055em;margin:34px 0}.hero-copy>p:last-of-type{font:17px/1.55 Georgia,serif;max-width:470px}.hero-link{display:flex;justify-content:space-between;max-width:330px;margin-top:42px;border-bottom:1px solid;padding:14px 0;text-transform:uppercase;font-size:9px;letter-spacing:.15em}.hero-index{position:absolute;right:3vw;bottom:5vh;font-size:9px;letter-spacing:.15em}.scroll-note{position:absolute;right:3vw;top:50%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.manifesto{min-height:94vh;padding:11vw 5vw;display:grid;grid-template-columns:18% 1fr;align-content:center;border-bottom:1px solid var(--line)}.manifesto h2{font-size:clamp(54px,7.3vw,116px);grid-column:2;max-width:1100px}.manifesto h2 em,.results h2 em{font-weight:400;color:var(--rose)}.manifesto-note{grid-column:2;display:grid;grid-template-columns:60px 320px;gap:24px;margin:50px 0 0 auto}.manifesto-note span{font:44px Georgia,serif;color:var(--rose)}.manifesto-note p{font:15px/1.65 Georgia,serif;margin:0}.services{padding:10vw 4vw;background:var(--cream)}.services-head{display:grid;grid-template-columns:18% 1fr 28%;gap:4vw;align-items:end;margin-bottom:8vw}.services-head h2{font-size:clamp(58px,7.5vw,120px);margin:0}.services-head>p:last-child{font:16px/1.65 Georgia,serif}.service{display:grid;grid-template-columns:7% 1fr 20%;gap:4vw;align-items:start;padding:34px 0;border-top:1px solid var(--line);transition:.35s}.service:last-child{border-bottom:1px solid var(--line)}.service:hover{padding-left:15px;background:rgba(222,209,198,.18)}.service>span{font-size:10px}.service h3{font:400 35px Georgia,serif;margin:0 0 10px}.service p{font:14px/1.6 Georgia,serif;margin:0;max-width:540px}.service-meta{text-align:right}.service-meta p{font:9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}.service-meta strong{display:block;font:400 17px Georgia,serif;margin-top:10px}.editorial-image{height:95svh;position:relative;overflow:hidden}.editorial-image img{filter:saturate(.65)}.editorial-image p{position:absolute;left:4vw;bottom:4vw;color:white;font:italic clamp(28px,4vw,64px)/1 Georgia,serif}.results{padding:11vw 4vw;background:var(--sand)}.results-copy{display:grid;grid-template-columns:17% 1fr 30%;gap:4vw;align-items:end;margin-bottom:6vw}.results h2{font-size:clamp(52px,6.8vw,104px);margin:0}.results-copy>p:last-child{font:15px/1.65 Georgia,serif}.compare{height:min(72vw,760px);position:relative;overflow:hidden;background:#cbbdb2}.compare-image{position:absolute;inset:0}.compare-before{width:50%;overflow:hidden;filter:saturate(.5) brightness(.88)}.compare-before img{width:calc(100vw - 8vw);max-width:none}.compare-image span{position:absolute;top:20px;padding:9px 13px;background:rgba(243,238,232,.86);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.compare-before span{left:20px}.compare-after span{right:20px}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3}.compare-line{position:absolute;left:50%;top:0;width:1px;height:100%;background:white;pointer-events:none}.compare-line i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--cream);font-style:normal}.disclaimer{font-size:9px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}.studio{display:grid;grid-template-columns:58% 42%;min-height:100svh}.studio-grid{display:grid;grid-template-columns:1fr 1fr}.studio-grid img:first-child{margin-top:12vh;height:75vh}.studio-grid img:last-child{height:58vh;align-self:end}.studio-copy{padding:10vw 5vw;background:var(--cream);display:flex;flex-direction:column;justify-content:center}.studio h2{font-size:clamp(55px,6vw,92px)}.studio-copy>p:not(.eyebrow){font:16px/1.7 Georgia,serif}.studio dl{margin-top:60px}.studio dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0}.studio dt{font-size:9px;text-transform:uppercase;letter-spacing:.12em}.studio dd{font:14px Georgia,serif;margin:0}.testimonials{padding:11vw 5vw;background:var(--ink);color:var(--cream);min-height:82vh}.testimonial-head{display:flex;justify-content:space-between}.count{font-size:10px}.testimonials blockquote{font:italic clamp(38px,5.5vw,83px)/1.08 Georgia,serif;max-width:1150px;margin:9vw auto 6vw}.testimonials blockquote footer{font:10px Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;margin-top:40px}.review-summary{text-align:right}.review-summary strong{font:70px Georgia,serif}.review-summary span{display:block;color:#cdb2a3;letter-spacing:.15em}.review-summary p{font-size:9px;text-transform:uppercase;letter-spacing:.12em}.booking{padding:11vw 5vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}.booking h2{font-size:clamp(56px,6.5vw,100px)}.booking-copy>p:last-child{font:16px/1.65 Georgia,serif;max-width:460px}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:28px 22px;align-content:center}.booking-form label{font-size:9px;text-transform:uppercase;letter-spacing:.13em}.booking-form input,.booking-form select{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:15px 2px;border-radius:0}.booking-form button{grid-column:1/-1;margin-top:18px;border:0;background:var(--ink);color:white;padding:22px;display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px;letter-spacing:.13em;cursor:pointer}.form-status{grid-column:1/-1;font:14px Georgia,serif}.footer{padding:7vw 4vw 3vw;background:#d8ccc2;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:4vw;min-height:340px}.footer-logo{font:50px Georgia,serif;letter-spacing:.08em}.footer p{font-size:9px;text-transform:uppercase;letter-spacing:.12em;opacity:.7}.footer a{display:block;font:14px/1.7 Georgia,serif}.footer-end{display:flex;flex-direction:column}.footer-end a{margin-top:auto}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease),transform .75s var(--ease)}.reveal.visible{opacity:1;transform:none}@keyframes rise{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
@media(max-width:800px){.header{height:70px;padding:0 20px;grid-template-columns:1fr auto}.header nav,.reserve--small{display:none}.menu{display:block}.menu span{display:block;width:24px;height:1px;background:currentColor;margin:6px}.header.menu-open nav{display:flex;position:absolute;top:70px;left:0;width:100%;padding:35px 20px;background:var(--paper);color:var(--ink);flex-direction:column}.hero{min-height:680px}.hero-copy{left:20px;bottom:10vh;width:calc(100% - 40px)}.hero h1{font-size:19vw}.hero-index,.scroll-note{display:none}.manifesto{padding:100px 20px;grid-template-columns:1fr;min-height:auto}.manifesto h2,.manifesto-note{grid-column:1}.manifesto h2{font-size:52px;margin-top:55px}.manifesto-note{grid-template-columns:45px 1fr}.services{padding:100px 20px}.services-head,.results-copy{grid-template-columns:1fr;gap:25px}.services-head h2{font-size:58px}.service{grid-template-columns:38px 1fr}.service-meta{grid-column:2;text-align:left;display:flex;justify-content:space-between}.editorial-image{height:75vh}.results{padding:100px 20px}.results h2{font-size:48px}.compare{height:65vh}.compare-before img{width:calc(100vw - 40px)}.studio{grid-template-columns:1fr}.studio-grid{height:70vh}.studio-grid img:first-child{margin-top:60px;height:55vh}.studio-grid img:last-child{height:44vh}.studio-copy{padding:90px 20px}.studio h2{font-size:52px}.testimonials{padding:100px 20px}.testimonials blockquote{font-size:38px;margin:80px 0}.booking{padding:100px 20px;grid-template-columns:1fr;gap:55px}.booking h2{font-size:54px}.booking-form{grid-template-columns:1fr}.booking-form button,.form-status{grid-column:1}.footer{padding:70px 20px 30px;grid-template-columns:1fr 1fr}.footer-logo{grid-column:1/-1;margin-bottom:30px}.footer-end{min-height:130px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition:none!important}}

/* Copy & hierarchy refinement */
.mobile-nav-cta{display:none}.reserve,.hero-link,.booking-form button{font-size:10px}.manifesto h2{font-size:clamp(52px,6.7vw,104px)}.services-head h2{font-size:clamp(54px,6.25vw,98px);line-height:.88}.results h2{font-size:clamp(50px,5.9vw,92px)}.studio h2{font-size:clamp(50px,5.2vw,80px);line-height:.88}.booking{padding-top:12vw;padding-bottom:12vw;gap:8vw}.booking h2{font-size:clamp(52px,5.6vw,86px);line-height:.88}.booking-assurance{margin-top:34px!important;font:9px/1.5 Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.12em;opacity:.68}.section-cta{width:100%;margin-top:50px;padding:22px 0;border-bottom:1px solid var(--ink);display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:25px;font:17px Georgia,serif;transition:padding .35s var(--ease)}.section-cta span{font:9px Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em;opacity:.65}.section-cta b{font:400 18px Arial,sans-serif}.section-cta:hover{padding-left:14px;padding-right:14px}.section-cta--compact{margin-top:24px}.testimonials{padding-top:9vw;padding-bottom:9vw;min-height:72vh}.testimonials blockquote{font-size:clamp(36px,4.8vw,72px);margin-top:7vw;margin-bottom:4vw;line-height:1.1}.review-summary strong{font-size:62px}
@media(max-width:800px){.header.menu-open .mobile-nav-cta{display:block;margin-top:12px;padding:18px 0;border-top:1px solid var(--line);font-family:Georgia,serif;font-size:15px;letter-spacing:0;text-transform:none}.manifesto h2{font-size:48px}.services-head h2{font-size:52px}.results h2{font-size:46px}.studio h2{font-size:47px}.booking h2{font-size:48px}.section-cta{grid-template-columns:1fr auto;gap:10px 18px;font-size:16px}.section-cta span{grid-column:1/-1}.testimonials{min-height:auto;padding-top:88px;padding-bottom:88px}.testimonials blockquote{font-size:35px;margin:65px 0 50px}.booking{padding-top:110px;padding-bottom:110px}}
