@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--ink:#101110;--paper:#eae9e1;--acid:#f4423f;--line:#ffffff30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--acid);outline-offset:6px}.skip{position:absolute;top:-60px;padding:12px;background:var(--acid);color:var(--ink);z-index:10}.skip:focus{top:10px}header{height:108px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:36px;letter-spacing:-7px;font-weight:700;display:flex;align-items:center}.brand>span{color:var(--acid)}.brand small{font-size:10px;line-height:1.1;letter-spacing:1.3px;margin-left:23px}nav{display:flex;gap:38px;font-size:12px}nav a:hover{color:var(--acid)}.contact-link{border-bottom:1px solid var(--acid);padding-bottom:7px}.contact-link span{margin-left:25px}.hero{min-height:700px;height:calc(100svh - 108px);max-height:1000px;position:relative;padding:55px 5% 40px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.8px;display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;background:var(--acid);border-radius:50%;display:inline-block}h1,h2,h3,p{margin:0}h1{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:clamp(96px,13.6vw,220px);line-height:.83;letter-spacing:-.025em;font-weight:700;position:relative;z-index:1;margin:40px 0}em{font-style:normal;color:var(--acid)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;z-index:1}.hero-bottom p{font-size:14px;line-height:1.6}.round-link{border:1px solid #777;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:25px;transition:.3s}.round-link:hover{background:var(--acid);color:var(--ink);transform:translateY(4px)}.hero-note{font-size:9px;letter-spacing:1.5px;line-height:1.7;text-align:right}.orb{position:absolute;width:480px;height:480px;right:-80px;top:55px;border-radius:50%;background:radial-gradient(ellipse at 30% 30%,#f66a65 0,#7c302b 12%,#30201e 38%,#101110 68%);opacity:.5;transform:rotate(-30deg);box-shadow:inset 1px 1px 1px #e15b50;animation:drift 14s ease-in-out infinite alternate}.orbit{position:absolute;inset:10%;border:1px solid #f4423f50;border-radius:50%;transform:rotateX(70deg);box-shadow:0 0 0 40px #f4423f05,0 0 0 80px #f4423f05}.orb>span{position:absolute;bottom:100px;left:130px;font-size:7px;letter-spacing:3px}.frame-note{position:absolute;right:5%;top:54px;font-size:9px;letter-spacing:1px}.frame-note b{color:var(--acid)}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:19px 0;overflow:hidden;white-space:nowrap;color:var(--acid);font-size:16px;letter-spacing:3px;text-align:center}.ticker i{font-style:normal;margin:0 45px;font-size:24px}.section{padding:90px 5%}.section-top{display:flex;justify-content:space-between;font-size:11px}.muted{color:#95978d}.section-heading{display:flex;justify-content:space-between;align-items:end;margin:55px 0 40px}h2{font-size:clamp(38px,4.5vw,70px);font-weight:500;letter-spacing:-2.5px;line-height:1.05}.section-heading p{font-size:13px;line-height:1.7;color:#a3a59b}.filters{display:flex;gap:8px;margin-bottom:28px;flex-wrap:wrap}.filters button{color:#a9aca0;background:transparent;border:1px solid #45463f;border-radius:30px;padding:13px 22px;font-size:12px}.filters button.active{background:var(--acid);color:var(--ink);border-color:var(--acid)}sup{font-size:8px;margin-left:12px}.empty{border:1px solid #414338;min-height:280px;display:flex;gap:50px;align-items:center;padding:35px;position:relative;background:repeating-linear-gradient(90deg,transparent,transparent calc(25% - 1px),#ffffff04 25%)}.empty[hidden]{display:none}.empty-art{height:170px;aspect-ratio:1;border:1px solid #565b43;position:relative;display:grid;place-items:center}.empty-art:before,.empty-art:after{content:'';position:absolute;background:#565b43}.empty-art:before{width:1px;height:120%;transform:rotate(45deg)}.empty-art:after{height:1px;width:120%;transform:rotate(45deg)}.empty-art span{font-size:45px;color:var(--acid);background:var(--ink);z-index:1;width:60px;text-align:center;font-weight:400}.empty h3{font-size:27px;letter-spacing:-1px;margin:15px 0}.empty p{font-size:13px;color:#919587;line-height:1.7;max-width:360px}.empty-index{position:absolute;right:25px;bottom:25px;font-size:10px;letter-spacing:2px;color:#90977d}.approach{background:var(--paper);color:var(--ink)}.approach h2{font-size:clamp(48px,7.6vw,118px);margin:65px 0 45px;letter-spacing:-4px}.approach em{color:#ad3530}.approach-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;margin-bottom:65px}.approach-bottom p{font-size:14px;line-height:1.7;max-width:360px}.asterisk{font-size:85px;line-height:1}.disciplines{border-top:1px solid #10111050}.disciplines details{border-bottom:1px solid #10111050;padding:23px 0}.disciplines summary{list-style:none;cursor:pointer;display:flex;align-items:center;font-size:26px;letter-spacing:-.6px}.disciplines summary::-webkit-details-marker{display:none}.disciplines summary span{font-size:10px;width:70px;letter-spacing:0}.disciplines summary b{font-size:24px;font-weight:400;margin-left:auto;transition:.3s}.disciplines details[open] b{transform:rotate(90deg)}.disciplines details p{padding:20px 40px 0 70px;font-size:14px;line-height:1.7;max-width:650px}.contact{padding-top:70px;padding-bottom:90px}.contact>p{font-size:14px;margin-top:70px;color:#a3a59b}.contact h2{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-size:clamp(85px,13vw,190px);line-height:.86;letter-spacing:-2px;margin:24px 0 40px}.brief-open{background:var(--acid);border:0;padding:18px 24px;min-width:225px;text-align:left;font-size:13px}.brief-open span{float:right;font-size:20px}.contact .contact-note{display:inline-block;margin:0 0 0 28px;font-size:12px}footer{border-top:1px solid var(--line);padding:30px 5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1px}.wordmark{font-weight:700;font-size:13px}footer>span{color:#85887b}dialog{background:var(--paper);color:var(--ink);border:0;padding:45px;width:min(570px,calc(100% - 30px));max-height:90svh}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}dialog .close{position:absolute;right:15px;top:8px;border:0;background:transparent;font-size:30px}dialog h2{font-size:38px;letter-spacing:-1.5px;margin:20px 0}dialog p{font-size:13px;line-height:1.7}form{margin-top:25px;display:grid;gap:16px}label{font-size:11px;display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid #a6a79b;background:transparent;padding:11px;border-radius:0;color:var(--ink)}.download{padding:15px;background:var(--ink);color:var(--acid);border:0}form small{font-size:10px;line-height:1.5;color:#5c6053}#projects{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project img,.project video{width:100%;max-height:550px;object-fit:cover}.project h3{font-size:30px;margin:10px 0}.project .eyebrow{margin-top:20px}.project details{padding:15px 0}.project p{font-size:14px;line-height:1.7;margin-top:15px}@keyframes drift{to{transform:rotate(-5deg) translateY(25px)}}@media(max-width:700px){header{height:85px}.brand small{font-size:8px}nav{gap:18px;font-size:10px}nav a:nth-child(2){display:none}.hero{height:calc(85svh - 85px);min-height:570px;padding-top:35px}.hero>.eyebrow{font-size:8px;max-width:210px;line-height:1.6}h1{font-size:16.8vw;line-height:.94}.orb{width:330px;height:330px;right:-140px;top:85px}.hero-note,.frame-note{display:none}.hero-bottom p{font-size:12px}.round-link{width:45px;height:45px}.ticker{font-size:11px}.ticker i{margin:0 20px}.section{padding:60px 6%}.section-heading{display:block;margin:35px 0}.section-heading p{margin-top:20px}.section-top{font-size:9px}.eyebrow{font-size:8px}.filters button{padding:11px 14px;font-size:10px}sup{margin-left:7px}.empty{padding:25px;gap:25px;min-height:340px;align-items:start;flex-direction:column}.empty-art{height:70px}.empty-art span{font-size:30px;width:38px}.empty h3{font-size:24px}.empty-index{font-size:8px;right:15px;bottom:15px}.approach h2{letter-spacing:-2px;margin:40px 0}.approach-bottom{grid-template-columns:1fr;gap:25px;margin-bottom:40px}.asterisk{font-size:60px}.approach-bottom p{max-width:none}.disciplines summary{font-size:23px}.disciplines summary span{width:40px}.disciplines details p{padding-left:40px}.contact h2{font-size:19vw}.contact>p{margin-top:45px}.contact .contact-note{display:block;margin:20px 0 0;font-size:11px}footer{gap:25px;flex-wrap:wrap}footer>span{display:none}dialog{padding:35px 25px}#projects{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orb{animation:none}*{transition:none!important}}

