:root { --bg:#090a0c; --surface:#111318; --line:#272a31; --text:#f1f0eb; --muted:#9b9da5; --accent:#c6f66b; --accent-dark:#18220b; --mono:'DM Mono',monospace; --sans:'Manrope',sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--text); background:var(--bg); font-family:var(--sans); overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
.site-header { position:relative; z-index:2; }
.reveal { transition:opacity .7s ease, transform .7s ease; }
.js-enabled .reveal:not(.is-visible) { opacity:0; transform:translateY(24px); }
.solution-card { transition:transform .25s ease, border-color .25s ease, background .25s ease; }
.solution-card:hover { transform:translateY(-7px); border-color:#71894b; background:#171a1c; }
.solution-card a:focus-visible,.button:focus-visible,.desktop-nav a:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
.ambient { position:absolute; width:35rem; height:35rem; border-radius:50%; filter:blur(100px); opacity:.1; pointer-events:none; }
.ambient-one { background:#9dd75c; top:5rem; right:-18rem; }.ambient-two { background:#4465bc; top:48rem; left:-20rem; }
.section-shell { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
.site-header { display:flex; align-items:center; justify-content:space-between; width:min(1180px,calc(100% - 48px)); margin:auto; padding:27px 0; position:relative; z-index:2; }
.brand { display:flex; gap:10px; align-items:center; font-size:12px; letter-spacing:.14em; font-weight:800; }.brand-mark { width:27px; height:27px; display:grid; place-items:center; border:1px solid var(--accent); color:var(--accent); font-family:var(--mono); font-size:14px; }.brand-muted { color:#737680; }
.desktop-nav { display:flex; gap:36px; color:#aaaeb6; font-size:13px; }.desktop-nav a:hover,.text-link:hover { color:var(--accent); }
.button { display:inline-flex; gap:16px; align-items:center; justify-content:center; padding:15px 20px; border-radius:100px; font-size:12px; font-weight:700; transition:transform .2s,background .2s; }.button:hover { transform:translateY(-2px); }.button-primary { background:var(--accent); color:#10130b; }.button-primary:hover { background:#d5ff87; }.button-ghost { border:1px solid var(--line); }.button-ghost:hover { border-color:var(--accent); color:var(--accent); }.button-small { padding:10px 15px; }
.hero { min-height:650px; display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:40px; padding:72px 0 88px; }.eyebrow { color:var(--accent); text-transform:uppercase; letter-spacing:.13em; font:11px var(--mono); }.pulse-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:var(--accent); margin-right:9px; box-shadow:0 0 14px var(--accent); }.hero h1 { font-size:clamp(3.1rem,6.3vw,5.7rem); letter-spacing:-.08em; line-height:.97; margin:25px 0 28px; font-weight:700; }.hero h1 em,.section-intro h2 span,.process-title em,.about-section em,.contact-card em { color:var(--accent); font-style:normal; }.hero-lede { color:var(--muted); max-width:430px; line-height:1.7; font-size:15px; }.hero-actions { display:flex; gap:25px; align-items:center; margin-top:34px; }.text-link { font:11px var(--mono); color:#d2d3ce; }.text-link span { margin-left:8px; color:var(--accent); }
.hero-visual { height:430px; position:relative; display:grid; place-items:center; }.orbit { position:absolute; border:1px solid #30352a; border-radius:50%; transform:rotate(-22deg); }.orbit-large { width:390px; height:160px; }.orbit-small { width:260px; height:105px; transform:rotate(52deg); border-color:#424c35; }.core { width:128px; height:128px; display:grid; place-items:center; border:1px solid var(--accent); border-radius:50%; background:radial-gradient(circle,#45552b 0,#1a2112 46%,#0b0c0b 70%); box-shadow:0 0 70px #93ba4550; font:28px var(--mono); color:var(--accent); }.node { position:absolute; padding:7px 10px; border:1px solid var(--line); background:#101216; color:#c8c9c4; font:10px var(--mono); }.node-a { top:72px; right:65px; }.node-b { bottom:80px; left:53px; }.node-c { bottom:48px; right:25px; }.visual-caption { position:absolute; top:10px; left:45px; color:#676b72; font:10px/1.5 var(--mono); text-transform:uppercase; letter-spacing:.1em; }
.hero-services { margin-top:42px; }.hero-services-label { color:#6e7178; text-transform:uppercase; letter-spacing:.12em; font:11px var(--mono); }.hero-service-list { display:flex; flex-wrap:wrap; gap:8px; margin-top:13px; max-width:560px; }.hero-service-list a { border:1px solid #30352a; border-radius:100px; padding:9px 12px; color:#c9cbc3; font:11px var(--mono); transition:color .2s,border-color .2s,background .2s; }.hero-service-list a:hover { color:var(--accent); border-color:#71894b; background:#18220b; }
.signal-bar { border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; padding:21px 0; color:#6e7178; text-transform:uppercase; letter-spacing:.12em; font:10px var(--mono); }.signal-bar i { width:4px; height:4px; background:var(--accent); border-radius:50%; }
.content-section { padding:145px 0 160px; }.section-intro { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:end; margin-bottom:57px; }.section-intro h2,.process-title h2,.about-section h2,.contact-card h2 { font-size:clamp(2.3rem,4vw,4rem); letter-spacing:-.07em; line-height:1.02; margin:0; }.section-intro > p:last-child { color:var(--muted); line-height:1.7; max-width:400px; margin:0; }.solution-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; }.solution-card { background:var(--surface); border:1px solid var(--line); min-height:330px; padding:25px; display:flex; flex-direction:column; position:relative; }.featured-card { background:linear-gradient(145deg,#1b2415,#111318 60%); border-color:#596c3d; }.card-number { position:absolute; top:25px; right:25px; color:#64676e; font:11px var(--mono); }.card-icon { font-size:32px; color:var(--accent); margin:45px 0 35px; }.solution-card h3 { margin:0 0 15px; font-size:18px; }.solution-card p { color:var(--muted); font-size:13px; line-height:1.65; margin:0; }.solution-card a { color:var(--accent); font:11px var(--mono); margin-top:auto; }.solution-card a span { margin-left:8px; }
.process-section { background:#101216; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:125px 0; }.process-layout { display:grid; grid-template-columns:1fr 1fr; gap:80px; }.process-list { border-top:1px solid var(--line); }.process-item { display:grid; grid-template-columns:60px 1fr; gap:18px; border-bottom:1px solid var(--line); padding:25px 0; }.process-item > span { color:var(--accent); font:11px var(--mono); }.process-item h3 { font-size:18px; margin:0 0 10px; }.process-item p { color:var(--muted); line-height:1.6; font-size:13px; margin:0; }
.about-section { display:grid; grid-template-columns:120px 1fr 1fr; gap:50px; align-items:start; padding:145px 0; }.about-stamp { width:90px; height:90px; border:1px solid var(--accent); border-radius:50%; display:grid; place-items:center; align-content:center; color:var(--accent); font:18px var(--mono); text-align:center; transform:rotate(-15deg); }.about-stamp span { font-size:10px; color:#7e9360; }.about-copy { color:var(--muted); max-width:360px; line-height:1.75; margin-top:42px; font-size:14px; }
.contact-section { border:1px solid var(--line); display:grid; grid-template-columns:1.3fr .7fr; margin-bottom:100px; background:linear-gradient(110deg,#171d12,#101216 70%); }.contact-card { padding:70px 65px; }.contact-card > p:not(.eyebrow) { color:var(--muted); max-width:450px; line-height:1.65; font-size:14px; margin:28px 0; }.contact-side { border-left:1px solid var(--line); padding:70px 40px; display:flex; flex-direction:column; gap:12px; color:var(--muted); font-size:13px; }.contact-side a { color:var(--text); margin-bottom:27px; }.side-label { color:var(--accent); font:10px var(--mono); text-transform:uppercase; letter-spacing:.1em; }
.site-footer { border-top:1px solid var(--line); padding:25px 0 35px; display:flex; justify-content:space-between; color:#6c6f77; font-size:10px; }.site-footer .brand { color:var(--text); }
.hero-services-label { font-size:11px; }
.hero-service-list a { padding:9px 12px; font-size:11px; }
.card-number { font-size:12px; }
.solution-card h3 { font-size:19px; }
.solution-card p { font-size:14px; }
.solution-card a { font-size:12px; }
.process-item > span { font-size:12px; }
.process-item h3 { font-size:20px; }
.process-item p { font-size:14px; line-height:1.65; }
.site-footer { font-size:12px; }
.brand { font-size:13px; }
.button { font-size:13px; }
.eyebrow { font-size:12px; }
.signal-bar { font-size:12px; }
.node { font-size:11px; }
.visual-caption { font-size:11px; }
.side-label { font-size:11px; }
.contact-side { font-size:14px; }
@media (max-width:980px) { .solution-grid { grid-template-columns:repeat(3,1fr); } }
@media (max-width:760px) { body { overflow:auto; }.site-header { position:relative; left:auto; transform:none; }.site-header,.section-shell { width:min(100% - 36px,560px); } main { display:block; width:auto; height:auto; overflow:visible; } main > section:not(.signal-bar) { width:auto; height:auto; min-height:0; overflow:visible; }.signal-bar { position:relative; left:auto; bottom:auto; width:min(100% - 36px,560px); margin:0 auto; padding:21px 0; gap:10px; overflow:hidden; white-space:nowrap; font-size:8px; }.desktop-nav { display:none; }.hero { grid-template-columns:1fr; padding:68px 0 55px; min-height:0; }.hero-visual { height:300px; margin-top:15px; }.orbit-large { width:290px; height:130px; }.orbit-small { width:210px; }.core { width:100px; height:100px; }.node-a { top:22px; right:10px; }.node-b { bottom:35px; left:2px; }.node-c { bottom:18px; right:2px; }.visual-caption { top:-7px; left:0; }.signal-bar span:nth-of-type(3),.signal-bar i:nth-of-type(3) { display:none; }.content-section,.about-section { padding:90px 0; }.section-intro,.process-layout,.about-section,.contact-section { grid-template-columns:1fr; gap:30px; }.section-intro > p:last-child { margin-top:-10px; }.solution-grid { grid-template-columns:1fr; }.solution-card { min-height:270px; }.process-section { padding:90px 0; }.about-stamp { display:none; }.about-copy { margin-top:0; }.contact-section { margin-bottom:65px; }.contact-card { padding:45px 28px; }.contact-side { border-left:0; border-top:1px solid var(--line); padding:28px; }.site-footer { flex-wrap:wrap; gap:18px; }.site-footer > span:not(.brand) { width:100%; } }

@media (min-width:761px) and (max-width:980px) {
  .section-shell,.site-header { width:calc(100% - 56px); }
  .hero { gap:24px; }
  .hero h1 { font-size:clamp(2.8rem,7vw,4.5rem); }
  .solution-card { min-height:300px; padding:22px; }
}

@media (max-width:760px) {
  .signal-bar { font-size:10px; }
  .hero-services { margin-top:32px; }
  .hero-service-list { gap:7px; }
  .hero-service-list a { font-size:10px; padding:8px 10px; }
}

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