/* Davis RV Sales — brighter luxury 2026 visual system */
:root{
  --ink:#f5f0e8;
  --panel:#fffaf2;
  --panel2:#ffffff;
  --gold:#c59a50;
  --gold2:#9c6d24;
  --ivory:#1b1c1f;
  --muted:#625f59;
  --line:#d9d1c5;
  --nav:#10141b;
  --nav2:#171c24;
  --cream:#f5f0e8;
  --paper:#fffdf8;
  --shadow:0 20px 55px rgba(41,31,15,.10);
}
html{background:var(--cream)}
body{background:var(--cream);color:var(--ivory)}
::selection{background:#d9b56f;color:#111}

/* Branding */
.brand-logo{display:flex!important;align-items:center;flex:0 0 auto;width:190px;max-width:21vw;height:58px;line-height:0}
.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center;filter:drop-shadow(0 2px 10px rgba(0,0,0,.25))}
.footer .brand-logo{width:250px;max-width:100%;height:80px;margin-bottom:16px}

/* Header stays dark so the gold logo remains premium while the site body is much brighter. */
.topbar{background:#0b0f15;color:#d7d2c9;border-color:#2a2f37}
.topbar a{color:#e3d4b8}
.topbar a:hover{color:#fff}
.nav{background:rgba(15,19,26,.97);border-color:#2a2f37;box-shadow:0 8px 28px rgba(0,0,0,.16)}
.nav .links,.mega-toggle{color:#f7f2ea}
.nav .links>a:hover,.mega-toggle:hover{color:#e6c98e}
.menu{color:#fff}
.navcta{background:linear-gradient(135deg,#d3ae65,#b98738);border-color:#d3ae65;color:#111}
.navcta:hover{background:#ead49f}

/* Brighter, cleaner mega menus */
.mega{background:#fffdf8;border:1px solid #d8d0c3;box-shadow:0 32px 90px rgba(27,22,16,.22);padding:28px;gap:26px;color:#1b1c1f}
.mega>div:not(.mega-feature){padding:8px 16px 12px 2px;border-right:1px solid #e4ddd2}
.mega>div:nth-last-child(2){border-right:0}
.mega h3{color:#8b5c18;font-size:.77rem;letter-spacing:.14em;border-bottom:1px solid #e2d8ca;padding-bottom:10px;margin-bottom:8px}
.mega a{color:#4f4d48;padding:7px 0;min-height:38px;font-weight:500}
.mega a:hover{color:#8b5c18;transform:translateX(2px)}
.mega-feature.photo-feature{background:#17191d;border-color:#d0c2a8;border-radius:2px;min-height:310px}
.mega-feature.photo-feature:after{background:linear-gradient(180deg,transparent 24%,rgba(7,9,12,.92) 100%)}
.mega-feature.photo-feature span{color:#f1d08c}
.mega-feature.photo-feature strong,.mega-feature.photo-feature a{color:#fff}

/* Hero */
.hero.ai-home{background-image:linear-gradient(90deg,rgba(8,10,14,.90) 0%,rgba(8,10,14,.68) 44%,rgba(8,10,14,.12) 82%),url('source-tiles/luxury_rvs_at_sunset_overlook.webp');background-size:cover;background-position:center}
.hero .eyebrow,.pagehero .eyebrow{color:#f1cf8a}
.hero h1,.hero p,.pagehero h1{color:#fff;text-shadow:0 3px 22px rgba(0,0,0,.24)}
.hero p{color:#eee8df}
.hero .btn.ghost,.pagehero .btn.ghost{color:#fff;border-color:#e2c17d;background:rgba(0,0,0,.18);backdrop-filter:blur(6px)}
.hero .btn.ghost:hover,.pagehero .btn.ghost:hover{background:#fff;color:#111;border-color:#fff}
.pagehero.dynamic{background-image:linear-gradient(90deg,rgba(10,12,16,.88),rgba(10,12,16,.38)),var(--page-image)!important;background-size:cover!important;background-position:center!important}
.pagehero.dynamic p{color:#f0eae2}

/* Search bar */
.searchbar{background:#fff;box-shadow:0 18px 55px rgba(49,38,23,.16);border:1px solid #e1d8cb}
.searchbar .field label{color:#74685a}
.searchbar .field select,.searchbar .field input{color:#171717;border-color:#cfc4b5}
.searchbar .btn{background:#171c24;color:#fff;border-color:#171c24}
.searchbar .btn:hover{background:#8b5c18;border-color:#8b5c18;color:#fff}

/* Core page surface */
.section,.content,.quick-answer{background:var(--cream)}
.section.alt,.content-depth,.calculator-section,.link-directory-section{background:#eee7dc}
.head h2,.content h1,.content h2,.editorial-section h2,.faq-copy h2,.calculator-intro h2{color:#1a1b1e}
.head p,.editorial p,.copy p,.copy li,.editorial-copy>p,.editorial-copy li,.calculator-intro p{color:var(--muted)}
.eyebrow{color:#9a6c26}
.page-image,.section-visual,.directory-visual,.calculator-visual,.faq-visual{border-color:#d9d1c5;background:#fff;box-shadow:var(--shadow)}
.page-image img,.section-visual img,.directory-visual img,.calculator-visual img,.faq-visual img{filter:saturate(.96) contrast(1.02)}
.editorial-section.with-visual{border-color:#ddd5c9}

/* Cards */
.card,.subsection,.link-group,.empty-state{background:#fff;border-color:#d9d1c5;box-shadow:0 10px 28px rgba(37,29,18,.05)}
.card:hover{border-color:#c59a50;box-shadow:0 16px 35px rgba(52,36,17,.10)}
.card h3,.subsection h3,.link-group h3{color:#1b1c1f}
.card p,.subsection p,.link-group a{color:#666159}
.card .arrow,.card .num{color:#9a6c26}
.visual-card>img{background:#ddd}
.image-card{border-color:#d4cabb;box-shadow:var(--shadow);background:#191c21}
.image-card:after{background:linear-gradient(180deg,transparent 30%,rgba(9,11,14,.88) 100%)}
.image-card h3{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.4)}
.image-card span{color:#f1cf8a}

/* RV-type tiles */
.type-grid{border-color:#d7cec2;gap:14px;border:0}
.type-card{background:#fff;border:1px solid #d7cec2;box-shadow:0 10px 28px rgba(38,29,18,.06);min-height:250px}
.type-card:hover{background:#fff;border-color:#c59a50;box-shadow:0 15px 34px rgba(38,29,18,.10)}
.type-card>div{background:#fff}
.type-card strong{color:#1b1c1f}
.type-card small{color:#746b60}

/* Areas */
.area-links{border:0;gap:10px}
.area-links a{background:#fff;border:1px solid #d8d0c4;color:#282522;box-shadow:0 6px 20px rgba(35,28,18,.04)}
.area-links a:hover{background:#f6eddd;color:#8b5c18;border-color:#c59a50}

/* Inventory */
.unit{background:#fff;border-color:#d8d0c4;box-shadow:0 9px 26px rgba(36,28,19,.06)}
.unitbody{color:#222}.unit .tag{color:#8b5c18}.unit .meta{color:#716a62}.unit .price{color:#171717;font-weight:700}

/* Long-form + FAQ */
.quick-answer .copy{background:#fff;border-left-color:#c59a50;box-shadow:0 10px 28px rgba(37,29,18,.05)}
.quick-answer p{color:#292724}
.faq details{border-color:#d8d0c4}
.faq summary{color:#24211e;font-weight:600}
.faq details p{color:#656058}
.article-meta{color:#746e65}

/* Forms */
.form input,.form textarea,.form select,.rv-calculator input{background:#fff;color:#1c1c1c;border-color:#d4cbbf}
.form input:focus,.form textarea:focus,.form select:focus,.rv-calculator input:focus{border-color:#b4863e}
.notice{background:#fff;border-color:#c59a50}

/* Buttons */
.btn{background:linear-gradient(135deg,#d4af69,#bd8e43);border-color:#c59a50;color:#111;box-shadow:0 7px 18px rgba(142,102,38,.15)}
.btn:hover{background:#e9d09b;transform:translateY(-2px)}
.btn.ghost{background:transparent;color:#222;border-color:#b88a43;box-shadow:none}
.btn.ghost:hover{background:#171c24;color:#fff;border-color:#171c24}

/* CTA + footer */
.cta{background:linear-gradient(135deg,#d8b46d,#c09045);color:#121212;box-shadow:0 20px 55px rgba(106,75,27,.16)}
.cta .btn{background:#111720;color:#fff;border-color:#111720}
.footer{background:#0f141b;color:#eee8df;border-color:#242a33}
.footer p{color:#c7c1b7}.footer h4{color:#e3c47f}.footer a{color:#c9c2b7}.footer a:hover{color:#fff}.legal{color:#8f908f;border-color:#2b3139}
.footer .brand-logo img{filter:drop-shadow(0 2px 10px rgba(0,0,0,.4))}

/* Contact image and directory */
.contact-details:before{border-color:#d8d0c4;box-shadow:var(--shadow)}
.link-group a:hover{color:#8b5c18;border-color:#c59a50}

/* Mobile */
@media(max-width:900px){
  .brand-logo{width:170px;max-width:55vw;height:56px}
  .nav.open .links{background:#121720;border-top:1px solid #2c323b}
  .mega{background:#fffdf8;color:#222;border-radius:0;padding:18px}
  .mega>div:not(.mega-feature){border-right:0;border-bottom:1px solid #e1d9ce;padding-bottom:12px}
  .mega-toggle{color:#fff}
}
@media(max-width:620px){
  .brand-logo{width:150px;height:48px}
  .section,.content{padding-top:68px;padding-bottom:68px}
  .type-grid{gap:10px}
  .type-card{min-height:220px}
}

/* 2026 SEO + crawlability + image delivery refinements */
.hero.has-image,.pagehero.dynamic{position:relative;isolation:isolate;overflow:hidden;background:#111827!important}
.hero-media,.pagehero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.hero-shade,.pagehero-shade{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(90deg,rgba(7,8,10,.90) 0%,rgba(7,8,10,.70) 43%,rgba(7,8,10,.20) 76%)}
.pagehero-shade{background:linear-gradient(90deg,rgba(10,12,16,.88),rgba(10,12,16,.38))}
.hero>.wrap,.pagehero.dynamic>.wrap{position:relative;z-index:1}
.breadcrumbs{background:#f7f4ee;border-bottom:1px solid #ddd5c7;color:#4f493f;font-size:.82rem}
.breadcrumbs ol{list-style:none;margin:0;padding:12px 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.breadcrumbs li{display:flex;align-items:center;gap:8px}.breadcrumbs li:not(:last-child)::after{content:'/';color:#9b927f}
.breadcrumbs a{text-decoration:none;color:#5b5143}.breadcrumbs a:hover{color:#8b6424;text-decoration:underline}.breadcrumbs span[aria-current="page"]{color:#766c5d}
.contextual-links{padding-top:72px;padding-bottom:72px}.contextual-links .head{margin-bottom:28px}
.context-link-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.context-link-grid a{min-height:92px;padding:22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--panel);font-weight:600;line-height:1.35}
.context-link-grid a span{color:var(--gold);font-size:1.2rem}.context-link-grid a:hover{background:var(--panel2);color:var(--gold2)}
@media(max-width:1000px){.context-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.context-link-grid{grid-template-columns:1fr}.breadcrumbs{font-size:.76rem}.contextual-links{padding-top:54px;padding-bottom:54px}}
