/* DriveQuoteUSA V3 additions. Loaded after site.css for a reversible upgrade. */
h1 { font-size: clamp(2.55rem, 2.5vw, 5rem); }
.section-kicker { margin: 0 0 .65rem; color: var(--blue-dark); font-size: .76rem; font-weight: 900; letter-spacing: .13em; text-transform: uppercase; }
.comparison-band { background: #f4f9f7 !important; }
.local-finder-section { padding-block: clamp(2.2rem,5vw,4rem); background: var(--navy) !important; color: #dcebed; }
.local-finder-section h2, .local-finder-section .section-kicker { color: var(--white); }
.local-finder { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr); align-items: center; gap: clamp(1.5rem,5vw,4rem); }
.zip-router { padding: 1.35rem; border: 1px solid rgba(255,255,255,.2); border-radius: var(--radius); background: rgba(255,255,255,.09); }
.zip-router label { color: var(--white); }
.zip-router .btn { width: 100%; margin-top: .8rem; border-color: var(--gold); background: var(--gold); color: var(--navy); }
.zip-router .tool-result { margin-bottom: 0; color: var(--ink); font-size: .92rem; }
.choice-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin: 1.6rem 0 2rem; }
.choice { position: relative; min-height: 230px; padding: 1.35rem; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); }
.choice-number { display: inline-block; margin-bottom: 2rem; color: var(--blue); font-size: .78rem; font-weight: 900; letter-spacing: .13em; }
.choice h3 { font-size: 1.2rem; }
.choice p { margin-bottom: 0; color: var(--muted); font-size: .94rem; }
.compare-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; margin-block: 1.6rem; }
.compare-panel { padding: clamp(1.25rem,3vw,2rem); border: 1px solid #93c9c3; border-radius: var(--radius); background: #ecfaf6; }
.compare-panel.caution { border-color: #e7c577; background: #fff8e9; }
.check-list { margin: .8rem 0 0; padding: 0; list-style: none; }
.check-list li { position: relative; margin: .55rem 0; padding-left: 1.6rem; }
.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--blue); font-weight: 900; }
.caution .check-list li::before { content: "?"; color: #9b6800; }
.scenario-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-block: 1.6rem; }
.scenario { padding: 1.35rem; border: 1px solid var(--line); border-radius: 16px; background: var(--white); box-shadow: 0 8px 24px rgba(16,47,68,.05); }
.scenario h3 { font-size: 1.13rem; }
.scenario p { margin-bottom: 0; color: var(--muted); font-size: .94rem; }
.action-panel { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(260px,.75fr); gap: 1.5rem; align-items: center; margin-top: 1.8rem; padding: clamp(1.35rem,4vw,2.25rem); border-radius: var(--radius); background: var(--navy); color: #dcebed; }
.action-panel h2, .action-panel h3, .action-panel .section-kicker { color: var(--white); }
.action-panel p:last-child { margin-bottom: 0; }
.action-links { display: grid; gap: .55rem; }
.action-links a { display: block; padding: .72rem .85rem; border: 1px solid rgba(255,255,255,.24); border-radius: .7rem; background: rgba(255,255,255,.08); color: #c8f1e8; font-weight: 800; text-decoration: none; }
.action-links a:hover, .action-links a:focus-visible { background: var(--white); color: var(--navy); }
.callout { margin: 1.5rem 0; padding: 1.2rem 1.3rem; border-left: 5px solid var(--gold); border-radius: 0 .8rem .8rem 0; background: #fff8e9; }
.context-note { padding: .9rem 1rem; border-radius: .7rem; background: #e7f4f1; color: #294d55; }
.learning-path { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: .9rem; margin-top: 1.7rem; }
.learning-path article { padding: 1.15rem; border-top: 5px solid var(--aqua); border-radius: 0 0 16px 16px; background: var(--white); box-shadow: 0 8px 22px rgba(16,47,68,.06); }
.learning-path article > span { display: inline-grid; width: 2rem; height: 2rem; place-items: center; margin-bottom: 1rem; border-radius: 50%; background: var(--navy); color: var(--white); font-weight: 900; }
.learning-path h3 { font-size: 1.05rem; }
.learning-path p, .learning-path li { font-size: .88rem; }
.learning-path ul { padding-left: 1.1rem; }
.option-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; margin: 1.2rem 0; }
.option-list label { display: flex; min-height: 58px; grid-template-columns: auto 1fr; align-items: center; gap: .65rem; padding: .8rem; border: 1px solid var(--line); border-radius: .75rem; background: #f8fbfa; color: var(--ink); font-size: .94rem; }
.option-list input { width: 1.2rem; min-height: 1.2rem; }
.action-strip { padding-top: 0; }
.action-strip .action-panel { margin-top: 0; }
@media (max-width: 860px) {
  .local-finder { grid-template-columns: 1fr; }
  .choice-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .scenario-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .learning-path { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 600px) {
  .tool-grid, .footer-grid, .compare-grid, .action-panel, .option-list { grid-template-columns: 1fr; }
  .choice-grid, .scenario-grid, .learning-path { grid-template-columns: 1fr; }
  .choice { min-height: 0; }
  .choice-number { margin-bottom: 1rem; }
}
