/* Local design studies. Each named body class is an independent visual system. */
:root{--sans:'Manrope',sans-serif;--mono:'IBM Plex Mono',monospace;--serif:'Bodoni Moda',Georgia,serif;--ink:#171819;--muted:#626665;--paper:#f5f3ec;--line:#d7d6cd;--pad:clamp(24px,4.2vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid currentColor;outline-offset:5px}a:hover .ui-icon{transform:translate(3px,-3px)}a:hover .ui-icon[src*='arrow-right']{transform:translateX(4px)}.ui-icon{display:inline-block;width:22px;height:22px;flex:0 0 22px;vertical-align:middle;transition:transform .2s}.mono,.eyebrow{font-family:var(--mono);font-size:12px;font-weight:400;letter-spacing:.1em;line-height:1.7}.eyebrow{text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-100px;left:20px;padding:12px 20px;background:white;color:black;z-index:1000}.skip-link:focus{top:14px}[hidden]{display:none!important}.muted{color:var(--muted)}.large-copy{font-size:clamp(20px,2vw,30px);line-height:1.55;letter-spacing:-.025em}.section-pad{padding:100px var(--pad)}.section-label{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:60px}.section-label>p{margin:0}.site-header{display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:112px;padding:24px var(--pad)}.brand{display:flex;align-items:center;gap:24px;font-size:17px;font-weight:700}.brand-caption{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;font-weight:400}.site-header nav{display:flex;align-items:center;gap:30px;font-size:14px}.site-header nav a{padding:7px 0;white-space:nowrap;border-bottom:1px solid transparent}.site-header nav a:hover{border-bottom-color:currentColor}.site-header nav .ui-icon{width:14px;height:14px;margin-left:4px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;min-height:56px;padding:15px 24px;font-size:14px;font-weight:600;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.outline{border:1px solid currentColor}.text-link{display:inline-flex;align-items:center;gap:24px;padding:12px 0 8px;border-bottom:1px solid currentColor;font-size:14px}.site-footer{padding:40px var(--pad) 104px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--line);font-size:12px}.site-footer>div{display:flex;gap:24px}.site-footer .ui-icon{width:16px;height:16px;flex-basis:16px}.footer-name{font-weight:700}.site-footer a:hover{text-decoration:underline}.preview-controls{position:fixed;z-index:100;bottom:16px;left:50%;transform:translateX(-50%);height:46px;display:flex;align-items:center;gap:4px;padding:4px 7px;border:1px solid #ffffff30;background:#171819ed;color:#fff;border-radius:100px;box-shadow:0 4px 24px #0002;backdrop-filter:blur(16px);font-family:var(--sans);white-space:nowrap}.preview-controls a,.preview-controls button{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:50%;background:transparent;color:inherit}.preview-controls a:hover,.preview-controls button:hover{background:#ffffff20}.preview-controls .ui-icon{width:16px;height:16px;filter:invert(1)}.preview-controls>span{font-size:10px;letter-spacing:.05em;padding:0 8px;color:#a8aaa9}.preview-controls b{font-weight:500;font-size:11px;color:white;margin-left:9px}.restore-preview{position:fixed;bottom:15px;left:18px;border:1px solid #fff4;border-radius:30px;padding:9px 16px;background:#171819e8;color:white;font-size:11px;z-index:100}.app-rows{margin-top:52px}.app-row{display:grid;grid-template-columns:32px 60px 1fr 150px 30px;align-items:center;gap:26px;border-top:1px solid var(--line);padding:30px 0;transition:padding .25s}.app-row:last-child{border-bottom:1px solid var(--line)}.app-row:hover{padding-left:12px;padding-right:12px}.row-number{font-family:var(--mono);font-size:11px;color:var(--muted)}.app-icon{width:52px;height:52px;border-radius:12px}.app-row h3{font-size:25px;font-weight:500;letter-spacing:-.04em}.app-row p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:7px;max-width:650px}.platform{font-family:var(--mono);font-size:11px;text-align:right;color:var(--muted)}
/* Event Horizon: an atmospheric opening, then a quiet, legible portfolio. */
.horizon{--paper:#08090a;--ink:#f2eee5;--muted:#a19d96;--line:#ffffff24;background:var(--paper);color:var(--ink)}.horizon .ui-icon{filter:invert(1)}.horizon-intro{background:#08090a none center center/cover no-repeat;min-height:min(1024px,100svh)}.horizon .site-header{min-height:116px}.monogram{font-size:36px;font-weight:500;letter-spacing:-.08em}.monogram span{color:#d27942}.horizon-hero{min-height:calc(100svh - 116px);max-height:1040px;padding:65px var(--pad) 28px;display:flex;flex-direction:column;justify-content:space-between;gap:76px}.horizon .hero-copy{max-width:830px}.horizon .hero-copy>.eyebrow{color:#cbbfb3;margin-bottom:30px;font-size:10px}.horizon h1{font-size:clamp(78px,9.8vw,156px);font-weight:400;line-height:.99;letter-spacing:-.065em}.horizon h1 span{color:#c96935}.hero-role{font-size:22px;letter-spacing:-.03em;margin:36px 0 15px}.hero-summary{font-size:18px;line-height:1.7;color:#c7c2bb;max-width:490px}.copper{background:#a7461f;color:#fff;margin-top:28px;border:1px solid #dc7848;font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.12em}.copper:hover{background:#be582e}.horizon-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #ffffff38;padding-top:22px;font-size:10px;color:#c6c0b7}.horizon-caption a{padding:8px}.horizon-about{padding-top:100px}.split-statement{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.horizon h2{font-size:clamp(40px,5vw,76px);font-weight:400;letter-spacing:-.055em;line-height:1.12}.horizon h2 em{font-style:normal;color:#a69484}.split-statement .muted{font-size:15px;line-height:1.8;margin:25px 0}.horizon-skills{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-top:1px solid var(--line);padding-top:32px;gap:36px}.horizon-skills>span{font-size:24px;letter-spacing:-.04em}.horizon-skills small{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--muted);margin-bottom:14px}.horizon-work{background:#101113}.horizon-work .section-label{margin-bottom:35px}.horizon-contact{padding-top:110px;padding-bottom:110px}.horizon-contact h2{margin:30px 0}.horizon-contact .text-link{color:#d58c61}
/* Signal: poster typography, vermilion, and a direct project index. */
.signal{--paper:#f3f1e9;--ink:#111313;--line:#bdbdb3;--muted:#595d58}.signal-cover{background:#f04b2e}.signal .site-header{min-height:106px}.signal .brand{font-size:16px;letter-spacing:-.04em}.signal-brand-sub{font-size:12px;font-weight:400;letter-spacing:0;margin-left:20px}.signal-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:4vw;align-items:center;padding:34px var(--pad) 68px;min-height:680px}.signal h1{font-family:'Archivo Black',var(--sans);font-size:clamp(72px,12.8vw,206px);font-weight:400;line-height:.99;letter-spacing:-.08em}.signal-intro{display:flex;flex-direction:column;gap:35px;padding-top:28px}.signal-intro p{font-size:20px;line-height:1.6;letter-spacing:-.04em}.signal-intro>.mono:first-child{font-size:12px;line-height:1.5}.signal-intro>.mono:last-child{font-size:11px}.signal-intro .outline:hover{background:#111;color:#f3f1e9}.signal-intro .outline:hover .ui-icon{filter:invert(1)}.signal-work{padding-top:36px;padding-bottom:80px}.signal-section-head{display:flex;justify-content:space-between;align-items:start;padding-bottom:36px;border-bottom:1px solid #111}.signal-section-head p{font-size:14px;line-height:1.5;max-width:280px}.signal-project{padding:30px 0 35px;border-bottom:1px solid #111}.signal-project-top{display:flex;justify-content:space-between;align-items:center;gap:24px}.signal-project-top .text-link{padding-top:0;font-size:12px}.signal-project-title{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 0 25px}.signal-project h3{font-size:clamp(35px,6.8vw,104px);font-weight:800;letter-spacing:-.07em;line-height:1.05;transition:transform .3s}.signal-project-title>.ui-icon{height:clamp(30px,5vw,70px);width:clamp(30px,5vw,70px);flex-basis:auto}.signal-project-title:hover h3{transform:translateX(10px)}.signal-project-bottom{display:flex;justify-content:space-between;align-items:center;gap:32px}.signal-project-bottom p{max-width:500px;font-size:15px;line-height:1.7}.signal-project-bottom>img{width:54px;height:54px;border-radius:12px}.signal-about{background:#161918;color:#ecebe2;--line:#ffffff32}.signal-about>.mono{color:#f68168}.signal-about>div{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;margin-top:50px}.signal-about h2{font-size:clamp(56px,7.5vw,116px);line-height:1.05;letter-spacing:-.07em}.signal-about .large-copy{margin-bottom:24px}.signal-about p:not(.large-copy):not(.mono){font-size:15px;line-height:1.8;color:#c0c5bc}.signal-about .button{margin-top:30px}.signal-about .ui-icon{filter:invert(1)}.signal-interests{margin-top:70px;padding-top:30px;border-top:1px solid #ffffff40;line-height:2}.signal .site-footer{background:#f04b2e;border:0}
/* Field Notes: a quiet journal with a source photograph and readable serif type. */
.field-notes{--paper:#f6f4ed;--ink:#202c26;--muted:#646c62;--line:#b2b9ae;--pad:clamp(24px,3.6vw,70px)}.field-notes .site-header{margin:0 var(--pad);padding-left:0;padding-right:0;border-bottom:1px solid var(--line);min-height:98px}.field-wordmark{font-family:var(--serif);text-transform:uppercase;font-size:18px;letter-spacing:.14em;font-weight:400}.field-notes .brand{width:75%;justify-content:space-between}.field-notes .brand-caption{font-size:9px;letter-spacing:.12em;margin-right:10%}.field-notes .site-header nav{gap:22px;font-size:13px}.field-notes .site-header nav a:nth-child(3){display:none}.field-hero{display:grid;grid-template-columns:32px 1fr 1.08fr;gap:32px;margin:30px var(--pad) 0;padding-bottom:45px;min-height:640px;border-bottom:1px solid var(--line)}.field-margin{writing-mode:vertical-rl;transform:rotate(180deg);font:italic 14px var(--serif);border-left:1px solid var(--line);padding-left:20px;justify-self:start}.field-intro{align-self:center;padding:44px 0}.field-intro>.eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.15em;margin-bottom:35px}.field-notes h1{font:400 clamp(48px,5.1vw,82px)/1.09 var(--serif);letter-spacing:-.065em}.field-notes h1 em{color:#285543;font-weight:400;white-space:nowrap}.field-intro>p:not(.eyebrow){font-size:17px;line-height:1.8;margin-top:32px}.field-intro .text-link{color:#285543;margin-top:25px}.field-hero figure{display:flex;flex-direction:column;min-width:0}.workbench{height:100%;min-height:450px;max-height:590px;object-fit:cover;object-position:52% center;width:100%}.field-hero figcaption{font:italic 13px var(--serif);text-align:right;margin-top:10px;color:var(--muted)}.field-work{padding:55px var(--pad) 85px}.field-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.field-notes h2{font:400 clamp(38px,4.6vw,68px)/1.12 var(--serif);letter-spacing:-.04em}.field-notes h2 em{color:#285543}.field-heading>span{font-size:10px;color:var(--muted)}.field-projects{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:40px}.field-project{border-top:1px solid var(--line);padding-top:15px}.field-project-label{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.field-project-image{height:170px;display:flex;align-items:center;justify-content:center;background:#eeece3;margin:20px 0}.field-project-image img{width:85px;height:85px;border-radius:19px;transition:transform .3s}.field-project-image:hover img{transform:translateY(-8px) rotate(-5deg)}.field-project h3{font:400 23px/1.2 var(--serif);letter-spacing:-.04em}.field-project h3 a{display:flex;justify-content:space-between;gap:10px}.field-project .ui-icon{width:16px;height:16px;flex-basis:16px}.field-project>p{font-size:12px;line-height:1.8;margin-top:15px;color:var(--muted)}.field-about{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:70px var(--pad) 100px;background:#e9ede3}.field-about .eyebrow{font-family:var(--sans);font-size:10px;letter-spacing:.15em;margin-bottom:35px}.field-about-copy>p{font-size:15px;line-height:1.8;margin-bottom:20px}.field-about-copy>.large-copy{font:400 31px/1.3 var(--serif)}.field-about-copy dl{margin:30px 0}.field-about-copy dl>div{display:grid;grid-template-columns:120px 1fr;padding:14px 0;border-top:1px solid var(--line);font-size:12px}.field-about-copy dt{color:var(--muted)}.field-about-copy dd{margin:0}.field-notes .site-footer{border-top:0}.field-notes .footer-name{font-family:var(--serif);font-size:19px;font-weight:400}
/* Systems Lab: a real, bounded command interface with keyboard controls. */
.systems-lab{--paper:#060d1b;--ink:#f3f5f9;--muted:#9baac2;--line:#ffffff26;background:var(--paper);color:var(--ink)}.systems-lab .ui-icon{filter:invert(1)}.lab-cover{background:#051126 url('assets/lab.webp') center center/cover no-repeat}.systems-lab .site-header{min-height:85px;margin:0 var(--pad);padding-left:0;padding-right:0;border-bottom:1px solid #ffffff42}.systems-lab .site-header .mono{font-size:12px;letter-spacing:.2em}.systems-lab .site-header nav{font-family:var(--mono);font-size:11px}.lab-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5vw;align-items:start;padding:95px var(--pad) 80px;min-height:730px}.lab-intro>.eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:30px}.lab-intro h1{font-size:clamp(62px,7.7vw,118px);line-height:1.03;font-weight:500;letter-spacing:-.06em}.lab-intro>p:not(.eyebrow){font-size:15px;color:#c8d6ef;line-height:1.7;margin-top:24px}.lab-intro .button{margin-top:32px;background:#05112666}.lab-intro .button:hover{background:#183d8f}.terminal{margin-top:0;background:#030b19eb;border:1px solid #608bc2;border-radius:12px;box-shadow:0 18px 55px #0004;overflow:hidden;min-width:0;font-family:var(--mono);font-size:13px;line-height:1.8}.terminal-bar{display:flex;justify-content:space-between;gap:20px;padding:15px 22px;border-bottom:1px solid #ffffff24;color:#9fb6d9;font-size:10px}.terminal-intro{padding:24px 27px 10px}.terminal-intro p{margin-bottom:18px}.terminal-intro .prompt{font-size:12px}.prompt{color:#57d9ee}.terminal-output{max-height:190px;overflow:auto;overscroll-behavior:contain;padding:0 27px;scrollbar-width:thin}.terminal-output p{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:16px}.terminal-output .command-line{color:#57d9ee;font-size:11px;margin-bottom:5px}.terminal form{display:flex;align-items:center;gap:12px;margin:10px 24px 0;padding:15px 0;border-top:1px solid #ffffff24}.terminal input{width:100%;min-width:0;font-size:11px;border:0;background:transparent;color:white;line-height:1.5;border-radius:0}.terminal input::placeholder{color:#9baac2}.terminal form button{background:transparent;border:0;color:white;padding:4px;display:flex}.terminal-shortcuts{display:flex;gap:14px;align-items:center;padding:0 25px 18px;font-size:10px;color:#8fa8cb}.terminal-shortcuts button{border:0;border-bottom:1px solid #7c96b7;background:transparent;color:#bcd3f5;padding:3px 0}.terminal-shortcuts button:hover{color:white}.lab-caption{display:flex;justify-content:space-between;gap:30px;margin:0 var(--pad);padding:20px 0 30px;font-size:10px;border-top:1px solid #ffffff38;color:#c0cee4}.lab-caption a{display:flex;gap:18px;align-items:center}.systems-lab h2,.systems-lab .directory-title{font-size:clamp(40px,5vw,72px);line-height:1.1;letter-spacing:-.06em;font-weight:500}.lab-work .section-label,.lab-about .section-label{margin-bottom:35px}.lab-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:50px}.lab-project{border-top:1px solid #6b8cb8;padding:20px 0;display:flex;align-items:start;flex-direction:column;gap:22px}.lab-project>.mono{font-size:9px;letter-spacing:.04em;color:#9bb8e0}.lab-project>img{border-radius:12px}.lab-project h3{font-size:18px;line-height:1.35;font-weight:500;letter-spacing:-.03em}.lab-project>p{font-size:12px;line-height:1.8;color:#aebed4;flex:1}.lab-project .text-link{font-size:11px;border:0;color:#69d5f1;margin-top:5px}.lab-project:hover{border-top-color:#52d5f6}.lab-about{background:#10225a}.focus-explorer{display:grid;grid-template-columns:1fr 1.4fr;gap:10%;margin-top:50px}.focus-tabs{display:flex;flex-direction:column;align-items:stretch}.focus-tabs button{border:0;border-top:1px solid #ffffff36;padding:25px 8px;background:transparent;color:#c8d5ed;text-align:left;font-family:var(--mono);font-size:13px}.focus-tabs button[aria-selected=true]{color:#68e5f5;border-top-color:#68e5f5;background:#ffffff07}.focus-panel{min-height:300px}.focus-panel>.mono{color:#79d4f7;font-size:10px}.focus-panel h3{font-size:48px;font-weight:500;letter-spacing:-.04em;line-height:1.15;margin:20px 0}.focus-panel>p:not(.mono){font-size:14px;line-height:1.8;max-width:510px;color:#c3d3ec}.tech-tags{display:flex;flex-wrap:wrap;gap:18px;font-family:var(--mono);font-size:10px;margin-top:30px;color:#88c9fb}.systems-lab .site-footer{border-top:0}
/* Object Studio: product images stay real and the featured product can be changed. */
.object-studio{--paper:#f3f3ed;--ink:#301d3e;--muted:#776b80;--line:#dcd6dd;--pad:clamp(24px,4.1vw,72px)}.studio-wordmark{font-size:29px;letter-spacing:-.06em;font-weight:800}.object-studio .brand{gap:19px}.studio-brand-divider{color:#a599ab;font-weight:400}.studio-brand-sub{font-size:13px;color:var(--muted);font-weight:500}.object-studio .site-header{min-height:99px}.studio-hero{display:grid;grid-template-columns:.9fr 1.2fr;align-items:center;gap:3.3vw;padding:10px var(--pad) 65px;min-height:705px}.studio-intro{padding:40px 0}.studio-intro .eyebrow{font-family:var(--sans);font-size:9px;letter-spacing:.14em;color:#756281;margin-bottom:30px}.studio-intro h1{font-size:clamp(56px,6.5vw,102px);line-height:1.06;letter-spacing:-.065em;font-weight:700}.studio-intro>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:420px;margin:35px 0;color:var(--muted)}.plum{border-radius:100px;background:#321b43;color:white;min-width:225px}.plum .ui-icon{filter:invert(1)}.plum:hover{background:#5a3473}.studio-stage{background:#d5bfea;min-height:510px;aspect-ratio:1.12;display:flex;align-items:center;justify-content:center;position:relative;border-radius:16px;padding:42px 27px;overflow:hidden}.studio-stage>img{width:100%;height:auto;max-height:440px;object-fit:contain;border-radius:7px;box-shadow:0 18px 34px #301e4d2c;transition:opacity .15s}.studio-stage[data-product='1']{background:#d9e4e2}.studio-stage[data-product='1']>img,.studio-stage[data-product='2']>img{max-width:210px;height:450px;width:auto;object-fit:contain;border-radius:12px}.studio-stage[data-product='2']{background:#e8dec7}.stage-link{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #301d3e66;border-radius:50%;background:#ffffffb0}.showcase-caption{display:flex;justify-content:space-between;gap:16px;padding:17px 0 8px;font-size:10px;color:var(--muted)}.showcase-caption .mono{font-size:10px;letter-spacing:.05em;color:var(--ink)}.showcase-tabs{display:flex;align-items:stretch;gap:20px;font-size:11px;overflow:auto}.showcase-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:14px 0 11px;color:var(--muted);white-space:nowrap}.showcase-tabs button[aria-selected=true]{color:var(--ink);font-weight:700;border-bottom-color:var(--ink)}.studio-work{border-top:1px solid var(--line);padding-top:75px}.studio-section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px}.studio-section-heading .eyebrow{font-family:var(--sans);font-size:10px;margin-bottom:18px}.object-studio h2{font-size:clamp(40px,4.6vw,70px);font-weight:500;line-height:1.13;letter-spacing:-.05em}.studio-section-heading>p{font-size:13px;line-height:1.7;color:var(--muted);padding-bottom:6px}.studio-products{display:grid;grid-template-columns:1fr 1fr;gap:65px 36px;margin-top:45px}.studio-product-image{height:340px;display:flex;align-items:center;justify-content:center;border-radius:14px;padding:32px;background:#e2d9e9;overflow:hidden}.studio-product-image img{max-height:100%;object-fit:contain;border-radius:6px;box-shadow:0 12px 24px #29113920;transition:transform .3s}.studio-product-image:hover img{transform:translateY(-6px)}.studio-image-1{background:#dce6e2}.studio-image-2{background:#eee3c8}.studio-image-3{background:#dce0e8}.studio-product-title{display:flex;align-items:center;gap:16px;margin-top:24px}.studio-product-title>img{border-radius:10px}.studio-product-title>div{flex:1}.studio-product-title .eyebrow{font-family:var(--sans);font-size:9px;letter-spacing:.08em;color:var(--muted)}.studio-product h3{font-size:21px;font-weight:600;letter-spacing:-.04em;margin-top:3px}.studio-product>p{font-size:13px;line-height:1.7;color:var(--muted);margin:18px 0 0 64px;max-width:400px}.studio-about{background:#2e203b;color:#f3efe8}.studio-about>.eyebrow{color:#d3c0db;margin-bottom:45px}.studio-about>div{display:grid;grid-template-columns:1.2fr 1fr;gap:10%}.studio-about h2{font-size:clamp(40px,4.2vw,66px)}.studio-about h2 em{font-style:normal;color:#ceb5df}.studio-about .large-copy{font-size:23px;margin-bottom:23px}.studio-about p:not(.large-copy):not(.eyebrow){font-size:14px;line-height:1.8;color:#d0c3d7}.studio-about .text-link{margin-top:25px}.studio-about .ui-icon{filter:invert(1)}.studio-interests{border-top:1px solid #ffffff30;padding-top:30px;margin-top:65px}.object-studio .site-footer{border:0}
/* Shared responsive rules retain each concept's structure without horizontal overflow. */
@media(min-width:1600px){.horizon-intro{min-height:1024px}.horizon-hero{min-height:908px}.signal-hero{min-height:820px}.lab-hero{min-height:780px}}
@media(max-width:1100px){.brand-caption,.signal-brand-sub{display:none}.site-header nav{gap:22px}.horizon-hero{padding-top:80px}.horizon h1{font-size:11vw}.signal-hero{grid-template-columns:minmax(0,1fr) 250px;min-height:610px}.signal h1{font-size:12vw}.signal-intro{gap:27px}.signal-intro p{font-size:17px}.field-notes .brand{width:auto}.field-hero{grid-template-columns:20px 1fr 1fr;gap:23px;min-height:560px}.field-margin{padding-left:14px}.field-notes h1{font-size:5.2vw}.field-intro>p:not(.eyebrow){font-size:14px}.workbench{min-height:400px}.field-projects{gap:20px}.field-project h3{font-size:22px}.lab-hero{gap:35px;padding-top:70px;padding-bottom:65px;min-height:670px;grid-template-columns:1fr 1fr}.lab-intro h1{font-size:8vw}.lab-intro .eyebrow{font-size:9px}.terminal{font-size:11px}.terminal-intro{padding:22px 20px 10px}.terminal-intro .prompt{font-size:10px}.terminal form{margin-left:18px;margin-right:18px;gap:8px}.terminal input{font-size:10px}.lab-project-grid{grid-template-columns:repeat(2,1fr);gap:30px}.studio-hero{grid-template-columns:.9fr 1.1fr;min-height:650px;gap:25px}.studio-intro h1{font-size:6.6vw}.studio-intro .eyebrow{font-size:8px}.studio-intro>p:not(.eyebrow){font-size:15px}.studio-stage{min-height:420px;padding:30px 18px}.studio-stage[data-product='1']>img,.studio-stage[data-product='2']>img{height:350px}.showcase-tabs{gap:15px;font-size:9px}.studio-product-image{height:280px}}
@media(max-width:760px){.section-pad{padding:65px var(--pad)}.site-header{min-height:85px;padding-top:18px;padding-bottom:18px;gap:18px}.site-header nav{gap:16px;font-size:12px}.site-header nav a:nth-child(3){display:none}.brand{font-size:15px;gap:12px}.site-header nav .ui-icon{display:none}.site-footer{padding-top:30px;display:grid;grid-template-columns:1fr 1fr;font-size:11px;gap:20px}.site-footer>span{text-align:right}.site-footer>div{grid-column:1/-1;gap:24px}.section-label{align-items:start;margin-bottom:35px}.section-label>.mono{font-size:9px;text-align:right}.section-label .eyebrow{font-size:10px}.desktop-only{display:none}.preview-controls{bottom:12px;height:42px;padding:3px 6px;gap:0}.preview-controls a,.preview-controls button{width:30px;height:30px}.preview-controls>span{padding:0 6px;font-size:9px}.preview-controls b{font-size:10px;margin-left:6px}.app-row{grid-template-columns:20px 42px 1fr 20px;gap:14px;padding:24px 0}.app-icon{width:42px;height:42px;border-radius:9px}.app-row h3{font-size:20px}.app-row p{font-size:11px}.app-row .platform{display:none}.app-row .ui-icon{width:18px;height:18px}.app-row:hover{padding-left:0;padding-right:0}.horizon-intro{background-position:65% center;min-height:100svh}.horizon .site-header{min-height:92px}.monogram{font-size:29px}.horizon .site-header nav{gap:20px}.horizon-hero{min-height:calc(100svh - 92px);padding-top:70px;padding-bottom:30px;gap:65px;max-height:none}.horizon h1{font-size:clamp(73px,13vw,110px);letter-spacing:-.065em}.horizon .hero-copy>.eyebrow{font-size:8px;letter-spacing:.1em;max-width:220px}.hero-role{font-size:17px;margin-top:30px}.hero-summary{font-size:14px;max-width:295px}.copper{font-size:9px;min-height:50px;padding:13px 19px;gap:35px}.horizon-caption{font-size:8px;flex-wrap:wrap;gap:16px}.horizon-caption>span:first-child{display:none}.horizon-caption>span:nth-child(2){max-width:80%;line-height:2}.horizon-caption>a{margin-left:auto}.split-statement{grid-template-columns:1fr;gap:30px}.horizon h2{font-size:46px}.large-copy{font-size:21px}.split-statement .muted{font-size:14px}.horizon-skills{gap:24px;margin-top:45px;grid-template-columns:1fr}.horizon-skills>span{font-size:22px;display:flex;justify-content:space-between;align-items:baseline;gap:20px}.horizon-skills small{font-size:9px;margin:0}.horizon-contact h2{font-size:52px}.signal .site-header{min-height:85px;align-items:center}.signal .brand{font-size:13px;max-width:125px}.signal-hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:45px;gap:35px;min-height:0}.signal h1{font-size:clamp(59px,16.1vw,115px);letter-spacing:-.075em}.signal-intro{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-top:0}.signal-intro>.mono:first-child{display:none}.signal-intro>p{font-size:14px;grid-column:1/-1;max-width:330px;line-height:1.65}.signal-intro .button{font-size:12px;gap:22px;padding:12px 16px}.signal-intro>.mono:last-child{font-size:9px;align-self:center;text-align:right;line-height:2}.signal-section-head p{font-size:12px}.signal-section-head .mono{font-size:9px}.signal-project-title{padding:25px 0 20px}.signal-project h3{font-size:clamp(36px,8.6vw,60px);line-height:1.1}.signal-project-top .mono{font-size:9px}.signal-project-top .text-link{font-size:11px;gap:10px}.signal-project-bottom p{font-size:12px;max-width:250px}.signal-project-bottom>img{width:44px;height:44px}.signal-about>div{grid-template-columns:1fr;gap:35px}.signal-about h2{font-size:65px}.signal-interests{font-size:9px}.field-notes .site-header{min-height:85px}.field-wordmark{font-size:13px;letter-spacing:.08em;max-width:130px}.field-notes .site-header nav{font-size:11px;gap:16px}.field-hero{grid-template-columns:1fr;margin-top:18px;gap:25px;padding-bottom:30px;min-height:0}.field-margin{display:none}.field-intro{padding:25px 0 15px}.field-intro>.eyebrow{font-size:8px;margin-bottom:24px}.field-notes h1{font-size:clamp(45px,8.7vw,68px);line-height:1.1}.field-intro>p:not(.eyebrow){font-size:15px;margin-top:23px}.field-intro .text-link{font-size:13px;margin-top:17px}.workbench{min-height:0;height:290px;max-height:none;object-position:center}.field-hero figcaption{font-size:12px}.field-work{padding-top:36px;padding-bottom:55px}.field-heading{display:block}.field-notes h2{font-size:43px}.field-heading>span{display:block;font-size:9px;margin-top:16px}.field-projects{grid-template-columns:1fr 1fr;gap:35px 20px;margin-top:30px}.field-project-image{height:140px;margin:15px 0}.field-project-image img{width:65px;height:65px;border-radius:14px}.field-project h3{font-size:22px}.field-project h3 a{gap:6px}.field-project .ui-icon{width:13px;height:13px;flex-basis:13px}.field-project>p{font-size:11px;margin-top:12px}.field-project-label{font-size:8px}.field-about{grid-template-columns:1fr;gap:30px;padding-top:50px;padding-bottom:60px}.field-about .eyebrow{margin-bottom:25px;font-size:9px}.field-about-copy>.large-copy{font-size:27px}.field-about-copy>p{font-size:13px}.field-about-copy dl>div{font-size:11px;grid-template-columns:95px 1fr;gap:15px}.systems-lab .site-header{min-height:80px;gap:20px}.systems-lab .site-header .mono{font-size:9px;letter-spacing:.11em}.systems-lab .site-header nav{font-size:10px;gap:16px}.lab-hero{grid-template-columns:1fr;gap:38px;padding-top:45px;padding-bottom:40px;min-height:0}.lab-intro .eyebrow{font-size:8px;max-width:280px;margin-bottom:22px}.lab-intro h1{font-size:clamp(62px,13vw,90px)}.lab-intro>p:not(.eyebrow){font-size:12px;line-height:1.8}.lab-intro .button{min-height:49px;font-size:12px;margin-top:24px}.terminal{font-size:12px;min-width:0}.terminal-intro{padding:20px 20px 6px}.terminal-intro .prompt{font-size:10px}.terminal-bar{font-size:9px;padding:12px 20px}.terminal input{font-size:10px}.terminal-shortcuts{font-size:10px}.terminal-output{padding:0 20px}.lab-cover{background-position:68% center}.lab-caption{font-size:9px;line-height:1.8;gap:20px;padding-bottom:25px}.lab-caption>span{max-width:140px}.lab-caption a{gap:8px}.lab-project-grid{gap:26px 22px;margin-top:35px}.lab-project{gap:18px}.lab-project>.mono{font-size:8px}.lab-project h3{font-size:17px}.lab-project p{font-size:11px}.lab-project .text-link{font-size:10px;gap:15px}.lab-project .ui-icon{width:17px;height:17px}.systems-lab h2,.systems-lab .directory-title{font-size:43px}.focus-explorer{grid-template-columns:1fr;gap:30px;margin-top:35px}.focus-tabs button{padding:18px 4px;font-size:12px}.focus-panel h3{font-size:38px}.focus-panel>p:not(.mono){font-size:13px}.tech-tags{gap:15px;font-size:9px}.object-studio .site-header{min-height:85px}.studio-wordmark{font-size:26px}.studio-brand-divider,.studio-brand-sub{display:none}.object-studio .site-header nav{gap:20px;font-size:12px}.studio-hero{grid-template-columns:1fr;gap:25px;padding-top:10px;padding-bottom:45px;min-height:0}.studio-intro{padding:24px 0 10px}.studio-intro .eyebrow{font-size:8px;letter-spacing:.1em;margin-bottom:24px}.studio-intro h1{font-size:clamp(59px,12.5vw,94px);line-height:1.03}.studio-intro>p:not(.eyebrow){font-size:15px;line-height:1.8;margin:24px 0;max-width:330px}.plum{min-height:51px;min-width:205px;font-size:13px}.studio-stage{min-height:315px;aspect-ratio:1.06;padding:26px 20px;border-radius:12px}.studio-stage[data-product='1']>img,.studio-stage[data-product='2']>img{height:270px;max-width:130px}.stage-link{width:32px;height:32px;right:12px;bottom:12px}.stage-link .ui-icon{width:18px;height:18px}.showcase-caption{font-size:9px}.showcase-caption .mono{font-size:9px}.showcase-tabs{gap:17px;font-size:9px}.showcase-tabs button{padding-top:13px;padding-bottom:10px}.studio-section-heading{display:block}.object-studio h2{font-size:43px}.studio-section-heading>p{font-size:12px;margin-top:20px}.studio-products{grid-template-columns:1fr;gap:40px;margin-top:30px}.studio-product-image{height:285px;padding:28px}.studio-product h3{font-size:22px}.studio-product>p{font-size:12px;margin-left:0}.studio-product-title>img{width:42px;height:42px}.studio-about>div{grid-template-columns:1fr;gap:30px}.studio-about h2{font-size:42px}.studio-about .large-copy{font-size:21px}.studio-about p:not(.large-copy):not(.eyebrow){font-size:13px}.studio-interests{font-size:11px!important}.studio-about>.eyebrow{font-size:9px;margin-bottom:25px}}
@media(max-width:360px){.site-header nav{gap:11px}.site-header .brand{font-size:12px}.signal h1{font-size:15.9vw}.horizon h1{font-size:66px}.field-wordmark{font-size:11px}.field-notes .site-header nav{gap:12px}.field-notes h1{font-size:39px}.field-projects{gap:25px 15px}.field-project h3{font-size:20px}.studio-intro h1{font-size:55px}.showcase-tabs{gap:10px;font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.button:hover,.app-row:hover,.field-project-image:hover img,.signal-project-title:hover h3,.studio-product-image:hover img{transform:none}}

/* Visual QA refinements: keep identity visible and protect the console prompt. */
.horizon .hero-name{font-size:37px;letter-spacing:-.04em;margin-top:32px}
.horizon .hero-role{font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin:14px 0 25px;color:#c8bfb3}
.horizon-hero{padding-bottom:85px;gap:55px}
.terminal form>label{white-space:nowrap;flex:0 0 auto}
.terminal{font-size:14px}
.terminal input{font-size:12px}
.signal h1{font-size:clamp(72px,13.6vw,206px)}
@media(max-width:1100px){.signal h1{font-size:12vw}.terminal{font-size:12px}.terminal input{font-size:10px}}
@media(max-width:760px){.horizon .hero-name{font-size:27px;margin-top:28px}.horizon .hero-role{font-size:8px;letter-spacing:.11em;margin-top:11px;margin-bottom:22px}.horizon-hero{padding-top:42px;padding-bottom:72px;gap:42px}.terminal{font-size:12px}.terminal input{font-size:12px}.signal h1{font-size:clamp(59px,16.1vw,115px)}}
@media(max-width:360px){.signal h1{font-size:15.9vw}}
@media(max-width:760px){.signal-intro .button{gap:10px;white-space:nowrap}}

/* Very narrow screens must not inherit a showcase or word's intrinsic width. */
.studio-intro,.studio-showcase,.signal-project-title h3{min-width:0}
@media(max-width:760px){.studio-hero{grid-template-columns:minmax(0,1fr)}.signal-project-title{gap:15px}.signal-project-title h3{flex:1}}
.studio-stage{width:100%;max-width:100%}

/* Explain the local command field and keep footer privacy links readable. */
.terminal .terminal-privacy{padding:0 26px 18px;color:#b3c3c2;font-size:11px;line-height:1.7;overflow-wrap:anywhere}
.terminal .terminal-privacy a{text-decoration:underline;text-underline-offset:3px}
.site-footer>div{flex-wrap:wrap}
