@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--paper:#f3f1ec;--ink:#232722;--red:#e7392b;--line:#d7d7cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',sans-serif}em{font-style:normal;color:var(--red)}.skip{position:fixed;top:-100px;background:white;padding:16px;z-index:100}.skip:focus{top:10px}.progress{position:fixed;top:0;left:0;height:3px;background:var(--red);z-index:60;width:0}header{height:100px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:var(--paper);z-index:50;border-bottom:1px solid #d7d7cf80;transition:height .3s}header.compact{height:78px}.brand img{width:120px;height:auto}nav{display:flex;align-items:center;gap:36px;font-size:13px;font-weight:600}nav>a{position:relative}nav>a:not(.nav-contact):after{content:'';position:absolute;bottom:-7px;left:0;width:0;height:2px;background:var(--red);transition:width .3s}nav>a:hover:after{width:100%}.nav-contact{padding:16px 22px;background:var(--ink);color:white}.nav-contact span{margin-left:28px}.menu-toggle{display:none}.hero{position:relative;min-height:690px;height:calc(100svh - 100px);max-height:1000px;background:#424b3e;color:white;overflow:hidden}.hero-image{width:100%;height:112%;object-fit:cover;object-position:center 58%;position:absolute;inset:-6% 0 0;will-change:transform}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#1018109c,#0d140c22),linear-gradient(0deg,#101810b5,transparent 60%,#10181045)}.hero-top{position:absolute;top:36px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px}.hero-top i{display:inline-block;width:7px;height:7px;background:var(--red);border-radius:50%;margin-right:9px}.hero-content{position:absolute;left:7%;right:7%;top:24%}h1{font-size:clamp(58px,7.2vw,112px);line-height:1.06;font-weight:500;letter-spacing:-5px}h1 em{color:#fff;position:relative}h1 em:after{content:'';position:absolute;left:0;right:0;bottom:-8px;height:5px;background:var(--red);transform:rotate(-2deg)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:40px}.hero-bottom p{font-size:16px;line-height:1.7;color:#ffffffe0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:20px 24px;font-size:13px;font-weight:600;border:0;transition:background .3s,transform .3s}.button:hover{transform:translateY(-4px);background:var(--red);color:white}.button span{font-size:22px}.light{background:var(--paper);color:var(--ink)}.dark{background:var(--ink);color:white}.scroll-link{position:absolute;bottom:34px;left:4%;display:flex;gap:28px;align-items:center;font-size:10px;letter-spacing:1px}.scroll-link>span:last-child{border:1px solid #ffffff65;width:36px;height:46px;border-radius:25px;display:grid;place-items:center;font-size:20px}.hero-index{position:absolute;right:4%;bottom:45px;font-size:14px}.hero-index span{font-size:9px;letter-spacing:1.5px;margin-left:16px;color:#ffffffa0}.ticker{background:var(--red);overflow:hidden;padding:23px 0;color:var(--paper)}.ticker>div{display:flex;align-items:center;gap:45px;width:max-content;font-size:15px;letter-spacing:2px;font-weight:600;animation:marquee 35s linear infinite}.ticker span{font-size:30px;line-height:1}@keyframes marquee{to{transform:translateX(-50%)}}.section{padding:120px 7%}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.6px;display:flex;align-items:center;gap:10px;margin-bottom:32px}.dot{width:6px;height:6px;background:var(--red);border-radius:50%;display:inline-block}h2{font-size:clamp(38px,4.2vw,67px);line-height:1.12;font-weight:500;letter-spacing:-2.5px}.intro{display:grid;grid-template-columns:1fr 3fr;gap:24px}.intro>.eyebrow{align-items:flex-start;padding-top:14px;white-space:nowrap}.intro>.eyebrow .dot{margin-top:3px}.intro h2{font-size:clamp(36px,3.6vw,58px)}.intro h2>span{color:#82877c}.intro-bottom{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;margin-top:60px}.experience strong{font-family:Manrope,sans-serif;font-size:105px;line-height:1;font-weight:500;letter-spacing:-7px}.experience strong span{color:var(--red);font-size:65px;vertical-align:top;letter-spacing:-4px}.experience p{font-size:13px;line-height:1.6;margin-top:15px;color:#60675b}.intro-copy p{font-size:15px;line-height:1.75;color:#62685f;margin-bottom:16px}.text-link{font-size:12px;font-weight:600;display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:14px 0}.text-link span{font-size:19px}.services{background:#e9e8e1}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}.section-head>p{font-size:14px;line-height:1.7;color:#60665c;max-width:355px}.service-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:8%}.service-image{position:relative;min-height:470px;overflow:hidden}.service-image img{height:100%;width:100%;object-fit:cover;position:absolute;transition:opacity .2s}.image-caption{position:absolute;bottom:20px;left:20px;font-size:9px;letter-spacing:1.3px;color:white;background:#232722a8;padding:10px}.service-list details{border-top:1px solid #bcbfb4}.service-list details:last-child{border-bottom:1px solid #bcbfb4}.service-list summary{list-style:none;display:flex;align-items:center;gap:20px;padding:27px 0;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span{font-size:10px;color:#82877c;align-self:start;padding-top:6px}.service-list h3{font-size:clamp(18px,1.7vw,26px);font-weight:500;letter-spacing:-.7px;flex:1}.service-list b{font-weight:400;font-size:25px;transition:transform .3s}.service-list details[open] b{transform:rotate(45deg);color:var(--red)}.service-list details[open] h3{color:var(--red)}.service-body{padding:0 32px 28px}.service-body p{font-size:14px;line-height:1.8;color:#61675c;max-width:410px}.service-body a{display:inline-block;margin-top:20px;font-size:12px;font-weight:600}.filter{display:flex;gap:5px;flex-wrap:wrap}.filter button{border:1px solid var(--line);padding:12px 15px;border-radius:30px;background:transparent;font-size:11px;transition:.25s}.filter button.active,.filter button:hover{background:var(--ink);color:white;border-color:var(--ink)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 30px}.project-card{background:none;border:0;text-align:left;padding:0;color:inherit}.project-card[hidden]{display:none}.project-photo{position:relative;height:390px;overflow:hidden;background:#ddd}.project-card:nth-child(even){padding-top:60px}.project-card img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.project-card:hover img{transform:scale(1.05)}.round-arrow{position:absolute;bottom:20px;right:20px;border-radius:50%;background:var(--paper);width:48px;height:48px;display:grid;place-items:center;font-size:25px;transition:.3s}.project-card:hover .round-arrow{background:var(--red);color:white;transform:rotate(45deg)}.project-meta{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.project-meta h3{font-size:18px;font-weight:500;letter-spacing:-.5px}.project-meta>span{font-size:8px;letter-spacing:1px;color:#777d70}.gallery-note{font-size:11px;color:#777d70;margin-top:38px}.statement{position:relative;overflow:hidden;background:var(--red);padding:90px 7%;color:var(--paper)}.statement-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff0e 1px,transparent 1px),linear-gradient(90deg,#ffffff0e 1px,transparent 1px);background-size:90px 90px;pointer-events:none}.statement>p{position:relative;font-family:Manrope,sans-serif;font-size:clamp(60px,7.5vw,110px);line-height:1.05;letter-spacing:-5px;margin-bottom:42px}.statement em{color:#f5b0a4}.statement .button{position:relative}.statement-star{position:absolute;right:10%;top:25%;font-size:320px;line-height:1;color:#f0a18e;animation:rotate 50s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.contact h2{margin-bottom:30px}.contact-info>p{font-size:14px;line-height:1.8;color:#72786d;margin-bottom:36px}.phone{font-family:Manrope,sans-serif;display:block;font-size:32px;letter-spacing:-1px;margin-bottom:10px}.phone span{color:var(--red);margin-left:20px}.email{font-size:14px;border-bottom:1px solid #bbb;padding-bottom:5px}address{font-style:normal;font-size:12px;line-height:1.8;color:#72786d;margin-top:40px}form{padding-top:15px}form h3{font-size:23px;letter-spacing:-.5px;font-weight:500;margin-bottom:32px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;font-size:11px;font-weight:600;margin-bottom:26px}input,select,textarea{border:0;border-bottom:1px solid #bfc2b7;border-radius:0;background:transparent;width:100%;padding:13px 0;color:var(--ink);font-size:13px;outline:none;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--red);box-shadow:0 1px var(--red)}form .button{width:100%}.form-note{font-size:10px;line-height:1.7;color:#747a6f;margin-top:14px}footer{background:#232722;color:var(--paper);padding:50px 7% 24px}.footer-top{display:flex;align-items:center;gap:50px;padding-bottom:50px}.footer-top img{width:120px;height:auto}.footer-top p{font-size:22px;line-height:1.3;letter-spacing:-.6px}.back-top{margin-left:auto;font-size:12px}.footer-bottom{border-top:1px solid #ffffff25;padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#adb0a8}.footer-bottom>span:nth-child(2){letter-spacing:1px}.reveal{transition:opacity .8s,transform .8s}.js .reveal:not(.visible){opacity:0;transform:translateY(28px)}dialog{border:0;background:#181c17;color:white;padding:20px;max-width:min(1000px,92vw);width:1000px;max-height:92svh}dialog::backdrop{background:#10150fed;backdrop-filter:blur(7px)}dialog>img{max-height:72svh;max-width:100%;margin:auto;object-fit:contain}.close-dialog{position:absolute;right:28px;top:28px;border:0;border-radius:50%;width:40px;height:40px;background:var(--paper);font-size:28px}.dialog-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:18px;font-size:15px}.dialog-bottom button{background:transparent;border:1px solid #ffffff45;color:white;font-size:25px;width:45px;height:40px}
@media(min-width:1600px){.section{padding-left:max(7%,calc((100vw - 1380px)/2));padding-right:max(7%,calc((100vw - 1380px)/2))}}@media(max-width:1050px){nav{gap:20px}.intro{grid-template-columns:1fr}.intro-bottom{gap:35px}.project-meta{display:block}.project-meta>span{display:block;margin-top:9px}.section-head{align-items:start}.projects .section-head{display:block}.filter{margin-top:28px}.contact{gap:6%}.phone{font-size:27px}.statement-star{font-size:230px;right:6%}.project-photo{height:320px}}@media(max-width:700px){header,header.compact{height:78px;padding:0 6%}.brand img{width:99px}.menu-toggle{display:flex;flex-direction:column;gap:7px;background:transparent;border:0;padding:14px 0 14px 16px}.menu-toggle span{width:27px;height:2px;background:var(--ink);transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:30px 6%;flex-direction:column;align-items:stretch;gap:28px;font-size:18px;border-bottom:1px solid var(--line)}nav.open{display:flex}.nav-contact{font-size:14px}.hero{min-height:650px;height:calc(95svh - 78px);max-height:850px}.hero-top{left:6%;top:25px;font-size:8px}.hero-top>span:last-child{display:none}.hero-content{top:23%;left:6%;right:6%}h1{font-size:clamp(42px,10.7vw,72px);letter-spacing:-2.5px;line-height:1.12}.hero-bottom{display:block;margin-top:30px}.hero-bottom p{font-size:14px;line-height:1.75}.hero-bottom .button{margin-top:28px;padding:16px 20px;font-size:12px}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#101810a9,#10181035),linear-gradient(0deg,#101810b0,transparent)}.scroll-link{left:6%;font-size:8px;gap:15px}.hero-index{right:6%;bottom:48px}.hero-index span{display:none}.ticker{padding:18px 0}.ticker>div{font-size:11px;gap:24px}.ticker span{font-size:22px}.section{padding:75px 6%}h2{font-size:40px;letter-spacing:-1.8px}.intro h2{font-size:34px}.eyebrow{font-size:8px;margin-bottom:25px;letter-spacing:1.4px}.intro{gap:0}.intro-bottom{grid-template-columns:1fr;margin-top:38px;gap:32px}.experience{display:flex;align-items:center;gap:30px}.experience strong{font-size:80px}.experience strong span{font-size:48px}.experience p{margin-top:0;font-size:12px}.intro-copy p{font-size:14px}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:24px;font-size:13px}.service-layout{grid-template-columns:1fr;gap:30px}.service-image{min-height:290px}.service-list summary{padding:23px 0;gap:15px}.service-list h3{font-size:19px}.service-body{padding-left:27px}.project-grid{gap:34px;grid-template-columns:1fr}.project-card:nth-child(even){padding-top:0}.project-photo{height:340px}.project-meta{display:flex}.project-meta h3{font-size:16px}.project-meta>span{font-size:7px;margin-top:0}.filter button{font-size:10px;padding:10px 13px}.statement{padding:70px 6%}.statement>p{font-size:57px;letter-spacing:-3px}.statement-star{font-size:150px;right:-45px;top:36%;opacity:.5}.statement .eyebrow{position:relative;z-index:1}.statement .button{z-index:1;font-size:12px}.contact{grid-template-columns:1fr;gap:55px}.contact h2{font-size:43px}.phone{font-size:30px}.contact address{margin-top:30px}form{border-top:1px solid var(--line);padding-top:35px}.footer-top{gap:25px;flex-wrap:wrap;padding-bottom:35px}.footer-top img{width:100px}.footer-top p{font-size:19px}.back-top{margin-left:0;width:100%;margin-top:15px}.footer-bottom{flex-direction:column;gap:15px}footer{padding:40px 6% 25px}.dialog-bottom{font-size:12px;gap:12px}.dialog-bottom button{flex-shrink:0}dialog{padding:12px}.close-dialog{top:18px;right:18px}.form-row{gap:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal:not(.visible){opacity:1;transform:none}.hero-image{transform:none!important}}
/* EDITION 02 — MATERIAL / FORM / PRECISION */
:root{--paper:#eeede8;--ink:#262722;--red:#b94432;--line:#cecec6}body{background:var(--paper)}header{position:absolute;top:0;left:0;right:0;height:108px;background:transparent;border:0;padding:0 4.5%;z-index:50}header.compact{position:fixed;height:76px;background:#eeede8f5;backdrop-filter:blur(14px);border-bottom:1px solid var(--line);animation:header-in .35s both}@keyframes header-in{from{transform:translateY(-100%)}to{transform:translateY(0)}}.brand img{width:98px;mix-blend-mode:multiply}nav{gap:38px;font-size:11px;font-weight:500}.nav-contact{padding:13px 0 13px 25px;background:transparent;color:var(--ink);border-left:1px solid #26272235}.nav-contact span{display:inline-grid;place-items:center;border:1px solid #26272260;border-radius:50%;width:32px;height:32px;margin-left:22px;font-size:17px;transition:.3s}.nav-contact:hover span{background:var(--ink);color:var(--paper);transform:rotate(45deg)}
.hero{height:100svh;min-height:760px;max-height:1200px;background:#e8e5de;color:var(--ink);isolation:isolate;--mx:0px;--my:0px;--scroll:0px}.hero-art{position:absolute;inset:0;overflow:hidden;z-index:-2;animation:art-enter 1.6s cubic-bezier(.2,.65,.2,1) both}.hero-image{inset:0;position:absolute;height:100%;width:100%;max-width:none;object-fit:cover;object-position:center;transform:translate3d(var(--mx),calc(var(--my) + var(--scroll)),0) scale(1.035);transition:transform .7s cubic-bezier(.15,.7,.3,1);will-change:transform}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#eeede829,transparent 52%);pointer-events:none}.hero-eyebrow{position:absolute;top:19%;left:5%;font-size:9px;letter-spacing:1.8px;display:flex;align-items:center;gap:12px;animation:fade-in 1s .2s both}.status-dot{width:5px;height:5px;background:var(--red);border-radius:50%}.hero-content{top:27%;left:4.5%;right:auto;width:54%;position:absolute}h1{font-family:'Manrope',sans-serif;font-size:clamp(80px,8.7vw,150px);line-height:.93;font-weight:500;letter-spacing:-.075em}.line{display:block;overflow:hidden;padding:0 0 .12em;margin-bottom:-.06em}.line>span{display:block;animation:type-enter 1.2s cubic-bezier(.16,1,.3,1) both}.line:nth-child(2)>span{animation-delay:.13s}.line:nth-child(3)>span{animation-delay:.26s}.hero-description{display:flex;align-items:start;gap:20px;margin-top:35px;animation:fade-in 1s .6s both}.fine-line{width:35px;height:1px;background:var(--ink);margin-top:8px}.hero-description p{font-size:12px;line-height:1.7;font-weight:450;color:#484940}.hero-cta{position:absolute;right:6%;bottom:18%;width:146px;height:146px;background:var(--ink);color:var(--paper);border-radius:50%;display:flex;flex-direction:column;justify-content:center;padding:30px;font-size:12px;line-height:1.5;animation:fade-in 1s .8s both;transition:background .3s,transform .4s}.hero-cta:hover{background:var(--red);transform:rotate(-7deg)}.cta-arrow{font-size:28px;margin-top:8px;line-height:1}.hero-foot{position:absolute;left:4.5%;right:4.5%;bottom:30px;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1.3px;border-top:1px solid #26272230;padding-top:24px;animation:fade-in 1s .8s both}.hero-foot>a{display:flex;align-items:center;gap:14px}.scroll-mark{font-size:19px;animation:scroll-nudge 2.5s 2s infinite}.material-caption{position:absolute;right:3%;top:42%;font-size:7px;letter-spacing:1.7px;writing-mode:vertical-rl;color:#35372e;animation:fade-in 1s .8s both}.manifesto-strip{display:flex;justify-content:space-between;align-items:center;padding:28px 4.5%;border-bottom:1px solid var(--line);font-size:8px;letter-spacing:1.7px}.manifesto-strip span:first-child{font-weight:700}.section{padding:140px 6%}.intro{padding-top:155px;padding-bottom:155px;grid-template-columns:1fr 3fr;gap:4%}.eyebrow{font-size:8px;letter-spacing:1.5px;font-weight:500}.intro h2{font-size:clamp(40px,4.6vw,72px);letter-spacing:-.065em;line-height:1.13}.intro h2>span{color:#96988f}.intro-bottom{margin-top:70px;grid-template-columns:1fr 1.2fr;gap:50px}.intro-copy p{font-size:14px}.experience strong{font-size:120px;font-weight:400;letter-spacing:-8px}.experience strong span{font-size:56px;color:var(--ink);font-weight:400}.experience p{font-size:11px}.text-link{font-size:11px;padding-bottom:18px;font-weight:500}.services{background:#242722;color:var(--paper);padding-top:110px;padding-bottom:120px}.services .section-head>p{color:#a1a699;font-size:12px}.services .dot{background:#c4bdac}h2{font-size:clamp(40px,5vw,76px);letter-spacing:-.06em;font-weight:400;line-height:1.08}.service-layout{grid-template-columns:1fr 1.2fr;gap:9%}.service-image{min-height:480px}.service-image img{filter:saturate(.65)}.image-caption{background:none;bottom:12px;left:12px;font-size:7px}.service-list details,.service-list details:last-child{border-color:#52564c}.service-list summary{padding:30px 0;gap:25px}.service-list h3{font-size:clamp(19px,2vw,30px);font-weight:400;letter-spacing:-1px}.service-list b{font-size:22px;color:#89907e}.service-list details[open] h3{color:#eeede8}.service-list details[open] b{color:#eeede8}.service-list summary>span{color:#8c9382;font-size:8px}.service-body p{color:#adb2a5;font-size:12px;line-height:1.8}.service-body a{font-size:10px;font-weight:400;border-bottom:1px solid #5b6154;padding-bottom:8px}.section-head{margin-bottom:60px}.projects h2 em{color:#91958b}.filter{gap:18px}.filter button{border:0;border-bottom:1px solid transparent;border-radius:0;padding:10px 0;font-size:10px;color:#858a7b;background:none}.filter button.active,.filter button:hover{color:var(--ink);background:none;border-color:var(--ink)}.project-grid{gap:65px 4%;grid-template-columns:1.15fr 1fr}.project-photo{height:450px}.project-card:nth-child(even){padding-top:130px}.project-card:nth-child(even) .project-photo{height:350px}.project-card img{filter:saturate(.72);transition:filter .6s,transform 1s}.project-card:hover img{filter:saturate(1);transform:scale(1.04)}.project-meta{margin-top:20px;align-items:start}.project-meta h3{font-size:17px;letter-spacing:-.7px;font-weight:400}.project-meta>span{font-size:7px;letter-spacing:1px;padding-top:5px}.round-arrow{height:42px;width:42px;font-size:22px;background:var(--paper)}.gallery-note{font-size:9px;margin-top:50px}.statement{background:#dedfd6;color:var(--ink);padding:40px 6% 60px}.statement-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.6px;padding-bottom:30px;border-bottom:1px solid #b6bbae}.statement>p{font-size:clamp(65px,10.5vw,165px);font-weight:400;letter-spacing:-.075em;line-height:1.02;margin:75px 0}.statement>p em{font-family:Georgia,serif;font-style:italic;color:var(--ink);font-weight:400}.statement-bottom{display:flex;justify-content:space-between;align-items:end}.statement-bottom>p{font-size:12px;line-height:1.6}.statement .text-link{width:300px}.contact h2 em{font-family:Georgia,serif;font-style:italic;color:var(--ink)}.contact h2{font-size:clamp(40px,4.3vw,65px);letter-spacing:-.065em}.contact-info>p{font-size:12px;line-height:1.9}.phone{font-weight:400;font-size:30px}.phone span{color:var(--ink)}.email{font-size:12px}.contact form h3{font-weight:400;font-size:21px}.contact label{font-size:10px;font-weight:400}.contact input,.contact select,.contact textarea{font-size:12px}.button{font-size:11px;font-weight:400;padding:17px 22px}.button:hover{background:#484c40}.contact .button{background:var(--ink);color:var(--paper)}footer{background:var(--paper);color:var(--ink);padding-top:0}.footer-top{border-top:1px solid var(--line);padding-top:40px;gap:35px}.footer-top img{width:98px;mix-blend-mode:multiply}.footer-top p{font-size:19px;font-weight:400}.footer-bottom{border-color:var(--line);color:#757c6b;font-size:8px}.back-top{font-size:10px}.reveal{transition:opacity 1s,transform 1s}.js .reveal:not(.visible){transform:translateY(35px)}
@keyframes type-enter{from{transform:translateY(115%) rotate(3deg)}to{transform:translateY(0) rotate(0)}}@keyframes art-enter{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes fade-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes scroll-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(min-width:1600px){.hero-content{top:27%}.hero-description{margin-top:45px}.hero-description p{font-size:14px}.hero-cta{width:170px;height:170px;font-size:14px}.hero-eyebrow{font-size:10px}.section{padding-left:max(6%,calc((100vw - 1400px)/2));padding-right:max(6%,calc((100vw - 1400px)/2))}}
@media(max-width:1050px){.hero{min-height:720px}.hero-content{top:30%;width:58%}h1{font-size:11vw}.hero-eyebrow{top:21%}.hero-image{object-position:60%}.hero-cta{width:125px;height:125px;right:5%;bottom:17%;padding:25px}.hero-foot>span:nth-child(2){display:none}.intro{grid-template-columns:1fr;gap:15px}.intro h2{font-size:55px}.project-meta{display:block}.project-photo{height:380px}.project-card:nth-child(even) .project-photo{height:300px}.project-card:nth-child(even){padding-top:100px}.service-list h3{font-size:22px}.section{padding-top:100px;padding-bottom:100px}.contact{gap:7%}.statement{padding-top:35px;padding-bottom:45px}}
@media(max-width:700px){header,header.compact{height:80px;padding:0 6%}.brand img{width:86px}.menu-toggle{padding:12px 0 12px 12px}.menu-toggle span{width:24px;height:1px}nav{top:80px;background:var(--paper);padding:26px 6%;font-size:18px;gap:28px}.nav-contact{border-left:0;padding:15px 0;display:flex;align-items:center;justify-content:space-between}.nav-contact span{margin-left:0}.hero{min-height:800px;height:100svh;max-height:980px}.hero-art{inset:0}.hero-image{object-fit:cover;object-position:65% bottom;width:140%;height:64%;left:-40%;top:33%;transform:translate3d(var(--mx),var(--scroll),0) scale(1.035);mask-image:linear-gradient(transparent,black 20%);-webkit-mask-image:linear-gradient(transparent,black 20%)}.hero:after{background:linear-gradient(180deg,#e8e5de 0%,#e8e5de00 50%)}.hero-eyebrow{left:6%;top:135px;font-size:8px;letter-spacing:1.3px}.hero-content{left:5%;top:185px;width:90%}h1{font-size:clamp(73px,19vw,126px);letter-spacing:-.075em;line-height:.92}.line{padding-bottom:.12em}.hero-description{margin-top:28px;gap:14px}.hero-description p{font-size:10px;line-height:1.65}.fine-line{width:22px;margin-top:7px}.hero-cta{right:6%;bottom:105px;width:105px;height:105px;padding:23px;font-size:10px}.cta-arrow{font-size:23px;margin-top:5px}.hero-foot{left:6%;right:6%;bottom:24px;padding-top:20px;font-size:7px;letter-spacing:1px}.hero-coordinate{font-size:6px;letter-spacing:.4px}.hero-foot>a{gap:10px}.scroll-mark{font-size:16px}.material-caption{right:3%;top:61%;font-size:6px}.manifesto-strip{padding:24px 6%;font-size:7px;letter-spacing:1px}.manifesto-strip span:nth-child(2){display:none}.section{padding:80px 6%}.eyebrow{font-size:8px}.intro{gap:0}.intro h2{font-size:clamp(34px,8.7vw,49px)}.intro-bottom{margin-top:40px;grid-template-columns:1fr;gap:35px}.experience strong{font-size:90px;letter-spacing:-6px}.experience strong span{font-size:42px}.experience p{font-size:11px}.intro-copy p{font-size:13px}.services .section-head>p{margin-top:25px;font-size:12px}h2{font-size:48px;letter-spacing:-.065em}.section-head{margin-bottom:35px}.service-layout{grid-template-columns:1fr;gap:30px}.service-image{min-height:300px}.service-list summary{padding:24px 0;gap:18px}.service-list h3{font-size:21px}.service-body{padding-left:27px}.service-body p{font-size:12px}.project-grid{grid-template-columns:1fr;gap:38px}.project-photo,.project-card:nth-child(even) .project-photo{height:350px}.project-card:nth-child(even){padding-top:0}.project-meta{display:flex}.project-meta h3{font-size:16px}.project-meta>span{font-size:6px}.filter{gap:20px;margin-top:28px}.filter button{font-size:9px}.gallery-note{font-size:8px;margin-top:30px}.statement{padding:30px 6% 40px}.statement-top{font-size:6px;letter-spacing:.8px;padding-bottom:23px}.statement>p{font-size:clamp(53px,13vw,85px);margin:55px 0;letter-spacing:-.07em}.statement-bottom{gap:30px;align-items:start;flex-direction:column}.statement-bottom>p{font-size:11px}.statement .text-link{width:100%}.contact{gap:45px}.contact h2{font-size:44px}.contact form{padding-top:30px}.contact form h3{font-size:22px}.contact-info>p{font-size:12px}.phone{font-size:29px}.footer-top{gap:25px;padding-top:30px}.footer-top p{font-size:18px}.footer-top img{width:86px}.footer-bottom{font-size:8px}.back-top{font-size:10px}.footer-bottom>span:nth-child(2){font-size:7px}}
@media(max-width:380px){.hero{min-height:760px}.hero-content{top:175px}.hero-eyebrow{top:125px}.hero-description{margin-top:24px}.hero-cta{bottom:95px}.hero-coordinate{display:none}.service-list h3{font-size:18px}}
@media(prefers-reduced-motion:reduce){.hero-image{transform:none!important}.hero-art,.line>span,.hero-eyebrow,.hero-description,.hero-cta,.hero-foot,.material-caption{animation:none!important}.reveal{transition:none}.scroll-mark{animation:none}}
/* Original photography — chosen by the client. */
.hero{background:#283b43;color:#fff}.hero:after{background:linear-gradient(90deg,rgba(13,24,29,.68),rgba(13,24,29,.30) 48%,rgba(13,24,29,.08) 75%),linear-gradient(0deg,rgba(13,24,29,.48),transparent 35%)}.hero-image{object-position:60% center}.hero-description p{color:#fff}.hero .fine-line{background:#fff}.hero .status-dot{background:#fff}.hero-foot{border-color:#ffffff60}.material-caption{color:#fff}.hero-cta{background:var(--paper);color:var(--ink)}.hero-cta:hover{background:var(--red);color:#fff}header:not(.compact){color:#fff}header:not(.compact) .brand img{mix-blend-mode:normal}header:not(.compact) .nav-contact{color:#fff;border-color:#ffffff60}header:not(.compact) .nav-contact span{border-color:#ffffff85}header:not(.compact) .menu-toggle span{background:#fff}
@media(max-width:700px){.hero-image{height:100%;width:100%;inset:0;object-position:61% center;mask-image:none;-webkit-mask-image:none;transform:translate3d(var(--mx),var(--scroll),0) scale(1.035)}.hero:after{background:linear-gradient(90deg,rgba(13,24,29,.67),rgba(13,24,29,.2)),linear-gradient(0deg,rgba(13,24,29,.45),transparent 55%)}header:not(.compact) nav,header:not(.compact) nav .nav-contact{color:var(--ink)}header:not(.compact) nav .nav-contact span{border-color:#26272260}.material-caption{display:none}}

/* Vector icons stay monochrome on iOS/Android; no emoji-font fallback. */
.icon{display:inline-block;width:1em;height:1em;min-width:1em;flex-shrink:0;vertical-align:-.125em;color:inherit;pointer-events:none;overflow:visible}
.nav-contact .icon,.round-arrow .icon,.scroll-mark .icon,.text-link .icon,.button .icon,.phone .icon{display:block}
.cta-arrow{display:block;line-height:1}.cta-arrow .icon{display:block}
.service-list summary b{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:1em;height:1em}
.close-dialog,.dialog-bottom button{display:inline-flex;align-items:center;justify-content:center;padding:0}
.service-body a>.icon,.email>.icon,.back-top>.icon,.footer-bottom a>.icon,.manifesto-strip .icon{width:1.15em;height:1.15em;margin-left:.3em}
