/* Fonts are self-hosted from assets/fonts/ (SIL Open Font License, see assets/fonts/OFL.txt). Regenerate with tools/fetch-fonts.py. */
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/barlow-condensed-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/barlow-condensed-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/barlow-condensed-600-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/barlow-condensed-600-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/barlow-condensed-700-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/barlow-condensed-700-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/barlow-condensed-800-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/barlow-condensed-800-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/ibm-plex-mono-400-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/ibm-plex-mono-400-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/ibm-plex-mono-500-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/ibm-plex-mono-500-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/space-grotesk-variable-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/space-grotesk-variable-latin.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

:root{color-scheme:dark;--ink:#080808;--paper:#eeeeea;--line:#333;--mono:'IBM Plex Mono',monospace;--display:'Barlow Condensed','Arial Narrow',sans-serif;--body:'Space Grotesk',Arial,sans-serif;--gutter:clamp(22px,4vw,72px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#000;color:#f4f4ef;font-family:var(--body);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #f06b32;outline-offset:6px}.paper :focus-visible{outline-offset:2px;box-shadow:0 0 0 2px var(--ink)}::selection{background:#f06b32;color:#000}.skip-link{position:fixed;left:20px;top:-100px;padding:15px;background:white;color:black;z-index:50}.skip-link:focus{top:20px}.micro,.eyebrow,.section-label,.product-code,.research,.hero-meta,.footer-bottom{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.05em}.masthead{position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:10;border-bottom:1px solid var(--line)}.brand{font-size:17px;font-weight:700;letter-spacing:-.035em;white-space:nowrap}.brand>span{font-size:11px;vertical-align:top;margin-left:3px}.masthead-note{font-family:var(--mono);font-size:12px;color:#aaa}.sound-toggle{background:none;border:0;color:#eee;font-family:var(--mono);font-size:12px;min-height:44px;cursor:pointer;white-space:nowrap;padding:8px 0 8px 16px}.sound-icon{display:inline-block;font-size:19px;letter-spacing:1px;margin-right:9px;color:#777}.sound-toggle[aria-pressed=true] .sound-icon{color:#f06b32}#sound-state{margin-left:7px;color:#aaa}.intro{height:160svh;min-height:1000px}.hero{height:100svh;min-height:680px;position:sticky;top:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center}.perspective{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-meta{position:absolute;top:110px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;color:#959595}.logo-stage{position:relative;width:clamp(240px,29vw,430px);aspect-ratio:477/425;overflow:hidden;margin:12px 0 24px;will-change:transform,opacity}.logo-stage img{position:absolute;width:220.126%;height:auto;max-width:none;left:-59.96%;top:-20.47%}.hero-copy{position:relative;text-align:center;will-change:opacity,transform}.hero-copy .eyebrow{display:none}h1,h2,p{margin:0}h1{font-family:var(--display);font-size:clamp(56px,7.3vw,110px);font-weight:700;letter-spacing:-.02em;line-height:.91}h1 br{display:none}.hero-bottom{position:absolute;bottom:28px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:20px}.hero-bottom>.micro{color:#8e8e8e;flex:1}.hero-bottom>.micro:last-child{text-align:right}.enter-link{font-family:var(--mono);font-size:12px;letter-spacing:.06em;display:flex;align-items:center;gap:28px;padding:15px 0}.enter-link span{font-size:25px}.section-index{position:relative;display:grid;grid-template-columns:repeat(5,1fr);padding:0 var(--gutter) 48px;background:#000;scroll-margin-top:25px}.section-index a{display:flex;align-items:center;gap:14px;padding:25px 18px;border-top:1px solid #5a5a5a;border-bottom:1px solid #333;border-right:1px solid #333;font-family:var(--display);font-size:26px;font-weight:500}.section-index a:first-child{padding-left:0}.section-index a:last-child{border-right:0}.section-index a>span:first-child{font-family:var(--mono);font-size:12px;color:#888;align-self:flex-start;padding-top:3px}.section-index a>span:last-child{font-size:19px;margin-left:auto;color:#aaa}.section-index a:hover{color:#aaa}.paper{background:var(--paper);color:var(--ink);color-scheme:light}.products,.work,.services,footer{padding:38px var(--gutter) 90px}.section-label{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid currentColor;padding-bottom:20px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin:65px 0 65px}.section-heading h2,.services h2,.work h2{font-family:var(--display);font-size:clamp(64px,8.1vw,126px);font-weight:600;line-height:.88;letter-spacing:-.025em}.section-heading>p{font-size:18px;line-height:1.6;width:29%;padding-bottom:4px}.product{border-top:1px solid #95958e}.product:last-child{border-bottom:1px solid #95958e}.product summary{list-style:none;display:grid;grid-template-columns:1.05fr 3.3fr 1.7fr 25px;align-items:center;gap:20px;padding:30px 0;cursor:pointer}.product summary::-webkit-details-marker{display:none}.product-code{color:#5f5f5a}.product-name{font-family:var(--display);font-size:clamp(36px,4.3vw,66px);font-weight:600;line-height:1;letter-spacing:-.01em}.product-type{font-size:14px;line-height:1.5}.expand{font-size:28px;font-weight:400;transition:transform .2s}.product[open] .expand{transform:rotate(45deg)}.product summary:hover .product-name{color:#5a5a55}.product-content{padding:0 45px 34px 17.5%;display:flex;justify-content:space-between;gap:40px;align-items:flex-end}.product-content p{max-width:600px;font-size:17px;line-height:1.7}.product-content .micro{max-width:170px;line-height:1.8}.research{display:block;font-size:12px;margin-top:8px;color:#64645d}.work{background:#101010;padding-top:38px}.work .section-label{border-color:#555;color:#bbb}.work-title{display:flex;justify-content:space-between;align-items:flex-end;margin:60px 0 40px}.reel-link{font-family:var(--mono);font-size:14px;display:flex;gap:50px;align-items:center;padding:16px 0;border-bottom:1px solid #777}.reel-link>span{font-size:24px}.reel-frame{position:relative;aspect-ratio:16/7.5;background:#1c1c1c;overflow:hidden}.reel-frame img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) brightness(.65);transition:filter .5s}.reel-frame:hover img{filter:grayscale(0) brightness(.8)}.reel-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:86px;height:86px;border:1px solid #eee;border-radius:50%;display:grid;place-items:center;background:#0005;font-size:23px;padding-left:4px}.reel-play:hover{background:#eeeee9;color:#111}.services{padding-bottom:100px}.services-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:70px}.service-list>p{font-size:20px;line-height:1.55;max-width:520px;margin:0 0 38px}.service-list ul{list-style:none;padding:0;margin:0}.service-list li{font-size:20px;padding:19px 0;border-top:1px solid #aaa;display:flex;gap:40px;align-items:center}.service-list li:last-child{border-bottom:1px solid #aaa}.service-list li span{font-family:var(--mono);font-size:12px;color:#666}footer{padding-bottom:30px}.footer-statement{font-family:var(--display);font-size:clamp(65px,11.8vw,184px);font-weight:600;letter-spacing:-.015em;line-height:.91;margin:75px 0 80px}.footer-bottom{border-top:1px solid #555;padding-top:24px;display:flex;justify-content:space-between;gap:25px;color:#a0a0a0}.footer-bottom a{color:#eee}
@media(min-width:1500px){.logo-stage{margin-bottom:40px}h1{font-size:7vw}}
@media(max-width:1000px){.masthead-note{display:none}h1{font-size:8vw}h1 br{display:block}.logo-stage{width:300px;margin-bottom:30px}.hero{min-height:740px}.hero-bottom>.micro{display:none}.hero-bottom{justify-content:center}.section-index a{font-size:22px;padding:22px 10px;gap:8px}.section-index a>span:last-child{display:none}.product summary{grid-template-columns:1fr 2.8fr 1.6fr 20px;gap:12px}.product-content{padding-left:0}.product-code{font-size:12px}.product-type{font-size:13px}}
@media(max-width:650px){html{scroll-padding-top:24px}.masthead{height:70px}.brand{font-size:15px}.sound-toggle{font-size:12px}.sound-icon{display:none}.hero{min-height:650px;height:100svh;justify-content:center}.hero-meta{top:90px;font-size:12px}.hero-meta>span:first-child{display:none}.hero-meta>span:last-child{margin-left:auto}.logo-stage{width:min(65vw,290px);margin-top:28px;margin-bottom:38px}h1{font-size:clamp(50px,12.2vw,80px);line-height:.95}.hero-bottom{bottom:17px}.intro{height:145svh;min-height:950px}.section-index{grid-template-columns:1fr 1fr;padding-bottom:30px}.section-index a{padding:18px 14px;font-size:25px}.section-index a:first-child{padding-left:14px}.section-index a:last-child{grid-column:1/-1}.section-index a:nth-child(even){border-right:0}.section-index a>span:last-child{display:inline}.products,.work,.services,footer{padding-top:25px;padding-bottom:55px}.section-label{font-size:12px;gap:15px;line-height:1.65;padding-bottom:16px}.section-label>span:last-child{text-align:right;max-width:47%}.section-heading{display:block;margin:43px 0 35px}.section-heading h2,.services h2,.work h2{font-size:clamp(62px,17vw,90px)}.section-heading>p{font-size:16px;margin-top:25px;width:auto}.section-heading>p br{display:none}.product summary{grid-template-columns:1fr 30px;gap:10px;padding:23px 0}.product-code{grid-column:1;grid-row:1}.product-name{grid-column:1;grid-row:2;font-size:clamp(39px,10vw,60px)}.product-type{grid-column:1;grid-row:3;font-size:14px}.expand{grid-column:2;grid-row:2}.product-content{display:block;padding:0 0 26px}.product-content p{font-size:16px}.product-content .micro{display:block;margin-top:15px;max-width:none}.research{display:inline-block;margin:0 0 0 10px;font-size:12px}.work-title{display:block;margin:40px 0 28px}.reel-link{margin-top:24px;width:fit-content;gap:40px}.reel-frame{aspect-ratio:4/3}.reel-play{width:66px;height:66px;font-size:18px}.services-layout{grid-template-columns:1fr;gap:36px;padding-top:42px}.service-list>p{font-size:18px;margin-bottom:28px}.service-list li{font-size:18px}.footer-statement{font-size:15.5vw;margin:50px 0}.footer-bottom{flex-wrap:wrap;font-size:12px;line-height:1.8;gap:20px}.footer-bottom>span:nth-child(2){display:none}}
@media(max-width:380px){.section-index{grid-template-columns:repeat(2,minmax(0,1fr))}.section-index a,.section-index a:first-child{font-size:22px;padding:18px 9px;gap:7px}.section-index a>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.intro{height:auto;min-height:0}.hero{position:relative}.logo-stage,.hero-copy{will-change:auto}}

/* Phones: a long right-hand section label moves to its own line instead of breaking mid-phrase. */
@media(max-width:650px){.section-label{flex-wrap:wrap;row-gap:4px}.section-label>span:last-child{max-width:none;margin-left:auto}}
