:root{
  --bg:#020202;
  --bg-soft:#050505;
  --panel:#080808;
  --panel-2:#0b0b0b;
  --text:#f2f2ef;
  --text-strong:#ffffff;
  --muted:#9a9a95;
  --muted-2:#6e6e69;
  --line:#1c1c1a;
  --line-2:#30302d;
  --line-3:#494944;
  --radius:28px;
  --radius-md:20px;
  --radius-sm:12px;
  --max:1380px;
  --ease:cubic-bezier(.22,.75,.18,1);
  --mx:50vw;
  --my:35vh;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--bg);scroll-padding-top:86px}
body{
  min-height:100vh;
  background:
    radial-gradient(900px 560px at var(--mx) var(--my),rgba(255,255,255,.035),transparent 55%),
    var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.5;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:999;
  opacity:.16;
  background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px);
  mix-blend-mode:soft-light;
}
::selection{background:#f2f2ef;color:#050505}
a{color:inherit;text-decoration:none}
button{font:inherit}
svg{display:block}
.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}
.section{position:relative;padding:144px 0;border-top:1px solid var(--line);isolation:isolate}
.section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.012) 50%,transparent 100%);
  opacity:.7;
}
.eyebrow{
  display:flex;align-items:center;gap:11px;
  color:#a5a59f;text-transform:uppercase;letter-spacing:.19em;
  font:600 10px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
.eyebrow::before{content:"";width:28px;height:1px;background:#777772}
.display{font-size:clamp(58px,7.6vw,118px);font-weight:430;line-height:.88;letter-spacing:-.07em;text-wrap:balance}
.h2{font-size:clamp(42px,5.15vw,76px);font-weight:430;line-height:.95;letter-spacing:-.055em;text-wrap:balance}
.h3{font-size:clamp(26px,2.35vw,36px);font-weight:470;line-height:1.03;letter-spacing:-.04em}
.lead{font-size:clamp(17px,1.5vw,21px);line-height:1.58;color:#aaa9a4;max-width:750px;letter-spacing:-.012em}
.small{font-size:14px;color:var(--muted);line-height:1.65}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}

/* shared interactions */
.btn{
  position:relative;overflow:hidden;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:48px;padding:0 22px;border-radius:999px;border:1px solid var(--line-2);
  transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease),color .3s var(--ease);
  font-size:13px;font-weight:650;letter-spacing:-.01em;cursor:pointer;
}
.btn::before{content:"";position:absolute;inset:0;transform:translateX(-105%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transition:transform .7s var(--ease)}
.btn:hover::before{transform:translateX(105%)}
.btn svg{width:15px;height:15px;transition:transform .28s var(--ease)}
.btn:hover svg{transform:translateX(3px)}
.btn-primary{background:#f4f4ef;color:#050505;border-color:#f4f4ef;box-shadow:0 8px 40px rgba(255,255,255,.08)}
.btn-primary:hover{background:#fff;transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.018);color:#deded9}
.btn-ghost:hover{border-color:#55554f;background:#0d0d0d;transform:translateY(-2px)}

/* navigation */
.nav{
  position:fixed;inset:0 0 auto;z-index:100;height:82px;display:flex;align-items:center;
  border-bottom:1px solid transparent;
  background:linear-gradient(#020202f2,#020202aa 65%,transparent);
  backdrop-filter:blur(18px) saturate(130%);
  transition:height .28s var(--ease),border-color .28s,background .28s;
}
.nav.scrolled{height:66px;border-color:var(--line);background:rgba(4,4,4,.88);box-shadow:0 16px 50px rgba(0,0,0,.28)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:26px}
.brand{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:700;letter-spacing:-.025em;white-space:nowrap}
.mark{width:32px;height:32px;display:grid;place-items:center;transition:transform .35s var(--ease)}
.brand:hover .mark{transform:rotate(5deg) scale(1.03)}
.mark svg{width:32px;height:32px}
.nav-links{display:flex;gap:6px;align-items:center;padding:5px;border:1px solid rgba(255,255,255,.04);border-radius:999px;background:rgba(255,255,255,.015)}
.nav-links a{position:relative;padding:8px 13px;border-radius:999px;font-size:12px;color:#90908b;transition:.2s}
.nav-links a:hover{color:#fff;background:#0d0d0d}
.nav-actions{display:flex;align-items:center;gap:8px}.nav-actions .btn{min-height:38px;padding:0 15px;font-size:11px}
.menu{display:none;background:none;border:0;color:#fff;padding:8px;cursor:pointer}.menu svg{width:24px;height:24px}
.mobile{display:none;position:fixed;inset:0;z-index:120;background:rgba(3,3,3,.98);padding:24px;flex-direction:column;backdrop-filter:blur(20px)}
.mobile::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(#000,transparent)}
.mobile.open{display:flex}.mobile-top,.mobile-links{position:relative;z-index:1}.mobile-top{display:flex;justify-content:space-between;align-items:center}.mobile-links{display:flex;flex-direction:column;gap:10px;margin:auto 0}.mobile-links a{font-size:clamp(34px,9vw,58px);letter-spacing:-.055em;line-height:1;padding:8px 0;color:#b9b9b4}.mobile-links a:hover{color:#fff}.close{background:none;border:0;color:#fff;font-size:34px;cursor:pointer}

/* hero */
.hero{
  min-height:100svh;padding:152px 0 54px;position:relative;display:flex;align-items:flex-end;overflow:hidden;
  background:radial-gradient(1000px 600px at 70% 15%,rgba(255,255,255,.035),transparent 65%);
}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.027) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.027) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.82),transparent 88%)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:42%;background:linear-gradient(transparent,#020202 82%);pointer-events:none}
.hero-orbit{position:absolute;inset:-8% -8% auto auto;width:min(82vw,1100px);height:760px;opacity:.88;pointer-events:none;filter:drop-shadow(0 0 22px rgba(255,255,255,.025));animation:heroDrift 10s ease-in-out infinite alternate}
.hero-orbit svg{width:100%;height:100%}
@keyframes heroDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-10px,12px,0)}}
.hero-content{position:relative;z-index:2;width:100%}
.hero-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:60px;color:#898984;font:600 9px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.16em;text-transform:uppercase}
.hero-status{display:flex;align-items:center;gap:10px}.status-dot{width:6px;height:6px;border-radius:50%;background:#f8f8f3;box-shadow:0 0 0 5px rgba(255,255,255,.04),0 0 18px rgba(255,255,255,.35);animation:statusPulse 2.6s ease-in-out infinite}
@keyframes statusPulse{50%{opacity:.45;box-shadow:0 0 0 8px rgba(255,255,255,.018),0 0 9px rgba(255,255,255,.18)}}
.hero-copy{max-width:1040px;position:relative}
.hero-copy::before{content:"GENETIC GRID / 001";position:absolute;right:-210px;top:18px;color:#50504c;font:600 8px/1 ui-monospace,monospace;letter-spacing:.18em;writing-mode:vertical-rl}
.hero h1 span{color:#777772}
.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:44px;margin-top:50px}
.hero-bottom .lead{max-width:690px}
.hero-cta{display:flex;gap:10px;flex-shrink:0}
.signalbar{margin-top:62px;border:1px solid var(--line);border-radius:22px;min-height:174px;display:grid;grid-template-columns:1.45fr 1fr 1fr;background:linear-gradient(180deg,#070707,#050505);overflow:hidden;box-shadow:0 18px 70px rgba(0,0,0,.28)}
.signal{position:relative;padding:25px 26px;border-right:1px solid var(--line);overflow:hidden;transition:background .3s var(--ease)}.signal:last-child{border-right:0}.signal:hover{background:#090909}
.signal::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,#74746f,transparent);opacity:0;transition:opacity .3s}.signal:hover::after{opacity:.55}
.signal .label{font:600 9px/1 ui-monospace,monospace;color:#666661;letter-spacing:.16em;text-transform:uppercase;position:relative;z-index:2}
.signal strong{display:block;font-size:18px;font-weight:520;letter-spacing:-.025em;margin-top:11px;position:relative;z-index:2;max-width:280px}
.signal svg{position:absolute;inset:0;width:100%;height:100%;opacity:.9;transition:transform .45s var(--ease)}.signal:hover svg{transform:scale(1.025)}

/* ticker */
.ticker{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;background:#040404;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.ticker-track{display:inline-flex;animation:ticker 38s linear infinite}.ticker:hover .ticker-track{animation-play-state:paused}
.ticker span{display:inline-flex;align-items:center;gap:14px;padding:18px 31px;color:#787873;font:600 9px/1 ui-monospace,monospace;letter-spacing:.17em;text-transform:uppercase}
.ticker i{width:4px;height:4px;border-radius:50%;background:#d9d9d4;opacity:.5}@keyframes ticker{to{transform:translateX(-50%)}}

/* headings */
.section-head{position:relative;z-index:2;display:grid;grid-template-columns:.78fr 1.22fr;gap:88px;align-items:end;margin-bottom:66px}
.section-head .lead{justify-self:end}
.section-head::after{content:"";position:absolute;left:0;right:0;bottom:-33px;height:1px;background:linear-gradient(90deg,var(--line),transparent 82%)}

/* philosophy visual cards */
.visual-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.visual-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#090909,#060606);overflow:hidden;min-height:520px;display:flex;flex-direction:column;transition:transform .4s var(--ease),border-color .4s,box-shadow .4s}
.visual-card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(255,255,255,.1),transparent 30%,transparent 70%,rgba(255,255,255,.05));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.45;pointer-events:none}
.visual-card:hover{border-color:#3f3f3a;transform:translateY(-7px);box-shadow:0 26px 65px rgba(0,0,0,.35)}
.visual-card:nth-child(2){transform:translateY(28px)}.visual-card:nth-child(2):hover{transform:translateY(19px)}
.visual-stage{height:325px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:#020202}
.visual-stage::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.021) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.021) 1px,transparent 1px);background-size:36px 36px;opacity:.5;mask-image:radial-gradient(circle at 50% 50%,#000,transparent 80%)}
.visual-stage::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,transparent 0 22%,rgba(3,3,3,.18) 62%,#030303 100%);pointer-events:none}
.visual-stage svg{width:100%;height:100%;position:relative;z-index:1;transition:transform .65s var(--ease),opacity .4s}.visual-card:hover .visual-stage svg{transform:scale(1.035);opacity:1}
.visual-body{padding:30px 30px 34px}.visual-body h3{font-size:22px;font-weight:540;letter-spacing:-.032em;margin-bottom:12px}.visual-body p{font-size:14px;color:#8f8f8a;line-height:1.7}

/* capabilities */
#capabilities{background:#030303}
.cap-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line);border-radius:30px;overflow:hidden;background:#060606}
.cap-card{min-height:365px;padding:38px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:linear-gradient(135deg,#070707,#050505);transition:background .35s,border-color .35s}
.cap-card:nth-child(2n){border-right:0}.cap-card:nth-last-child(-n+2){border-bottom:0}
.cap-card::before{content:"";position:absolute;width:280px;height:280px;right:-160px;top:-170px;border:1px solid rgba(255,255,255,.05);border-radius:50%;box-shadow:0 0 0 34px rgba(255,255,255,.012),0 0 0 68px rgba(255,255,255,.008);transition:transform .55s var(--ease),opacity .4s;opacity:.4}
.cap-card:hover{background:#090909}.cap-card:hover::before{transform:translate(-28px,28px) scale(1.05);opacity:.75}
.cap-number{font:600 9px/1 ui-monospace,monospace;color:#5d5d58;letter-spacing:.14em}
.cap-card h3{position:relative;z-index:2;font-size:clamp(28px,2.6vw,36px);font-weight:470;letter-spacing:-.048em;margin:62px 0 14px;max-width:480px}
.cap-card p{position:relative;z-index:2;max-width:545px;color:#8b8b86;font-size:14px;line-height:1.75}
.tags{position:relative;z-index:2;display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.tag{padding:7px 10px;border:1px solid #262624;border-radius:999px;color:#8e8e89;background:#080808;font:600 9px/1 ui-monospace,monospace;letter-spacing:.05em;transition:.2s}.cap-card:hover .tag{border-color:#343430;color:#aaa9a4}
.cap-glyph{position:absolute;right:24px;top:18px;width:152px;height:105px;opacity:.34;transition:opacity .35s,transform .5s var(--ease)}.cap-glyph svg{width:100%;height:100%}.cap-card:hover .cap-glyph{opacity:.6;transform:translateY(6px) scale(1.03)}

/* solution/product sections */
.solutions{background:#050505}
.solution-stack{position:relative;z-index:2;display:grid;gap:18px}
.solution{position:relative;border:1px solid var(--line);border-radius:32px;overflow:hidden;background:linear-gradient(180deg,#080808,#060606);display:grid;grid-template-columns:.86fr 1.14fr;min-height:610px;box-shadow:0 22px 80px rgba(0,0,0,.18);transition:border-color .35s,transform .35s var(--ease)}
.solution:hover{border-color:#353531;transform:translateY(-3px)}
.solution:nth-child(even){grid-template-columns:1.14fr .86fr}.solution:nth-child(even) .solution-copy{order:2}.solution:nth-child(even) .product-visual{order:1}
.solution-copy{padding:58px 54px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;position:relative}
.solution-copy::after{content:"";position:absolute;left:54px;right:54px;bottom:92px;height:1px;background:linear-gradient(90deg,var(--line),transparent)}
.solution-kicker{font:600 9px/1 ui-monospace,monospace;letter-spacing:.17em;color:#73736e;text-transform:uppercase}
.solution-copy h3{font-size:clamp(38px,4vw,61px);font-weight:430;letter-spacing:-.058em;line-height:.95;margin:27px 0 22px;text-wrap:balance}
.solution-copy p{color:#94948f;max-width:540px;font-size:15px;line-height:1.74}
.solution-list{display:grid;grid-template-columns:1fr;gap:11px;margin-top:34px}.solution-list div{display:flex;align-items:flex-start;gap:11px;color:#b0b0ab;font-size:13px;line-height:1.45}.solution-list div::before{content:"";width:5px;height:5px;background:#ddd;border-radius:50%;opacity:.65;flex:0 0 auto;margin-top:6px}
.product-visual{min-height:610px;border-left:1px solid var(--line);position:relative;background:#020202;overflow:hidden;display:flex;align-items:center;justify-content:center}
.solution:nth-child(even) .product-visual{border-left:0;border-right:1px solid var(--line)}
.product-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.028) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.028) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(circle at 50% 50%,#000 10%,transparent 78%)}
.product-visual::after{content:"";position:absolute;inset:6%;border:1px solid rgba(255,255,255,.03);border-radius:22px;pointer-events:none}
.product-visual svg{width:91%;height:91%;position:relative;z-index:1;filter:drop-shadow(0 20px 60px rgba(0,0,0,.35));transition:transform .7s var(--ease),opacity .45s}.solution:hover .product-visual svg{transform:scale(1.025)}

/* process */
#process{background:#020202}
.process-wrap{position:relative;z-index:2;display:grid;grid-template-columns:.84fr 1.16fr;gap:100px}
.process-copy{position:sticky;top:110px;height:max-content}.process-copy::after{content:"";display:block;width:170px;height:170px;border:1px solid #22221f;border-radius:50%;margin-top:55px;background:radial-gradient(circle at center,#0a0a0a 0 28%,transparent 29%),repeating-radial-gradient(circle at center,#272724 0 1px,transparent 1px 22px);opacity:.65}
.process-list{border-top:1px solid var(--line)}
.process-item{position:relative;padding:31px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:74px 1fr;gap:22px;transition:padding-left .28s var(--ease),background .28s}
.process-item::before{content:"";position:absolute;left:-18px;top:0;bottom:0;width:2px;background:#fff;transform:scaleY(0);transform-origin:top;transition:transform .3s var(--ease);opacity:.6}
.process-item:hover{padding-left:12px;background:linear-gradient(90deg,rgba(255,255,255,.018),transparent 50%)}.process-item:hover::before{transform:scaleY(1)}
.process-num{font:600 10px/1 ui-monospace,monospace;color:#64645f;letter-spacing:.08em;padding-top:4px}
.process-item h4{font-size:24px;font-weight:500;letter-spacing:-.035em;margin-bottom:9px}.process-item p{font-size:14px;color:#858580;line-height:1.7;max-width:650px}

/* technology */
#technology{overflow:hidden;background:linear-gradient(180deg,#030303,#050505)}
#technology::after{content:"";position:absolute;right:-180px;top:50%;width:520px;height:520px;border:1px solid rgba(255,255,255,.05);border-radius:50%;box-shadow:0 0 0 48px rgba(255,255,255,.009),0 0 0 96px rgba(255,255,255,.006);transform:translateY(-50%);pointer-events:none}
.tech-cloud{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:10px;margin-top:50px;max-width:1100px}
.tech{padding:14px 18px;border:1px solid var(--line);border-radius:999px;background:#080808;color:#aaa9a4;font:600 11px/1 ui-monospace,monospace;transition:.25s var(--ease);box-shadow:inset 0 1px rgba(255,255,255,.02)}
.tech:hover{color:#fff;border-color:#484843;background:#0d0d0d;transform:translateY(-3px)}

/* contact */
.contact{min-height:760px;display:flex;align-items:center;position:relative;overflow:hidden;background:#040404}
.contact::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,#000,transparent 82%)}
.contact .container{position:relative;z-index:2}.contact .h2{max-width:980px}.contact .lead{margin-top:28px}.contact-actions{display:flex;gap:10px;margin-top:38px}.contact-art{position:absolute;right:-7%;top:50%;transform:translateY(-50%);width:780px;height:780px;opacity:.44;filter:drop-shadow(0 0 45px rgba(255,255,255,.025))}.contact-art svg{width:100%;height:100%}

/* footer */
footer{padding:72px 0 30px;border-top:1px solid var(--line);background:#020202}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:58px}.footer-brand p{max-width:370px;color:#777772;font-size:13px;line-height:1.75;margin-top:19px}
.footer-col h4{font:600 9px/1 ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#5f5f5b;margin-bottom:20px}.footer-col a{display:block;color:#8f8f8a;font-size:13px;margin:11px 0;transition:.2s}.footer-col a:hover{color:#fff;transform:translateX(3px)}
.footer-bottom{margin-top:58px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#5f5f5b;font:600 9px/1.4 ui-monospace,monospace;letter-spacing:.1em}

/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .78s var(--ease),transform .78s var(--ease)}.reveal.visible{opacity:1;transform:none}
.reveal:nth-child(2){transition-delay:.06s}.reveal:nth-child(3){transition-delay:.12s}

/* cursor glow */
.cursor-glow{position:fixed;z-index:0;width:320px;height:320px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.025),transparent 68%);transform:translate(-50%,-50%);left:var(--mx);top:var(--my);mix-blend-mode:screen}

/* scrollbar */
::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#030303}::-webkit-scrollbar-thumb{background:#1c1c1a;border:3px solid #030303;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#2d2d29}

@media(max-width:1120px){
  .nav-links{display:none}.menu{display:block}.nav-actions .btn-ghost{display:none}
  .section{padding:106px 0}.section-head{grid-template-columns:1fr;gap:28px}.section-head .lead{justify-self:start}.section-head::after{bottom:-26px}
  .visual-grid{grid-template-columns:1fr}.visual-card,.visual-card:nth-child(2),.visual-card:nth-child(2):hover{min-height:0;transform:none}.visual-card:hover{transform:translateY(-3px)}.visual-stage{height:360px}
  .solution,.solution:nth-child(even){grid-template-columns:1fr}.solution:nth-child(even) .solution-copy,.solution:nth-child(even) .product-visual{order:initial}.product-visual,.solution:nth-child(even) .product-visual{border:0;border-top:1px solid var(--line);min-height:500px}
  .process-wrap{grid-template-columns:1fr;gap:52px}.process-copy{position:static}.process-copy::after{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
  .hero-orbit{width:1120px;right:-430px;top:-90px;opacity:.56}.hero-copy::before{display:none}
}

@media(max-width:760px){
  .container{width:min(var(--max),calc(100% - 26px))}.nav{height:64px}.brand{font-size:14px}.nav-actions>.btn{display:none}
  .hero{min-height:auto;padding:118px 0 28px}.hero-topline{margin-bottom:34px}.hero-topline>span:last-child{display:none}.hero-bottom{display:block;margin-top:30px}.hero-cta{margin-top:28px;flex-wrap:wrap}.hero-cta .btn{flex:1 1 150px}
  .display{font-size:clamp(52px,16.5vw,80px);line-height:.91}.lead{font-size:16px}
  .signalbar{grid-template-columns:1fr;margin-top:40px}.signal{min-height:140px;border-right:0;border-bottom:1px solid var(--line)}.signal:last-child{border-bottom:0}
  .section{padding:82px 0}.h2{font-size:clamp(38px,12vw,58px)}
  .visual-stage{height:275px}.visual-body{padding:25px}
  .cap-grid{grid-template-columns:1fr}.cap-card,.cap-card:nth-child(2n),.cap-card:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}.cap-card:last-child{border-bottom:0}.cap-card{min-height:315px;padding:28px}.cap-card h3{margin-top:52px;font-size:29px}.cap-glyph{right:14px;top:12px;width:128px}
  .solution{min-height:0}.solution-copy{padding:38px 28px}.solution-copy::after{left:28px;right:28px;bottom:87px}.solution-copy h3{font-size:clamp(36px,11vw,52px)}.product-visual{min-height:370px}.product-visual svg{width:100%;height:100%}
  .process-item{grid-template-columns:48px 1fr;padding:25px 0}.process-item:hover{padding-left:0}.process-item::before{display:none}
  .tech-cloud{gap:8px}.tech{font-size:10px;padding:12px 14px}
  .contact{min-height:650px}.contact-art{width:570px;height:570px;right:-58%;opacity:.28}.contact-actions{flex-direction:column;align-items:flex-start}.contact-actions .btn{width:100%}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{gap:14px;flex-direction:column;line-height:1.5}
  .cursor-glow{display:none}
}

@media(max-width:460px){
  .hero-cta{display:grid;grid-template-columns:1fr}.hero-cta .btn{width:100%}
  .solution-list div{font-size:12.5px}.solution-copy p{font-size:14px}
  .nav-inner{gap:12px}.mark,.mark svg{width:29px;height:29px}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}

/* gene + physics identity layer */
.hero-dna{position:absolute;right:4.2%;top:5%;width:235px;height:88%;z-index:1;opacity:.34;pointer-events:none;filter:drop-shadow(0 0 20px rgba(255,255,255,.025));mask-image:linear-gradient(180deg,transparent,#000 16%,#000 84%,transparent)}
.hero-dna svg{width:100%;height:100%;overflow:visible;animation:dnaFloat 9s ease-in-out infinite alternate}
.dna-path{stroke-dasharray:4 8;animation:dnaDash 18s linear infinite}.dna-path-b{animation-direction:reverse;opacity:.72}
.dna-rungs{animation:helixPulse 4.8s ease-in-out infinite}.gene-node{animation:genePulse 3.4s ease-in-out infinite}.gene-node-2{animation-delay:.7s}.gene-node-3{animation-delay:1.4s}.gene-node-4{animation-delay:2.1s}
@keyframes dnaFloat{from{transform:translate3d(0,-5px,0) rotate(-.35deg)}to{transform:translate3d(0,11px,0) rotate(.35deg)}}
@keyframes dnaDash{to{stroke-dashoffset:-120}}
@keyframes helixPulse{0%,100%{opacity:.38}50%{opacity:.78}}
@keyframes genePulse{0%,100%{opacity:.25;transform:scale(.78);transform-origin:center}45%{opacity:1;transform:scale(1.35);transform-origin:center}}

.science-section{background:#020202;overflow:hidden}
.science-section::before{content:"";position:absolute;left:50%;top:48%;width:1100px;height:1100px;transform:translate(-50%,-50%);background:repeating-radial-gradient(circle at center,rgba(255,255,255,.025) 0 1px,transparent 1px 48px);mask-image:radial-gradient(circle,#000 0 28%,transparent 72%);opacity:.34;pointer-events:none}
.science-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.science-card{position:relative;min-height:600px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(180deg,#080808 0%,#050505 100%);overflow:hidden;display:flex;flex-direction:column;transition:transform .4s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease)}
.science-card:hover{transform:translateY(-5px);border-color:#353531;box-shadow:0 28px 80px rgba(0,0,0,.26)}
.science-card::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,#000,transparent 70%);pointer-events:none}
.science-meta{position:relative;z-index:2;display:flex;justify-content:space-between;gap:16px;padding:22px 24px 0;font:600 8px/1.3 ui-monospace,monospace;letter-spacing:.14em;color:#5f5f5a}
.science-stage{position:relative;z-index:1;height:355px;display:flex;align-items:center;justify-content:center;padding:10px 12px 0}.science-stage svg{width:100%;height:100%;overflow:visible;filter:drop-shadow(0 20px 40px rgba(0,0,0,.22));transition:transform .65s var(--ease)}.science-card:hover .science-stage svg{transform:scale(1.025)}
.science-copy{position:relative;z-index:2;padding:26px 26px 30px;border-top:1px solid var(--line);margin-top:auto;background:linear-gradient(180deg,rgba(6,6,6,.86),#060606)}
.science-copy h3{font-size:24px;font-weight:500;letter-spacing:-.035em;margin-bottom:10px}.science-copy p{font-size:13px;line-height:1.7;color:#858580}
.helix-orbit path{stroke-dasharray:5 8;animation:dnaDash 14s linear infinite}.helix-orbit path+path{animation-direction:reverse}.helix-rungs{animation:helixPulse 4.4s ease-in-out infinite}
.pulse-node{animation:scienceNode 3s ease-in-out infinite;transform-origin:center}.delay-1{animation-delay:.55s}.delay-2{animation-delay:1.1s}.delay-3{animation-delay:1.65s}
@keyframes scienceNode{0%,100%{opacity:.3;transform:scale(.7)}45%{opacity:1;transform:scale(1.45)}}
.field-lines{stroke-dasharray:5 9;animation:fieldFlow 16s linear infinite}.physics-sparks circle{animation:scienceNode 2.8s ease-in-out infinite}.physics-sparks circle:nth-child(2){animation-delay:.8s}.physics-sparks circle:nth-child(3){animation-delay:1.6s}
@keyframes fieldFlow{to{stroke-dashoffset:-150}}
.wave{fill:none;stroke-dasharray:8 9;animation:waveTravel 12s linear infinite}.wave-b{animation-direction:reverse;animation-duration:16s}.wave-result{animation-duration:9s}
.scanline{animation:scanMove 6.5s ease-in-out infinite}
@keyframes waveTravel{to{stroke-dashoffset:-170}}
@keyframes scanMove{0%,100%{transform:translateX(0);opacity:.26}50%{transform:translateX(365px);opacity:.72}}

@media(max-width:1120px){.hero-dna{right:-60px;opacity:.22}.science-grid{grid-template-columns:1fr}.science-card{min-height:0}.science-stage{height:410px}}
@media(max-width:760px){.hero-dna{right:-100px;top:9%;width:220px;opacity:.16}.science-stage{height:300px}.science-card{border-radius:24px}.science-copy{padding:23px}.science-meta{padding:20px 20px 0}}
@media(max-width:460px){.hero-dna{display:none}.science-stage{height:260px}.science-meta span:last-child{display:none}}


/* interactive eye hero — original Genetic Grid treatment */
.hero-eye{
  position:absolute;right:-1.5%;top:94px;width:min(54vw,760px);height:min(47vw,500px);z-index:1;
  pointer-events:none;opacity:.86;transform:translate3d(0,0,0);
  filter:drop-shadow(0 0 48px rgba(255,255,255,.028));
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 18%,#000 100%);
}
.hero-eye::before{content:"";position:absolute;inset:9% 8%;border:1px solid rgba(255,255,255,.025);border-radius:50%;box-shadow:0 0 0 24px rgba(255,255,255,.006),0 0 0 52px rgba(255,255,255,.004);animation:eyeHalo 8s ease-in-out infinite alternate}
.hero-eye svg{width:100%;height:100%;overflow:visible}
.eye-meta{position:absolute;z-index:2;color:#666661;font:600 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em;text-transform:uppercase}
.eye-meta-top{left:19%;top:10%}.eye-meta-bottom{right:13%;bottom:11%}
.eye-outline{transform-origin:380px 250px;animation:eyeBreath 7s ease-in-out infinite}
.eye-iris{transform-box:fill-box;transform-origin:center;transition:transform .14s cubic-bezier(.2,.8,.2,1)}
.eye-pupil{transform-box:fill-box;transform-origin:center;transition:transform .11s cubic-bezier(.2,.8,.2,1)}
.orbit-ring{transform-origin:380px 250px;animation:eyeOrbit 17s linear infinite}
.iris-spokes{transform-origin:380px 250px;animation:eyeOrbitReverse 28s linear infinite}
.eye-genetic{animation:geneEyePulse 5.8s ease-in-out infinite}
.eye-scan{animation:eyeScan 4.8s ease-in-out infinite}
.eye-hint{font-style:normal;color:#c8c8c2;opacity:.66}
@keyframes eyeOrbit{to{transform:rotate(360deg)}}
@keyframes eyeOrbitReverse{to{transform:rotate(-360deg)}}
@keyframes eyeBreath{0%,100%{transform:scaleY(1)}48%{transform:scaleY(1)}50%{transform:scaleY(.985)}52%{transform:scaleY(1)}}
@keyframes eyeScan{0%{transform:translateY(0);opacity:0}10%{opacity:.42}50%{opacity:.22}90%{opacity:.42}100%{transform:translateY(208px);opacity:0}}
@keyframes geneEyePulse{50%{opacity:.74}}
@keyframes eyeHalo{to{transform:scale(1.035);opacity:.58}}

/* keep earlier physics field behind the eye rather than competing with it */
.hero-orbit{right:7%;top:-13%;width:min(70vw,930px);opacity:.38}
.hero-dna{right:1.2%;opacity:.22}

@media(max-width:1120px){
  .hero-eye{right:-15%;top:104px;width:720px;height:474px;opacity:.62;-webkit-mask-image:linear-gradient(90deg,transparent,#000 28%);mask-image:linear-gradient(90deg,transparent,#000 28%)}
  .hero-orbit{right:-330px;opacity:.25}
  .hero-dna{right:-80px;opacity:.14}
}
@media(max-width:760px){
  .hero-eye{right:-56%;top:86px;width:650px;height:428px;opacity:.32;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}
  .eye-meta{display:none}.eye-hint{display:none}
  .hero-orbit{opacity:.16}
}
@media(max-width:460px){
  .hero-eye{right:-95%;top:88px;width:620px;height:408px;opacity:.22}
}
@media(prefers-reduced-motion:reduce){
  .eye-outline,.orbit-ring,.iris-spokes,.eye-genetic,.eye-scan,.hero-eye::before{animation:none!important}
  .eye-iris,.eye-pupil{transition:none!important}
}


/* ============================================================
   MULTI PAGE CONTENT SYSTEM
   ============================================================ */
.nav-links a[aria-current="page"]{color:#fff;background:#101010}
.card-link{display:block;color:inherit}.card-arrow{position:absolute;right:34px;bottom:32px;color:#70706b;font:600 10px/1 ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;transition:.25s}.card-link:hover .card-arrow{color:#fff;transform:translateX(4px)}
.multipage-grid .cap-card{min-height:400px}
.feature-band{background:#050505}
.feature-grid{position:relative;z-index:2;display:grid;gap:14px}.feature-grid.four{grid-template-columns:repeat(4,1fr)}.feature-grid.three{grid-template-columns:repeat(3,1fr)}
.feature-card{position:relative;display:block;min-height:300px;padding:30px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(155deg,#090909,#050505);overflow:hidden;transition:.35s var(--ease)}
.feature-card::after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.05);border-radius:50%;right:-85px;bottom:-110px;box-shadow:0 0 0 28px rgba(255,255,255,.008);transition:.45s var(--ease)}
.feature-card:hover{transform:translateY(-5px);border-color:#3e3e39;background:#0a0a0a}.feature-card:hover::after{transform:translate(-18px,-18px) scale(1.08)}
.feature-card>span{font:600 9px/1 ui-monospace,monospace;letter-spacing:.14em;color:#62625d}.feature-card h3{font-size:25px;line-height:1.05;letter-spacing:-.04em;font-weight:500;margin:52px 0 15px;max-width:280px}.feature-card p{color:#8f8f89;font-size:14px;line-height:1.72}
.split-showcase{background:#020202}.split-grid{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split-grid.reverse .split-copy{order:2}.split-grid.reverse>*:last-child{order:1}
.split-art{min-height:520px;border:1px solid var(--line);border-radius:30px;background:#030303;display:grid;place-items:center;overflow:hidden;position:relative}.split-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle,#000,transparent 78%)}.split-art svg{width:92%;height:92%;position:relative;z-index:1}.split-copy .lead{margin-top:25px}.text-link{display:inline-block;margin-top:34px;font-size:13px;color:#d8d8d3;border-bottom:1px solid #3b3b37;padding-bottom:5px;transition:.25s}.text-link:hover{color:#fff;border-color:#fff}
.detail-list{display:grid;margin-top:32px;border-top:1px solid var(--line)}.detail-list>div{display:grid;grid-template-columns:150px 1fr;gap:26px;padding:19px 0;border-bottom:1px solid var(--line)}.detail-list b{font-size:13px;font-weight:600}.detail-list span{font-size:13px;color:#858580;line-height:1.65}
.tri-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.info-panel{min-height:320px;border:1px solid var(--line);border-radius:24px;padding:34px;background:#070707;display:flex;flex-direction:column}.info-panel h3{font-size:28px;line-height:1.04;letter-spacing:-.045em;font-weight:500;margin:54px 0 15px}.info-panel p{font-size:14px;color:#898984;line-height:1.72}.info-panel a{margin-top:auto;padding-top:28px;color:#c5c5c0;font-size:12px}.info-panel a:hover{color:#fff}
.responsible{background:#050505}.pill-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:34px}.pill-list span{padding:11px 14px;border:1px solid #292926;border-radius:999px;background:#080808;color:#aaa9a4;font:600 10px/1 ui-monospace,monospace}.pill-list.large{margin-top:44px}.pill-list.large span{padding:14px 18px;font-size:11px}
.principle-stack{display:grid;border-top:1px solid var(--line)}.principle-stack>div{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:26px 0;border-bottom:1px solid var(--line)}.principle-stack strong{font:600 10px/1 ui-monospace,monospace;color:#686863}.principle-stack span{font-size:18px;line-height:1.45;letter-spacing:-.02em;color:#c2c2bd}
.process-mini{background:#020202}.process-strip{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden}.process-strip>div{min-height:230px;padding:28px;border-right:1px solid var(--line);background:#060606}.process-strip>div:last-child{border-right:0}.process-strip span{font:600 9px/1 ui-monospace,monospace;color:#5d5d58}.process-strip b{display:block;font-size:20px;font-weight:500;margin:72px 0 11px;letter-spacing:-.03em}.process-strip p{font-size:12px;color:#7d7d78;line-height:1.6}.home-contact{min-height:650px}

/* secondary page hero */
.page-hero{position:relative;min-height:760px;padding:160px 0 90px;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(900px 580px at 75% 35%,rgba(255,255,255,.035),transparent 62%),#020202}.page-grid{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px);background-size:62px 62px;mask-image:linear-gradient(to bottom,#000,transparent 90%)}.page-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:58px;align-items:center}.page-hero-copy h1{font-size:clamp(58px,6.5vw,98px);line-height:.9;letter-spacing:-.066em;font-weight:430;margin:30px 0}.page-hero-copy h1 span{color:#777772}.page-hero-copy .lead{max-width:720px}.page-hero-copy .hero-cta{margin-top:34px}.page-hero-art{height:520px;border-left:1px solid rgba(255,255,255,.06);position:relative;display:grid;place-items:center}.page-hero-art::before{content:"";position:absolute;inset:10%;border:1px solid rgba(255,255,255,.035);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.008),0 0 0 90px rgba(255,255,255,.005)}.page-hero-art svg{width:100%;height:100%;position:relative;z-index:1}
.darker{background:#050505}.module-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.module-card{min-height:300px;border:1px solid var(--line);border-radius:24px;padding:34px;background:#070707;position:relative;overflow:hidden}.module-card::before{content:"";position:absolute;right:-60px;top:-70px;width:190px;height:190px;border:1px solid rgba(255,255,255,.045);border-radius:50%;box-shadow:0 0 0 28px rgba(255,255,255,.008)}.module-card>span{font:600 9px/1 ui-monospace,monospace;letter-spacing:.14em;color:#666661;text-transform:uppercase}.module-card h3{font-size:30px;line-height:1.04;letter-spacing:-.045em;font-weight:500;margin:64px 0 14px}.module-card p{font-size:14px;line-height:1.74;color:#8d8d88;max-width:600px}.safety-note{position:relative;z-index:2;margin-top:18px;padding:26px 30px;border:1px solid #33332f;border-radius:18px;background:#080808;display:grid;grid-template-columns:260px 1fr;gap:28px}.safety-note strong{font-size:15px}.safety-note p{font-size:13px;color:#8e8e89;line-height:1.65}
.audit-flow{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:24px;overflow:hidden}.audit-flow>div{min-height:260px;padding:28px;border-right:1px solid var(--line);background:#060606}.audit-flow>div:last-child{border-right:0}.audit-flow span{font:600 9px/1 ui-monospace,monospace;color:#62625d}.audit-flow h3{font-size:25px;font-weight:500;letter-spacing:-.04em;margin:82px 0 12px}.audit-flow p{font-size:12px;color:#81817c;line-height:1.6}.compliance-copy{margin-top:55px;padding-top:35px;border-top:1px solid var(--line);display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.compliance-copy h3{font-size:26px;font-weight:500;line-height:1.1;letter-spacing:-.04em}.compliance-copy p{font-size:14px;color:#8b8b86;line-height:1.75}

/* contact page */
.contact-layout{display:grid;grid-template-columns:.86fr 1.14fr;gap:80px;align-items:start}.brief-list{margin-top:42px;border-top:1px solid var(--line)}.brief-list>div{display:grid;grid-template-columns:50px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.brief-list span{font:600 9px/1 ui-monospace,monospace;color:#63635e;padding-top:4px}.brief-list p{font-size:13px;color:#8d8d88;line-height:1.65}.brief-list b{color:#d8d8d3;font-size:14px}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:32px;border:1px solid var(--line);border-radius:28px;background:#070707}.project-form label{display:grid;gap:9px;font:600 10px/1 ui-monospace,monospace;color:#777772;letter-spacing:.08em;text-transform:uppercase}.project-form input,.project-form textarea,.project-form select{width:100%;border:1px solid #292926;border-radius:12px;background:#040404;color:#eee;padding:15px 16px;font:400 14px/1.4 Inter,ui-sans-serif,sans-serif;outline:none;transition:.2s}.project-form textarea{resize:vertical;min-height:150px}.project-form input:focus,.project-form textarea:focus,.project-form select:focus{border-color:#5a5a55;background:#060606}.project-form .full{grid-column:1/-1}.project-form button{width:max-content}.form-note{font:400 11px/1.6 Inter,ui-sans-serif,sans-serif;color:#64645f;text-transform:none;letter-spacing:0}

@media(max-width:1120px){
  .feature-grid.four{grid-template-columns:repeat(2,1fr)}.feature-grid.three{grid-template-columns:repeat(2,1fr)}.split-grid{grid-template-columns:1fr;gap:44px}.split-grid.reverse .split-copy,.split-grid.reverse>*:last-child{order:initial}.split-art{min-height:440px}.tri-grid{grid-template-columns:1fr}.process-strip{grid-template-columns:repeat(3,1fr)}.process-strip>div:nth-child(3){border-right:0}.process-strip>div:nth-child(-n+3){border-bottom:1px solid var(--line)}
  .page-hero{min-height:auto;padding:140px 0 80px}.page-hero-grid{grid-template-columns:1fr}.page-hero-art{height:420px;border-left:0;border-top:1px solid var(--line)}.audit-flow{grid-template-columns:repeat(3,1fr)}.audit-flow>div:nth-child(3){border-right:0}.audit-flow>div:nth-child(-n+3){border-bottom:1px solid var(--line)}.audit-flow>div:nth-child(4){border-bottom:0}.contact-layout{grid-template-columns:1fr}
}
@media(max-width:760px){
  .feature-grid.four,.feature-grid.three,.module-grid{grid-template-columns:1fr}.feature-card{min-height:260px}.feature-card h3{margin-top:44px}.split-art{min-height:330px}.detail-list>div{grid-template-columns:1fr;gap:8px}.principle-stack>div{grid-template-columns:42px 1fr}.process-strip{grid-template-columns:1fr}.process-strip>div{min-height:170px;border-right:0;border-bottom:1px solid var(--line)!important}.process-strip>div:last-child{border-bottom:0!important}.process-strip b{margin-top:46px}.page-hero{padding:116px 0 60px}.page-hero-copy h1{font-size:clamp(52px,15vw,74px)}.page-hero-art{height:300px}.module-card{min-height:260px;padding:28px}.module-card h3{margin-top:50px}.safety-note{grid-template-columns:1fr}.audit-flow{grid-template-columns:1fr}.audit-flow>div{min-height:200px;border-right:0;border-bottom:1px solid var(--line)!important}.audit-flow>div:last-child{border-bottom:0!important}.audit-flow h3{margin-top:54px}.compliance-copy{grid-template-columns:1fr;gap:18px}.project-form{grid-template-columns:1fr;padding:24px}.project-form .full{grid-column:auto}.project-form button{width:100%}
}


/* UNIQUE SCIENCE VISUALS V2 */
.science-visual{isolation:isolate}
.science-visual::after{content:"";position:absolute;inset:8% 5%;pointer-events:none;background:radial-gradient(circle at 52% 50%,rgba(255,255,255,.035),transparent 54%);filter:blur(12px);z-index:0}
.science-visual svg{filter:drop-shadow(0 0 20px rgba(255,255,255,.018))}
.visual-healthcare::before{border-radius:46% 54% 52% 48%/45% 42% 58% 55%;transform:rotate(-5deg)}
.visual-enterprise::before{border-radius:18px;inset:16%;box-shadow:0 0 0 36px rgba(255,255,255,.006),0 0 0 72px rgba(255,255,255,.003)}
.visual-software::before{border-radius:18px;inset:12%;transform:skewY(-2deg)}
.visual-engineering::before{border-radius:0;inset:12%;clip-path:polygon(50% 0,100% 100%,0 100%)}
.visual-research::before{border-radius:50%;inset:18% 8%;transform:scaleX(1.2)}
.visual-education::before{border-radius:50% 20% 50% 20%;inset:15%;transform:rotate(12deg)}
.visual-about::before{border-radius:50%;inset:10%;transform:rotate(-8deg)}
.visual-contact::before{border-radius:50%;inset:16%;box-shadow:0 0 0 32px rgba(255,255,255,.005),0 0 0 68px rgba(255,255,255,.003)}
.page-hero-art.science-visual{background:radial-gradient(420px 300px at 55% 50%,rgba(255,255,255,.018),transparent 72%)}
@media(prefers-reduced-motion:reduce){.science-visual animate,.science-visual animateMotion,.science-visual animateTransform{display:none}}

/* ============================================================
   MOBILE RESPONSIVE REFINEMENTS
   ============================================================ */

html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
a,button{-webkit-tap-highlight-color:rgba(255,255,255,.07)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #f4f4ef;outline-offset:3px}
.hero{min-height:100vh;min-height:100svh}
.project-form{color-scheme:dark}

/* full-screen menu: scrollable on short screens, comfortable tap targets */
.mobile{
  height:100vh;height:100dvh;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));
}
.mobile-links{padding:28px 0}
.mobile-links a:last-child{
  margin-top:20px;padding:13px 20px;border:1px solid #f4f4ef;border-radius:999px;
  background:#f4f4ef;color:#050505;font-size:clamp(18px,5.2vw,23px);line-height:1.15;
  letter-spacing:-.02em;text-align:center;
}
.mobile-links a:last-child:hover{background:#fff;color:#050505}
.close{display:grid;place-items:center;width:44px;height:44px;margin-right:-6px;border-radius:50%;line-height:1}

@media(max-width:1120px){
  .menu{display:grid;place-items:center;width:44px;height:44px;padding:0;margin-right:-6px}
  .nav .brand,.mobile .brand{min-height:44px}
  .hero-content{padding-inline:24px}
  .hero-topline>span:last-child{display:none}
  .footer-col a{display:flex;align-items:center;min-height:36px;margin:0;padding:3px 0}
  .project-form input,.project-form textarea,.project-form select{font-size:16px}
}

/* tablet hero: stop the copy and buttons from crowding the artwork */
@media(max-width:980px){
  .hero-bottom{display:block}
  .hero-bottom .lead{max-width:690px}
  .hero-cta{margin-top:28px;flex-wrap:wrap}
}

@media(max-width:760px){
  html{scroll-padding-top:76px}
  .nav .brand,.mobile .brand{min-height:44px}
  .menu{width:44px;height:44px;margin-right:-5px}
  .hero{padding-top:112px}
  .hero-topline{margin-bottom:30px;line-height:1.5}
  .hero-content{padding-inline:0}
  .hero-cta .btn{min-height:50px}
  .contact-actions{gap:12px}

  .footer-grid{gap:32px}
  .footer-col h4{margin-bottom:8px}
  .footer-col a{display:flex;align-items:center;min-height:40px;margin:0;padding:4px 0}

  .project-form{padding:22px 18px;border-radius:22px;gap:14px}
  .project-form input,.project-form textarea,.project-form select{font-size:16px;line-height:1.45;padding:14px 15px;border-radius:10px}
  .project-form textarea{min-height:165px}
  .project-form button{min-height:52px;font-size:13px}
}

@media(max-width:520px){
  .hero-status-extra{display:none}
}

/* compact menu for short screens and landscape phones */
@media(max-height:640px){
  .mobile{padding:18px 20px}
  .mobile-links{gap:2px;padding:12px 0}
  .mobile-links a{font-size:clamp(24px,6vh,38px);padding:5px 0}
  .mobile-links a:last-child{font-size:clamp(16px,4.4vh,20px);padding:11px 18px;margin-top:10px}
}
@media(max-height:470px){
  .mobile-links{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;align-content:center;padding:8px 0;margin:auto 0}
  .mobile-links a{font-size:clamp(20px,4.4vw,25px);padding:6px 0}
  .mobile-links a:last-child{grid-column:1/-1;margin-top:8px;padding:10px 16px;font-size:16px;text-align:center}
}

/* touch screens do not need persistent hover offsets */
@media(hover:none){
  .eye-hint{display:none}
  .btn:hover,.btn-primary:hover,.btn-ghost:hover,.solution:hover,.feature-card:hover,
  .science-card:hover,.tech:hover,.visual-card:hover,.visual-card:nth-child(2):hover,
  .footer-col a:hover{transform:none}
}

@media(max-width:760px){
  .footer-bottom{letter-spacing:.04em}
  .footer-bottom span{text-wrap:balance}
}

@media(max-width:400px){
  .footer-bottom{font-size:8.5px;letter-spacing:0}
}
