@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#111210;--surface:#191b17;--ink:#f0f0e8;--muted:#a6aaa0;--line:#34372f;--accent:#d9ed92;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 var(--sans)}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{color:inherit}img{display:block;max-width:100%}button,dialog{border:0}::selection{background:var(--accent);color:var(--bg)}.shell{width:min(1440px,calc(100% - 112px));margin:auto}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:var(--ink);color:var(--bg);padding:12px}.skip:focus{top:12px}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font:700 17px var(--display);letter-spacing:-.04em}.brand-mark{width:26px;height:26px;display:inline-grid;place-items:center;border:1px solid var(--accent);color:var(--accent);font-size:13px;letter-spacing:-.12em}.topbar nav{display:flex;align-items:center;gap:35px;font-size:14px}.topbar nav a:hover{color:var(--accent)}.contact-nav{border-bottom:1px solid var(--muted);padding-bottom:3px}.hero{padding:75px 0 62px;position:relative}.hero-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.17em;font-weight:600;margin:0;color:var(--muted)}.hero-identity{font-size:14px;color:var(--muted)}.hero h1{font-family:var(--display);font-size:clamp(70px,11.8vw,172px);font-weight:500;letter-spacing:-.075em;line-height:.95;margin:0 0 44px}.hero h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em;color:var(--accent)}.hero-stage{position:relative;width:100%;height:clamp(340px,39vw,550px);overflow:hidden;background:#1d241c}.hero-stage>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.82)}.hero-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 55%);pointer-events:none}.hero-caption{position:absolute;bottom:26px;left:30px;right:30px;z-index:1;display:flex;justify-content:space-between;align-items:end;gap:20px}.hero-caption p{margin:0;font-size:14px}.hero-caption .eyebrow{color:#d7ded0;font-size:11px;margin-bottom:6px}.hero-link{display:flex;align-items:center;gap:12px;background:none;border:1px solid #ffffff55;border-radius:50px;padding:10px 20px;font-size:14px}.hero-link:hover{background:var(--accent);color:var(--bg)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-top:26px}.hero-note{font-size:18px;max-width:500px;line-height:1.6;margin:0;color:#c6cbbf}.discipline{justify-self:end;align-self:center;color:var(--muted);font-size:13px;letter-spacing:.035em;text-align:right}.work{padding-top:44px;border-top:1px solid var(--line)}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:28px}.section-title h2{font:500 clamp(32px,4vw,54px)/1.15 var(--display);letter-spacing:-.05em;margin:0}.section-title>p{color:var(--muted);font-size:14px;margin:0}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:36px}.filter{border:1px solid var(--line);background:transparent;padding:9px 18px;border-radius:30px;font-size:14px;color:#bcc1b5}.filter:hover{border-color:#8e9585;color:var(--ink)}.filter[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--bg)}.project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px 28px}.project{grid-column:span 6;min-width:0}.project:nth-child(4n+1){grid-column:span 7}.project:nth-child(4n+2){grid-column:span 5}.project:nth-child(4n+3){grid-column:span 5}.project:nth-child(4n+4){grid-column:span 7}.project-open{display:block;width:100%;padding:0;background:none;text-align:left}.project-image{position:relative;overflow:hidden;background:var(--surface);aspect-ratio:1.5}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;filter:saturate(.92)}.project-open:hover .project-image img{transform:scale(1.035)}.project-image.contain img{object-fit:contain}.project-image .open-indicator{position:absolute;right:16px;bottom:16px;background:var(--ink);color:var(--bg);border-radius:50%;width:38px;height:38px;display:grid;place-items:center;font-size:20px;transition:background .2s}.project-open:hover .open-indicator{background:var(--accent)}.project-meta{display:flex;align-items:start;justify-content:space-between;padding-top:16px;gap:15px}.project-meta h3{font:500 20px/1.3 var(--display);letter-spacing:-.035em;margin:0 0 5px}.project-meta p{font-size:13px;line-height:1.5;color:var(--muted);margin:0}.project-number{font-size:12px;color:#9aa18f;padding-top:4px}.project-grid[data-filter=design] .project-image{aspect-ratio:4/3}.more-wrap{text-align:center;padding:48px 0 70px}.more{background:none;border:1px solid #777f69;padding:13px 30px;border-radius:40px;font-size:14px}.more:hover{background:var(--ink);color:var(--bg)}.more[hidden]{display:none}.about{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding:74px 0;border-top:1px solid var(--line)}.about h2{font:500 40px/1.15 var(--display);letter-spacing:-.04em;margin:0}.about-copy>p{font:400 clamp(21px,2.4vw,32px)/1.55 var(--display);letter-spacing:-.035em;margin:0 0 30px;max-width:820px}.about-copy .small{font:16px/1.8 var(--sans);color:var(--muted);max-width:700px;letter-spacing:0}.services{display:flex;gap:10px 24px;flex-wrap:wrap;padding-top:12px;font-size:14px;color:var(--accent)}.contact{border-top:1px solid var(--line);padding:75px 0 50px}.contact h2{font:400 clamp(45px,7vw,94px)/1.08 var(--display);letter-spacing:-.065em;margin:20px 0 35px}.contact h2 em{font-family:Georgia,serif;font-weight:400;color:var(--accent)}.email{font-size:clamp(18px,2.6vw,32px);border-bottom:1px solid #818779;padding-bottom:8px;overflow-wrap:anywhere}.email:hover{color:var(--accent)}.contact-row{display:flex;justify-content:space-between;align-items:center;gap:30px}.instagram{font-size:14px;color:var(--muted)}.footer{display:flex;justify-content:space-between;gap:25px;align-items:center;border-top:1px solid var(--line);margin-top:65px;padding-top:25px;color:var(--muted);font-size:12px}.footer a{color:var(--ink)}.viewer{position:fixed;inset:0;width:min(1440px,calc(100vw - 48px));height:calc(100dvh - 48px);max-height:none;max-width:none;padding:0;margin:auto;background:#151713;color:var(--ink);border:1px solid #505747}.viewer::backdrop{background:rgba(0,0,0,.88);backdrop-filter:blur(10px)}.viewer[open]{display:flex;flex-direction:column}.viewer-head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 25px;border-bottom:1px solid var(--line)}.viewer-head h2{font:500 22px/1.3 var(--display);letter-spacing:-.035em;margin:0}.viewer-close{background:none;border:1px solid #606655;border-radius:50px;padding:8px 16px;font-size:14px}.viewer-close:hover{background:var(--ink);color:var(--bg)}.viewer-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;min-height:0;flex:1}.viewer-main{display:flex;flex-direction:column;min-width:0;min-height:0}.media-stage{background:#090a08;display:flex;align-items:center;justify-content:center;min-height:0;flex:1;padding:16px}.media-stage img,.media-stage video{display:block;width:100%;height:100%;max-height:100%;object-fit:contain}.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 18px;font-size:13px;color:var(--muted)}.viewer-controls button{background:none;border:1px solid var(--line);width:44px;height:38px;font-size:20px}.viewer-controls button:hover{background:var(--accent);color:var(--bg)}.media-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.thumbnails{display:flex;gap:7px;padding:0 18px 18px;overflow-x:auto;flex-shrink:0;scrollbar-width:thin}.thumb{flex-shrink:0;width:78px;height:58px;padding:0;border:2px solid transparent;background:#0c0e0b;opacity:.6}.thumb[aria-current=true]{border-color:var(--accent);opacity:1}.thumb img{width:100%;height:100%;object-fit:cover}.thumb:hover{opacity:1}.viewer-info{border-left:1px solid var(--line);padding:28px 24px;overflow:auto}.viewer-info p{font-size:15px;color:#b9c0b0;line-height:1.8}.viewer-info .eyebrow{font-size:11px;color:var(--accent)}.viewer-info .viewer-service{padding-top:24px;border-top:1px solid var(--line);font-size:14px}.viewer-info a{color:var(--accent);font-size:14px}.empty{padding:30px;color:var(--muted)}.noscript-message{border:1px solid var(--line);padding:22px} @media(min-width:1500px){.hero h1{font-size:172px}}@media(max-width:1000px){.shell{width:calc(100% - 64px)}.hero{padding-top:50px}.hero h1{font-size:12vw}.hero-stage{height:420px}.project-grid{gap:34px 22px}.project-meta h3{font-size:18px}.about{grid-template-columns:1fr 2fr;gap:30px}.viewer-layout{grid-template-columns:minmax(0,1fr) 240px}.viewer-info{padding:20px 16px}}@media(max-width:700px){.shell{width:calc(100% - 36px)}.topbar{height:80px}.topbar nav{gap:20px;font-size:13px}.topbar nav .about-nav{display:none}.brand{font-size:16px}.hero{padding:36px 0 38px}.hero-top{align-items:start;gap:20px;margin-bottom:28px}.hero-identity{font-size:12px}.eyebrow{font-size:10px}.hero h1{font-size:15.8vw;letter-spacing:-.075em;line-height:1.08;margin-bottom:28px}.hero h1 em{display:block}.hero-stage{height:340px}.hero-caption{bottom:18px;left:16px;right:16px;align-items:start;flex-direction:column;gap:14px}.hero-link{padding:8px 14px;font-size:13px}.hero-bottom{grid-template-columns:1fr;gap:18px;padding-top:22px}.hero-note{font-size:16px}.discipline{justify-self:start;text-align:left;font-size:12px}.work{padding-top:32px}.section-title{align-items:start;gap:15px}.section-title h2{font-size:34px}.section-title>p{font-size:12px;padding-top:7px}.filters{gap:7px;margin-bottom:25px}.filter{font-size:13px;padding:8px 13px}.project-grid{display:grid;grid-template-columns:1fr;gap:30px}.project,.project:nth-child(n){grid-column:1}.project-image{aspect-ratio:1.4}.project-meta h3{font-size:20px}.more-wrap{padding:35px 0 42px}.about{grid-template-columns:1fr;gap:25px;padding:42px 0}.about h2{font-size:32px}.about-copy>p{font-size:23px}.contact{padding:45px 0 30px}.contact h2{font-size:49px}.contact-row{align-items:start;flex-direction:column;gap:22px}.footer{margin-top:45px;align-items:start;font-size:11px}.viewer{width:100vw;height:100dvh;border:0}.viewer-head{padding:14px 16px}.viewer-head h2{font-size:18px}.viewer-close{padding:7px 12px}.viewer-layout{display:flex;flex-direction:column;overflow-y:auto}.viewer-main{min-height:55dvh;flex-shrink:0}.media-stage{height:43dvh;flex:none;padding:8px}.viewer-info{border-left:0;border-top:1px solid var(--line);overflow:visible;padding:22px}.viewer-info .viewer-service{padding-top:16px}.thumb{width:64px;height:48px}.thumbnails{padding-bottom:12px}.viewer-controls{padding:8px 12px}.media-caption{font-size:12px}.viewer-info p{font-size:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
