:root{--paper:#f4f1e9;--cream:#ebe5d8;--ink:#1e211d;--muted:#6e7167;--olive:#455849;--line:rgba(30,33,29,.16);--serif:"Playfair Display",Georgia,serif;--sans:"Manrope","DM Sans",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.topbar{position:fixed;inset:0 0 auto;z-index:20;height:88px;padding:0 clamp(24px,5vw,80px);display:flex;align-items:center;justify-content:space-between;color:#fff;transition:.5s ease}.topbar.scrolled{height:70px;background:rgba(244,241,233,.88);backdrop-filter:blur(12px);color:var(--ink);box-shadow:0 1px rgba(0,0,0,.05)}.brand{font-size:13px;font-weight:500;letter-spacing:.25em}.topbar nav{display:flex;gap:clamp(22px,3.5vw,58px)}.topbar nav a{font-size:11px;letter-spacing:.2em;position:relative}.topbar nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:currentColor;transition:.3s}.topbar nav a:hover:after{right:0}.hero{position:relative;min-height:100svh;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;animation:cinematic 24s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,15,15,.08),rgba(5,15,15,.06) 48%,rgba(5,15,15,.36)),linear-gradient(0deg,rgba(5,15,15,.25),transparent 40%)}@keyframes cinematic{to{transform:scale(1.045)}}.hero-content{position:absolute;z-index:2;top:50%;right:clamp(5vw,9vw,150px);transform:translateY(-40%);width:min(580px,42vw)}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.3em;margin:0 0 28px}.eyebrow span,.hero-details span{margin:0 7px}.hero h1{font-family:var(--serif);font-size:clamp(70px,8.2vw,142px);font-weight:400;line-height:.8;letter-spacing:-.05em;text-transform:uppercase;margin:0 0 36px}.hero-tagline{font-family:var(--serif);font-style:italic;font-size:clamp(22px,2vw,34px);margin:0 0 24px}.hero-details{font-size:11px;letter-spacing:.12em;text-transform:uppercase}.hero-reveal{opacity:0;animation:heroIn 1.2s cubic-bezier(.2,.75,.2,1) forwards}.hero-reveal:nth-child(2){animation-delay:.15s}.hero-reveal:nth-child(3){animation-delay:.3s}.hero-reveal:nth-child(4){animation-delay:.45s}@keyframes heroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.scroll-cue{position:absolute;z-index:3;bottom:36px;left:clamp(24px,5vw,80px);font-size:9px;letter-spacing:.25em;display:flex;align-items:center;gap:14px}.scroll-cue span{display:block;width:46px;height:1px;background:#fff}.section{padding:clamp(90px,11vw,180px) clamp(24px,7vw,120px)}.studio{display:grid;grid-template-columns:minmax(280px,.82fr) 1.18fr;gap:clamp(60px,10vw,170px);align-items:center;min-height:850px}.studio-photo{position:relative}.studio-photo:before{content:"";position:absolute;inset:8% -8% -8% 8%;background:#dfddd7;z-index:-1}.studio-photo img{width:100%;aspect-ratio:1/1.08;object-fit:cover;filter:grayscale(1)}h2{font-family:var(--serif);font-size:clamp(52px,6.2vw,102px);font-weight:400;line-height:.92;letter-spacing:-.045em;text-transform:uppercase;margin:0}h2 em{font-weight:400;text-transform:none}.body-copy{max-width:650px;margin:52px 0 46px;display:grid;grid-template-columns:1fr 1fr;gap:32px;color:#55594f;font-size:14px;line-height:1.9}.body-copy p{margin:0}.studio blockquote{margin:0;padding:0 0 0 30px;border-left:1px solid var(--olive);max-width:680px;font-family:var(--serif);font-style:italic;font-size:clamp(22px,2vw,31px);line-height:1.45}.studio cite{display:block;margin-top:18px;font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:.2em}.location{height:max(760px,100svh);position:relative;overflow:hidden;color:#fff;display:flex;align-items:flex-end;padding:clamp(60px,8vw,120px)}.location-media,.location-media img{position:absolute;inset:-3%;width:106%;height:106%;object-fit:cover}.location-media img{object-position:center}.location-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,22,23,.62),rgba(11,22,23,.05) 70%),linear-gradient(0deg,rgba(11,22,23,.4),transparent 55%)}.location-copy{position:relative;z-index:2;max-width:850px}.location h2{font-size:clamp(47px,5.7vw,92px)}.location-text{margin-top:44px;max-width:530px;display:grid;gap:12px;font-size:14px;line-height:1.8}.location-text p{margin:0}.section-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:70px}.section-head .eyebrow{padding-top:14px}.section-head h2{max-width:800px}.gallery,.plans{background:#eeeae1}.tabs,.plan-tabs{display:flex;gap:38px;border-bottom:1px solid var(--line);margin-bottom:42px;overflow:auto}.tab,.plan-tab{border:0;background:none;padding:0 0 16px;font:500 10px/1 var(--sans);letter-spacing:.18em;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:1px solid transparent;margin-bottom:-1px}.tab.active,.plan-tab.active{color:var(--ink);border-color:var(--ink)}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.media-card{border:0;padding:0;background:#e5e0d5;cursor:zoom-in;overflow:hidden;position:relative;aspect-ratio:1}.media-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.media-card:hover img{transform:scale(1.035)}.media-card span{position:absolute;inset:auto 18px 18px;color:#fff;text-align:left;font-size:11px;letter-spacing:.12em;text-shadow:0 1px 4px #000}.plans{background:var(--paper)}.plans-grid .media-card{background:#fff}.plans-grid .media-card img{object-fit:contain;padding:24px}.media-caption{font-size:13px;line-height:1.6;margin:14px 0 30px;white-space:pre-line}.contact{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;min-height:650px}.contact-copy>p:last-child{color:var(--muted);margin-top:38px}.contact-card{background:#e7e2d6;padding:clamp(38px,5vw,70px)}.contact-card p{font-family:var(--serif);font-size:25px;margin:0 0 35px}.cta{background:var(--olive);color:#fff;padding:23px 26px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.2em;transition:.3s}.cta:hover{background:#304237;transform:translateY(-2px)}footer{min-height:220px;background:#232821;color:#d8d7cf;padding:60px clamp(24px,7vw,120px);display:grid;grid-template-columns:1fr auto auto;gap:40px;align-items:end;font-size:10px;letter-spacing:.15em;text-transform:uppercase}.whatsapp{position:fixed;right:max(22px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:25;width:58px;height:58px;border-radius:50%;background:#3f6b4b;display:grid;place-items:center;box-shadow:0 8px 25px rgba(20,40,25,.22);animation:nudge 5s 2s infinite}.whatsapp svg{width:29px;fill:#fff}@keyframes nudge{0%,90%,100%{transform:rotate(0)}92%{transform:rotate(-4deg)}94%{transform:rotate(4deg)}96%{transform:rotate(-2deg)}98%{transform:rotate(2deg)}}.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s,transform 1s}.reveal.visible{opacity:1;transform:none}.lightbox{border:0;padding:0;max-width:none;max-height:none;width:100%;height:100%;background:rgba(16,18,16,.94);color:#fff}.lightbox[open]{display:grid;place-items:center}.lightbox::backdrop{background:#111}.lightbox figure{margin:50px;width:calc(100% - 150px);height:calc(100% - 110px);display:grid;place-items:center;overflow:auto}.lightbox img{max-width:100%;max-height:100%;object-fit:contain;transition:transform .2s}.lightbox figcaption{position:fixed;bottom:20px;font-size:11px;letter-spacing:.1em}.lightbox button{position:fixed;border:0;background:none;color:#fff;font-size:42px;cursor:pointer;z-index:2}.lightbox-close{top:20px;right:30px}.lightbox-prev{left:28px;top:50%}.lightbox-next{right:28px;top:50%}.zoom-controls{position:fixed;top:25px;left:50%;transform:translateX(-50%);display:flex;gap:12px}.zoom-controls button{position:static;font-size:13px;border:1px solid #ffffff55;padding:7px 11px}.zoom-controls button:nth-child(2){min-width:60px}.empty{padding:80px;text-align:center;color:var(--muted)}@media(max-width:900px){.studio{grid-template-columns:1fr;gap:70px}.studio-photo{max-width:580px}.body-copy{grid-template-columns:1fr}.section-head{display:block}.section-head h2{margin-top:28px}.media-grid{grid-template-columns:repeat(2,1fr)}.contact{grid-template-columns:1fr}footer{grid-template-columns:1fr}.hero-content{width:55vw;right:5vw}}@media(max-width:600px){.topbar{height:72px;padding:0 20px}.brand{font-size:10px}.topbar nav{gap:18px}.topbar nav a{font-size:8px}.hero{min-height:100svh}.hero-image{object-position:42% center}.hero-shade{background:linear-gradient(0deg,rgba(7,17,17,.67),transparent 65%)}.hero-content{top:auto;bottom:95px;left:24px;right:24px;transform:none;width:auto}.hero h1{font-size:clamp(58px,18vw,78px);margin-bottom:24px}.hero-tagline{font-size:21px}.hero-details{font-size:9px;line-height:1.8;max-width:300px}.scroll-cue{display:none}.section{padding:95px 24px}.studio{min-height:0}.studio-photo:before{inset:6% -4% -5% 6%}.studio-copy .eyebrow{margin-top:8px}h2{font-size:49px}.studio blockquote{font-size:22px;padding-left:20px}.location{height:860px;padding:70px 24px}.location-media,.location-media img{inset:0;width:100%;height:100%}.location-media img{object-position:59% center}.location-overlay{background:linear-gradient(0deg,rgba(8,20,22,.78),rgba(8,20,22,.03) 80%)}.location h2{font-size:43px}.location-text{font-size:13px}.media-grid{grid-template-columns:1fr}.tabs,.plan-tabs{gap:26px}.contact{min-height:0}.contact-card{padding:35px 25px}footer{padding-bottom:110px}.lightbox figure{margin:64px 12px;width:calc(100% - 24px);height:calc(100% - 130px)}.lightbox-prev{left:8px}.lightbox-next{right:8px}.whatsapp{width:54px;height:54px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--paper)}::-webkit-scrollbar-thumb{background:#aaa79d;border-radius:9px}
