/* ===== IPCS site — modern theme ===== */
:root{
  --bg:#0b1020;
  --bg-soft:#10172e;
  --surface:#141d38;
  --surface-2:#1b2746;
  --line:rgba(255,255,255,.08);
  --text:#e8ecf6;
  --muted:#9aa6c4;
  --brand:#3b82f6;
  --brand-2:#22d3ee;
  --accent:#34d399;
  --radius:16px;
  --container:1180px;
  --shadow:0 20px 50px -20px rgba(0,0,0,.6);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  background:var(--bg);color:var(--text);line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.container{max-width:var(--container);margin:0 auto;padding:0 24px}

/* ===== Buttons ===== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:14px 26px;border-radius:12px;font-weight:600;font-size:15px;
  cursor:pointer;border:1px solid transparent;transition:.18s;white-space:nowrap;
}
.btn-sm{padding:9px 18px;font-size:14px}
.btn-block{width:100%}
.btn-primary{
  background:linear-gradient(135deg,var(--brand),var(--brand-2));
  color:#03142b;box-shadow:0 10px 30px -10px rgba(59,130,246,.7);
}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.08)}
.btn-ghost{background:transparent;border-color:var(--line);color:var(--text)}
.btn-ghost:hover{background:var(--surface);border-color:var(--brand)}

/* ===== Header ===== */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(11,16,32,.82);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.header-inner{display:flex;align-items:center;gap:18px;height:68px}
.logo-mark{font-weight:800;font-size:24px;letter-spacing:.5px}
.logo-mark b{color:var(--brand-2)}
.logo{flex:none;display:flex;align-items:center}
.logo-img{height:34px;width:auto;display:block;object-fit:contain;flex:none}
.nav{display:flex;align-items:center;gap:4px;margin-left:12px;flex:1}
.nav a{color:var(--muted);font-weight:500;font-size:13.5px;white-space:nowrap;padding:6px 10px;border-radius:8px;transition:.15s}
.nav a:hover,.nav a.active{color:var(--text);background:rgba(255,255,255,.06)}
.header-cta{margin-left:auto;white-space:nowrap;flex-shrink:0}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:6px}
.burger span{width:24px;height:2px;background:var(--text);border-radius:2px;transition:.2s}

/* Dropdown */
.nav-drop{position:relative}
.nav-drop>a{display:flex;align-items:center;gap:4px}
.nav-drop>a::after{content:"▾";font-size:10px;opacity:.6}
.drop-menu{
  display:none;position:absolute;top:100%;left:0;
  padding-top:10px; /* invisible bridge so mouse doesn't lose hover */
  min-width:220px;z-index:100;
}
.drop-menu-inner{
  background:rgba(12,18,38,.98);border:1px solid var(--line);border-radius:12px;
  padding:8px;box-shadow:0 16px 40px rgba(0,0,0,.6);
}
.nav-drop:hover .drop-menu{display:flex;flex-direction:column}
.drop-menu a{color:var(--muted);font-size:13.5px;font-weight:500;padding:9px 14px;border-radius:8px;white-space:nowrap;display:flex;align-items:center;gap:10px;transition:.15s}
.drop-menu a:hover{color:var(--text);background:rgba(255,255,255,.07)}
.drop-menu a .dm-ico{font-size:15px;width:22px;text-align:center;flex:none}

/* Language switcher */
.lang-switch{display:flex;gap:2px;margin-left:10px;background:var(--surface);
  border:1px solid var(--line);border-radius:9px;padding:3px;flex:none}
.lang-switch button{background:none;border:0;color:var(--muted);font-size:12px;
  font-weight:700;letter-spacing:.02em;padding:5px 8px;border-radius:6px;cursor:pointer;
  font-family:inherit;transition:.15s;line-height:1}
.lang-switch button:hover{color:var(--text)}
.lang-switch button.active{background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff}

