:root{--midnight:#0a0e14;--graphite:#1e293b;--blue:#405dff;--steel:#a8b2c1;--pearl:#f0f2f5;--line:rgba(240,242,245,.16);--sans:"Manrope",Arial,sans-serif;--serif:"Instrument Serif",Georgia,serif;--gutter:clamp(24px,5.6vw,100px);--ease:cubic-bezier(.22,.68,0,1)}
*,*::before,*::after{box-sizing:border-box}html{scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--midnight);color:var(--pearl);font-family:var(--sans);font-weight:400;-webkit-font-smoothing:antialiased}body.scroll-locked{overflow:hidden}::selection{background:var(--blue);color:white}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:disabled{opacity:.35;cursor:default}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.025em}h2{font-size:clamp(48px,5.6vw,90px);line-height:1.02}em{font-family:var(--serif);font-weight:400}p{font-size:15px;line-height:1.8}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--pearl);outline-offset:7px;border-radius:2px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.wrap{width:calc(100% - var(--gutter)*2);max-width:1600px;margin-inline:auto}.section-space{padding-block:130px}.eyebrow{text-transform:uppercase;font-size:10px;font-weight:500;line-height:1.7;letter-spacing:.17em}.section-label{margin-bottom:30px;display:flex;gap:12px}.section-label>span{color:var(--steel)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;font-size:12px;font-weight:500;padding:12px 0;border-bottom:1px solid rgba(240,242,245,.55);width:max-content;max-width:100%;transition:color .2s,border-color .2s}.text-link>span:last-child{font-size:20px;line-height:1;transition:transform .3s var(--ease)}.text-link:hover>span:last-child{transform:translate(3px,-3px)}.button{min-height:52px;display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:15px 25px;border-radius:32px;font-size:12px;font-weight:600;transition:background .25s,transform .25s}.button span{font-size:20px;line-height:1}.button-light{color:var(--midnight);background:var(--pearl)}.button-light:hover{background:#fff;transform:translateY(-2px)}.blue-dot{width:6px;height:6px;flex-shrink:0;background:var(--blue);border-radius:50%;margin-top:6px}.skip-link{position:fixed;top:10px;left:20px;transform:translateY(-180%);z-index:1000;background:var(--pearl);color:var(--midnight);padding:14px 18px}.skip-link:focus{transform:translateY(0)}

/* Navigation */
.site-header{height:108px;position:fixed;z-index:60;top:0;left:0;width:100%;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;transition:height .35s,background .35s,border-color .35s;border-bottom:1px solid transparent}.site-header.is-scrolled,.site-header.menu-open{height:82px;background:rgba(10,14,20,.95);backdrop-filter:blur(16px);border-color:var(--line)}.brand{display:block;flex-shrink:0;line-height:0}.brand img{width:126px;height:auto}.desktop-nav{display:flex;align-items:center;gap:34px;margin-left:4vw}.desktop-nav a{font-size:10px;text-transform:uppercase;letter-spacing:.15em;position:relative;padding:16px 0;color:var(--pearl)}.desktop-nav a::after{content:"";position:absolute;width:4px;height:4px;background:var(--blue);border-radius:50%;bottom:4px;left:calc(50% - 2px);opacity:0;transition:opacity .2s}.desktop-nav a:hover::after,.desktop-nav a[aria-current]::after{opacity:1}.header-cta{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;display:flex;gap:25px;align-items:center;border:1px solid rgba(240,242,245,.5);padding:13px 18px;border-radius:30px;transition:background .2s,color .2s}.header-cta span{font-size:18px;line-height:1}.header-cta:hover{background:var(--pearl);color:var(--midnight)}.menu-toggle{display:none;align-items:center;gap:16px;padding:14px 0 14px 16px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.menu-lines{width:22px;display:grid;gap:6px}.menu-lines i{height:1px;background:var(--pearl);transition:transform .3s}.menu-open .menu-lines i:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-lines i:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;z-index:55;background:var(--midnight);overflow-y:auto}.mobile-menu-inner{padding:132px var(--gutter) 30px}.mobile-menu-inner>.eyebrow{display:block;color:var(--steel);margin-bottom:35px}.mobile-menu-inner>a{font-family:var(--serif);font-size:clamp(48px,12vw,76px);line-height:1.1;display:flex;gap:24px;border-top:1px solid var(--line);align-items:center;padding:14px 0}.mobile-menu-inner>a span{font-family:var(--sans);font-size:10px;color:var(--steel)}.mobile-menu-inner>a i{font-family:var(--sans);font-style:normal;font-size:30px;margin-left:auto;color:var(--blue)}.mobile-menu-bottom{margin-top:40px;display:flex;justify-content:space-between;gap:18px;align-items:end}.mobile-menu-bottom p,.mobile-menu-bottom a{font-size:11px;color:var(--steel)}

/* The first impression */
.hero{position:relative;min-height:820px;height:100svh;max-height:1200px;isolation:isolate;overflow:hidden}.hero-picture,.hero-shade{position:absolute;inset:0;z-index:-2}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:66% center}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(5,10,16,.75) 0%,rgba(5,10,16,.49) 38%,rgba(5,10,16,.05) 77%),linear-gradient(0deg,rgba(5,10,16,.76) 0%,transparent 34%,rgba(5,10,16,.18) 100%)}.hero-content{padding-top:clamp(150px,18vh,235px)}.hero-eyebrow{display:flex;align-items:start;gap:13px;margin-bottom:30px;font-size:10px;line-height:1.65;letter-spacing:.15em}.hero h1{font-size:clamp(92px,9.5vw,158px);line-height:.87;letter-spacing:-.025em}.hero h1>span,.hero h1>em{display:block}.hero h1>em{color:var(--blue);line-height:.98}.hero-intro{max-width:400px;margin-top:27px}.hero-intro>p{font-size:13px;line-height:1.8;max-width:345px;color:rgba(240,242,245,.84)}.hero-actions{display:flex;gap:28px;align-items:center;margin-top:26px;white-space:nowrap}.hero-actions .text-link{font-size:11px;gap:16px}.hero-bottom{position:absolute;bottom:32px;left:0;right:0;display:flex;justify-content:space-between;align-items:end}.scroll-cue{display:flex;align-items:center;gap:17px;font-size:9px;letter-spacing:.14em;text-transform:uppercase}.scroll-cue>span{font-size:21px;display:inline-block;transition:transform .3s}.scroll-cue:hover>span{transform:translateY(4px)}.hero-bottom>p{font-size:10px;line-height:1.65;letter-spacing:.025em;margin-left:auto;margin-right:7vw;color:rgba(240,242,245,.85)}.hero-coordinate{font-size:9px;letter-spacing:.08em;color:var(--steel)}