:root{--ink:#090909;--paper:#eeede8;--acid:#f4423f}.logo-crop{position:relative;width:125px;height:75px;overflow:hidden;display:block;background:#000}.logo-crop img{position:absolute;width:210px;max-width:none;left:-42px;top:-73px}.brand{letter-spacing:normal}.contact-details{display:flex;gap:25px;flex-wrap:wrap;margin:28px 0;color:#ccc;font-size:13px}.contact-details a:hover{color:var(--acid)}.brief-open{display:inline-block}.brief-secondary{border:0;border-bottom:1px solid #666;background:none;color:var(--paper);padding:8px 0;font-size:12px;margin-right:25px}.approach em{color:#ae302a}.filters button.active,.brief-open{color:white}.ticker{color:#f56561}.orb{opacity:.45}.brand>span{color:inherit}@media(max-width:700px){.logo-crop{width:100px;height:62px}.logo-crop img{width:175px;left:-35px;top:-61px}.contact-details{gap:18px;flex-direction:column}.contact .contact-note{margin-top:20px}}

/* Preserve the source artwork while letting the site background show through. */
.logo-crop{background:transparent}

/* Render the full-resolution transparent PNG directly, without SVG filter rasterization. */
.logo-crop{width:125px;height:auto;overflow:visible;line-height:0;background:transparent}
.logo-crop img{position:static;display:block;width:125px;height:auto;max-width:100%;filter:none;transform:none}
@media(max-width:700px){.logo-crop,.logo-crop img{width:100px}.logo-crop{height:auto}}

#projects>.project:only-child{grid-column:1/-1}.project video{display:block;width:100%;height:auto;max-height:75svh;object-fit:contain;background:#000;aspect-ratio:16/9}.project video:focus-visible{outline:2px solid var(--acid);outline-offset:4px}

/* About: keep the portrait detail intact; feather only its outer edge. */
nav a[aria-current="page"]{color:var(--acid)}
.about-intro{padding-top:55px;padding-bottom:60px}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:center;margin-top:45px}
.portrait-wrap{align-self:stretch;display:flex;align-items:center}
.portrait{display:block;width:100%;height:auto;mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 87%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 87%,transparent);-webkit-mask-composite:source-in}
.about-copy h1{font-size:clamp(65px,7.5vw,120px);margin:25px 0 30px;line-height:.9}
.about-copy p{font-size:14px;line-height:1.85;color:#aeb0a6;margin-bottom:20px;max-width:540px}
.about-copy .about-lead{font-size:18px;color:var(--paper);line-height:1.65}
.about-copy .brief-open{margin-top:12px}
.about-signoff{padding:45px 5% 65px;display:flex;justify-content:space-between;font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(32px,6.5vw,100px);font-weight:600;border-top:1px solid var(--line)}
@media(max-width:700px){nav{gap:12px}nav a:nth-child(2){display:inline}.contact-link span{margin-left:10px}.about-intro{padding-top:35px}.about-grid{grid-template-columns:1fr;gap:30px;margin-top:25px}.portrait-wrap{max-width:420px;width:100%;margin:auto}.portrait{max-height:65svh;object-fit:contain}.about-copy h1{font-size:22vw}.about-copy .about-lead{font-size:17px}.about-signoff{padding:30px 6%;font-size:8.2vw}}