/* ===== Hero ===== */
.hero{position:relative;overflow:hidden;padding:84px 0 96px}
.hero-bg{
  position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(600px 380px at 78% 12%,rgba(34,211,238,.18),transparent 70%),
    radial-gradient(680px 460px at 12% 88%,rgba(59,130,246,.22),transparent 70%);
}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .9fr;gap:54px;align-items:center}
.badge-line{
  display:inline-flex;align-items:center;gap:9px;
  background:var(--surface);border:1px solid var(--line);
  padding:8px 16px;border-radius:999px;font-size:13.5px;color:var(--muted);margin-bottom:22px;
}
.badge-line .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(52,211,153,.18)}
.hero h1{font-size:clamp(34px,5vw,56px);line-height:1.1;font-weight:800;letter-spacing:-1px}
.grad{background:linear-gradient(135deg,var(--brand),var(--brand-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .lead{margin:22px 0 30px;font-size:18px;color:var(--muted);max-width:560px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero-stats{display:flex;gap:36px;margin-top:42px;flex-wrap:wrap}
.hero-stats b{display:block;font-size:26px;font-weight:800}
.hero-stats span{font-size:13.5px;color:var(--muted)}
.hero-card{
  background:linear-gradient(180deg,var(--surface),var(--bg-soft));
  border:1px solid var(--line);border-radius:var(--radius);
  padding:26px;box-shadow:var(--shadow);
}
.hc-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:15px}
.hc-row:last-of-type{border-bottom:0}
.hc-ok{width:20px;height:20px;border-radius:6px;flex:none;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));position:relative}
.hc-ok::after{content:"";position:absolute;left:6.5px;top:3px;width:5px;height:9px;
  border:solid #03142b;border-width:0 2px 2px 0;transform:rotate(45deg)}
.hc-foot{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:13.5px;color:var(--muted)}
.online{color:var(--accent)}

/* ===== Sections ===== */
.section{padding:88px 0}
.section-alt{background:var(--bg-soft)}

/* ── AI Section ── */
.section-ai{padding:88px 0;position:relative;overflow:hidden}
.section-ai::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:
    radial-gradient(700px 400px at 90% 50%,rgba(99,102,241,.12),transparent 70%),
    radial-gradient(500px 350px at 5% 30%,rgba(34,211,238,.09),transparent 70%);
  pointer-events:none;
}
.section-ai .container{position:relative;z-index:1}
.ai-eyebrow{background:linear-gradient(135deg,var(--accent),var(--indigo));-webkit-background-clip:text;background-clip:text;color:transparent!important;font-weight:700}

/* Service AI card badge */
.svc-ai{position:relative;border-color:rgba(99,102,241,.4)!important;background:linear-gradient(145deg,var(--card),rgba(99,102,241,.06))!important}
.svc-ai-badge{position:absolute;top:16px;right:16px;background:linear-gradient(135deg,var(--accent),var(--indigo));color:#000;font-size:.65rem;font-weight:800;padding:3px 9px;border-radius:20px;letter-spacing:.08em}
.ico-ai::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%23a78bfa' stroke-width='2' viewBox='0 0 24 24'><path d='M12 2a4 4 0 014 4v1h1a3 3 0 010 6h-1v1a4 4 0 01-8 0v-1H7a3 3 0 010-6h1V6a4 4 0 014-4z'/><circle cx='9' cy='10' r='1' fill='%23a78bfa'/><circle cx='15' cy='10' r='1' fill='%23a78bfa'/><path d='M9 15s1 1.5 3 1.5 3-1.5 3-1.5'/></svg>")}

/* AI use-cases grid */
.ai-usecases{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:44px}
.ai-case{display:flex;align-items:flex-start;gap:18px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px;transition:border-color .2s,transform .2s}
.ai-case:hover{border-color:rgba(99,102,241,.5);transform:translateY(-3px)}
.ai-case-ico{font-size:28px;flex:none;width:52px;height:52px;background:rgba(99,102,241,.12);border-radius:12px;display:flex;align-items:center;justify-content:center}
.ai-case h4{font-size:.97rem;font-weight:700;margin:0 0 6px}
.ai-case p{font-size:.85rem;color:var(--text-muted);line-height:1.6;margin:0}
.ai-advantages{border-top:1px solid var(--line);padding-top:60px;margin-top:60px}
.section-head{max-width:660px;margin:0 auto 52px;text-align:center}
.eyebrow{
  display:inline-block;color:var(--brand-2);font-weight:600;font-size:13.5px;
  text-transform:uppercase;letter-spacing:1.4px;margin-bottom:12px;
}
.section-head h2{font-size:clamp(26px,3.4vw,38px);font-weight:800;letter-spacing:-.5px}
.section-head p{margin-top:14px;color:var(--muted);font-size:16.5px}

/* ===== Grid / cards ===== */
.grid{display:grid;gap:22px}
.grid-3{grid-template-columns:repeat(3,1fr)}
.card{
  background:var(--surface);border:1px solid var(--line);
  border-radius:var(--radius);padding:28px;transition:.2s;
}
.card:hover{transform:translateY(-4px);border-color:rgba(59,130,246,.5);box-shadow:var(--shadow)}
.svc-ico{width:52px;height:52px;border-radius:13px;margin-bottom:18px;
  background:linear-gradient(135deg,rgba(59,130,246,.22),rgba(34,211,238,.22));
  border:1px solid var(--line);position:relative}
.svc-ico::after{content:"";position:absolute;inset:0;background-size:24px;background-position:center;
  background-repeat:no-repeat;opacity:.95}
.ico-server::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><rect x='3' y='4' width='18' height='6' rx='2'/><rect x='3' y='14' width='18' height='6' rx='2'/><circle cx='7' cy='7' r='1' fill='%2322d3ee'/><circle cx='7' cy='17' r='1' fill='%2322d3ee'/></svg>")}
.ico-cloud::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><path d='M7 18a4 4 0 010-8 5 5 0 019.6-1.4A4 4 0 0117 18H7z'/></svg>")}
.ico-1c::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><rect x='3' y='3' width='18' height='18' rx='3'/><path d='M9 8v8M9 8L7 9.5'/></svg>")}
.ico-cam::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><path d='M2 7l13 3 1-4 5 1.5M2 7v8h12M2 7l12 3'/><circle cx='8' cy='19' r='2'/></svg>")}
.ico-web::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><circle cx='12' cy='12' r='9'/><path d='M3 12h18M12 3a14 14 0 010 18M12 3a14 14 0 000 18'/></svg>")}
.ico-box::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><path d='M21 8l-9-5-9 5 9 5 9-5zM3 8v8l9 5 9-5V8M12 13v8'/></svg>")}
.ico-auto::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><rect x='3' y='3' width='7' height='7' rx='1'/><rect x='14' y='3' width='7' height='7' rx='1'/><rect x='3' y='14' width='7' height='7' rx='1'/><path d='M17.5 14v6M14.5 17h6'/></svg>")}
.ico-staff::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><circle cx='9' cy='7' r='3'/><path d='M3 20c0-3.3 2.7-6 6-6s6 2.7 6 6'/><circle cx='18' cy='8' r='2.5'/><path d='M15 20c0-2.2 1.3-4 3-4.5'/></svg>")}
.ico-api::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><path d='M8 6H4a1 1 0 00-1 1v4a1 1 0 001 1h4M16 6h4a1 1 0 011 1v4a1 1 0 01-1 1h-4M8 12h8M12 6v12'/></svg>")}
.ico-chat::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2325d366' stroke-width='2' viewBox='0 0 24 24'><path d='M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z'/><circle cx='9' cy='11' r='1' fill='%2325d366'/><circle cx='12' cy='11' r='1' fill='%2325d366'/><circle cx='15' cy='11' r='1' fill='%2325d366'/></svg>")}
.svc-bc{border-color:rgba(37,211,102,.35)!important;background:linear-gradient(145deg,var(--card),rgba(37,211,102,.05))!important}
.svc h3{font-size:19px;margin-bottom:8px}
.svc p{color:var(--muted);font-size:15px}

/* ===== Advantages ===== */
.adv{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;position:relative}
.adv b{font-size:38px;font-weight:800;color:rgba(59,130,246,.35);line-height:1}
.adv h3{font-size:18px;margin:10px 0 6px}
.adv p{color:var(--muted);font-size:14.5px}

/* ===== Process ===== */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.step{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);position:relative}
.step-n{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:11px;
  font-weight:800;font-size:18px;color:#03142b;margin-bottom:14px;
  background:linear-gradient(135deg,var(--brand),var(--brand-2))}
.step h3{font-size:17px;margin-bottom:6px}
.step p{color:var(--muted);font-size:14.5px}

/* ===== About ===== */
.about-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.about-text h2{font-size:clamp(26px,3.2vw,34px);font-weight:800;margin-bottom:16px}
.about-text p{color:var(--muted);margin-bottom:14px;font-size:16px}
.checklist{list-style:none;margin-top:18px;display:grid;gap:10px}
.checklist li{position:relative;padding-left:30px;color:var(--text);font-size:15px}
.checklist li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:6px;
  background:linear-gradient(135deg,var(--brand),var(--brand-2))}