/* Selected work */
.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:65px}.section-head h2 em{color:var(--steel)}.section-aside{font-size:12px;line-height:1.7;color:var(--steel);margin-bottom:8px}.project-stage{position:relative;display:block;width:100%;overflow:hidden;text-align:left;isolation:isolate}.project-stage .browser-frame,.project-stage .phone-frame{transition:transform .7s var(--ease)}.project-stage:hover .browser-frame{transform:translateY(-8px)}.project-stage:hover .phone-frame{transform:translateY(-15px)}.stage-note{position:absolute;left:4.5%;top:5%;font-size:13px;font-weight:500;letter-spacing:.02em;z-index:2}.stage-note>span{display:block;font-size:8px;font-weight:400;text-transform:uppercase;letter-spacing:.14em;opacity:.65;margin-top:6px}.browser-frame{display:block;position:absolute;border-radius:7px 7px 2px 2px;overflow:hidden;box-shadow:0 22px 58px rgba(0,0,0,.22);background:#edece8}.browser-frame img{width:100%;height:auto}.browser-bar{height:24px;background:#f5f4f1;color:#817e77;display:flex;align-items:center;justify-content:space-between;padding:0 12px;font-size:7px;letter-spacing:.03em;border-bottom:1px solid rgba(0,0,0,.06)}.browser-dots{font-size:6px;letter-spacing:2px;color:#b7b5ae}.phone-frame{display:block;position:absolute;padding:6px;background:#17191b;border:1px solid #585858;border-radius:23px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.3)}.phone-frame img{border-radius:16px;width:100%}.phone-speaker{position:absolute;width:31%;height:9px;background:#17191b;left:34.5%;top:6px;border-radius:0 0 8px 8px;z-index:1}.casa-stage{aspect-ratio:1.70;background:#d7d5ce;color:#30342f}.casa-desktop{width:76%;left:6%;top:16%}.casa-mobile{width:18%;right:7%;top:21%}.stage-bottom{position:absolute;left:4.5%;bottom:5%;font-size:9px;letter-spacing:.08em;color:#5d5d55}.project-open{display:flex;align-items:center;gap:28px;position:absolute;bottom:5%;right:4.5%;z-index:3;background:var(--midnight);color:var(--pearl);padding:14px 19px;border-radius:24px;font-size:10px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.project-open>span{font-size:17px}.project-stage:hover .project-open,.project-stage:focus-visible .project-open{opacity:1;transform:translateY(0)}.project-meta{display:flex;justify-content:space-between;gap:20px;padding-top:24px}.project-number{font-size:8px;line-height:1.6;letter-spacing:.12em;color:var(--steel);margin-bottom:10px}.project-meta h3{font-family:var(--serif);font-size:41px;line-height:1.1;letter-spacing:-.015em}.project-meta h3 button{font:inherit;text-align:left;padding:0;line-height:1.2}.project-meta h3 button span{font-family:var(--sans);font-size:25px;display:inline-block;margin-left:12px;transition:transform .3s}.project-meta h3 button:hover span{transform:translate(3px,-3px)}.project-meta>div>p:last-child{font-size:11px;color:var(--steel);margin-top:10px}.project-scope{font-size:9px;text-align:right;line-height:1.9;color:var(--steel);padding-top:22px;flex-shrink:0}.project-pair{display:grid;grid-template-columns:1.1fr .9fr;gap:5vw;margin-top:95px}.reno-stage{background:#252b2b;aspect-ratio:1.14}.reno-desktop{width:91%;left:-8%;top:25%}.reno-mobile{width:28%;right:6%;top:33%}.reno-stage .stage-note{left:6%;top:6%}.votivos-project{padding-top:145px}.votivos-stage{background:#292127;aspect-ratio:1.02}.votivos-stage .stage-note{left:7%;top:7%}.votivos-desktop{width:89%;left:7%;top:23%;z-index:1}.votivos-detail{position:absolute;display:block;width:78%;top:56%;left:-9%;transform:rotate(-5deg);box-shadow:0 20px 35px #0005}.project-pair .project-meta{display:block}.project-pair .project-meta h3{font-size:36px}.project-pair .project-scope{font-size:9px;text-align:left;padding-top:15px}.project-pair .project-scope br{display:block}.work-index{margin-top:72px;border-block:1px solid var(--line)}.work-index-toggle{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0}.work-index-toggle::-webkit-details-marker{display:none}.work-index-toggle>span:first-child{font-family:var(--serif);font-size:25px;color:var(--steel)}.work-index-toggle .text-link{border:0;padding:5px 0;font-size:11px;white-space:nowrap;gap:30px}.open-label{display:none}.work-index[open] .closed-label{display:none}.work-index[open] .open-label{display:inline}.work-index[open] .expand-symbol{transform:rotate(45deg)}.work-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:22px 0 40px}.index-image{padding:0;width:100%;display:block;background:var(--graphite);overflow:hidden;margin-bottom:20px}.index-image img{width:100%;aspect-ratio:1.8;object-fit:cover;object-position:top;transition:transform .5s}.index-image:hover img{transform:scale(1.025)}.work-index-grid h3{font-family:var(--serif);font-size:27px}.work-index-grid h3 button{padding:0;font:inherit;text-align:left}.work-index-grid article>p:last-child{font-size:10px;color:var(--steel);margin-top:7px}

/* Philosophy */
.philosophy{background:#111720;padding-block:140px}.philosophy-grid{display:grid;grid-template-columns:1fr 2fr;gap:7vw}.philosophy-label{display:flex;flex-direction:column;align-items:start;justify-content:space-between}.philosophy-label .eyebrow{color:var(--steel)}.studio-mark{width:94px;height:94px;color:var(--blue);margin-block:50px 25px}.philosophy-copy h2{font-size:clamp(52px,5.45vw,88px);line-height:1.05}.philosophy-copy h2>span{color:var(--steel)}.philosophy-bottom{display:flex;gap:40px;align-items:start;margin-top:40px}.philosophy-bottom p{max-width:460px;color:var(--steel);font-size:13px;line-height:1.9}.small-rule{display:block;width:48px;height:1px;background:var(--blue);margin-top:12px;flex-shrink:0}

/* Editorial service list */
.capabilities{padding-top:140px;padding-bottom:140px}.capabilities .section-head h2 em{color:var(--blue)}.capability{border-top:1px solid var(--line)}.capability:last-child{border-bottom:1px solid var(--line)}.capability summary{list-style:none;display:grid;grid-template-columns:45px minmax(0,1.1fr) minmax(0,.8fr) 38px;gap:26px;align-items:center;cursor:pointer;min-height:125px;padding:25px 0}.capability summary::-webkit-details-marker{display:none}.capability-number{font-size:9px;color:var(--steel);align-self:start;padding-top:13px}.capability h3{font-family:var(--serif);font-size:clamp(29px,2.9vw,46px);line-height:1.12;letter-spacing:-.015em}.capability summary>p{font-size:11px;line-height:1.85;color:var(--steel);max-width:310px;padding-right:25px}.capability-icon{display:flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;font-size:21px;transition:transform .35s,background .35s,border-color .35s}.capability summary:hover .capability-icon{background:var(--blue);border-color:var(--blue)}.capability[open] .capability-icon{transform:rotate(45deg);background:var(--blue);border-color:var(--blue)}.capability-detail{padding:0 6% 34px 71px;display:grid;grid-template-columns:1.1fr .8fr;gap:20px 45px}.capability-detail>p{max-width:510px;font-size:13px;color:var(--steel)}.capability-detail ul{list-style:none;padding:0;margin:0;color:var(--pearl);font-size:11px;line-height:2.1}.capability-detail li::before{content:"—";color:var(--blue);margin-right:10px}.capability-detail .text-link{grid-column:1/-1;font-size:11px}

/* The studio */
.studio{position:relative;isolation:isolate;min-height:700px;overflow:hidden}.studio-picture,.studio-shade{position:absolute;inset:0;z-index:-2}.studio-picture img{width:100%;height:100%;object-fit:cover;object-position:center}.studio-shade{z-index:-1;background:linear-gradient(90deg,rgba(6,12,20,.64),rgba(6,12,20,.24)),linear-gradient(0deg,rgba(6,12,20,.6),transparent 70%)}.studio-content{padding-block:82px 40px}.studio h2{font-size:clamp(64px,7.2vw,116px);margin-top:55px;line-height:.98;max-width:1100px}.studio h2 em{color:var(--pearl)}.studio-bottom{margin-top:38px;display:flex;gap:70px;align-items:end}.studio-bottom p{font-size:12px;line-height:1.85;max-width:380px;color:rgba(240,242,245,.85)}.studio-bottom .text-link{font-size:11px;gap:38px;flex-shrink:0}.studio-location{display:block;margin-top:75px;color:rgba(240,242,245,.7);font-size:8px}

/* A beginning */
.contact{padding-top:135px;padding-bottom:130px}.contact-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:45px}.contact-top .eyebrow{color:var(--steel)}.contact-symbol{color:var(--blue);font-family:var(--sans);font-size:64px;font-weight:400;line-height:1}.contact-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:7vw;align-items:start}.contact h2{font-size:clamp(60px,7vw,112px);line-height:1.02}.contact h2 em{color:var(--steel)}.contact-copy{padding-top:11px;max-width:330px}.contact-copy>p{font-size:13px;color:var(--steel);line-height:1.9;margin-bottom:15px}.contact-copy>.button{margin-top:14px;margin-bottom:28px}.email-link{display:block;width:max-content;max-width:100%;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:6px;overflow-wrap:anywhere;transition:border-color .25s}.email-link:hover{border-color:var(--pearl)}.email-note{display:block;font-size:9px;color:var(--steel);margin-top:7px}.site-footer{padding-top:55px;border-top:1px solid var(--line)}.footer-main{display:grid;grid-template-columns:1.5fr 1fr .5fr;gap:7vw;align-items:center;padding-bottom:62px}.footer-logo{display:block;max-width:450px}.footer-logo img{width:100%;height:auto}.footer-description p{font-size:17px;line-height:1.45}.footer-description>span{display:block;font-size:10px;color:var(--steel);margin-top:18px}.footer-main nav{display:grid;gap:15px;font-size:11px}.footer-main nav a{width:max-content}.footer-main nav a:hover{color:var(--steel)}.footer-bottom{border-top:1px solid var(--line);padding:24px 0 29px;display:flex;justify-content:space-between;gap:20px;font-size:9px;line-height:1.8;color:var(--steel)}.footer-bottom>a{color:var(--pearl)}

