:root{--black:#050708;--ink:#081015;--panel:#0b151b;--panel2:#101e26;--line:#1c3944;--cyan:#00d8f2;--cyan2:#73efff;--silver:#cbd6da;--text:#f3f8f9;--muted:#91a4ac;--good:#63dba5;--warn:#f4c56c;--danger:#ff8585;--mono:"Cascadia Code","SFMono-Regular",Consolas,monospace;--sans:Inter,"Segoe UI",Arial,sans-serif;--max:1220px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--black);color:var(--text);font:400 1rem/1.72 var(--sans)}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.03;background-image:linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px);background-size:80px 80px}a{color:inherit}.skip{position:absolute;left:-9999px;padding:.7rem;background:white;color:black;z-index:100}.skip:focus{left:1rem;top:1rem}.shell{width:min(var(--max),90vw);margin:auto}.header{height:78px;border-bottom:1px solid var(--line);background:rgba(5,7,8,.93);position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.header .shell{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;font-weight:700}.brand-symbol{display:grid;place-items:center;width:42px;height:42px;border:1px solid #31505b;background:#090e11;color:var(--cyan);font:700 1.12rem var(--mono);box-shadow:0 0 20px rgba(0,216,242,.12)}.brand-name{letter-spacing:-.02em}.nav{display:flex;align-items:center;gap:1.55rem}.nav a{color:var(--muted);text-decoration:none;font:600 .82rem var(--mono)}.nav a:hover,.nav a[aria-current=page]{color:var(--cyan)}.nav .nav-contact{border:1px solid var(--cyan);color:var(--cyan);padding:.55rem .8rem}.nav-toggle{display:none;background:none;color:var(--cyan);border:1px solid var(--line);padding:.55rem .8rem;font:700 .82rem var(--mono)}.hero{min-height:760px;display:grid;grid-template-columns:1.25fr .75fr;gap:6vw;align-items:center;padding:7rem 0}.hero-copy{position:relative;z-index:2}.label{color:var(--cyan);font:700 .75rem var(--mono);letter-spacing:.16em;text-transform:uppercase}.hero h1,.page-hero h1,.section h2,.cta h2{letter-spacing:-.055em;line-height:1.02}.hero h1{font-size:clamp(3.2rem,7.6vw,7rem);margin:1rem 0 1.4rem}.hero h1 em{color:transparent;-webkit-text-stroke:1px #6f8790;font-style:normal}.lede{color:var(--silver);font-size:clamp(1.05rem,1.8vw,1.22rem);max-width:760px}.actions{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:2rem}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--cyan);padding:.72rem 1rem;text-decoration:none;color:var(--cyan);font:700 .86rem var(--mono);cursor:pointer;background:transparent}.button.primary,.button:hover{background:var(--cyan);color:#031014}.hero-art{position:relative;max-width:480px;justify-self:end}.hero-art:before{content:"";position:absolute;inset:12% 5%;background:var(--cyan);filter:blur(90px);opacity:.16}.hero-art img{position:relative;width:100%;display:block;mix-blend-mode:screen}.statusbar{border-block:1px solid var(--line);background:#070d11}.statusbar .shell{display:grid;grid-template-columns:repeat(4,1fr)}.status-item{padding:1.05rem;border-right:1px solid var(--line)}.status-item:last-child{border:0}.status-item small{display:block;color:#6e858e;font:600 .68rem var(--mono);letter-spacing:.12em}.status-item strong{font:600 .84rem var(--mono);color:var(--silver)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);margin-right:.5rem}.section{padding:clamp(4.5rem,8vw,7.5rem) 0;border-bottom:1px solid var(--line)}.section-intro{display:grid;grid-template-columns:.65fr 1.35fr;gap:6vw}.section h2{font-size:clamp(2.2rem,5vw,4.5rem);margin:.35rem 0}.section-intro>p{color:var(--muted);font-size:1.08rem;margin-top:2.2rem}.cap-grid{margin-top:4rem;display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line)}.cap{padding:2rem;min-height:250px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.cap:nth-child(even){border-right:0}.cap:nth-last-child(-n+2){border-bottom:0}.cap-code{color:var(--cyan);font:700 .73rem var(--mono)}.cap h3{font-size:1.45rem;margin:2.2rem 0 .5rem}.cap p{color:var(--muted);max-width:570px}.cap ul{color:var(--silver);padding-left:1.1rem}.band{background:var(--panel)}.project-grid{margin-top:3.4rem;display:grid;gap:1rem}.project-card{display:grid;grid-template-columns:150px 1fr auto;gap:2rem;align-items:start;padding:2rem;border:1px solid var(--line);background:#081116}.project-card:hover{border-color:#34616e}.project-meta{font:700 .7rem var(--mono);color:var(--cyan);letter-spacing:.1em}.project-card h3{font-size:1.45rem;margin:0 0 .5rem}.project-card p{color:var(--muted);margin:.3rem 0}.tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.tag{border:1px solid #2a4651;color:#a8bbc2;padding:.24rem .5rem;font:600 .68rem var(--mono)}.project-link{color:var(--cyan);font:700 .78rem var(--mono);white-space:nowrap}.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:3.4rem;border:1px solid var(--line)}.principle{padding:1.6rem;border-right:1px solid var(--line)}.principle:last-child{border:0}.principle strong{display:block;color:var(--cyan);font:700 .74rem var(--mono);margin-bottom:1rem}.principle p{color:var(--muted);margin:0}.cta{padding:clamp(4rem,7vw,6rem) 0}.cta .shell{display:flex;justify-content:space-between;align-items:center;gap:3rem}.cta h2{font-size:clamp(2rem,4.7vw,4rem);margin:0;max-width:850px}.page-hero{padding:clamp(5rem,9vw,8rem) 0;background:radial-gradient(circle at 85% 20%,rgba(0,216,242,.12),transparent 30%)}.page-hero h1{font-size:clamp(3rem,7vw,6.3rem);margin:.8rem 0 1.2rem}.page-hero .lede{max-width:820px}.content-grid{display:grid;grid-template-columns:.58fr 1.42fr;gap:7vw}.sticky-note{position:sticky;top:110px;align-self:start}.prose{max-width:790px}.prose h2{font-size:1.85rem;letter-spacing:-.035em;margin:2.8rem 0 .5rem}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:var(--muted)}.prose a{color:var(--cyan)}.detail-list{display:grid;gap:1rem}.detail{border:1px solid var(--line);background:var(--panel);padding:1.6rem}.detail small{color:var(--cyan);font:700 .7rem var(--mono)}.detail h2{font-size:1.55rem;margin:.8rem 0 .35rem}.detail p{color:var(--muted)}.detail ul{color:var(--silver);padding-left:1.1rem}.contact-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw}.contact-panel{border:1px solid var(--line);background:var(--panel);padding:2rem;align-self:start}.contact-panel a{color:var(--cyan);font-weight:700}.contact-panel dl{border-top:1px solid var(--line);padding-top:1rem;margin-top:1.5rem}.contact-panel dt{font:700 .7rem var(--mono);color:#758b93}.contact-panel dd{margin:0 0 1rem;color:var(--silver)}.form{display:grid;gap:1rem}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form label{display:grid;gap:.42rem;color:var(--silver);font-weight:600;font-size:.92rem}.form label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;background:#071015;color:var(--text);border:1px solid #31505b;padding:.82rem;font:400 1rem var(--sans)}input:focus,select:focus,textarea:focus{outline:3px solid rgba(0,216,242,.13);border-color:var(--cyan)}.hidden{position:absolute;left:-9999px}.form-status{min-height:1.7rem;font-weight:700;margin:0}.form-status.success{color:var(--good)}.form-status.error{color:var(--danger)}.fine{font-size:.84rem;color:var(--muted)}.fine a{color:var(--cyan)}.legal{border-top:1px solid var(--line);padding-top:1.4rem;margin-top:3rem}.footer{border-top:1px solid var(--line);padding:2.2rem 0;color:#758b93;font:400 .78rem var(--mono)}.footer .shell{display:grid;grid-template-columns:1fr auto;gap:1rem}.footer nav{display:flex;gap:1rem;flex-wrap:wrap}.footer a{color:#afc0c6}@media(max-width:900px){.hero,.section-intro,.content-grid,.contact-layout{grid-template-columns:1fr}.hero-art{position:absolute;right:-12%;opacity:.23;width:55%}.statusbar .shell,.principle-grid{grid-template-columns:1fr 1fr}.status-item:nth-child(2){border-right:0}.project-card{grid-template-columns:110px 1fr}.project-link{grid-column:2}.sticky-note{position:static}.cta .shell{align-items:flex-start;flex-direction:column}}@media(max-width:680px){.header{height:68px}.brand-symbol{width:36px;height:36px}.nav-toggle{display:block}.nav{display:none;position:absolute;top:67px;left:0;right:0;background:#05090b;padding:1rem 5vw;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav .nav-contact{text-align:center}.hero{min-height:680px;padding:5rem 0}.hero-art{width:85%;right:-38%}.statusbar .shell,.cap-grid,.principle-grid,.field-row{grid-template-columns:1fr}.status-item,.cap,.principle{border-right:0;border-bottom:1px solid var(--line)}.cap:last-child,.principle:last-child,.status-item:last-child{border-bottom:0}.project-card{grid-template-columns:1fr;gap:.8rem}.project-link{grid-column:1}.footer .shell{grid-template-columns:1fr}}
.brand-logo{display:block;width:172px;height:48px;object-fit:contain;object-position:left center}.footer-brand{display:inline-flex;align-items:center;gap:.65rem}.footer-brand img{width:34px;height:26px;object-fit:cover}@media(max-width:680px){.brand-logo{width:142px;height:42px}}

/* v3.2.1 responsive layout foundation */
.hero{min-height:auto;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(2rem,6vw,6rem);padding:clamp(4.5rem,8vw,7rem) 0}
.hero h1{font-size:clamp(3.4rem,6.2vw,6.25rem);max-width:880px}
.hero-art{width:min(100%,420px);aspect-ratio:4/3;margin:0;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(49,80,91,.65);background:radial-gradient(circle at center,rgba(0,216,242,.13),transparent 65%),#071015}
.hero-art:before{inset:22%;filter:blur(65px);opacity:.2}
.hero-art img{width:82%;height:auto;object-fit:contain;mix-blend-mode:screen}
.contact-layout{grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:clamp(2.5rem,6vw,6rem);align-items:start}
.contact-panel{min-width:0}
.contact-email{font-size:clamp(1.65rem,3vw,2.7rem);line-height:1.1;letter-spacing:-.04em;overflow-wrap:anywhere;margin:.7rem 0 1rem}
.form-column{min-width:0}
.form-column>h2{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.05;letter-spacing:-.045em;margin:.45rem 0 .75rem}
.form-intro{color:var(--muted);margin:0 0 1.5rem;max-width:620px}
.form{width:100%}.form label{min-width:0}
input,select,textarea{min-width:0;color-scheme:dark}select{white-space:normal}.form .button{min-width:160px}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:2.5rem;padding:4.5rem 0}.hero-art{position:relative;right:auto;width:min(100%,500px);opacity:1;justify-self:start}.contact-layout{grid-template-columns:1fr}.contact-panel,.form-column{width:100%}}
@media(max-width:680px){.shell{width:min(100% - 2rem,var(--max))}.header .shell{width:min(100% - 1.5rem,var(--max))}.brand-logo{width:150px;height:auto;max-height:40px}.nav-toggle{display:block;min-width:70px}.hero{display:flex;flex-direction:column;min-height:auto;padding:3.25rem 0 3.75rem;gap:2rem;overflow:hidden}.hero-copy{width:100%}.hero .label{max-width:30ch;line-height:1.5;margin-bottom:1rem}.hero h1{font-size:clamp(3rem,13.5vw,4.25rem);line-height:.98;letter-spacing:-.065em;margin:.75rem 0 1.35rem}.hero h1 em{display:block;font-size:.72em;line-height:1.04;margin-top:.22em;-webkit-text-stroke:1px #78909a}.hero .lede{font-size:1.05rem;line-height:1.65;margin:0;max-width:34rem}.hero .actions{display:grid;grid-template-columns:1fr;margin-top:1.75rem;gap:.75rem;width:100%}.hero .button{width:100%;min-height:52px}.hero-art{order:2;position:relative;right:auto;width:100%;max-width:none;aspect-ratio:16/9;opacity:1;margin:0}.hero-art img{width:min(72%,280px)}.page-hero{padding:3.75rem 0}.page-hero h1{font-size:clamp(2.7rem,13vw,4rem)}.section{padding:4rem 0}.contact-layout{gap:2.5rem}.contact-panel{padding:1.35rem}.contact-email{font-size:clamp(1.45rem,7vw,2rem)}.field-row{grid-template-columns:1fr}.form-column>h2{font-size:2.25rem}input,select,textarea{font-size:16px}.form .button{width:100%}}
@media(max-width:380px){.hero h1{font-size:2.75rem}.brand-logo{width:132px}}

/* v3.2.1 visual balance correction */
@media(min-width:901px){
  .hero{grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr)}
  .hero-art{width:min(100%,360px);aspect-ratio:auto;border:0;background:transparent;overflow:visible}
  .hero-art:before{inset:18%;filter:blur(75px);opacity:.2}
  .hero-art img{width:100%;filter:drop-shadow(0 0 28px rgba(0,216,242,.12))}
  .projects-page .page-hero{padding:4.5rem 0 3rem}
  .projects-page .page-hero .shell,.projects-page .detail-list{width:min(1050px,90vw)}
  .projects-page .page-hero .lede{max-width:760px}
  .projects-page .section{padding:3rem 0 6rem}
  .contact-page .contact-layout{grid-template-columns:minmax(455px,.9fr) minmax(0,1.25fr);gap:clamp(3rem,5vw,5rem)}
  .contact-page .contact-email{font-size:clamp(1.55rem,2vw,2rem);white-space:nowrap;overflow-wrap:normal}
}
@media(max-width:680px){
  .contact-page .contact-email{white-space:normal}
  .projects-page .page-hero{padding:3.25rem 0 2.25rem}
  .projects-page .section{padding-top:2.5rem}
}
