@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600&family=Prata&display=swap');
:root{--paper:#eeeae2;--ink:#141313;--wine:#681a2c;--rose:#b46978;--silver:#b9b7b2}
body.modal-open{overflow:hidden}.brand{display:flex;align-items:center;gap:5px}.brand small{font-size:6px;letter-spacing:.18em;margin-left:10px;opacity:.65}.head-actions{display:flex;align-items:center;gap:12px}.book-mini{border:1px solid #fff6;background:transparent;color:white;padding:10px 17px;text-transform:uppercase;font-size:9px;letter-spacing:.15em}.languages{position:relative}.lang-current{border:0;background:none;color:white;font-size:10px;letter-spacing:.15em;padding:12px}.lang-menu{position:absolute;right:0;top:42px;background:#eeeae2;color:#141313;width:185px;padding:8px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.3s;box-shadow:0 20px 50px #0004}.languages.open .lang-menu{opacity:1;visibility:visible;transform:none}.lang-menu button{display:flex;justify-content:space-between;width:100%;padding:9px;border:0;background:none;font-size:10px}.lang-menu button:hover,.lang-menu button.active{background:#681a2c;color:white}.hero-lead{max-width:390px;line-height:1.7;font-size:13px;margin:28px 0}.hero-actions{display:flex;gap:30px}.text-link{border:0;border-bottom:1px solid;background:none;padding:10px 0;text-transform:uppercase;letter-spacing:.14em;font-size:10px;cursor:pointer}.availability{position:absolute;left:3vw;bottom:58px;font-size:9px;letter-spacing:.14em;display:flex;align-items:center;gap:8px}.availability i{width:7px;height:7px;background:#9ad39d;border-radius:50%;box-shadow:0 0 0 5px #9ad39d20}.manifest-note .signature{display:block;font:40px Prata;color:var(--wine);font-style:italic;margin-top:15px}.services{padding:13vh 4vw;background:var(--paper);display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw}.services-intro{position:sticky;top:120px;align-self:start}.services h2,.process h2,.studio h2{font:400 clamp(48px,6vw,95px)/.95 Prata;margin:30px 0}.services-intro>p:last-child{line-height:1.8;max-width:440px;color:#554e4b}.service-list article{display:grid;grid-template-columns:45px 1fr auto 45px;align-items:center;gap:20px;border-top:1px solid #1c181833;padding:30px 0}.service-list h3{font:400 28px Prata;margin:0 0 8px}.service-list p{margin:0;color:#625a56;font-size:12px}.service-list b{white-space:nowrap}.service-list button{border:1px solid #262122;width:40px;height:40px;border-radius:50%;background:none}.process{padding:12vh 4vw;background:#191718;color:#eeeae2}.process>h2{max-width:950px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:9vh}.process-grid article{border-left:1px solid #fff3;padding:25px;min-height:245px}.process-grid b{font:38px Prata;color:var(--rose)}.process-grid h3{font:24px Prata;font-weight:400;margin-top:50px}.process-grid p{font-size:12px;line-height:1.7;color:#c8c0bc}.voices{padding:12vh 4vw;background:#d7d0c7}.voices .section-head{border-color:#14131333}.voice-slider{min-height:380px;display:grid;grid-template-columns:60px 1fr 60px;align-items:center;max-width:1200px;margin:auto}.voice-slider>button{border:1px solid;background:none;width:50px;height:50px;border-radius:50%;font-size:20px}.voice-slider blockquote{text-align:center;margin:0}.voice-text{font:clamp(30px,4vw,60px)/1.25 Prata;margin:0}.voice-author{display:block!important;border:0!important;padding:25px!important;font-size:9px!important;letter-spacing:.16em!important}.studio{min-height:80vh;display:grid;grid-template-columns:1fr 1fr;background:#b9b7b2}.map-art{position:relative;overflow:hidden;display:grid;place-items:center;background:linear-gradient(32deg,#aaa69f,#ded8cf)}.map-art:before,.map-art:after{content:"";position:absolute;width:150%;height:14px;background:#eeeae299;transform:rotate(22deg)}.map-art:after{transform:rotate(-36deg);top:65%}.map-art span{position:absolute;top:25px;left:25px;letter-spacing:.2em;font-size:10px}.map-art i{position:relative;z-index:2;width:90px;height:90px;border-radius:50% 50% 50% 0;background:var(--wine);color:white;display:grid;place-items:center;transform:rotate(-45deg);font:42px Prata}.map-art i::first-letter{transform:rotate(45deg)}.studio-copy{padding:10vh 7vw}.studio-copy p{line-height:1.8}.studio-copy address{font:22px/1.6 Prata;margin:35px 0}.studio-copy small{display:block;color:#5e5753;margin-bottom:30px}.site-footer{background:#151314;color:#eeeae2;padding:70px 4vw 25px;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:40px;border:0}.site-footer>div{display:flex;flex-direction:column;gap:10px}.site-footer b{font-size:9px;letter-spacing:.18em;color:#b9b7b2}.site-footer a,.site-footer span{color:inherit;text-decoration:none;font-size:11px}.site-footer .foot-brand{font:38px Prata}.site-footer p{color:#b9b7b2;max-width:370px;line-height:1.6}.site-footer>small{grid-column:1/-1;border-top:1px solid #fff2;padding-top:22px;color:#80797b}.floating-book{position:fixed;right:24px;bottom:24px;z-index:18;border:0;background:var(--wine);color:white;width:125px;height:50px;padding:0 15px;display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:9px;letter-spacing:.12em;box-shadow:0 15px 40px #0004}.modal{position:fixed;inset:0;z-index:100;visibility:hidden;pointer-events:none}.modal.open{visibility:visible;pointer-events:auto}.modal-shade{position:absolute;inset:0;border:0;background:#0d0b0ccd;opacity:0;transition:.35s}.modal.open .modal-shade{opacity:1}.look-modal>article{position:absolute;left:50%;top:50%;width:min(1050px,92vw);height:min(720px,90vh);transform:translate(-50%,-46%);opacity:0;background:var(--paper);display:grid;grid-template-columns:1.15fr .85fr;transition:.4s;overflow:auto}.modal.open>article{transform:translate(-50%,-50%);opacity:1}.look-modal article>img{width:100%;height:100%;object-fit:cover}.look-modal article>div{padding:70px 45px}.look-modal h2,.booking-card h2{font:400 clamp(42px,5vw,72px)/1 Prata}.look-modal p{line-height:1.8;color:#5b5350}.look-nav{display:flex;gap:8px;margin:30px 0}.look-nav button,.modal-close{width:44px;height:44px;border:1px solid;background:none}.modal-close{position:absolute;right:18px;top:18px;z-index:3;font-size:25px}.booking-card{position:absolute;right:0;top:0;height:100%;width:min(650px,100%);background:var(--paper);padding:8vh 5vw;transform:translateX(100%);opacity:1!important;overflow:auto;transition:.45s}.booking-modal.open .booking-card{transform:none}.booking-card form label{display:flex;flex-direction:column;margin-top:18px;font-size:9px;letter-spacing:.15em}.booking-card input,.booking-card select,.booking-card textarea{border:0;border-bottom:1px solid #14131355;background:none;padding:12px 0;resize:none}.booking-card form>div{display:grid;grid-template-columns:1fr 1fr;gap:20px}.booking-card form small{display:block;line-height:1.5;color:#6a625e}.success{display:none;text-align:center;padding-top:15vh}.success>b{font:80px Prata;color:var(--wine)}.toast{position:fixed;left:50%;bottom:25px;z-index:150;transform:translate(-50%,30px);opacity:0;background:var(--wine);color:white;padding:14px 25px;transition:.3s}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:900px){header nav{position:absolute;top:78px;left:0;width:100%;background:#181617;padding:25px;display:none;flex-direction:column}header nav.open{display:flex}.menu{display:block}.book-mini{display:none}.brand small{display:none}.services{grid-template-columns:1fr}.services-intro{position:static}.process-grid{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr 1fr}.look-modal>article{grid-template-columns:1fr;height:92vh}.look-modal article>img{height:45vh}.look-modal article>div{padding:30px}.floating-book{width:55px}.floating-book span{display:none}}
@media(max-width:600px){.hero-actions{flex-wrap:wrap}.availability{bottom:48px}.services,.process,.voices{padding:10vh 20px}.service-list article{grid-template-columns:32px 1fr 35px}.service-list article>b{grid-column:2}.process-grid{grid-template-columns:1fr}.process-grid article{min-height:auto}.voice-slider{grid-template-columns:45px 1fr 45px}.voice-slider>button{width:38px;height:38px}.studio{grid-template-columns:1fr}.map-art{min-height:340px}.site-footer{grid-template-columns:1fr}.booking-card form>div{grid-template-columns:1fr}.languages{margin-left:auto}}

/* Controlled editorial overlap: readable on desktop, fully separated on mobile. */
.cover .hero-copy{width:54vw;max-width:760px}
.cover .hero-copy h1{font-size:clamp(64px,8.2vw,126px);line-height:.82;overflow-wrap:normal}
.cover .hero-image{right:3vw;width:43vw}
.cover .hero-image:after{background:linear-gradient(90deg,#171516 0,rgba(23,21,22,.72) 8%,transparent 35%,#681a2c44 100%)}
.availability{left:auto;right:3vw;bottom:24px;background:#171516cc;padding:9px 12px;z-index:5}
.manifest-text span,.manifest-text strong{text-shadow:0 2px 0 var(--paper),0 0 24px var(--paper),0 0 42px var(--paper)}
.manifest{height:125vh;min-height:900px}.manifest-note{right:29vw;bottom:3vh;background:rgba(238,234,226,.94);padding:16px 18px;z-index:5;box-shadow:0 12px 40px rgba(20,19,19,.08)}

@media(max-width:1100px){
  header nav{position:absolute;top:78px;left:0;width:100%;background:#181617;padding:25px;display:none;flex-direction:column;box-shadow:0 20px 40px #0005}
  header nav.open{display:flex}.menu{display:block}.book-mini{display:none}
  .cover .hero-copy{width:58vw}.cover .hero-copy h1{font-size:clamp(58px,8.4vw,94px)}
  .cover .hero-image{width:46vw}
}

@media(max-width:800px){
  .cover{min-height:0;padding:118px 20px 38px;display:flex;flex-direction:column;gap:28px}
  .cover .hero-copy{width:100%;max-width:none;padding:0;order:1}
  .cover .hero-copy h1{font-size:clamp(58px,16vw,96px);line-height:.84;margin-top:18px}
  .hero-lead{max-width:580px;margin:24px 0 18px}
  .hero-actions{margin-bottom:4px}
  .cover .hero-image{position:relative;right:auto;top:auto;width:100%;height:62vh;min-height:440px;max-height:680px;order:2;margin:0;clip-path:polygon(8% 0,100% 0,100% 88%,84% 100%,0 100%,0 12%)}
  .cover .hero-image:after{background:linear-gradient(0deg,#17151666,transparent 42%)}
  .round-cta{right:34px;left:auto;bottom:70px;width:108px;height:108px}
  .availability{position:relative;order:3;right:auto;left:auto;bottom:auto;align-self:flex-start;background:#282425;padding:10px 13px}
  .scroll-line{position:relative;order:4;left:auto;bottom:auto;margin-top:2px}
  .issue{display:none}

  .manifest{height:auto;min-height:0;padding:90px 20px;display:grid;grid-template-columns:1fr 1fr;gap:22px;overflow:hidden}
  .manifest>.chapter{position:static;grid-column:1/-1;margin:0}
  .manifest-text{position:static;grid-column:1/-1;padding:40px 0 20px;font-size:clamp(46px,13vw,88px);text-align:left;line-height:.92}
  .manifest-text span,.manifest-text strong{text-shadow:none}
  .floating-shot{position:relative!important;inset:auto!important;width:100%!important;height:48vw!important;min-height:230px;max-height:430px;box-shadow:none}
  .floating-shot.one{clip-path:ellipse(50% 50% at 50% 50%)}
  .floating-shot.two{border-radius:50% 50% 6px 6px}
  .manifest-note{position:static;grid-column:1/-1;width:auto;padding:26px 0 0;background:transparent;box-shadow:none;font-size:16px}
  .manifest-note .signature{margin-top:10px}

  .booking{min-height:0}.booking-copy h2{overflow-wrap:anywhere}
  .services-intro h2,.process h2,.studio h2{overflow-wrap:anywhere}
}

@media(max-width:520px){
  header{padding:0 18px}.brand{font-size:13px}.languages{margin-left:auto}.lang-current{padding:10px 5px}
  .cover{padding-left:16px;padding-right:16px}
  .cover .hero-copy h1{font-size:clamp(48px,15.5vw,76px)}
  .cover .hero-image{height:56vh;min-height:390px}
  .round-cta{right:24px;bottom:84px;width:96px;height:96px}
  .manifest{grid-template-columns:1fr;padding-left:16px;padding-right:16px}
  .manifest-text,.manifest>.chapter,.manifest-note{grid-column:1}
  .floating-shot{height:112vw!important;max-height:540px}
  .manifest-text{font-size:clamp(43px,13vw,66px)}
  .service-list article{gap:12px}.service-list h3{font-size:23px}
  .voice-text{font-size:27px}
  .floating-book{right:15px;bottom:15px}
}