/* Genuine project screenshots, progressively disclosed */
.project-dialog{background:var(--midnight);color:var(--pearl);border:1px solid var(--line);width:min(1120px,94vw);max-width:none;max-height:93svh;padding:0 38px 38px;overscroll-behavior:contain;scrollbar-color:var(--graphite) var(--midnight)}.project-dialog::backdrop{background:rgba(3,7,12,.88);backdrop-filter:blur(10px)}.dialog-top{position:sticky;top:0;z-index:4;background:var(--midnight);display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-bottom:1px solid var(--line)}.dialog-top .eyebrow{color:var(--steel);font-size:9px}.dialog-close{display:flex;align-items:center;gap:15px;padding:8px 0 8px 20px;font-size:10px;min-height:44px}.dialog-close>span:last-child{font-size:27px;line-height:1}.dialog-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;padding:36px 0}.dialog-intro h2{font-size:56px}.dialog-intro>p{font-size:12px;color:var(--steel);line-height:1.9}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:20px}.gallery-filters{display:flex;gap:6px}.gallery-filters button{padding:10px 17px;border-radius:22px;color:var(--steel);font-size:10px;border:1px solid var(--line);min-height:40px}.gallery-filters button[aria-pressed=true]{background:var(--pearl);color:var(--midnight);border-color:var(--pearl)}#gallery-count{font-size:10px;color:var(--steel)}.gallery-stage{display:flex;justify-content:center;align-items:center;background:#1a2028;min-height:240px;overflow:hidden}.gallery-stage img{width:100%;height:auto;max-height:63svh;object-fit:contain}.gallery-stage.mobile{padding:24px}.gallery-stage.mobile img{width:auto;height:58svh;max-width:100%;border-radius:5px;object-fit:contain}.gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px}.gallery-arrow{font-size:24px;padding:4px 10px;min-width:44px;min-height:44px;border:1px solid var(--line);border-radius:50%;line-height:1}.gallery-arrow:hover:not(:disabled){background:var(--blue);border-color:var(--blue)}#gallery-caption{font-size:10px;color:var(--steel);text-align:center}.dialog-details{border-top:1px solid var(--line);margin-top:30px;padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.dialog-details .eyebrow{font-size:9px;color:var(--steel);margin-bottom:15px}.dialog-details ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 17px;font-size:11px;line-height:1.7}.dialog-details .text-link{display:flex;margin-bottom:8px;font-size:11px}.noscript-note{background:var(--graphite);padding:20px var(--gutter);font-size:12px;color:var(--steel)}

