:root{
  --bg:#090e1d;--bg2:#0e1530;--surface:#121a35;--surface2:#182144;--text:#fff;--muted:#9fb0e6;--line:#2b3767;--violet:#7c5cff;--lime:#a8ff35;--orange:#ff7a59;--focus:#ffd84d;--radius:28px;--shadow:0 24px 80px rgba(0,0,0,.35);--ease:cubic-bezier(.2,.8,.2,1)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:#070b16;min-height:100%}body{margin:0;min-height:100%;font-family:Manrope,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;background:#070b16;color:var(--text);overflow-x:hidden;position:relative;isolation:isolate}body:before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(circle at 20% -10%,rgba(124,92,255,.35),transparent 35%),radial-gradient(circle at 90% 5%,rgba(168,255,53,.15),transparent 32%),linear-gradient(180deg,#080d1c 0%,#0b1020 42%,#070b16 100%);transform:translateZ(0);backface-visibility:hidden}main,.section,.trust-strip,.footer{position:relative;z-index:2}.noise{display:none!important}.cursor-glow{position:fixed;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.13),transparent 62%);pointer-events:none;transform:translate(-50%,-50%);z-index:1;transform:translate3d(-50%,-50%,0);backface-visibility:hidden}.container{width:min(1200px,calc(100% - 40px));margin:0 auto}.site-header{position:fixed;top:18px;left:50%;transform:translateX(-50%);width:min(1200px,calc(100% - 32px));height:72px;border:1px solid rgba(255,255,255,.1);background:rgba(9,14,29,.68);backdrop-filter:blur(22px);border-radius:999px;display:flex;align-items:center;justify-content:space-between;padding:0 12px 0 20px;z-index:100;box-shadow:0 16px 50px rgba(0,0,0,.25)}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-weight:800}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(135deg,var(--violet),#4bd8ff);box-shadow:0 12px 30px rgba(124,92,255,.35)}.nav{display:flex;gap:24px}.nav a,.header-cta{color:#dfe6ff;text-decoration:none;font-size:14px}.nav a{position:relative}.nav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .18s var(--ease)}.nav a:hover:after{transform:scaleX(1)}.header-cta{height:48px;display:flex;align-items:center;padding:0 18px;border-radius:999px;background:#fff;color:#0b1020;font-weight:700}.burger{display:none;background:none;border:0;width:44px;height:44px}.burger span{display:block;height:2px;background:#fff;margin:6px}.section{padding:120px 0}.hero{min-height:100vh;display:flex;align-items:center;position:relative;padding-top:150px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.eyebrow,.section-kicker{font-family:"JetBrains Mono",monospace;color:var(--lime);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgba(168,255,53,.25);border-radius:999px;background:rgba(168,255,53,.06)}.eyebrow span{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 18px var(--lime)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,6vw,82px);line-height:.94;letter-spacing:-.06em;margin:24px 0;background:linear-gradient(180deg,#fff,#b9c7ff);-webkit-background-clip:text;color:transparent}h2{font-size:clamp(32px,4vw,56px);line-height:1;letter-spacing:-.045em;margin:0 0 18px}.hero-lead,.section-heading p,.contact-copy p{color:#c5d0ff;font-size:18px;line-height:1.7;max-width:760px}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin:32px 0}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;border-radius:18px;padding:0 24px;text-decoration:none;font-weight:800;border:1px solid transparent;transition:transform .16s var(--ease),box-shadow .16s var(--ease),background .16s var(--ease)}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--violet);color:#fff;box-shadow:0 18px 50px rgba(124,92,255,.35)}.btn-secondary{background:var(--lime);color:#091020;width:100%;font-size:16px}.btn-ghost{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.04)}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}.hero-proof div{padding:18px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}.hero-proof strong{display:block;font-size:22px}.hero-proof span{display:block;color:var(--muted);font-size:13px;margin-top:5px}.hero-visual{position:relative;min-height:560px}.dashboard-card{background:linear-gradient(180deg,rgba(24,33,68,.92),rgba(12,18,39,.92));border:1px solid rgba(255,255,255,.12);border-radius:32px;box-shadow:var(--shadow);padding:24px;position:relative;overflow:hidden}.main-card{transform:rotate(-2deg);min-height:440px}.main-card:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle,rgba(124,92,255,.22),transparent 35%);transform:translateZ(0)}.card-topline,.metric-row,.chart-bars,.task-list{position:relative}.card-topline{display:flex;align-items:center;gap:8px;color:var(--muted);margin-bottom:28px}.dot{width:10px;height:10px;border-radius:50%}.green{background:var(--lime)}.yellow{background:var(--focus)}.red{background:var(--orange)}.mono{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--muted)}.metric-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.metric-row div{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);border-radius:22px;padding:18px}.metric-label{display:block;color:var(--muted);font-size:13px}.metric-row strong{font-size:34px}.chart-bars{height:150px;display:flex;align-items:end;gap:12px;margin:28px 0;padding:18px;border-radius:24px;background:rgba(0,0,0,.18)}.chart-bars i{flex:1;min-height:20px;border-radius:999px;background:linear-gradient(180deg,var(--lime),var(--violet));box-shadow:0 0 24px rgba(168,255,53,.18)}.task-list{display:grid;gap:10px}.task-list div{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;border-radius:16px;background:rgba(255,255,255,.055);color:#dfe6ff}.task-list span{width:8px;height:8px;border-radius:50%;background:var(--lime);margin-right:8px}.task-list b{font-family:"JetBrains Mono",monospace;color:var(--lime);font-size:11px}.floating-card{position:absolute;border:1px solid rgba(255,255,255,.12);background:rgba(18,26,53,.78);backdrop-filter:blur(14px);border-radius:22px;padding:18px;box-shadow:0 20px 60px rgba(0,0,0,.28)}.card-ai{right:-20px;top:70px;width:210px}.card-ai strong{display:block;margin-top:8px}.card-stack{left:-28px;bottom:36px;display:flex;gap:8px;flex-wrap:wrap;width:260px}.card-stack span,.tags span{font-size:12px;color:#eaf0ff;background:rgba(124,92,255,.18);border:1px solid rgba(124,92,255,.3);padding:8px 10px;border-radius:999px}.hero-bg-orb{position:absolute;border-radius:50%;filter:blur(24px);opacity:.65;transform:translateZ(0)}.orb-1{width:340px;height:340px;background:rgba(124,92,255,.35);right:10%;top:22%}.orb-2{width:220px;height:220px;background:rgba(168,255,53,.12);left:8%;bottom:12%}.trust-strip{padding:22px 0}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.trust-grid span{text-align:center;color:#c7d2ff;padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);font-size:14px}.section-heading{margin-bottom:46px}.horizontal{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:end}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card,.team-card,.step,.faq-list details{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:28px;padding:26px;transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease)}.service-card:hover,.team-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.07);border-color:rgba(168,255,53,.25)}.service-card.featured{background:linear-gradient(180deg,rgba(124,92,255,.22),rgba(255,255,255,.05));border-color:rgba(124,92,255,.35)}.icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:rgba(168,255,53,.12);color:var(--lime);font-family:"JetBrains Mono",monospace;margin-bottom:24px}.service-card h3,.case-card h3,.team-card h3,.step h3{font-size:23px;letter-spacing:-.03em}.service-card p,.case-card p,.team-card p,.step p,.faq-list p{color:#b9c7ff;line-height:1.6}.service-card a{color:var(--lime);text-decoration:none;font-weight:700}.dark-panel{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(124,92,255,.05));border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.case-card{overflow:hidden;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:32px}.case-screen{height:230px;background:radial-gradient(circle at 30% 30%,rgba(168,255,53,.3),transparent 32%),linear-gradient(135deg,#162050,#0b1020);position:relative}.case-screen:after{content:"";position:absolute;inset:30px;border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.16)}.screen-tg{background:radial-gradient(circle at 70% 25%,rgba(75,216,255,.3),transparent 32%),linear-gradient(135deg,#122249,#0b1020)}.screen-ai{background:radial-gradient(circle at 40% 30%,rgba(255,122,89,.28),transparent 34%),linear-gradient(135deg,#271735,#0b1020)}.case-content{padding:24px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.sticky-heading{position:sticky;top:130px;align-self:start}.steps{display:grid;gap:16px}.step{display:grid;grid-template-columns:80px 1fr;gap:8px 22px}.step span{grid-row:1/3;color:var(--lime);font-family:"JetBrains Mono",monospace;font-size:26px}.team-section{background:radial-gradient(circle at 50% 0%,rgba(124,92,255,.16),transparent 35%)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.avatar{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),#4bd8ff);font-weight:900;margin-bottom:22px}.team-card span{display:block;color:var(--lime);font-size:13px;margin-top:18px}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.faq-list{display:grid;gap:12px}.faq-list summary{cursor:pointer;font-weight:800;font-size:18px}.contact-card{display:grid;grid-template-columns:1fr .8fr;gap:48px;padding:52px;border-radius:40px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(135deg,rgba(124,92,255,.2),rgba(255,255,255,.045));box-shadow:var(--shadow)}.contact-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px}.contact-links a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.14);padding:14px 16px;border-radius:14px}.lead-form{display:grid;gap:14px}.lead-form label{display:grid;gap:8px;color:#dfe6ff;font-weight:700}.lead-form input,.lead-form textarea{width:100%;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:15px 16px;background:rgba(0,0,0,.2);color:#fff;font:inherit;outline:none}.lead-form textarea{min-height:120px;resize:vertical}.lead-form input:focus,.lead-form textarea:focus{border-color:var(--focus);box-shadow:0 0 0 3px rgba(255,216,77,.12)}.form-note{font-size:13px;color:var(--muted);line-height:1.5}.footer{padding:42px 0;border-top:1px solid rgba(255,255,255,.08);color:var(--muted)}.footer-grid{display:flex;justify-content:space-between;gap:20px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.reveal.is-visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.nav,.header-cta{display:none}.burger{display:block}.site-header.is-open{height:auto;border-radius:28px;align-items:flex-start;padding:20px}.site-header.is-open .nav{display:grid;position:absolute;left:20px;right:20px;top:72px;padding:20px;border-radius:24px;background:#111936;border:1px solid rgba(255,255,255,.1)}.hero-grid,.horizontal,.process-grid,.faq-grid,.contact-card{grid-template-columns:1fr}.hero-visual{min-height:480px}.services-grid,.case-grid,.team-grid{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:1fr 1fr}.sticky-heading{position:static}.footer-grid{display:grid}.cursor-glow{display:none}}@media(max-width:640px){.container{width:min(100% - 32px,1200px)}.section{padding:80px 0}.hero{padding-top:125px}.services-grid,.case-grid,.team-grid,.hero-proof{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.main-card{transform:none}.floating-card{position:relative;left:auto;right:auto;top:auto;bottom:auto;margin-top:14px;width:100%}.hero-visual{min-height:auto}.step{grid-template-columns:1fr}.step span{grid-row:auto}.contact-card{padding:28px;border-radius:28px}h1{font-size:44px}.site-header{top:10px}}
@media(prefers-reduced-motion:reduce){*{animation:none;transition-duration:1ms;scroll-behavior:auto}}


/* Anti-flicker fixes for local file preview / browser GPU repaint */
html,body{background-color:#070b16;}
.dashboard-card,.floating-card,.service-card,.case-card,.team-card,.step,.faq-list details,.contact-card{backface-visibility:hidden;transform:translateZ(0);} .site-header{backface-visibility:hidden;transform:translate3d(-50%,0,0);}
@media(max-width:980px){.noise{display:none}.cursor-glow{display:none}}

/* Swift-inspired flow blocks: smooth transitions, ticker, stronger bottom contacts */
.scroll-progress{position:fixed;left:0;top:0;height:3px;width:0%;z-index:1000;background:linear-gradient(90deg,var(--lime),var(--violet),#4bd8ff);box-shadow:0 0 18px rgba(168,255,53,.45);transform:translateZ(0)}
.marquee-section{overflow:hidden;padding:18px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.marquee-track{display:flex;align-items:center;gap:20px;width:max-content;animation:marquee 28s linear infinite;will-change:transform;color:#f4f7ff;font-weight:900;text-transform:uppercase;letter-spacing:-.04em;font-size:clamp(28px,5vw,74px);line-height:1;white-space:nowrap}
.marquee-track i{width:12px;height:12px;border-radius:999px;background:var(--lime);box-shadow:0 0 26px rgba(168,255,53,.55);display:block;flex:0 0 12px}
@keyframes marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.problem-section{position:relative;background:linear-gradient(180deg,rgba(124,92,255,.04),rgba(255,255,255,.02))}
.problem-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 0%,rgba(168,255,53,.09),transparent 30%),radial-gradient(circle at 90% 20%,rgba(124,92,255,.14),transparent 30%);pointer-events:none}
.problem-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;align-items:start}
.problem-cards{display:grid;gap:18px}
.problem-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:34px;padding:34px;box-shadow:0 24px 70px rgba(0,0,0,.18);position:relative;overflow:hidden;min-height:230px}
.problem-card:after{content:"";position:absolute;right:-50px;bottom:-50px;width:160px;height:160px;border-radius:50%;background:rgba(255,122,89,.16);filter:blur(4px)}
.problem-card.solution{background:linear-gradient(135deg,rgba(168,255,53,.11),rgba(124,92,255,.12));border-color:rgba(168,255,53,.26);transform:translateX(26px)}
.problem-card.solution:after{background:rgba(168,255,53,.18)}
.problem-card span,.model-card b{font-family:"JetBrains Mono",monospace;color:var(--lime);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.problem-card h3{font-size:clamp(24px,2.6vw,38px);letter-spacing:-.055em;line-height:1.05;margin:14px 0 14px;max-width:720px}
.problem-card p{color:#b9c7ff;line-height:1.65;max-width:620px}
.models-section{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(124,92,255,.06));border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.models-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.model-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:34px;padding:30px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .22s var(--ease),border-color .22s var(--ease),background .22s var(--ease)}
.model-card:hover{transform:translateY(-7px);border-color:rgba(168,255,53,.24);background:rgba(255,255,255,.07)}
.model-card.active{background:linear-gradient(160deg,rgba(124,92,255,.24),rgba(168,255,53,.075));border-color:rgba(124,92,255,.38)}
.model-number{font-family:"JetBrains Mono",monospace;color:rgba(255,255,255,.34);font-size:58px;font-weight:900;letter-spacing:-.08em;line-height:.9}
.model-card h3{font-size:28px;letter-spacing:-.04em;margin:24px 0 12px}.model-card p{color:#b9c7ff;line-height:1.6;margin-bottom:auto}.final-cta-section{padding-top:100px;padding-bottom:28px}.final-cta{border:1px solid rgba(255,255,255,.12);border-radius:44px;padding:54px;background:radial-gradient(circle at 20% 0%,rgba(168,255,53,.16),transparent 32%),linear-gradient(135deg,rgba(124,92,255,.22),rgba(255,255,255,.045));box-shadow:var(--shadow);position:relative;overflow:hidden}.final-cta:after{content:"</>";position:absolute;right:42px;bottom:-18px;font-family:"JetBrains Mono",monospace;font-size:150px;color:rgba(255,255,255,.045);font-weight:900}.final-cta h2{max-width:850px}.final-cta p{max-width:680px;color:#c7d2ff;line-height:1.65}.contact-methods{display:grid;grid-template-columns:1fr;gap:12px;margin-top:26px}.contact-methods a{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.15);padding:16px 18px;border-radius:18px;display:grid;gap:4px;transition:transform .2s var(--ease),border-color .2s var(--ease)}.contact-methods a:hover{transform:translateX(6px);border-color:rgba(168,255,53,.3)}.contact-methods span{font-size:12px;text-transform:uppercase;color:var(--muted);font-family:"JetBrains Mono",monospace}.contact-methods strong{font-size:17px}.mega-footer{padding:0;border-top:0;background:linear-gradient(180deg,rgba(7,11,22,0),rgba(3,6,14,.9));color:#fff}.footer-top{display:grid;grid-template-columns:.85fr 1.15fr;gap:56px;padding:56px 0 34px;border-top:1px solid rgba(255,255,255,.1)}.footer-brand p{max-width:420px;color:#aab8e8;line-height:1.7;margin-top:18px}.footer-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.footer-columns h4{font-size:14px;text-transform:uppercase;letter-spacing:.08em;color:var(--lime);margin-bottom:16px}.footer-columns a{display:block;color:#dfe6ff;text-decoration:none;margin:12px 0;transition:color .2s var(--ease),transform .2s var(--ease)}.footer-columns a:hover{color:#fff;transform:translateX(4px)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:22px 0 34px;border-top:1px solid rgba(255,255,255,.08);color:#8594c9;font-size:14px}.section{scroll-margin-top:110px}
@media(max-width:980px){.problem-grid,.footer-top{grid-template-columns:1fr}.problem-card.solution{transform:none}.models-grid{grid-template-columns:1fr}.footer-columns{grid-template-columns:1fr 1fr}.final-cta{padding:38px}.final-cta:after{font-size:92px;right:20px}.contact-methods{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.marquee-track{animation-duration:22s}.problem-card{padding:24px;border-radius:26px}.footer-columns,.contact-methods{grid-template-columns:1fr}.footer-bottom{display:grid}.final-cta{padding:28px;border-radius:30px}.final-cta:after{display:none}.models-grid{gap:14px}.model-card{min-height:auto;border-radius:26px}.model-number{font-size:44px}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}


/* CLEAN FINAL: SVG logo, no background, no broken image */


.footer-logo {
  width: 235px;
  max-width: 100%;
}

.brand-mark,


/* Reveal animation — defined below in motion pass */

/* Project card buttons */
.cases-head-copy {
  display: grid;
  gap: 16px;
  max-width: 560px;
  justify-items: start;
}

.case-more {
  margin-top: 18px;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
  transition: transform .2s var(--ease), border-color .2s var(--ease), background .2s var(--ease);
}

.case-more:hover {
  transform: translateY(-2px);
  border-color: rgba(168,255,53,.35);
  background: rgba(255,255,255,.08);
}

/* Lightweight CSS previews instead of heavy images */
.css-case-screen {
  min-height: 250px;
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 18% 18%, rgba(168,255,53,.13), transparent 33%),
    radial-gradient(circle at 88% 20%, rgba(124,92,255,.18), transparent 35%),
    linear-gradient(145deg, #111936, #070b16);
}

.css-case-screen::before {
  content: "";
  position: absolute;
  inset: 22px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
}

.fake-sidebar {
  position: absolute;
  z-index: 2;
  left: 38px;
  top: 42px;
  bottom: 42px;
  width: 46px;
  border-radius: 16px;
  background: rgba(255,255,255,.06);
}

.fake-ui {
  position: absolute;
  z-index: 2;
  left: 104px;
  right: 38px;
  top: 42px;
  bottom: 42px;
}

.fake-row {
  height: 18px;
  border-radius: 999px;
  background: rgba(255,255,255,.13);
  margin-bottom: 16px;
}

.fake-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.fake-stats i {
  height: 50px;
  border-radius: 14px;
  background: rgba(255,255,255,.075);
  border: 1px solid rgba(255,255,255,.08);
}

.fake-chart {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 82px;
  display: flex;
  align-items: end;
  gap: 12px;
  padding: 16px;
  border-radius: 18px;
  background: rgba(255,255,255,.045);
}

.fake-chart span {
  flex: 1;
  border-radius: 999px 999px 8px 8px;
  background: linear-gradient(180deg, #a8ff35, #7c5cff);
  animation: liveBars 2.6s ease-in-out infinite;
}
.fake-chart span:nth-child(1){height:42%;animation-delay:-.2s}
.fake-chart span:nth-child(2){height:72%;animation-delay:-.4s}
.fake-chart span:nth-child(3){height:54%;animation-delay:-.6s}
.fake-chart span:nth-child(4){height:86%;animation-delay:-.8s}
.fake-chart span:nth-child(5){height:65%;animation-delay:-1s}

@keyframes liveBars { 0%,100%{transform:scaleY(.8);opacity:.82} 50%{transform:scaleY(1);opacity:1} }

.mini-preview {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 22px;
}
.phone-main,
.phone-small {
  position: relative;
  z-index: 2;
  width: 155px;
  min-height: 210px;
  border-radius: 28px;
  padding: 18px;
  background: #0a1020;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 20px 60px rgba(0,0,0,.3);
}
.phone-small {
  width: 120px;
  min-height: 170px;
  transform: translateY(22px);
  opacity: .88;
}
.phone-main b,
.phone-small b {
  color: #fff;
  display: block;
  margin-bottom: 14px;
}
.phone-main i,
.phone-small i {
  display: block;
  height: 20px;
  margin: 10px 0;
  border-radius: 10px;
  background: rgba(255,255,255,.09);
}
.phone-main span {
  display: block;
  margin-top: 16px;
  padding: 12px;
  border-radius: 14px;
  background: #a8ff35;
  color: #06101c;
  font-weight: 900;
  text-align: center;
}

.ai-preview {
  display: grid;
  place-items: center;
  gap: 12px;
  padding: 34px;
}
.chat-card {
  position: relative;
  z-index: 2;
  width: min(82%, 440px);
  padding: 14px 16px;
  border-radius: 16px;
  color: #fff;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.06);
  animation: chatFloat 3s ease-in-out infinite;
}
.chat-card.bot { background: linear-gradient(135deg, rgba(39,217,255,.18), rgba(124,92,255,.32)); }
.chat-card.route { background: rgba(168,255,53,.10); }
@keyframes chatFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-4px)} }

/* Modal projects */
body.modal-open { overflow: hidden; }

.projects-modal {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: grid;
  place-items: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .28s var(--ease), visibility .28s var(--ease);
}

.projects-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.projects-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(4,8,18,.78);
  backdrop-filter: blur(14px);
}

.projects-dialog {
  position: relative;
  width: min(1160px, 100%);
  max-height: min(86vh, 920px);
  overflow: auto;
  border-radius: 32px;
  border: 1px solid rgba(255,255,255,.11);
  background: linear-gradient(180deg, rgba(14,20,40,.985), rgba(8,12,22,.985));
  box-shadow: 0 40px 120px rgba(0,0,0,.45);
  padding: 30px;
  transform: translateY(28px) scale(.97);
  transition: transform .42s cubic-bezier(.22,1,.36,1), opacity .32s var(--ease);
}

.projects-modal.is-open .projects-dialog {
  transform: translateY(0) scale(1);
}

.projects-close {
  position: absolute;
  right: 18px;
  top: 18px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.05);
  color: #fff;
  font-size: 28px;
  cursor: pointer;
}

.projects-head {
  max-width: 760px;
  padding-right: 60px;
  margin-bottom: 24px;
}
.projects-head p:last-child {
  color: #c7d2ff;
  line-height: 1.65;
}

.project-browser-layout {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 24px;
}

.project-tabs {
  display: grid;
  gap: 12px;
  align-content: start;
}

.project-tab {
  display: grid;
  grid-template-columns: 52px 1fr;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.035);
  color: #fff;
  text-align: left;
  cursor: pointer;
  transition: transform .22s var(--ease), background .22s var(--ease), border-color .22s var(--ease);
}