.checklist li::after{content:"";position:absolute;left:6px;top:6px;width:5px;height:9px;
  border:solid #03142b;border-width:0 2px 2px 0;transform:rotate(45deg)}
.about-figures{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fig{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;text-align:center}
.fig b{display:block;font-size:30px;font-weight:800;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));-webkit-background-clip:text;background-clip:text;color:transparent}
.fig span{color:var(--muted);font-size:13.5px}

/* ===== CTA ===== */
.cta{padding-bottom:100px}
.cta-box{
  display:grid;grid-template-columns:1fr .9fr;gap:44px;
  background:linear-gradient(135deg,var(--surface-2),var(--bg-soft));
  border:1px solid var(--line);border-radius:24px;padding:48px;box-shadow:var(--shadow);
}
.cta-text h2{font-size:clamp(24px,3vw,32px);font-weight:800;margin-bottom:14px}
.cta-text p{color:var(--muted);font-size:16px;margin-bottom:24px}
.cta-contacts{display:flex;flex-direction:column;gap:12px}
.cc{display:flex;align-items:center;gap:11px;font-weight:600;font-size:16px}
.cc-ico{width:34px;height:34px;border-radius:9px;flex:none;
  background:var(--surface);border:1px solid var(--line);position:relative}
.cc-ico::after{content:"";position:absolute;inset:0;background-size:17px;background-position:center;background-repeat:no-repeat}
.ico-phone::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><path d='M22 16.9v3a2 2 0 01-2.2 2 19.8 19.8 0 01-8.6-3 19.5 19.5 0 01-6-6 19.8 19.8 0 01-3-8.7A2 2 0 014.1 2h3a2 2 0 012 1.7c.1 1 .4 2 .7 2.9a2 2 0 01-.5 2.1L8.1 9.9a16 16 0 006 6l1.2-1.2a2 2 0 012.1-.4c.9.3 1.9.6 2.9.7a2 2 0 011.7 2z'/></svg>")}
.ico-mail::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%2322d3ee' stroke-width='2' viewBox='0 0 24 24'><rect x='2' y='4' width='20' height='16' rx='2'/><path d='M2 6l10 7L22 6'/></svg>")}
.ico-wa::after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2325d366'><path d='M17.5 14.4c-.3-.1-1.7-.8-2-1-.2-.1-.4-.1-.6.1s-.7.9-.8 1.1c-.2.1-.3.2-.6 0-.3-.1-1.2-.4-2.3-1.4-.9-.8-1.4-1.7-1.6-2-.2-.3 0-.5.1-.6l.4-.5c.1-.2.2-.3.3-.5 0-.2 0-.4-.1-.5l-.9-2.2c-.2-.6-.5-.5-.6-.5h-.5c-.2 0-.5.1-.7.3C8 8 7.3 8.6 7.3 10s1.1 2.8 1.2 3c.1.2 2 3.2 5 4.4.7.3 1.2.4 1.6.5.7.2 1.3.2 1.8.1.5-.1 1.7-.7 2-1.3.2-.6.2-1.1.1-1.2-.1-.1-.3-.2-.5-.3zm-5.4 7.4h-.1a9.9 9.9 0 01-5.3-1.5l-.4-.2-3.8 1 1-3.7-.2-.4a10 10 0 01-1.5-5.3C1.8 6.3 6.3 1.8 12.1 1.8c2.7 0 5.3 1.1 7.2 3A10 10 0 0122.2 12c0 5.8-4.6 10.3-10.2 10.3zm8.7-19A11.8 11.8 0 0012.1 0C5.5 0 .1 5.4.1 12c0 2.1.6 4.2 1.6 6L0 24l6.3-1.6a12 12 0 005.8 1.5h.1C18.6 23.9 24 18.5 24 12c0-3.2-1.2-6.2-3.4-8.5z'/></svg>")}
.cta-form{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.field{margin-bottom:16px}
.field label{display:block;font-size:13.5px;color:var(--muted);margin-bottom:6px;font-weight:500}
.field input,.field textarea{
  width:100%;background:var(--surface);border:1px solid var(--line);border-radius:10px;
  padding:12px 14px;color:var(--text);font-family:inherit;font-size:15px;transition:.15s;
}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--brand);background:var(--surface-2)}
.field textarea{resize:vertical}
.form-note{margin-top:12px;font-size:12.5px;color:var(--muted);text-align:center}
.form-note.ok{color:var(--accent)}
.form-note.err{color:#f87171}

/* ===== Footer ===== */
.site-footer{background:var(--bg-soft);border-top:1px solid var(--line);padding:54px 0 26px}
.footer-inner{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:32px}
.footer-col h4{font-size:15px;margin-bottom:14px}
.footer-col p{color:var(--muted);font-size:14px;margin-top:10px}
.footer-col a,.footer-col span{display:block;color:var(--muted);font-size:14px;margin-bottom:9px;transition:.15s}
.footer-col a:hover{color:var(--text)}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:36px;padding-top:22px;border-top:1px solid var(--line);
  color:var(--muted);font-size:13px}

