/* ============================================================
   DSR Leasing — custom footer (Automotive child theme)
   Everything is scoped under .dsr-footer so it can't collide
   with the Automotive theme or Bootstrap 3 (col-*, .container).
   Brand palette pulled from the live site: navy #0b2b40 + blue #1e6dac.
   Fonts (Open Sans / Yellowtail) are already loaded by the parent theme.
   ============================================================ */

.dsr-footer{
  --bg:#0b2b40; --bg-band:#0e3551; --bg-bar:#071d2c; --panel:#14395a;
  --text:#a9bccf; --text-strong:#ffffff; --muted:#7e93a8;
  --accent:#1e6dac; --accent-hover:#3fa0e0; --accent-strong:#2a86cf;
  --red:#c7081b; --border:rgba(255,255,255,.10); --gold:#fbbc05; --radius:12px;

  /* !important defeats the parent's bare `footer{background:#3d3d3d}` (incl. mobile.css) */
  background:#0b2b40 !important;
  color:var(--text) !important;
  font-family:'Open Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:15px; line-height:1.5; margin:0;
  border-top:3px solid transparent;
  border-image:linear-gradient(90deg,#1e6dac,#2563eb,#1e6dac) 1;
}
.dsr-footer *{box-sizing:border-box;}

/* override parent's `footer p, footer li {color:#fff}` */
.dsr-footer p,.dsr-footer li{color:var(--text);}
.dsr-footer h3,.dsr-footer h4{color:var(--text-strong); margin:0;}
.dsr-footer a{color:var(--text); text-decoration:none; transition:color .15s ease;}
.dsr-footer a:hover{color:var(--accent-hover);}
.dsr-footer a:focus-visible{outline:2px solid var(--accent-hover); outline-offset:3px; border-radius:3px;}
.dsr-footer ul{list-style:none; margin:0; padding:0;}
.dsr-footer img{max-width:100%; height:auto;}

.dsr-footer .dsr-wrap{max-width:1180px; margin:0 auto; padding:0 24px;}

/* 1 · newsletter */
.dsr-footer .dsr-news{background:var(--bg-band); border-bottom:1px solid var(--border);}
.dsr-footer .dsr-news-inner{display:flex; align-items:center; justify-content:space-between; gap:28px; padding-top:26px; padding-bottom:26px; flex-wrap:wrap;}
.dsr-footer .dsr-news-badge{display:inline-block; background:var(--red); color:#fff; font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; padding:3px 9px; border-radius:999px; margin-bottom:9px;}
.dsr-footer .dsr-news h3{font-size:20px; font-weight:700; margin:0 0 4px;}
.dsr-footer .dsr-news p{font-size:14px; margin:0;}
.dsr-footer .dsr-news-form{display:flex; gap:10px; flex:0 1 440px; min-width:280px;}
.dsr-footer .dsr-news-form input{flex:1; background:var(--panel); border:1px solid var(--border); color:var(--text-strong); padding:12px 14px; border-radius:var(--radius); font-size:15px; line-height:1.2; margin:0;}
.dsr-footer .dsr-news-form input::placeholder{color:var(--muted);}
.dsr-footer .dsr-news-form input:focus{outline:2px solid var(--accent-hover); outline-offset:0; border-color:transparent;}
.dsr-footer .dsr-news-form button{background:var(--accent); color:#fff; border:0; font-weight:700; font-size:15px; padding:12px 22px; border-radius:var(--radius); cursor:pointer; transition:background .15s ease; white-space:nowrap; width:auto;}
.dsr-footer .dsr-news-form button:hover{background:var(--accent-strong);}

/* 2 · main grid */
.dsr-footer .dsr-main{display:grid; grid-template-columns:1.7fr 1fr 1fr 1fr 1fr; gap:40px; padding-top:48px; padding-bottom:40px;}
.dsr-footer .dsr-logo{font-family:'Yellowtail','Brush Script MT',cursive; font-size:40px; line-height:1; color:#fff; margin-bottom:16px;}
.dsr-footer .dsr-logo-link{display:inline-block; line-height:0; margin-bottom:16px;}
.dsr-footer .dsr-logo-img{max-height:70px; width:auto;}
/* The brand logo is designed for a white background. If it looks dim/low-contrast on
   the navy footer, uncomment ONE of these to make it read better on dark:
   .dsr-footer .dsr-logo-img{ filter:brightness(0) invert(1); }            // solid white
   .dsr-footer .dsr-logo-img{ background:#fff; padding:8px 10px; border-radius:8px; } // white chip
*/
.dsr-footer .dsr-tagline{font-size:14px; max-width:34ch; margin:0 0 22px;}
.dsr-footer .dsr-contact{display:grid; gap:11px; font-size:14px; font-style:normal;}
.dsr-footer .dsr-contact .dsr-row{display:flex; align-items:flex-start; gap:10px;}
.dsr-footer .dsr-contact .dsr-row svg{flex:0 0 18px; margin-top:2px; color:var(--accent-hover);}
.dsr-footer .dsr-col h4{position:relative; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin:6px 0 18px; padding-bottom:10px;}
.dsr-footer .dsr-col h4::after{content:""; position:absolute; left:0; bottom:0; width:26px; height:2px; background:var(--accent);}
.dsr-footer .dsr-col ul{display:grid; gap:11px;}
.dsr-footer .dsr-col ul li{margin:0;}
.dsr-footer .dsr-col ul a{font-size:14px;}

/* 3 · trust */
.dsr-footer .dsr-trust{border-top:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; padding-top:24px; padding-bottom:24px;}
.dsr-footer .dsr-badges{display:flex; align-items:center; gap:14px; flex-wrap:wrap;}
.dsr-footer .dsr-badge{display:inline-flex; align-items:center; gap:9px; background:var(--panel); border:1px solid var(--border); padding:9px 14px; border-radius:10px; font-size:13px; color:var(--text-strong); font-weight:600;}
.dsr-footer .dsr-badge .dsr-sub{color:var(--muted); font-weight:500;}
.dsr-footer .dsr-stars{display:inline-flex; gap:1px; color:var(--gold);}
.dsr-footer .dsr-stars svg{color:var(--gold);}
.dsr-footer .dsr-pay{display:flex; align-items:center; gap:7px;}
.dsr-footer .dsr-card{width:40px; height:26px; border-radius:5px; background:#fff; display:grid; place-items:center; font-size:9px; font-weight:800; color:#0b2b40; letter-spacing:.02em; border:1px solid rgba(0,0,0,.08);}

/* 4 · brands */
.dsr-footer .dsr-brands{border-top:1px solid var(--border); padding-top:20px; padding-bottom:22px; display:flex; align-items:center; gap:12px; flex-wrap:wrap;}
.dsr-footer .dsr-brands-label{color:var(--muted); font-size:13px; font-weight:600; margin-right:4px;}
.dsr-footer .dsr-chip{display:inline-block; border:1px solid var(--border); color:var(--text); padding:5px 12px; border-radius:999px; font-size:12.5px; text-decoration:none; transition:all .15s ease;}
.dsr-footer a.dsr-chip:hover{color:#fff; border-color:var(--accent); background:rgba(30,109,172,.20);}
.dsr-footer .dsr-chip-more{color:var(--accent-hover); border-color:rgba(63,160,224,.45);}

/* 5 · legal bar */
.dsr-footer .dsr-legal{background:var(--bg-bar); border-top:1px solid var(--border);}
.dsr-footer .dsr-legal-inner{display:flex; align-items:center; justify-content:space-between; gap:18px; flex-wrap:wrap; padding-top:18px; padding-bottom:18px;}
.dsr-footer .dsr-copy,.dsr-footer .dsr-copy p{color:var(--muted); font-size:13px; margin:0;}
.dsr-footer .dsr-copy a{color:var(--text);}
.dsr-footer .dsr-legal-nav{display:flex; align-items:center; gap:18px; flex-wrap:wrap; list-style:none; margin:0; padding:0;}
.dsr-footer .dsr-legal-nav li{margin:0;}
.dsr-footer .dsr-legal-nav a{color:var(--text); font-size:13px;}
.dsr-footer .dsr-legal-nav a:hover{color:var(--accent-hover);}
.dsr-footer .dsr-social{display:flex; gap:10px;}
.dsr-footer .dsr-social a{width:36px; height:36px; border-radius:50%; background:var(--panel); border:1px solid var(--border); display:grid; place-items:center; color:var(--text); transition:all .15s ease;}
.dsr-footer .dsr-social a:hover{background:var(--accent); color:#fff; border-color:var(--accent); transform:translateY(-2px);}

/* 6 · disclaimer */
.dsr-footer .dsr-disclaimer{background:var(--bg-bar);}
.dsr-footer .dsr-disclaimer .dsr-wrap{padding-bottom:26px;}
.dsr-footer .dsr-disclaimer p{color:var(--muted); font-size:11.5px; line-height:1.6; margin:0;}

/* responsive */
@media (max-width:960px){
  .dsr-footer .dsr-main{grid-template-columns:1fr 1fr; gap:34px;}
  .dsr-footer .dsr-brand{grid-column:1 / -1;}
}
@media (max-width:560px){
  .dsr-footer .dsr-main{grid-template-columns:1fr;}
  .dsr-footer .dsr-news-inner{flex-direction:column; align-items:flex-start;}
  .dsr-footer .dsr-news-form{width:100%; flex:1 1 auto;}
  .dsr-footer .dsr-legal-inner{flex-direction:column; align-items:flex-start;}
}