.project-tab:hover {
  transform: translateX(4px);
  background: rgba(255,255,255,.06);
}
.project-tab.is-active {
  border-color: rgba(168,255,53,.42);
  background: linear-gradient(135deg, rgba(168,255,53,.12), rgba(124,92,255,.12));
}

.project-tab b { display:block; font-size:14px; margin-bottom:4px; }
.project-tab small { color:#aab8e8; font-size:12px; }

.tab-icon {
  width: 52px;
  height: 42px;
  border-radius: 14px;
  background:
    radial-gradient(circle at 32% 32%, rgba(168,255,53,.65), transparent 23%),
    linear-gradient(135deg, rgba(39,217,255,.35), rgba(124,92,255,.45));
  border: 1px solid rgba(255,255,255,.10);
}

.project-stage {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 24px;
  min-height: 500px;
}

.project-mockup-frame {
  position: relative;
  min-height: 500px;
  border-radius: 26px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.10);
  background:
    radial-gradient(circle at 16% 12%, rgba(168,255,53,.14), transparent 32%),
    radial-gradient(circle at 84% 18%, rgba(124,92,255,.22), transparent 34%),
    linear-gradient(145deg, #111936, #070b16);
  box-shadow: 0 28px 90px rgba(0,0,0,.28);
  transition: transform .28s var(--ease), opacity .24s var(--ease), filter .24s var(--ease);
}

.project-mockup-frame.is-changing {
  opacity: .35;
  transform: scale(.985) translateY(8px);
  filter: blur(5px);
}

.project-mockup {
  position: absolute;
  inset: 26px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.04);
  overflow: hidden;
}

