
:root {
  --primary: #14D6A4;
  --primary-2: #22D3EE;
  --primary-3: #6366F1;
  --dark: #0B0F14;
  --light: #F7FAF9;
  --accent: #1F2937;
  --grad: linear-gradient(135deg, var(--primary), var(--primary-2) 55%, var(--primary-3));
}
* { box-sizing: border-box; }
html, body { margin:0; padding:0; background: var(--light); color:#0f172a; font-family: Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial; }
a { color: #2563eb; text-decoration: underline; }
.header { position: sticky; top:0; backdrop-filter: blur(10px); background: rgba(255,255,255,0.72); border-bottom:1px solid #e5e7eb; z-index: 30; }
.container { max-width: 1140px; margin: 0 auto; padding: 20px; }
.nav { display:flex; align-items:center; justify-content: space-between; gap:16px; }
.nav-links a { margin-left: 16px; font-weight: 700; text-decoration: none; color:#0f172a; opacity:.9; }
.nav-links a:hover { opacity:1; }
.lang-toggle button { border:1px solid #d1d5db; background:white; padding:8px 10px; border-radius: 12px; cursor:pointer; }
.hero { position: relative; display:grid; grid-template-columns: 1.1fr 0.9fr; gap: 48px; align-items:center; padding: 52px 20px 28px; }
.hero::before {
  content:""; position:absolute; inset:0; z-index:-1;
  background-image: url('/assets/pattern.svg');
  background-size: cover; background-position: center;
  opacity: 0.5;
}
.badge { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; font-size: 12px; font-weight:800;
  color:#065F46; background: #ECFDF5; border: 1px solid #DCFCE7; }
.badge::before { content:"★"; font-size: 12px; }
h1 { font-family: Manrope, Inter, Arial, Helvetica, sans-serif; letter-spacing:-0.02em; font-size: clamp(32px, 3.6vw, 54px); line-height:1.05; margin: 14px 0; }
p.lead { font-size: clamp(16px, 2vw, 20px); color:#374151; }
.hero-card { position:relative; background: rgba(255,255,255,0.86); padding: 26px; border-radius: 18px; border: 1px solid rgba(99,102,241,0.2);
  box-shadow: 0 15px 40px rgba(2,6,23,0.06); }
.hero-card::after {
  content:""; position:absolute; inset:-1px; border-radius: 18px; padding:1px;
  background: var(--grad); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude; pointer-events:none;
}
.form { display:grid; gap:14px; margin-top:12px; }
.input { width:100%; padding:14px 16px; border:1px solid #d1d5db; border-radius: 12px; background:#fff; font-size:16px; }
.input:focus { outline:none; border-color:#94a3b8; box-shadow: 0 0 0 4px rgba(99,102,241,.12); }
.checkbox-row { display:flex; gap:12px; align-items:flex-start; font-size:14px; color:#374151; }
.btn { background: var(--grad); color:white; border: none; padding: 14px 18px; font-weight: 900; border-radius: 12px; cursor: pointer;
  box-shadow: 0 12px 24px rgba(20,214,164,.18), 0 4px 10px rgba(99,102,241,.12); transform: translateY(0); transition: transform .12s ease, box-shadow .2s ease; }
.btn:hover { transform: translateY(-2px); box-shadow: 0 16px 28px rgba(20,214,164,.22), 0 8px 18px rgba(99,102,241,.18); }
.grid-2 { display:grid; grid-template-columns: repeat(2,1fr); gap: 18px; }
.section { padding: 40px 20px; }
.card { background:white; border: 1px solid #e5e7eb; border-radius: 16px; padding: 20px; box-shadow: 0 10px 30px rgba(0,0,0,0.05); }
.footer { background:#0b0f14; color:#d1d5db; padding: 44px 20px; }
.footer a { color:#9cc4ff; text-decoration: underline; }
.kv { display:grid; grid-template-columns: 1fr 2fr; gap:10px; }
.small { font-size: 12px; color:#6b7280; }
.cookie-banner { position: fixed; bottom: 20px; right:20px; width: min(520px, 92vw); background:white; border:1px solid #e5e7eb;
  border-radius:16px; padding:16px; box-shadow: 0 20px 40px rgba(0,0,0,.1); z-index:50; display:none; }
.cookie-actions { display:flex; gap:10px; justify-content:flex-end; margin-top: 10px; flex-wrap: wrap; }
.btn-outline { background:white; border:1px solid #d1d5db; }
@media (max-width: 900px) {
  .hero { grid-template-columns: 1fr; }
}
