/* Creative direction: a dark technical playground, with a quiet formal CV. */
:root {
  --paper: #0b0e14;
  --ink: #f0f1eb;
  --muted: #a0a7b1;
  --line: #2a303a;
  --lime: #b8f283;
  --sage: #151d24;
  --sans: 'Space Grotesk', 'Segoe UI', sans-serif;
  --serif: 'Syne', 'Segoe UI', sans-serif;
}
body { background: var(--paper); color: var(--ink); }
::selection { color: #0b0e14; background: var(--lime); }
h1, h2, h3 { font-family: var(--serif); }
h1, h2 { font-weight: 600; letter-spacing: -.055em; }
h1 em, h2 em { font-family: var(--serif); font-weight: 700; font-style: normal; font-size: 1em; letter-spacing: -.055em; color: var(--lime); }
a:focus-visible, button:focus-visible, summary:focus-visible, [tabindex]:focus-visible { outline-color: var(--lime); }
.section-wrap { width: min(1320px, calc(100% - 112px)); }
.site-nav { background: #0b0e14ed; backdrop-filter: blur(20px); border-color: #242b34; height: 88px; padding-inline: 48px; }
.wordmark { font-family: var(--sans); font-size: 48px; font-weight: 700; letter-spacing: -5px; }
.wordmark-dot { color: var(--lime); }
.wordmark-name { font: 9px/1.45 var(--mono); letter-spacing: .06em; margin-left: 19px; color: #c1c8cd; }
.desktop-nav { gap: 30px; font-size: 12px; margin-right: 35px; }
.desktop-nav a:hover, .text-link:hover, .site-footer a:hover { color: var(--lime); }
.nav-actions { gap: 23px; }
.mode-switch { border-color: #303a42; border-radius: 30px; padding: 4px; font-size: 10px; }
.mode-switch a { border-radius: 20px; padding: 7px 12px; }
.mode-switch a[aria-current] { background: #28332b; color: var(--lime); }
.nav-contact { padding: 11px 16px; border: 1px solid var(--lime); border-radius: 4px; font-size: 11px; color: var(--lime); }
.nav-contact:hover { background: var(--lime); color: #111610; }
.button { font-size: 13px; border-radius: 4px; padding: 17px 22px; gap: 38px; }
.button span { transition: transform .2s; }
.button:hover span { transform: translate(3px, -3px); }
.button-lime { background: var(--lime); color: #122012; }
.button-dark { background: #edf3e8; color: #0e1410; }
.button-dark:hover { background: var(--lime); }
.text-link { font-size: 12px; border-color: #53604e; }
.eyebrow { font-size: 10px; color: #c6d0bc; letter-spacing: .05em; }
.status-dot { background: var(--lime); box-shadow: 0 0 12px #b8f28355; }
.creative-hero { padding-top: 31px; padding-bottom: 30px; }
.hero-topline { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.hero-topline .eyebrow { display: flex; align-items: center; gap: 10px; font-size: 9px; }
.hero-coordinate { color: #7e8994; font: 9px var(--mono); }
.creative-hero-grid { display: grid; grid-template-columns: 1.12fr 1fr; align-items: center; gap: 20px; min-height: 660px; padding-block: 32px 55px; }
.hero-name { font-size: 15px; color: #b4bec5; margin-bottom: 22px; }
.creative-hero h1 { font-size: clamp(74px, 7.6vw, 116px); line-height: .98; font-weight: 700; letter-spacing: -.07em; position: relative; }
.creative-hero h1 em { color: var(--lime); letter-spacing: -.065em; display: inline-block; }
.hero-title-spark { display: inline-block; color: var(--lime); font: 66px/1 var(--sans); margin-left: 26px; vertical-align: 15px; }
.hero-description { color: #a5afb8; font-size: 14px; line-height: 1.9; max-width: 460px; margin-top: 25px; }
.hero-description a, .hero-description strong { color: #e4e9df; font-weight: 500; }
.hero-description a { border-bottom: 1px solid #647c58; }
.creative-hero .hero-actions { margin-top: 28px; flex-direction: row; align-items: center; gap: 27px; }
.hero-role-caption { font: 8px var(--mono); color: #7b8a81; letter-spacing: .09em; margin-top: 25px; }
.orbit-stage { height: 555px; width: 100%; position: relative; --orbit-color: 174,249,144; }
.orbit-stage::before { content: ''; position: absolute; inset: 12px 0 50px; background-image: linear-gradient(#a2c88a09 1px,transparent 1px),linear-gradient(90deg,#a2c88a09 1px,transparent 1px); background-size: 39px 39px; mask-image: radial-gradient(ellipse,#000 30%,transparent 72%); }
#system-orbit { position: absolute; inset: 0; width: 100%; height: 100%; }
.orbit-kicker { position: absolute; top: 0; left: 50%; transform: translateX(-50%); white-space: nowrap; font: 8px var(--mono); letter-spacing: .07em; color: #7b8d82; }
.orbit-center { position: absolute; top: 43%; left: 50%; transform: translate(-50%,-50%); text-align: center; width: 145px; height: 145px; border-radius: 50%; background: radial-gradient(circle,#111b17ee 10%,#0b0e14b3 55%,transparent 72%); display: flex; flex-direction: column; justify-content: center; }
.orbit-center>span { font: 700 83px/.95 var(--serif); color: #d3f7b6; letter-spacing: -.08em; }
.orbit-center small { font: 7px var(--mono); color: #8eaa80; letter-spacing: .16em; margin-top: 9px; }
.orbit-label { position: absolute; background: #111a18e8; border: 1px solid #344439; border-radius: 4px; font: 8px/1 var(--mono); color: #c5dfb3; padding: 12px; box-shadow: 0 10px 25px #0003; }
.orbit-label-one { top: 20%; left: 0; transform: rotate(-7deg); }
.orbit-label-two { top: 43%; right: -3px; transform: rotate(7deg); color: #a8d7ee; border-color: #314653; }
.orbit-label-three { top: 65%; left: 10%; transform: rotate(-5deg); color: #efb89b; border-color: #5c4335; }
.orbit-controls { display: flex; justify-content: center; gap: 5px; position: absolute; bottom: 70px; left: 50%; transform: translateX(-50%); border: 1px solid #2b3734; padding: 4px; border-radius: 25px; background: #101715; white-space: nowrap; }
.orbit-controls button { background: transparent; border-radius: 20px; font-size: 10px; padding: 7px 12px; color: #9caca4; }
.orbit-controls button[aria-pressed=true] { color: #c6eca9; background: #293c2c; }
.orbit-readout { position: absolute; bottom: 12px; left: 6%; right: 6%; display: flex; align-items: center; gap: 10px; border: 1px solid #2c3736; background: #121916f0; padding: 13px; border-radius: 5px; }
.readout-led { width: 5px; height: 5px; border-radius: 50%; background: rgb(var(--orbit-color)); box-shadow: 0 0 10px rgba(var(--orbit-color),.5); flex-shrink: 0; }
.orbit-readout p { font: 8px/1.65 var(--mono); color: #b1c1b7; margin: 0; }
.orbit-readout button { margin-left: auto; background: #26342c; border-radius: 3px; color: #b8cfac; width: 24px; height: 23px; font-size: 11px; flex-shrink: 0; }
.orbit-hint { position: absolute; left: 50%; bottom: -13px; transform: translateX(-50%); color: #687c71; font: 7px var(--mono); white-space: nowrap; }
.hero-credits { display: grid; grid-template-columns: 1fr 1.2fr 1fr 1fr; gap: 45px; align-items: center; border-top: 1px solid #26312d; padding: 25px 0 17px; }
.hero-credits>span { font: 8px/1.8 var(--mono); color: #77857e; }
.hero-credits>a { font-size: 25px; letter-spacing: -.035em; font-weight: 500; }
.hero-credits>a:nth-of-type(1) { font-family: Georgia,serif; letter-spacing: .05em; font-size: 26px; }
.hero-credits>a:last-child { font: 12px var(--sans); letter-spacing: -.01em; }
.hero-credits small { display: block; font: 7px/1.8 var(--mono); letter-spacing: .03em; color: #78887d; margin-top: 7px; }

.kinetic-strip { overflow: hidden; background: var(--lime); color: #172319; padding: 16px 0; margin: 25px 0 0; transform: rotate(-1deg); }
.kinetic-strip>div { width: max-content; white-space: nowrap; font: 700 22px/1 var(--serif); letter-spacing: -.02em; animation: run-type 45s linear infinite; }
.kinetic-strip span { margin: 0 32px; }
@keyframes run-type { to { transform: translateX(-50%); } }
.motion-paused .kinetic-strip>div { animation-play-state: paused; }
.work-section { padding-top: 95px; padding-bottom: 65px; }
.section-heading { margin-bottom: 32px; }
.section-heading h2 { font-size: clamp(34px,4.1vw,62px); line-height: 1.08; }
.section-heading>p { font-size: 13px; color: #8e9caa; }
.section-heading .eyebrow { margin-bottom: 22px; color: #92ad7e; }
.work-filters { border-bottom: 0; gap: 8px; padding-bottom: 0; margin: 32px 0 30px; }
.work-filters button { font-size: 11px; border-color: #354139; padding: 10px 16px; }
.work-filters button[aria-pressed=true] { background: var(--lime); color: #172416; border-color: var(--lime); }
.work-filters button:hover { border-color: #8bb570; }
.project-list { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.visual-project { display: block; grid-template-columns: none; padding: 0; gap: 0; border: 1px solid #28313a; border-radius: 12px; background: #11161d; overflow: hidden; transition: border-color .2s,transform .25s; scroll-margin-top: 115px; }
.visual-project:hover { border-color: #687b58; transform: translateY(-3px); }
.project-art { height: 300px; position: relative; overflow: hidden; color: #182128; }
.project-main { padding: 26px 28px 29px; }
.project-meta { display: flex; justify-content: space-between; align-items: start; gap: 15px; margin-bottom: 14px; }
.project-context { font: 8px/1.6 var(--mono); color: #93a5a0; margin: 0; }
.project-meta>span { font: 8px var(--mono); color: #6a7d75; }
.project h3 { font-size: 27px; font-weight: 600; line-height: 1.14; letter-spacing: -.045em; }
.project-main>p:not(.project-context) { font-size: 13px; line-height: 1.85; color: #9ca9b0; margin-top: 15px; max-width: 550px; }
.project-tags { margin: 18px 0 19px; gap: 7px; }
.project-tags span { font-size: 9px; border-color: #303d3c; color: #b2c0b6; padding: 5px 8px; }
.project summary { font-size: 11px; color: #d3e0c9; border-color: #5b7052; padding-bottom: 5px; }
.case-body h4 { color: #b2d995; margin-top: 20px; }
.case-body p { font-size: 12px; color: #a5b1bd; }
.case-body .evidence-note { background: #1b2920; border-color: #91bb6d; font-size: 9px; color: #b6c4ad; }
.project-link { font-size: 11px; border-color: #5b7052; color: #d3e0c9; padding-bottom: 5px; }
.project details+.project-link { margin-top: 18px; }
.project-wide { grid-column: 1/-1; display: grid; grid-template-columns: 1.15fr 1fr; }
.project-wide .project-art { height: 100%; min-height: 365px; }
.project-wide .project-main { padding: 38px; align-self: center; }
.project-wide h3 { font-size: 34px; }
.visual-note { position: absolute; bottom: 13px; left: 20px; font: 7px/1.5 var(--mono); letter-spacing: .035em; opacity: .7; }
.art-sunrise { background: #ff946f; }






.art-wuf { background: #bed8b2; }
.art-wuf::before { content: ''; width: 270px; height: 270px; border: 1px solid #638c5d40; border-radius: 50%; position: absolute; left: -100px; top: -60px; box-shadow: 0 0 0 40px #638c5d0d,0 0 0 80px #638c5d0b; }
.phone { width: 232px; height: 335px; position: absolute; border: 7px solid #203529; border-radius: 29px; background: #f3f6eb; box-shadow: 16px 20px 35px #29482930; overflow: hidden; font-family: var(--sans); }
.phone-wuf { top: 24px; left: calc(50% - 110px); transform: rotate(-9deg); }
.phone-top { background: #25442f; color: #fff; display: flex; gap: 10px; align-items: center; padding: 20px 12px 12px; font-size: 13px; }
.phone-top small { display: block; font-size: 7px; color: #d8e5d1; }

.phone-top i { width: 5px; height: 5px; background: #b7ee93; border-radius: 50%; margin-left: auto; }
.chat-date { text-align: center; font: 6px var(--mono); color: #6b776b; margin: 14px 0 11px; }
.chat-bubble { font-size: 10px; line-height: 1.55; padding: 10px 12px; margin: 0 12px 9px; border-radius: 8px; max-width: 175px; }
.chat-user { background: #dcf2cb; margin-left: 30px; }
.chat-agent { background: #fff; border: 1px solid #dfe7d9; }
.agent-tools { display: flex; justify-content: center; gap: 5px; }
.agent-tools span { font: 6px var(--mono); border: 1px solid #bbcdb0; border-radius: 8px; padding: 3px 6px; color: #59704c; }
.chat-input { margin: 13px 10px; background: #fff; border: 1px solid #d1dcc9; border-radius: 14px; font-size: 8px; color: #839177; padding: 8px 10px; }
.chat-input b { float: right; color: #365f30; }
.art-inventory { background: #bdd1ed; }
.stock-top { display: flex; justify-content: space-between; padding: 22px; font: 8px var(--mono); color: #314968; align-items: center; }
.qa-chip { border: 1px solid #6e90b5; border-radius: 20px; padding: 5px 8px; font-size: 7px; }
.warehouse-grid { display: grid; grid-template-columns: repeat(3,45px); grid-template-rows: repeat(3,45px); gap: 8px; position: absolute; right: 55px; top: 75px; transform: rotateX(52deg) rotateZ(-35deg); transform-style: preserve-3d; }
.warehouse-grid i { background: #e1ecfa; border: 1px solid #7393b8; box-shadow: -8px 8px 0 #6d8fb8,-9px 9px 0 #466f9d; border-radius: 2px; transform: translateZ(calc(var(--i) * 1px)); }
.inventory-stat { position: absolute; left: 26px; top: 104px; }
.inventory-stat strong { font: 600 60px/1 var(--sans); letter-spacing: -.08em; color: #263f65; }
.inventory-stat>span { display: block; font: 8px var(--mono); color: #4b6585; margin-top: 11px; }
.stock-flow { position: absolute; bottom: 24px; left: 25px; right: 25px; display: flex; align-items: center; gap: 18px; font: 10px var(--mono); }
.stock-flow span { border: 1px solid #7b99bb; border-radius: 4px; background: #dce7f7; padding: 7px 16px; }
.stock-flow b { color: #6c8db4; }
.art-tracksip { background: #e4bfd4; }


.phone-tracksip { top: 37px; left: calc(50% - 100px); transform: rotate(9deg); background: #fcf5fa; border-color: #5d3b54; color: #4b3044; padding: 23px 17px 0; }
.phone-notch { position: absolute; top: 5px; left: 50%; transform: translateX(-50%); width: 65px; height: 12px; background: #5d3b54; border-radius: 12px; }
.phone-tracksip>small { font: 6px var(--mono); color: #9c7893; }
.phone-tracksip h4 { font: 600 25px/1.1 var(--serif); letter-spacing: -.05em; margin-top: 12px; }
.drink-ring { border: 10px solid #e4c2d8; border-right-color: #916c94; width: 100px; height: 100px; border-radius: 50%; display: grid; place-items: center; margin: 18px auto 13px; transform: rotate(-25deg); }
.drink-ring span { font: 36px var(--serif); color: #a67ca8; }
.drink-stats { display: flex; justify-content: space-between; font: 7px var(--sans); color: #86697e; }
.drink-action { border-radius: 14px; background: #5d3b54; color: #f9ecf4; text-align: center; padding: 9px; font-size: 9px; margin-top: 17px; }
.art-reports { background: #d5c8ec; padding: 20px 35px; }
.report-numbers { display: flex; gap: 23px; justify-content: center; color: #493b68; }
.report-numbers>span { font: 600 71px/1.1 var(--serif); letter-spacing: -.08em; }
.report-numbers small { font: 7px var(--mono); display: block; letter-spacing: .04em; margin-top: 4px; }
.report-sheet { background: #f5f0ff; color: #4a405f; margin-top: 18px; border: 1px solid #b4a0d1; padding: 13px 17px; transform: rotate(-3deg); border-radius: 5px; box-shadow: 5px 5px 0 #c2b0df; }
.report-sheet>div { display: flex; justify-content: space-between; font: 7px var(--mono); border-bottom: 1px solid #d6cbe6; padding-bottom: 10px; margin-bottom: 4px; }
.report-sheet p { font: 8px/1.2 var(--sans); padding: 7px 0; display: flex; align-items: center; gap: 8px; }
.report-sheet p>i { width: 5px; height: 5px; border-radius: 50%; background: #8ba87f; }
.report-sheet p>span { margin-left: auto; font: 7px var(--mono); color: #9c8db0; }
.art-commissions { background: #d8eb96; }
.rule-orbit { position: absolute; width: 225px; height: 225px; border: 1px solid #91a95566; border-radius: 50%; top: 15px; left: calc(50% - 112px); }
.rule-center { position: absolute; inset: 47px; border: 1px solid #9eb55b; background: #e8f3c8; border-radius: 50%; font: 600 71px/1 var(--serif); text-align: center; padding-top: 13px; color: #53682c; }
.rule-center small { font: 6px var(--mono); display: block; margin-top: 5px; }
.rule-orbit>i { font: 8px var(--mono); font-style: normal; position: absolute; background: #d8eb96; border: 1px solid #8ba34b; border-radius: 12px; padding: 6px 12px; color: #50602f; }
.rule-orbit>i:nth-of-type(1) { left: -15px; top: 39px; }.rule-orbit>i:nth-of-type(2) { right: -32px; top: 49px; }.rule-orbit>i:nth-of-type(3) { left: -14px; bottom: 34px; }.rule-orbit>i:nth-of-type(4) { right: -20px; bottom: 22px; }
.decision-pill { position: absolute; bottom: 25px; left: 50%; transform: translateX(-50%); background: #f3f8df; border: 1px solid #a1b869; border-radius: 4px; padding: 11px 18px; font: 9px var(--sans); white-space: nowrap; }
.decision-pill>span { margin-right: 10px; color: #6d863d; }
.art-delivery { background: #17241f; color: #c5e1b4; padding: 25px 30px; }
.terminal-top { display: flex; align-items: center; gap: 5px; padding-bottom: 20px; border-bottom: 1px solid #3b4b40; }
.terminal-top>i { width: 6px; height: 6px; border-radius: 50%; background: #586b5b; }
.terminal-top>span { margin-left: auto; font: 8px var(--mono); color: #839b84; }
.terminal-body { padding: 18px 0 10px; font: 12px/1.7 var(--mono); }
.terminal-body p { margin-bottom: 10px; }.terminal-body p>span { color: #5e7866; margin-right: 15px; }.terminal-body b { color: #b8f283; margin-right: 4px; }.terminal-body i { color: #b8f283; font-style: normal; }.terminal-comment { color: #6f8e77; font-size: 8px; margin: 17px 0 0 34px; }
.art-retrieval { background: #b9c5e2; }
.doc-stack { width: 170px; height: 185px; position: absolute; top: 30px; left: calc(50% - 82px); }
.doc-stack>div { position: absolute; inset: 0; background: #e0e8f5; border: 1px solid #819bc1; border-radius: 4px; transform: rotate(12deg); }.doc-stack>div:nth-child(2) { transform: rotate(-9deg); background: #d0dcf0; }.doc-stack>div:last-child { transform: rotate(0deg); background: #f0f4fb; padding: 22px; }.doc-stack span { font: 34px var(--serif); color: #6e83b4; }.doc-stack i,.doc-stack b { display: block; height: 3px; background: #bdcce4; margin-top: 10px; }.doc-stack i:nth-of-type(2) { width: 85%; }.doc-stack b { background: #bdcc88; height: 14px; margin-top: 12px; }
.search-visual { position: absolute; bottom: 38px; left: 12%; right: 12%; border: 1px solid #8ba2c6; box-shadow: 7px 7px 0 #8ba2c633; background: #f9fbff; border-radius: 4px; padding: 14px 17px; font: 11px var(--sans); color: #5b7194; }.search-visual>span { font-size: 21px; margin-right: 12px; line-height: 10px; vertical-align: -2px; }.search-visual>b { float: right; }
.art-research { background: #f1c69f; padding: 22px 26px; color: #7e5031; }.science-equation { font: 500 47px var(--serif); letter-spacing: -.06em; margin-top: 16px; }.science-equation>span { color: #ac7546; }.science-plot { position: absolute; left: 7%; width: 86%; bottom: 40px; height: 140px; }
.work-note { font: 9px/1.8 var(--mono); color: #819187; margin-top: 25px; max-width: 900px; }
.system-lab { border: 1px solid #354337; background: #131c17; border-radius: 8px; margin-top: 34px; overflow: hidden; }
.system-lab>summary { display: flex; align-items: center; gap: 20px; cursor: pointer; padding: 23px 28px; list-style: none; }.system-lab>summary::-webkit-details-marker { display: none; }.lab-icon { color: var(--lime); font-size: 28px; }.system-lab>summary strong { display: block; font-size: 15px; font-weight: 500; }.system-lab>summary div>span { display: block; margin-top: 3px; font-size: 11px; color: #8da084; }.system-lab>summary>b { margin-left: auto; font-size: 25px; font-weight: 400; color: #8daa78; }.system-lab[open]>summary>b { transform: rotate(45deg); }
.system-window { transform: none; background: #131c17; border: 0; border-top: 1px solid #354337; border-radius: 0; box-shadow: none; }
.system-tabs { padding: 18px 28px 0; }.system-tabs button { color: #afc1a4; font-size: 10px; padding: 10px 15px; }.system-tabs button[aria-selected=true] { background: #293e26; color: #c9eab4; border-color: #526a45; }.system-tabs button:hover { background: #233622; }
.system-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; padding: 28px 40px 35px; }.system-panel h2 { font: 600 35px/1.1 var(--serif); color: #d8e5ce; min-height: 0; margin: 17px 0; }.tiny-label { font-size: 8px; color: #91ac7f; }.system-result { border-color: #41503b; color: #cbdeb9; max-width: 370px; }.system-result>span:nth-child(2) { color: #8ea880; font-size: 10px; }.system-note { color: #9dad95; font-size: 9px; }.architecture { padding: 5px 0 0; }.flow-node { background: #202f22; border-color: #48613d; color: #d3e3c4; font-size: 12px; }.flow-node small { color: #93ad83; font-size: 8px; }.flow-node-core { background: #b8f283; color: #283c1c; padding: 13px; }.flow-node-core small { color: #486b34; }.flow-node-output { background: #2a4228; border-color: #5b8348; }.flow-node-output strong { font-size: 12px; }.flow-node-output small { font-size: 9px; }
.approach-section { background: #121920; border-color: #27323b; padding: 75px 0; }.approach-grid { gap: 35px; }.approach-grid article { border-color: #3b4b3e; }.approach-grid article>span { color: #93b87b; }.approach-grid h3 { font-size: 23px; }.approach-grid p { color: #97a7b3; font-size: 13px; max-width: 350px; }
.about-section { padding-block: 95px; gap: 90px; }.about-main h2 { font-size: 50px; }.about-main>p:not(.eyebrow) { font-size: 14px; color: #a1aeb8; max-width: 480px; }.about-main p a { color: #cce9b7; border-bottom: 1px solid #536b45; }.about-links { display: flex; gap: 27px; margin-top: 25px; }.language-note { font: 500 29px var(--sans); }.language-note span { color: #8c9e8d; font-size: 9px; margin-top: 7px; }.human-board { background: #131c24; border-color: #354137; border-radius: 10px; padding: 23px 27px 35px; }.board-heading { color: #8ca47c; font-size: 8px; }.human-item { border-color: #303e35; padding: 24px 0; }.human-icon { color: #b4d692; font-size: 32px; }.human-item strong { color: #dce6d8; font-size: 14px; font-weight: 500; }.human-item p { color: #91a1ad; font-size: 12px; }.board-sticker { color: #24371c; width: 160px; font: 600 20px/1.15 var(--serif); padding: 19px 27px 19px 18px; border-color: #a1bf77; border-radius: 3px; }.board-sticker em { font-style: normal; }.board-sticker span { font-family: var(--sans); }
.toolkit-section { padding-block: 55px 70px; grid-template-columns: 1fr 1.3fr; gap: 70px; }.toolkit-section h2 { font-size: 44px; }.toolkit-rows>div { grid-template-columns: 100px 1fr; }.toolkit-rows h3 { font-size: 12px; color: #c9dfb6; }.toolkit-rows p { color: #96a7ad; font-size: 11px; }.toolkit-rows>.text-link { margin-top: 18px; font-size: 10px; }
.contact-section { background: #b8f283; color: #172412; padding-block: 75px 85px; }.contact-section .eyebrow { color: #496f32; font-size: 9px; }.contact-layout { grid-template-columns: 1.25fr 1fr; gap: 90px; }.contact-layout h2 { font-size: 80px; font-weight: 700; }.contact-layout h2 em { color: #496c36; }.contact-layout h2>span { color: #263e1a; font-family: var(--sans); font-size: 59px; right: 0; }.contact-layout>div>p { color: #456233; font-size: 14px; max-width: 390px; }.contact-section .button-dark { background: #1c2e16; color: #dbf7c5; }.contact-section .button-dark:hover { background: #314a25; }.email-row { font-size: 11px; }.email-row>button { color: #456432; border-color: #7ca256; font-size: 9px; }.contact-layout>div>.copy-status { color: #315c21; font-size: 10px; margin-bottom: 0; min-height: 18px; }.phone-link { display: inline-block; font-size: 11px; color: #41662e; margin-top: 10px; border-bottom: 1px solid #83ab5d; padding-bottom: 3px; }
.site-footer { padding-block: 30px; font-size: 10px; }.site-footer>div { font-size: 10px; gap: 23px; }.footer-name { font-size: 12px; }.site-footer>span { color: #6f8676; }
/* The formal document stays on white paper, including its print export. */
.resume-page { background: #0d1219; }.resume-toolbar p,.resume-end { color: #a1b09e; }.button-outline { color: #c5d8b9; border-color: #4d6742; }.resume-document { border-color: #334037; box-shadow: 0 18px 75px #0002; }.cv-header h1 { color: #20241f; font-family: Georgia,'Times New Roman',serif; letter-spacing: .015em; }.cv-section h2 { color: #20241f; font-family: Georgia,'Times New Roman',serif; }.cv-job h3,.cv-education h3 { font-family: Georgia,'Times New Roman',serif; }.resume-toolbar>div { flex-wrap: wrap; justify-content: flex-end; }.resume-toolbar .button { padding: 12px 16px; font-size: 11px; }.cv-project { margin-top: 12px; }.cv-project h3 { font: bold 12px Georgia,serif; }.cv-project p,.cv-project li { font-size: 10.5px; line-height: 1.5; }.cv-project ul { padding-left: 16px; }.cv-certifications p { font-size: 10.5px; margin-top: 3px; }.experience-intro h1 em { color: var(--lime); }.experience-intro>p:not(.eyebrow),.experience-row ul { color: #a4b0ba; }.experience-row h3 { color: #adc891; }.experience-links a { color: #cce1b9; }.skill-proof { background: #141e25; border-color: #354236; }.skill-proof .eyebrow { color: #adc891; }.skill-proof p { color: #a6b1bb; }
@media(min-width:1600px) { .creative-hero-grid { min-height: 740px; }.creative-hero h1 { font-size: 124px; }.orbit-stage { height: 630px; } }
@media(max-width:1150px) { .section-wrap { width: calc(100% - 72px); }.site-nav { padding-inline: 30px; }.desktop-nav { gap: 18px; margin-right: 16px; font-size: 11px; }.nav-actions { gap: 15px; }.wordmark-name { font-size: 8px; }.creative-hero-grid { min-height: 610px; gap: 10px; }.creative-hero h1 { font-size: 88px; }.hero-title-spark { font-size: 50px; margin-left: 15px; vertical-align: 12px; }.hero-description { font-size: 13px; max-width: 395px; }.hero-actions .button { padding: 15px 18px; font-size: 11px; gap: 25px; }.creative-hero .hero-actions { gap: 20px; }.orbit-stage { height: 485px; }.orbit-label { font-size: 7px; padding: 9px; }.orbit-label-two { right: -6px; }.orbit-readout { left: 0; right: 0; }.hero-credits { gap: 24px; }.hero-credits>a { font-size: 23px; }.project-main { padding: 24px; }.project h3 { font-size: 25px; }.project-wide .project-main { padding: 28px; }.project-wide h3 { font-size: 29px; }.warehouse-grid { right: 34px; grid-template-columns: repeat(3,36px); grid-template-rows: repeat(3,36px); }.inventory-stat strong { font-size: 50px; }.inventory-stat { left: 23px; }.stock-flow { gap: 12px; }.stock-flow span { padding-inline: 13px; }.about-section { gap: 55px; }.about-main h2 { font-size: 44px; }.contact-layout { gap: 65px; }.contact-layout h2 { font-size: 65px; }.contact-layout h2>span { font-size: 50px; right: -5px; }.toolkit-section h2 { font-size: 38px; } }
@media(max-width:900px) { .desktop-nav { display: none; }.creative-hero-grid { grid-template-columns: 1.05fr 1fr; min-height: 570px; padding-block: 40px; }.creative-hero h1 { font-size: 72px; }.hero-name { font-size: 12px; margin-bottom: 18px; }.hero-description { font-size: 12px; }.creative-hero .hero-actions { align-items: start; flex-direction: column; gap: 18px; }.hero-role-caption { font-size: 7px; }.orbit-stage { height: 440px; }.orbit-label-one { left: -6px; }.orbit-label-three { left: 5%; }.orbit-controls { bottom: 65px; }.orbit-controls button { font-size: 8px; padding: 7px 10px; }.orbit-readout { font-size: 7px; padding: 10px; }.orbit-readout p { font-size: 7px; }.orbit-center { width: 100px; height: 100px; }.orbit-center>span { font-size: 65px; }.orbit-center small { font-size: 6px; }.orbit-kicker { font-size: 6px; }.orbit-hint { font-size: 6px; }.hero-topline .eyebrow { font-size: 7px; }.hero-coordinate { font-size: 7px; }.hero-credits { gap: 20px; grid-template-columns: 1fr 1.3fr 1fr; }.hero-credits>a:last-child { display: none; }.hero-credits>a:nth-of-type(1) { font-size: 23px; }.project-art { height: 265px; }.project-list { gap: 20px; }.project-wide .project-art { min-height: 350px; }.project h3 { font-size: 23px; }.project-wide h3 { font-size: 26px; }.project-main>p:not(.project-context) { font-size: 12px; }.project-context { font-size: 7px; }.project-main { padding: 21px; }.project-wide .project-main { padding: 23px; }.project-tags span { font-size: 8px; }.warehouse-grid { grid-template-columns: repeat(3,28px); grid-template-rows: repeat(3,28px); gap: 7px; right: 25px; top: 80px; }.inventory-stat { top: 95px; left: 20px; }.inventory-stat strong { font-size: 42px; }.inventory-stat>span { font-size: 6px; }.stock-top { padding: 17px; font-size: 7px; }.qa-chip { font-size: 6px; }.stock-flow { gap: 8px; left: 17px; right: 17px; font-size: 9px; }.stock-flow span { padding-inline: 11px; }.phone { width: 210px; }.phone-wuf { left: calc(50% - 100px); top: 20px; }.phone-tracksip { left: calc(50% - 85px); top: 40px; }.report-numbers>span { font-size: 62px; }.art-reports { padding: 16px 25px; }.report-sheet { padding: 11px 12px; margin-top: 13px; }.report-sheet p { padding-block: 6px; font-size: 7px; }.rule-orbit { width: 200px; height: 200px; left: calc(50% - 100px); top: 10px; }.rule-center { inset: 42px; font-size: 61px; }.decision-pill { bottom: 18px; font-size: 8px; padding: 9px 13px; }.art-delivery { padding: 23px; }.terminal-body { font-size: 10px; }.terminal-body p>span { margin-right: 10px; }.terminal-comment { margin-left: 24px; font-size: 7px; }.science-equation { font-size: 36px; }.visual-note { font-size: 6px; left: 17px; bottom: 10px; }.science-plot { bottom: 27px; }.about-main h2 { font-size: 38px; }.about-section { gap: 35px; padding-block: 70px; }.about-main>p:not(.eyebrow) { font-size: 12px; }.human-board { padding-inline: 20px; }.human-item { padding-block: 20px; gap: 13px; }.human-item strong { font-size: 12px; }.human-item p { font-size: 10px; }.approach-grid h3 { font-size: 20px; }.approach-grid p { font-size: 12px; }.contact-layout { gap: 45px; }.contact-layout h2 { font-size: 54px; }.contact-layout h2>span { font-size: 38px; right: -8px; }.contact-layout>div>p { font-size: 12px; }.toolkit-section { gap: 40px; }.toolkit-section h2 { font-size: 32px; }.toolkit-rows>div { grid-template-columns: 80px 1fr; }.toolkit-rows p { font-size: 10px; }.system-panel { gap: 30px; padding: 24px; }.system-panel h2 { font-size: 29px; }.system-tabs { padding-left: 20px; }.system-tabs button { font-size: 9px; }.system-result>span:nth-child(2) { font-size: 8px; }.system-note { font-size: 8px; } }
@media(max-width:650px) {
  .section-wrap { width: calc(100% - 40px); }.site-nav { height: 76px; padding-inline: 20px; }.wordmark { font-size: 39px; }.wordmark-name { display: none; }.nav-actions { gap: 11px; }.mode-switch { font-size: 9px; }.mode-switch a { padding: 6px 8px; }.nav-contact { font-size: 9px; padding: 9px 11px; }.nav-contact span { margin-left: 5px; }.creative-hero { padding-top: 22px; padding-bottom: 20px; }.hero-topline .eyebrow { font-size: 6.5px; letter-spacing: 0; gap: 8px; }.hero-coordinate { display: none; }.creative-hero-grid { grid-template-columns: 1fr; padding-top: 32px; padding-bottom: 25px; gap: 30px; }.creative-hero h1 { font-size: clamp(67px,17vw,105px); line-height: .98; }.hero-name { font-size: 13px; margin-bottom: 18px; }.hero-title-spark { font-size: 44px; margin-left: 22px; vertical-align: 10px; }.hero-description { font-size: 12px; max-width: 450px; margin-top: 24px; }.hero-description br { display: none; }.creative-hero .hero-actions { flex-direction: row; align-items: center; gap: 20px; margin-top: 25px; }.hero-actions .button { font-size: 10px; padding: 14px 16px; gap: 17px; }.hero-actions .text-link { font-size: 10px; gap: 9px; }.hero-role-caption { margin-top: 22px; font-size: 7px; }.orbit-stage { height: 420px; max-width: 450px; margin-inline: auto; }.orbit-kicker { font-size: 7px; }.orbit-label { font-size: 7px; }.orbit-label-one { left: 0; }.orbit-label-two { right: 0; }.orbit-center>span { font-size: 70px; }.orbit-center { width: 115px; height: 115px; }.orbit-readout { left: 4px; right: 4px; }.orbit-readout p { font-size: 7px; }.orbit-controls button { font-size: 9px; }.orbit-hint { font-size: 6px; bottom: -7px; }.hero-credits { grid-template-columns: 1fr 1fr; gap: 20px; padding-top: 22px; margin-top: 6px; }.hero-credits>span { grid-column: 1/-1; font-size: 7px; }.hero-credits>a:nth-of-type(1) { font-size: 25px; }.hero-credits>a { font-size: 26px; }.hero-credits small { font-size: 6px; margin-top: 5px; }.kinetic-strip { padding: 13px 0; margin-top: 15px; }.kinetic-strip>div { font-size: 17px; }.kinetic-strip span { margin-inline: 20px; }.work-section { padding-top: 55px; padding-bottom: 45px; }.section-heading h2 { font-size: 37px; }.section-heading .eyebrow { font-size: 8px; margin-bottom: 20px; }.section-heading>p { font-size: 12px; margin-top: 20px; }.work-filters { margin-top: 25px; margin-bottom: 25px; gap: 7px; }.work-filters button { font-size: 9px; padding: 8px 12px; }.project-list { grid-template-columns: 1fr; gap: 23px; }.project-wide { grid-column: auto; display: block; }.project-art { height: 275px; }.project-wide .project-art { min-height: 0; height: 280px; }.project-main,.project-wide .project-main { padding: 24px; }.project h3,.project-wide h3 { font-size: 27px; }.project-context { font-size: 7px; }.project-main>p:not(.project-context) { font-size: 12px; line-height: 1.85; }.project-tags { margin-block: 17px 19px; }.project-tags span { font-size: 8px; }.project details { max-width: none; }.project summary,.project-link { font-size: 11px; }.case-body p { font-size: 11px; }.warehouse-grid { grid-template-columns: repeat(3,32px); grid-template-rows: repeat(3,32px); top: 85px; right: 35px; }.inventory-stat { left: 23px; top: 105px; }.inventory-stat strong { font-size: 48px; }.inventory-stat>span { font-size: 7px; }.stock-top { font-size: 7px; padding: 20px; }.stock-flow { left: 22px; font-size: 9px; gap: 10px; bottom: 20px; }.stock-flow span { padding-inline: 15px; }.phone-wuf { top: 17px; width: 225px; left: calc(50% - 105px); }.phone-tracksip { width: 220px; left: calc(50% - 88px); top: 34px; }.report-numbers>span { font-size: 65px; }.art-reports { padding: 17px 28px; }.report-sheet { margin-top: 14px; padding: 12px 15px; }.report-sheet p { font-size: 8px; }.rule-orbit { width: 205px; height: 205px; left: calc(50% - 102px); top: 10px; }.decision-pill { bottom: 20px; font-size: 8px; }.art-delivery { padding: 24px; }.terminal-body { font-size: 11px; }.terminal-comment { font-size: 7px; }.science-equation { font-size: 36px; margin-top: 20px; }.science-plot { bottom: 28px; }.work-note { font-size: 8px; line-height: 1.9; }.system-lab { margin-top: 25px; }.system-lab>summary { padding: 20px; gap: 13px; }.system-lab>summary strong { font-size: 12px; }.system-lab>summary div>span { font-size: 9px; }.lab-icon { font-size: 24px; }.system-tabs { padding: 12px 12px 0; gap: 2px; }.system-tabs button { padding: 8px 7px; font-size: 7px; }.system-panel { grid-template-columns: 1fr; padding: 24px 23px; gap: 25px; }.system-panel h2 { font-size: 31px; }.system-result>span:nth-child(2) { font-size: 9px; }.system-note { font-size: 8px; }.architecture { padding: 0; }.flow-node { font-size: 11px; }.flow-node small { font-size: 7px; }.approach-section { padding-block: 50px 40px; }.approach-grid { gap: 25px; }.approach-grid h3 { font-size: 22px; }.approach-grid p { font-size: 12px; }.about-section { padding-block: 55px 70px; gap: 35px; }.about-main h2 { font-size: 37px; }.about-main>p:not(.eyebrow) { font-size: 12px; }.about-links { gap: 25px; margin-top: 20px; }.language-note { font-size: 26px; }.language-note span { font-size: 8px; }.human-board { padding: 20px 23px 30px; }.human-item { gap: 16px; padding-block: 21px; }.human-item strong { font-size: 13px; }.human-item p { font-size: 11px; }.board-sticker { margin-top: 7px; }.toolkit-section { padding-block: 35px 45px; gap: 20px; grid-template-columns: 1fr; }.toolkit-section h2 { font-size: 35px; }.toolkit-rows p { font-size: 10px; }.toolkit-rows>div { grid-template-columns: 80px 1fr; gap: 15px; }.contact-section { padding-block: 50px 60px; }.contact-section .eyebrow { font-size: 8px; }.contact-layout { grid-template-columns: 1fr; gap: 30px; }.contact-layout h2 { font-size: 60px; max-width: 390px; }.contact-layout h2>span { font-size: 42px; right: 5px; }.contact-layout>div>p { font-size: 12px; }.email-row { font-size: 10px; gap: 10px; }.phone-link { font-size: 10px; }.site-footer { padding-block: 25px; }.site-footer>div { font-size: 9px; gap: 15px; max-width: 380px; }.footer-name { font-size: 12px; }.resume-toolbar>div { justify-content: flex-start; gap: 8px; }.resume-toolbar .button { font-size: 10px; padding: 11px 13px; }.resume-toolbar .button-outline { font-size: 10px; }.cv-project li { font-size: 10px; }
}
@media(prefers-reduced-motion:reduce) { .kinetic-strip>div { animation: none; }.visual-project:hover { transform: none; } }
@media print { body.resume-page { background: white; }.resume-document { box-shadow: none; border: 0; }.cv-header h1 { color: #20241f; }.cv-project { break-inside: avoid; }.cv-project h3 { font-size: 10pt; }.cv-project p,.cv-project li,.cv-certifications p { font-size: 8.5pt; }.resume-document h2 em { color: #20241f; } }
@media print{.cv-page-break{break-before:page}.cv-project p{margin-top:3px}.cv-project ul{margin-block:5px}.cv-project li{margin-bottom:3px}.cv-certifications p{margin-top:3px}.cv-footnote{break-inside:avoid}}
.skip-link{background:var(--lime);color:#172412}.resume-document a:focus-visible{outline-color:#375f25}.orbit-controls button{min-height:32px}
/* Project names and links carry the identity. No invented brand marks. */
.name-link{font:500 13px/1.4 var(--sans);letter-spacing:0;white-space:nowrap}.name-short{display:none}.orbit-center-text>span{font:500 29px/1.15 var(--sans);letter-spacing:0}.orbit-center-text small{font-size:6px;letter-spacing:.1em}.hero-credits>a,.hero-credits>a:nth-of-type(1){font:500 16px/1.4 var(--sans);letter-spacing:0}.project-no-art{display:block}.project-no-art .project-main{padding:36px}.studio-project-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:26px 0 24px;padding:24px 0;border-block:1px solid #354238}.studio-project-highlights strong{font:600 18px/1.3 var(--sans);color:#e2edda}.studio-project-highlights p{font-size:12px;line-height:1.75;color:#a3b1b8;margin-top:9px}.project-links{display:flex;flex-wrap:wrap;gap:15px 25px;margin-top:19px}.project-no-art .project-links .project-link{font-size:12px;padding:10px 14px;border:1px solid #587449;border-radius:4px;color:#d7ebc4}.project-no-art .project-links .project-link:hover{background:#263c24}.cv-company-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin:5px 0 7px;font:9px/1.5 var(--sans)}.cv-company-links a{text-decoration:underline;text-underline-offset:2px}.cv-job li a strong{color:inherit}.experience-row ul strong{color:var(--ink)}
@media(max-width:650px){.name-full{display:none}.name-short{display:inline}.name-link{font-size:11px}.nav-actions{gap:9px}.project-no-art .project-main{padding:24px}.studio-project-highlights{grid-template-columns:1fr;gap:18px;padding-block:20px;margin-block:22px}.studio-project-highlights strong{font-size:16px}.studio-project-highlights p{font-size:11px;margin-top:5px}.project-no-art .project-links{gap:10px}.project-no-art .project-links .project-link{font-size:11px;padding:9px 12px}.hero-credits>a,.hero-credits>a:nth-of-type(1){font-size:15px}.orbit-center-text>span{font-size:25px}.cv-company-links{font-size:8px}}
@media print{.cv-company-links{font:8pt/1.4 Georgia,serif;margin:3px 0 4px}.cv-company-links a{text-decoration:underline}.cv-job li a strong{color:#20241f}}