.mock-left {
  position: absolute;
  left: 22px;
  top: 22px;
  bottom: 22px;
  width: 70px;
  border-radius: 18px;
  background: rgba(255,255,255,.06);
}
.mock-top {
  position: absolute;
  left: 112px;
  right: 22px;
  top: 22px;
  height: 42px;
  border-radius: 16px;
  background: rgba(255,255,255,.07);
}
.mock-cards {
  position: absolute;
  left: 112px;
  right: 22px;
  top: 84px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.mock-cards i {
  height: 76px;
  border-radius: 18px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.08);
}
.mock-bars {
  position: absolute;
  left: 112px;
  right: 22px;
  bottom: 24px;
  height: 210px;
  display: flex;
  align-items: end;
  gap: 14px;
  padding: 20px;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
}
.mock-bars span {
  flex: 1;
  border-radius: 999px 999px 8px 8px;
  background: linear-gradient(180deg, #a8ff35, #7c5cff);
  animation: liveBars 2.6s ease-in-out infinite;
}
.mock-bars span:nth-child(1){height:42%}
.mock-bars span:nth-child(2){height:72%}
.mock-bars span:nth-child(3){height:54%}
.mock-bars span:nth-child(4){height:86%}
.mock-bars span:nth-child(5){height:65%}

.project-detail {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 26px;
  padding: 28px;
  border: 1px solid rgba(255,255,255,.10);
  background: radial-gradient(circle at 0 0, rgba(124,92,255,.18), transparent 32%), rgba(255,255,255,.045);
}
.project-type {
  font-family: "JetBrains Mono", monospace;
  color: var(--lime);
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 12px;
  margin-bottom: 14px;
}
.project-detail h3 {
  font-size: clamp(30px, 4vw, 52px);
  line-height: .98;
  letter-spacing: -.065em;
  margin-bottom: 18px;
}
.project-detail p { color:#c4cff7; line-height:1.65; }

.project-benefits {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 24px 0;
}
.project-benefits span,
.project-tags span {
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  color: #edf2ff;
}
.project-tags,
.project-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.project-controls {
  justify-content: space-between;
  border-top: 1px solid rgba(255,255,255,.08);
  padding-top: 20px;
  margin-top: 22px;
}
.project-arrow {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.06);
  color: #fff;
  cursor: pointer;
  font-size: 20px;
}
#projectCounter { color:#aab8e8; font-family:"JetBrains Mono",monospace; }

@media(max-width:980px) {
  
  .project-browser-layout,
  .project-stage { grid-template-columns: 1fr; }
  .project-tabs { grid-template-columns: 1fr 1fr; }
  .project-mockup-frame { min-height: 360px; }
}
@media(max-width:640px) {
  
  .project-tabs { grid-template-columns: 1fr; }
  .projects-dialog { padding: 20px; border-radius: 24px; }
  .project-detail { padding: 22px; }
  .project-benefits { grid-template-columns: 1fr; }
  .project-mockup-frame { min-height: 280px; }
}


/* CRITICAL FIX: inline logo, no external image, no broken icon, no black background */
.brand-logo,
.footer-logo,
.brand-mark,




.brand-logo-inline svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

/* Footer logo a bit bigger */
.footer-brand-link 

/* CRITICAL FIX: hero cards do not overlap */
.hero-visual {
  display: grid;
  gap: 14px;
  align-content: center;
  min-height: auto;
}

.main-card {
  transform: none;
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
}

.floating-card,
.card-ai,
.card-stack {
  position: static;
  inset: auto;
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
  transform: none;
  box-sizing: border-box;
}

.card-ai {
  display: grid;
  gap: 6px;
}

.card-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-start;
}

