@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  color-scheme: dark;
  --bg: #020408;
  --bg-raised: #070b12;
  --panel: rgba(7, 15, 26, .78);
  --text: #f6f8fc;
  --muted: #a0adbd;
  --muted-2: #6f7c8e;
  --line: rgba(216, 231, 249, .105);
  --line-bright: rgba(216, 231, 249, .19);
  --cyan: #22d3ee;
  --blue: #60a5fa;
  --purple: #a855f7;
  --mint: #98f5e1;
  --mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --display: "Space Grotesk", "Inter", system-ui, sans-serif;
  --body: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --max: 1190px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font:400 15px/1.75 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 73% 5%,rgba(88,47,173,.12),transparent 33rem),radial-gradient(ellipse at 8% 35%,rgba(6,182,212,.08),transparent 34rem),radial-gradient(ellipse at 80% 73%,rgba(37,99,235,.055),transparent 32rem)}
a{color:inherit;text-decoration:none}
button{font:inherit}
img,svg{display:block;max-width:100%}
::selection{background:rgba(34,211,238,.32);color:#fff}
.wrap{width:min(var(--max),calc(100% - 52px));margin-inline:auto}
.skip-link{position:absolute;top:-70px;left:12px;z-index:1000;background:var(--cyan);color:#031017;font-weight:700;padding:10px 14px;border-radius:8px}
.skip-link:focus{top:12px}
.site-noise{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.93' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
.section-grid{position:relative}
.section-grid::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.20;background-image:linear-gradient(rgba(138,174,211,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(138,174,211,.06) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(to bottom,#000,transparent 95%)}
.section-pad{padding:112px 0;position:relative}
.gradient-text{background:linear-gradient(100deg,#67e8f9 0%,#60a5fa 48%,#c084fc 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.muted-gradient{color:#aab6c8;background:linear-gradient(100deg,#b7c3d4,#7b8da4);-webkit-background-clip:text;background-clip:text}
.eyebrow{display:inline-flex;align-items:center;gap:10px;margin:0;color:#67e8f9;font-size:10px;line-height:1.5;font-weight:700;letter-spacing:.21em;text-transform:uppercase}
.status-light{display:inline-block;width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px rgba(34,211,238,.75)}
.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 18px;border:1px solid transparent;border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.015em;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.button:hover{transform:translateY(-2px)}
.button:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.button-primary{background:linear-gradient(110deg,#06b6d4,#2563eb 65%,#7c3aed);color:#fff;box-shadow:0 7px 28px rgba(6,182,212,.13)}
.button-primary:hover{box-shadow:0 9px 34px rgba(34,211,238,.24);filter:brightness(1.08)}
.button-secondary{background:rgba(255,255,255,.025);border-color:var(--line-bright);color:#e5edf7}
.button-secondary:hover{border-color:rgba(34,211,238,.48);background:rgba(34,211,238,.055)}
.text-link{display:inline-flex;align-items:center;gap:10px;margin-top:18px;color:#7de8f6;font-size:12px;font-weight:700;transition:gap .2s ease,color .2s ease}
.text-link:hover{gap:15px;color:#fff}
.site-header{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(216,231,249,.08);background:rgba(2,4,8,.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:inline-flex;align-items:center;gap:11px;min-width:0}
.brand-logo{width:42px;height:42px;object-fit:contain;flex:0 0 auto}
.brand-lockup{display:flex;flex-direction:column;line-height:1.12}
.brand-name{font:700 17px/1.1 var(--display);letter-spacing:.11em;color:#f8fbff;white-space:nowrap}
.brand-name span{background:linear-gradient(100deg,var(--blue),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-caption{margin-top:6px;color:#728096;font:500 8px/1.2 var(--mono);letter-spacing:.09em;white-space:nowrap}
.site-nav{display:flex;align-items:center;gap:26px}
.site-nav>a:not(.nav-cta){color:#a3aec0;font-size:11px;font-weight:600;transition:color .2s ease}
.site-nav>a:not(.nav-cta):hover{color:#fff}
.nav-cta{display:inline-flex;align-items:center;gap:13px;padding:11px 14px;border-radius:8px;background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.18);color:#9beef8;font-size:10px;font-weight:700;white-space:nowrap}
.nav-cta:hover{background:rgba(34,211,238,.14);border-color:rgba(34,211,238,.4)}
.menu-toggle{display:none;width:42px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:rgba(255,255,255,.025);border:1px solid var(--line-bright);border-radius:9px;cursor:pointer}
.menu-toggle span{display:block;width:17px;height:1px;background:#d4deea}

.hero{min-height:640px;padding:86px 0 30px;overflow:hidden}
.hero-glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(3px)}
.hero-glow-cyan{width:430px;height:430px;top:80px;right:-150px;background:radial-gradient(circle,rgba(6,182,212,.09),transparent 70%)}
.hero-glow-purple{width:390px;height:390px;bottom:-130px;left:17%;background:radial-gradient(circle,rgba(124,58,237,.07),transparent 70%)}
.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(400px,.97fr);align-items:center;gap:44px}
.hero-copy{padding:10px 0 26px}
.hero h1{max-width:700px;margin:24px 0 24px;font:600 clamp(49px,6.3vw,77px)/.99 var(--display);letter-spacing:-.075em}
.hero-lede{max-width:590px;margin:0;color:#a8b5c6;font-size:15px;line-height:1.9}
.hero-lede strong{color:#e7eef7;font-weight:600}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:28px}
.hero-trustline{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:32px;color:#7e8ca0;font:500 8px/1.5 var(--mono);letter-spacing:.1em}
.hero-trustline i{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--purple)}
.system-panel{position:relative;border:1px solid rgba(123,179,219,.22);border-radius:16px;overflow:hidden;background:linear-gradient(145deg,rgba(9,18,31,.96),rgba(3,7,13,.98) 65%);box-shadow:0 35px 90px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.04)}
.system-panel::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 52% 43%,rgba(34,211,238,.075),transparent 55%)}
.panel-top,.panel-bottom{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px;min-height:46px;color:#6f8095;font:500 8px/1.3 var(--mono);letter-spacing:.095em}
.panel-top{border-bottom:1px solid var(--line)}
.panel-bottom{border-top:1px solid var(--line);min-height:41px;font-size:7px}
.panel-dots{display:flex;gap:5px}
.panel-dots i{width:6px;height:6px;border-radius:50%;background:#39465a}
.panel-dots i:first-child{background:#ec7185}.panel-dots i:nth-child(2){background:#e4bb62}.panel-dots i:nth-child(3){background:#42d5a2}
.panel-lock{display:inline-flex;align-items:center;gap:6px}
.panel-lock span{width:5px;height:5px;border-radius:50%;background:#a855f7;box-shadow:0 0 10px rgba(168,85,247,.8)}
.panel-screen{position:relative;padding:14px 12px 0;overflow:hidden}
.scanline{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.22;background:linear-gradient(to bottom,transparent 0%,rgba(34,211,238,.07) 50%,transparent 52%);background-size:100% 8px}
.system-svg{width:100%;height:auto;max-height:340px}
.trace-lines{fill:none;stroke:rgba(34,211,238,.36);stroke-width:1.1;stroke-dasharray:4 6;animation:traceflow 18s linear infinite}
.trace-lines .trace-hot{stroke:rgba(168,85,247,.55);stroke-width:1.25;stroke-dasharray:2 4}
.orbit{fill:none;stroke:rgba(96,165,250,.17);stroke-dasharray:2 7}
.orbit-two{stroke:rgba(168,85,247,.13);stroke-dasharray:1 9}
.core-halo{fill:rgba(34,211,238,.2)}
.core-node{stroke:rgba(34,211,238,.62);stroke-width:1;fill:rgba(7,19,34,.95)}
.micro-label{fill:#5edff0;font:600 7px var(--mono);letter-spacing:1px}
.node-divider{stroke:rgba(206,220,239,.15)}
.core-label{fill:#f4f8ff;font:700 13px var(--display);letter-spacing:1.6px}
.core-sub{fill:#8a9caf;font:500 7px var(--mono);letter-spacing:.7px}
.map-node rect{fill:rgba(5,12,22,.95);stroke:rgba(125,166,200,.27);stroke-width:1}
.node-title{fill:#e3ebf5;font:600 10px var(--body)}
.system-svg .core-label,.system-svg .node-title{fill:url(#nodeTextGradient)}
.node-sub{fill:#70839a;font:500 6px var(--mono);letter-spacing:.25px}
.endpoint{fill:var(--cyan);filter:drop-shadow(0 0 4px rgba(34,211,238,.9))}
.terminal-strip{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 4px;padding:12px 6px 13px;color:#8e9eb2;font:500 8px/1.5 var(--mono);letter-spacing:.025em}
.terminal-prompt{color:#c084fc;letter-spacing:.08em}
.terminal-strip b{color:var(--cyan);font-weight:500}
.panel-version{color:#9fadc0}
.panel-version b{color:var(--cyan);font-size:7px}
.discipline-bar{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;margin-top:38px;padding:17px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:#96a4b6;font:500 9px/1.5 var(--mono);letter-spacing:.085em;text-transform:uppercase}
.discipline-bar b{color:#674caa;font-weight:400}

.intro-section{background:linear-gradient(180deg,rgba(255,255,255,.012),transparent)}
.intro-layout{display:grid;grid-template-columns:minmax(135px,.36fr) minmax(0,1fr);gap:56px}
.section-label{display:flex;align-items:center;gap:10px;padding-top:10px;color:#8290a4;font:500 9px/1.4 var(--mono);letter-spacing:.12em}
.index-code{color:#a78bfa;font-size:12px}
.label-line{flex:1;max-width:55px;height:1px;background:linear-gradient(90deg,rgba(168,85,247,.65),transparent)}
.intro-copy{max-width:900px}
.intro-copy h2,.section-heading h2,.security-main h2,.engagement-layout h2,.faq-heading h2{margin:15px 0 24px;font:600 clamp(34px,4.6vw,57px)/1.08 var(--display);letter-spacing:-.065em}
.intro-copy p:not(.eyebrow){max-width:790px;color:var(--muted);font-size:14px;line-height:1.95;margin:0 0 17px}
.intro-copy .intro-main{color:#dce5f0!important;font-size:17px!important;line-height:1.85!important}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:42px}
.section-heading h2{margin-bottom:0}
.section-summary{max-width:395px;margin:0 0 5px;color:var(--muted);font-size:13px;line-height:1.9}
.capabilities-section{background:radial-gradient(ellipse at 100% 15%,rgba(124,58,237,.045),transparent 36rem)}
.capability-list{border-top:1px solid var(--line-bright)}
.capability-row{display:grid;grid-template-columns:100px minmax(230px,.78fr) minmax(0,1.22fr);gap:28px;padding:29px 0 31px;border-bottom:1px solid var(--line);transition:background .2s ease}
.capability-row:hover{background:linear-gradient(90deg,rgba(34,211,238,.025),transparent 74%)}
.capability-number{display:flex;flex-direction:column;gap:7px;color:#c084fc;font:500 17px/1.25 var(--mono)}
.capability-number span{color:#697b91;font-size:8px;letter-spacing:.15em}
.capability-title h3{margin:0 0 9px;font:600 20px/1.3 var(--display);letter-spacing:-.035em}
.capability-title p{margin:0;color:#75869b;font-size:11px;line-height:1.75}
.capability-copy p{max-width:675px;margin:0;color:#a3b0c0;font-size:12px;line-height:1.95}
.keyword-line{margin-top:15px;color:#6a8da6;font:500 8px/1.7 var(--mono);letter-spacing:.035em}

.security-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(ellipse at 0% 50%,rgba(6,182,212,.065),transparent 30rem),rgba(5,9,16,.68)}
.security-layout{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);gap:clamp(40px,8vw,120px)}
.security-aside{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;min-height:450px;padding:7px 0 9px}
.security-mark{position:relative;width:min(240px,100%);aspect-ratio:1;display:grid;place-items:center;margin:28px auto}
.security-mark::before,.security-mark::after{content:"";position:absolute;inset:14%;border:1px solid rgba(34,211,238,.23);transform:rotate(45deg)}
.security-mark::after{inset:25%;border-color:rgba(168,85,247,.42);transform:rotate(0deg)}
.security-mark span{position:absolute;width:76%;height:1px;background:linear-gradient(90deg,transparent,rgba(34,211,238,.55),transparent);transform:rotate(35deg)}
.security-mark span:nth-child(2){transform:rotate(-35deg);background:linear-gradient(90deg,transparent,rgba(168,85,247,.55),transparent)}
.security-mark span:nth-child(3){width:56%;transform:rotate(90deg);background:linear-gradient(90deg,transparent,rgba(96,165,250,.4),transparent)}
.security-mark i{position:relative;z-index:1;width:72px;height:72px;display:grid;place-items:center;border:1px solid rgba(34,211,238,.44);border-radius:50%;background:rgba(3,12,22,.88);box-shadow:0 0 34px rgba(34,211,238,.1);font:600 17px var(--mono);font-style:normal;letter-spacing:.12em;color:#a5f3fc}
.security-caption{margin:0;color:#7893a8;font:500 9px/1.8 var(--mono);letter-spacing:.1em}
.security-main{max-width:790px}
.section-kicker{margin:0;color:#8b79d9;font:600 9px/1.5 var(--mono);letter-spacing:.15em}
.security-main h2{margin-bottom:21px}
.security-main>p:not(.section-kicker){color:var(--muted);font-size:13px;line-height:1.95;margin:0 0 17px}
.security-main .security-lede{color:#d2dde9!important;font-size:16px!important;line-height:1.85!important}
.security-points{margin:25px 0 12px;border-top:1px solid var(--line)}
.security-points>div{display:flex;gap:15px;padding:16px 0;border-bottom:1px solid var(--line)}
.point-icon{color:var(--cyan);font:500 15px var(--mono)}
.security-points strong{display:block;font:600 12px/1.5 var(--display);color:#eaf3fc}
.security-points small{display:block;margin-top:4px;color:#8291a4;font-size:11px;line-height:1.7}

.work-section{background:linear-gradient(180deg,rgba(7,11,20,.25),rgba(2,4,8,.2))}
.featured-project{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:44px;align-items:center;padding:35px 0;border-top:1px solid var(--line-bright);border-bottom:1px solid var(--line-bright)}
.project-kicker{display:flex;align-items:center;gap:9px;margin:0 0 17px;color:#8aa2b9;font:500 8px var(--mono);letter-spacing:.14em}
.project-info h3{margin:0;font:700 clamp(43px,5vw,62px)/.98 var(--display);letter-spacing:-.075em}
.project-info h3 span{background:linear-gradient(120deg,var(--cyan),var(--blue),var(--purple));-webkit-background-clip:text;background-clip:text;color:transparent}
.project-summary{margin:15px 0!important;color:#e5edf7!important;font-size:15px!important;line-height:1.8!important}
.project-info>p:not(.project-kicker):not(.project-summary){color:var(--muted);font-size:12px;line-height:1.9;margin:0 0 13px}
.project-tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}
.project-tags span{padding:5px 7px;border:1px solid rgba(125,157,189,.19);border-radius:4px;color:#94a8bd;font:500 8px var(--mono);letter-spacing:.055em}
.project-screen{position:relative;overflow:hidden;border:1px solid rgba(110,180,216,.22);border-radius:12px;background:#03070d;box-shadow:0 24px 70px rgba(0,0,0,.35)}
.project-screen::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(115deg,rgba(6,182,212,.06),transparent 48%,rgba(168,85,247,.06))}
.screen-top,.screen-bottom{position:relative;z-index:2;min-height:39px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 13px;color:#8193a9;font:500 7px var(--mono);letter-spacing:.08em}
.screen-top{border-bottom:1px solid var(--line)}
.screen-top>div{display:flex;gap:4px}
.screen-top i{width:5px;height:5px;background:#46566a;border-radius:50%}
.screen-top i:first-child{background:#ed7a8e}.screen-top i:nth-child(2){background:#dbb75f}.screen-top i:nth-child(3){background:#40d5a6}
.screen-live{color:#67e8f9}
.project-screen img{width:100%;height:auto;min-height:150px;object-fit:contain}
.screen-bottom{border-top:1px solid var(--line);color:#6f8fa5}
.research-band{display:grid;grid-template-columns:140px minmax(0,1fr) auto;gap:27px;align-items:start;padding:30px 0 0}
.research-band-label{color:#c084fc;font:500 9px/1.6 var(--mono);letter-spacing:.1em}
.research-band-label span{display:block;margin-top:6px;color:#69788d}
.research-band h3{margin:0 0 7px;font:600 17px/1.4 var(--display)}
.research-band p{max-width:710px;margin:0;color:var(--muted);font-size:12px;line-height:1.9}
.research-band .text-link{margin-top:2px;white-space:nowrap}

.approach-section{border-top:1px solid var(--line);background:radial-gradient(ellipse at 100% 20%,rgba(168,85,247,.055),transparent 33rem)}
.process-list{border-top:1px solid var(--line-bright)}
.process-list article{display:grid;grid-template-columns:65px minmax(0,1fr) 100px;gap:20px;align-items:start;padding:23px 0;border-bottom:1px solid var(--line)}
.process-index{color:#bb9aff;font:500 12px var(--mono);padding-top:3px}
.process-list h3{margin:0 0 7px;font:600 17px/1.4 var(--display)}
.process-list p{max-width:760px;margin:0;color:var(--muted);font-size:12px;line-height:1.85}
.process-code{padding-top:4px;text-align:right;color:#567c91;font:500 8px var(--mono);letter-spacing:.08em}

.engagement-section{background:linear-gradient(180deg,rgba(255,255,255,.012),transparent);border-top:1px solid var(--line)}
.engagement-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:60px;align-items:start}
.engagement-layout h2{font-size:clamp(35px,4.5vw,54px)}
.engagement-copy p{margin:0 0 17px;color:var(--muted);font-size:13px;line-height:1.95}
.engagement-copy .button{margin-top:7px}

.faq-section{border-top:1px solid var(--line);background:rgba(4,8,14,.56)}
.faq-layout{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:clamp(45px,8vw,110px);align-items:start}
.faq-heading h2{font-size:clamp(37px,4.5vw,55px);margin-bottom:17px}
.faq-heading>p:not(.eyebrow){max-width:290px;margin:0;color:var(--muted);font-size:12px;line-height:1.9}
.faq-side-note{display:flex;align-items:center;gap:10px;margin-top:33px;color:#6d7f93;font:500 8px var(--mono);letter-spacing:.13em}
.faq-side-note i{width:36px;height:1px;background:linear-gradient(90deg,var(--cyan),var(--purple))}
.faq-list{border-top:1px solid var(--line-bright)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{display:grid;grid-template-columns:33px minmax(0,1fr) 22px;gap:12px;align-items:center;list-style:none;cursor:pointer;padding:20px 0;font:600 13px/1.55 var(--display);letter-spacing:-.015em}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{color:#8b73cb;font:500 9px var(--mono)}
.faq-list summary b{display:grid;place-items:center;color:var(--cyan);font:400 19px var(--body);transition:transform .2s ease}
.faq-list details[open] summary b{transform:rotate(45deg)}
.faq-list details>div{padding:0 22px 20px 45px}
.faq-list details p{max-width:700px;margin:0;color:var(--muted);font-size:12px;line-height:1.9}

.contact-section{padding:45px 0 95px}
.contact-frame{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:38px;align-items:end;padding:clamp(31px,5vw,58px);border:1px solid rgba(34,211,238,.23);border-radius:16px;background:radial-gradient(ellipse at 97% 1%,rgba(168,85,247,.15),transparent 38%),radial-gradient(ellipse at 0% 100%,rgba(6,182,212,.09),transparent 50%),linear-gradient(125deg,rgba(8,18,31,.97),rgba(3,7,13,.98))}
.contact-grid{position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(125,174,211,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(125,174,211,.08) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(110deg,#000,transparent 80%)}
.contact-copy,.contact-actions{position:relative;z-index:1}
.contact-copy h2{margin:14px 0 14px;font:600 clamp(39px,5vw,62px)/1.02 var(--display);letter-spacing:-.07em}
.contact-copy>p:last-child{max-width:670px;margin:0;color:var(--muted);font-size:13px;line-height:1.9}
.contact-actions{display:flex;flex-direction:column;gap:10px;min-width:185px}

.site-footer{border-top:1px solid var(--line);background:rgba(1,3,7,.64)}
.footer-main{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(110px,.7fr));gap:40px;padding:50px 0 44px}
.footer-brand-block .brand-logo{width:39px;height:39px}
.footer-brand-block .brand-name{font-size:15px}
.footer-brand-block .brand-caption{font-size:7px}
.footer-brand-block>p{max-width:270px;margin:16px 0 0;color:#7b8a9e;font-size:11px;line-height:1.85}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-heading{margin:2px 0 6px;color:#7d8ea5;font:600 8px var(--mono);letter-spacing:.15em}
.footer-column a{color:#a0aec0;font-size:10px;line-height:1.5;transition:color .2s ease}
.footer-column a:hover{color:#67e8f9}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0 21px;border-top:1px solid var(--line);color:#637186;font:500 7px/1.7 var(--mono);letter-spacing:.055em}
.footer-bottom i{color:#9977db;font-style:normal}
.footer-bottom a{color:#7e8ea3;white-space:nowrap}
.footer-bottom a:hover{color:#67e8f9}

/* Reusable legal / policy page shell */
.legal-hero{position:relative;padding:74px 0 46px;border-bottom:1px solid var(--line);overflow:hidden;background:radial-gradient(ellipse at 75% 0%,rgba(6,182,212,.08),transparent 35rem)}
.legal-hero h1{max-width:900px;margin:18px 0 15px;font:600 clamp(43px,6vw,70px)/1 var(--display);letter-spacing:-.075em}
.legal-hero p{max-width:760px;margin:0;color:var(--muted);font-size:14px;line-height:1.9}
.legal-meta{margin-top:20px;color:#73849a;font:500 9px/1.6 var(--mono);letter-spacing:.08em}
.legal-content{display:grid;grid-template-columns:220px minmax(0,1fr);gap:60px;padding:60px 0 100px}
.legal-toc{align-self:start;position:sticky;top:105px;padding:20px 0;border-top:1px solid var(--line-bright)}
.legal-toc span{display:block;margin-bottom:13px;color:#8f7dde;font:600 8px var(--mono);letter-spacing:.14em}
.legal-toc a{display:block;padding:7px 0;color:#8f9eb1;font-size:10px;line-height:1.5}
.legal-toc a:hover{color:var(--cyan)}
.legal-copy{max-width:850px}
.legal-copy h2{margin:34px 0 12px;padding-top:7px;font:600 22px/1.35 var(--display);letter-spacing:-.035em}
.legal-copy h2:first-child{margin-top:0}
.legal-copy h3{margin:23px 0 8px;font:600 15px/1.5 var(--display)}
.legal-copy p,.legal-copy li{color:var(--muted);font-size:12px;line-height:1.95}
.legal-copy p{margin:0 0 14px}
.legal-copy ul{padding-left:20px;margin:8px 0 17px}
.legal-copy li{padding-left:4px;margin:5px 0}
.legal-copy strong{color:#e1eaf5;font-weight:600}
.legal-copy a{color:#67e8f9;text-decoration:underline;text-decoration-color:rgba(34,211,238,.34);text-underline-offset:3px}
.legal-copy a:hover{color:#fff}
.legal-callout{margin:24px 0;padding:17px 20px;border-left:2px solid var(--purple);background:rgba(168,85,247,.055);color:#b4c1d1;font-size:11px;line-height:1.85}

@keyframes traceflow{to{stroke-dashoffset:-120}}
@media(max-width:1050px){
  .site-nav{gap:17px}.site-nav>a:not(.nav-cta){font-size:10px}
  .hero-layout{grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);gap:28px}
  .hero h1{font-size:clamp(48px,5.7vw,68px)}
  .capability-row{grid-template-columns:70px minmax(190px,.78fr) minmax(0,1.22fr);gap:20px}
  .featured-project{gap:28px}
  .footer-main{gap:26px}
}
@media(max-width:800px){
  .wrap{width:min(var(--max),calc(100% - 36px))}
  .section-pad{padding:80px 0}
  .nav-wrap{height:69px}
  .brand-logo{width:37px;height:37px}
  .brand-name{font-size:15px}.brand-caption{font-size:7px}
  .menu-toggle{display:flex}
  .site-nav{display:none;position:absolute;top:69px;left:0;right:0;align-items:stretch;flex-direction:column;gap:0;padding:12px 18px 20px;background:rgba(2,4,8,.985);border-bottom:1px solid var(--line);box-shadow:0 22px 38px rgba(0,0,0,.48)}
  .site-nav.is-open{display:flex}
  .site-nav>a:not(.nav-cta){padding:13px 4px;border-bottom:1px solid var(--line);font-size:12px}
  .nav-cta{justify-content:center;margin-top:12px;padding:14px}
  .hero{padding:56px 0 26px;min-height:0}
  .hero-layout{grid-template-columns:1fr;gap:31px}
  .hero-copy{padding:0}
  .hero h1{font-size:clamp(49px,10vw,72px)}
  .hero-lede{max-width:690px;font-size:14px}
  .system-panel{max-width:620px;width:100%;margin-inline:auto}
  .discipline-bar{gap:10px 14px;margin-top:24px;padding:14px 4px;font-size:8px}
  .intro-layout{grid-template-columns:1fr;gap:22px}
  .section-label{padding-top:0}
  .label-line{max-width:100px}
  .section-heading{display:block;margin-bottom:31px}
  .section-summary{margin-top:18px;max-width:650px}
  .capability-row{grid-template-columns:58px minmax(0,1fr);gap:12px 18px;padding:24px 0}
  .capability-title h3{font-size:19px}
  .capability-copy{grid-column:2}
  .security-layout{grid-template-columns:1fr;gap:25px}
  .security-aside{min-height:0}
  .security-mark{width:135px;margin:24px 0 8px;align-self:center}
  .security-caption{display:none}
  .featured-project{grid-template-columns:1fr;gap:29px;padding:28px 0}
  .project-screen{max-width:720px}
  .research-band{grid-template-columns:100px minmax(0,1fr);gap:16px}
  .research-band .text-link{grid-column:2;margin-top:0}
  .engagement-layout{grid-template-columns:1fr;gap:21px}
  .faq-layout{grid-template-columns:1fr;gap:30px}
  .faq-heading>p:not(.eyebrow){max-width:520px}
  .faq-side-note{margin-top:17px}
  .contact-frame{grid-template-columns:1fr;gap:25px}
  .contact-actions{flex-direction:row;flex-wrap:wrap}
  .footer-main{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 23px;padding:38px 0}
  .footer-brand-block{grid-column:1/-1}
  .footer-bottom{flex-wrap:wrap;justify-content:flex-start}
  .legal-content{grid-template-columns:1fr;gap:25px;padding:40px 0 75px}
  .legal-toc{position:static;display:flex;flex-wrap:wrap;gap:5px 16px;padding:15px 0}
  .legal-toc span{width:100%;margin-bottom:4px}
}
@media(max-width:480px){
  .wrap{width:calc(100% - 28px)}
  .brand{gap:8px}.brand-logo{width:34px;height:34px}
  .brand-name{font-size:14px;letter-spacing:.09em}.brand-caption{font-size:6px;letter-spacing:.07em}
  .hero h1{font-size:clamp(44px,12vw,57px)}
  .hero-lede{font-size:13px;line-height:1.85}
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .button{width:100%}
  .hero-trustline{font-size:7px;gap:7px}
  .panel-top{padding:0 10px;font-size:6px;min-height:39px}
  .panel-bottom{padding:0 10px;font-size:6px}
  .panel-screen{padding:10px 4px 0}
  .terminal-strip{font-size:6px;gap:5px;padding:8px 4px 10px}
  .discipline-bar{justify-content:flex-start;line-height:1.9}
  .discipline-bar b{display:none}
  .discipline-bar span{padding:4px 7px;border:1px solid var(--line);border-radius:4px}
  .section-pad{padding:66px 0}
  .intro-copy h2,.section-heading h2,.security-main h2,.engagement-layout h2,.faq-heading h2{font-size:36px}
  .intro-copy .intro-main{font-size:15px!important}
  .capability-row{grid-template-columns:40px minmax(0,1fr);gap:10px}
  .capability-number{font-size:13px}.capability-number span{font-size:6px}
  .capability-title h3{font-size:17px}
  .capability-title p{font-size:10px}
  .capability-copy p{font-size:11px}
  .keyword-line{font-size:7px}
  .project-info h3{font-size:49px}
  .screen-top,.screen-bottom{padding:0 8px;font-size:6px}
  .research-band{grid-template-columns:1fr;gap:10px}
  .research-band .text-link{grid-column:auto}
  .process-list article{grid-template-columns:34px minmax(0,1fr);gap:12px}
  .process-code{display:none}
  .faq-list summary{grid-template-columns:25px minmax(0,1fr) 18px;gap:8px;font-size:12px}
  .faq-list details>div{padding-left:33px;padding-right:6px}
  .contact-actions{flex-direction:column;align-items:stretch}
  .footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 17px}
  .footer-brand-block{grid-column:1/-1}
  .footer-bottom{font-size:6px}
  .legal-hero{padding:55px 0 35px}
  .legal-hero h1{font-size:45px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* -------------------------------------------------------------------------
   GHOST LABS / READABILITY & BRAND POLISH
   Larger type, stronger contrast, and more obvious interactive elements.
   Kept as a small override layer so the existing responsive design stays intact.
   ------------------------------------------------------------------------- */
:root {
  --muted: #b3bfce;
  --muted-2: #8796aa;
}

/* Brand lockup: the mark should feel like a real company identity, not a favicon. */
.nav-wrap { min-height: 92px; height: 92px; }
.brand { gap: 14px; }
.brand-logo {
  width: 70px;
  height: 70px;
  filter: drop-shadow(0 0 12px rgba(34,211,238,.2)) drop-shadow(0 0 24px rgba(168,85,247,.1));
}
.brand-name {
  font-size: 22px;
  letter-spacing: .13em;
  text-shadow: 0 0 22px rgba(34,211,238,.12);
}
.brand-name span {
  background: linear-gradient(100deg, #67e8f9 0%, #60a5fa 52%, #c084fc 100%);
  -webkit-background-clip: text;
  background-clip: text;
}
.brand-caption {
  margin-top: 7px;
  color: #8cecf8;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .105em;
  text-shadow: 0 0 16px rgba(34,211,238,.16);
}
.site-nav { gap: 23px; }
.site-nav > a:not(.nav-cta) { font-size: 12.5px; }
.nav-cta {
  padding: 13px 16px;
  font-size: 11.5px;
  box-shadow: 0 0 22px rgba(34,211,238,.055);
}
.menu-toggle { width: 46px; height: 46px; }

/* Small labels remain secondary, but no longer disappear at normal reading distance. */
.eyebrow { font-size: 11.5px; letter-spacing: .16em; }
.section-label { font-size: 11px; letter-spacing: .1em; }
.index-code { font-size: 14px; }
.hero-trustline { font-size: 10px; color: #a0aec1; }
.discipline-bar { font-size: 11px; color: #b2c0d1; }
.panel-top { font-size: 9.5px; color: #8ea0b8; }
.panel-bottom { min-height: 45px; font-size: 9px; color: #91a2b8; }
.terminal-strip { font-size: 10px; color: #adbbcc; }
.panel-version b { font-size: 9px; }
.section-kicker, .project-kicker { font-size: 10.5px; }
.capability-number span { font-size: 10px; }
.keyword-line { font-size: 10px; color: #83a9c0; letter-spacing: .015em; }

/* More generous body copy and clearer section hierarchy. */
.intro-copy p:not(.eyebrow) { font-size: 16px; line-height: 1.9; color: #b6c2d1; }
.intro-copy .intro-main { font-size: 18px !important; color: #e5edf7 !important; line-height: 1.85 !important; }
.section-summary { font-size: 15px; line-height: 1.85; color: #b0bdcd; }
.capability-number { font-size: 19px; }
.capability-title h3 { font-size: 22px; line-height: 1.28; color: #e8f4ff; }
.capability-title p { font-size: 14px; line-height: 1.75; color: #a3b3c6; }
.capability-copy p { font-size: 15px; line-height: 1.9; color: #bdc8d6; }
.capability-row:nth-child(4) .capability-title h3 {
  color: #91eff8;
  background: linear-gradient(100deg, #67e8f9, #93c5fd 55%, #c4b5fd);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.capability-row:nth-child(4) .capability-number { color: #67e8f9; }
.security-main > p:not(.section-kicker) { font-size: 15.5px; line-height: 1.9; color: #b7c4d3; }
.security-main .security-lede { font-size: 18px !important; color: #e3edf8 !important; }
.security-points strong { font-size: 15px; color: #edf7ff; }
.security-points small { font-size: 13.5px; color: #a7b8ca; line-height: 1.75; }
.project-info > p:not(.project-kicker):not(.project-summary) { font-size: 15px; line-height: 1.9; color: #b5c2d1; }
.project-summary { font-size: 17px !important; line-height: 1.8 !important; }
.project-kicker { color: #aabbd0; }
.project-tags span { padding: 7px 10px; font-size: 10px; color: #b5cae0; border-color: rgba(125,157,189,.3); }
.screen-top, .screen-bottom { min-height: 43px; font-size: 9px; color: #a3b4c8; }
.research-band-label { font-size: 10px; }
.research-band-label span { color: #9caec2; }
.research-band h3 { font-size: 20px; }
.research-band p { font-size: 15px; line-height: 1.85; color: #b4c1d0; }
.research-band .text-link { font-size: 13px; }
.process-index { font-size: 14px; }
.process-list h3 { font-size: 19px; }
.process-list p { font-size: 15px; line-height: 1.85; color: #b5c2d1; }
.process-code { font-size: 10px; color: #76a2b8; }
.engagement-copy p { font-size: 15.5px; line-height: 1.9; color: #bac6d5; }
.faq-heading > p:not(.eyebrow) { max-width: 350px; font-size: 15px; line-height: 1.85; color: #b2bfce; }
.faq-side-note { font-size: 10px; color: #8b9bb0; }
.faq-list summary { font-size: 15.5px; line-height: 1.55; padding: 23px 0; }
.faq-list summary span { font-size: 11px; }
.faq-list summary b { font-size: 23px; }
.faq-list details > div { padding-bottom: 24px; }
.faq-list details p { font-size: 15px; line-height: 1.9; color: #b8c5d4; }
.contact-copy > p:last-child { font-size: 16px; line-height: 1.85; color: #bdc9d7; }

/* Footer items become readable, clearly clickable controls. */
.footer-main { gap: 34px; padding: 54px 0 46px; }
.footer-brand-block .brand-logo { width: 54px; height: 54px; }
.footer-brand-block .brand-name { font-size: 18px; }
.footer-brand-block .brand-caption { font-size: 9px; }
.footer-brand-block > p { max-width: 310px; font-size: 14px; line-height: 1.85; color: #a5b3c5; }
.footer-heading {
  margin: 0 0 7px;
  color: #8cecf8;
  font-size: 11px;
  letter-spacing: .13em;
  text-shadow: 0 0 16px rgba(34,211,238,.12);
}
.footer-column { gap: 9px; }
.footer-column a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 5px 10px;
  border: 1px solid transparent;
  border-radius: 7px;
  color: #b4c1d0;
  font-size: 13px;
  line-height: 1.45;
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}
.footer-column a:hover {
  color: #e7fbff;
  background: rgba(34,211,238,.07);
  border-color: rgba(34,211,238,.19);
  transform: translateX(2px);
}
.footer-bottom {
  gap: 15px;
  padding: 20px 0 25px;
  color: #98a8bb;
  font: 500 10.5px/1.8 var(--mono);
  letter-spacing: .015em;
}
.footer-bottom a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 7px 13px;
  border: 1px solid rgba(34,211,238,.3);
  border-radius: 8px;
  background: rgba(34,211,238,.065);
  color: #a5f3fc;
  font: 700 11px/1.4 var(--body);
  letter-spacing: .035em;
  transition: background .2s ease, border-color .2s ease, transform .2s ease;
}
.footer-bottom a:hover {
  color: #fff;
  background: rgba(34,211,238,.13);
  border-color: rgba(34,211,238,.6);
  transform: translateY(-1px);
}

/* Legal pages use the same high-readability type scale. */
.legal-hero p { font-size: 16px; line-height: 1.85; color: #b8c5d4; }
.legal-meta { font-size: 11px; color: #98a9bd; letter-spacing: .04em; }
.legal-toc span { font-size: 10px; }
.legal-toc a { font-size: 13px; line-height: 1.65; padding: 8px 0; color: #aab9cb; }
.legal-copy h2 { font-size: 25px; }
.legal-copy h3 { font-size: 19px; }
.legal-copy p, .legal-copy li { font-size: 15px; line-height: 1.9; color: #b7c4d3; }
.legal-copy strong { color: #f0f7ff; }
.legal-callout { font-size: 14px; line-height: 1.85; }

/* Responsive scale: preserve the stronger type without squeezing the layout. */
@media (max-width: 1050px) {
  .site-nav { gap: 15px; }
  .site-nav > a:not(.nav-cta) { font-size: 11.5px; }
  .brand-logo { width: 64px; height: 64px; }
  .brand-name { font-size: 20px; }
  .brand-caption { font-size: 9.5px; }
  .capability-title h3 { font-size: 20px; }
}
@media (max-width: 800px) {
  .nav-wrap { height: 80px; min-height: 80px; }
  .brand-logo { width: 56px; height: 56px; }
  .brand-name { font-size: 19px; }
  .brand-caption { font-size: 9px; }
  .site-nav { top: 80px; }
  .site-nav > a:not(.nav-cta) { font-size: 14px; padding: 15px 4px; }
  .nav-cta { font-size: 13px; }
  .hero-trustline { font-size: 9px; }
  .discipline-bar { font-size: 10px; }
  .capability-copy p { font-size: 15px; }
  .capability-title p { font-size: 13.5px; }
  .keyword-line { font-size: 9.5px; }
  .security-main > p:not(.section-kicker) { font-size: 15px; }
  .security-main .security-lede { font-size: 17px !important; }
  .project-info > p:not(.project-kicker):not(.project-summary) { font-size: 14.5px; }
  .research-band p, .process-list p, .engagement-copy p, .faq-list details p { font-size: 14.5px; }
  .footer-brand-block .brand-logo { width: 48px; height: 48px; }
  .footer-brand-block > p { font-size: 13.5px; }
  .footer-heading { font-size: 11px; }
  .footer-column a { font-size: 13px; }
  .footer-bottom { font-size: 10px; }
  .legal-copy p, .legal-copy li { font-size: 14.5px; }
}
@media (max-width: 480px) {
  .nav-wrap { height: 74px; min-height: 74px; }
  .brand { gap: 7px; }
  .brand-logo { width: 47px; height: 47px; }
  .brand-name { font-size: 16px; letter-spacing: .08em; }
  .brand-caption { font-size: 7.7px; letter-spacing: .03em; white-space: normal; max-width: 190px; line-height: 1.35; }
  .site-nav { top: 74px; }
  .menu-toggle { width: 42px; height: 42px; }
  .eyebrow { font-size: 10px; letter-spacing: .12em; }
  .section-label { font-size: 10px; }
  .hero-trustline { font-size: 7.5px; letter-spacing: .035em; }
  .discipline-bar { font-size: 9px; }
  .panel-top { font-size: 7.5px; }
  .panel-bottom { font-size: 7.5px; }
  .terminal-strip { font-size: 7px; }
  .intro-copy p:not(.eyebrow) { font-size: 15px; line-height: 1.85; }
  .intro-copy .intro-main { font-size: 16px !important; }
  .capability-number { font-size: 14px; }
  .capability-number span { font-size: 8px; }
  .capability-title h3 { font-size: 18px; }
  .capability-title p { font-size: 12.5px; }
  .capability-copy p { font-size: 14px; line-height: 1.85; }
  .keyword-line { font-size: 8.5px; line-height: 1.75; }
  .section-summary { font-size: 14px; }
  .security-main > p:not(.section-kicker) { font-size: 14px; }
  .security-main .security-lede { font-size: 16px !important; }
  .security-points strong { font-size: 14px; }
  .security-points small { font-size: 12.5px; }
  .project-info > p:not(.project-kicker):not(.project-summary) { font-size: 14px; }
  .project-summary { font-size: 15px !important; }
  .project-tags span { font-size: 9px; }
  .research-band h3 { font-size: 18px; }
  .research-band p { font-size: 14px; }
  .process-list h3 { font-size: 17px; }
  .process-list p, .engagement-copy p { font-size: 14px; }
  .faq-heading > p:not(.eyebrow) { font-size: 14px; }
  .faq-list summary { font-size: 14px; }
  .faq-list details p { font-size: 14px; }
  .contact-copy > p:last-child { font-size: 14.5px; }
  .footer-main { gap: 25px 12px; padding: 33px 0; }
  .footer-brand-block .brand-logo { width: 43px; height: 43px; }
  .footer-brand-block .brand-name { font-size: 16px; }
  .footer-brand-block .brand-caption { font-size: 7px; }
  .footer-brand-block > p { font-size: 13px; }
  .footer-heading { font-size: 10px; }
  .footer-column { gap: 7px; }
  .footer-column a { min-height: 36px; padding: 6px 8px; font-size: 12px; }
  .footer-bottom { align-items: flex-start; flex-direction: column; font-size: 9px; }
  .footer-bottom a { min-height: 40px; font-size: 11px; }
  .legal-hero p { font-size: 14px; }
  .legal-meta { font-size: 9px; }
  .legal-toc a { font-size: 12px; }
  .legal-copy h2 { font-size: 22px; }
  .legal-copy h3 { font-size: 17px; }
  .legal-copy p, .legal-copy li { font-size: 14px; }
  .legal-callout { font-size: 13px; padding: 15px; }
}


/* -------------------------------------------------------------------------
   GHOST LABS / NEON ATELIER
   Premium visual layer: luminous brand, layered glass, richer project gallery.
   ------------------------------------------------------------------------- */
:root {
  --aqua: #63f3f2;
  --electric-blue: #589dff;
  --electric-violet: #b58aff;
  --glass-edge: rgba(129, 212, 250, .21);
}
body::before {
  background:
    radial-gradient(ellipse at 76% 7%, rgba(115, 57, 221, .19), transparent 36rem),
    radial-gradient(ellipse at 10% 28%, rgba(6, 182, 212, .13), transparent 39rem),
    radial-gradient(ellipse at 88% 56%, rgba(38, 98, 255, .09), transparent 34rem),
    radial-gradient(ellipse at 50% 100%, rgba(106, 47, 190, .075), transparent 42rem);
}
.site-header {
  position: sticky;
  isolation: isolate;
  background: linear-gradient(100deg, rgba(2,4,8,.94), rgba(5,9,18,.88) 55%, rgba(9,5,20,.92));
  border-bottom-color: rgba(140, 208, 244, .12);
}
.site-header::after {
  content: "";
  position: absolute;
  height: 1px;
  bottom: -1px;
  left: 0;
  right: 0;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(34,211,238,.7) 22%, rgba(96,165,250,.52) 58%, rgba(192,132,252,.6) 82%, transparent);
  opacity: .72;
}
.nav-wrap { height: 116px; min-height: 116px; }
.brand { gap: 15px; }
.brand-logo {
  width: 96px;
  height: 96px;
  object-fit: contain;
  filter: drop-shadow(0 0 13px rgba(34,211,238,.28)) drop-shadow(0 0 28px rgba(96,165,250,.14)) drop-shadow(0 0 38px rgba(168,85,247,.12));
  transition: filter .25s ease, transform .25s ease;
}
.brand:hover .brand-logo {
  transform: scale(1.035);
  filter: drop-shadow(0 0 18px rgba(34,211,238,.4)) drop-shadow(0 0 38px rgba(168,85,247,.22));
}
.brand-name { font-size: 25px; letter-spacing: .15em; }
.brand-caption { font-size: 11px; letter-spacing: .13em; }
.site-nav { gap: 13px; }
.site-nav > a:not(.nav-cta) { font-size: 12px; }
.nav-cta { box-shadow: 0 0 23px rgba(34,211,238,.09), inset 0 0 15px rgba(34,211,238,.035); }
.language-switch {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  flex: 0 0 auto;
  padding: 4px;
  border: 1px solid rgba(125, 182, 224, .22);
  border-radius: 11px;
  background: rgba(7, 16, 30, .82);
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 5px 22px rgba(0,0,0,.16);
}
.language-switch button {
  min-width: 34px;
  min-height: 31px;
  padding: 0 7px;
  border: 1px solid transparent;
  border-radius: 7px;
  background: transparent;
  color: #8095ad;
  cursor: pointer;
  font: 700 10px/1 var(--mono);
  letter-spacing: .08em;
  transition: color .2s ease, background .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.language-switch button:hover { color: #eafaff; }
.language-switch button[aria-pressed="true"] {
  color: #031117;
  border-color: rgba(103,232,249,.75);
  background: linear-gradient(120deg, #67e8f9, #93c5fd 62%, #c4b5fd);
  box-shadow: 0 0 17px rgba(34,211,238,.22);
}
.language-switch > span {
  width: 1px;
  height: 14px;
  background: rgba(132, 160, 194, .22);
}
.hero-copy h1 { text-shadow: 0 8px 60px rgba(54, 99, 211, .1); }
.hero-glow-cyan { opacity: .94; filter: blur(3px); }
.hero-glow-purple { opacity: .92; filter: blur(6px); }
.system-panel {
  border-color: rgba(99, 211, 246, .32);
  background: linear-gradient(145deg, rgba(10,22,37,.94), rgba(7,9,20,.95) 58%, rgba(20,10,35,.91));
  box-shadow: 0 30px 100px rgba(0,0,0,.5), 0 0 50px rgba(34,211,238,.075), inset 0 1px rgba(255,255,255,.035);
  transition: border-color .28s ease, box-shadow .28s ease, transform .28s ease;
}
.system-panel:hover {
  border-color: rgba(103,232,249,.5);
  box-shadow: 0 35px 110px rgba(0,0,0,.55), 0 0 60px rgba(34,211,238,.105), inset 0 1px rgba(255,255,255,.05);
  transform: translateY(-3px);
}
.panel-screen { background: radial-gradient(ellipse at 50% 48%, rgba(17,44,70,.44), transparent 65%), #03070d; }
.section-heading { position: relative; }
.section-heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -23px;
  width: 100%;
  height: 1px;
  pointer-events: none;
  opacity: .4;
  background: linear-gradient(90deg, rgba(34,211,238,.5), rgba(96,165,250,.15) 47%, transparent 83%);
}
.capability-row {
  position: relative;
  border-radius: 12px;
  transition: background .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}
.capability-row:hover {
  background: linear-gradient(110deg, rgba(11,34,52,.46), rgba(10,15,30,.14) 72%, rgba(58,29,83,.18));
  border-color: rgba(83, 199, 238, .24);
  box-shadow: 0 15px 50px rgba(0,0,0,.13);
  transform: translateY(-2px);
}
.security-mark { filter: drop-shadow(0 0 22px rgba(34,211,238,.13)); }
.security-main { position: relative; }
.security-main::before {
  content: "";
  position: absolute;
  top: -28px;
  right: -15px;
  width: 160px;
  height: 160px;
  pointer-events: none;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(34,211,238,.08), rgba(96,165,250,.035) 43%, transparent 72%);
  filter: blur(4px);
}
.featured-project {
  gap: 38px;
  padding-top: 44px;
  padding-bottom: 44px;
}
.project-info h3 { text-shadow: 0 0 35px rgba(34,211,238,.09); }
.project-screen.project-gallery {
  align-self: stretch;
  min-width: 0;
  overflow: hidden;
  border-color: rgba(100,205,243,.32);
  background: linear-gradient(145deg, rgba(5,12,22,.98), rgba(2,5,11,.98) 60%, rgba(12,6,24,.96));
  box-shadow: 0 28px 90px rgba(0,0,0,.46), 0 0 38px rgba(34,211,238,.065);
}
.project-gallery .screen-top,
.project-gallery .screen-bottom {
  position: relative;
  z-index: 2;
  background: rgba(6,12,22,.84);
}
.gallery-stage {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 42px;
  align-items: center;
  gap: 5px;
  min-height: 300px;
  padding: 15px 12px 11px;
  background:
    radial-gradient(ellipse at 50% 45%, rgba(16,44,71,.38), transparent 68%),
    linear-gradient(180deg, rgba(7,12,23,.22), rgba(1,4,9,.7));
}
.gallery-open {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(110,171,220,.17);
  border-radius: 8px;
  background: rgba(1,4,8,.84);
  cursor: zoom-in;
  box-shadow: 0 14px 34px rgba(0,0,0,.34);
}
.gallery-open::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .7;
  background: linear-gradient(115deg, rgba(6,182,212,.045), transparent 42%, rgba(168,85,247,.045));
  transition: opacity .2s ease;
}
.gallery-open:hover::after { opacity: 1; }
.gallery-open img {
  display: block;
  width: 100%;
  height: clamp(210px, 27vw, 340px);
  min-height: 0;
  object-fit: contain;
  background: #03070d;
  transition: transform .28s ease, opacity .2s ease;
}
.gallery-open:hover img { transform: scale(1.015); }
.gallery-zoom-hint {
  position: absolute;
  right: 9px;
  bottom: 9px;
  z-index: 2;
  padding: 5px 7px;
  border: 1px solid rgba(125,208,236,.25);
  border-radius: 5px;
  background: rgba(2,8,16,.83);
  color: #b4f3fb;
  font: 600 8px/1.2 var(--mono);
  letter-spacing: .06em;
  opacity: .88;
}
.gallery-arrow, .lightbox-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(117,190,226,.26);
  border-radius: 9px;
  background: linear-gradient(145deg, rgba(12,34,52,.93), rgba(10,12,25,.93));
  color: #baf6ff;
  font: 400 27px/1 var(--body);
  cursor: pointer;
  transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.gallery-arrow:hover, .lightbox-arrow:hover {
  color: #fff;
  border-color: rgba(103,232,249,.65);
  background: rgba(20,68,91,.95);
  box-shadow: 0 0 23px rgba(34,211,238,.12);
  transform: translateY(-1px);
}
.gallery-thumbnails {
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 8px;
  padding: 0 18px 15px;
}
.gallery-thumb {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  padding: 4px;
  border: 1px solid rgba(128,155,191,.15);
  border-radius: 7px;
  background: rgba(255,255,255,.018);
  color: #778ca4;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}
.gallery-thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 1.65;
  object-fit: cover;
  border-radius: 3px;
  opacity: .66;
  transition: opacity .2s ease;
}
.gallery-thumb span {
  color: inherit;
  font: 600 8px/1.4 var(--mono);
  letter-spacing: .08em;
}
.gallery-thumb:hover, .gallery-thumb.is-active {
  color: #c5f8ff;
  border-color: rgba(103,232,249,.56);
  background: rgba(34,211,238,.08);
  transform: translateY(-1px);
}
.gallery-thumb:hover img, .gallery-thumb.is-active img { opacity: 1; }
.project-gallery .screen-bottom { gap: 10px; }
[data-gallery-caption] { color: #a7c8db; }
.lightbox {
  width: min(1240px, calc(100vw - 28px));
  max-width: none;
  max-height: calc(100dvh - 28px);
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(114,215,247,.38);
  border-radius: 16px;
  background: linear-gradient(150deg, rgba(6,14,25,.99), rgba(3,5,12,.99) 60%, rgba(17,7,31,.99));
  color: #effbff;
  box-shadow: 0 40px 160px rgba(0,0,0,.8), 0 0 60px rgba(34,211,238,.12);
}
.lightbox::backdrop { background: rgba(0,2,8,.86); backdrop-filter: blur(12px); }
.lightbox[open] { animation: lightbox-in .18s ease-out both; }
@keyframes lightbox-in {
  from { opacity: 0; transform: translateY(8px) scale(.99); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.lightbox-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 13px 17px;
  border-bottom: 1px solid rgba(129,187,224,.15);
  color: #98eaf7;
  font: 600 10px/1.5 var(--mono);
  letter-spacing: .1em;
}
.lightbox-header button {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 8px 11px;
  border: 1px solid rgba(125,182,224,.22);
  border-radius: 7px;
  background: rgba(255,255,255,.035);
  color: #dceaf9;
  cursor: pointer;
  font: 600 10px/1.4 var(--body);
}
.lightbox-header button b { font-size: 18px; font-weight: 400; }
.lightbox-stage {
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 48px;
  align-items: center;
  gap: 12px;
  padding: 16px;
}
.lightbox-stage img {
  display: block;
  width: 100%;
  max-height: calc(100dvh - 160px);
  min-height: 0;
  object-fit: contain;
  border: 1px solid rgba(125,157,189,.17);
  border-radius: 8px;
  background: #020407;
}
.lightbox > p {
  margin: 0;
  padding: 0 20px 16px;
  color: #aabdd0;
  text-align: center;
  font-size: 13px;
}
.contact-frame {
  border-color: rgba(100,198,243,.28);
  background: linear-gradient(115deg, rgba(6,22,34,.9), rgba(7,10,23,.94) 52%, rgba(24,10,37,.91));
  box-shadow: 0 25px 85px rgba(0,0,0,.28), inset 0 1px rgba(255,255,255,.035);
}
.site-footer { position: relative; }
.site-footer::before {
  content: "";
  display: block;
  height: 1px;
  opacity: .65;
  background: linear-gradient(90deg, transparent, rgba(34,211,238,.32), rgba(96,165,250,.26), rgba(192,132,252,.3), transparent);
}
.footer-main { grid-template-columns: minmax(260px,1.7fr) repeat(3,minmax(120px,.7fr)); }
.footer-brand-block .brand-logo {
  width: 86px;
  height: 86px;
  filter: drop-shadow(0 0 16px rgba(34,211,238,.3)) drop-shadow(0 0 30px rgba(168,85,247,.13));
}
.footer-brand-block .brand-name { font-size: 21px; }
.footer-brand-block .brand-caption { font-size: 9.5px; }
.footer-brand-block > p { max-width: 330px; }
.footer-column a { border-radius: 8px; }
.footer-column a:focus-visible, .language-switch button:focus-visible, .gallery-arrow:focus-visible,
.gallery-thumb:focus-visible, .gallery-open:focus-visible, .lightbox button:focus-visible {
  outline: 2px solid #67e8f9;
  outline-offset: 3px;
}
@media (max-width: 1150px) {
  .nav-wrap { height: 108px; min-height: 108px; }
  .brand-logo { width: 82px; height: 82px; }
  .brand-name { font-size: 22px; }
  .brand-caption { font-size: 9.5px; }
  .site-nav { gap: 9px; }
  .site-nav > a:not(.nav-cta) { font-size: 11px; }
  .language-switch button { min-width: 30px; }
}
@media (max-width: 800px) {
  .nav-wrap { height: 84px; min-height: 84px; }
  .brand-logo { width: 66px; height: 66px; }
  .brand-name { font-size: 19px; }
  .brand-caption { font-size: 8.5px; letter-spacing: .07em; }
  .site-nav { top: 84px; }
  .language-switch { align-self: flex-start; margin: 12px 0 8px; }
  .language-switch button { min-width: 38px; min-height: 34px; }
  .gallery-stage { grid-template-columns: 32px minmax(0,1fr) 32px; gap: 4px; min-height: 0; padding: 10px 8px; }
  .gallery-open img { height: clamp(180px, 47vw, 300px); }
  .gallery-arrow { width: 30px; height: 37px; font-size: 23px; }
  .gallery-thumbnails { gap: 5px; padding: 0 10px 11px; }
  .gallery-thumb { padding: 3px; }
  .footer-main { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .footer-brand-block { grid-column: 1 / -1; }
  .footer-brand-block .brand-logo { width: 72px; height: 72px; }
  .lightbox-stage { grid-template-columns: 34px minmax(0,1fr) 34px; gap: 7px; padding: 9px; }
  .lightbox-arrow { width: 32px; height: 38px; }
}
@media (max-width: 480px) {
  .nav-wrap { height: 76px; min-height: 76px; gap: 8px; }
  .brand { gap: 7px; }
  .brand-logo { width: 54px; height: 54px; }
  .brand-name { font-size: 16px; letter-spacing: .08em; }
  .brand-caption { font-size: 7px; letter-spacing: .025em; max-width: 180px; }
  .site-nav { top: 76px; }
  .gallery-stage { grid-template-columns: 27px minmax(0,1fr) 27px; padding: 7px 5px; }
  .gallery-open img { height: 190px; }
  .gallery-arrow { width: 26px; height: 33px; font-size: 21px; }
  .gallery-thumbnails { padding: 0 7px 9px; gap: 4px; }
  .gallery-thumb span { font-size: 7px; }
  .gallery-thumb img { aspect-ratio: 1.3; }
  .project-gallery .screen-top, .project-gallery .screen-bottom { font-size: 7.5px; }
  .footer-main { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-brand-block .brand-logo { width: 62px; height: 62px; }
  .footer-brand-block .brand-name { font-size: 18px; }
  .footer-brand-block .brand-caption { font-size: 8px; }
  .lightbox { width: calc(100vw - 12px); max-height: calc(100dvh - 12px); border-radius: 10px; }
  .lightbox-header { padding: 9px 11px; }
  .lightbox-stage { grid-template-columns: 25px minmax(0,1fr) 25px; gap: 4px; padding: 5px; }
  .lightbox-arrow { width: 24px; height: 32px; font-size: 22px; }
  .lightbox-stage img { max-height: calc(100dvh - 145px); }
}
@media (prefers-reduced-motion: reduce) {
  .system-panel, .brand-logo, .gallery-open img, .gallery-thumb, .gallery-arrow { transition: none !important; }
  .lightbox[open] { animation: none; }
}


/* -------------------------------------------------------------------------
   NEON FINISH / BRAND SCALE + HIGH-CONTRAST MICRO-INTERACTIONS
   Overrides are deliberately last to defeat older responsive declarations.
   ------------------------------------------------------------------------- */
.site-header .nav-wrap {
  height: 148px !important;
  min-height: 148px !important;
}
.site-header .brand {
  gap: 17px;
  flex-shrink: 0;
}
.site-header .brand-logo {
  width: 126px !important;
  height: 126px !important;
  max-width: none;
  flex: 0 0 126px;
  filter: saturate(1.25) contrast(1.1) brightness(1.1)
    drop-shadow(0 0 13px rgba(34,211,238,.42))
    drop-shadow(0 0 29px rgba(96,165,250,.22))
    drop-shadow(0 0 42px rgba(168,85,247,.18));
}
.site-header .brand:hover .brand-logo {
  filter: saturate(1.35) contrast(1.12) brightness(1.14)
    drop-shadow(0 0 18px rgba(34,211,238,.56))
    drop-shadow(0 0 36px rgba(96,165,250,.3))
    drop-shadow(0 0 48px rgba(168,85,247,.25));
}
.site-header .brand-lockup { min-width: 225px; }
.site-header .brand-name {
  font-size: 25px !important;
  letter-spacing: .145em;
}
.site-header .brand-caption {
  color: #a2f5ff !important;
  font-size: 10px !important;
  text-shadow: 0 0 9px rgba(34,211,238,.32), 0 0 18px rgba(96,165,250,.16);
}
.language-switch {
  position: relative;
  padding: 5px !important;
  gap: 4px !important;
  border: 1px solid rgba(112,230,249,.48) !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, rgba(7,23,39,.58), rgba(14,12,34,.48)) !important;
  -webkit-backdrop-filter: blur(18px) saturate(145%);
  backdrop-filter: blur(18px) saturate(145%);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.025) inset,
    0 0 18px rgba(34,211,238,.13),
    0 0 31px rgba(168,85,247,.075),
    0 9px 28px rgba(0,0,0,.2) !important;
}
.language-switch button {
  position: relative;
  min-width: 39px !important;
  min-height: 34px !important;
  padding: 0 9px !important;
  border: 1px solid rgba(103,232,249,.14) !important;
  border-radius: 8px !important;
  background: rgba(34,211,238,.055) !important;
  color: #aaf5ff !important;
  text-shadow: 0 0 8px rgba(34,211,238,.6), 0 0 16px rgba(96,165,250,.22);
  box-shadow: inset 0 0 12px rgba(34,211,238,.045);
  font-size: 11px !important;
  letter-spacing: .09em !important;
}
.language-switch button:hover {
  color: #f1fdff !important;
  background: rgba(34,211,238,.13) !important;
  border-color: rgba(103,232,249,.46) !important;
  box-shadow: 0 0 17px rgba(34,211,238,.14), inset 0 0 12px rgba(34,211,238,.08) !important;
}
.language-switch button[aria-pressed="true"] {
  color: #021119 !important;
  background: linear-gradient(125deg, #67e8f9 0%, #8edbff 48%, #b8a4ff 100%) !important;
  border-color: rgba(221,253,255,.84) !important;
  text-shadow: 0 1px 0 rgba(255,255,255,.26);
  box-shadow: 0 0 13px rgba(34,211,238,.4), 0 0 25px rgba(96,165,250,.2), inset 0 1px rgba(255,255,255,.5) !important;
}
.language-switch > span {
  background: linear-gradient(180deg, rgba(103,232,249,.1), rgba(103,232,249,.7), rgba(192,132,252,.5)) !important;
}
.gallery-thumb {
  background: rgba(8,17,31,.46) !important;
  border-color: rgba(103,232,249,.25) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.025);
  backdrop-filter: blur(10px);
}
.gallery-thumb span {
  color: #86f2ff !important;
  text-shadow: 0 0 7px rgba(34,211,238,.65), 0 0 15px rgba(34,211,238,.28);
  font-size: 9px !important;
  letter-spacing: .12em !important;
  opacity: .97;
}
.gallery-thumb:hover span,
.gallery-thumb.is-active span {
  color: #f1fdff !important;
  text-shadow: 0 0 7px rgba(103,232,249,.9), 0 0 18px rgba(96,165,250,.48);
}
.gallery-thumb.is-active {
  background: linear-gradient(140deg, rgba(34,211,238,.17), rgba(96,165,250,.1) 54%, rgba(168,85,247,.12)) !important;
  border-color: rgba(103,232,249,.76) !important;
  box-shadow: 0 0 16px rgba(34,211,238,.14), inset 0 0 12px rgba(34,211,238,.045) !important;
}
.project-gallery .screen-live,
[data-gallery-counter] {
  color: #aaf5ff !important;
  text-shadow: 0 0 9px rgba(34,211,238,.62), 0 0 18px rgba(96,165,250,.2);
}
.site-footer .footer-brand-block .brand-logo {
  width: 117px !important;
  height: 117px !important;
  max-width: none;
  flex: 0 0 117px;
  filter: saturate(1.25) contrast(1.1) brightness(1.1)
    drop-shadow(0 0 13px rgba(34,211,238,.4))
    drop-shadow(0 0 29px rgba(96,165,250,.22))
    drop-shadow(0 0 42px rgba(168,85,247,.16));
}
.site-footer .footer-brand-block .brand-name {
  font-size: 24px !important;
  letter-spacing: .13em;
}
.site-footer .footer-brand-block .brand-caption {
  color: #a2f5ff !important;
  font-size: 10px !important;
  text-shadow: 0 0 9px rgba(34,211,238,.3);
}
@media (max-width: 1250px) {
  .site-header .nav-wrap { height: 124px !important; min-height: 124px !important; }
  .site-header .brand-logo { width: 103px !important; height: 103px !important; flex-basis: 103px; }
  .site-header .brand-lockup { min-width: 190px; }
  .site-header .brand-name { font-size: 22px !important; }
  .site-header .brand-caption { font-size: 9px !important; }
  .site-footer .footer-brand-block .brand-logo { width: 96px !important; height: 96px !important; flex-basis: 96px; }
}
@media (max-width: 800px) {
  .site-header .nav-wrap { height: 98px !important; min-height: 98px !important; }
  .site-header .brand-logo { width: 78px !important; height: 78px !important; flex-basis: 78px; }
  .site-header .brand { gap: 10px; }
  .site-header .brand-lockup { min-width: 0; }
  .site-header .brand-name { font-size: 19px !important; }
  .site-header .brand-caption { font-size: 8px !important; }
  .site-nav { top: 98px !important; }
  .site-nav .language-switch { margin: 13px 0 10px !important; }
  .site-footer .footer-brand-block .brand-logo { width: 82px !important; height: 82px !important; flex-basis: 82px; }
  .site-footer .footer-brand-block .brand-name { font-size: 20px !important; }
}
@media (max-width: 480px) {
  .site-header .nav-wrap { height: 84px !important; min-height: 84px !important; }
  .site-header .brand-logo { width: 62px !important; height: 62px !important; flex-basis: 62px; }
  .site-header .brand { gap: 7px; }
  .site-header .brand-name { font-size: 16px !important; letter-spacing: .07em; }
  .site-header .brand-caption { font-size: 6.6px !important; letter-spacing: .01em; max-width: 170px; }
  .site-nav { top: 84px !important; }
  .site-header .menu-toggle { flex-shrink: 0; }
  .site-footer .footer-brand-block .brand-logo { width: 68px !important; height: 68px !important; flex-basis: 68px; }
  .site-footer .footer-brand-block .brand { gap: 9px; }
  .site-footer .footer-brand-block .brand-name { font-size: 17px !important; letter-spacing: .08em; }
  .site-footer .footer-brand-block .brand-caption { font-size: 7px !important; }
  .language-switch button { min-width: 40px !important; min-height: 36px !important; }
  .gallery-thumb span { font-size: 8px !important; }
}


/* FINAL COMPOSITION TUNE — tighter header, larger isolated mark, quieter headings. */
.site-header .nav-wrap {
  height: 132px !important;
  min-height: 132px !important;
  align-items: center;
}
.site-header .brand {
  align-self: center;
  gap: 17px;
  transform: translateY(-5px);
}
.site-header .brand-logo {
  width: 202px !important;
  height: auto !important;
  aspect-ratio: auto;
  object-fit: contain;
  flex: 0 0 202px;
  margin-right: -1px;
}
.site-header .site-nav { transform: translateY(-4px); }
.site-header::after { opacity: .56; }
.site-header .brand-name { font-size: 25px !important; }
.site-header .brand-caption { font-size: 10px !important; }

/* Keep the wordmark unchanged while scaling only the image mark. */
.site-footer .footer-brand-block .brand {
  align-items: center;
  gap: 17px;
}
.site-footer .footer-brand-block .brand-logo {
  width: 187px !important;
  height: auto !important;
  aspect-ratio: auto;
  object-fit: contain;
  flex: 0 0 187px;
}
.site-footer .footer-brand-block .brand-name { font-size: 24px !important; }
.site-footer .footer-brand-block .brand-caption { font-size: 10px !important; }

/* Keep editorial typography confident, but bring every major headline down about one third. */
.hero h1 {
  font-size: clamp(38px, 4.35vw, 53px) !important;
  line-height: 1.045 !important;
  letter-spacing: -.065em !important;
  margin: 19px 0 20px !important;
}
.intro-copy h2,
.section-heading h2,
.security-main h2,
.engagement-layout h2,
.faq-heading h2 {
  font-size: clamp(29px, 3.25vw, 39px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.055em !important;
  margin-top: 12px;
  margin-bottom: 20px;
}
.engagement-layout h2,
.faq-heading h2 {
  font-size: clamp(29px, 3.2vw, 38px) !important;
}
.contact-copy h2 {
  font-size: clamp(32px, 3.7vw, 43px) !important;
  line-height: 1.08 !important;
  letter-spacing: -.06em !important;
}
.project-info h3 {
  font-size: clamp(29px, 3.5vw, 43px) !important;
  line-height: 1.02 !important;
  letter-spacing: -.06em !important;
}
.capability-title h3 { font-size: 18px !important; line-height: 1.3 !important; }
.research-band h3 { font-size: 18px !important; line-height: 1.35 !important; }
.process-list h3 { font-size: 17px !important; line-height: 1.35 !important; }

/* Large, clean favicon crop: make the head itself fill the tab instead of tiny padding. */
@media (max-width: 1250px) {
  .site-header .nav-wrap { height: 116px !important; min-height: 116px !important; }
  .site-header .brand-logo { width: 165px !important; flex-basis: 165px; }
  .site-header .brand { gap: 13px; }
  .site-header .brand-lockup { min-width: 190px; }
  .site-footer .footer-brand-block .brand-logo { width: 154px !important; flex-basis: 154px; }
}
@media (max-width: 800px) {
  .site-header .nav-wrap { height: 96px !important; min-height: 96px !important; }
  .site-header .brand-logo { width: 125px !important; flex-basis: 125px; }
  .site-header .brand { gap: 10px; transform: translateY(-2px); }
  .site-header .brand-name { font-size: 19px !important; }
  .site-header .brand-caption { font-size: 8px !important; }
  .site-nav { top: 96px !important; transform: none; }
  .site-footer .footer-brand-block .brand-logo { width: 131px !important; flex-basis: 131px; }
  .hero h1 { font-size: clamp(35px, 6.2vw, 44px) !important; }
  .intro-copy h2, .section-heading h2, .security-main h2,
  .engagement-layout h2, .faq-heading h2 { font-size: clamp(28px, 5vw, 36px) !important; }
  .contact-copy h2 { font-size: clamp(30px, 5.2vw, 39px) !important; }
  .project-info h3 { font-size: clamp(29px, 5.2vw, 38px) !important; }
}
@media (max-width: 480px) {
  .site-header .nav-wrap { height: 82px !important; min-height: 82px !important; }
  .site-header .brand-logo { width: 82px !important; flex-basis: 82px; }
  .site-header .brand { gap: 7px; transform: translateY(-1px); }
  .site-header .brand-name { font-size: 15px !important; letter-spacing: .045em; }
  .site-header .brand-caption { font-size: 6.2px !important; max-width: 166px; }
  .site-header .menu-toggle { width: 39px; height: 39px; }
  .site-nav { top: 82px !important; }
  .site-footer .footer-brand-block .brand-logo { width: 108px !important; flex-basis: 108px; }
  .site-footer .footer-brand-block .brand { gap: 9px; }
  .site-footer .footer-brand-block .brand-name { font-size: 17px !important; }
  .site-footer .footer-brand-block .brand-caption { font-size: 7px !important; }
  .hero h1 { font-size: clamp(32px, 8.4vw, 38px) !important; }
  .intro-copy h2, .section-heading h2, .security-main h2,
  .engagement-layout h2, .faq-heading h2 { font-size: 29px !important; }
  .contact-copy h2 { font-size: 32px !important; }
  .project-info h3 { font-size: 30px !important; }
}


/* Engineering map: balanced desktop typography and larger language controls. */
.language-switch {
  padding: 0 !important;
  gap: 14px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.language-switch > span { display: none !important; }
.language-switch button {
  min-width: 38px !important;
  min-height: 33px !important;
  padding: 0 7px !important;
  border-radius: 7px !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
  background: rgba(34,211,238,.035) !important;
  border-color: rgba(103,232,249,.23) !important;
  box-shadow: none !important;
}
.language-switch button[aria-pressed="true"] {
  box-shadow: 0 0 10px rgba(34,211,238,.3), 0 0 18px rgba(96,165,250,.12) !important;
}
@media (min-width: 801px) {
  .hero-layout {
    grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr);
    gap: 30px;
  }
  .system-panel .panel-screen { padding: 18px 16px 0; }
  .system-panel .system-svg {
    width: 100%;
    max-height: none !important;
    overflow: visible;
  }
  /* Account for the slightly larger SVG on desktop to keep text near 2x its old visual size. */
  .system-svg .micro-label { font-size: 12px !important; letter-spacing: 1.3px !important; }
  .system-svg .core-label { font-size: 24px !important; letter-spacing: 2.5px !important; }
  .system-svg .core-sub { font-size: 12px !important; letter-spacing: 1px !important; }
  .system-svg .node-title { font-size: 18px !important; letter-spacing: -.15px; }
  .system-svg .node-sub { font-size: 10px !important; letter-spacing: 0 !important; }
  .system-panel .panel-top {
    min-height: 54px;
    font-size: 16px !important;
    letter-spacing: .06em;
    gap: 16px;
    padding-inline: 18px;
  }
  .system-panel .panel-dots { gap: 7px; }
  .system-panel .panel-dots i { width: 8px; height: 8px; }
  .system-panel .panel-lock { gap: 9px; }
  .system-panel .panel-lock span { width: 7px; height: 7px; }
  .system-panel .terminal-strip {
    font-size: 16px !important;
    line-height: 1.4;
    padding: 17px 8px 18px;
    letter-spacing: 0;
  }
  .system-panel .panel-bottom {
    min-height: 51px;
    font-size: 14px !important;
    letter-spacing: .055em;
    padding-inline: 18px;
  }
  .system-panel .panel-version b { font-size: 14px !important; }
}
@media (max-width: 800px) {
  .language-switch { gap: 13px !important; }
  .language-switch button {
    min-width: 42px !important;
    min-height: 36px !important;
    font-size: 12px !important;
  }
}
@media (max-width: 480px) {
  .language-switch { gap: 11px !important; }
  .language-switch button {
    min-width: 41px !important;
    min-height: 35px !important;
    font-size: 11.25px !important;
  }
}


/* EVMTraceX release downloads: compact platform cards consistent with the site’s neon/glass system. */
.project-downloads {
  margin-top: 24px;
  padding: 17px;
  border: 1px solid rgba(99, 211, 246, .24);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(8, 20, 34, .82), rgba(7, 10, 20, .9) 66%, rgba(23, 10, 38, .72));
  box-shadow: inset 0 1px rgba(255,255,255,.035), 0 14px 38px rgba(0,0,0,.2);
}
.project-downloads-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.project-downloads .download-eyebrow {
  color: var(--aqua, #63f3f2);
  font: 700 10px/1.4 var(--mono);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.project-downloads .download-version {
  flex: 0 0 auto;
  padding: 5px 8px;
  border: 1px solid rgba(103,232,249,.24);
  border-radius: 6px;
  background: rgba(34,211,238,.07);
  color: #d6faff;
  font: 700 10px/1 var(--mono);
  letter-spacing: .05em;
}
.project-download-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.project-download-link {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 6px;
  padding: 12px 35px 12px 13px;
  border: 1px solid rgba(128, 169, 205, .17);
  border-radius: 9px;
  background: linear-gradient(135deg, rgba(13, 28, 45, .8), rgba(8, 11, 22, .8));
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.project-download-link:hover {
  transform: translateY(-2px);
  border-color: rgba(103,232,249,.52);
  background: linear-gradient(135deg, rgba(10, 42, 58, .8), rgba(20, 14, 40, .82));
  box-shadow: 0 8px 24px rgba(0,0,0,.2), 0 0 18px rgba(34,211,238,.055);
}
.project-download-link:focus-visible,
.project-release-link:focus-visible {
  outline: 2px solid var(--aqua, #63f3f2);
  outline-offset: 3px;
}
.project-download-link .download-platform {
  color: #e6f8ff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
}
.project-download-link .download-format {
  color: #8fa8c2;
  font: 500 9px/1.45 var(--mono);
  letter-spacing: .025em;
  text-transform: uppercase;
}
.project-download-link .download-arrow {
  position: absolute;
  top: 12px;
  right: 12px;
  color: #76e9f3;
  font-size: 17px;
  line-height: 1;
  transition: transform .2s ease;
}
.project-download-link:hover .download-arrow { transform: translateY(2px); }
.project-downloads .download-note {
  margin: 13px 0 0;
  color: #9aacc2;
  font-size: 11px;
  line-height: 1.55;
}
.project-downloads .project-release-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  color: #87e8f3;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  transition: color .2s ease;
}
.project-downloads .project-release-link:hover { color: #d9fbff; }
@media (max-width: 480px) {
  .project-downloads { padding: 13px; }
  .project-downloads .download-eyebrow { font-size: 9px; letter-spacing: .075em; }
  .project-download-grid { grid-template-columns: 1fr; }
  .project-download-link { padding-block: 12px; }
}


/* Fuzzer Engine product section */
.fuzzer-section {
  border-block: 1px solid var(--line);
  background:
    radial-gradient(ellipse at 4% 12%, rgba(6,182,212,.075), transparent 34rem),
    radial-gradient(ellipse at 96% 63%, rgba(168,85,247,.065), transparent 32rem),
    rgba(3,7,13,.58);
}
.fuzzer-section .section-heading { align-items: end; }
.fuzzer-section .section-summary { max-width: 540px; }
.fuzzer-intro {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.92fr);
  gap: 34px;
  align-items: start;
  padding: 24px 0 30px;
  border-top: 1px solid var(--line);
}
.fuzzer-intro > p {
  max-width: 760px;
  margin: 0;
  color: #aebdce;
  font-size: 14px;
  line-height: 1.9;
}
.fuzzer-facts { display: grid; gap: 0; border-top: 1px solid var(--line); }
.fuzzer-fact {
  display: grid;
  grid-template-columns: minmax(120px,.82fr) minmax(0,1.18fr);
  gap: 12px;
  padding: 13px 0;
  border-bottom: 1px solid var(--line);
}
.fuzzer-fact strong {
  color: #d9e9f8;
  font: 600 9px/1.7 var(--mono);
  letter-spacing: .07em;
}
.fuzzer-fact small { color: #8294a9; font-size: 11px; line-height: 1.7; }
.fuzzer-capability-grid, .fuzzer-audit-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
}
.fuzzer-capability-card, .fuzzer-audit-card {
  min-width: 0;
  padding: 21px 18px 22px;
  border: 1px solid rgba(123,179,219,.16);
  border-radius: 10px;
  background: linear-gradient(145deg,rgba(11,20,33,.82),rgba(5,9,16,.72));
  transition: border-color .2s ease, transform .2s ease, background .2s ease;
}
.fuzzer-capability-card:hover, .fuzzer-audit-card:hover {
  transform: translateY(-2px);
  border-color: rgba(34,211,238,.36);
  background: linear-gradient(145deg,rgba(12,27,43,.9),rgba(7,11,20,.78));
}
.fuzzer-card-index {
  display: block;
  margin-bottom: 20px;
  color: #68dff0;
  font: 600 8px/1.5 var(--mono);
  letter-spacing: .11em;
}
.fuzzer-capability-card h3 {
  margin: 0 0 10px;
  color: #e7f0fa;
  font: 600 17px/1.3 var(--display);
  letter-spacing: -.025em;
}
.fuzzer-capability-card p, .fuzzer-audit-card p {
  margin: 0;
  color: #96a8bc;
  font-size: 11px;
  line-height: 1.85;
}
.fuzzer-audit { margin-top: 76px; }
.fuzzer-audit-heading {
  display: grid;
  grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr);
  gap: 8px 28px;
  align-items: baseline;
  margin-bottom: 23px;
}
.fuzzer-audit-heading .eyebrow { grid-column: 1/-1; }
.fuzzer-audit-heading h3, .fuzzer-workflow-heading h3, .fuzzer-screenshots-heading h3 {
  margin: 0;
  color: #edf5ff;
  font: 600 clamp(25px,3vw,35px)/1.16 var(--display);
  letter-spacing: -.05em;
}
.fuzzer-audit-heading > p:not(.eyebrow) {
  margin: 0;
  color: #8798ad;
  font-size: 11px;
  line-height: 1.8;
}
.fuzzer-audit-card { padding: 18px 16px 20px; }
.fuzzer-audit-card .fuzzer-card-index { margin-bottom: 16px; }
.fuzzer-audit-card h4 {
  margin: 0 0 9px;
  color: #e1edf9;
  font: 600 14px/1.4 var(--display);
  letter-spacing: -.02em;
}
.fuzzer-workflow {
  margin-top: 76px;
  padding: 30px 0 32px;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.fuzzer-workflow-heading { margin-bottom: 25px; }
.fuzzer-workflow-heading .eyebrow, .fuzzer-screenshots-heading .eyebrow { margin-bottom: 12px; }
.fuzzer-workflow-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}
.fuzzer-workflow-grid article {
  position: relative;
  padding: 19px 20px 0 0;
  border-top: 1px solid rgba(34,211,238,.28);
}
.fuzzer-workflow-grid article > span {
  display: block;
  margin-bottom: 19px;
  color: #7bdceb;
  font: 600 10px/1 var(--mono);
  letter-spacing: .1em;
}
.fuzzer-workflow-grid h4 {
  margin: 0 0 9px;
  color: #e4edf8;
  font: 600 17px/1.35 var(--display);
}
.fuzzer-workflow-grid p {
  max-width: 410px;
  margin: 0;
  color: #91a2b7;
  font-size: 11px;
  line-height: 1.85;
}
.fuzzer-screenshots { margin-top: 70px; }
.fuzzer-screenshots-heading { max-width: 760px; margin-bottom: 24px; }
.fuzzer-screenshots-intro { margin: 11px 0 0; color: #94a6ba; font-size: 12px; line-height: 1.8; }
.fuzzer-shot-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.fuzzer-shot { min-width: 0; }
.fuzzer-shot-placeholder {
  position: relative;
  display: flex;
  min-height: 180px;
  aspect-ratio: 16/9;
  overflow: hidden;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 20px;
  text-align: center;
  border: 1px dashed rgba(63,190,222,.4);
  border-radius: 10px;
  background:
    linear-gradient(rgba(40,77,104,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(40,77,104,.065) 1px,transparent 1px),
    radial-gradient(ellipse at center,rgba(6,182,212,.08),transparent 66%),
    rgba(4,9,16,.82);
  background-size: 24px 24px,24px 24px,auto,auto;
}
.fuzzer-shot-placeholder::before {
  content: "";
  position: absolute;
  inset: 8px;
  pointer-events: none;
  border: 1px solid rgba(147,170,198,.08);
  border-radius: 5px;
}
.fuzzer-placeholder-index {
  color: rgba(102,222,243,.46);
  font: 600 27px/1 var(--mono);
  letter-spacing: -.08em;
}
.fuzzer-placeholder-kicker {
  color: #6bcfe1;
  font: 600 8px/1.4 var(--mono);
  letter-spacing: .16em;
}
.fuzzer-shot-title { color: #e1edf9; font: 600 14px/1.4 var(--display); }
.fuzzer-shot-note { max-width: 300px; color: #7f91a6; font-size: 10px; line-height: 1.6; }
.fuzzer-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: 31px;
  padding: 22px 23px;
  border: 1px solid rgba(34,211,238,.17);
  border-radius: 10px;
  background: linear-gradient(110deg,rgba(6,182,212,.06),rgba(168,85,247,.04));
}
.fuzzer-cta > p { max-width: 720px; margin: 0; color: #a5b5c8; font-size: 12px; line-height: 1.8; }
.fuzzer-cta .button { flex: 0 0 auto; }
@media(max-width:1000px) {
  .fuzzer-capability-grid, .fuzzer-audit-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fuzzer-intro { grid-template-columns: 1fr; gap: 22px; }
}
@media(max-width:800px) {
  .fuzzer-audit { margin-top: 55px; }
  .fuzzer-audit-heading { grid-template-columns: 1fr; gap: 12px; }
  .fuzzer-workflow { margin-top: 55px; }
  .fuzzer-screenshots { margin-top: 55px; }
  .fuzzer-cta { align-items: flex-start; flex-direction: column; gap: 17px; }
}
@media(max-width:560px) {
  .fuzzer-capability-grid, .fuzzer-audit-grid, .fuzzer-workflow-grid, .fuzzer-shot-grid { grid-template-columns: 1fr; }
  .fuzzer-capability-card { padding: 19px 17px; }
  .fuzzer-card-index { margin-bottom: 13px; }
  .fuzzer-fact { grid-template-columns: 1fr; gap: 3px; }
  .fuzzer-shot-placeholder { min-height: 205px; }
  .fuzzer-cta { padding: 18px 16px; }
  .fuzzer-cta .button { width: 100%; }
}


/* Reserved space for future owner-supplied Fuzzer Engine media; no placeholder images. */
.fuzzer-media-space {
  min-height: clamp(24px, 4vw, 56px);
}


/* GHOST LABS POLISH — gradient navigation + editorial footer links */
.site-header .site-nav > a:not(.nav-cta) {
  position: relative;
  isolation: isolate;
  padding: 10px 0 12px;
  color: #b9c6d8 !important;
  font-weight: 600;
  letter-spacing: .012em;
  text-shadow: none;
  transition: color .22s ease, text-shadow .22s ease, transform .22s ease;
}
.site-header .site-nav > a:not(.nav-cta)::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  height: 1px;
  border-radius: 2px;
  background: linear-gradient(90deg, #22d3ee 0%, #60a5fa 52%, #c084fc 100%);
  box-shadow: 0 0 12px rgba(96,165,250,.2);
  opacity: .34;
  transform: scaleX(.22);
  transform-origin: left center;
  transition: opacity .24s ease, transform .28s ease, box-shadow .24s ease;
}
@supports ((-webkit-background-clip: text) or (background-clip: text)) {
  .site-header .site-nav > a:not(.nav-cta):hover,
  .site-header .site-nav > a:not(.nav-cta):focus-visible {
    color: transparent !important;
    background: linear-gradient(100deg, #8cf2ff 0%, #9fc6ff 52%, #d0a8ff 100%);
    -webkit-background-clip: text;
    background-clip: text;
    text-shadow: 0 0 20px rgba(96,165,250,.12);
  }
}
.site-header .site-nav > a:not(.nav-cta):hover::after,
.site-header .site-nav > a:not(.nav-cta):focus-visible::after {
  opacity: 1;
  transform: scaleX(1);
  box-shadow: 0 0 13px rgba(34,211,238,.26), 0 0 20px rgba(168,85,247,.12);
}
.site-header .site-nav > a[href="#fuzzer"]:not(.nav-cta).is-active {
  font-weight: 700;
}
.site-header .nav-cta {
  position: relative;
  border: 1px solid transparent;
  background:
    linear-gradient(120deg, rgba(5,20,32,.97), rgba(14,10,31,.97)) padding-box,
    linear-gradient(105deg, rgba(34,211,238,.8), rgba(96,165,250,.62) 54%, rgba(192,132,252,.72)) border-box;
  color: #d5f8ff;
  box-shadow: 0 0 0 1px rgba(255,255,255,.025) inset, 0 0 20px rgba(34,211,238,.075);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.site-header .nav-cta:hover {
  transform: translateY(-1px);
  background:
    linear-gradient(120deg, rgba(8,29,43,.98), rgba(22,13,43,.98)) padding-box,
    linear-gradient(105deg, #22d3ee, #60a5fa 54%, #c084fc) border-box;
  border-color: transparent;
  box-shadow: 0 0 0 1px rgba(255,255,255,.04) inset, 0 0 24px rgba(34,211,238,.14), 0 0 28px rgba(168,85,247,.08);
}
.site-header .brand-caption,
.site-footer .footer-brand-block .brand-caption {
  color: #a6edfa !important;
  background: linear-gradient(100deg, #a8f3ff 0%, #a6caff 54%, #c5a6ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: none !important;
}
.site-header .brand-caption {
  letter-spacing: .105em;
}
.site-footer {
  border-top-color: rgba(110,154,196,.18);
  background:
    radial-gradient(ellipse at 12% 0%, rgba(34,211,238,.045), transparent 38rem),
    radial-gradient(ellipse at 86% 12%, rgba(168,85,247,.05), transparent 36rem),
    rgba(1,3,7,.72);
}
.site-footer .footer-main {
  position: relative;
}
.site-footer .footer-heading {
  position: relative;
  width: max-content;
  max-width: 100%;
  padding-bottom: 11px;
  color: #b6c9de !important;
  background: linear-gradient(100deg, #a9efff, #a7c8ff 58%, #c4a4ff);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: .16em;
}
.site-footer .footer-heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 34px;
  height: 1px;
  border-radius: 2px;
  background: linear-gradient(90deg, #22d3ee, #60a5fa 58%, #c084fc);
  box-shadow: 0 0 10px rgba(96,165,250,.18);
}
.site-footer .footer-column {
  min-width: 0;
}
.site-footer .footer-column > a {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  padding: 8px 10px;
  border: 1px solid rgba(115,151,191,.09);
  border-radius: 8px;
  background: linear-gradient(110deg, rgba(13,25,40,.42), rgba(12,12,25,.22));
  color: #a8b8cc;
  font-size: 11px;
  line-height: 1.55;
  overflow-wrap: anywhere;
  transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.site-footer .footer-column > a:hover,
.site-footer .footer-column > a:focus-visible {
  color: #c2f8ff;
  border-color: rgba(103,232,249,.32);
  background: linear-gradient(105deg, rgba(8,53,68,.36), rgba(34,23,57,.3));
  box-shadow: 0 0 18px rgba(34,211,238,.055), inset 0 1px rgba(255,255,255,.025);
  transform: translateX(2px);
}
.site-footer .footer-bottom {
  border-top-color: rgba(116,151,191,.16);
  color: #8291a6;
}
.site-footer .footer-bottom > span:nth-child(2) {
  color: #74869e;
}
.site-footer .footer-bottom > a {
  color: #a7bfd7;
  transition: color .2s ease, text-shadow .2s ease;
}
.site-footer .footer-bottom > a:hover {
  color: #a8f2ff;
  text-shadow: 0 0 12px rgba(34,211,238,.25);
}
@media (max-width: 800px) {
  .site-header .site-nav > a:not(.nav-cta) {
    padding: 13px 10px !important;
    border-radius: 8px;
  }
  .site-header .site-nav > a:not(.nav-cta)::after {
    right: 10px;
    bottom: 4px;
    left: 10px;
  }
  .site-header .site-nav > a:not(.nav-cta):hover,
  .site-header .site-nav > a:not(.nav-cta):focus-visible {
    background-color: rgba(34,211,238,.035);
  }
  .site-footer .footer-column > a {
    padding: 9px 9px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav > a:not(.nav-cta)::after,
  .site-header .nav-cta,
  .site-footer .footer-column > a,
  .site-footer .footer-bottom > a {
    transition: none !important;
    transform: none !important;
  }
}


/* GHOST LABS — signature finish: richer hierarchy, restrained motion, cleaner footer */
:root {
  --gl-cyan-soft: #9aefff;
  --gl-blue-soft: #abc9ff;
  --gl-violet-soft: #d0b0ff;
  --gl-ink: #07111d;
}

/* Content rows gain a precise active edge instead of a flat hover wash. */
.capability-row {
  position: relative;
  padding-left: 14px;
  transition: background .28s ease, border-color .28s ease;
}
.capability-row::before {
  content: "";
  position: absolute;
  top: 25px;
  bottom: 25px;
  left: 0;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #22d3ee, #60a5fa 52%, #c084fc);
  box-shadow: 0 0 16px rgba(34,211,238,.24);
  opacity: .2;
  transform: scaleY(.42);
  transform-origin: center;
  transition: opacity .25s ease, transform .3s ease, box-shadow .25s ease;
}
.capability-row:hover {
  background: linear-gradient(100deg, rgba(34,211,238,.045), rgba(96,165,250,.018) 48%, transparent 86%);
}
.capability-row:hover::before {
  opacity: .95;
  transform: scaleY(1);
  box-shadow: 0 0 17px rgba(34,211,238,.34), 0 0 24px rgba(168,85,247,.1);
}
.capability-row:hover .capability-title h3 {
  color: #d9f8ff;
  text-shadow: 0 0 22px rgba(34,211,238,.08);
}
.project-tags span {
  border-color: transparent;
  background:
    linear-gradient(130deg, rgba(8,21,35,.9), rgba(13,12,29,.88)) padding-box,
    linear-gradient(110deg, rgba(34,211,238,.34), rgba(96,165,250,.2) 55%, rgba(192,132,252,.3)) border-box;
  color: #abc2dc;
  transition: color .22s ease, box-shadow .22s ease, background .22s ease;
}
.project-tags span:hover {
  color: #d4f8ff;
  box-shadow: 0 0 17px rgba(34,211,238,.08), inset 0 1px rgba(255,255,255,.035);
}
.system-panel {
  transition: border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}
.system-panel:hover {
  border-color: rgba(103,232,249,.36);
  box-shadow: 0 38px 94px rgba(0,0,0,.43), 0 0 36px rgba(34,211,238,.055), inset 0 1px rgba(255,255,255,.05);
  transform: translateY(-2px);
}
.featured-project {
  position: relative;
  transition: border-color .25s ease;
}
.featured-project:hover .project-screen {
  border-color: rgba(103,232,249,.42);
  box-shadow: 0 28px 78px rgba(0,0,0,.4), 0 0 28px rgba(34,211,238,.055);
}
.process-list article {
  transition: background .24s ease, padding-left .24s ease;
}
.process-list article:hover {
  padding-left: 10px;
  background: linear-gradient(100deg, rgba(96,165,250,.035), rgba(168,85,247,.018) 62%, transparent);
}
.process-list article:hover .process-index {
  color: #a6efff;
  text-shadow: 0 0 13px rgba(34,211,238,.23);
}
.faq-list details {
  position: relative;
}
.faq-list details::before {
  content: "";
  position: absolute;
  left: -1px;
  top: 0;
  bottom: 0;
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(180deg, #22d3ee, #60a5fa, #c084fc);
  opacity: 0;
  transition: opacity .2s ease;
}
.faq-list details:hover::before,
.faq-list details[open]::before {
  opacity: .9;
}
.faq-list summary {
  transition: color .2s ease;
}
.faq-list details:hover summary,
.faq-list details[open] summary {
  color: #ddf6ff;
}
.contact-frame {
  transition: border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}
.contact-frame:hover {
  border-color: rgba(103,232,249,.38);
  box-shadow: 0 28px 90px rgba(0,0,0,.32), 0 0 42px rgba(34,211,238,.06), inset 0 1px rgba(255,255,255,.04);
  transform: translateY(-2px);
}
.fuzzer-capability-card,
.fuzzer-audit-card {
  box-shadow: inset 0 1px rgba(255,255,255,.018);
}
.fuzzer-capability-card:hover,
.fuzzer-audit-card:hover {
  box-shadow: 0 15px 38px rgba(0,0,0,.22), 0 0 26px rgba(34,211,238,.045), inset 0 1px rgba(255,255,255,.035);
}

/* Footer as a branded closing panel, not a wall of pale text. */
.site-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse at 9% 0%, rgba(34,211,238,.065), transparent 34rem),
    radial-gradient(ellipse at 87% 8%, rgba(168,85,247,.065), transparent 38rem),
    linear-gradient(180deg, rgba(5,11,19,.95), rgba(1,3,8,.98));
}
.site-footer::before {
  position: relative;
  z-index: 2;
  height: 1px;
  opacity: .8;
  background: linear-gradient(90deg, transparent, rgba(34,211,238,.65), rgba(96,165,250,.75) 52%, rgba(192,132,252,.68), transparent);
  background-size: 200% 100%;
  animation: gl-spectrum-drift 16s ease-in-out infinite;
}
.site-footer::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: -8%;
  width: 72%;
  height: 310px;
  pointer-events: none;
  opacity: .6;
  background: radial-gradient(ellipse at 70% 0%, rgba(96,165,250,.07), transparent 62%);
}
.site-footer .footer-main,
.site-footer .footer-bottom {
  position: relative;
  z-index: 1;
}
.site-footer .footer-main {
  padding-top: 58px;
  padding-bottom: 48px;
  gap: clamp(22px, 3vw, 42px);
}
.site-footer .footer-brand-block .brand {
  align-items: center;
  transition: filter .25s ease;
}
.site-footer .footer-brand-block .brand:hover {
  filter: drop-shadow(0 0 22px rgba(34,211,238,.075));
}
.site-footer .footer-brand-block .brand-logo {
  filter: saturate(1.24) drop-shadow(0 0 15px rgba(34,211,238,.25)) drop-shadow(0 0 28px rgba(168,85,247,.11));
}
.site-footer .footer-brand-block .brand-name {
  letter-spacing: .14em;
}
.site-footer .footer-brand-block .brand-caption {
  letter-spacing: .09em;
}
.site-footer .footer-status-line {
  display: flex;
  align-items: center;
  gap: 9px;
  width: fit-content;
  margin: 18px 0 11px;
  padding: 7px 10px;
  border: 1px solid rgba(103,232,249,.15);
  border-radius: 6px;
  background: linear-gradient(105deg, rgba(34,211,238,.045), rgba(96,165,250,.025) 58%, rgba(168,85,247,.04));
  color: #9bb3cb;
  font: 600 8px/1.35 var(--mono);
  letter-spacing: .11em;
}
.site-footer .footer-status-indicator {
  width: 5px;
  height: 5px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: #67e8f9;
  box-shadow: 0 0 8px rgba(34,211,238,.75), 0 0 15px rgba(34,211,238,.2);
}
.site-footer .footer-manifesto {
  max-width: 355px !important;
  margin: 0 !important;
  color: #91a5bb !important;
  font-size: 13px !important;
  line-height: 1.9 !important;
  text-wrap: pretty;
}
.site-footer .footer-focus-word {
  font-weight: 600;
  background: linear-gradient(100deg, #a9efff 0%, #a6caff 58%, #c3a4ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.site-footer .footer-focus-word:nth-of-type(2) {
  background-image: linear-gradient(100deg, #a6caff, #c4aeff);
}
.site-footer .footer-focus-word:nth-of-type(3) {
  background-image: linear-gradient(100deg, #bba5ff, #8ddff5);
}
.site-footer .footer-focus-word:nth-of-type(4) {
  background-image: linear-gradient(100deg, #91eafa, #bfa5ff);
}
.site-footer .footer-focus-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 18px;
}
.site-footer .footer-focus-tags span {
  padding: 5px 7px;
  border: 1px solid rgba(123,160,199,.16);
  border-radius: 4px;
  background: rgba(8,18,30,.55);
  color: #7f9ab6;
  font: 500 7px/1.3 var(--mono);
  letter-spacing: .085em;
}
.site-footer .footer-focus-tags span:nth-child(2) { color: #8ddff5; border-color: rgba(34,211,238,.17); }
.site-footer .footer-focus-tags span:nth-child(3) { color: #a8c5ff; border-color: rgba(96,165,250,.18); }
.site-footer .footer-focus-tags span:nth-child(4) { color: #c2a3ff; border-color: rgba(192,132,252,.19); }
.site-footer .footer-column {
  padding-top: 4px;
  gap: 8px;
}
.site-footer .footer-heading {
  margin-bottom: 9px;
  font-size: 9px;
  letter-spacing: .18em;
}
.site-footer .footer-column > a {
  min-height: 34px;
  padding: 8px 10px;
  background: linear-gradient(110deg, rgba(13,25,40,.36), rgba(12,12,25,.14));
  color: #97abc2;
  font-size: 11px;
}
.site-footer .footer-column > a:hover,
.site-footer .footer-column > a:focus-visible {
  color: #d2faff;
  border-color: rgba(103,232,249,.38);
  background: linear-gradient(105deg, rgba(8,53,68,.34), rgba(34,23,57,.27));
  box-shadow: 0 0 20px rgba(34,211,238,.065), inset 0 1px rgba(255,255,255,.035);
  transform: translateX(3px);
}
.site-footer .footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px 22px;
  padding-top: 18px;
  padding-bottom: 24px;
  border-top-color: rgba(116,151,191,.18);
  color: #8291a6;
}
.site-footer .footer-copyright {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  color: #8193aa;
  font: 500 10px/1.7 var(--mono);
  letter-spacing: .015em;
}
.site-footer .footer-copyright-symbol {
  color: #6adff2;
  font-size: 13px;
  text-shadow: 0 0 12px rgba(34,211,238,.17);
}
.site-footer .footer-copyright #current-year {
  color: #9aefff;
  font-weight: 600;
}
.site-footer .footer-copyright-name {
  color: #d6e8fb;
  font-weight: 700;
}
.site-footer .footer-copyright-rights {
  color: #71839a;
  font-size: 9px;
  letter-spacing: .035em;
}
.site-footer .footer-scope {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 7px;
  color: #8397ad;
  font: 500 8px/1.7 var(--mono);
  letter-spacing: .06em;
}
.site-footer .footer-scope-item {
  background: linear-gradient(100deg, #8ce9f7, #9ebfff 58%, #bf9df2);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.site-footer .footer-scope i {
  color: #76659b;
  font-style: normal;
}
.site-footer .footer-bottom > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(103,232,249,.18);
  border-radius: 7px;
  background: linear-gradient(110deg, rgba(34,211,238,.045), rgba(168,85,247,.04));
  color: #9cc4dd;
  font-size: 9px;
  letter-spacing: .08em;
  transition: color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease;
}
.site-footer .footer-bottom > a span {
  color: #8feeff;
  transition: transform .22s ease;
}
.site-footer .footer-bottom > a:hover {
  color: #e1fbff;
  border-color: rgba(103,232,249,.38);
  box-shadow: 0 0 20px rgba(34,211,238,.075);
  transform: translateY(-1px);
}
.site-footer .footer-bottom > a:hover span {
  transform: translateY(-2px);
}
@keyframes gl-spectrum-drift {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@media (max-width: 1000px) {
  .site-footer .footer-main {
    grid-template-columns: minmax(240px, 1.4fr) repeat(3, minmax(100px, .7fr));
    gap: 20px;
  }
  .site-footer .footer-scope {
    justify-content: flex-start;
    order: 3;
    width: 100%;
  }
}
@media (max-width: 800px) {
  .capability-row { padding-left: 11px; }
  .site-footer .footer-main {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px 18px;
    padding-top: 43px;
  }
  .site-footer .footer-brand-block { grid-column: 1 / -1; }
  .site-footer .footer-manifesto { max-width: 520px !important; }
  .site-footer .footer-bottom { align-items: flex-start; }
  .site-footer .footer-scope { order: 0; width: auto; }
}
@media (max-width: 560px) {
  .site-footer .footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 12px;
    padding-bottom: 31px;
  }
  .site-footer .footer-brand-block { grid-column: 1 / -1; }
  .site-footer .footer-brand-block .brand-logo { width: 62px !important; height: 62px !important; flex-basis: 62px; }
  .site-footer .footer-brand-block .brand-name { font-size: 17px !important; }
  .site-footer .footer-brand-block .brand-caption { font-size: 7px !important; }
  .site-footer .footer-status-line { font-size: 7px; }
  .site-footer .footer-manifesto { font-size: 12px !important; }
  .site-footer .footer-bottom { flex-direction: column; gap: 13px; }
  .site-footer .footer-copyright { font-size: 10px; }
  .site-footer .footer-scope { justify-content: flex-start; width: 100%; font-size: 7.5px; }
  .site-footer .footer-bottom > a { min-height: 37px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-footer::before { animation: none !important; }
  .capability-row, .capability-row::before, .system-panel, .featured-project,
  .process-list article, .faq-list details::before, .faq-list summary, .contact-frame,
  .site-footer .footer-brand-block .brand, .site-footer .footer-bottom > a,
  .site-footer .footer-bottom > a span {
    transition: none !important;
    transform: none !important;
  }
}


/* GHOST LABS // STATEHOUND + ACTIVE SECTION + FULL-SITE FINISH */
/* The active navigation item follows the section in view. */
.site-header .site-nav > a:not(.nav-cta).is-active {
  color: #a9f0ff !important;
  text-shadow: 0 0 16px rgba(34,211,238,.12);
}
.site-header .site-nav > a:not(.nav-cta).is-active::after {
  opacity: .92;
  transform: scaleX(1);
  box-shadow: 0 0 13px rgba(34,211,238,.23), 0 0 20px rgba(168,85,247,.11);
}
.site-header .site-nav > a[href="#fuzzer"]:not(.nav-cta).is-active { font-weight: 700; }

/* STATEHOUND product identity. */
.fuzzer-section .fuzzer-heading {
  position: relative;
  align-items: center;
  gap: clamp(26px, 4.2vw, 56px);
}
.fuzzer-section .fuzzer-heading > div:first-child { min-width: 0; flex: 1 1 auto; }
.fuzzer-section .fuzzer-heading .eyebrow {
  padding: 8px 11px;
  border: 1px solid rgba(103,232,249,.16);
  border-radius: 6px;
  background: linear-gradient(110deg, rgba(34,211,238,.045), rgba(96,165,250,.025) 60%, rgba(168,85,247,.04));
  letter-spacing: .15em;
}
.fuzzer-section .fuzzer-heading h2 { margin-top: 22px; letter-spacing: -.06em; }
.fuzzer-section .statehound-wordmark {
  display: inline-block;
  max-width: 100%;
  color: transparent;
  background: linear-gradient(100deg, #f1fbff 0%, #a8edff 28%, #9ebeff 62%, #c4a1ff 100%);
  -webkit-background-clip: text;
  background-clip: text;
  font-size: clamp(40px, 5.2vw, 69px);
  line-height: .99;
  letter-spacing: -.082em;
  text-wrap: nowrap;
  filter: drop-shadow(0 0 20px rgba(34,211,238,.06));
}
.fuzzer-section .statehound-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px 9px;
  margin-top: 19px;
  color: #91a8c0;
  font: 600 8px/1.6 var(--mono);
  letter-spacing: .075em;
}
.fuzzer-section .statehound-meta span {
  padding: 5px 7px;
  border: 1px solid rgba(123,160,199,.14);
  border-radius: 4px;
  background: linear-gradient(110deg, rgba(9,22,36,.67), rgba(13,12,28,.45));
  color: #96b8d5;
}
.fuzzer-section .statehound-meta span:nth-of-type(1) { border-color: rgba(34,211,238,.2); color: #9befff; }
.fuzzer-section .statehound-meta span:nth-of-type(2) { border-color: rgba(96,165,250,.2); color: #adc9ff; }
.fuzzer-section .statehound-meta span:nth-of-type(3) { border-color: rgba(192,132,252,.21); color: #d0b5ff; }
.fuzzer-section .statehound-meta i { color: #655e93; font-style: normal; }
.fuzzer-section .section-summary { max-width: 460px; color: #a6b8cc; font-size: 13px; line-height: 1.9; }
.fuzzer-section .fuzzer-intro > p { color: #a4b5c9; }
.fuzzer-section .fuzzer-fact {
  border-color: rgba(113,153,192,.16);
  background: linear-gradient(145deg, rgba(9,19,32,.78), rgba(5,9,17,.6));
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.fuzzer-section .fuzzer-fact strong { color: #bfeaff; }
.fuzzer-section .fuzzer-fact small { color: #8c9fb5; }
.fuzzer-section .fuzzer-capability-card,
.fuzzer-section .fuzzer-audit-card { position: relative; overflow: hidden; }
.fuzzer-section .fuzzer-capability-card::before,
.fuzzer-section .fuzzer-audit-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 52px;
  height: 1px;
  background: linear-gradient(90deg, #22d3ee, #60a5fa 55%, #c084fc);
  opacity: .52;
  transition: width .25s ease, opacity .25s ease;
}
.fuzzer-section .fuzzer-capability-card:hover::before,
.fuzzer-section .fuzzer-audit-card:hover::before { width: 100%; opacity: .95; }
.fuzzer-section .fuzzer-card-index { color: #8ce6f8; letter-spacing: .13em; }
.fuzzer-section .fuzzer-capability-card h3,
.fuzzer-section .fuzzer-audit-card h4 { color: #e3effb; }
.fuzzer-section .fuzzer-capability-card p,
.fuzzer-section .fuzzer-audit-card p,
.fuzzer-section .fuzzer-workflow-grid p,
.fuzzer-section .fuzzer-audit-heading > p:not(.eyebrow) { color: #9aacc1; }
.fuzzer-section .fuzzer-workflow-grid article { border-top-color: rgba(103,232,249,.25); }
.fuzzer-section .fuzzer-cta {
  border-color: rgba(103,232,249,.2);
  background:
    radial-gradient(ellipse at 0% 0%, rgba(34,211,238,.07), transparent 65%),
    linear-gradient(105deg, rgba(8,18,31,.86), rgba(12,9,26,.76));
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.fuzzer-section .fuzzer-cta > p { color: #a9bbcf; }

/* A coherent finish: visual hierarchy without turning everything white or noisy. */
body {
  background-color: #03070d;
  background-image: linear-gradient(180deg, rgba(3,7,13,.08), rgba(3,7,13,.2));
}
body::before {
  background:
    radial-gradient(ellipse at 76% 3%, rgba(88,47,173,.14), transparent 35rem),
    radial-gradient(ellipse at 7% 24%, rgba(6,182,212,.075), transparent 34rem),
    radial-gradient(ellipse at 92% 54%, rgba(37,99,235,.035), transparent 37rem),
    radial-gradient(ellipse at 25% 92%, rgba(34,211,238,.025), transparent 40rem);
}
.site-header {
  background: rgba(2,5,10,.88);
  border-bottom-color: rgba(130,168,207,.13);
  box-shadow: 0 8px 28px rgba(0,0,0,.1);
}
.site-header .brand-name { letter-spacing: .13em; }
.hero-copy .eyebrow {
  padding: 8px 11px;
  width: fit-content;
  max-width: 100%;
  border: 1px solid rgba(103,232,249,.13);
  border-radius: 6px;
  background: linear-gradient(100deg, rgba(34,211,238,.04), rgba(96,165,250,.022) 62%, rgba(168,85,247,.035));
}
.hero-trustline { color: #93a5ba; font-size: 8.5px; }
.section-heading { gap: clamp(22px, 4vw, 48px); }
.section-heading h2,
.intro-copy h2,
.security-main h2,
.engagement-layout h2,
.faq-heading h2 { text-wrap: balance; }
.section-summary,
.intro-copy p:not(.eyebrow),
.capability-copy p,
.security-main > p:not(.section-kicker),
.research-band p,
.process-list p,
.engagement-copy p,
.faq-list details p,
.contact-copy > p:last-child { color: #a5b6ca; }
.capability-title p,
.project-info > p:not(.project-kicker):not(.project-summary),
.keyword-line,
.process-code,
.faq-heading > p:not(.eyebrow) { color: #8498af; }
.capabilities-section,
.work-section,
.approach-section,
.engagement-section,
.faq-section,
.intro-section { position: relative; }
.capabilities-section::after,
.work-section::after,
.approach-section::after,
.engagement-section::after,
.faq-section::after,
.intro-section::after {
  content: "";
  position: absolute;
  top: 0;
  left: max(26px, calc((100vw - var(--max)) / 2));
  width: min(110px, 18vw);
  height: 1px;
  pointer-events: none;
  opacity: .72;
  background: linear-gradient(90deg, rgba(34,211,238,.55), rgba(96,165,250,.27), transparent);
}
.capability-row { padding-top: 32px; padding-bottom: 34px; }
.capability-number { color: #9fcaff; }
.capability-number span { color: #8296ad; }
.section-kicker { color: #a99aff; }
.project-screen { isolation: isolate; }
.project-screen::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  opacity: .55;
  background: linear-gradient(125deg, rgba(34,211,238,.025), transparent 43%, rgba(168,85,247,.035));
}
.project-screen > * { position: relative; z-index: 2; }
.text-link { text-decoration: none; text-underline-offset: 4px; }
.text-link:focus-visible,
.site-footer .footer-column > a:focus-visible,
.site-header .site-nav > a:focus-visible {
  outline: 2px solid rgba(103,232,249,.85);
  outline-offset: 4px;
}
.button-primary { box-shadow: 0 8px 28px rgba(6,182,212,.16), inset 0 1px rgba(255,255,255,.15); }
.button-primary:active,
.button-secondary:active { transform: translateY(0) scale(.99); }
.site-footer .footer-manifesto { color: #9aadc2 !important; }
.site-footer .footer-copyright-rights { color: #8596ab; }
.site-footer .footer-scope { color: #8da1b8; }
.site-footer .footer-scope i { color: #7a6ba3; }

/* Accessible mobile navigation and an obvious open/close state. */
.site-header .menu-toggle {
  position: relative;
  z-index: 102;
  border-color: rgba(103,232,249,.2);
  background: linear-gradient(130deg, rgba(34,211,238,.045), rgba(168,85,247,.035));
}
.site-header .menu-toggle span {
  transform-origin: center;
  transition: transform .22s ease, opacity .18s ease, background .18s ease;
}
.site-header .menu-toggle:hover {
  border-color: rgba(103,232,249,.42);
  box-shadow: 0 0 19px rgba(34,211,238,.07);
}
.site-header .menu-toggle[aria-expanded="true"] span:first-child {
  transform: translateY(3.5px) rotate(45deg);
  background: #9befff;
}
.site-header .menu-toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-3.5px) rotate(-45deg);
  background: #c5aaff;
}
@media (max-width: 1000px) {
  .fuzzer-section .fuzzer-heading { align-items: flex-start; }
}
@media (max-width: 800px) {
  .site-header .site-nav {
    border-bottom-color: rgba(103,232,249,.2);
    background:
      radial-gradient(ellipse at 4% 0%, rgba(34,211,238,.065), transparent 23rem),
      radial-gradient(ellipse at 96% 20%, rgba(168,85,247,.065), transparent 24rem),
      rgba(2,5,10,.985);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
  }
  .site-header .site-nav > a:not(.nav-cta).is-active {
    background: linear-gradient(105deg, rgba(34,211,238,.07), rgba(96,165,250,.035) 55%, rgba(168,85,247,.055));
  }
  .fuzzer-section .fuzzer-heading { gap: 18px; }
  .fuzzer-section .statehound-wordmark {
    font-size: clamp(39px, 10vw, 58px);
    white-space: normal;
    overflow-wrap: anywhere;
  }
  .fuzzer-section .statehound-meta { gap: 7px; font-size: 7.5px; }
  .section-heading { align-items: flex-start; }
  .site-footer .footer-main { gap: 28px 18px; }
  .capabilities-section::after,
  .work-section::after,
  .approach-section::after,
  .engagement-section::after,
  .faq-section::after,
  .intro-section::after { left: 22px; }
}
@media (max-width: 560px) {
  .hero-copy .eyebrow { font-size: 8.5px; letter-spacing: .12em; }
  .fuzzer-section .statehound-wordmark {
    font-size: clamp(34px, 9.8vw, 48px);
    letter-spacing: -.075em;
  }
  .fuzzer-section .statehound-meta { align-items: flex-start; flex-direction: column; }
  .fuzzer-section .statehound-meta i { display: none; }
  .fuzzer-section .statehound-meta span { max-width: 100%; overflow-wrap: anywhere; }
  .site-footer .footer-copyright { row-gap: 3px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .menu-toggle span,
  .site-header .site-nav > a:not(.nav-cta),
  .site-header .site-nav > a:not(.nav-cta)::after,
  .fuzzer-section .fuzzer-capability-card::before,
  .fuzzer-section .fuzzer-audit-card::before,
  .capability-row, .capability-row::before, .system-panel,
  .featured-project, .project-tags span, .process-list article,
  .faq-list details::before, .faq-list summary, .contact-frame {
    transition: none !important;
    animation: none !important;
    transform: none !important;
  }
}


/* FINAL DETAIL PASS — consistent type scale, inset architecture rows, balanced map */
.fuzzer-section .fuzzer-heading {
  align-items: flex-end;
}
.fuzzer-section .fuzzer-heading h2 {
  margin-top: 15px;
  margin-bottom: 0;
  font: 600 clamp(34px, 4.6vw, 57px)/1.08 var(--display);
  letter-spacing: -.065em;
}
.fuzzer-section .statehound-wordmark {
  display: inline;
  font: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  white-space: normal;
  text-wrap: balance;
  filter: none;
  -webkit-text-fill-color: transparent;
}
.fuzzer-section .statehound-meta {
  margin-top: 17px;
  gap: 7px;
}
.fuzzer-section .statehound-meta span {
  padding: 6px 8px;
  font-size: 8px;
  line-height: 1.45;
}
.fuzzer-section .fuzzer-facts {
  display: grid;
  gap: 9px;
  border-top: 0;
}
.fuzzer-section .fuzzer-fact {
  grid-template-columns: minmax(142px, .92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
  padding: 14px 17px;
  border: 1px solid rgba(111,157,200,.18);
  border-radius: 9px;
  background:
    linear-gradient(110deg, rgba(8,24,39,.76), rgba(10,12,25,.66));
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.fuzzer-section .fuzzer-fact strong {
  min-width: 0;
  color: #bdeaff;
  font-size: 9px;
  line-height: 1.65;
  letter-spacing: .045em;
  overflow-wrap: anywhere;
}
.fuzzer-section .fuzzer-fact small {
  min-width: 0;
  color: #99acc2;
  font-size: 11px;
  line-height: 1.75;
}

/* The engineering map is a deliberate diagram, not a table pressed against its frame. */
.system-panel {
  border-color: rgba(111,182,222,.3);
  border-radius: 18px;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(34,211,238,.045), transparent 46%),
    linear-gradient(145deg, rgba(8,18,31,.98), rgba(3,7,13,.98) 70%);
}
.panel-top, .panel-bottom {
  padding-right: 18px;
  padding-left: 18px;
}
.panel-screen {
  padding: 17px 16px 0;
}
.system-svg {
  overflow: visible;
}
.map-node rect {
  fill: rgba(6,15,27,.97);
  stroke: rgba(125,166,200,.3);
  stroke-width: 1.1;
  filter: drop-shadow(0 5px 10px rgba(0,0,0,.13));
  transition: fill .22s ease, stroke .22s ease, filter .22s ease;
}
.map-node:hover rect {
  fill: rgba(8,28,43,.98);
  stroke: rgba(103,232,249,.66);
  filter: drop-shadow(0 4px 14px rgba(34,211,238,.08));
}
.node-title {
  font-size: 10.5px;
}
.node-sub {
  fill: #8299b1;
  font-size: 6.4px;
  letter-spacing: .3px;
}
.micro-label {
  font-size: 7px;
  letter-spacing: .8px;
}

/* Replace slash-separated plain text with an intentional capability strip. */
.discipline-bar {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 8px;
  margin-top: 33px;
  padding: 12px;
  border: 1px solid rgba(116,157,199,.19);
  border-radius: 12px;
  background:
    radial-gradient(ellipse at 0% 0%, rgba(34,211,238,.055), transparent 55%),
    radial-gradient(ellipse at 100% 100%, rgba(168,85,247,.05), transparent 55%),
    linear-gradient(115deg, rgba(7,16,28,.8), rgba(5,9,17,.77));
  box-shadow: inset 0 1px rgba(255,255,255,.025), 0 14px 36px rgba(0,0,0,.12);
}
.discipline-bar b {
  display: none;
}
.discipline-bar span {
  display: inline-flex;
  flex: 1 1 140px;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid rgba(113,153,192,.14);
  border-radius: 7px;
  background: linear-gradient(120deg, rgba(13,27,43,.76), rgba(10,12,24,.7));
  color: #a9bbcf;
  text-align: center;
  font: 600 9px/1.5 var(--mono);
  letter-spacing: .065em;
  transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.discipline-bar span:nth-of-type(1) { color: #a9c7e2; }
.discipline-bar span:nth-of-type(2) { color: #a5e8f4; }
.discipline-bar span:nth-of-type(3) { color: #adc6ff; }
.discipline-bar span:nth-of-type(4) { color: #cab0fa; }
.discipline-bar span:nth-of-type(5) { color: #a5bbd2; }
.discipline-bar span:hover {
  transform: translateY(-1px);
  border-color: rgba(103,232,249,.34);
  background: linear-gradient(120deg, rgba(8,36,50,.8), rgba(20,14,35,.76));
  color: #e0f8ff;
  box-shadow: 0 7px 19px rgba(0,0,0,.14), 0 0 17px rgba(34,211,238,.04);
}
@media (max-width: 1100px) {
  .discipline-bar { justify-content: stretch; }
  .discipline-bar span { flex-basis: 28%; }
}
@media (max-width: 800px) {
  .fuzzer-section .fuzzer-heading { align-items: flex-start; }
  .fuzzer-section .statehound-meta { margin-top: 15px; }
  .fuzzer-section .fuzzer-fact {
    grid-template-columns: minmax(130px, .88fr) minmax(0, 1.12fr);
    gap: 13px;
    padding: 14px 16px;
  }
  .panel-screen { padding: 14px 11px 0; }
  .discipline-bar {
    gap: 7px;
    padding: 10px;
    border-radius: 10px;
  }
  .discipline-bar span {
    flex-basis: 42%;
    min-height: 40px;
    padding: 8px 9px;
    font-size: 8.5px;
  }
}
@media (max-width: 560px) {
  .fuzzer-section .fuzzer-heading h2 {
    font-size: clamp(32px, 8vw, 43px);
    line-height: 1.08;
  }
  .fuzzer-section .statehound-wordmark {
    font-size: inherit;
    letter-spacing: inherit;
    white-space: normal;
  }
  .fuzzer-section .fuzzer-fact {
    grid-template-columns: 1fr;
    gap: 4px;
    padding: 14px 15px;
  }
  .fuzzer-section .fuzzer-fact strong {
    font-size: 9px;
  }
  .fuzzer-section .fuzzer-fact small {
    font-size: 11px;
  }
  .system-panel .panel-top, .system-panel .panel-bottom {
    padding-right: 11px;
    padding-left: 11px;
  }
  .system-panel .panel-top, .system-panel .panel-bottom, .system-panel .terminal-strip {
    font-size: 7px;
  }
  .discipline-bar {
    justify-content: stretch;
    gap: 6px;
    padding: 8px;
  }
  .discipline-bar span {
    flex: 1 1 calc(50% - 6px);
    min-width: 0;
    min-height: 38px;
    padding: 7px 8px;
    font-size: 8px;
    letter-spacing: .035em;
    overflow-wrap: anywhere;
  }
}
@media (prefers-reduced-motion: reduce) {
  .map-node rect,
  .discipline-bar span {
    transition: none !important;
    transform: none !important;
  }
}


/* SYSTEMS IN MOTION — a more intentional, animated hero instrument panel */
.system-panel {
  border-color: rgba(95, 185, 222, .3);
  border-radius: 18px;
  background:
    radial-gradient(ellipse at 50% 48%, rgba(18, 91, 124, .16), transparent 47%),
    linear-gradient(145deg, rgba(7, 16, 29, .98), rgba(3, 7, 14, .99) 72%);
  box-shadow: 0 34px 90px rgba(0,0,0,.46), 0 0 0 1px rgba(83, 172, 213, .035), inset 0 1px 0 rgba(255,255,255,.055);
  isolation: isolate;
}
.system-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .4;
  background-image: linear-gradient(rgba(100, 171, 207, .055) 1px, transparent 1px), linear-gradient(90deg, rgba(100, 171, 207, .055) 1px, transparent 1px);
  background-size: 26px 26px;
  mask-image: radial-gradient(ellipse at center, #000 0%, transparent 78%);
}
.panel-top { min-height: 50px; padding-inline: 17px; }
.panel-heading { color: #a8bad0; font-size: 8px; letter-spacing: .13em; }
.panel-heading i { color: #4e7191; font-style: normal; padding-inline: 4px; }
.panel-lock { padding: 6px 9px; border: 1px solid rgba(34,211,238,.16); border-radius: 5px; color: #a9dce8; background: rgba(34,211,238,.045); white-space: nowrap; }
.panel-lock span { background: #54edc1; box-shadow: 0 0 10px rgba(84,237,193,.75); animation: signal-blink 2.4s ease-in-out infinite; }
.panel-screen { padding: 13px 12px 0; }
.system-svg { overflow: visible; }
.system-svg .orbit-one { transform-origin: 250px 180px; animation: orbit-turn 38s linear infinite; }
.system-svg .orbit-two { transform-origin: 250px 180px; animation: orbit-turn 54s linear infinite reverse; }
.system-svg .core-halo { animation: core-breathe 4.5s ease-in-out infinite; }
.system-svg .core-node { transform-box: fill-box; transform-origin: center; animation: core-border 4.5s ease-in-out infinite; }
.system-svg .map-node rect { transition: stroke .25s ease, fill .25s ease, filter .25s ease; }
.system-svg .map-node:hover rect { fill: rgba(8, 26, 42, .98); stroke: rgba(83, 221, 241, .75); filter: drop-shadow(0 0 7px rgba(34,211,238,.13)); }
.system-svg .signal-pulse { fill: #78f2ff; filter: drop-shadow(0 0 5px rgba(34,211,238,.95)); }
.system-svg .signal-pulse-violet { fill: #c6a0ff; filter: drop-shadow(0 0 5px rgba(168,85,247,.9)); }
.system-svg .signal-pulse-blue { fill: #88b8ff; filter: drop-shadow(0 0 5px rgba(96,165,250,.9)); }
.trace-lines { stroke: rgba(62, 204, 230, .47); }
.trace-lines .trace-hot { stroke: rgba(174, 117, 255, .65); }
.terminal-strip { margin-inline: 7px; padding: 13px 8px 15px; border-top: 1px solid rgba(148, 188, 221, .08); }
.terminal-prompt { color: #8c9fba; }
.terminal-strip > span:last-child { color: #c2cede; }
.terminal-strip b { padding-inline: 3px; text-shadow: 0 0 12px rgba(34,211,238,.4); }
.panel-bottom { min-height: 43px; background: rgba(2,6,12,.36); }
.panel-bottom > span:first-child i { color: #5d6f85; font-style: normal; padding-inline: 3px; }
.panel-version { display: inline-flex; align-items: center; gap: 6px; }
.panel-version b { animation: signal-blink 2.4s ease-in-out infinite; }
@keyframes orbit-turn { to { transform: rotate(360deg); } }
@keyframes core-breathe { 0%,100% { opacity: .6; } 50% { opacity: 1; } }
@keyframes core-border { 0%,100% { stroke: rgba(34,211,238,.48); } 50% { stroke: rgba(34,211,238,.9); } }
@keyframes signal-blink { 0%,100% { opacity: .68; } 50% { opacity: 1; } }
@media (max-width: 640px) {
  .panel-top { padding-inline: 11px; gap: 7px; }
  .panel-heading { font-size: 7px; letter-spacing: .075em; }
  .panel-lock { padding: 5px 6px; font-size: 6px; letter-spacing: .04em; }
  .panel-screen { padding: 9px 6px 0; }
  .terminal-strip { padding-inline: 3px; font-size: 7px; }
  .panel-bottom { padding-inline: 10px; font-size: 6px; letter-spacing: .055em; }
}
@media(prefers-reduced-motion:reduce) {
  .system-svg .orbit-one, .system-svg .orbit-two, .system-svg .core-halo, .system-svg .core-node, .panel-lock span, .panel-version b { animation: none !important; }
}


/* Keep the longer Russian security label inside the fourth diagram node. */
@media (min-width: 801px) {
  .system-svg .map-node-security .node-title {
    font-size: 15px !important;
    letter-spacing: -.25px !important;
  }
}
