/* Driveway Proposals — theme layer for the supporting pages (2026-09-28).
   Loaded AFTER a page's own <style>, so it re-skins the existing components
   (same content, same class names) in the look of the redesigned home page:
   Plus Jakarta Sans, navy + bright blue, pill buttons, rounder cards.
   The shared header (.dp-nav) and footer (.dp-foot) live here too, scoped by
   their own class names so no page's older rules can reach them. */

:root{
  --ink:#10223F;
  --ink-soft:#566A87;
  --paper:#ffffff;
  --bg:#ffffff;
  --line:#DCE6F5;
  --brand:#0B1F3A;
  --brand-dark:#07162B;
  --brand-soft:#EAF2FE;
  --accent:#1760E8;
  --accent-dark:#0F4FC7;
  --radius:18px;
  --dp-sky:#EAF2FE;
  --dp-sky2:#F4F8FE;
}
body{
  font-family:'Plus Jakarta Sans',system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
  background:var(--bg);
  color:var(--ink);
}
h1,h2,h3{color:var(--brand);letter-spacing:-.02em;font-weight:800;}
h3{font-weight:700;}

/* ---------- Buttons ---------- */
.btn{border-radius:999px;font-weight:700;padding:12px 24px;transition:background .15s,transform .15s;}
.btn-primary{background:var(--accent);color:#fff;box-shadow:0 8px 20px -10px rgba(23,96,232,.7);}
.btn-primary:hover{background:var(--accent-dark);}
.btn-ghost{border:2px solid var(--accent);color:var(--accent);background:#fff;}
.btn-ghost:hover{background:var(--dp-sky);border-color:var(--accent);}

/* ---------- Page sections ---------- */
.hero,.hiw-hero{background:linear-gradient(180deg,#F3F8FF 0%,#fff 100%);padding-top:48px;}
.hero-box{border-radius:26px;border-color:var(--line);box-shadow:0 30px 60px -40px rgba(15,50,110,.35);}
.hero h1{font-size:clamp(2rem,4.6vw,3.3rem);}
section.alt,.hiw-part.alt{background:var(--dp-sky2);border-color:var(--line);}
.section-head h2{font-size:clamp(1.7rem,3.4vw,2.5rem);}

/* cards */
.card,.step,.proposal,.wins-box,.hub-card,.quote-card,.doc{border-radius:var(--radius);border-color:var(--line);}
.step{padding:28px 22px;}
.step .n{background:var(--accent);}
.step-sep{background:var(--accent);opacity:.35;}
.wins-box b{color:var(--accent);}

/* pricing */
.price-card{border:1px solid var(--line);border-radius:26px;box-shadow:0 30px 60px -40px rgba(10,30,70,.45);}
.price-amt{color:var(--brand);font-size:3.2rem;}
.price-list li:before{color:var(--accent);}

/* FAQ accordions */
details{border-radius:14px;border-color:var(--line);}
summary,details summary{color:var(--brand);}

/* final call to action */
.final-cta{background:radial-gradient(ellipse at top,rgba(23,96,232,.55),rgba(23,96,232,0) 60%),var(--brand);border-radius:26px;}
.final-cta p{color:#B9C8E2;}
.final-cta .btn-primary{background:var(--accent);}
.final-cta .btn-primary:hover{background:var(--accent-dark);}

/* small shared bits */
.lead{color:var(--ink-soft);}
.cta{border-radius:var(--radius);}
.totals .row.deposit{color:var(--accent);}

/* ---------- Shared header ---------- */
header.dp-nav{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-bottom:1px solid #EEF2F8;}
header.dp-nav .dp-wrap{max-width:1180px;margin:0 auto;padding:0 24px;height:76px;display:flex;align-items:center;gap:28px;}
header.dp-nav a{text-decoration:none;}
.dp-brand{display:flex;align-items:center;gap:10px;color:var(--brand)!important;}
.dp-brand img{height:50px;width:auto;display:block;}
.dp-word{font-weight:800;font-size:21px;line-height:.95;letter-spacing:-.02em;color:var(--brand);}
.dp-word span{display:block;color:var(--accent);}
.dp-links{display:flex;gap:26px;margin-left:auto;font-weight:600;font-size:15px;}
.dp-links a{color:var(--ink)!important;}
.dp-links a:hover{color:var(--accent)!important;}
.dp-cta{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#fff!important;font-weight:700;font-size:15px;border-radius:999px;padding:11px 22px;box-shadow:0 8px 20px -10px rgba(23,96,232,.7);white-space:nowrap;}
.dp-cta:hover{background:var(--accent-dark);}
.dp-cta::after{content:"→";}

/* ---------- Shared footer ---------- */
footer.dp-foot{background:#07162B;color:#9AB0D2;padding:40px 0;font-size:14px;text-align:left;margin-top:0;}
footer.dp-foot a{color:#9AB0D2;text-decoration:none;}
footer.dp-foot a:hover{color:#fff;}
footer.dp-foot .dp-wrap{max-width:1180px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:28px;flex-wrap:wrap;}
footer.dp-foot .dp-brand img{height:44px;background:#fff;border-radius:10px;padding:3px;}
footer.dp-foot .dp-word{color:#fff;}
footer.dp-foot .dp-word span{color:#5B9BFF;}
footer.dp-foot nav{display:flex;gap:22px;margin-left:auto;flex-wrap:wrap;}
.dp-fine{width:100%;border-top:1px solid #1B2E4B;padding-top:18px;margin-top:6px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:13px;}
.dp-fine .dp-stripe{background:#fff;border-radius:6px;padding:4px;line-height:0;}
.dp-fine .dp-stripe img{display:block;}

@media (max-width:980px){
  .dp-links{display:none;}
  header.dp-nav .dp-cta{margin-left:auto;}
}
@media (max-width:560px){
  header.dp-nav .dp-wrap{height:64px;padding:0 16px;gap:12px;}
  .dp-brand img{height:40px;}
  .dp-word{font-size:17px;}
  .dp-cta{padding:10px 16px;font-size:14px;}
  footer.dp-foot .dp-wrap{padding:0 16px;}
  footer.dp-foot nav{margin-left:0;}
}

/* How it works: step numbers in the new blue */
.hiw-num{background:var(--accent);}