.card-stack span {
  white-space: nowrap;
}


/* fix header logo sizing on mobile */
@media(max-width: 980px) {
  
}
@media(max-width: 640px) {
  
  .footer-brand-link 
}

.product-map{padding:28px;border-radius:34px;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 18% 10%,rgba(168,255,53,.13),transparent 30%),radial-gradient(circle at 90% 0%,rgba(124,92,255,.18),transparent 32%),rgba(255,255,255,.045);box-shadow:0 28px 90px rgba(0,0,0,.28)}
.product-map-head h3{font-size:clamp(28px,3vw,44px);line-height:1;letter-spacing:-.055em;margin:22px 0 12px}
.product-map-head p{color:#c7d2ff;line-height:1.65;max-width:620px}
.product-flow{display:grid;gap:12px;margin:24px 0}
.product-flow div{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:14px;padding:14px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}
.product-flow b{color:var(--lime);font-family:"JetBrains Mono",monospace}
.product-flow span{color:#f4f7ff;font-weight:700}
.team-strip{display:flex;flex-wrap:wrap;gap:8px}
.team-strip span{padding:9px 11px;border-radius:999px;color:#06101c;background:linear-gradient(135deg,#a8ff35,#4bd8ff);font-size:12px;font-weight:900}
.expanded-services{grid-template-columns:repeat(4,1fr)}
.expanded-team{grid-template-columns:repeat(4,1fr)}
.tab-icon.api{background:radial-gradient(circle at 32% 32%,rgba(39,217,255,.65),transparent 23%),linear-gradient(135deg,rgba(168,255,53,.28),rgba(124,92,255,.45))}
@media(max-width:1180px){.expanded-services,.expanded-team{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.expanded-services,.expanded-team{grid-template-columns:1fr}.product-map{padding:22px}}


/* Global spacing normalization */
.section {
  padding: 92px 0;
}

.hero.section {
  padding-top: 132px;
  padding-bottom: 78px;
}

.final-cta-section {
  padding-top: 78px;
  padding-bottom: 24px;
}

.section-heading {
  margin-bottom: 34px;
}

.services-grid,
.case-grid,
.team-grid,
.models-grid {
  gap: 16px;
}

.problem-section,
.models-section {
  margin: 0;
}

@media(max-width: 640px) {
  .section {
    padding: 68px 0;
  }
  .hero.section {
    padding-top: 116px;
    padding-bottom: 62px;
  }
  .section-heading {
    margin-bottom: 24px;
  }
}

/* Better project card grid */
.case-grid-wide {
  grid-template-columns: repeat(3, 1fr);
}

@media(max-width: 980px) {
  .case-grid-wide {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 640px) {
  .case-grid-wide {
    grid-template-columns: 1fr;
  }
}

/* Extra lightweight previews */
.shop-preview,
.mobile-preview,
.vpn-preview {
  min-height: 250px;
}

.shop-cards {
  position: absolute;
  z-index: 2;
  left: 34px;
  right: 34px;
  top: 36px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}

.shop-cards i {
  height: 70px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255,255,255,.12), rgba(255,255,255,.04));
  border: 1px solid rgba(255,255,255,.09);
}

.cart-mini {
  position: absolute;
  z-index: 2;
  right: 34px;
  bottom: 34px;
  padding: 14px 16px;
  border-radius: 16px;
  color: #06101c;
  background: #a8ff35;
  font-weight: 900;
}

.vpn-node {
  position: absolute;
  z-index: 2;
  border-radius: 50%;
  background: radial-gradient(circle, #a8ff35, #27d9ff 55%, #7c5cff);
  box-shadow: 0 0 28px rgba(168,255,53,.28);
}

.vpn-node.big {
  width: 86px;
  height: 86px;
  left: calc(50% - 43px);
  top: calc(50% - 43px);
}

.vpn-node.n1 {
  width: 42px;
  height: 42px;
  left: 42px;
  top: 54px;
}

.vpn-node.n2 {
  width: 42px;
  height: 42px;
  right: 42px;
  bottom: 54px;
}

.vpn-line {
  position: absolute;
  z-index: 1;
  height: 2px;
  background: linear-gradient(90deg, #27d9ff, #a8ff35, #7c5cff);
  box-shadow: 0 0 14px rgba(39,217,255,.35);
  transform-origin: left center;
}

.vpn-line.l1 {
  width: 180px;
  left: 76px;
  top: 86px;
  transform: rotate(18deg);
}

.vpn-line.l2 {
  width: 190px;
  left: 50%;
  top: 54%;
  transform: rotate(22deg);
}

.vpn-label {
  position: absolute;
  left: 28px;
  right: 28px;
  bottom: 24px;
  z-index: 2;
  padding: 12px 14px;
  border-radius: 16px;
  color: #fff;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.1);
  text-align: center;
}

.expanded-services {
  grid-template-columns: repeat(5, 1fr);
}

.expanded-team {
  grid-template-columns: repeat(4, 1fr);
}

@media(max-width: 1280px) {
  .expanded-services {
    grid-template-columns: repeat(3, 1fr);
  }
  .expanded-team {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 860px) {
  .expanded-services,
  .expanded-team {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 640px) {
  .expanded-services,
  .expanded-team {
    grid-template-columns: 1fr;
  }
}


/* Visual/text fix for "Why us" */
.problem-section{overflow:hidden}
.problem-grid{align-items:center}
.problem-section .section-heading p:not(.section-kicker){color:#b9c7ff;line-height:1.65;max-width:680px}
.problem-cards{position:relative}
.problem-card{isolation:isolate;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease)}
.problem-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 34px 100px rgba(0,0,0,.32)}
.problem-card::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.95;pointer-events:none;border-radius:inherit}
.problem-card.risk-card{border-color:rgba(255,98,98,.28);background:radial-gradient(circle at 92% 12%,rgba(255,98,98,.22),transparent 30%),linear-gradient(135deg,rgba(255,98,98,.105),rgba(255,255,255,.04))}
.problem-card.risk-card::before{background:linear-gradient(90deg,rgba(255,98,98,.85),rgba(255,98,98,0)) left top/56% 1px no-repeat,linear-gradient(180deg,rgba(255,98,98,.75),rgba(255,98,98,0)) left top/1px 70% no-repeat}
.problem-card.risk-card:after{background:rgba(255,98,98,.22)}
.problem-card.solution{border-color:rgba(168,255,53,.30);background:radial-gradient(circle at 92% 18%,rgba(168,255,53,.22),transparent 30%),linear-gradient(135deg,rgba(168,255,53,.12),rgba(124,92,255,.12))}
.problem-card.solution::before{background:linear-gradient(90deg,rgba(168,255,53,.85),rgba(168,255,53,0)) left top/56% 1px no-repeat,linear-gradient(180deg,rgba(168,255,53,.75),rgba(168,255,53,0)) left top/1px 70% no-repeat}
.problem-card.value-card{border-color:rgba(75,216,255,.26);background:radial-gradient(circle at 92% 18%,rgba(75,216,255,.18),transparent 30%),linear-gradient(135deg,rgba(75,216,255,.08),rgba(124,92,255,.10))}
.problem-card.value-card::before{background:linear-gradient(90deg,rgba(75,216,255,.72),rgba(75,216,255,0)) left top/52% 1px no-repeat,linear-gradient(180deg,rgba(75,216,255,.65),rgba(75,216,255,0)) left top/1px 68% no-repeat}
.problem-card.value-card:after{background:rgba(75,216,255,.18)}
.problem-card span{display:inline-flex;align-items:center;gap:8px}
.problem-card span::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 16px currentColor}

/* Reusable approach strip */
.approach-strip-section{padding-top:18px;padding-bottom:76px}
.approach-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.approach-strip div{position:relative;overflow:hidden;border-radius:28px;padding:28px;border:1px solid rgba(255,255,255,.10);background:radial-gradient(circle at 90% 0%,rgba(124,92,255,.16),transparent 32%),rgba(255,255,255,.045);transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .35s var(--ease),background .35s var(--ease)}
.approach-strip div:hover{transform:translateY(-7px);border-color:rgba(168,255,53,.25);background:radial-gradient(circle at 90% 0%,rgba(168,255,53,.14),transparent 32%),rgba(255,255,255,.06)}
.approach-strip div::after{content:"";position:absolute;right:-28px;bottom:-28px;width:110px;height:110px;border-radius:50%;background:rgba(168,255,53,.10);filter:blur(4px)}
.approach-strip span{font-family:"JetBrains Mono",monospace;color:var(--lime);font-weight:900}
.approach-strip h3{font-size:25px;letter-spacing:-.04em;margin:14px 0 8px}
.approach-strip p{color:#b9c7ff;line-height:1.6}

/* Mini approach in projects heading */
.mini-approach{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}
.mini-approach span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#f4f7ff;font-size:13px;font-weight:800}
.mini-approach i{width:28px;height:2px;background:linear-gradient(90deg,#4bd8ff,#a8ff35);box-shadow:0 0 12px rgba(168,255,53,.35)}

/* Smoother interactions */
.service-card,.case-card,.team-card,.model-card,.step,.contact-methods a{transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .3s var(--ease),background .3s var(--ease),box-shadow .3s var(--ease)}
.service-card:hover,.case-card:hover,.team-card:hover,.model-card:hover,.step:hover{transform:translateY(-7px);box-shadow:0 24px 80px rgba(0,0,0,.22)}
.reveal{opacity:0;transform:translate3d(0,18px,0);transition:opacity .4s cubic-bezier(.22,1,.36,1),transform .4s cubic-bezier(.22,1,.36,1)}
.reveal.is-visible{opacity:1;transform:none}
@media(max-width:980px){.reveal{transition:opacity .35s ease,transform .35s ease}}


@media(max-width:980px){.approach-strip{grid-template-columns:1fr}.approach-strip-section{padding-bottom:52px}}
@media(max-width:640px){.problem-card:hover,.service-card:hover,.case-card:hover,.team-card:hover,.model-card:hover,.step:hover,.approach-strip div:hover{transform:none}}


/* === Final polish: clean logo without dark artifacts === */
.brand-logo-inline, .brand-logo, .footer-logo, .brand-mark, 
.brand-logo-clean{display:inline-flex;align-items:center;gap:10px;line-height:1;white-space:nowrap}

.brand-icon-clean svg{display:block;width:100%;height:100%;overflow:visible}
.brand-word{font-weight:800;font-size:28px;letter-spacing:-.045em;color:#fff}
.brand-pulse-clean{display:inline-flex;align-items:center;width:56px;height:20px;filter:drop-shadow(0 0 10px rgba(124,92,255,.22))}
.brand-pulse-clean svg{display:block;width:100%;height:100%;overflow:visible}
.brand-pulse-clean path{stroke-dasharray:92;stroke-dashoffset:92;animation:brandPulseMoveDisabled 3.6s ease-in-out infinite}

.footer-brand-link .brand-word{font-size:30px}
.footer-brand-link 

/* === Typography cleanup for easier reading === */
body{font-size:16px;line-height:1.55}
.site-header{height:78px}
.nav a,.header-cta{font-size:15px}
.eyebrow,.section-kicker{font-size:12px;letter-spacing:.11em}
h1{font-size:clamp(38px,5.2vw,68px);line-height:.98;letter-spacing:-.05em;margin:18px 0 18px;max-width:11ch}
h2{font-size:clamp(28px,3.6vw,46px);line-height:1.04;letter-spacing:-.04em;margin:0 0 14px;max-width:13ch}
.hero-lead,.section-heading p,.contact-copy p{font-size:17px;line-height:1.6;max-width:680px}
.service-card h3,.case-card h3,.team-card h3,.step h3{font-size:21px;line-height:1.14}
.problem-card h3{font-size:clamp(21px,2.2vw,31px);line-height:1.1;max-width:18ch}
.problem-card p,.service-card p,.case-card p,.team-card p,.step p,.faq-list p{font-size:15.5px;line-height:1.58}
.hero-proof div span{font-size:14px;line-height:1.45}
.hero-proof div strong{font-size:24px}
.product-map-head h3{font-size:clamp(26px,2.8vw,38px)}
.product-map-head p{font-size:15.5px;max-width:560px}
.product-flow span{font-size:15px}
.approach-strip h3{font-size:22px}
.approach-strip p{font-size:15px}
.section-heading{margin-bottom:30px}
.problem-card{padding:28px;min-height:200px}
.service-card,.team-card,.step,.faq-list details{padding:22px}
.case-content{padding:20px}
.case-more{margin-top:14px}
.hero-grid{gap:52px}
.problem-grid{gap:26px}
.problem-cards{gap:14px}
.horizontal{gap:36px}
.team-grid,.services-grid,.case-grid,.models-grid{gap:16px}

/* Better alignment in header/footer */
.brand{gap:0}
@media(max-width:980px){
  .brand-word{font-size:24px}
  
  .brand-pulse-clean{width:48px}
  h1{font-size:clamp(34px,8vw,56px);max-width:12ch}
  h2{font-size:clamp(26px,5.2vw,38px);max-width:100%}
  .hero-grid{gap:34px}
}
@media(max-width:640px){
  .site-header{height:70px;padding:0 10px 0 14px}
  .brand-word{font-size:20px}
  
  .brand-pulse-clean{width:40px;height:16px}
  .footer-brand-link .brand-word{font-size:22px}
  .footer-brand-link 
  .hero-lead,.section-heading p,.contact-copy p{font-size:15.5px}
  .problem-card,.service-card,.team-card,.step,.faq-list details{padding:20px}
}


/* FINAL ANIMATED LOGO FIX: full pulse line + moving light, no broken dash */
.brand-logo-clean,
.brand-logo-inline,
.brand-logo,
.footer-logo,
.brand-icon-clean,
.brand-word,
.brand-pulse-clean,
.brand-mark,


.ld-logo-animated {
  display: inline-flex;
  align-items: center;
  width: 220px;
  max-width: 42vw;
  height: auto;
  line-height: 0;
}

.ld-logo-animated svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.ld-pulse-base {
  opacity: .98;
}

.ld-pulse-runner {
  stroke-dasharray: 18 140;
  stroke-dashoffset: 0;
  opacity: .95;
  filter: drop-shadow(0 0 8px rgba(168,255,53,.65));
  animation: ldPulseRunner 2.4s cubic-bezier(.22,.8,.22,1) infinite;
}

@keyframes ldPulseRunner {
  from { stroke-dashoffset: 156; opacity: .15; }
  12% { opacity: 1; }
  88% { opacity: 1; }
  to { stroke-dashoffset: 0; opacity: .15; }
}

.ld-pulse-spark {
  opacity: .95;
}

.footer-brand-link .ld-logo-animated {
  width: 245px;
  max-width: 100%;
}

.site-header {
  height: 74px;
}

@media(max-width: 980px) {
  .ld-logo-animated { width: 185px; }
}

@media(max-width: 640px) {
  .ld-logo-animated { width: 150px; max-width: 54vw; }
  .footer-brand-link .ld-logo-animated { width: 180px; }
}


/* === Final layout compact pass === */

/* 1) Why us: compact, less empty space */
.problem-section {
  padding-top: 70px;
  padding-bottom: 70px;
}

.problem-grid {
  grid-template-columns: .82fr 1.18fr;
  gap: 28px;
  align-items: center;
}

.problem-section .section-heading {
  margin-bottom: 0;
}

.problem-section .section-heading h2 {
  font-size: clamp(32px, 3.7vw, 50px);
  max-width: 12.5ch;
  line-height: 1.02;
}

.problem-section .section-heading p:not(.section-kicker) {
  max-width: 470px;
  font-size: 15.5px;
  line-height: 1.55;
}

.problem-cards {
  gap: 12px;
}

.problem-card {
  min-height: 0;
  padding: 22px 26px;
  border-radius: 24px;
}

.problem-card h3 {
  font-size: clamp(20px, 1.9vw, 27px);
  line-height: 1.08;
  letter-spacing: -.04em;
  margin: 10px 0 10px;
  max-width: 20ch;
}

.problem-card p {
  font-size: 14.5px;
  line-height: 1.48;
  max-width: 560px;
  margin-bottom: 0;
}

.problem-card span {
  font-size: 11px;
}

/* 2) Approach strip closer and compact */
.approach-strip-section {
  padding-top: 0;
  padding-bottom: 56px;
}

.approach-strip div {
  padding: 22px;
  border-radius: 22px;
}

.approach-strip h3 {
  font-size: 20px;
  margin: 10px 0 6px;
}

.approach-strip p {
  font-size: 14px;
  line-height: 1.45;
  margin-bottom: 0;
}

/* 3) Wide text for "What we do" and "Team" */
.wide-heading-section .section-heading {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 44px;
  align-items: end;
  margin-bottom: 30px;
}

.wide-heading-section .section-heading .section-kicker {
  grid-column: 1 / -1;
  margin-bottom: -18px;
}

.wide-heading-section .section-heading h2 {
  max-width: 16ch;
  margin-bottom: 0;
}

.wide-heading-section .section-heading p {
  max-width: 760px;
  margin-bottom: 4px;
}

/* 4) Cards: less tall, more readable */
.service-card,
.team-card {
  padding: 20px;
  border-radius: 22px;
}

.service-card .icon {
  width: 44px;
  height: 44px;
  margin-bottom: 18px;
}

.service-card h3,
.team-card h3 {
  font-size: 19px;
  line-height: 1.12;
  margin-bottom: 10px;
}

.service-card p,
.team-card p {
  font-size: 14.5px;
  line-height: 1.48;
}

.service-card a {
  font-size: 14.5px;
}

/* 5) Process: compact, less vertical height */
#process {
  padding-top: 72px;
  padding-bottom: 72px;
}

.process-grid {
  grid-template-columns: .78fr 1.22fr;
  gap: 34px;
}

#process .section-heading h2 {
  font-size: clamp(30px, 3.4vw, 46px);
  max-width: 12ch;
}

#process .section-heading p:not(.section-kicker) {
  max-width: 470px;
  font-size: 15px;
  line-height: 1.5;
}

.steps {
  gap: 12px;
}

.step {
  display: grid;
  grid-template-columns: 72px 1fr;
  column-gap: 18px;
  row-gap: 6px;
  padding: 20px 24px;
  border-radius: 22px;
  min-height: 0;
}

.step span {
  grid-row: 1 / 3;
  font-size: 24px;
  align-self: start;
}

.step h3 {
  font-size: 20px;
  margin: 0;
}

.step p {
  font-size: 14.5px;
  line-height: 1.48;
  margin: 0;
}

/* 6) Team block: text wide and cards tighter */
.team-section {
  padding-top: 72px;
  padding-bottom: 72px;
}

.expanded-team {
  gap: 14px;
}

/* 7) General vertical rhythm */
.section {
  padding-top: 78px;
  padding-bottom: 78px;
}

.hero.section {
  padding-top: 126px;
  padding-bottom: 66px;
}

.marquee-section {
  margin: 0;
}

@media(max-width: 980px) {
  .problem-grid,
  .process-grid,
  .wide-heading-section .section-heading {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .wide-heading-section .section-heading .section-kicker {
    margin-bottom: 0;
  }

  .problem-section .section-heading h2,
  #process .section-heading h2,
  .wide-heading-section .section-heading h2 {
    max-width: 100%;
  }
}

@media(max-width: 640px) {
  .section,
  .problem-section,
  .team-section,
  #process {
    padding-top: 56px;
    padding-bottom: 56px;
  }

  .problem-card {
    padding: 20px;
  }

  .step {
    grid-template-columns: 1fr;
  }

  .step span {
    grid-row: auto;
  }
}


/* FINAL TEXT LAYOUT FIX */

/* Форматы работы и Команда: заголовок на всю ширину, без лишнего правого текста */
.wide-heading-full .section-heading {
  display: block;
  max-width: 100%;
  margin-bottom: 28px;
}

.wide-heading-full .section-heading h2 {
  max-width: 980px;
  width: 100%;
  font-size: clamp(34px, 4.4vw, 62px);
  line-height: 1.02;
  letter-spacing: -.05em;
  margin-bottom: 0;
}

.wide-heading-full .section-heading p:not(.section-kicker) {
  display: none;
}

/* Блоки поднимаем ближе к заголовку */
.models-section .models-grid,
.team-section .team-grid {
  margin-top: 0;
}

/* Форматы работы: карточки ниже и аккуратнее */
.models-section {
  padding-top: 68px;
  padding-bottom: 68px;
}

.model-card {
  min-height: 250px;
  padding: 26px;
  border-radius: 26px;
}

.model-card h3 {
  font-size: 26px;
  line-height: 1.08;
  margin-bottom: 12px;
}

.model-card p {
  font-size: 15px;
  line-height: 1.5;
}

/* Команда: меньше пустоты, карточки компактнее */
.team-section {
  padding-top: 68px;
  padding-bottom: 68px;
}

.team-card {
  min-height: 0;
  padding: 20px;
}

.team-card .avatar {
  width: 56px;
  height: 56px;
  border-radius: 18px;
  margin-bottom: 20px;
}

.team-card h3 {
  font-size: 20px;
  line-height: 1.12;
  margin-bottom: 10px;
}

.team-card p {
  font-size: 14.5px;
  line-height: 1.48;
}

.team-card span {
  font-size: 12px;
  line-height: 1.4;
}

/* На широких экранах карточки команды не должны уходить слишком низко */
.expanded-team {
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

@media(max-width: 1280px) {
  .expanded-team {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media(max-width: 860px) {
  .expanded-team {
    grid-template-columns: repeat(2, 1fr);
  }

  .wide-heading-full .section-heading h2 {
    max-width: 100%;
  }
}

@media(max-width: 640px) {
  .expanded-team {
    grid-template-columns: 1fr;
  }

  .wide-heading-full .section-heading h2 {
    font-size: clamp(30px, 8vw, 42px);
  }
}


/* PRODUCT EXAMPLES CAROUSEL */
.product-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.product-tab{display:inline-flex;align-items:center;text-decoration:none;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);color:#dfe6ff;border-radius:999px;min-height:44px;padding:0 16px;font-weight:800;cursor:pointer;transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease),color .22s var(--ease)}
.product-tab:hover{transform:translateY(-2px);background:rgba(255,255,255,.07)}
.product-tab.is-active{color:#06101c;background:var(--lime);border-color:rgba(168,255,53,.7)}
.product-showcase{display:grid;grid-template-columns:1.55fr .7fr;gap:20px;align-items:stretch;border:1px solid rgba(255,255,255,.1);background:radial-gradient(circle at 12% 0%,rgba(168,255,53,.08),transparent 30%),radial-gradient(circle at 92% 18%,rgba(124,92,255,.16),transparent 34%),rgba(255,255,255,.045);border-radius:34px;padding:24px;overflow:hidden;transition:opacity .2s var(--ease)}
.product-showcase.is-changing{opacity:.72}
.showcase-visual{
  width:100%;
  aspect-ratio:16/9;
  min-height:0;
  border-radius:22px;
  border:1px solid rgba(15,25,50,.10);
  overflow:hidden;
  position:relative;
  background:#070b14;
}
.showcase-visual::before,
.showcase-visual::after{
  display:none;
  content:none;
  animation:none;
}
.showcase-shot{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  /* cover = без растягивания; при 16:9 совпадает с контейнером, текст не «плывёт» */
  object-fit:cover;
  object-position:center center;
  display:block;
  background:transparent;
  z-index:1;
  border:0;
  outline:0;
  box-shadow:none;
  image-rendering:-webkit-optimize-contrast;
  image-rendering:auto;
}
.showcase-content{
  padding:8px 6px;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:0;
  min-height:0;
  font-family:Manrope,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;
}
.showcase-category{color:var(--lime);font-family:"JetBrains Mono",monospace;font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.showcase-content h3{
  font-family:Manrope,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;
  font-size:clamp(30px,3.3vw,48px);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:800;
  margin-bottom:16px;
}
.showcase-content>p:not(.showcase-category){
  font-family:Manrope,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;
  color:#c5d0ff;
  font-size:17px;
  line-height:1.62;
  max-width:560px;
  font-weight:500;
}
.client-points{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}
.client-points span{
  font-family:Manrope,system-ui,-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif;
  padding:12px 14px;
  border-radius:14px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
  color:#f3f6ff;
  font-weight:700;
  font-size:14px;
  flex:0 1 auto;
  max-width:100%;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  word-break:normal;
  overflow-wrap:normal;
  line-height:1.25;
}
.showcase-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08)}
.showcase-counter{color:#aebbea;font-family:"JetBrains Mono",monospace}.showcase-arrows{display:flex;gap:10px}.showcase-arrows button{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);color:#fff;font-size:20px;cursor:pointer}.showcase-note{margin:16px 0 0;color:#8fa0d6;font-size:14px}
.wide-preview,.mobile-preview-big,.shop-preview-big,.ai-preview-big,.bot-preview-big,.vpn-preview-big{position:absolute;inset:28px;border-radius:24px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);overflow:hidden}
.preview-top{position:absolute;left:120px;right:28px;top:28px;height:34px;border-radius:14px;background:rgba(255,255,255,.11)}.preview-side{position:absolute;left:28px;top:28px;bottom:28px;width:70px;border-radius:20px;background:rgba(255,255,255,.08)}.preview-cards{position:absolute;left:120px;right:28px;top:88px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.preview-cards i{height:76px;border-radius:18px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.08)}.preview-bars{position:absolute;left:120px;right:28px;bottom:30px;height:150px;display:flex;align-items:end;gap:14px;padding:20px;border-radius:20px;background:rgba(255,255,255,.04)}.preview-bars span{flex:1;border-radius:999px 999px 8px 8px;background:linear-gradient(180deg,#a8ff35,#7c5cff);animation:liveBars 2.6s ease-in-out infinite}.preview-bars span:nth-child(1){height:45%}.preview-bars span:nth-child(2){height:75%}.preview-bars span:nth-child(3){height:55%}.preview-bars span:nth-child(4){height:88%}
.mobile-preview-big{display:flex;align-items:center;justify-content:center;gap:22px}.phone-screen{width:180px;min-height:300px;border-radius:32px;padding:22px;background:#0a1020;border:1px solid rgba(255,255,255,.12);box-shadow:0 26px 70px rgba(0,0,0,.28)}.phone-screen.small{width:145px;min-height:240px;transform:translateY(28px);opacity:.88}.phone-screen b{display:block;color:#fff;margin-bottom:18px;font-size:18px}.phone-screen i{display:block;height:22px;border-radius:10px;background:rgba(255,255,255,.09);margin:12px 0}.phone-screen span{display:block;margin-top:18px;padding:14px;border-radius:15px;color:#06101c;background:var(--lime);font-weight:900;text-align:center}
.shop-grid-big{position:absolute;left:38px;right:38px;top:38px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.shop-grid-big i{height:96px;border-radius:20px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.08)}.shop-cart-big{position:absolute;right:38px;bottom:38px;padding:18px 22px;border-radius:18px;background:var(--lime);color:#06101c;font-weight:900}
.ai-preview-big{display:grid;place-content:center;gap:14px}.ai-msg{width:min(520px,80%);padding:16px 18px;border-radius:18px;color:#fff;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);margin:0 auto}.ai-msg.bot{background:linear-gradient(135deg,rgba(39,217,255,.16),rgba(124,92,255,.32))}.ai-msg.route{background:rgba(168,255,53,.10)}
.bot-preview-big{display:flex;align-items:center;justify-content:center;gap:14px}.bot-step{padding:18px 20px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:800}.bot-preview-big i{width:42px;height:2px;background:linear-gradient(90deg,#4bd8ff,#a8ff35)}
.vpn-preview-big{display:grid;place-items:center}.vpn-core,.vpn-dot{position:absolute;border-radius:50%;background:radial-gradient(circle,#a8ff35,#27d9ff 55%,#7c5cff);box-shadow:0 0 34px rgba(168,255,53,.24)}.vpn-core{width:96px;height:96px}.vpn-dot{width:44px;height:44px}.vpn-dot.d1{left:15%;top:22%}.vpn-dot.d2{right:18%;top:24%}.vpn-dot.d3{left:48%;bottom:16%}.vpn-preview-big span{position:absolute;bottom:36px;padding:14px 18px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:800}

@media(max-width:980px){.product-showcase{grid-template-columns:1fr}.showcase-visual{aspect-ratio:16/9;min-height:0}.showcase-content{padding:4px}}
@media(max-width:640px){.client-points{display:flex;flex-wrap:wrap}.showcase-visual{aspect-ratio:16/9;min-height:0}.wide-preview,.mobile-preview-big,.shop-preview-big,.ai-preview-big,.bot-preview-big,.vpn-preview-big{inset:18px}.preview-side{display:none}.preview-top,.preview-cards,.preview-bars{left:26px}.phone-screen.small{display:none}}




/* ===== LiveDev maintenance patch: clean cascade, footer alignment, UX fixes ===== */
main, .section, .footer { position: relative; z-index: 2; }
.section { padding: 92px 0; }
.hero.section, .hero { padding-top: 132px; }
#services, #cases, .models-section, .team-section { padding-top: 70px; padding-bottom: 70px; }
#services .section-heading,
#cases .section-heading,
.models-section .section-heading,
.team-section .section-heading { display: block; width: 100%; max-width: 100%; margin-bottom: 28px; }
#services .section-heading p:not(.section-kicker),
#cases .section-heading p,
.models-section .section-heading p:not(.section-kicker),
.team-section .section-heading p:not(.section-kicker) { display: none; }
#services .section-heading h2,
#cases .section-heading h2,
.models-section .section-heading h2,
.team-section .section-heading h2 { white-space: normal; overflow: visible; word-break: normal; hyphens: none; line-height: 1.04; letter-spacing: -.048em; margin: 0; }
#cases .section-heading h2,
#services .section-heading h2 { max-width: 1180px; font-size: clamp(34px, 3.45vw, 54px); }
.models-section .section-heading h2,
.team-section .section-heading h2 { max-width: 1220px; font-size: clamp(34px, 3.4vw, 54px); }
.chart-bars i, .preview-bars span, .fake-chart span { transform-origin: bottom; }
.product-flow span { color: #fff; background: rgba(255,255,255,.10); }

/* Footer: equal columns, no bottom contact duplicates */
.mega-footer .footer-top { display: grid; grid-template-columns: minmax(340px, 1fr) minmax(720px, auto); gap: clamp(56px, 7vw, 110px); align-items: start; }
.mega-footer .footer-columns { display: grid; grid-template-columns: repeat(3, max-content); column-gap: clamp(70px, 6vw, 104px); align-items: start; justify-content: start; }
.mega-footer .footer-columns > div, .mega-footer .footer-contacts-col { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; margin: 0; padding: 0; width: auto; }
.mega-footer .footer-columns h4, .mega-footer .footer-contacts-col h4 { margin: 0 0 10px; color: var(--lime); font-family: "JetBrains Mono", monospace; font-size: 13px; line-height: 1.1; letter-spacing: .18em; text-transform: uppercase; }
.mega-footer .footer-columns a, .mega-footer .footer-columns p, .mega-footer .footer-copy-line { margin: 0; padding: 0; display: block; color: #c7d2ff; font: inherit; font-size: 16px; line-height: 1.35; font-weight: 500; text-decoration: none; background: transparent; border: 0; border-radius: 0; min-height: 0; width: auto; text-align: left; white-space: nowrap; appearance: none; -webkit-appearance: none; }
.mega-footer .footer-columns a:hover, .mega-footer .footer-copy-line:hover { color: var(--lime); }
.footer-copy-line { cursor: copy; }
.copy-toast { position: fixed; left: 50%; bottom: 26px; transform: translate(-50%, 14px); opacity: 0; pointer-events: none; z-index: 99999; padding: 10px 14px; border-radius: 999px; background: rgba(9,14,28,.94); border: 1px solid rgba(168,255,53,.28); color: #f4f7ff; font-size: 14px; font-weight: 800; box-shadow: 0 18px 50px rgba(0,0,0,.35); transition: opacity .22s var(--ease), transform .22s var(--ease); }
.copy-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

@media (max-width: 1180px) {
  .mega-footer .footer-top { grid-template-columns: 1fr; gap: 36px; }
  .mega-footer .footer-columns { grid-template-columns: repeat(3, max-content); column-gap: 44px; }
}
@media (max-width: 980px) {
  .section { padding: 76px 0; }
  .hero.section, .hero { padding-top: 118px; }
  .product-showcase{grid-template-columns:1fr}
  .showcase-visual{aspect-ratio:16/9;min-height:0}
  .showcase-content{padding:4px}
}
@media (max-width: 720px) {
  .mega-footer .footer-columns { grid-template-columns: 1fr; row-gap: 28px; }
  .mega-footer .footer-columns a, .mega-footer .footer-columns p, .mega-footer .footer-copy-line { white-space: normal; }
}
@media (max-width: 640px) {
  #services, #cases, .models-section, .team-section { padding-top: 52px; padding-bottom: 52px; }
  #services .section-heading h2, #cases .section-heading h2, .models-section .section-heading h2, .team-section .section-heading h2 { font-size: clamp(30px, 8vw, 42px); }
  .client-points{display:flex;flex-wrap:wrap}
  .showcase-visual{aspect-ratio:16/9;min-height:0}
  .wide-preview,.mobile-preview-big,.shop-preview-big,.ai-preview-big,.bot-preview-big,.vpn-preview-big{inset:18px}
  .preview-side{display:none}
  .preview-top,.preview-cards,.preview-bars{left:26px}
  .phone-screen.small{display:none}
}


/* Final footer layout: only navigation + contacts */
.mega-footer .footer-top {
  grid-template-columns: minmax(360px, 1fr) minmax(520px, auto);
  align-items: start;
  gap: clamp(64px, 8vw, 120px);
}

.mega-footer .footer-columns {
  display: grid;
  grid-template-columns: max-content max-content;
  align-items: start;
  justify-content: start;
  column-gap: clamp(96px, 10vw, 170px);
}

.mega-footer .footer-columns .footer-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  margin: 0;
  padding: 0;
  min-width: 0;
  width: auto;
}

.mega-footer .footer-columns .footer-col h4 {
  margin: 0 0 10px;
  padding: 0;
}

.mega-footer .footer-columns .footer-col a,
.mega-footer .footer-columns .footer-col p {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 1.35;
  white-space: nowrap;
}

.mega-footer .footer-contacts-col .copy-contact {
  cursor: copy;
  user-select: none;
}

.mega-footer .footer-contacts-col .copy-contact:hover {
  color: var(--lime);
}

/* Services section: prevent kicker from overlapping heading */
#services .section-heading {
  display: block;
}

#services .section-kicker {
  display: block;
  margin: 0 0 18px;
  line-height: 1.2;
  position: relative;
  z-index: 1;
}

#services .section-heading h2 {
  margin: 0;
  max-width: 1100px;
  line-height: 1.06;
}

#services .section-heading p:not(.section-kicker) {
  display: none;
}

@media (max-width: 980px) {
  .mega-footer .footer-top {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .mega-footer .footer-columns {
    grid-template-columns: max-content max-content;
    column-gap: 64px;
  }
}

@media (max-width: 720px) {
  .mega-footer .footer-columns {
    grid-template-columns: 1fr;
    row-gap: 28px;
  }

  .mega-footer .footer-columns .footer-col a,
  .mega-footer .footer-columns .footer-col p {
    white-space: normal;
  }
}


/* Footer final guard: after removing services, keep two footer columns aligned */
.mega-footer .footer-columns {
  grid-template-columns: max-content max-content;
}

/* Bot trap: present in the form DOM but never visible to real visitors. */
.form-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.lead-form .form-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.45;color:var(--muted);font-weight:500}
.lead-form .form-consent input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;padding:0;accent-color:var(--lime)}
.lead-form .form-consent a{color:var(--lime)}
.footer-bottom a{color:inherit}
