@font-face{font-family:'Antic Didone';src:url('assets/fonts/antic-didone.ttf') format('truetype');font-display:swap;font-weight:400}@font-face{font-family:Manrope;src:url('assets/fonts/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--wine:#581E2A;--paper:#FCFAF7;--ink:#302522;--cream:#F3E5CB;--surface:#F3EEE7;--stone:#B7AA96;--line:#ddd4cb;--display:'Antic Didone',Georgia,serif;--body:Manrope,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:400 15px/1.75 var(--body);overflow-x:clip}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:6px}img{max-width:100%;display:block;object-fit:cover}figure,p{margin:0}h1,h2,h3,h4{font:400 60px/1.07 var(--display);margin:0;font-synthesis:none}button{color:inherit}section,article{scroll-margin-top:100px}::selection{background:var(--wine);color:var(--paper)}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;background:var(--wine);color:var(--paper);padding:10px 18px;z-index:100}.skip-link:focus{top:12px}
.site-header{height:105px;position:sticky;top:0;z-index:30;background:var(--paper);border-bottom:1px solid var(--line)}.site-header nav:not(.mobile-nav){height:100%;max-width:1600px;margin:auto;display:grid;grid-template-columns:1fr 170px 1fr;align-items:center;padding:0 4.3%;gap:30px}.nav-left,.nav-right{display:flex;align-items:center;gap:25px;font-size:12px}.nav-right{justify-content:flex-end}.brand{width:138px;justify-self:center}.brand img{width:100%;height:auto}.location{font-size:10px;white-space:nowrap}.nav-inquire{display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--wine);padding:8px 0;color:var(--wine)}.nav-inquire span{font-size:22px}.nav-left a{position:relative}.nav-left a::after{content:'';position:absolute;bottom:-4px;left:0;width:100%;height:1px;background:var(--wine);transform:scaleX(0);transform-origin:left;transition:transform .25s}.nav-left a:hover::after{transform:scaleX(1)}.scroll-progress{height:2px;background:var(--wine);transform:scaleX(0);transform-origin:left}.menu-toggle,.mobile-nav{display:none}.text-link{display:inline-flex;align-items:center;gap:35px;border-bottom:1px solid var(--wine);padding-bottom:8px;color:var(--wine);font-size:12px}.text-link span{font-size:25px;transition:transform .25s}.text-link:hover span{transform:translate(3px,3px)}.quiet-label{font-size:12px;line-height:1.4;color:var(--wine);margin-bottom:18px}
.hero{height:820px;max-width:1600px;margin:0 auto;position:relative;padding:0 5%;isolation:isolate}.hero-location{position:absolute;top:45px;left:5%;font-size:11px;display:flex;align-items:center;gap:9px}.tiny-dot{width:5px;height:5px;border-radius:50%;background:var(--wine)}.hero h1{position:absolute;top:122px;left:5%;z-index:5;color:var(--wine);font-size:clamp(68px,7.7vw,120px);letter-spacing:-.055em;line-height:1.02;pointer-events:none}.hero-copy{position:absolute;left:5.3%;top:430px;z-index:5;max-width:355px}.hero-copy>p:first-child{font-size:17px;line-height:1.65}.intro-small{font-size:12px;line-height:1.85;margin:22px 0 26px}.hero-main{position:absolute;top:44px;left:51%;width:35%;height:620px;z-index:3}.hero-main>img{width:100%;height:100%;object-position:50% 40%}.hero-main::after{content:'';position:absolute;inset:16px -16px -16px 16px;border:1px solid var(--stone);z-index:-1}.hero-main figcaption{display:flex;justify-content:space-between;font-size:10px;margin-top:24px;color:var(--wine)}.hero-overlap{position:absolute;top:466px;left:41%;width:18%;height:288px;z-index:6;transform:none;padding:9px;background:var(--paper);box-shadow:0 18px 34px #30252216}.hero-overlap img{width:100%;height:calc(100% - 29px);object-position:50% 30%}.hero-overlap figcaption{font-size:9px;text-align:center;margin-top:5px}.hero-art{position:absolute;right:-3%;top:155px;width:26%;height:340px;background:var(--wine);z-index:1;clip-path:ellipse(47% 49% at 50% 50%);background-image:url('assets/deco-pattern-cream.svg');background-repeat:repeat;background-size:180px 300px}.hero-stamp{position:absolute;right:3%;bottom:86px;width:150px;height:150px;z-index:5;color:var(--wine)}.hero-stamp svg{width:100%;height:100%;animation:stamp-turn 40s linear infinite}.hero-stamp text{font:12px var(--body);letter-spacing:1.3px;fill:var(--wine)}.hero-stamp>span{font:65px var(--display);position:absolute;inset:35px 0;text-align:center}.hero-bottom{position:absolute;bottom:46px;left:5.3%;font-size:11px;line-height:1.7}.hero-bottom>span{color:#726358}.scroll-note{position:absolute;right:5%;bottom:25px;font-size:10px;display:flex;align-items:center;gap:30px}.scroll-note span{font-size:24px}.hero-background-type{position:absolute;bottom:20px;left:25%;color:var(--surface);font:160px var(--display);z-index:-1;letter-spacing:-.03em}
.lookbook{height:190vh;min-height:1450px;position:relative;background:var(--wine);color:var(--paper);margin-top:38px;clip-path:polygon(0 0,100% 40px,100% 100%,0 calc(100% - 25px));padding-top:40px}.lookbook-stage{height:calc(100vh - 105px);min-height:680px;max-height:960px;position:sticky;top:105px;padding:36px 0 30px;overflow:hidden}.lookbook-heading{display:flex;justify-content:space-between;gap:30px;padding:0 5%;align-items:flex-end;position:relative;z-index:2}.lookbook-heading h2{font-size:64px;letter-spacing:-.02em}.lookbook .quiet-label{color:var(--cream);margin-bottom:12px}.lookbook-intro{margin-bottom:10px}.lookbook-intro p{font-size:12px;line-height:1.8}.look-filters{display:flex;gap:20px;margin-top:20px}.look-filters button{border:0;background:none;padding:0 0 8px;color:#d6bfc2;font-size:11px;border-bottom:1px solid transparent}.look-filters button.active{color:var(--paper);border-bottom-color:var(--paper)}.look-filters button:focus-visible,.gallery-controls button:focus-visible{outline-color:var(--paper)}.gallery-controls{display:flex;gap:12px;align-self:center}.gallery-controls button,.dialog-navigation button{width:42px;height:42px;border-radius:50%;background:none;border:1px solid #fcfaf750;color:var(--paper);font-size:22px;transition:background .2s}.gallery-controls button:hover{background:#ffffff14}.lookbook-window{margin-top:24px;overflow:hidden;width:100%;padding-bottom:12px}.lookbook-track{display:flex;gap:37px;padding-left:5vw;padding-right:5vw;width:max-content;will-change:transform;align-items:flex-start}.look-card{width:clamp(245px,24vw,355px);flex-shrink:0}.look-card.card-offset{margin-top:43px;width:clamp(235px,23vw,335px)}.look-open{background:none;border:0;padding:0;width:100%;text-align:left;color:var(--paper);display:block}.look-card figure{position:relative}.look-card img{width:100%;height:clamp(295px,37vh,500px);object-position:center 30%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.look-card figcaption{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-size:11px}.look-card figcaption span:last-child{font-size:9px;color:#d6bfc2}.look-open:hover img{transform:scale(.985)}.view-look{position:absolute;right:14px;bottom:62px;padding:9px 12px;background:var(--paper);color:var(--wine);font-size:10px;opacity:0;transform:translateY(8px);transition:.2s}.view-look span{padding-left:13px}.look-open:hover .view-look,.look-open:focus-visible .view-look{opacity:1;transform:none}.lookbook-footer{margin:27px 5% 0;display:flex;justify-content:space-between;font-size:9px;color:#ddc9cc}.gallery-hint{color:var(--cream)}
.service-world{position:relative;max-width:1400px;margin:-95px auto 0;padding:210px 5% 145px;display:grid;grid-template-columns:43% 48%;gap:9%;isolation:isolate}.service-photo{align-self:start;position:sticky;top:170px;height:555px;transform:none;padding:11px;background:var(--paper);box-shadow:0 10px 40px #30252212;z-index:2}.service-photo>img{height:calc(100% - 28px);width:100%;object-position:center 25%;transition:opacity .25s}.service-photo figcaption{font-size:10px;margin:8px 5px}.service-menu{padding-top:28px;position:relative;z-index:3}.service-menu h2{font-size:78px;color:var(--wine);letter-spacing:-.03em;margin-bottom:22px}.service-menu>p:not(.quiet-label):not(.pricing-note){font-size:12px;line-height:1.9;margin-bottom:34px}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{display:grid;grid-template-columns:1fr auto 20px;gap:22px;align-items:center;cursor:pointer;list-style:none;padding:21px 0}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span:first-child{font:29px var(--display);color:var(--wine)}.price{font-size:11px;white-space:nowrap}.expand-icon{font-size:23px;line-height:1;text-align:right;transition:transform .25s}.service-list details[open] .expand-icon{transform:rotate(45deg)}.service-detail{padding-bottom:24px;max-width:390px;font-size:12px}.service-detail a{display:inline-flex;gap:25px;margin-top:16px;font-size:10px;border-bottom:1px solid var(--wine);padding-bottom:5px;color:var(--wine)}.pricing-note{font-size:9px;color:#77695e;line-height:1.8;margin-top:22px}.service-pattern{position:absolute;z-index:0;left:-7%;top:110px;width:43%;height:450px;background:url('assets/deco-pattern.svg') repeat;background-size:200px 333.333px;opacity:.13}.service-background-type{position:absolute;bottom:16px;right:5%;font:125px var(--display);color:var(--surface);z-index:-1;white-space:nowrap}
.sophie-world{display:grid;grid-template-columns:39% 51%;gap:10%;position:relative;margin:-60px auto 0;max-width:1320px;padding:40px 6% 125px;isolation:isolate}.sophie-photo{margin-top:115px;position:relative;z-index:2}.sophie-photo::before{content:'';position:absolute;inset:-20px 25px 22px -25px;border:1px solid var(--stone);transform:none;z-index:-1}.sophie-photo-frame{aspect-ratio:1/1.14;background:var(--surface);overflow:hidden}.sophie-photo img{width:100%;height:100%;object-position:57% center}.sophie-photo figcaption{margin-top:14px;font-size:10px}.sophie-copy h2{font-size:76px;letter-spacing:-.02em;color:var(--wine);margin-bottom:29px}.sophie-copy .quiet-label{margin-top:22px}.sophie-lead{font:27px/1.4 var(--display);margin-bottom:24px}.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){max-width:470px;font-size:13px;margin-bottom:20px;line-height:1.9}.signature{font-size:10px;margin:24px 0 26px}.signature span{font:36px var(--display);color:var(--wine)}.getting-ready{grid-column:2;margin-top:40px;padding-top:25px;border-top:1px solid var(--line)}.getting-ready h3{font-size:30px;margin-bottom:22px}.getting-ready ol{margin:0;padding-left:20px;display:flex;gap:30px}.getting-ready li{font-size:10px;flex:1;padding-left:4px}.getting-ready li>span{display:block;font-size:11px;color:var(--wine);margin-bottom:7px}.getting-ready li p{font-size:10px;color:#77695e;line-height:1.8}
.inquiry-world{background:var(--wine);color:var(--paper);position:relative;padding:100px 7% 105px;display:grid;grid-template-columns:47% 45%;gap:8%;isolation:isolate;max-width:1700px;margin:auto}.inquiry-heading{position:relative;z-index:2;padding-top:25px}.inquiry-heading>p{font-size:12px;margin-bottom:25px;line-height:1.9}.inquiry-heading h2{font-size:clamp(70px,7vw,112px);letter-spacing:-.035em;line-height:1.05;margin-bottom:35px}.inquiry-location{font-size:10px;color:var(--cream)}.inquiry-pattern{position:absolute;right:3%;top:-70px;width:35%;height:580px;background:url('assets/deco-pattern-cream.svg') repeat;background-size:210px 350px;opacity:.2;z-index:-1}.inquiry-card{background:var(--paper);color:var(--ink);padding:34px 38px;position:relative;z-index:2;box-shadow:18px 18px 0 #773845;border:1px solid var(--wine);transform:none;margin-top:-27px}.inquiry-card h3{font-size:40px;color:var(--wine);margin-bottom:8px}.form-intro{font-size:11px;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 16px}.form-grid label{display:block;font-size:10px;color:var(--wine)}.form-grid .full{grid-column:1/-1}input,select,textarea{width:100%;padding:9px 0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;color:var(--ink);font-size:11px;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:1px solid var(--wine);outline-offset:4px}input::placeholder,textarea::placeholder{color:#8a7b70;opacity:1}textarea{resize:vertical;min-height:74px}select{min-height:39px}.primary-button{display:flex;align-items:center;justify-content:space-between;gap:25px;background:var(--wine);color:var(--paper);border:1px solid var(--wine);padding:13px 18px;min-height:46px;font-size:11px;text-align:left}.primary-button:hover{background:#71303d}.primary-button:focus-visible{outline-offset:4px}.inquiry-card .primary-button{margin-top:25px;width:100%}.primary-button span{font-size:20px}.form-note{font-size:9px;color:#7f7065;margin-top:14px;line-height:1.7}.inquiry-card h4{font-size:32px;color:var(--wine);margin:16px 0}#inquiry-result>p{font-size:12px}#inquiry-summary{font:11px/1.8 var(--body);white-space:pre-wrap;overflow-wrap:anywhere;max-height:340px;overflow:auto;background:var(--surface);padding:16px}.text-button{background:none;border:0;text-decoration:underline;font-size:12px;padding:14px 0}.result-actions .primary-button{margin-top:16px}#copy-status{font-size:11px;color:var(--wine)}
.site-footer{display:grid;grid-template-columns:180px 1fr auto;gap:32px;padding:50px 6% 28px;align-items:center;background:var(--paper)}.footer-logo{display:block;width:160px;max-width:100%}.footer-logo img{width:100%;height:auto;object-fit:contain}.site-footer>p{font-size:11px;line-height:1.8}.site-footer>div{display:flex;gap:25px;font-size:10px}.photo-credits{grid-column:1/-1;border-top:1px solid var(--line);padding-top:15px;font-size:9px;color:#796c62}.photo-credits summary{cursor:pointer}.photo-credits p{margin:12px 0}.photo-credits a{display:inline-block;text-decoration:underline;margin-right:20px}.site-footer small{font-size:9px;grid-column:1/-1;color:#796c62}
dialog{border:0;padding:0;width:min(1050px,92vw);max-height:90vh;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 20px 80px #0004}dialog::backdrop{background:#302522c9;backdrop-filter:blur(8px)}dialog figure{display:grid;grid-template-columns:53% 47%}dialog figure>img{width:100%;height:75vh;max-height:720px;object-position:center 25%}dialog figcaption{padding:85px 38px 35px;display:flex;flex-direction:column;justify-content:center}dialog h2{font-size:48px;color:var(--wine);margin-bottom:22px}dialog figcaption>p:not(.quiet-label){font-size:12px}.dialog-close{position:absolute;z-index:4;right:17px;top:16px;width:36px;height:36px;border:1px solid var(--wine);border-radius:50%;font-size:27px;line-height:1;background:var(--paper);color:var(--wine)}dialog .primary-button{margin-top:30px}.source-link{font-size:10px;text-decoration:underline;margin-top:24px}.dialog-note{font-size:9px!important;color:#77695e;margin-top:9px}.dialog-navigation{position:absolute;left:22px;bottom:20px;display:flex;gap:10px}.dialog-navigation button{background:var(--paper);color:var(--wine);border-color:var(--wine)}
@keyframes stamp-turn{to{transform:rotate(360deg)}}
@media(min-width:1700px){.hero h1{font-size:125px}.hero{height:880px}.hero-main{height:660px}.hero-copy{top:470px}}
@media(max-width:1100px){.nav-left,.nav-right{gap:16px}.location{display:none}.hero{height:770px}.hero h1{font-size:85px;top:133px}.hero-main{left:49%;width:39%;height:570px}.hero-copy{top:390px;width:33%}.hero-copy>p:first-child{font-size:15px}.hero-overlap{top:440px;left:40%;width:22%;height:275px}.hero-stamp{width:115px;height:115px;bottom:75px}.hero-stamp>span{font-size:48px;inset:25px 0}.hero-background-type{font-size:120px}.lookbook-heading h2{font-size:53px}.look-filters{gap:13px}.lookbook-intro p{font-size:11px}.service-menu h2{font-size:63px}.service-photo{height:475px}.service-list summary{gap:13px}.service-list summary>span:first-child{font-size:25px}.sophie-copy h2{font-size:61px}.getting-ready ol{gap:15px}.inquiry-card{padding:28px}.inquiry-heading h2{font-size:75px}.site-footer{grid-template-columns:150px 1fr}.site-footer>div{grid-column:1/-1}}
@media(max-width:760px){html{scroll-padding-top:76px}.site-header{height:76px}.site-header nav:not(.mobile-nav){display:flex;padding:0 22px;justify-content:space-between;gap:15px}.brand{width:108px;order:0}.nav-left{display:none}.nav-right{margin-left:auto;font-size:10px}.nav-inquire{font-size:10px;gap:11px;padding:5px 0}.nav-inquire span{font-size:19px}.menu-toggle{display:flex;background:none;border:0;padding:10px 0 10px 10px;width:31px;height:36px;flex-direction:column;justify-content:center;gap:5px}.menu-toggle span{height:1px;width:21px;background:var(--wine)}.mobile-nav:not([hidden]){display:flex;position:absolute;top:76px;left:0;right:0;padding:20px 24px 26px;flex-direction:column;gap:14px;background:var(--paper);border-bottom:1px solid var(--line);font:28px var(--display)}.hero{height:970px;padding:0 24px}.hero-location{top:26px;left:24px;font-size:10px}.hero h1{left:24px;top:75px;font-size:clamp(53px,12.5vw,87px);line-height:1.06;letter-spacing:-.05em;z-index:6}.hero-main{left:21%;top:220px;width:69%;height:390px}.hero-main::after{inset:10px -10px -10px 10px}.hero-main figcaption{font-size:8px;margin-top:14px}.hero-main img{object-position:center 37%}.hero-overlap{left:6%;top:470px;width:36%;height:200px;transform:none;padding:7px}.hero-overlap figcaption{font-size:8px}.hero-art{right:-15%;top:270px;width:46%;height:250px}.hero-copy{left:24px;top:707px;max-width:none;width:82%}.hero-copy>p:first-child{font-size:15px}.intro-small{font-size:11px;margin:14px 0 18px}.text-link{font-size:11px;gap:25px;padding-bottom:5px}.hero-stamp{right:5%;bottom:300px;width:97px;height:97px}.hero-stamp>span{font-size:40px;inset:22px 0}.hero-bottom{left:24px;bottom:21px;font-size:9px}.scroll-note{right:24px;bottom:20px;font-size:9px;gap:12px}.hero-background-type{font-size:86px;bottom:260px;left:8%}.lookbook{height:auto;min-height:0;padding:65px 0 55px;clip-path:polygon(0 0,100% 18px,100% 100%,0 calc(100% - 16px));margin-top:0}.lookbook-stage{height:auto;min-height:0;position:static;max-height:none;padding:0;overflow:visible}.lookbook-heading{padding:0 24px;display:block}.lookbook-heading h2{font-size:53px;line-height:1.07}.lookbook .quiet-label{font-size:11px}.lookbook-intro{margin-top:22px;margin-bottom:20px}.lookbook-intro p{font-size:11px}.look-filters{gap:23px;margin-top:18px}.gallery-controls{position:absolute;right:24px;top:57px;gap:7px}.gallery-controls button{width:34px;height:34px;font-size:18px}.lookbook-window{overflow-x:auto;margin-top:28px;scroll-snap-type:x mandatory;padding-bottom:18px;scrollbar-width:none}.lookbook-window::-webkit-scrollbar{display:none}.lookbook-track{transform:none!important;padding:0 24px;gap:20px;width:max-content}.look-card,.look-card.card-offset{width:69vw;max-width:360px;margin-top:0;scroll-snap-align:center}.look-card.card-offset{padding-top:30px}.look-card img{height:355px}.look-card figcaption{font-size:10px}.view-look{opacity:1;transform:none;right:10px;padding:6px 9px;font-size:9px}.lookbook-footer{margin:9px 24px 0;gap:18px;font-size:8px;align-items:flex-start}.lookbook-footer>span:first-child{max-width:210px}.gallery-hint{display:none}.service-world{display:block;padding:90px 24px 105px;margin-top:0}.service-photo{position:relative;top:auto;height:320px;width:68%;margin-left:17px;transform:none}.service-photo img{object-position:center 23%}.service-pattern{top:57px;left:auto;right:-15%;width:60%;height:310px;opacity:.15}.service-menu{margin-top:50px;padding-top:0}.service-menu .quiet-label{font-size:11px}.service-menu h2{font-size:65px}.service-menu>p:not(.quiet-label):not(.pricing-note){font-size:11px}.service-list summary{padding:21px 0;grid-template-columns:1fr auto 20px}.service-list summary>span:first-child{font-size:26px}.price{font-size:10px}.service-detail{font-size:11px}.service-background-type{font-size:70px;bottom:30px;right:24px}.sophie-world{display:flex;flex-direction:column;padding:0 24px 70px;margin-top:0;gap:0}.sophie-photo{width:77%;align-self:flex-end;margin:30px 0 45px}.sophie-photo-frame{aspect-ratio:1/1.08}.sophie-photo::before{inset:-13px 16px 21px -17px}.sophie-copy .quiet-label{margin-top:0}.sophie-copy h2{font-size:59px}.sophie-lead{font-size:25px}.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){font-size:12px}.getting-ready{margin-top:35px;grid-column:auto}.getting-ready h3{font-size:28px}.getting-ready ol{flex-direction:column;gap:16px;padding-left:20px}.getting-ready li>span{font-size:12px}.getting-ready li p{font-size:11px}.inquiry-world{display:block;padding:65px 24px 70px}.inquiry-heading{padding:0}.inquiry-heading h2{font-size:64px;margin-bottom:24px}.inquiry-heading>p{font-size:11px}.inquiry-location{font-size:9px}.inquiry-card{margin-top:46px;transform:none;padding:25px 23px;box-shadow:9px 9px 0 #773845}.inquiry-pattern{right:-10%;top:190px;width:70%;height:470px;opacity:.6}.inquiry-card h3{font-size:36px}.form-grid{gap:18px 13px}.form-grid label{font-size:9px}input,select,textarea{font-size:16px}.primary-button{font-size:11px}.site-footer{display:flex;flex-wrap:wrap;gap:25px;padding:36px 24px 25px}.footer-logo{width:130px}.site-footer>p{font-size:10px}.site-footer>div{width:100%;gap:23px;font-size:10px}.photo-credits{width:100%}.site-footer small{width:100%}dialog{width:92vw;max-height:92vh}dialog figure{display:block}dialog figure>img{height:45vh;max-height:420px}dialog figcaption{padding:28px 24px 35px}dialog h2{font-size:36px}dialog .primary-button{margin-top:20px}.dialog-navigation{top:calc(45vh - 52px);bottom:auto;left:18px}.dialog-close{top:12px;right:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.lookbook{height:auto;min-height:0;padding-bottom:65px}.lookbook-stage{position:static;height:auto;max-height:none;min-height:0}.lookbook-window{overflow-x:auto}.lookbook-track{transform:none!important}.depth-image{translate:none!important}}
/* Contain decorative planes while preserving the intended overlap. */
.hero,.service-world,.inquiry-world{overflow:clip}
/* Reading text stays comfortable alongside the large display typography. */
.service-menu>p:not(.quiet-label):not(.pricing-note),.service-detail{font-size:14px}
.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){font-size:15px}
.lookbook-intro p{font-size:14px}.look-card figcaption{font-size:12px}
.form-grid label{font-size:11px}input,select,textarea{font-size:13px}
.pricing-note,.form-note{font-size:10px}
@media(max-width:760px){.service-menu>p:not(.quiet-label):not(.pricing-note),.service-detail{font-size:13px}.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){font-size:14px}.lookbook-intro p{font-size:12px}input,select,textarea{font-size:16px}.look-filters button{padding-top:10px;padding-bottom:10px}.nav-inquire{min-height:44px}}
/* Typography roles: readable controls and supporting text at every breakpoint. */
:root{--type-body:1.0625rem;--type-control:1rem;--type-label:.9375rem;--type-meta:.875rem;--control-line:#88796C}
body{font-size:var(--type-body)}
.nav-left,.nav-right,.nav-inquire,.text-link,.look-filters button,.price,.primary-button,.text-button{font-size:var(--type-control)}
.nav-left a,.nav-inquire,.text-link,.site-footer>div a{display:inline-flex;align-items:center;min-height:44px}
.location,.hero-location,.hero-main figcaption,.hero-overlap figcaption,.hero-bottom,.scroll-note,.look-card figcaption,.look-card figcaption span:last-child,.lookbook-footer,.pricing-note,.signature,.sophie-photo figcaption,.inquiry-location,.form-note,.site-footer small,.photo-credits,.source-link,.dialog-note{font-size:var(--type-meta);line-height:1.65}
.intro-small,.lookbook-intro p,.service-menu>p:not(.quiet-label):not(.pricing-note),.service-detail,.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature),.inquiry-heading>p,.form-intro,.site-footer>p,#inquiry-result>p,dialog figcaption>p:not(.quiet-label){font-size:var(--type-body);line-height:1.7}
.quiet-label,.form-grid label,.getting-ready li,.getting-ready li>span,.service-detail a{font-size:var(--type-label);line-height:1.55}
.getting-ready li p{font-size:var(--type-control);line-height:1.65}
.look-filters{gap:20px;flex-wrap:wrap}.look-filters button{min-height:44px;min-width:44px;padding:8px 0;font-weight:500;line-height:1.5}
.look-card figcaption{gap:12px}.lookbook-footer{gap:25px;align-items:flex-start}.lookbook-footer>span:first-child{max-width:55ch}.gallery-hint,#look-count{white-space:nowrap}
.gallery-controls button,.dialog-navigation button,.dialog-close{width:44px;height:44px}
.view-look{font-size:var(--type-meta);line-height:1.5;min-height:44px;display:flex;align-items:center;padding:10px 14px;bottom:72px}
.look-open:focus-visible{outline:3px solid var(--cream);outline-offset:-3px}
input,select,textarea{font-size:var(--type-control);line-height:1.55;border-bottom-color:var(--control-line);min-height:46px}
.form-grid{gap:24px 20px}.form-intro{margin-bottom:26px}.form-note{margin-top:16px}.primary-button{line-height:1.5;padding:15px 18px;min-height:52px}
#inquiry-summary{font-size:var(--type-control);line-height:1.65}.service-detail a{min-height:44px;align-items:center}.service-detail{max-width:48ch}
.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){max-width:52ch}.sophie-copy h2{margin-bottom:30px}
.site-footer{grid-template-columns:180px 1fr auto;align-items:center}.site-footer>div{flex-wrap:wrap;gap:14px 24px;font-size:var(--type-control)}.photo-credits summary{min-height:44px;display:list-item;padding-top:10px}.photo-credits a{min-height:44px;padding:10px 0}.site-footer>p{line-height:1.65}
.hero-main figcaption{gap:20px}.hero-overlap{height:310px}.hero-overlap img{height:calc(100% - 44px)}.hero-copy{max-width:375px}.hero-copy .intro-small{margin:20px 0 24px}.service-photo figcaption{font-size:var(--type-meta);line-height:1.5}.service-photo>img{height:calc(100% - 44px)}
.hero h1{letter-spacing:-.04em}.hero-background-type{pointer-events:none}
@media(min-width:761px) and (max-width:1100px){.site-header nav:not(.mobile-nav){gap:20px;grid-template-columns:1fr 135px 1fr}.nav-left,.nav-right{gap:16px}.nav-left{font-size:var(--type-meta)}.nav-inquire{font-size:var(--type-meta)}.hero{height:840px}.hero-copy{width:36%;top:400px}.hero-overlap{height:300px;top:475px}.hero-stamp{bottom:115px}.lookbook-heading{gap:24px}.lookbook-intro{max-width:44%;min-width:0}.look-filters{gap:4px 16px}.service-list summary{gap:14px}.service-list summary>span:first-child{font-size:28px}.site-footer{grid-template-columns:150px 1fr}.site-footer>div{grid-column:1/-1}}
@media(min-width:761px) and (max-height:900px){.lookbook-stage{min-height:0;height:calc(100vh - 105px);padding-top:24px;padding-bottom:20px}.lookbook-heading h2{font-size:48px}.lookbook-intro p{font-size:var(--type-control)}.lookbook-window{margin-top:16px}.look-card img{height:clamp(215px,30vh,290px)}.look-card.card-offset{margin-top:24px}.lookbook-footer{margin-top:20px}.lookbook .quiet-label{margin-bottom:8px}}
@media(max-width:760px){
:root{--type-body:1rem;--type-control:1rem;--type-label:.9375rem;--type-meta:.875rem}
.site-header nav:not(.mobile-nav){gap:12px}.nav-inquire{font-size:var(--type-meta);gap:10px}.menu-toggle{width:44px;height:44px;padding:10px;align-items:center;flex-shrink:0}.hero{height:1090px}.hero h1{letter-spacing:-.04em}.hero-location{font-size:var(--type-meta);max-width:calc(100% - 48px)}.hero-copy{top:745px;width:calc(100% - 48px)}.hero-copy>p:first-child{font-size:var(--type-body);line-height:1.65}.hero-copy .intro-small{margin:16px 0 18px}.hero-main figcaption{font-size:var(--type-meta);line-height:1.5}.hero-main figcaption>span:first-child{max-width:195px}.hero-overlap{height:230px}.hero-overlap figcaption{font-size:.8125rem;line-height:1.5}.hero-overlap img{height:calc(100% - 48px)}.hero-stamp{bottom:390px}.hero-background-type{bottom:360px}.hero-bottom{font-size:var(--type-meta);bottom:23px}.scroll-note{font-size:var(--type-meta);max-width:120px;gap:10px;bottom:31px}
.lookbook-heading .quiet-label{font-size:var(--type-label)}.lookbook-intro{margin-top:24px;margin-bottom:20px}.lookbook-intro p{font-size:var(--type-body)}.look-filters{gap:8px 18px}.look-filters button{font-size:var(--type-control);padding:8px 0}.gallery-controls{right:24px;gap:8px}.gallery-controls button{width:44px;height:44px}.look-card figcaption,.look-card figcaption span:last-child{font-size:var(--type-meta)}.view-look{font-size:var(--type-meta);padding:8px 12px;bottom:76px}.lookbook-footer{font-size:var(--type-meta);margin-top:12px;gap:18px}.lookbook-footer>span:first-child{max-width:calc(100% - 83px)}
.service-menu>p:not(.quiet-label):not(.pricing-note),.service-detail{font-size:var(--type-body)}.service-menu .quiet-label{font-size:var(--type-label)}.price{font-size:var(--type-control)}.service-list summary{gap:12px;grid-template-columns:minmax(0,1fr) auto 20px}.service-list summary>span:first-child{font-size:26px;line-height:1.2}.pricing-note{font-size:var(--type-meta)}.sophie-copy .quiet-label{font-size:var(--type-label)}.sophie-copy>p:not(.quiet-label):not(.sophie-lead):not(.signature){font-size:var(--type-body)}.signature,.sophie-photo figcaption{font-size:var(--type-meta)}.getting-ready li>span{font-size:var(--type-label)}.getting-ready li p{font-size:var(--type-control)}
.inquiry-heading>p{font-size:var(--type-body)}.inquiry-location{font-size:var(--type-meta)}.inquiry-card{padding:28px 23px}.form-grid{grid-template-columns:1fr;gap:22px}.form-grid label{font-size:var(--type-label)}.form-intro{font-size:var(--type-body)}.primary-button{font-size:var(--type-control)}.form-note{font-size:var(--type-meta)}input,select,textarea{font-size:var(--type-control)}
.site-footer{display:flex;gap:24px}.site-footer>p{font-size:var(--type-body);width:100%}.site-footer>div{font-size:var(--type-control);gap:12px 22px}.photo-credits,.site-footer small{font-size:var(--type-meta)}.dialog-close{width:44px;height:44px}dialog figcaption>p:not(.quiet-label){font-size:var(--type-body)}.dialog-note{font-size:var(--type-meta)!important}.source-link{font-size:var(--type-meta)}.dialog-navigation{top:calc(45vh - 58px)}
}
@media(max-width:360px){.brand{width:90px}.nav-inquire{gap:0}.nav-inquire span{display:none}.site-header nav:not(.mobile-nav){gap:10px}.look-filters{gap:6px 14px}.gallery-controls{top:58px}.hero-stamp{right:1%;width:85px;height:85px}.hero-main figcaption>span:first-child{max-width:150px}.hero-bottom{font-size:.8125rem}.scroll-note{font-size:.8125rem;max-width:105px}.inquiry-heading h2{font-size:56px}}
/* Audit follow-through: contrast and reflow after the role scale changes. */
:root{--text-muted:#77695E}
input::placeholder,textarea::placeholder{color:var(--text-muted)}
.dialog-note{font-size:var(--type-meta)!important}
.hero-main figcaption{padding-left:130px}
@media(max-width:760px){.hero-overlap figcaption,.hero-bottom,.scroll-note{font-size:var(--type-meta)}.hero-main figcaption{padding-left:90px}.hero-stamp{display:none}.inquiry-pattern{opacity:.2}}

/* Gallery category controls */
.look-filters{flex-wrap:wrap;gap:8px;margin-top:20px}
.look-filters button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:1px solid #FCFAF780;border-radius:999px;background:transparent;color:var(--paper);font-size:var(--type-control);font-weight:500;line-height:1.4;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.look-filters button:hover{background:#FCFAF71A;border-color:var(--paper)}
.look-filters button.active{background:var(--cream);border-color:var(--cream);color:var(--wine)}
.look-filters button.active:hover{background:var(--cream);border-color:var(--paper)}
.look-filters button:focus-visible{outline:2px solid var(--paper);outline-offset:4px}
@media(max-width:760px){.look-filters{gap:8px}.look-filters button{padding:10px 16px}}
@media(prefers-reduced-motion:reduce){.look-filters button{transition:none}}

/* Keep focused form fields consistent with their underline styling. */
input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--wine);box-shadow:0 1px 0 var(--wine)}

/* Warm cream layers from the brand palette. */
.inquiry-card{background:var(--paper)}
.hero-overlap,.service-photo{background:#FFFFFF}
.hero-main::after{background:var(--cream)}
.lookbook-heading h2,.inquiry-heading h2{color:var(--cream)}
.service-world::before{content:'';position:absolute;inset:130px -5vw 65px;background:var(--cream);z-index:-2}
.service-background-type{color:var(--paper)}
.sophie-photo::before{background:var(--cream);border-color:var(--cream)}
.getting-ready{background:var(--cream);padding:26px 28px;border-top:0}
.inquiry-card{--text-muted:#68594F}
.inquiry-card .form-note{color:#68594F}
@media(max-width:760px){.service-world::before{inset:45px 0 40px}.getting-ready{padding:25px 24px}}

/* A full-width bridge between Sophie and the inquiry. */
.getting-ready{grid-column:1/-1;margin-top:56px;padding:40px 0 0;background:transparent;border-top:1px solid var(--stone)}
.getting-ready-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:36px}
.getting-ready h3{font-size:44px;line-height:1.12;color:var(--wine);letter-spacing:-.02em;margin:0}
.getting-ready-heading .text-link{flex-shrink:0}
.getting-ready ol{list-style:none;counter-reset:ready-step;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding:0;margin:0}
.getting-ready li{counter-increment:ready-step;display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;align-content:start;padding:0;font-size:var(--type-control)}
.getting-ready li::before{content:counter(ready-step,decimal-leading-zero);grid-column:1;grid-row:1/3;font:40px/1 var(--display);color:var(--wine);background:var(--cream);width:56px;height:64px;display:flex;align-items:center;justify-content:center}
.getting-ready li>span{grid-column:2;font-size:17px;line-height:1.5;font-weight:600;margin:0 0 10px;color:var(--wine)}
.getting-ready li p{grid-column:2;font-size:16px;line-height:1.7;color:var(--ink);max-width:30ch}
@media(min-width:761px) and (max-width:1100px){.getting-ready ol{gap:24px}.getting-ready li{grid-template-columns:1fr;gap:16px}.getting-ready li::before{grid-row:auto}.getting-ready li>span,.getting-ready li p{grid-column:1}.getting-ready li>span{margin:0}}
@media(max-width:760px){.getting-ready{width:100%;margin-top:48px;padding:32px 0 0}.getting-ready-heading{display:block;margin-bottom:32px}.getting-ready h3{font-size:36px}.getting-ready-heading .text-link{margin-top:20px}.getting-ready ol{display:grid;grid-template-columns:1fr;gap:28px}.getting-ready li{grid-template-columns:48px minmax(0,1fr);column-gap:20px;padding:0}.getting-ready li::before{width:48px;height:58px;font-size:34px}.getting-ready li p{max-width:34ch}.sophie-world{padding-bottom:64px}}
.sophie-world{row-gap:0}

/* Color audit resolutions and a quieter opening. */
:root{--text-muted:#68594F;--gallery-outline:#FCFAF780;--inquiry-shadow:0 16px 40px rgb(48 37 34 / .24)}
.pricing-note,.hero-bottom>span,.photo-credits,.site-footer small,.dialog-note,.form-note{color:var(--text-muted)}
.look-card figcaption span:last-child,.lookbook-footer{color:var(--cream)}
.gallery-controls button{border-color:var(--gallery-outline)}
.inquiry-card{box-shadow:var(--inquiry-shadow);border:0}
.inquiry-pattern{right:0;top:40px;width:40%;height:calc(100% - 80px);opacity:.14}
.service-list details{border-bottom-color:var(--stone)}
.hero-copy .text-link{margin-top:24px}
.hero-overlap img{height:100%}
@media(max-width:760px){.inquiry-pattern{right:0;top:48px;width:28%;height:300px;opacity:.12}.hero-copy{top:745px}}

/* Featured rail first, a full gallery after choosing a category. */
.gallery-preview{margin-top:14px;padding:6px 0;min-height:44px;background:none;border:0;color:var(--cream);font-size:var(--type-meta);text-decoration:underline;text-underline-offset:5px}
.gallery-preview:focus-visible{outline-color:var(--cream)}
.gallery-more{flex:0 0 clamp(245px,24vw,355px);min-height:320px;border:1px solid var(--gallery-outline);padding:32px;align-self:center;color:var(--cream)}
.gallery-more h3{font-size:40px;line-height:1.15;margin-bottom:22px}
.gallery-more p{font-size:16px;line-height:1.7;margin-bottom:26px}
.gallery-more button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;width:100%;padding:12px 16px;background:var(--cream);color:var(--wine);border:1px solid var(--cream);font-size:16px}
.gallery-more button:focus-visible{outline-color:var(--cream)}
.lookbook.is-grid{height:auto;min-height:0;padding-bottom:72px}
.lookbook.is-grid .lookbook-stage{height:auto;min-height:0;max-height:none;position:static;overflow:visible}
.lookbook.is-grid .lookbook-window{overflow:visible}
.lookbook.is-grid .lookbook-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;width:auto;padding:0 5%;transform:none!important;will-change:auto}
.lookbook.is-grid .look-card,.lookbook.is-grid .look-card.card-offset{width:auto;max-width:none;margin:0;padding:0}
.lookbook.is-grid .look-card img{height:auto;aspect-ratio:3/4}
.lookbook.is-grid .look-card figcaption{align-items:start}
.lookbook.is-grid .view-look{bottom:70px}
.lookbook.is-grid .lookbook-footer{margin-top:36px}
@media(min-width:761px) and (max-width:1100px){.lookbook.is-grid .lookbook-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gallery-more{flex-basis:69vw;min-height:355px;scroll-snap-align:center;padding:26px}.gallery-more h3{font-size:36px}.lookbook.is-grid{padding-bottom:56px}.lookbook.is-grid .lookbook-track{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 24px;gap:28px 16px}.lookbook.is-grid .look-card figcaption{display:block}.lookbook.is-grid .look-card figcaption span{display:block}.lookbook.is-grid .view-look{position:static;display:block;width:max-content;max-width:100%;margin-top:10px;padding:6px 8px;font-size:14px}.lookbook.is-grid .view-look span{padding-left:6px}.lookbook.is-grid .look-card figcaption{margin-top:10px}.lookbook.is-grid .lookbook-footer{margin-top:28px}}

/* Editable wordmark: DM Serif Display Regular with Manrope descriptor. */
@font-face{font-family:'DM Serif Display';src:url('assets/fonts/dm-serif-display.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--logo-font:'DM Serif Display',Georgia,serif;--logo-tracking:-.04em}
.logo-type{display:flex;flex-direction:column;align-items:center;color:var(--wine);white-space:nowrap;gap:4px}
.logo-name{font-family:var(--logo-font);font-size:56px;font-weight:400;font-synthesis:none;line-height:.9;letter-spacing:var(--logo-tracking)}
.logo-descriptor{font-family:var(--body);font-size:8px;font-weight:600;line-height:1.3;letter-spacing:.55em;padding-left:.55em}
.footer-logo .logo-name{font-size:64px}
.footer-logo .logo-descriptor{font-size:9px}
@media(max-width:760px){.brand .logo-name{font-size:44px}.brand .logo-descriptor{font-size:7px}.footer-logo .logo-name{font-size:54px}.footer-logo .logo-descriptor{font-size:8px}}
@media(max-width:360px){.brand .logo-name{font-size:38px}.brand .logo-descriptor{font-size:6px}}

/* Bridal makeup rates, with a separate trial and per-person party pricing. */
.bridal-detail{max-width:none}
.bridal-rates{width:100%;border-collapse:collapse;margin:24px 0 16px;table-layout:fixed;font-size:16px;line-height:1.55}
.bridal-rates caption{text-align:left;color:var(--wine);font-weight:600;margin-bottom:12px}
.bridal-rates th,.bridal-rates td{padding:14px 0;border-bottom:1px solid var(--stone);vertical-align:top}
.bridal-rates thead th{font-size:14px;color:var(--text-muted);font-weight:500;text-align:left;padding-top:0;padding-bottom:10px}
.bridal-rates th:first-child{width:68%;padding-right:20px}
.bridal-rates tbody th{text-align:left;font-weight:400}
.bridal-rates th:last-child,.bridal-rates td{text-align:right}
.bridal-rates td{color:var(--wine);font-weight:600;font-variant-numeric:tabular-nums}
.bridal-rates td span{display:block;font-size:14px;font-weight:400;color:var(--text-muted)}
.bridal-rate-note{font-size:14px;line-height:1.7;color:var(--text-muted)}
@media(max-width:760px){.bridal-rates th:first-child{width:66%;padding-right:16px}.bridal-rates th,.bridal-rates td{padding-top:12px;padding-bottom:12px}}

/* Original client photos, cropped for display without altering their pixels. */
.look-photo,.service-image-frame,.dialog-photo{position:relative;overflow:hidden;--crop-height:100%;--crop-top:0%}
.look-photo{height:clamp(295px,37vh,500px)}
.look-photo img,.service-image-frame img,.dialog-photo img{position:absolute;left:0;top:var(--crop-top);width:100%;height:var(--crop-height);object-fit:cover;object-position:center}
.look-card.is-wide{width:clamp(400px,46vw,650px)}
.look-card.is-wide .look-photo img{object-fit:contain}
.service-image-frame{height:calc(100% - 36px)}
.dialog-photo{height:75vh;max-height:720px}
.dialog-photo.is-wide img{object-fit:contain}
.lookbook.is-grid .look-photo{height:auto;aspect-ratio:3/4}
.lookbook.is-grid .look-photo img{height:var(--crop-height);aspect-ratio:auto}
.lookbook.is-grid .look-card.is-wide{grid-column:1/-1}
.lookbook.is-grid .look-card.is-wide .look-photo{aspect-ratio:33/17}
@media(min-width:761px) and (max-height:900px){.look-photo{height:clamp(215px,30vh,290px)}}
@media(max-width:760px){.look-photo{height:355px}.look-card.is-wide{width:85vw;max-width:520px}.dialog-photo{height:45vh;max-height:420px}.hero-main img{object-position:50% center}}

.look-open:hover .look-photo img{transform:scale(1.015)}

/* An intentionally empty photo column for services without a selected image. */
.service-menu{grid-column:2}
@media(max-width:760px){.service-menu{grid-column:auto}.hero{height:960px}.hero-copy{top:660px}}

/* A lighter serif for the hero headline. */
.hero h1{font-family:"Bodoni Moda",Georgia,serif;font-weight:400;font-synthesis:none;font-size:clamp(68px,7.3vw,112px);letter-spacing:-.03em;line-height:1.04;-webkit-text-stroke:0}
@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:clamp(60px,7.5vw,82px)}}
@media(max-width:760px){.hero h1{font-size:clamp(43px,12.6vw,82px);line-height:1.06;-webkit-text-stroke:0}}

/* Browser feedback: quieter copy, clear actions, and a quiet gallery pattern. */
.hero-cta,.bio-cta{width:max-content;max-width:100%;min-height:56px;padding:15px 22px;font-size:16px;gap:32px}
.hero-cta{margin-top:24px}
.bio-cta{margin-top:24px}
.hero-cta:hover,.bio-cta:hover{background:var(--ink);border-color:var(--ink)}
.lookbook{isolation:isolate}
.lookbook::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('assets/deco-pattern-cream.svg') repeat;background-size:240px 400px;opacity:.07}
.lookbook-intro{margin-bottom:0}
.look-filters{margin-top:0}
.sophie-world{padding-bottom:88px}
@media(max-width:760px){.hero-cta,.bio-cta{min-height:52px;padding:14px 18px;gap:24px}.sophie-world{padding-bottom:64px}.lookbook::before{background-size:180px 300px;opacity:.06}}

@font-face{font-family:"Bodoni Moda";src:url("assets/fonts/bodoni-moda.ttf") format("truetype");font-weight:400 900;font-style:normal;font-display:swap}

/* Keep headline, introduction, and action together beside the portrait. */
.hero-text{display:contents}
@media(min-width:761px){
.hero-text{position:absolute;top:44px;left:5%;width:48%;height:620px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:24px;z-index:5}
.hero-text h1{position:static;margin:0}
.hero-text .hero-copy{position:static;width:355px;max-width:100%;margin:0}
.hero-text .hero-copy>p:first-child{margin:0}
}
@media(min-width:761px) and (max-width:1100px){.hero-text{height:570px}.hero-text .hero-copy{width:330px}}
@media(min-width:1700px){.hero-text{height:660px}}

@media(max-width:760px){.site-header .nav-inquire{display:none}}

/* A full-screen mobile navigation with centered links. */
html.menu-is-open,html.menu-is-open body{overflow:hidden}
@media(max-width:760px){
.mobile-nav:not([hidden]){position:fixed;inset:0;top:0;height:100dvh;min-height:100vh;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;padding:100px 24px;background:var(--wine);color:var(--cream);border:0;text-align:center;font:clamp(32px,8.5vw,44px)/1.25 var(--display);overflow-y:auto}
.mobile-nav a{color:var(--cream);padding:4px 0}
.mobile-nav a:hover{color:var(--paper)}
.mobile-menu-open nav:not(.mobile-nav){position:relative;z-index:2}
.mobile-menu-open .logo-type{color:var(--cream)}
.mobile-menu-open .menu-toggle{width:auto;min-width:64px;padding:8px;color:var(--cream);border:1px solid currentColor}
.mobile-menu-open .menu-toggle span{display:none}
.mobile-menu-open .menu-toggle::after{content:'Close';font:16px var(--body)}
.mobile-menu-open a:focus-visible,.mobile-menu-open button:focus-visible{outline:2px solid var(--cream);outline-offset:6px}
}

/* Service pages retain the homepage typography, palette, and photo framing. */
.service-page-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;line-height:1.6}
.service-page-links a{color:var(--wine);text-decoration:underline;text-underline-offset:5px}
.service-more{margin-top:14px;font-size:14px}
.service-page-hero{max-width:1400px;margin:auto;padding:72px 5% 88px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:8%}
.page-back{display:inline-block;margin-bottom:28px;color:var(--text-muted);font-size:14px;text-decoration:underline;text-underline-offset:5px}
.service-page-hero .quiet-label{margin-bottom:20px}
.service-page-hero h1{font:400 clamp(48px,5.2vw,76px)/1.08 var(--display);color:var(--wine);letter-spacing:-.025em;margin:0 0 28px}
.page-intro{font-size:18px;line-height:1.8;max-width:540px;margin-bottom:28px}
.service-page-photo{height:540px;position:relative;overflow:hidden;--crop-height:100%;--crop-top:0%;background:var(--cream)}
.service-page-photo img{position:absolute;left:0;top:var(--crop-top);width:100%;height:var(--crop-height);object-fit:cover}
.service-page-hero figure{padding:12px;background:#fff;box-shadow:16px 16px 0 var(--cream)}
.service-page-hero figcaption{padding:12px 0 0;font-size:14px;color:var(--text-muted)}
.service-page-body{max-width:850px;padding:0 5% 88px;margin:auto}
.service-page-body section{margin-bottom:48px}
.service-page-body h2{font:400 clamp(32px,3.4vw,45px)/1.2 var(--display);color:var(--wine);margin-bottom:18px}
.service-page-body p{font-size:17px;line-height:1.9}
.page-faq details{border-top:1px solid var(--stone);padding:18px 0}
.page-faq summary{cursor:pointer;font-size:17px;color:var(--wine)}
.page-faq details p{margin-top:14px}
.page-booking{padding:32px;background:var(--cream)}
.page-booking .primary-button{margin-top:24px}
.service-page .sophie-copy h1{font:400 clamp(48px,5.2vw,76px)/1.08 var(--display);margin-bottom:28px;color:var(--wine)}
@media(max-width:760px){.service-page-hero{display:flex;flex-direction:column;gap:40px;padding:36px 24px 64px;align-items:stretch}.service-page-hero h1{font-size:48px}.page-intro{font-size:17px}.service-page-photo{height:410px}.service-page-body{padding:0 24px 48px}.service-page-body section{margin-bottom:36px}.page-booking{padding:24px}.service-page-links{display:flex;width:100%;gap:12px 20px}.service-page-hero .primary-button{font-size:16px;min-height:52px}.service-page .sophie-world{padding-top:36px}}
.contact-email{display:block;width:max-content;max-width:100%;font-size:16px;color:var(--wine);text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.inquiry-card .contact-email{margin:18px 0 28px}
.travel-policy{margin-top:24px;border-top:1px solid var(--stone);padding-top:20px;color:var(--wine)}
.travel-policy summary{cursor:pointer;font-size:16px}
.travel-policy p{margin-top:14px;font-size:16px;line-height:1.8;color:var(--ink)}
.result-actions{flex-wrap:wrap}
#email-inquiry{width:auto;min-height:52px;font-size:16px}
