.portfolio-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.portfolio-card img{width:100%;height:360px;object-fit:cover;display:block;margin-bottom:24px}.portfolio-card h2{font-size:35px;margin:15px 0}.case-content{display:grid;grid-template-columns:1fr 1fr;gap:50px}.case-content>img{grid-column:1/-1;width:100%;height:auto;max-height:800px;object-fit:cover}.case-content h2{font-size:45px;margin:20px 0}.case-content p{white-space:pre-line}.case-content>.button{justify-self:start}@media(max-width:600px){.portfolio-grid,.case-content{grid-template-columns:1fr}.portfolio-card img{height:300px}.case-content h2{font-size:35px}}
:root{--paper:#f2efe8;--ink:#292d28;--muted:#686c61;--line:#cfcfc1;--accent:#8a4e2c;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif;--gutter:clamp(24px,5.4vw,104px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 var(--sans);overflow-x:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:#bda681;color:#242a24}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;letter-spacing:-.055em}em{font-family:var(--serif);font-weight:400;letter-spacing:-.05em}p{color:var(--muted)}small{font-size:11px}svg{display:block;width:100%;height:100%}.preview-bar{text-align:center;font-size:9px;letter-spacing:.16em;padding:6px 12px;background:#deded2;color:#565b4e}.header{height:104px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.brand{font-family:var(--display);font-size:35px;letter-spacing:.04em;font-weight:800;line-height:1;display:inline-flex;flex-direction:column;gap:9px}.brand span{font-family:var(--sans);font-size:8px;letter-spacing:.42em;font-weight:500}.header nav{display:flex;gap:34px;font-size:12px}.header nav a:hover{color:var(--accent)}.header-cta,.text-button{border:0;background:none;color:inherit;padding:8px 0}.header-cta{font-size:12px}.header-cta span{margin-left:25px}.menu-toggle{display:none}.hero{padding:44px var(--gutter) 0}.hero-top{display:flex;justify-content:space-between;align-items:start}.eyebrow{font:500 10px/1.6 var(--sans);letter-spacing:.16em;color:var(--ink)}.edition{font-size:8px;letter-spacing:.14em;line-height:1.8}.hero-title{font-size:clamp(55px,7.2vw,118px);margin:40px 0 28px;line-height:1.04;max-width:1150px}.hero-title em{color:#777c65}.hero-bottom{display:flex;align-items:center;gap:48px;margin-bottom:45px}.hero-bottom p{font-size:12px;line-height:1.7;max-width:310px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:34px;padding:18px 24px;border:1px solid var(--ink);background:var(--ink);color:#fffef8;font-size:12px;line-height:1.4;border-radius:0;transition:background .25s,transform .25s}.button:hover{background:#4e5747;transform:translateY(-2px)}.button span{font-size:18px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.scroll-link{margin-left:auto;font-size:10px;display:flex;gap:24px;align-items:center}.scroll-link span{font-size:22px}.hero-stage{position:relative;background:#b8b19f;overflow:hidden;height:clamp(320px,45vw,680px)}.hero-stage>.scene{height:100%;transform:scale(1.12);transition:transform .2s linear}.scene{position:relative;overflow:hidden;background:#b4aa98;isolation:isolate}.scene svg{object-fit:cover;min-height:100%}.scene-label,.scene-coordinate{position:absolute;z-index:2;font-size:8px;letter-spacing:.12em;color:#fff;background:#353c31bd;padding:7px 11px;bottom:20px;left:20px}.scene-coordinate{left:auto;right:20px;background:none}.stage-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;background:#242b24;color:#eee9da;font-size:8px;letter-spacing:.14em;padding:12px 20px}.hero-stage .scene-label{bottom:50px}.floating-note{position:absolute;right:7%;top:18%;background:#f6f0e7dd;padding:22px 30px;font:italic 24px/1.2 var(--serif);backdrop-filter:blur(12px)}.dot{width:5px;height:5px;display:inline-block;background:var(--accent);border-radius:50%;margin-right:10px;vertical-align:top}.blueprint{opacity:.05;transition:opacity .5s}.hero-stage:hover .blueprint{opacity:.45}.scene-lights{animation:light-in 2s ease both}.section{padding:110px var(--gutter)}.manifesto{border-bottom:1px solid var(--line)}.manifesto h2{font-size:clamp(44px,5.3vw,82px);margin:35px 0 50px;max-width:1000px}.manifesto h2 em{color:#7b8069}.manifesto-bottom{display:flex;justify-content:space-between;align-items:center}.manifesto-bottom>p{max-width:460px;font-size:14px}.seal{display:flex;gap:20px;align-items:center;font:italic 65px var(--serif)}.seal span{font:10px/1.8 var(--sans);letter-spacing:.12em}.section-heading{display:grid;grid-template-columns:1fr 1.6fr 1fr;gap:32px;align-items:start;margin-bottom:65px}.section-heading h2{font-size:clamp(35px,4vw,62px)}.section-heading>p:last-child:not(:first-child){font-size:12px;align-self:end}.service-row{display:flex;align-items:center;gap:30px;padding:32px 0;border-top:1px solid var(--line);transition:padding .35s,color .25s}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row:hover{padding-left:15px;color:var(--accent)}.index{font-size:10px;align-self:start;padding-top:7px;color:var(--muted);width:45px}.service-row h3{font-size:clamp(24px,3.4vw,48px)}.service-row p{font-size:11px;margin-top:12px}.service-word{margin-left:auto;font:italic 21px var(--serif);color:#7d806c}.service-row>span:last-child{margin-left:60px;font-size:32px}.process{background:#282f28;color:#f4f0e7}.process .eyebrow{color:#afb49b}.process h2 em{color:#b1ba97}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.step-num{font:italic 40px var(--serif);color:#c8ad8d}.step-line{height:1px;background:#5a6355;margin:24px 0 30px;position:relative}.step-line:before{content:'';width:5px;height:5px;border-radius:50%;position:absolute;top:-2px;left:0;background:#c8ad8d}.process-step h3{font-size:30px;margin-bottom:30px}.process-step strong{font-size:12px;font-weight:500}.process-step p{color:#b0b6a7;font-size:12px;margin-top:12px}.process-note{margin-top:50px;padding-top:20px;border-top:1px solid #465042;font-size:10px;color:#b0b6a7}.detail-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center}.detail-copy h2{font-size:clamp(46px,5.4vw,80px);margin:30px 0}.detail-copy>p{font-size:13px;margin-bottom:22px;max-width:360px}.underlined{display:inline-flex;justify-content:space-between;gap:30px;border-bottom:1px solid var(--ink);padding:12px 0;font-size:12px}.material-study{height:530px;background:#d9d3c5;position:relative;overflow:hidden}.slab{position:absolute;width:65%;height:90%;transform:rotate(23deg);box-shadow:10px 20px 35px #3e352746}.slab-one{background:repeating-linear-gradient(91deg,#6b5947 0 6px,#ad8c6b 7px 15px);left:-30%;top:0}.slab-two{background:linear-gradient(23deg,transparent 43%,#8b837422 44%,transparent 45%),linear-gradient(81deg,transparent 52%,#82756122 53%,transparent 55%),#e5decd;left:19%;top:-10%;transform:rotate(23deg)}.slab-three{background:#8f9182;left:72%;top:3%;transform:rotate(23deg)}.material-rule{position:absolute;top:22px;left:20px;font-size:8px;letter-spacing:.15em}.material-study>p{position:absolute;bottom:0;left:0;right:0;background:#eee9dfdd;padding:22px;color:var(--ink);font:italic 25px var(--serif)}.material-study small{font:9px var(--sans)}.transformation{border-top:1px solid var(--line)}.compare{height:500px;position:relative;overflow:hidden;background:#c4b7a3;--split:48%}.compare-base{height:100%}.compare-base .scene{height:100%}.compare-before{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0);background:#2b322d}.wireframe{height:100%;padding:30px;color:#d2c2a8;position:relative;background:linear-gradient(#9b9e8e15 1px,transparent 1px),linear-gradient(90deg,#9b9e8e15 1px,transparent 1px);background-size:35px 35px}.wireframe>span{font-size:9px;letter-spacing:.15em}.wireframe>p{position:absolute;bottom:30px;color:#bec0af;font-size:11px}.wire-room{position:absolute;border:1px solid #b6a789;inset:18% 15% 18%;transform:perspective(500px) rotateY(-10deg)}.wire-room:after{content:'';position:absolute;border:1px solid #b6a78977;inset:12%;transform:translate(-20%,10%)}.compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;z-index:3}.compare:focus-within{outline:2px solid var(--accent);outline-offset:5px}.compare-handle{position:absolute;left:var(--split);top:50%;transform:translate(-50%,-50%);background:var(--paper);width:48px;height:48px;border-radius:50%;text-align:center;line-height:48px;font-size:24px;pointer-events:none}.compare-handle:after{content:'';position:absolute;left:23px;height:1000px;top:-500px;width:1px;background:#eee9df;z-index:-1}.compare-after-label{position:absolute;top:30px;right:30px;color:white;font-size:9px;letter-spacing:.12em}.caption{font-size:9px;letter-spacing:.08em;line-height:1.8;margin-top:20px}.region{position:relative;background:#dedfd1;display:grid;grid-template-columns:1fr 1.3fr;gap:40px;overflow:hidden}.region>.eyebrow{grid-column:1/-1}.region h2{font-size:clamp(60px,8vw,120px);z-index:1}.region>div{max-width:330px;align-self:end;z-index:1}.region .button{margin-top:28px}.region-symbol{font-size:430px;line-height:1;position:absolute;color:#ced0bf;right:0;top:0;pointer-events:none}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:30px}.faq>.eyebrow{grid-column:1/-1}.faq h2{font-size:40px}.faq details{padding:20px 0;border-top:1px solid var(--line)}.faq summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none;font-size:13px}.faq summary::-webkit-details-marker{display:none}.faq details p{font-size:13px;margin-top:20px;max-width:500px}.faq details[open] summary span{transform:rotate(45deg)}footer{background:#212821;color:#eae9de;padding:70px var(--gutter) 25px}.footer-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #4b5347;padding-bottom:50px}.footer-top p{font:italic 42px/1.1 var(--serif);color:inherit}.footer-top .button{background:#e7e7d8;color:#252c24}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px;padding:55px 0}.footer-grid small{display:block;font-size:8px;letter-spacing:.14em;color:#b0b5a6;margin-bottom:15px}.footer-grid a:not(.brand),.footer-grid p,.footer-grid button{display:block;font-size:11px;margin-bottom:6px;color:#e2e3d6;text-align:left}.footer-bottom{border-top:1px solid #4b5347;padding-top:20px;display:flex;justify-content:space-between;color:#a4ac9c;font-size:9px}.page-hero{padding-top:85px;padding-bottom:75px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(48px,6.5vw,100px);margin:30px 0}.page-hero h1 em{color:#7b8069}.page-hero>p:not(.eyebrow){margin-bottom:30px}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:30px}.page-intro p{max-width:430px}.service-content{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.service-art .scene{height:540px}.service-content h2{font-size:45px;margin:25px 0}.service-content p{font-size:14px}.service-content ol{list-style:decimal-leading-zero;padding-left:25px;margin-top:30px}.service-content li{padding:12px 0 12px 10px;border-bottom:1px solid var(--line);font-size:13px}.related{display:flex;gap:30px;flex-wrap:wrap}.related .eyebrow{width:100%}.project-study{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.project-study>.scene{height:600px}.project-study h2{font-size:60px;margin:25px 0}.project-study p{margin-bottom:25px}.legal{max-width:1000px}.legal h1{font-size:70px;margin:35px 0 60px}.legal h2{font-size:26px;margin:35px 0 15px}.notice{border-left:2px solid var(--accent);padding-left:20px}.skip{position:absolute;top:-100px;left:20px;padding:10px;background:white;z-index:100}.skip:focus{top:20px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.honeypot{position:absolute!important;left:-9999px}dialog{border:0;padding:0;background:#f2efe8;max-height:92vh;width:min(640px,94vw);color:var(--ink);box-shadow:0 25px 100px #0005}dialog::backdrop{background:#182019aa;backdrop-filter:blur(6px)}#budget-form{padding:42px;position:relative}.dialog-close{position:absolute;right:20px;top:12px;background:none;border:0;font-size:30px;color:var(--ink)}dialog h2{font-size:46px;margin:20px 0}fieldset{border:0;padding:0;margin:0;min-width:0}.form-progress{margin:30px 0;font-size:9px;letter-spacing:.12em}.form-progress>div{height:2px;background:var(--line);margin-top:12px}.form-progress i{display:block;width:50%;height:2px;background:var(--accent);transition:width .3s}label{display:block;font-size:11px;margin:0 0 20px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #aaa99b;background:transparent;border-radius:0;color:var(--ink);padding:12px 0;min-width:0;outline-offset:3px}input::placeholder,textarea::placeholder{color:#838577;font-size:12px}select{font-size:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}.check{display:flex;gap:12px;align-items:start;font-size:11px;line-height:1.6}.check input{width:16px;height:16px;margin:4px 0;flex-shrink:0;accent-color:var(--ink)}.check a{text-decoration:underline}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:20px}#form-error{color:#a43721;font-size:12px;margin-top:15px}#budget-success{text-align:center;padding:20px 0}#budget-success h3{font-size:34px;margin:20px 0}.success-icon{font-size:40px;color:#727b5c}#budget-success .button{margin-top:25px}.cookie-banner{position:fixed;z-index:25;bottom:20px;left:20px;right:20px;max-width:1100px;margin:auto;background:#f7f5ed;border:1px solid #c7c9b8;box-shadow:0 10px 50px #0002;padding:20px 25px;display:flex;align-items:center;gap:20px}.cookie-banner[hidden]{display:none}.cookie-banner>div{flex:1}.cookie-banner strong{font-size:12px}.cookie-banner p{font-size:11px}.cookie-banner p a{text-decoration:underline}.cookie-banner .button{flex-shrink:0;font-size:10px;padding:13px}.js .reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.js .reveal.visible{opacity:1;transform:none}@keyframes light-in{from{opacity:0}to{opacity:1}}
@media(min-width:1500px){.hero{max-width:1800px;margin:auto}.section{padding-top:140px;padding-bottom:140px}.hero-stage{height:660px}}
@media(max-width:900px){.header nav{gap:18px}.hero-title{font-size:8vw}.hero-bottom{gap:25px}.section-heading{grid-template-columns:1fr 1.6fr}.section-heading>p:last-child:not(:first-child){grid-column:2}.process-grid{grid-template-columns:repeat(2,1fr);gap:45px}.detail-section{gap:40px}.material-study{height:450px}.footer-grid{grid-template-columns:1fr 1fr}.service-content,.project-study{gap:35px}.service-content h2{font-size:34px}.service-art .scene{height:450px}.cookie-banner{flex-wrap:wrap}.cookie-banner>div{flex-basis:100%}}
@media(max-width:600px){.preview-bar{font-size:7px;letter-spacing:.08em}.header{height:82px;gap:15px}.brand{font-size:29px}.brand span{font-size:6px}.header-cta{font-size:10px;margin-left:auto}.header-cta span{margin-left:7px}.menu-toggle{display:flex;gap:9px;align-items:center;background:none;border:0;font-size:11px;order:3;padding:10px 0}.header nav{display:none;position:absolute;top:82px;left:0;right:0;padding:30px var(--gutter);background:var(--paper);box-shadow:0 15px 20px #0001;flex-direction:column;gap:22px}.header nav.open{display:flex}.hero{padding-top:27px}.hero-top .edition{display:none}.eyebrow{font-size:8px;letter-spacing:.13em}.hero-title{font-size:clamp(42px,9.3vw,60px);margin:32px 0 24px;letter-spacing:-.06em}.hero-bottom{display:grid;grid-template-columns:1fr;gap:22px;margin-bottom:30px}.hero-bottom p{font-size:12px}.hero-bottom .button{justify-self:start}.scroll-link{display:none}.hero-stage{height:350px;margin:0 calc(var(--gutter)*-1)}.hero-stage>.scene{transform:scale(1.2)}.hero-stage .scene svg{width:130%;max-width:none;margin-left:-15%}.floating-note{top:18%;right:6%;font-size:20px;padding:17px 20px}.scene-coordinate{display:none}.scene-label{font-size:6px;left:10px}.stage-caption{font-size:6px;padding:11px 12px}.stage-caption span:last-child{display:none}.section{padding:70px var(--gutter)}.manifesto h2{font-size:39px;margin:25px 0 35px}.manifesto-bottom{display:block}.seal{margin-bottom:25px}.manifesto-bottom>p{font-size:13px}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:38px;margin:22px 0}.section-heading>p:last-child:not(:first-child){font-size:12px}.service-row{gap:12px;padding:25px 0}.index{width:22px;padding-top:2px;font-size:8px}.service-row h3{font-size:24px;letter-spacing:-.04em}.service-row p{font-size:10px;max-width:230px}.service-word{display:none}.service-row>span:last-child{font-size:23px;margin-left:auto}.process-grid{gap:35px 24px}.step-num{font-size:32px}.step-line{margin:17px 0 23px}.process-step h3{font-size:23px;margin-bottom:20px}.process-step strong{font-size:10px}.process-step p{font-size:11px}.detail-section{display:block}.detail-copy h2{font-size:55px}.material-study{height:400px;margin-top:45px}.compare{height:360px}.compare-base .scene svg{width:150%;margin-left:-25%}.wireframe{padding:17px}.wireframe>span,.compare-after-label{font-size:7px}.compare-after-label{right:12px;top:17px}.caption{font-size:8px}.region{display:block}.region h2{font-size:75px;margin:25px 0}.region-symbol{font-size:320px;right:-80px;top:50px}.region>div{position:relative}.faq{display:block}.faq h2{font-size:34px;margin:25px 0 35px}footer{padding:50px var(--gutter) 20px}.footer-top{display:block}.footer-top p{font-size:34px;margin-bottom:25px}.footer-grid{gap:35px 20px}.footer-grid .brand{font-size:28px}.footer-grid>div:first-of-type p{font-size:10px}.footer-bottom{display:block;font-size:8px}.footer-bottom span{display:block;margin-bottom:8px}.page-hero{padding-top:55px}.page-hero h1{font-size:46px}.page-intro{display:block}.page-intro p{margin-bottom:25px}.page-hero>p{font-size:13px}.service-content,.project-study{display:block}.service-art{margin-bottom:35px}.service-art .scene{height:350px}.service-content h2{font-size:35px}.project-study>.scene{height:380px;margin-bottom:35px}.project-study h2{font-size:45px}.legal h1{font-size:48px}.legal h2{font-size:25px}#budget-form{padding:30px 24px}dialog h2{font-size:38px}.form-row{grid-template-columns:1fr;gap:0}.form-actions .button{padding:16px;font-size:11px;gap:15px}.cookie-banner{left:12px;right:12px;bottom:12px;padding:17px;gap:12px}.cookie-banner .button{flex:1;font-size:10px}.cookie-banner p{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-stage>.scene{transform:none!important}}
