 /* ===== БАЗОВЫЕ СТИЛИ ===== */
    * { margin: 0; padding: 0; box-sizing: border-box; font-family: "Montserrat", sans-serif; }
    html { scroll-behavior: smooth; }
    body { color: #333; background: #fff; line-height: 1.6; }
    section { padding: 100px 0; position: relative; }
    .container { width: 90%; max-width: 1200px; margin: 0 auto; }
    
    /* ===== ТИПОГРАФИЯ ===== */
    h1, h2, h3, h4 { font-weight: 800; line-height: 1.2; }
    h1 { font-size: 48px; margin-bottom: 24px; }
    h2 { font-size: 36px; margin-bottom: 40px; position: relative; }
    h2.section-title { color: #1a73e8; text-transform: uppercase; letter-spacing: 1px; }
    h2.section-title:after { content: ""; display: block; width: 80px; height: 4px; background: linear-gradient(90deg, #1a73e8, #b833ff); margin-top: 16px; }
    h2.section-title.white { color: #fff; }
    h2.section-title.white:after { background: linear-gradient(90deg, #20c2ff, #b833ff); }
    p { font-size: 18px; margin-bottom: 20px; }
    
    /* ===== КНОПКИ ===== */
    .btn {
      display: inline-flex; align-items: center; gap: 8px; border: none; padding: 14px 32px;
      font-weight: 500; border-radius: 4px;
      background: linear-gradient(90deg, #1a73e8 0%, #b833ff 100%);
      color: #fff; cursor: pointer; text-decoration: none; transition: all 0.3s ease; font-size: 16px;
    }
    .btn:hover { transform: translateY(-3px); box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); }
    .btn-outline { background: transparent; border: 2px solid #1a73e8; color: #1a73e8; }
    .btn-outline:hover { background: #1a73e8; color: #fff; }
    

    /* ===== ИННОВАЦИОННЫЙ HERO (замена старого) ===== */
    .hero{
      position: relative; padding: 0; overflow: hidden;
      background: radial-gradient(1200px 600px at 85% 20%, #1e3a8a 0%, #0f172a 60%);
      color:#fff; isolation:isolate;
    }
    .hero::before,
    .hero::after{
      content:""; position:absolute; inset:auto -20% -30% -20%; height: 60vh; z-index:0;
      background:
        radial-gradient(600px 300px at 20% 30%, rgba(184,51,255,.25), transparent 60%),
        radial-gradient(500px 260px at 80% 60%, rgba(32,194,255,.22), transparent 60%);
      filter: blur(12px);
    }
    .hero::after{
      inset:-30% -30% auto -30%; height: 70vh;
      background:
        radial-gradient(700px 380px at 20% 70%, rgba(26,115,232,.22), transparent 60%),
        radial-gradient(520px 320px at 80% 20%, rgba(184,51,255,.2), transparent 60%);
    }
    .hero-canvas{ position:absolute; inset:0; z-index:0; opacity:.7; }
    .hero-inner{ position:relative; z-index:2; padding: 120px 0 110px; }
    .hero-grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap: 32px; align-items: center; }
    .hero-title{
      font-size: clamp(36px, 6vw, 64px); line-height:1.05; letter-spacing:.6px; margin:6px 0 12px;
      background: linear-gradient(90deg, #fff 0%, #dbeafe 40%, #20c2ff 70%, #bda4ff 95%);
      -webkit-background-clip:text; background-clip:text; color: transparent; text-transform: uppercase;
      text-shadow: 0 10px 30px rgba(32,194,255,.12);
    }
    .hero-subtitle{ font-size: clamp(16px, 2vw, 20px); opacity:.9; }
    .type{ display:inline-block; min-height:1.6em; border-right:2px solid rgba(255,255,255,.9); animation: caret 1s steps(1) infinite; margin-left:6px; padding-right:4px; white-space:nowrap; }
    @keyframes caret{ 50%{ border-color: transparent; } }
    .hero-chips{ display:flex; flex-wrap:wrap; gap:10px; margin: 18px 0 26px; }
    .chip{
      font-size:13px; letter-spacing:.3px; color:#e6f2ff; padding:8px 12px; border-radius:999px;
      backdrop-filter: blur(6px);
      background: linear-gradient(135deg, rgba(26,115,232,.22), rgba(184,51,255,.22));
      border: 1px solid rgba(255,255,255,.18);
    }
    .hero-actions{ display:flex; gap:14px; flex-wrap:wrap; margin-top:6px; }

    /* Орбитальный декор */
    .orbit{ width:min(460px,80vw); aspect-ratio:1/1; margin-inline:auto; position:relative; display:grid; place-items:center; filter: drop-shadow(0 30px 60px rgba(0,0,0,.35)); }
    .core{ width:160px; height:160px; border-radius:28px; background: linear-gradient(135deg, rgba(26,115,232,.95), rgba(184,51,255,.95)); display:grid; place-items:center; box-shadow: 0 16px 40px rgba(26,115,232,.35), inset 0 -10px 30px rgba(255,255,255,.18); }
    .core svg{ width:76px; height:76px; color:#fff; }
    .ring{ position:absolute; inset:9%; border-radius:50%; border:1.6px dashed rgba(255,255,255,.35); animation: spin 18s linear infinite; }
    .ring.r2{ inset:22%; animation-duration:13s; border-style: solid; border-color: rgba(32,194,255,.35); }
    .ring.r3{ inset:36%; animation-duration:9s; border-style: dashed; border-color: rgba(184,51,255,.35); }
    @keyframes spin{ to{ transform: rotate(360deg); } }
    .sat{ position:absolute; width:14px; height:14px; border-radius:50%; background: radial-gradient(circle at 30% 30%, #fff, #20c2ff 45%, transparent 70%); box-shadow: 0 0 22px rgba(32,194,255,.65); }
    .sat.s1{ top:2%; left:48%; animation: orbit1 12s linear infinite; }
    .sat.s2{ bottom:22%; right:2%; animation: orbit2 10s linear infinite; }
    .sat.s3{ top:28%; left:2%; background: radial-gradient(circle at 30% 30%, #fff, #b833ff 45%, transparent 70%); box-shadow: 0 0 22px rgba(184,51,255,.65); animation: orbit3 8s linear infinite; }
    @keyframes orbit1{ to{ transform: rotate(360deg) translateX(40px) rotate(-360deg); } }
    @keyframes orbit2{ to{ transform: rotate(-360deg) translateX(32px) rotate(360deg); } }
    @keyframes orbit3{ to{ transform: rotate(360deg) translateX(26px) rotate(-360deg); } }

    /* ===== УСЛУГИ ===== */
    .services { background: #fff; padding: 100px 0; }
    .services-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 40px; }
    .service-card { background: #f8fafc; padding: 40px 30px; border-radius: 8px; transition: all 0.3s; border-left: 4px solid #1a73e8; }
    .service-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1); }
    .service-card h3 { color: #1a73e8; margin-bottom: 20px; font-size: 24px; }
    .service-card .btn { margin-top: 20px; }
    
    /* ===== О НАС ===== */
    .about { background: linear-gradient(135deg, #1e3a8a, #0f172a); color: #fff; padding: 100px 0; }
    .about-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; margin-bottom: 60px; }
    .about-stat { text-align: center; }
    .about-stat h3 { font-size: 48px; color: #20c2ff; margin-bottom: 10px; }
    .about-stat p { font-size: 18px; opacity: 0.9; }
    .about-text { max-width: 800px; margin: 0 auto; text-align: center; }
    
    /* ===== ПРЕИМУЩЕСТВА ===== */
    .advantages { background: #fff; padding: 100px 0; }
    .advantages-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 40px; }
    .advantage-card { padding: 30px; border-radius: 8px; background: #f8fafc; margin-left: auto; margin-right: auto; }
    .centered-card { grid-column: 1 / -1; justify-self: center; max-width: 300px; }
    .advantage-card h3 { color: #1a73e8; margin-bottom: 15px; font-size: 22px; }
    
    /* ===== КАРУСЕЛЬ ПАРТНЕРОВ ===== */
    .partners { background: #f8fafc; padding: 80px 0; }
    .partners .container { overflow: hidden; position: relative; }
    .partners h2 { text-align: center; margin-bottom: 50px; color: #1a73e8; }
    .partners-slider { display: flex; align-items: center; gap: 60px; animation: scroll 30s linear infinite; width: calc(250px * 10); }
    .partner-logo { width: 180px; height: 80px; object-fit: contain; filter: grayscale(100%); opacity: 0.7; transition: all 0.3s ease; }
    .partner-logo:hover { filter: grayscale(0%); opacity: 1; transform: scale(1.05); }
    @keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(calc(-250px * 5)); } }
    
    /* ===== CTA ===== */
    .cta { background: linear-gradient(135deg, #0f172a, #1e3a8a); color: #fff; padding: 100px 0; text-align: center; }
    .cta h2 { color: #fff; margin-bottom: 20px; }
    .cta p { max-width: 700px; margin: 0 auto 40px; }
    .cta .btn { margin: 0 auto; }
    
    /* ===== ПОДВАЛ ===== */
    footer { background: #0f172a; color: #fff; padding: 60px 0 30px; }
    .footer-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; margin-bottom: 40px; }
    .footer-col h3 { color: #fff; margin-bottom: 20px; font-size: 20px; }
    .footer-col ul { list-style: none; }
    .footer-col li { margin-bottom: 10px; }
    .footer-col a { color: rgba(255, 255, 255, 0.8); text-decoration: none; transition: color 0.3s; }
    .footer-col a:hover { color: #fff; }
    .copyright { text-align: center; color: rgba(255, 255, 255, 0.6); font-size: 14px; padding-top: 40px; border-top: 1px solid rgba(255, 255, 255, 0.1); }
    
    /* ===== АДАПТИВ ===== */
    @media (max-width: 992px) {
      .about-grid { grid-template-columns: repeat(2, 1fr); }
      nav ul { gap: 20px; }
      .partners-slider { gap: 40px; width: calc(200px * 10); }
      .partner-logo { width: 150px; }
      .hero-inner{ padding: 110px 0 90px; }
      .hero-grid{ grid-template-columns: 1fr; }
    }
    @media (max-width: 768px) {
      section { padding: 70px 0; }
      .header-container { flex-direction: column; padding: 15px 0; height: auto; }
      nav ul { margin-top: 15px; flex-wrap: wrap; justify-content: center; }
      /* вместо старых отступов героев управляем внутренними паддингами */
      .hero-inner{ padding: 110px 0 80px; }
      .partners-slider { gap: 30px; width: calc(150px * 10); }
      .partner-logo {
        width: 298px; height: 165px; object-fit: contain; object-position: center;
        filter: grayscale(100%); opacity: 0.7; transition: all 0.3s ease; background: white; padding: 10px; box-sizing: border-box;
      }
    }