  :root{
    --bg: #18222d;
    --bg-deep: #002A5E;
    --ignition: #E2622A;
    --line: rgba(255,255,255,0.12);
    --text-dim: #9FB0CC;
    --text-mid: #C7D2E6;
  }
  *{ margin:0; padding:0; box-sizing:border-box; }
  a{ text-decoration:none; color:inherit; }
  ul{ list-style:none; }
 
  footer{
    background:var(--bg);
    background-image:radial-gradient(circle at 8% 0%, rgba(255,255,255,0.05), transparent 40%);
    color:var(--text-mid);
    padding:64px 7% 28px;
    font-family: "Plus Jakarta Sans", sans-serif; }
  }
  .footer-wrap{ max-width:1240px; margin:0 auto; font-family: "Plus Jakarta Sans", sans-serif;}
 
  .footer-top{
    display:grid;
    grid-template-columns:1.3fr 1fr 1fr 1fr 1.15fr;
    gap:40px;
    padding-bottom:44px;
    border-bottom:1px solid var(--line);
  }
 
  .footer-brand img{ height:32px; margin-bottom:18px; filter:brightness(0) invert(1); }
  .footer-brand p{ font-size:13.5px; line-height:1.65; color:var(--text-dim); max-width:32ch; }
 
  .nl-field{ display:flex; max-width:280px; border:1px solid var(--line); border-radius:6px; overflow:hidden; background:rgba(255,255,255,0.04); }
  .nl-field input{
    flex:1; background:none; border:none; padding:11px 12px; font-size:13.5px;
    color:#fff; font-family:inherit;
  }
  .nl-field input::placeholder{ color:var(--text-dim); }
  .nl-field button{
    background:var(--ignition); border:none; padding:0 16px; color:#fff; font-weight:700;
    font-size:13px; cursor:pointer; transition:background 0.15s ease;
  }
  .nl-field button:hover{ background:#C24E1E; }
 
  .footer-social{ display:flex; gap:10px; margin-top:20px; }
  .footer-social a{
    width:33px; height:33px; border:1px solid var(--line); border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    transition:background 0.15s ease, border-color 0.15s ease;
  }
  .footer-social a:hover{ background:var(--ignition); border-color:var(--ignition); }
  .footer-social svg{ width:15px; height:15px; }
 
  .footer-col h4{
    font-family: "Plus Jakarta Sans", sans-serif; font-size:12.5px; font-weight:700; color:#fff;
    text-transform:uppercase; letter-spacing:0.6px; margin-bottom:18px;
  }
  .footer-col ul li{ margin-bottom:12px; }
  .footer-col a{
    font-size:13.5px; color:var(--text-mid); transition:color 0.15s ease;
  }
  .footer-col a:hover{ color:#fff; }
 
  .footer-contact{ margin-top:2px; }
  .footer-contact li{ display:flex; align-items:flex-start; gap:10px; }
  .footer-contact svg{ flex-shrink:0; margin-top:2px; }
 
  .footer-bottom{
    display:flex; justify-content:space-between; align-items:center;
    flex-wrap:wrap; gap:14px;
    padding-top:24px; margin-top:24px;
    font-size:12.5px; color:var(--text-dim);
  }
  .footer-bottom .legal-links{ display:flex; gap:20px; flex-wrap:wrap; }
  .footer-bottom a:hover{ color:#fff; }
  .footer-bottom .badges{ display:flex; gap:10px; align-items:center; }
  .badge{
    border:1px solid var(--line); border-radius:5px; padding:5px 10px;
    font-size:11px; font-weight:600; letter-spacing:0.3px; color:var(--text-dim);
  }
 
  @media (max-width:980px){
    .footer-top{ grid-template-columns:1fr 1fr; }
    .footer-brand{ grid-column:span 2; }
    .footer-bottom{ flex-direction:column; align-items:flex-start; }
  }