/* Motion enhances, never gates, content. */
@media(prefers-reduced-motion:no-preference){.motion-ready .reveal{transition:opacity .75s var(--ease),transform .85s var(--ease)}.motion-ready .reveal.will-reveal{opacity:0;transform:translateY(22px)}.motion-ready .reveal.is-visible{opacity:1;transform:none}.hero-content{animation:hero-arrive 1s var(--ease) both}@keyframes hero-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
@media(hover:none){.project-open{opacity:1;transform:none}.project-stage:hover .browser-frame,.project-stage:hover .phone-frame{transform:none}}

/* Tablet */
@media(min-width:801px) and (max-height:850px){.hero{min-height:780px}.hero-content{padding-top:145px}.hero h1{font-size:clamp(92px,8.5vw,138px)}.hero-eyebrow{margin-bottom:22px}.hero-intro{margin-top:20px}}
@media(max-width:1100px){.desktop-nav{gap:23px}.header-cta{gap:15px}.hero h1{font-size:clamp(87px,10.5vw,126px)}.project-pair{gap:35px}.project-meta h3{font-size:36px}.philosophy-grid{grid-template-columns:.8fr 2fr;gap:5vw}.capability summary{grid-template-columns:28px minmax(0,1.2fr) minmax(0,.8fr) 32px;gap:20px}.capability-detail{padding-left:48px}.capability summary>p{padding:0}.capability-icon{width:32px;height:32px}.footer-main{gap:5vw}.contact-grid{gap:5vw;grid-template-columns:1.5fr 1fr}}
@media(max-width:800px){html{scroll-padding-top:100px}.site-header{height:90px}.site-header.is-scrolled,.site-header.menu-open{height:76px}.brand img{width:106px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.hero{min-height:850px;max-height:1080px}.hero-content{padding-top:160px}.hero h1{font-size:clamp(90px,12.8vw,110px)}.hero-coordinate{display:none}.hero-bottom>p{margin-right:0}.section-space{padding-block:90px}.section-head{margin-bottom:42px;gap:25px}.section-aside{font-size:10px}.casa-stage{aspect-ratio:1.65}.casa-desktop{top:24%;width:80%;left:4%}.casa-mobile{width:23%;top:29%;right:5%}.project-open{font-size:9px;padding:11px 15px;gap:16px}.stage-bottom{font-size:8px}.project-pair{margin-top:65px;gap:28px;grid-template-columns:1fr 1fr}.votivos-project{padding-top:80px}.project-pair .project-meta h3{font-size:30px}.project-meta>div>p:last-child{font-size:10px}.project-pair .project-scope{font-size:8px}.browser-bar{height:18px;font-size:5px;padding-inline:7px}.browser-dots{font-size:4px;letter-spacing:1px}.phone-frame{padding:4px;border-radius:16px}.phone-frame img{border-radius:11px}.phone-speaker{top:4px;height:6px}.stage-note{font-size:11px}.stage-note>span{font-size:6px}.philosophy-grid{grid-template-columns:1fr 3fr;gap:32px}.philosophy-copy h2{font-size:clamp(45px,7vw,65px)}.philosophy-bottom{gap:25px}.philosophy-bottom p{font-size:12px}.studio-mark{width:64px;height:64px}.capability summary{grid-template-columns:24px minmax(0,1fr) 32px;gap:20px;min-height:110px}.capability h3{font-size:35px}.capability summary>p{grid-column:2;grid-row:2;font-size:11px;max-width:450px}.capability-icon{grid-column:3;grid-row:1/3}.capability-number{padding-top:9px}.capability summary{row-gap:8px}.capability-detail{padding-left:44px;grid-template-columns:1.1fr 1fr;gap:22px}.capability-detail>p{font-size:12px}.capability-detail ul{font-size:10px}.studio{min-height:670px}.studio h2{font-size:clamp(62px,9.1vw,88px)}.studio-content{padding-top:70px}.studio-bottom{gap:40px}.studio-bottom p{font-size:11px;max-width:320px}.contact-grid{grid-template-columns:1.35fr 1fr;gap:35px}.contact h2{font-size:clamp(50px,7.5vw,65px)}.contact-copy>p{font-size:11px}.contact-symbol{font-size:48px}.footer-description p{font-size:14px}.footer-description>span{font-size:9px}.footer-main{grid-template-columns:1.4fr 1fr .5fr;gap:30px}.footer-bottom{font-size:8px}.footer-bottom>span:nth-child(2){display:none}.work-index-grid{gap:18px}.work-index-grid h3{font-size:23px}}

/* Mobile is a separate composition. */
@media(max-width:560px){:root{--gutter:24px}.hero{min-height:830px;height:100svh;max-height:1000px}.hero-picture img{object-position:73% center}.hero-shade{background:linear-gradient(90deg,rgba(5,10,16,.51),rgba(5,10,16,.21)),linear-gradient(0deg,rgba(5,10,16,.92) 0%,rgba(5,10,16,.12) 48%,rgba(5,10,16,.54) 100%)}.hero-content{padding-top:150px}.hero-eyebrow{font-size:8px;letter-spacing:.13em;gap:10px;margin-bottom:32px}.blue-dot{width:5px;height:5px;margin-top:4px}.hero h1{font-size:clamp(64px,19.2vw,104px);line-height:.91;letter-spacing:-.025em}.hero h1>em{line-height:1}.hero-intro{margin-top:31px;max-width:310px}.hero-intro>p{font-size:12px;line-height:1.85;max-width:280px}.hero-actions{gap:22px;flex-wrap:wrap;row-gap:14px;margin-top:25px}.hero-actions .button{font-size:10px;padding:14px 18px;gap:19px;min-height:48px}.hero-actions .text-link{font-size:10px;gap:12px}.hero-actions .text-link>span:last-child{font-size:17px}.hero-bottom{bottom:27px}.hero-bottom>p{font-size:8px;line-height:1.7}.scroll-cue{font-size:8px;gap:12px}.scroll-cue>span{font-size:20px}.section-space{padding-block:76px}.eyebrow{font-size:8px;letter-spacing:.14em}.section-label{margin-bottom:23px;gap:8px}h2{font-size:44px;line-height:1.05}.section-head{display:block;margin-bottom:36px}.section-aside{display:none}.section-head h2{font-size:clamp(40px,10.7vw,58px)}.casa-stage{aspect-ratio:1.02}.stage-note{left:6%;top:6%;font-size:11px}.stage-note>span{font-size:6px;margin-top:4px}.casa-desktop{width:100%;left:-13%;top:26%}.casa-mobile{width:32%;right:5%;top:35%}.stage-bottom{bottom:7%;left:6%;font-size:7px;max-width:48%;line-height:1.6}.project-open{opacity:1;transform:none;bottom:6%;right:6%;font-size:8px;gap:12px;padding:10px 12px}.project-open>span{font-size:15px}.project-meta{padding-top:21px;gap:15px}.project-meta h3{font-size:35px}.project-meta h3 button span{font-size:21px;margin-left:8px}.project-meta>div>p:last-child{font-size:10px;max-width:225px;line-height:1.6}.project-scope{font-size:8px;padding-top:26px;max-width:98px}.project-number{font-size:7px;letter-spacing:.11em;margin-bottom:8px}.project-pair{display:block;margin-top:48px}.votivos-project{padding-top:47px}.reno-stage{aspect-ratio:1.15}.reno-desktop{top:24%;width:90%;left:-4%}.reno-mobile{top:31%;right:7%;width:27%}.votivos-stage{aspect-ratio:1.12}.votivos-desktop{width:90%;left:6%;top:24%}.votivos-detail{top:58%;width:81%;left:-8%}.project-pair .project-meta{display:flex}.project-pair .project-meta h3{font-size:35px}.project-pair .project-scope{text-align:right;padding-top:27px;max-width:110px;font-size:8px}.project-pair .project-scope br{display:block}.work-index{margin-top:44px}.work-index-toggle{padding:20px 0;gap:12px}.work-index-toggle>span:first-child{font-size:19px;max-width:150px;line-height:1.2}.work-index-toggle .text-link{font-size:9px;gap:15px}.work-index-grid{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.index-image{margin-bottom:15px}.work-index-grid h3{font-size:29px}.work-index-grid article>p:last-child{font-size:10px}.philosophy{padding-block:76px}.philosophy-grid{display:block}.philosophy-label{flex-direction:row;align-items:center;margin-bottom:39px}.philosophy-label .eyebrow br{display:none}.studio-mark{width:45px;height:45px;margin:0}.philosophy-copy h2{font-size:clamp(42px,11.2vw,60px);line-height:1.06}.philosophy-bottom{margin-top:30px;gap:23px}.philosophy-bottom p{font-size:11px;line-height:1.95}.small-rule{width:24px;margin-top:10px}.capabilities .section-head h2{font-size:clamp(42px,11.5vw,62px);max-width:330px}.capabilities .section-head{margin-bottom:35px}.capability summary{grid-template-columns:17px minmax(0,1fr) 29px;column-gap:14px;row-gap:8px;padding:26px 0;min-height:140px}.capability-number{font-size:7px;padding-top:10px}.capability h3{font-size:29px;line-height:1.1}.capability summary>p{font-size:10px;line-height:1.8}.capability-icon{width:29px;height:29px;font-size:18px;align-self:start;margin-top:4px;grid-row:1}.capability-detail{display:block;padding:0 8px 29px 31px}.capability-detail>p{font-size:11px}.capability-detail ul{margin:18px 0;font-size:10px}.capability-detail .text-link{font-size:10px;gap:16px}.studio{min-height:680px}.studio-picture img{object-position:67% center}.studio-shade{background:linear-gradient(90deg,rgba(6,12,20,.56),rgba(6,12,20,.22)),linear-gradient(0deg,rgba(6,12,20,.8),transparent 75%)}.studio-content{padding-block:55px 30px}.studio h2{font-size:clamp(49px,13.5vw,74px);line-height:1.01;margin-top:55px}.studio h2>em>br{display:none}.studio h2>em{display:block;max-width:370px}.studio-bottom{display:block;margin-top:30px}.studio-bottom p{font-size:11px;max-width:280px}.studio-bottom .text-link{margin-top:20px;font-size:10px}.studio-location{margin-top:65px;font-size:7px}.contact-top{margin-bottom:30px;gap:15px}.contact-top .eyebrow{max-width:215px;font-size:8px}.contact-symbol{font-size:46px}.contact-grid{display:block}.contact h2{font-size:clamp(48px,13.2vw,70px);line-height:1.05}.contact-copy{padding-top:28px;max-width:300px}.contact-copy>p{font-size:12px;line-height:1.9;margin-bottom:14px}.contact-copy .button{margin-top:10px;font-size:11px}.email-link{font-size:11px}.email-note{font-size:9px}.site-footer{padding-top:45px}.footer-main{grid-template-columns:1fr 1fr;gap:35px 20px;padding-bottom:35px}.footer-logo{grid-column:1/-1;max-width:340px;width:100%}.footer-description p{font-size:15px}.footer-description>span{font-size:9px;margin-top:14px}.footer-main nav{justify-self:end;gap:14px;font-size:10px;padding-right:5px}.footer-bottom{font-size:8px;padding:22px 0;gap:10px}.project-dialog{width:100%;max-height:100svh;height:100svh;padding:0 20px 28px;margin:0;border:0}.dialog-top{padding:12px 0}.dialog-intro{display:block;padding:27px 0}.dialog-intro h2{font-size:46px}.dialog-intro>p{margin-top:18px;font-size:11px}.gallery-toolbar{margin-bottom:12px}.gallery-filters button{font-size:9px;padding:10px 14px}#gallery-count{font-size:9px}.gallery-stage{min-height:150px}.gallery-stage img{max-height:65svh}.gallery-stage.mobile{padding:20px}.gallery-stage.mobile img{height:56svh}.gallery figcaption{gap:10px}#gallery-caption{font-size:9px}.gallery-arrow{min-width:40px;min-height:40px;font-size:20px}.dialog-details{grid-template-columns:1fr;gap:25px}.dialog-details ul{font-size:10px}.dialog-details .text-link{font-size:10px}}
@media(max-width:360px){:root{--gutter:20px}.hero h1{font-size:19vw}.hero-actions{gap:16px}.hero-actions .button{padding-inline:14px;gap:14px}.hero-actions .text-link{font-size:9px;gap:9px}.hero{min-height:800px}.hero-content{padding-top:140px}.project-scope{display:none}.project-pair .project-meta h3{font-size:32px}.capability h3{font-size:27px}.contact h2{font-size:13vw}.footer-bottom{font-size:7px}}

/* Consistent, content-sized primary pills at every viewport width. */
.button.button-light,
.hero-actions .button.button-light,
.header-cta {
  width: fit-content;
  justify-content: center;
  gap: 22px;
  padding-inline: 26px;
}
.button.button-light > .inline-arrow-label {
  display: inline-flex;
  align-items: center;
  gap: 22px;
}

/* Screenshot inspection and a compact, accessible dismissal control. */
body.scroll-locked { position: fixed; top: var(--locked-scroll); left: 0; right: 0; width: 100%; }
.project-dialog .dialog-close { width: 44px; height: 44px; min-height: 44px; padding: 0; display: grid; place-items: center; border: 0; background: transparent; }
.dialog-close:hover { color: var(--steel); }
.gallery-toolbar { flex-wrap: wrap; }
.gallery-zoom { margin-left: auto; padding: 10px 6px; min-height: 44px; font-size: 11px; }
.gallery-stage { touch-action: pan-y pinch-zoom; }
.gallery-stage img { cursor: zoom-in; }
.gallery-stage.is-zoomed { display: block; max-height: 65svh; overflow: auto; padding: 0; touch-action: pan-x pan-y pinch-zoom; overscroll-behavior: contain; }
.gallery-stage.is-zoomed img { width: var(--zoom-width); height: auto; max-width: none; max-height: none; margin: 0; border-radius: 0; cursor: zoom-out; }
.gallery-image-help { margin-top: 14px; color: var(--steel); font-size: 10px; line-height: 1.6; }
.gallery-image-help a { text-decoration: underline; text-underline-offset: 4px; }
