*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#0f172a;background:#fff;line-height:1.6}a{color:#1d4ed8;text-decoration:none}a:hover{text-decoration:underline}.container{width:min(1180px,calc(100% - 32px));margin:0 auto}
.site-header{
position:sticky;
top:0;
z-index:20;
background:#ffffff;
border-bottom:1px solid #e2e8f0;
}.nav-wrap{
display:flex;
align-items:center;
justify-content:space-between;
gap:24px;
padding:12px 0;
}.brand{display:flex;align-items:center;gap:12px;color:#020617;font-weight:700}.brand:hover{text-decoration:none}
.brand-logo{
  max-height: 55px;
  display: block;
}.brand-text{font-weight:800;letter-spacing:.02em}.nav{
  display: flex;
  align-items: center;
  gap: 18px;
}.nav a{
  color: #334155;
  font-weight: 600;
  text-decoration: none;
}.hero{background:linear-gradient(135deg,#020617 0%,#0f172a 45%,#0b3b8f 100%);color:#fff;padding:64px 0}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}.eyebrow{display:inline-block;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#60a5fa}.eyebrow-light{color:#bfdbfe}.hero h1,.section-head h2,h2{line-height:1.15;margin:.3em 0}.hero h1{font-size:clamp(2.1rem,4.4vw,3.6rem)}.lead{font-size:1.1rem;color:#dbeafe;max-width:740px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin:28px 0}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:14px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:.2s}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2)}.btn-secondary:hover{background:rgba(255,255,255,.18)}.btn-dark{background:#020617;color:#fff}.btn-dark:hover{background:#0f172a}.hero-points,.grid-3,.contact-grid,.legal-grid,.faq-grid,.grid-2{display:grid;gap:24px}.hero-points{grid-template-columns:repeat(3,1fr);margin-top:22px}.hero-points div{padding:16px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08);text-align:center}.grid-3{grid-template-columns:repeat(3,1fr)}.contact-grid,.legal-grid,.grid-2{grid-template-columns:repeat(2,1fr)}.faq-grid{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;box-shadow:0 20px 50px rgba(2,6,23,.08)}.feature-card,.service-card,.contact-card,.faq-card,.content-card,.form-card{padding:26px}.section{padding:72px 0}.section-white{background:#fff}.section-soft{background:#f8fafc}.section-head{max-width:820px;margin-bottom:30px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start}.stack-list{display:grid;gap:14px;margin-top:24px}.stack-item{padding:16px 18px;border-radius:18px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 10px 30px rgba(2,6,23,.04)}.dark-card{padding:28px;background:#020617;color:#fff;border-color:#0f172a}.timeline{display:grid;gap:14px;margin-top:22px}.timeline-item{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1)}.contact-highlight-grid{align-items:stretch}.contact-visual{overflow:hidden;min-height:420px;padding:0}.contact-image{display:block;width:100%;height:100%;min-height:420px;object-fit:cover}.contact-image-placeholder{display:flex;align-items:center;justify-content:center;padding:36px;background:linear-gradient(135deg,#dbeafe 0%,#eff6ff 45%,#bfdbfe 100%);color:#0f172a;height:100%;min-height:420px}.content-flow{display:grid;gap:22px;max-width:960px}.contact-form label{display:block;font-size:.95rem;font-weight:700;margin-bottom:8px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:14px 16px;border:1px solid #cbd5e1;border-radius:14px;font:inherit;background:#fff}.contact-form textarea{min-height:160px;resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.15)}.checkbox-row{display:flex !important;gap:10px;align-items:flex-start;margin:18px 0}.checkbox-row input{width:auto;margin-top:3px}.hidden-field{position:absolute;left:-9999px}.alert{padding:14px 16px;border-radius:14px;margin:16px 0 20px}.alert-success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}.alert-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.legal-box{padding:28px;border-radius:24px;background:#fff;border:1px solid #e2e8f0}.legal-box-white{background:#f8fafc}.policy-block+.policy-block{margin-top:18px}.site-footer{background:#020617;color:#cbd5e1;padding:34px 0}.site-footer a{color:#cbd5e1}.footer-wrap{display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:24px;align-items:start}.footer-links{display:grid;gap:8px}.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:30;background:rgba(255,255,255,.98);border-top:1px solid #e2e8f0;box-shadow:0 -12px 30px rgba(2,6,23,.08)}.cookie-wrap{display:flex;justify-content:space-between;gap:20px;padding:16px 0;align-items:center}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px}.cookie-actions .btn-secondary{color:#0f172a;border-color:#cbd5e1;background:#fff}.cookie-actions .btn-secondary:hover{background:#f8fafc}p{margin:.5em 0 0}h3{margin:.2em 0 .4em}@media (max-width:980px){.hero-grid,.split-grid,.footer-wrap{grid-template-columns:1fr}.grid-3,.contact-grid,.legal-grid,.hero-points,.faq-grid,.grid-2{grid-template-columns:1fr}.cookie-wrap{flex-direction:column;align-items:flex-start}}.form-card h2 {color: #020617;}.form-card p {color: #475569;}.form-card label {color: #0f172a;}.form-card .eyebrow {color: #60a5fa;}.nav {
  display: flex;
  gap: 20px;
}

.nav-toggle{
  display: none;
  background: none;
  border: 0;
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
  color: #0f172a;
  padding: 6px 10px;
}


/* Mobile */
@media (max-width: 900px){
  .nav-toggle{
    display: block;
  }

  .nav{
    display: none;
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 280px;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(2,6,23,0.12);
    padding: 10px 0;
  }

  .nav.active{
    display: flex;
  }

  .nav a{
    width: 100%;
    padding: 12px 18px;
  }
}