/* ===== Responsive ===== */
@media(max-width:960px){
  .hero-inner,.about-inner,.cta-box{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
  .nav{
    position:fixed;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;
    background:var(--bg-soft);border-bottom:1px solid var(--line);
    padding:8px 24px 16px;transform:translateY(-130%);transition:.25s;margin:0;
    overflow-y:auto;max-height:calc(100vh - 68px);
  }
  .nav.open{transform:translateY(0)}
  .nav>a,.nav-drop>a{padding:14px 0;border-bottom:1px solid var(--line);border-radius:0;display:block}
  .nav-drop>a::after{float:right}
  .drop-menu{
    display:none;position:static;background:none;border:none;box-shadow:none;
    padding:0 0 0 16px;
  }
  .drop-menu-inner{background:none;border:none;box-shadow:none;padding:0;display:flex;flex-direction:column}
  .nav-drop.open .drop-menu{display:flex}
  .drop-menu a{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05);border-radius:0}
  .header-cta{margin-left:auto}
  .burger{display:flex}
  .lang-switch{margin:14px 0 4px;align-self:flex-start}
}
@media(max-width:620px){
  .grid-3,.steps,.footer-inner{grid-template-columns:1fr}
  .about-figures{grid-template-columns:1fr 1fr}
  .cta-box{padding:30px 22px}
  .header-cta{display:none}
  .hero{padding:54px 0 64px}
  .section{padding:62px 0}
}
