*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}body{font-family:Inter,-apple-system,sans-serif;background:#f8f8f8;color:#111;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font:inherit}:root{--font-display: "Instrument Serif", Georgia, serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--bg: #f8f8f8;--black: #111;--gray-300: #ccc;--gray-400: #999;--gray-600: #555;--nav-height: 80px;--sidebar-width: 110px;--flood: #4338ca;--flood-ink: #f5f3ee}.scroll-container{width:100%;overflow:visible}.scroll-track{display:flex;flex-direction:column;will-change:auto}.panel{width:100%;min-height:100vh;position:relative}#home{min-height:110vh}#about,#quadrant{min-height:100vh}#contact{min-height:90vh}.content-fade-overlay{position:fixed;top:0;right:0;width:calc(var(--sidebar-width) + 48px - 25px);height:100vh;background:linear-gradient(to right,transparent 0%,rgba(248,248,248,.5) 10%,rgba(248,248,248,.8) 20%,rgba(248,248,248,.95) 35%,#f8f8f8 48%,#f8f8f8 100%);pointer-events:none;z-index:95}.content-fade-overlay-dark{position:fixed;top:0;right:0;width:calc(var(--sidebar-width) + 48px - 25px);height:100vh;background:linear-gradient(to right,transparent 0%,rgba(0,0,0,.5) 10%,rgba(0,0,0,.8) 20%,rgba(0,0,0,.95) 35%,#000 48%,#000 100%);pointer-events:none;z-index:96;opacity:0;transition:opacity .4s ease}.panel-inner{padding:80px calc(var(--sidebar-width) + 48px + 80px) 80px 80px;min-height:100vh;display:flex;align-items:center}.btn{display:inline-block;padding:16px 32px;background:var(--black);color:#fff;font-family:var(--font-mono);font-weight:500;font-size:.9rem;border-radius:4px;letter-spacing:.02em;transition:opacity .2s}.btn:hover{opacity:.8}.btn-light{background:#fff;color:var(--black)}.blink{animation:blink-k 1s step-end infinite}@keyframes blink-k{50%{opacity:0}}.social-fixed{position:fixed;right:30px;bottom:30px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:4px}.social-fixed a{display:block;font-family:var(--font-display);font-style:italic;font-size:1.4rem;line-height:1.3;color:inherit;text-decoration:none;opacity:.7;transition:opacity .2s}.social-fixed a:hover{opacity:1}.nav-logo{position:fixed;top:24px;left:30px;z-index:100;font-family:var(--font-mono);font-size:1.2rem;font-weight:700}.logo-dot{color:var(--gray-400)}.sidebar{position:fixed;right:48px;top:0;bottom:0;z-index:100;width:var(--sidebar-width);display:flex;flex-direction:column;align-items:stretch;padding:32px 0;pointer-events:auto}.bar-readout{position:fixed;bottom:36px;left:50%;transform:translate(-50%);z-index:100;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:.06em;white-space:nowrap;color:var(--gray-400);pointer-events:none}.nav-seg{position:absolute;left:0;right:0;cursor:pointer;display:flex;align-items:center;justify-content:flex-start;transition:background .2s,opacity .2s;top:var(--seg-top, 0);height:var(--seg-height, 16.66%);text-decoration:none;overflow:visible}.nav-seg:hover{background:#ffffff1f;opacity:.7}.nav-seg.active{background:#00000059}.seg-label{position:absolute;right:calc(100% + 14px);white-space:nowrap;font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.1em;color:var(--gray-500, #6b7280);transition:color .2s,text-shadow .2s;-webkit-user-select:none;user-select:none}.nav-seg.active .seg-label{color:var(--black);font-weight:700;text-shadow:none}.nav-seg:hover .seg-label{color:var(--gray-600)}.nav-seg:after{content:"";position:absolute;left:0;right:0;top:0;height:var(--fill-w, 0%);background:#0003;pointer-events:none;transition:height .15s ease}.seg-detail{position:absolute;right:calc(100% + 14px);top:50%;transform:translateY(-50%) translate(12px);width:240px;padding:16px;background:#fffffff2;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--gray-200);border-radius:10px;box-shadow:0 8px 32px #0000001f;opacity:0;pointer-events:none;transition:opacity .35s ease,transform .35s cubic-bezier(.22,1,.36,1);z-index:110}.nav-seg:hover .seg-detail{opacity:1;transform:translateY(-50%) translate(0);pointer-events:auto}.seg-detail:before,.seg-detail:after{content:"";position:absolute;left:100%;width:30px;height:1.5px;background:#0000002e}.seg-detail:before{top:0;transform-origin:0% 0%;transform:rotate(16deg)}.seg-detail:after{bottom:0;transform-origin:0% 100%;transform:rotate(-16deg)}.section-about .nav-seg[data-section=systems] .seg-detail,.section-about .nav-seg[data-section=audio] .seg-detail,.section-about .nav-seg[data-section=visual] .seg-detail{opacity:1;transform:translateY(-50%) translate(0);pointer-events:auto}.section-about .nav-seg[data-section=systems] .seg-detail{transition-delay:.15s}.section-about .nav-seg[data-section=audio] .seg-detail{transition-delay:.35s}.section-about .nav-seg[data-section=visual] .seg-detail{transition-delay:.55s}.seg-range{font-family:var(--font-mono);font-size:.6rem;color:var(--gray-400);letter-spacing:.06em;display:block;margin-bottom:6px}.seg-detail h4{font-family:var(--font-mono);font-size:.8rem;font-weight:600;margin-bottom:6px;color:var(--black)}.seg-detail p{font-size:.75rem;line-height:1.45;color:var(--gray-600);margin-bottom:10px}.seg-tools{display:flex;flex-wrap:wrap;gap:4px}.seg-tools span{font-family:var(--font-mono);font-size:.58rem;padding:3px 8px;border-radius:12px;background:var(--gray-100);color:var(--gray-600);border:1px solid var(--gray-200);letter-spacing:.02em}.seg-projects{list-style:none;padding:8px 0 0;margin:10px 0 0;border-top:1px solid var(--gray-200)}.seg-projects li{font-size:.68rem;font-family:var(--font-mono);color:var(--gray-500);line-height:1.7;letter-spacing:.01em}.seg-projects li:before{content:"›";margin-right:6px;color:var(--gray-300)}.bar-track{flex:1;width:1px;margin:0 auto;background:var(--gray-300);position:relative;cursor:pointer;min-height:200px;overflow:visible}.bar-indicator{position:absolute;left:-3px;width:7px;height:7px;border-radius:50%;background:var(--black);top:0;pointer-events:none;z-index:5;transition:top .06s linear}.panel-home-inner{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;height:100%;padding-left:80px;padding-top:100px;padding-bottom:60px}.home-top{display:flex;flex-direction:column;gap:18px}.home-label{display:flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#f5f3eea6}.home-label-dot{width:7px;height:7px;border-radius:50%;background:#4ade80;flex-shrink:0}.home-title{font-family:var(--font-display);font-size:clamp(4.5rem,11vw,9.5rem);font-weight:400;line-height:.9;letter-spacing:-.02em;color:var(--flood-ink)}.home-name-link{color:inherit;text-decoration:none;border-bottom:2px solid transparent;transition:border-color .2s}.home-name-link:hover{border-color:#f5f3ee80}.home-statement{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.6rem);font-weight:400;line-height:1.22;letter-spacing:-.01em;color:var(--flood-ink);max-width:760px;margin-left:clamp(0px,12vw,220px);align-self:flex-start}.home-statement strong{font-weight:400;font-style:italic}.home-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.home-sub{font-size:1.05rem;line-height:1.6;color:#f5f3eeb3;max-width:480px}@media(max-width:640px){.panel-home-inner{padding:64px 24px 40px}.home-title{font-size:clamp(3rem,16vw,4.5rem)}.home-statement{font-size:clamp(1.5rem,7vw,2rem);margin-left:0;max-width:100%}.home-sub{font-size:.92rem;max-width:78%}}.panel-statement{padding:80px calc(var(--sidebar-width) + 48px + 80px) 80px 80px;justify-content:center}.statement-text{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,4.2rem);font-weight:400;line-height:1.2;letter-spacing:-.02em;max-width:900px}.statement-text strong{font-weight:400;font-style:italic;color:var(--flood)}.panel-projects{width:100%;min-height:auto}.projects-flow{display:flex;flex-direction:column;gap:0;padding:0 calc(var(--sidebar-width) + 48px + 40px) 0 80px;min-height:auto}.project{width:100%;display:grid;grid-template-columns:1fr;grid-template-rows:auto;padding:56px 48px;position:relative;cursor:pointer;overflow:hidden;border-bottom:1px solid rgba(0,0,0,.06);transition:background .5s cubic-bezier(.22,1,.36,1),padding .5s cubic-bezier(.22,1,.36,1)}.project:first-child{border-top:1px solid rgba(0,0,0,.06)}.project-header{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;transition:transform .6s cubic-bezier(.22,1,.36,1)}.project-info{display:flex;flex-direction:column}.project-band{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.1em;color:var(--gray-400);margin-bottom:12px;text-transform:uppercase}.project-title{font-family:var(--font-display);font-size:1.9rem;font-weight:400;line-height:1.2;margin-bottom:16px;letter-spacing:-.01em;transition:opacity .3s ease,color .3s ease}.project-desc{font-size:.95rem;line-height:1.7;color:var(--gray-600);margin-bottom:20px;max-width:540px}.project-meta{font-family:var(--font-mono);font-size:.65rem;color:var(--gray-400);line-height:1.5;letter-spacing:.02em}.project--featured{padding:96px 48px}.project--featured .project-title{font-size:2.6rem;max-width:720px}.project--featured .project-desc{font-size:1rem;max-width:600px}.project--featured .project-meta{margin-top:18px;padding-top:14px;border-top:1px solid rgba(0,0,0,.08);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);max-width:460px}.projects-more-label{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gray-400);padding:28px 48px 4px}.project--compact{padding:18px 48px}.project--compact .project-desc{display:none}.project--compact .project-band{display:inline;margin-bottom:0;margin-right:10px}.project--compact .project-title{display:inline;font-size:1.05rem}.project--compact .project-meta{margin-top:4px}.project--compact:after{top:20px}.project-casestudy{display:flex;flex-direction:column;gap:24px;opacity:0;max-height:0;overflow:hidden;transform:translateY(8px);transition:max-height .6s cubic-bezier(.22,1,.36,1),opacity .4s ease .1s,transform .4s cubic-bezier(.22,1,.36,1) .1s}.section-group+.section-group{margin-top:0}.project-artwork-link{display:block;border-radius:8px;overflow:hidden;box-shadow:0 2px 12px #00000014;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s cubic-bezier(.22,1,.36,1),width .5s cubic-bezier(.22,1,.36,1),height .5s cubic-bezier(.22,1,.36,1);width:64px;height:64px;flex-shrink:0;z-index:2;margin-top:4px}.project-artwork-link:hover{transform:scale(1.06);box-shadow:0 4px 20px #00000026}.project-artwork{width:100%;height:100%;object-fit:cover;display:block;transition:filter .3s ease}.project-artwork-link:hover .project-artwork{filter:brightness(1.05)}.project--expanded .project-artwork-link{width:88px;height:88px;border-radius:10px;box-shadow:0 4px 24px #0000001f}.project-artwork--visual{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%;border-radius:0;box-shadow:none;opacity:0;transform:none;z-index:0;pointer-events:none;transition:opacity .5s cubic-bezier(.22,1,.36,1)}.project-artwork--visual .project-artwork{width:100%;height:100%;object-fit:cover;filter:brightness(.3) saturate(1.1);transition:filter .5s ease,transform .8s cubic-bezier(.22,1,.36,1);transform:scale(1.03)}.project-artwork--visual:hover{transform:none;box-shadow:none}.project:not(.project--expanded):hover .project-artwork--visual{opacity:1}.project:not(.project--expanded):hover .project-artwork--visual .project-artwork{transform:scale(1)}.project:has(.project-artwork--visual):not(.project--expanded):hover{background:transparent}.project:has(.project-artwork--visual):not(.project--expanded):hover .project-band{color:#ffffff80;position:relative;z-index:1}.project:has(.project-artwork--visual):not(.project--expanded):hover .project-title{color:#fff;opacity:1;position:relative;z-index:1;text-shadow:0 1px 8px rgba(0,0,0,.3)}.project:has(.project-artwork--visual):not(.project--expanded):hover .project-desc{color:#ffffffbf;position:relative;z-index:1}.project:has(.project-artwork--visual):not(.project--expanded):hover .project-meta{color:#ffffff73;position:relative;z-index:1}.project--expanded .project-artwork--visual{position:relative;top:auto;left:auto;right:auto;bottom:auto;width:88px;height:88px;border-radius:10px;opacity:1;box-shadow:0 4px 24px #0000001f;pointer-events:auto}.project--expanded .project-artwork--visual .project-artwork{filter:none;transform:scale(1)}.project:has(.project-artwork--visual):not(.project--expanded):hover:after{color:#ffffff80}.project:not(.project--expanded):hover{background:#00000003}.project:not(.project--expanded):hover .project-title{opacity:.7}.project:after{content:"+";position:absolute;top:56px;right:48px;font-family:var(--font-mono);font-size:.75rem;color:var(--gray-300);opacity:0;transition:opacity .3s ease}.project:not(.project--expanded):hover:after{opacity:1}.project--expanded:after{content:"−";opacity:.5;color:var(--gray-400)}.project--expanded{padding:56px 48px 48px;background:linear-gradient(to bottom,transparent 0%,rgba(235,238,245,.45) 4%,rgba(235,238,245,.5) 12%,rgba(235,238,245,.5) 88%,rgba(235,238,245,.45) 96%,transparent 100%)}.project--expanded .project-title{color:var(--black)}.project--expanded .project-band{color:var(--gray-600)}.project--expanded .project-meta{margin-bottom:0;padding-bottom:0}.project--expanded .project-casestudy{max-height:800px;opacity:1;transform:translateY(0);margin-top:32px;padding-top:28px;border-top:1px solid rgba(0,0,0,.06)}.project--expanded .psr-text{color:#333}@keyframes caseStudyIn{to{opacity:1;transform:translateY(0)}}.project--expanded .project-casestudy{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.psr-block{opacity:0;transform:translateY(8px);animation:psrIn .5s cubic-bezier(.22,1,.36,1) forwards}.psr-block:nth-child(1){animation-delay:.15s}.psr-block:nth-child(2){animation-delay:.25s}.psr-block:nth-child(3){animation-delay:.35s}@keyframes psrIn{to{opacity:1;transform:translateY(0)}}.psr-label{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;display:flex;align-items:center;gap:8px}.psr-label:before{content:"";display:inline-block;width:12px;height:1px}.psr-label--problem,.psr-label--solution,.psr-label--results{color:var(--flood)}.psr-label--problem:before,.psr-label--solution:before,.psr-label--results:before{background:var(--flood)}.psr-text{font-size:.82rem;line-height:1.65;color:var(--gray-600)}.results-metrics{display:flex;gap:20px;margin-top:10px;flex-wrap:wrap}.metric{display:flex;flex-direction:column;gap:2px;opacity:0;animation:metricIn .4s cubic-bezier(.22,1,.36,1) forwards}.metric:nth-child(1){animation-delay:.6s}.metric:nth-child(2){animation-delay:.7s}.metric:nth-child(3){animation-delay:.8s}@keyframes metricIn{to{opacity:1}}.metric-value{font-family:var(--font-display);font-size:1.4rem;font-weight:700;letter-spacing:-.02em;line-height:1}.metric-label{font-family:var(--font-mono);font-size:.55rem;color:var(--gray-400);letter-spacing:.06em;text-transform:uppercase}.project--expanded .project-casestudy:after{content:"";display:block;height:20px;flex-shrink:0}.section-group{display:flex;flex-direction:column;position:relative;padding-top:12vh}.section-group:first-of-type{padding-top:0}.section-group .hero-anchor{position:sticky;top:0;width:100%;min-height:100vh;display:flex;align-items:center;padding:80px calc(var(--sidebar-width) + 48px + 80px) 80px 80px;z-index:10;pointer-events:none;transform-origin:top left;will-change:transform,opacity;--hero-scale: 1;--hero-tx: 0px;--hero-ty: 0px;--hero-opacity: 1;transform:scale(var(--hero-scale)) translateY(var(--hero-ty));opacity:var(--hero-opacity);transition:none}.section-group .hero-anchor.is-pinned{pointer-events:none}.hero-anchor .statement-text{max-width:900px;transform-origin:top left}.hero-section-label{position:absolute;top:14px;left:0;font-family:var(--font-mono);font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gray-400);opacity:0;transform:translateY(4px);transition:opacity .4s ease,transform .4s ease}.hero-anchor.is-pinned .hero-section-label{opacity:1;transform:translateY(0)}.hero-spacer{min-height:0;height:0}.section-group .panel-projects{position:relative;z-index:5}.hero-anchor:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:#0000;transition:background .5s ease}.hero-anchor.is-pinned:after{background:#0000000a}.panel-dark{background:var(--flood);color:var(--flood-ink)}.panel-contact-inner{flex-direction:column;align-items:flex-start;justify-content:center;gap:24px}.contact-title{font-family:var(--font-display);font-size:clamp(2.4rem,4.6vw,3.8rem);font-weight:400;letter-spacing:-.01em}.contact-sub{font-size:1rem;color:#f5f3eeb3;max-width:420px;line-height:1.6}.contact-links{display:flex;gap:24px;margin-top:8px}.contact-links a{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.06em;color:#f5f3eeb3;border-bottom:1px solid rgba(245,243,238,.25);padding-bottom:2px;transition:color .2s,border-color .2s}.contact-links a:hover{color:var(--flood-ink);border-color:var(--flood-ink)}.footer{position:absolute;bottom:16px;left:80px;display:flex;gap:20px;font-family:var(--font-mono);font-size:.6rem;color:#f5f3ee80;letter-spacing:.06em}.panel-quadrant{background:var(--flood);color:var(--flood-ink);position:relative;overflow:hidden;width:100%;min-height:100vh}.panel-quadrant-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;padding:80px 80px 80px 100px;box-sizing:border-box;position:relative;min-height:100vh}.quadrant-header{position:absolute;top:32px;left:100px;z-index:5}.quadrant-label{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:#ffffff59;margin-bottom:4px}.quadrant-title{font-family:var(--font-display);font-size:clamp(1.4rem,2.4vw,2rem);font-weight:400;letter-spacing:-.01em;color:#f5f3eee6;margin-bottom:8px}.quadrant-desc{font-family:var(--font-body);font-size:.72rem;line-height:1.6;color:#ffffff59;max-width:380px}.quadrant-desc strong{color:#ffffffb3;font-weight:600}.quadrant-plane{position:relative;width:min(70vh,600px);height:min(70vh,600px);flex-shrink:0}.quadrant-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:10% 10%;border-radius:2px}.quadrant-axis-x,.quadrant-axis-y{position:absolute;background:#ffffff4d}.quadrant-axis-x{top:50%;left:0;right:0;height:1px}.quadrant-axis-y{left:50%;top:0;bottom:0;width:1px}.axis-label{position:absolute;font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:#ffffff73;white-space:nowrap}.axis-label--top{top:-24px;left:50%;transform:translate(-50%)}.axis-label--bottom{bottom:-24px;left:50%;transform:translate(-50%)}.axis-label--left{left:0;top:50%;transform:translateY(calc(-100% - 6px))}.axis-label--right{right:0;top:50%;transform:translateY(calc(-100% - 6px))}.quadrant-zone-label{position:absolute;font-family:var(--font-mono);font-size:.5rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff26;pointer-events:none}.quadrant-zone-label--tl{top:8%;left:8%}.quadrant-zone-label--tr{top:8%;right:8%;text-align:right}.quadrant-zone-label--bl{bottom:8%;left:8%}.quadrant-zone-label--br{bottom:8%;right:8%;text-align:right}.q-dot{position:absolute;width:14px;height:14px;border-radius:50%;cursor:pointer;transform:translate(-50%,-50%);transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;z-index:3;box-shadow:0 0 10px 3px var(--dot-color, rgba(255, 255, 255, .4)),0 0 20px 6px color-mix(in srgb,var(--dot-color, rgba(255, 255, 255, .2)) 40%,transparent)}.q-dot:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:1px solid var(--dot-color, rgba(255, 255, 255, .15));opacity:0;transition:opacity .2s ease}.q-dot:hover{transform:translate(-50%,-50%) scale(1.6);box-shadow:0 0 20px 6px var(--dot-color, rgba(255, 255, 255, .6)),0 0 40px 12px color-mix(in srgb,var(--dot-color, rgba(255, 255, 255, .3)) 30%,transparent);z-index:10}.q-dot:hover:before{opacity:1}@keyframes dotPulse{0%{transform:translate(-50%,-50%) scale(0);opacity:0}60%{transform:translate(-50%,-50%) scale(1.3);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.q-dot{animation:dotPulse .5s cubic-bezier(.34,1.56,.64,1) both}.q-tooltip{position:absolute;pointer-events:none;z-index:20;opacity:0;transition:opacity .2s ease;min-width:200px;max-width:280px}.q-dot:hover .q-tooltip{opacity:1}.q-tooltip-inner{background:#141414f2;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:10px 14px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.q-tooltip-type{font-family:var(--font-mono);font-size:.5rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dot-color, #888);margin-bottom:3px}.q-tooltip-title{font-family:var(--font-display);font-size:.9rem;font-weight:400;color:#fff;margin-bottom:4px;line-height:1.3}.q-tooltip-desc{font-family:var(--font-body);font-size:.6rem;color:#ffffff80;line-height:1.5}.q-dot[data-qx=right] .q-tooltip{left:20px;top:50%;transform:translateY(-50%)}.q-dot[data-qx=left] .q-tooltip{right:20px;top:50%;transform:translateY(-50%)}.quadrant-legend{position:absolute;bottom:56px;left:50%;transform:translate(-50%);display:flex;gap:24px;z-index:5}.legend-item{display:flex;align-items:center;gap:6px;cursor:pointer;transition:opacity .2s ease}.legend-item:hover{opacity:.8}.legend-item.dimmed{opacity:.2}.legend-label{font-family:var(--font-mono);font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:#ffffff80}.q-connection{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.q-connection line{stroke:#ffffff14;stroke-width:1;stroke-dasharray:3 4}.quadrant-footer{position:absolute;bottom:32px;left:100px;display:flex;flex-direction:column;gap:8px;z-index:5}.quadrant-contact{display:flex;align-items:center;gap:16px}.quadrant-contact a{font-family:var(--font-mono);font-size:.65rem;letter-spacing:.06em;color:#fff6;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:2px;transition:color .2s,border-color .2s;text-decoration:none}.quadrant-contact a:hover{color:#fff;border-color:#fff}.quadrant-copyright{font-family:var(--font-mono);font-size:.5rem;color:#fff3;letter-spacing:.06em}.quadrant-ambient{position:absolute;width:300px;height:300px;border-radius:50%;filter:blur(120px);opacity:.06;pointer-events:none;z-index:0}.quadrant-ambient--systems{background:var(--flood-ink);top:10%;right:20%}.quadrant-ambient--audio{background:var(--flood-ink);bottom:20%;left:15%}.quadrant-ambient--visual{background:var(--flood-ink);bottom:10%;right:15%}.near-dark-panel .content-fade-overlay{opacity:0!important}.near-dark-panel .content-fade-overlay-dark{opacity:0}.section-home .nav-logo,.section-quadrant .nav-logo,.section-contact .nav-logo,.section-home .bar-readout,.section-quadrant .bar-readout,.section-contact .bar-readout,.section-home .sidebar{opacity:0!important;pointer-events:none}.section-home .seg-label,.section-quadrant .seg-label,.section-contact .seg-label{color:var(--gray-500, #6b7280)}.section-home .nav-seg.active .seg-label,.section-quadrant .nav-seg.active .seg-label,.section-contact .nav-seg.active .seg-label{color:var(--black);text-shadow:none}.section-home .nav-seg:hover .seg-label,.section-quadrant .nav-seg:hover .seg-label,.section-contact .nav-seg:hover .seg-label{color:var(--gray-600)}.section-home .nav-seg,.section-quadrant .nav-seg,.section-contact .nav-seg{border-bottom-color:#ffffff1a}.section-home .social-fixed a,.section-quadrant .social-fixed a,.section-contact .social-fixed a{color:var(--flood-ink)}.sidebar,.bar-readout,.nav-logo{transition:opacity .5s ease}.content-fade-overlay{transition:opacity .2s ease}.seg-label{transition:color .5s ease}html.home-locked,html.home-locked body{overflow:hidden;height:100%}.statement-link{font-style:italic;color:inherit;text-decoration:none;border-bottom:1px solid rgba(245,243,238,.4);transition:border-color .2s,opacity .2s}.statement-link:hover{border-color:#f5f3eee6}.hero-line{display:block;white-space:nowrap}.inline-icon-box{display:inline-flex;align-items:center;justify-content:center;width:0;height:.85em;vertical-align:-.12em;overflow:hidden;opacity:0;margin-left:0;border-radius:4px;background:#f5f3ee24;transition:width .4s cubic-bezier(.22,1,.36,1),margin-left .4s cubic-bezier(.22,1,.36,1),opacity .3s ease}.inline-icon-box.is-active{width:1.1em;opacity:1;margin-left:.2em}.inline-icon-box svg{width:.58em;height:.58em;flex-shrink:0;color:var(--flood-ink)}.showcase-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:var(--bg);visibility:hidden;opacity:0;pointer-events:none;transition:opacity .4s ease}.showcase-overlay.is-open{visibility:visible;opacity:1;pointer-events:auto}.showcase-scroll{height:100%;overflow-y:auto}.showcase-inner{max-width:920px;margin:0 auto;padding:120px 40px 160px}.showcase-close{position:fixed;top:28px;left:30px;z-index:310;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.04em;color:var(--gray-600);background:var(--bg);border:1px solid var(--gray-300);border-radius:6px;padding:8px 14px;cursor:pointer;transition:border-color .2s,color .2s}.showcase-close:hover{border-color:var(--black);color:var(--black)}.showcase-hero{margin-bottom:96px}.showcase-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gray-400);margin-bottom:14px}.showcase-title{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);font-weight:400;line-height:1.02;letter-spacing:-.01em;color:var(--black);margin-bottom:8px}.showcase-client{font-family:var(--font-mono);font-size:.85rem;color:var(--gray-500);margin-bottom:24px}.showcase-desc{font-size:1.15rem;line-height:1.6;color:var(--gray-600);max-width:640px;margin-bottom:36px}.showcase-artwork-link{display:block;width:220px;border-radius:8px;overflow:hidden;box-shadow:0 8px 32px #0000001f;margin-bottom:20px;transition:transform .4s cubic-bezier(.22,1,.36,1)}.showcase-artwork-link:hover{transform:scale(1.03)}.showcase-artwork{width:100%;display:block}.showcase-credit{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gray-500);max-width:460px;padding-top:14px;border-top:1px solid rgba(0,0,0,.1)}.showcase-diagram-block{margin-bottom:88px}.diagram-label{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gray-400);margin-bottom:24px}.flow-row{position:relative;display:flex;gap:12px}.flow-row:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-image:linear-gradient(to right,var(--gray-300) 50%,transparent 0%);background-size:10px 1px;z-index:0}.flow-box{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:104px;padding:14px 12px;background:var(--bg);border:1.5px solid var(--gray-300);border-radius:8px;cursor:pointer;transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease}.flow-box--end{border-color:var(--flood)}.flow-box:hover{border-color:var(--flood);transform:translateY(-3px);box-shadow:0 10px 24px #00000014}.flow-box-icon{width:26px;height:26px;flex-shrink:0;color:var(--gray-400);transition:color .25s ease}.flow-box--end .flow-box-icon,.flow-box:hover .flow-box-icon{color:var(--flood)}.flow-box-label{font-family:var(--font-mono);font-size:clamp(.9rem,1.3vw,1.05rem);letter-spacing:.01em;color:var(--black);text-align:center}.flow-box--end .flow-box-label{color:var(--flood)}.flow-panel{display:grid;grid-template-rows:0fr;margin-top:20px;background:var(--gray-100);border-left:3px solid var(--gray-300);border-radius:0 8px 8px 0;transition:grid-template-rows .35s cubic-bezier(.22,1,.36,1),border-color .25s ease}.flow-panel.is-active{grid-template-rows:1fr;border-left-color:var(--flood)}.flow-panel-text{overflow:hidden;padding:0 24px;font-family:var(--font-body);font-size:1.05rem;line-height:1.6;color:var(--gray-600);transition:padding .35s cubic-bezier(.22,1,.36,1)}.flow-panel.is-active .flow-panel-text{padding:22px 24px}@media(max-width:900px){.flow-row{flex-wrap:wrap}.flow-row:before{display:none}.flow-box{flex:1 1 calc(33% - 8px)}}.transition-row{display:flex;align-items:center;gap:28px}.transition-card{flex:1;padding:28px 28px 24px;background:var(--bg);border:1.5px solid var(--gray-300);border-radius:8px}.transition-card--after{border-color:var(--flood)}.transition-title{font-family:var(--font-display);font-size:1.4rem;color:var(--black);margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--gray-300)}.transition-card--after .transition-title{color:var(--flood)}.transition-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.transition-list li{font-family:var(--font-mono);font-size:.95rem;line-height:1.5;color:var(--gray-600);padding-left:18px;position:relative}.transition-list li:before{content:"—";position:absolute;left:0;color:var(--gray-400)}.transition-arrow{flex-shrink:0;font-family:var(--font-display);font-size:1.8rem;color:var(--gray-400)}@media(max-width:700px){.transition-row{flex-direction:column}.transition-arrow{transform:rotate(90deg)}}.showcase-psr{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-top:40px;border-top:1px solid rgba(0,0,0,.08);margin-bottom:96px}.showcase-more{margin-bottom:120px}.showcase-more-list{list-style:none;padding:0;margin:0}.showcase-more-list li{border-bottom:1px solid rgba(0,0,0,.06)}.showcase-more-list li,.showcase-more-list li a{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding:14px 0;font-family:var(--font-display);font-size:1.1rem;color:var(--black);text-decoration:none}.showcase-more-list li a{cursor:pointer;transition:color .2s ease}.showcase-more-list li a:hover{color:var(--flood)}.showcase-more-list li a span{border-bottom:1px solid transparent;transition:border-color .2s ease}.showcase-more-list li a:hover span{border-color:var(--flood)}.showcase-more-list li em{font-style:normal;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.04em;text-transform:uppercase;color:var(--gray-400);white-space:nowrap}.showcase-loop{width:100%;min-height:100vh;position:relative}@media(max-width:768px){.showcase-psr{grid-template-columns:1fr}}
