:root{--cherry:#680018;--red:#c4143c;--cream:#fff0d5;--ink:#160f12;--gold:#d5af65;--rose:#e6bcc2;--pad:6vw}#top,#studio,#services,#booking,#contacts{scroll-margin-top:85px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,Arial,sans-serif;overflow-x:hidden}body.loading{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Tenor Sans",sans-serif;font-weight:400}.loader{position:fixed;z-index:1000;inset:0;background:var(--cherry);display:grid;place-items:center;transition:clip-path .9s cubic-bezier(.76,0,.24,1),visibility .9s;clip-path:inset(0 0 0 0)}.loader.done{clip-path:inset(0 0 100% 0);visibility:hidden}.loader img{width:100px;height:120px}.loader span{position:absolute;bottom:15%;width:120px;height:1px;background:#ffffff26;overflow:hidden}.loader span:after{content:"";display:block;width:45%;height:100%;background:var(--gold);animation:load 1.1s infinite ease-in-out}@keyframes load{from{transform:translateX(-100%)}to{transform:translateX(230%)}}.header{height:88px;padding:0 var(--pad);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;position:absolute;z-index:20;top:0;width:100%;color:var(--cherry);border-bottom:1px solid #68001826}.header.sticky{position:fixed;height:70px;background:#fff0d5e8;backdrop-filter:blur(16px);animation:headerIn .4s ease;box-shadow:0 8px 30px #3e00100c}@keyframes headerIn{from{transform:translateY(-100%)}to{transform:none}}.identity{display:flex;align-items:center;gap:11px;font:19px "Tenor Sans";letter-spacing:.1em;text-transform:uppercase;width:max-content}.identity img{width:38px;height:48px;object-fit:contain}.nav{display:flex;gap:34px;font-size:10px;text-transform:uppercase;letter-spacing:.16em}.nav a{position:relative;padding:9px 0}.nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;transform:scaleX(0);transition:transform .35s;transform-origin:right}.nav a:hover:after{transform:scaleX(1);transform-origin:left}.header-actions{display:flex;align-items:center;gap:22px;justify-self:end}.header-cta{border-bottom:1px solid currentColor;padding:8px 0;font-size:10px;text-transform:uppercase;letter-spacing:.16em}.header-icon{width:38px;height:38px;flex-shrink:0;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;transition:background .3s,color .3s}.header-icon svg{width:16px;height:16px}.header-icon-text{font:700 11px Manrope,sans-serif;letter-spacing:-.02em}.nav-icons{display:none}.header-icon:hover{background:var(--cherry);color:var(--cream)}.header-cta span{display:inline-block;margin-left:12px;transition:transform .3s}.header-cta:hover span{transform:translate(4px,-4px)}.menu{display:none;border:0;background:none}.hero{height:max(760px,100vh);height:max(760px,100dvh);position:relative;padding:88px var(--pad) 40px;display:grid;grid-template-columns:58% 42%;background:var(--cream);overflow:hidden}.hero-copy{position:relative;z-index:3;align-self:center}.kicker,.section-label{text-transform:uppercase;font-size:9px;letter-spacing:.25em;font-weight:600}.hero h1{font-size:clamp(5rem,9.2vw,10.5rem);line-height:.82;letter-spacing:-.065em;color:var(--cherry);margin:40px 0}.title-line{display:block;overflow:hidden;padding-bottom:.07em}.title-line>span{display:block;transform:translateY(110%);animation:titleIn 1s .9s cubic-bezier(.16,1,.3,1) forwards}.title-line.indent{padding-left:9vw}@keyframes titleIn{to{transform:none}}.hero-bottom{display:flex;align-items:center;gap:45px;margin-left:9vw}.hero-bottom p{font-size:13px;line-height:1.7;margin:0}.circle-link{width:66px;height:66px;border:1px solid var(--cherry);border-radius:50%;display:grid;place-items:center;transition:background .3s,color .3s,transform .3s}.circle-link:hover{background:var(--cherry);color:var(--cream);transform:rotate(45deg)}.hero-image{position:absolute;right:0;top:0;width:44%;height:100%;margin:0;overflow:hidden}.hero-image img{height:100%;object-fit:cover;object-position:62% center;transform:scale(1.07);animation:imageSettle 1.7s .35s cubic-bezier(.16,1,.3,1) forwards}@keyframes imageSettle{to{transform:scale(1)}}.ticker{position:absolute;left:0;right:0;bottom:0;background:var(--cherry);color:var(--cream);padding:20px 0;overflow:hidden}.ticker-track{display:flex;width:max-content;align-items:center;animation:ticker 25s linear infinite}.ticker span{font:clamp(1.4rem,2.4vw,2.4rem) "Tenor Sans";text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.ticker i{font-style:normal;color:var(--gold);margin:0 34px;font-size:10px}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding:150px var(--pad)}.manifesto{background:var(--cream)}.manifesto-layout{display:grid;grid-template-columns:1fr 1fr;gap:10vw;margin-top:80px}.manifesto h2,.services h2,.booking h2,.lookbook-layout h2{font-size:clamp(3.7rem,7.4vw,8rem);line-height:.93;letter-spacing:-.055em;margin:0}.lookbook-layout h2{color:var(--cherry)}.manifesto h2 em{color:var(--red);font-style:normal}.booking h2 em{color:var(--cherry);font-style:normal}.manifesto-copy{padding-top:50px}.large-copy{font:clamp(1.4rem,2.2vw,2.1rem)/1.55 "Tenor Sans";max-width:640px}.manifesto-copy>p:not(.large-copy){max-width:500px;line-height:1.85;color:#634c50}.lookbook{padding:40px var(--pad) 150px;background:var(--cream);overflow:hidden}.lookbook-layout{display:grid;grid-template-columns:1fr 1fr;gap:2cm;align-items:center;margin-top:50px}.lookbook-carousel{position:relative;max-width:calc(560px + 8.5cm);margin-left:-3cm;aspect-ratio:4/5}.lookbook-frame{position:absolute;inset:0;overflow:hidden}.lookbook-track{display:flex;width:500%;height:100%;animation:lookbookSlide 7s cubic-bezier(.76,0,.24,1) infinite}.look-photo{flex:0 0 20%;height:100%;margin:0;overflow:hidden;position:relative}.look-photo img{width:100%;height:100%;object-fit:cover;display:block}.look-photo figcaption{position:absolute;left:16px;bottom:14px;color:#fff;mix-blend-mode:difference;font-size:8px;text-transform:uppercase;letter-spacing:.18em}.look-caption{margin-top:45px;font:clamp(1.1rem,1.8vw,1.7rem)/1.5 "Tenor Sans";color:var(--cherry);max-width:600px}.gallery-note{color:#8a6b6f;font-size:10px;margin-top:16px}@keyframes lookbookSlide{0%,14.29%{transform:translateX(0%)}25%,39.29%{transform:translateX(-20%)}50%,64.29%{transform:translateX(-40%)}75%,89.29%{transform:translateX(-60%)}100%{transform:translateX(-80%)}}
.hero,.manifesto,.lookbook,.services,.booking,.contacts{position:sticky;top:0}.hero{z-index:1}.manifesto{z-index:3}.lookbook{z-index:4}.services{z-index:5}.booking{z-index:9}.contacts{z-index:10}
.manifesto-photo{color:var(--cream)}.manifesto-bg{position:absolute;inset:0;z-index:0;background-color:var(--ink);background-size:cover;background-position:center 22%}.manifesto-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(160deg,rgba(22,15,18,.55) 0%,rgba(22,15,18,.82) 100%)}.manifesto-photo>.section-label,.manifesto-photo>.manifesto-layout{position:relative;z-index:2}.manifesto-photo h2{color:var(--cream)}.manifesto-photo h2 em{color:var(--gold)}.manifesto-photo .large-copy{color:var(--cream)}.manifesto-photo .manifesto-copy>p:not(.large-copy){color:#dcc5c8}.services{background:var(--cherry);color:var(--cream)}.services-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:90px}.services-head>p{max-width:390px;color:#bda9aa;line-height:1.8;font-size:13px}.service-row{display:grid;grid-template-columns:60px 1fr auto 35px;align-items:center;gap:25px;padding:27px 5px;border-top:1px solid #fff0d52e;position:relative;transition:padding .4s,color .3s}.service-row:before{content:"";position:absolute;inset:0;background:var(--cream);transform:scaleY(0);transition:transform .35s;transform-origin:bottom}.service-row>*{position:relative;z-index:1}.service-row:hover{color:var(--cherry);padding-left:18px;padding-right:18px}.service-row:hover:before{transform:scaleY(1)}.service-row h3{font-size:clamp(1.1rem,2vw,1.8rem);margin:0}.service-row b{font-size:13px;font-weight:500}.service-no{font-size:9px;color:var(--gold)}.row-arrow{font-size:20px;transition:transform .3s}.service-row:hover .row-arrow{transform:translate(4px,-4px)}.extras{border-top:1px solid #fff0d52e;border-bottom:1px solid #fff0d52e}.extras summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:30px 5px;text-transform:uppercase;letter-spacing:.15em;font-size:10px}.extras summary::-webkit-details-marker{display:none}.extras summary span{font-size:20px;transition:transform .3s}.extras[open] summary span{transform:rotate(45deg)}.extras-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 70px;padding:10px 5px 35px}.extras-grid p{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #ffffff14;font-size:12px}.extras-grid b{color:var(--gold)}.booking{position:relative;overflow:hidden;background:var(--ink);color:var(--cream);display:grid;grid-template-columns:1fr .75fr;gap:10vw;padding:150px var(--pad)}.booking-ghost{position:absolute;left:-2vw;bottom:-3vw;margin:0;color:transparent;-webkit-text-stroke:1px rgba(255,240,213,.12);font:clamp(7rem,17vw,18rem)/.8 "Tenor Sans";letter-spacing:-.06em}.booking-copy,.booking-actions{position:relative;z-index:2}.booking-copy>p:last-child{max-width:480px;line-height:1.8;color:#bda9aa;margin-top:35px}.booking-actions{padding-top:65px}.booking-actions a{display:flex;justify-content:space-between;align-items:center;padding:25px 4px;border-top:1px solid #fff0d52e;font:1.5rem "Tenor Sans";transition:padding .35s,background .35s,color .35s}.booking-actions a:hover{padding-left:18px;padding-right:18px;background:var(--cherry);color:var(--cream)}.booking-actions i{font-style:normal;transition:transform .3s}.booking-actions a:hover i{transform:translate(5px,-5px)}.booking-actions small{display:block;color:#bda9aa;margin-top:20px}.contacts{display:grid;grid-template-columns:.8fr 1.2fr;min-height:620px;background:var(--cream);border-top:1px solid #68001826}.contact-copy{padding:90px var(--pad);position:relative}.contact-copy h2{font-size:clamp(3rem,6vw,6.5rem);color:var(--cherry);margin:40px 0 20px}.address{font:1.5rem "Tenor Sans";margin-bottom:55px}.address+.address{margin-top:-1cm}.contact-copy>a{font-size:10px;text-transform:uppercase;letter-spacing:.15em;border-bottom:1px solid var(--cherry);padding-bottom:8px}.contact-copy a.section-label{display:inline-block;transition:opacity .3s}.contact-copy a.section-label:hover{opacity:.6}.contact-copy>a span{margin-left:12px}.map-wrap{position:relative;overflow:hidden}
.map-guard{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;border:0;background:rgba(22,15,18,.18);color:var(--cream);font:600 11px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.12em;text-shadow:0 1px 6px rgba(0,0,0,.6);cursor:pointer;transition:opacity .3s}
.map-guard.hidden{opacity:0;pointer-events:none}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);z-index:300;background:var(--ink);color:var(--cream);padding:16px 24px;font-size:13px;line-height:1.5;max-width:90vw;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.toast{bottom:90px}}.map-wrap iframe{width:100%;height:100%;min-height:620px;border:0;filter:grayscale(1) sepia(.15) contrast(.92)}.footer{background:var(--ink);color:var(--cream);padding:55px var(--pad);display:flex;align-items:center;justify-content:space-between}.footer>div{display:flex;align-items:center;gap:15px;font:20px "Tenor Sans";text-transform:uppercase;letter-spacing:.13em}.footer img{width:44px;height:55px;object-fit:contain}.footer p{font-size:9px;text-transform:uppercase;letter-spacing:.15em;line-height:1.7;margin:0;color:#bbaeb0}.footer>a{font-size:9px;text-transform:uppercase;letter-spacing:.15em}.reveal{opacity:0;transform:translateY(35px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}.image-reveal{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s cubic-bezier(.76,0,.24,1)}.image-reveal.visible{clip-path:inset(0)}.section-reveal{opacity:0;transform:translateY(40px);transition:opacity .4s ease,transform .4s cubic-bezier(.16,1,.3,1)}.section-reveal.visible{opacity:1;transform:none}.mobile-book{display:none}
@media(max-width:900px){:root{--pad:5vw}#top,#studio,#services,#booking,#contacts{scroll-margin-top:70px}.hero,.manifesto,.lookbook,.services,.booking,.contacts{position:relative}.reveal,.image-reveal,.section-reveal{opacity:1;transform:none;clip-path:none;transition:none}.header{grid-template-columns:1fr auto}.nav,.header-actions{display:none}.menu{display:block;width:32px;height:32px;padding:5px}.menu i{display:block;height:1px;background:var(--cherry);margin:7px 0;transition:transform .3s}.menu.open i:first-child{transform:translateY(4px) rotate(45deg)}.menu.open i:last-child{transform:translateY(-4px) rotate(-45deg)}.nav.open{display:flex;position:fixed;inset:70px 0 auto;background:var(--cream);padding:35px var(--pad);flex-direction:column;font-size:17px;gap:15px;border-bottom:1px solid #68001830}.nav-icons{display:flex;gap:14px;margin-top:10px;padding-top:20px;border-top:1px solid #68001830}.hero{grid-template-columns:1fr;padding-top:100px;height:auto;min-height:850px;align-items:end}.hero-copy{align-self:end;padding-bottom:90px}.hero-image{width:53%;height:58%;top:0}.kicker{background-image:linear-gradient(90deg,var(--ink) 0,var(--ink) 47vw,var(--cream) 47vw,var(--cream) 100vw);background-attachment:fixed;-webkit-background-clip:text;background-clip:text;color:transparent}.hero h1{font-size:clamp(4.3rem,13vw,8rem);margin-top:320px}.manifesto-layout,.booking{grid-template-columns:1fr}.manifesto-copy{padding-left:20vw}.lookbook-layout{grid-template-columns:1fr;gap:6vw}.lookbook-carousel{max-width:100%;margin-left:0}.services-head{align-items:flex-start;flex-direction:column;gap:25px}.contacts{grid-template-columns:1fr}.map-wrap iframe{min-height:420px}.footer{padding-bottom:95px}.mobile-book{display:flex;position:fixed;z-index:15;bottom:0;left:0;right:0;background:var(--cherry);color:var(--cream);padding:17px 22px;justify-content:space-between;text-transform:uppercase;letter-spacing:.15em;font-size:10px;box-shadow:0 -6px 25px #35000d55}}
@media(max-width:600px){.header{height:70px}.identity img{width:33px;height:40px}.identity span{font-size:16px}.hero{min-height:780px}.hero-image{width:73%;height:47%}.kicker{background-image:linear-gradient(90deg,var(--ink) 0,var(--ink) 27vw,var(--cream) 27vw,var(--cream) 100vw);background-attachment:fixed}.hero h1{font-size:4.2rem;margin-top:305px;line-height:.88}.title-line.indent{padding-left:10vw}.hero-bottom{margin-left:0;gap:20px}.circle-link{width:55px;height:55px}.section{padding:100px var(--pad)}.manifesto-layout{margin-top:50px}.manifesto h2,.services h2,.booking h2,.lookbook-layout h2{font-size:3.6rem}.manifesto-copy{padding-left:12vw}.large-copy{font-size:1.3rem}.stat strong{font-size:4rem}.lookbook{padding-bottom:100px}.lookbook-layout{margin-top:30px;gap:30px}.lookbook-carousel{aspect-ratio:1/1}.look-caption{margin-top:30px}.services-head{margin-bottom:55px}.faq-head{margin-bottom:45px}.faq-item summary{font-size:1.05rem;padding:22px 0}.faq-item p{padding-bottom:26px}.service-row{grid-template-columns:28px 1fr auto;gap:10px;padding:22px 0}.service-row h3{font-size:1rem}.service-row b{font-size:11px}.row-arrow{display:none}.extras-grid{grid-template-columns:1fr}.booking{padding:100px var(--pad)}.booking-actions{padding-top:20px}.contacts{min-height:0}.contact-copy{padding:80px var(--pad)}.map-wrap iframe{min-height:360px}.footer{align-items:flex-start;gap:30px;flex-wrap:wrap}.footer p{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loader{display:none}.title-line>span,.hero-image img{animation:none;transform:none}.reveal{opacity:1;transform:none;transition:none}.image-reveal{clip-path:none;transition:none}.hero,.manifesto,.lookbook,.services,.booking,.contacts{position:relative}}
@media(min-width:901px){.header:not(.sticky) .nav a[href="#contacts"] .split-a{color:var(--cherry)}.header:not(.sticky) .nav a[href="#contacts"] .split-b{color:var(--cream)}.header:not(.sticky) .header-cta,.header:not(.sticky) .header-icon{color:var(--cream)}}
@media(max-width:900px){.header:not(.sticky) .identity .split-a{color:var(--cherry)}.header:not(.sticky) .identity .split-b{color:var(--cream)}}
body.modal-open{overflow:hidden}
.booking-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;transition:opacity .3s}
.booking-modal.open{opacity:1;visibility:visible}
.booking-modal-backdrop{position:absolute;inset:0;background:rgba(22,15,18,.62);backdrop-filter:blur(4px)}
.booking-modal-shell{position:relative;width:100%;max-width:460px}
.booking-modal-box{background:var(--cream);color:var(--ink);width:100%;max-height:90vh;overflow-y:auto;padding:50px 40px 40px;box-shadow:0 30px 80px rgba(22,15,18,.4);transform:scale(.96);transition:transform .3s}
.booking-modal.open .booking-modal-box{transform:scale(1)}
.booking-modal-close{position:fixed;top:16px;right:16px;width:51px;height:51px;border:0;background:none;font-size:30px;line-height:1;color:var(--cream);cursor:pointer;transition:background .3s,color .3s;z-index:2}
@media(min-width:701px){.booking-modal-close{position:absolute;top:calc(0px - 0.5cm);right:-50px}}
.booking-modal-close:hover{background:var(--cherry);color:var(--cream)}
.booking-modal-box h3{font-size:clamp(1.8rem,3vw,2.4rem);font-family:"Tenor Sans",sans-serif;color:var(--cherry);margin:14px 0 16px;line-height:1.05}
.booking-modal-note{font-size:12px;line-height:1.7;color:#72575b;margin-bottom:30px}
#bookingForm{display:flex;flex-direction:column;gap:20px}
#bookingForm label,#bookingForm .field-label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.18em;color:#8a6b6f}
#bookingForm input:not([type="checkbox"]),#bookingForm select{display:block;width:100%;border:0;border-bottom:1px solid #68001842;background:transparent;padding:10px 0;margin-top:8px;font:1rem Manrope,sans-serif;color:var(--ink);transition:border-color .3s;-webkit-appearance:none;appearance:none;border-radius:0}
#bookingForm input:focus,#bookingForm select:focus{outline:none;border-color:var(--cherry)}
.time-slots{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}
.time-slots button{border:1px solid #68001842;background:transparent;padding:10px 0;font:13px Manrope,sans-serif;color:var(--ink);cursor:pointer;transition:background .25s,color .25s,border-color .25s}
.time-slots button:hover{border-color:var(--cherry)}
.time-slots button[aria-pressed="true"]{background:var(--cherry);border-color:var(--cherry);color:var(--cream)}
.time-slots.error button{border-color:var(--red)}
.booking-modal-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;margin-top:10px;padding:18px;border:0;background:var(--cherry);color:var(--cream);font:1rem "Tenor Sans";text-transform:uppercase;letter-spacing:.12em;cursor:pointer;transition:background .3s}
.booking-modal-submit:hover{background:var(--ink)}
.booking-modal-submit i{font-style:normal;transition:transform .3s}
.booking-modal-submit:hover i{transform:translate(4px,-4px)}
.cselect{position:relative;margin-top:8px}
.cselect-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;border-bottom:1px solid #68001842;background:transparent;padding:10px 0;font:1rem Manrope,sans-serif;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .3s}
.cselect-trigger span{color:inherit}
.cselect-trigger i{font-style:normal;color:var(--cherry);transition:transform .3s;margin-left:10px;flex-shrink:0}
.cselect[data-open] .cselect-trigger i{transform:rotate(180deg)}
.cselect:focus-within .cselect-trigger,.cselect-trigger:hover{border-color:var(--cherry)}
.cselect.error .cselect-trigger{border-color:var(--red)}
.cselect-list{position:absolute;z-index:5;top:calc(100% + 6px);left:0;right:0;max-height:230px;overflow-y:auto;background:var(--cream);border:1px solid #68001842;box-shadow:0 20px 40px rgba(22,15,18,.18);list-style:none;margin:0;padding:6px 0}
.cselect-list li{padding:12px 14px;font-size:14px;line-height:1.4;cursor:pointer;transition:background .2s,color .2s}
.cselect-list li:hover,.cselect-list li[aria-selected="true"]{background:var(--cherry);color:var(--cream)}
.cselect-native{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.booking-modal-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;color:#72575b;cursor:pointer}
.booking-modal-consent input{accent-color:var(--cherry);width:16px;height:16px;flex-shrink:0;margin-top:2px}
.booking-modal-consent a{border-bottom:1px solid currentColor}
@media(max-width:420px){.booking-modal-box{padding:44px 24px 32px}.time-slots{grid-template-columns:repeat(4,1fr)}}
