:root{--ink:#0b0b0a;--paper:#f2eee5;--paper2:#e7e0d3;--text:#f6f2e9;--muted:#aaa69f;--bronze:#c8a976;--line:rgba(255,255,255,.16);--darkline:rgba(11,11,10,.17);--green:#20c873;--ease:cubic-bezier(.2,.75,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;overflow-x:hidden}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}img{display:block;width:100%}.noise{position:fixed;inset:0;z-index:1000;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.page-loader{position:fixed;inset:0;background:var(--ink);z-index:2000;display:grid;place-items:center;color:var(--text);transition:opacity .7s var(--ease),visibility .7s}.page-loader.hide{opacity:0;visibility:hidden}.page-loader>div{font-size:clamp(28px,4vw,58px);letter-spacing:-.07em}.page-loader b{color:var(--bronze)}.page-loader>i{position:absolute;width:180px;height:1px;background:#333;overflow:hidden;margin-top:100px}.page-loader>i:after{content:"";display:block;width:60%;height:100%;background:var(--bronze);animation:load 1.2s infinite var(--ease)}@keyframes load{from{transform:translateX(-120%)}to{transform:translateX(190%)}}
.site-header{position:fixed;z-index:900;top:0;left:0;width:100%;height:84px;padding:0 42px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;color:#fff;mix-blend-mode:difference}.brand{font-size:13px;letter-spacing:.05em;font-weight:600}.brand b{color:var(--bronze);margin-left:2px}.desktop-nav{display:flex;gap:32px;font-size:12px}.desktop-nav a,.header-cta{position:relative}.desktop-nav a:after,.header-cta:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:.4s var(--ease)}.desktop-nav a:hover:after,.header-cta:hover:after{transform:scaleX(1);transform-origin:left}.header-cta{justify-self:end;font-size:12px}.header-cta span{margin-left:8px}.menu-toggle{display:none;background:none;border:0;width:42px;height:42px;position:relative}.menu-toggle i{position:absolute;left:8px;width:26px;height:1px;background:currentColor}.menu-toggle i:first-child{top:16px}.menu-toggle i:last-child{top:24px}.mobile-menu{display:none;position:fixed;z-index:1200;inset:0;background:var(--ink);color:#fff;padding:80px 28px 32px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-100%);transition:transform .65s var(--ease),opacity .35s ease,visibility .35s}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}.mobile-menu nav{display:grid;gap:12px}.mobile-menu nav a{font-family:"Playfair Display",serif;font-size:13vw;border-bottom:1px solid var(--line);padding:8px 0}.mobile-menu>div{display:flex;justify-content:space-between;font-size:12px}.mobile-close{position:absolute;top:18px;right:24px;background:none;border:0;font-size:40px;color:#fff}
.hero{height:100svh;min-height:720px;background:#111;color:#fff;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0;overflow:hidden;will-change:transform}.hero-media>img{height:100%;object-fit:cover;transform:scale(1.04);transition:transform .12s linear;will-change:transform}.hero-grade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.76) 0%,rgba(5,5,5,.34) 48%,rgba(5,5,5,.15) 100%),linear-gradient(0deg,rgba(0,0,0,.58),transparent 48%)}.hero-kicker{position:absolute;top:115px;left:42px;right:42px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.18em}.hero-copy{position:absolute;left:7vw;top:51%;transform:translateY(-44%);z-index:2;max-width:min(920px,76vw)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;margin:0 0 26px}.hero h1{font:500 clamp(58px,6.25vw,112px)/.91 "Playfair Display",serif;letter-spacing:-.052em;margin:0;max-width:920px;text-wrap:balance}.hero h1 em{color:var(--bronze);font-weight:500}.hero-actions{display:flex;gap:12px;margin-top:34px}.button{min-height:54px;padding:0 22px;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid;letter-spacing:.08em;text-transform:uppercase;font-size:10px;transition:.45s var(--ease)}.button:hover{transform:translateY(-3px)}.button-light{background:#f7f4ee;color:#111;border-color:#f7f4ee}.button-ghost{background:rgba(0,0,0,.12);color:#fff;border-color:rgba(255,255,255,.55);backdrop-filter:blur(10px)}.button-dark{background:var(--ink);color:#fff;border-color:var(--ink)}.hero-note{position:absolute;right:42px;bottom:58px;display:flex;gap:14px;align-items:flex-start;font-size:10px;line-height:1.5;letter-spacing:.04em}.hero-note b{font-size:31px;font-family:"Playfair Display";color:var(--bronze);font-weight:500}.scroll-cue{position:absolute;left:42px;bottom:42px;display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:.18em}.scroll-cue i{width:56px;height:1px;background:#fff;position:relative;overflow:hidden}.scroll-cue i:after{content:"";position:absolute;width:20px;height:100%;background:var(--bronze);animation:scrollline 1.8s infinite}@keyframes scrollline{from{transform:translateX(-24px)}to{transform:translateX(64px)}}.hero-plan{position:absolute;inset:8%;opacity:0;transition:.5s var(--ease);pointer-events:none}.hero-plan i{position:absolute;border:1px solid rgba(240,230,211,.7);background:rgba(255,255,255,.025)}.hero-plan i:nth-child(1){left:5%;top:14%;width:24%;height:34%}.hero-plan i:nth-child(2){left:33%;top:11%;width:31%;height:26%}.hero-plan i:nth-child(3){left:68%;top:24%;width:24%;height:45%}.hero-plan i:nth-child(4){left:8%;top:55%;width:30%;height:30%}.hero-plan i:nth-child(5){left:42%;top:44%;width:22%;height:41%}.hero-plan i:nth-child(6){left:66%;top:73%;width:23%;height:12%}.hero.plan-active .hero-plan{opacity:.75}.hero-lens{position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.75);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none;box-shadow:0 0 0 9999px rgba(0,0,0,.18),inset 0 0 50px rgba(255,255,255,.08);transition:opacity .25s}.hero-media:hover .hero-lens{opacity:1}.hero-lens span{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.2em}
.section{padding:130px 7vw}.section-dark{background:var(--ink);color:var(--text);padding:130px 0}.section-shell{width:min(1600px,86vw);margin:auto}.section-index{font-size:9px;letter-spacing:.19em;text-transform:uppercase;margin-bottom:48px}.section-index.light{color:#aaa}.intro-grid{display:grid;grid-template-columns:1.6fr .7fr;gap:10vw;align-items:end}.intro h2,.lab-heading h2,.services-heading h2,.planner-heading h2,.contact h2,.studio h2,.work-heading h2,.process h2{font:500 clamp(44px,6vw,100px)/.95 "Playfair Display",serif;letter-spacing:-.045em;margin:0}.intro h2 em,.lab-heading h2 em,.services-heading h2 em,.planner-heading h2 em,.contact h2 em,.studio h2 em,.work-heading h2 em,.process h2 em{font-weight:500;color:var(--bronze)}.intro-grid>div p{font:16px/1.65 "Manrope";color:#555;max-width:460px}.text-link{display:inline-flex;gap:30px;border-bottom:1px solid;padding-bottom:8px;margin-top:20px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.work-heading{display:grid;grid-template-columns:1.5fr .55fr;gap:10vw;align-items:end;margin-bottom:70px}.work-heading p,.lab-heading p,.services-heading p,.planner-heading p{font:15px/1.7 "Manrope";color:#aaa;margin:0}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.project-card{position:relative;min-height:520px;overflow:hidden;cursor:pointer;background:#171717}.project-card--wide{grid-column:span 2;min-height:680px}.project-card--tall{min-height:720px}.project-image{position:absolute;inset:0;overflow:hidden}.project-image img{height:100%;object-fit:cover;transition:1s var(--ease);filter:saturate(.88)}.project-card:hover img{transform:scale(1.045);filter:saturate(1)}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.76),transparent 50%)}.project-meta{position:absolute;z-index:2;left:28px;right:28px;bottom:26px;display:grid;grid-template-columns:1fr auto;align-items:end}.project-meta span{grid-column:1/3;font-size:9px;letter-spacing:.18em;color:#ccc}.project-meta h3{font:500 32px "Playfair Display";margin:8px 0 0}.project-meta b{font-size:9px;letter-spacing:.12em;text-transform:uppercase;font-weight:500;padding-bottom:6px}
.lab-heading,.services-heading,.planner-heading{display:grid;grid-template-columns:1.45fr .55fr;gap:10vw;align-items:end;margin-bottom:64px}.lab-shell{display:grid;grid-template-columns:1.5fr .7fr;min-height:760px;border:1px solid var(--darkline)}.lab-visual{position:relative;overflow:hidden;background:#111;--lx:60%;--ly:42%}.lab-visual>img{position:absolute;inset:0;height:100%;object-fit:cover;transition:1s var(--ease)}.lab-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.65),transparent 55%)}.lab-light{position:absolute;inset:0;background:radial-gradient(circle 360px at var(--lx) var(--ly),rgba(255,235,180,.22),transparent 65%);mix-blend-mode:screen}.lab-label{position:absolute;left:34px;bottom:32px;color:#fff}.lab-label small{font-size:9px;letter-spacing:.2em}.lab-label strong{display:block;font:500 36px "Playfair Display";margin:8px 0}.lab-label span{font-size:11px;color:#ddd}.lab-controls{padding:32px;display:flex;flex-direction:column;justify-content:center;gap:26px;background:#ece6da}.lab-controls fieldset{border:0;padding:0;margin:0}.lab-controls legend{font-size:9px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:12px}.lab-controls label{display:block}.lab-controls label span{display:block;padding:12px 0;border-bottom:1px solid var(--darkline);font-size:13px;cursor:pointer}.lab-controls input{position:absolute;opacity:0}.lab-controls input:checked+span{padding-left:22px;color:#7c5a23;position:relative}.lab-controls input:checked+span:before{content:"";position:absolute;left:0;top:50%;width:10px;height:10px;border-radius:50%;background:var(--bronze);transform:translateY(-50%)}.lab-disclaimer{font-size:9px;line-height:1.5;color:#777}.process{height:430vh;padding:0}.process-sticky{position:sticky;top:0;height:100vh;display:grid;grid-template-columns:.72fr 1.28fr;overflow:hidden}.process-copy{padding:9vh 5vw 6vh 7vw;display:flex;flex-direction:column}.process-copy>p{font:14px/1.7 "Manrope";color:#aaa;max-width:430px}.process-steps{margin-top:auto}.process-steps button{width:100%;height:68px;background:none;border:0;border-top:1px solid var(--line);display:grid;grid-template-columns:44px 1fr;align-items:center;color:#777;text-align:left;cursor:pointer;transition:.35s}.process-steps button:last-child{border-bottom:1px solid var(--line)}.process-steps button.active{color:#fff;padding-left:10px}.process-steps button span{font:22px "Playfair Display";color:var(--bronze)}.process-steps strong{font-size:13px;font-weight:500}.process-steps small{display:block;font-size:9px;margin-top:4px;letter-spacing:.1em}.process-stage{position:relative;overflow:hidden;background:#151515}.process-stage>img{position:absolute;inset:0;height:100%;object-fit:cover;transition:opacity .9s var(--ease),transform 1.2s var(--ease)}.process-stage>img:nth-child(2){opacity:0}.process-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.62),transparent 60%)}.process-caption{position:absolute;left:44px;right:44px;bottom:48px;display:grid;grid-template-columns:70px 1fr;align-items:end;color:#fff}.process-caption>span{font:64px "Playfair Display";color:var(--bronze)}.process-caption small{font-size:9px;letter-spacing:.18em}.process-caption strong{display:block;font:500 32px "Playfair Display";margin:8px 0}.process-caption p{margin:0;color:#ddd;font:12px/1.6 "Manrope";max-width:520px}.process-progress{position:absolute;right:24px;top:10%;bottom:10%;width:1px;background:rgba(255,255,255,.25)}.process-progress i{display:block;width:1px;background:var(--bronze);height:0;transition:.15s linear}
.service-panels{display:grid;grid-template-columns:repeat(4,1fr);min-height:620px;border-top:1px solid var(--darkline);border-bottom:1px solid var(--darkline)}.service-panel{padding:28px 26px;border-right:1px solid var(--darkline);position:relative;overflow:hidden;transition:.65s var(--ease);cursor:pointer}.service-panel:last-child{border-right:0}.service-panel:before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:.65s var(--ease);z-index:-1}.service-panel.active{color:#fff;flex:1.5}.service-panel.active:before{transform:none}.service-panel>span{font:36px "Playfair Display";color:var(--bronze)}.service-panel h3{font:500 clamp(28px,3vw,52px)/1 "Playfair Display";margin:110px 0 24px}.service-panel p{font:13px/1.6 "Manrope";color:#777}.service-panel.active p{color:#bbb}.service-panel ul{list-style:none;padding:0;margin:50px 0 0;opacity:0;transform:translateY(20px);transition:.5s var(--ease)}.service-panel.active ul{opacity:1;transform:none}.service-panel li{padding:10px 0;border-top:1px solid currentColor;font-size:10px;letter-spacing:.08em}.studio{padding:0;display:grid;grid-template-columns:1.08fr .92fr;min-height:900px}.studio-image{position:relative;overflow:hidden}.studio-image img{height:100%;object-fit:cover;filter:saturate(.82)}.studio-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.65),transparent 50%)}.studio-image>div{position:absolute;z-index:2;left:34px;bottom:32px}.studio-image span{font-size:9px;letter-spacing:.18em}.studio-image strong{font:500 32px "Playfair Display";display:block;margin-top:7px}.studio-copy{padding:10vh 8vw 8vh 6vw;display:flex;flex-direction:column;justify-content:center}.studio-copy>p{font:15px/1.7 "Manrope";color:#aaa;max-width:560px;margin:34px 0}.studio-copy blockquote{font:500 clamp(25px,3vw,48px)/1.15 "Playfair Display";margin:20px 0 50px;padding-left:24px;border-left:1px solid var(--bronze);color:#dfd6c6}.studio-copy .button{align-self:flex-start}.planner-shell{display:grid;grid-template-columns:1.25fr .75fr;border:1px solid var(--darkline)}.planner-form{padding:40px}.planner-group{margin-bottom:34px}.planner-group>label,.planner-grid label{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.choice-row,.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.check-grid{grid-template-columns:repeat(2,1fr)}.choice-row input,.check-grid input{position:absolute;opacity:0}.choice-row span,.check-grid span{display:flex;min-height:54px;align-items:center;padding:0 14px;border:1px solid var(--darkline);font-size:11px;text-transform:none;letter-spacing:0;cursor:pointer}.choice-row input:checked+span,.check-grid input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}input[type=range]{width:100%;accent-color:#9b7b46;margin-top:20px}.planner-group output{float:right;font:22px "Playfair Display";letter-spacing:0;text-transform:none}.planner-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.planner-grid input,.planner-grid select,.planner-group textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--darkline);background:transparent;padding:14px 0;outline:0;text-transform:none;letter-spacing:0;margin-top:6px}.planner-result{background:#ded4c4;padding:42px;display:flex;flex-direction:column}.planner-result>small{font-size:9px;letter-spacing:.18em}.planner-result h3{font:500 44px "Playfair Display";margin:28px 0 8px}.planner-result>p{font-size:12px;color:#555}.snapshot-list{display:grid;grid-template-columns:.8fr 1.2fr;margin:36px 0 auto}.snapshot-list span,.snapshot-list b{padding:14px 0;border-top:1px solid rgba(0,0,0,.18);font-size:10px}.snapshot-list span{color:#666}.snapshot-list b{font-weight:500}.planner-result .button{margin-top:34px}.planner-result>.button+small{margin-top:14px;color:#69645d;line-height:1.5}.contact{padding:130px 7vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.contact-copy>p{font:15px/1.7 "Manrope";color:#aaa;max-width:500px;margin:32px 0}.contact-actions{display:flex;gap:28px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.location-card{background:#151515;border:1px solid var(--line)}.location-card iframe{width:100%;height:440px;border:0;filter:grayscale(1) invert(.92) contrast(.85)}.location-card>div{padding:24px;display:grid;grid-template-columns:100px 1fr auto;align-items:center}.location-card span{font-size:9px;letter-spacing:.18em;color:#888}.location-card strong{font:500 18px/1.4 "Playfair Display"}.location-card a{font-size:10px;text-transform:uppercase;letter-spacing:.12em}footer{height:110px;background:var(--ink);color:#fff;border-top:1px solid var(--line);padding:0 7vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;font-size:10px}footer p{text-align:center;color:#777}footer>span{text-align:right;color:#777}
.project-modal{position:fixed;z-index:1500;inset:0;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.3fr .7fr;opacity:0;visibility:hidden;transition:.55s var(--ease)}.project-modal.open{opacity:1;visibility:visible}.project-modal-media{overflow:hidden}.project-modal-media img{height:100%;object-fit:cover;transform:scale(1.12);transition:1.1s var(--ease)}.project-modal.open img{transform:scale(1)}.project-modal-copy{padding:12vh 6vw 8vh;display:flex;flex-direction:column;justify-content:center}.project-modal-copy>small{font-size:9px;letter-spacing:.18em;color:#aaa}.project-modal-copy h2{font:500 58px "Playfair Display";margin:28px 0 18px}.project-modal-copy>p{font:14px/1.7 "Manrope";color:#aaa}.project-modal-copy>div{display:grid;grid-template-columns:.5fr 1fr;margin:36px 0}.project-modal-copy>div span,.project-modal-copy>div b{border-top:1px solid var(--line);padding:12px 0;font-size:10px}.project-modal-copy>div span{color:#777}.project-modal-copy>div b{font-weight:500}.project-close{position:absolute;right:24px;top:20px;background:none;border:0;color:#fff;font-size:40px;z-index:2}.project-modal-copy .button{align-self:flex-start}.whatsapp{position:fixed;right:26px;bottom:24px;z-index:850}.whatsapp-button{width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:linear-gradient(145deg,#25d67d,#12a95d);color:#fff;display:grid;place-items:center;box-shadow:0 14px 44px rgba(8,100,53,.32);cursor:pointer;position:relative}.whatsapp-button svg{width:31px;height:31px}.whatsapp-button i{position:absolute;right:1px;top:1px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#59df92}.wa-ring{position:absolute;inset:-7px;border:1px solid rgba(37,214,125,.5);border-radius:50%;animation:wa 2.4s infinite}@keyframes wa{0%,100%{transform:scale(.92);opacity:.35}50%{transform:scale(1.08);opacity:.75}}.whatsapp-panel{position:absolute;right:0;bottom:82px;width:320px;background:#fff;color:#111;padding:24px;box-shadow:0 20px 70px rgba(0,0,0,.2);transform:translateY(16px) scale(.97);opacity:0;visibility:hidden;transition:.4s var(--ease)}.whatsapp-panel.open{transform:none;opacity:1;visibility:visible}.whatsapp-panel small{font-size:8px;letter-spacing:.18em;color:#777}.whatsapp-panel strong{display:block;font:500 25px "Playfair Display";margin:14px 0}.whatsapp-panel p{font:12px/1.6 "Manrope";color:#666}.whatsapp-panel a{display:flex;justify-content:space-between;background:#18b667;color:#fff;padding:15px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.wa-close{position:absolute;top:7px;right:9px;border:0;background:none;font-size:22px}.mobile-actions{display:none}
.reveal{opacity:0;transform:translateY(28px);transition:1s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(min-width:1051px){.mobile-menu{display:none!important}.menu-toggle{display:none!important}}
@media(max-width:1050px){.desktop-nav{display:none}.mobile-menu{display:flex}.menu-toggle{display:block;justify-self:end}.header-cta{display:none}.site-header{grid-template-columns:1fr auto}.hero h1{font-size:10vw}.work-heading,.lab-heading,.services-heading,.planner-heading{grid-template-columns:1fr;gap:28px}.lab-shell{grid-template-columns:1fr}.lab-visual{min-height:620px}.service-panels{grid-template-columns:repeat(2,1fr)}.studio{grid-template-columns:1fr}.studio-image{min-height:700px}.planner-shell{grid-template-columns:1fr}.contact{grid-template-columns:1fr}.location-card{margin-top:30px}}
@media(max-width:760px){.site-header{height:68px;padding:0 18px}.hero{min-height:680px}.hero-kicker{top:82px;left:18px;right:18px}.hero-kicker span:last-child{display:none}.hero-copy{left:18px;right:18px;top:48%}.hero h1{font-size:14vw;line-height:.92;max-width:94vw}.hero-actions{flex-direction:column;align-items:flex-start;margin-top:30px}.button{min-width:230px}.hero-note{display:none}.scroll-cue{left:18px;bottom:26px}.hero-lens{display:none}.section{padding:90px 18px}.section-dark{padding:90px 0}.section-shell{width:calc(100% - 36px)}.intro-grid{grid-template-columns:1fr;gap:30px}.intro h2,.lab-heading h2,.services-heading h2,.planner-heading h2,.contact h2,.studio h2,.work-heading h2,.process h2{font-size:12vw}.work-heading{margin-bottom:35px}.work-grid{grid-template-columns:1fr;gap:10px}.project-card,.project-card--wide,.project-card--tall{grid-column:auto;min-height:460px}.project-meta h3{font-size:26px}.lab-visual{min-height:520px}.lab-controls{padding:24px}.process{height:auto;padding:80px 18px}.process-sticky{position:relative;height:auto;display:block}.process-copy{padding:0}.process-steps{margin:40px 0}.process-stage{height:620px}.process-caption{left:20px;right:20px;bottom:28px;grid-template-columns:55px 1fr}.process-caption>span{font-size:45px}.process-caption strong{font-size:25px}.process-progress{display:none}.service-panels{grid-template-columns:1fr;min-height:0}.service-panel{min-height:330px;border-right:0;border-bottom:1px solid var(--darkline)}.service-panel h3{margin:65px 0 20px}.service-panel ul{opacity:1;transform:none;margin-top:30px}.studio{min-height:0}.studio-image{min-height:540px}.studio-copy{padding:90px 18px}.choice-row{grid-template-columns:1fr}.planner-form{padding:24px}.planner-grid{grid-template-columns:1fr}.planner-result{padding:28px}.contact{padding:90px 18px}.location-card iframe{height:350px}.location-card>div{grid-template-columns:1fr;gap:12px}.project-modal{grid-template-columns:1fr;overflow:auto}.project-modal-media{height:52vh}.project-modal-copy{padding:38px 24px 80px}.project-modal-copy h2{font-size:42px}.whatsapp{right:18px;bottom:78px}.whatsapp-button{width:58px;height:58px}.whatsapp-panel{width:min(320px,calc(100vw - 36px))}.mobile-actions{position:fixed;left:0;right:0;bottom:0;z-index:820;height:58px;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-top:1px solid #ddd}.mobile-actions a{display:grid;place-items:center;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.mobile-actions a:first-child{background:#18b667;color:#fff}.mobile-actions a:last-child{background:#111;color:#fff}footer{height:auto;padding:30px 18px 85px;grid-template-columns:1fr;gap:15px;text-align:left}footer p,footer>span{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.hero-media>img{transform:none!important}}

/* V9 defensive layout guards */
.mobile-menu[aria-hidden="true"]{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-100%)}
.mobile-menu[aria-hidden="false"]{opacity:1;visibility:visible;pointer-events:auto;transform:none}
@media(min-width:1051px){.mobile-menu,.mobile-menu.open,.mobile-menu[aria-hidden="false"]{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateY(-110%)!important}}
@media(max-width:1050px){.mobile-menu{display:flex}}
.hero-copy,.hero-copy *{position:relative}.hero-copy{isolation:isolate}.hero-copy h1{overflow-wrap:normal;word-break:normal}
