/* Davis RV Sales — final website-only UI and contrast corrections, 21 Sep 2026 */
:root{
  --drv-dark:#0f1720;
  --drv-dark-2:#162536;
  --drv-gold:#c99b4b;
  --drv-gold-light:#efd18c;
  --drv-paper:#fffdf8;
  --drv-cream:#f6f1e8;
  --drv-text:#17212b;
  --drv-muted:#5b6470;
  --drv-line:#ded6ca;
}

/* Global readable text and focus treatment */
body{color:var(--drv-text)}
a{transition:color .2s ease,background-color .2s ease,border-color .2s ease,transform .2s ease}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e3b85d;outline-offset:3px}
.section,.content,.quick-answer{color:var(--drv-text)}
.section p,.content p,.quick-answer p,.section li,.content li{color:var(--drv-muted)}
.section h1,.section h2,.section h3,.section h4,.section h5,.section h6,.content h1,.content h2,.content h3,.content h4,.content h5,.content h6{color:var(--drv-text)}

/* Preserve strong contrast in every dark surface */
.topbar,.nav,.footer,.footer-cta,.contact-hero,.pagehero.dynamic,.hero{color:#fff}
.topbar a,.nav a,.nav button,.footer a,.footer p,.footer span,.footer h4,.footer-cta p,.footer-cta h2,.footer-cta .eyebrow,.contact-hero h1,.contact-hero p,.contact-hero .eyebrow,.pagehero.dynamic h1,.pagehero.dynamic p,.pagehero.dynamic .eyebrow,.hero h1,.hero p,.hero .eyebrow{color:inherit}

/* Buttons: remove dark-on-dark states */
.btn{color:#10151c;background:linear-gradient(135deg,#dfbd75,#c89441);border-color:#c89441}
.btn:hover{color:#111;background:#f0d89e;border-color:#f0d89e}
.btn.ghost{color:#17212b;background:transparent;border-color:#b88739}
.btn.ghost:hover{color:#fff;background:#17212b;border-color:#17212b}
.contact-hero .btn.ghost,.pagehero.dynamic .btn.ghost,.hero .btn.ghost,.footer-cta .btn.ghost{color:#fff!important;background:rgba(255,255,255,.06)!important;border-color:#d8b15f!important}
.contact-hero .btn.ghost:hover,.pagehero.dynamic .btn.ghost:hover,.hero .btn.ghost:hover,.footer-cta .btn.ghost:hover{color:#111!important;background:#fff!important;border-color:#fff!important}
.contact-hero .btn{color:#12171d!important}

/* Contact hero and information strip */
.contact-hero{background:linear-gradient(120deg,#13283c 0%,#1e3a52 62%,#24445e 100%)}
.contact-hero-actions .btn{min-width:177px}
.contact-hero-actions .btn.ghost{min-width:300px;text-align:center}
.contact-info-grid a,.contact-info-grid strong{color:#18344d!important}
.contact-info-grid a:hover{color:#99651f!important}
.contact-page .head p,.contact-page .tab-panel p,.contact-page .contact-faq-grid p{color:#5d6670!important}
.contact-page .tab-link-list a{color:#173a56!important}
.contact-page .tab-link-list a:hover{color:#9b681e!important}
.contact-page .form label{color:#253543!important}
.contact-page .form input,.contact-page .form textarea,.contact-page .form select{color:#192630!important;background:#fff!important}
.contact-page .contact-details a{color:#f3d58f!important}
.contact-page .contact-details p{color:#e1e8ed!important}

/* Footer CTA */
.footer-cta{background:linear-gradient(135deg,#172b3d 0%,#0d1721 100%);border-top:1px solid #304254;padding:58px 0}
.footer-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:42px}
.footer-cta .eyebrow{color:var(--drv-gold-light)!important}
.footer-cta h2{font:400 clamp(2.25rem,4vw,3.8rem)/1.02 'Italiana',Georgia,serif;margin:8px 0 12px;max-width:820px}
.footer-cta p{margin:0;max-width:690px;color:#d7e0e7!important}
.footer-cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.footer-cta-actions .btn{white-space:nowrap}

/* Premium footer */
.footer.footer-premium{background:#0c1219;color:#eef2f5;border-top:1px solid #273440;padding:58px 0 26px}
.footer-topline{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end;padding-bottom:38px;border-bottom:1px solid #293540}
.footer-brand-block .brand-logo{width:245px;height:74px;margin:0 0 18px}
.footer-brand-block p{max-width:560px;margin:0;color:#cbd3d9!important;font-size:1rem}
.footer-contact-block{justify-self:end;text-align:right;max-width:520px}
.footer-kicker{display:block;color:#e4c476!important;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;margin-bottom:8px}
.footer-email{display:inline-block!important;color:#fff!important;font:400 clamp(1.35rem,2.4vw,2rem)/1.1 'Italiana',Georgia,serif!important;margin:0 0 12px!important;border-bottom:1px solid #c6984a;padding-bottom:5px}
.footer-email:hover{color:#f1d795!important}
.footer-meta{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.footer-meta span{color:#aebac3!important;border:1px solid #33424f;border-radius:999px;padding:5px 10px;font-size:.79rem}
.footer-links-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:42px;padding:42px 0 38px}
.footer-links-grid h4{color:#e7c97f!important;font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;margin:0 0 13px}
.footer-links-grid a{display:block;color:#c9d0d5!important;margin:7px 0;line-height:1.45;font-size:.94rem}
.footer-links-grid a:hover{color:#fff!important;transform:translateX(2px)}
.footer-bottom{border-top:1px solid #293540;padding-top:22px;display:flex;justify-content:space-between;gap:24px;color:#8997a2;font-size:.78rem}
.footer-bottom span{color:#8997a2!important}
.footer-bottom a{color:#aeb8c0!important;margin:0!important;text-align:right}
.footer-bottom a:hover{color:#fff!important}

/* Mega menus and content cards: ensure no low-contrast inheritance */
.mega{color:#1c2730!important}
.mega h3{color:#8d5d18!important}
.mega a{color:#4c5358!important}
.mega a:hover{color:#8d5d18!important}
.mega-feature.photo-feature strong,.mega-feature.photo-feature a,.mega-feature.photo-feature span{color:#fff!important}
.mega-feature.photo-feature span{color:#f0cf86!important}
.card,.type-card,.link-group,.subsection,.quick-answer .copy{color:#1d2730}
.card p,.subsection p,.link-group a{color:#5d646a!important}
.card h3,.type-card strong,.subsection h3,.link-group h3{color:#17212a!important}

/* Make form and notification text readable */
.notice{color:#26333d!important;background:#fffaf0!important}
.form .help,.form small,.form .consent{color:#5f6870!important}
.form button.btn{color:#111!important}

@media(max-width:980px){
  .footer-cta-inner{align-items:flex-start;flex-direction:column}
  .footer-cta-actions{justify-content:flex-start}
  .footer-topline{grid-template-columns:1fr;gap:28px;align-items:start}
  .footer-contact-block{justify-self:start;text-align:left}
  .footer-meta{justify-content:flex-start}
  .footer-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .footer-cta{padding:44px 0}
  .footer-cta-actions{width:100%}.footer-cta-actions .btn{flex:1 1 160px}
  .footer-links-grid{grid-template-columns:1fr 1fr;gap:28px 20px}
  .footer-bottom{flex-direction:column}.footer-bottom a{text-align:left}
  .contact-hero-actions .btn,.contact-hero-actions .btn.ghost{width:100%;min-width:0}
}
