/* Top Auto Sales & RV's — brand: black + red, Barlow / Barlow Condensed */
:root{--bg:#050505;--panel:#111;--panel2:#161616;--line:#2a2a2a;--red:#d71920;--red2:#ff3b3b;--tx:#f2f2f2;--mu:#b4b4b4;--ok:#2fbf71;--warn:#f2a900;--r:10px}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font:17px/1.6 'Barlow',system-ui,sans-serif}
body.modal-open{overflow:hidden}
h1,h2,h3,.btn,nav a,.price,.kicker,.badge,.eyebrow{font-family:'Barlow Condensed',Impact,sans-serif;font-style:italic;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
h1{font-size:clamp(2.3rem,6vw,4.4rem);line-height:1;margin:.15em 0}h2{font-size:clamp(1.7rem,4vw,2.5rem);line-height:1.1;margin:0 0 .5em}h3{font-size:1.45rem;line-height:1.15;margin:.15em 0}
a{color:var(--red2)}img{max-width:100%;height:auto}
.w{max-width:1200px;margin:auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:8px 14px;z-index:99}.skip:focus{left:8px}
.meta{color:var(--mu);font-size:.95rem}.small{font-size:.85rem}.center{text-align:center;margin-top:28px}.mt{margin-top:44px}
:focus-visible{outline:3px solid #fff;outline-offset:2px}

/* header */
header{position:sticky;top:0;z-index:20;background:#000e;backdrop-filter:blur(8px);border-bottom:2px solid var(--red)}
.bar{display:flex;align-items:center;gap:16px;padding:8px 20px;max-width:1200px;margin:auto}
.bar img{height:58px;width:auto;display:block}nav[aria-label=Main]{margin-left:auto;display:flex;gap:2px;flex-wrap:wrap}
nav[aria-label=Main] a{color:#fff;text-decoration:none;padding:8px 10px;font-size:1.08rem}nav[aria-label=Main] a:hover,nav[aria-label=Main] a[aria-current]{color:var(--red2)}
.hcall{color:#fff;font-weight:700;text-decoration:none;border:1px solid #fff4;border-radius:6px;padding:6px 12px;white-space:nowrap}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(#ff2d2d,#b50f15);color:#fff!important;text-decoration:none;padding:12px 24px;min-height:48px;border:2px solid #fff3;border-radius:8px;font-size:1.2rem;line-height:1.1;cursor:pointer;text-align:center}
.btn.o{background:none;border-color:#fffa}.btn.alt{background:#fff;color:#000!important;border-color:#fff}.btn:hover{filter:brightness(1.15)}.btn:disabled{opacity:.6;cursor:wait}
.btn.wide{width:100%}
.acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.acts .btn{padding:10px 8px;font-size:1.05rem}
.acts.lg{margin-top:18px}.acts.lg .btn{font-size:1.3rem;min-height:56px}.acts.sec .btn{font-size:1.05rem}
.more{color:var(--red2);font-weight:700;text-decoration:none;font-size:.95rem}

/* hero */
.hero{padding:56px 0;background:radial-gradient(circle at 75% 40%,#5a0b0e 0,#050505 62%)}
.hero .w{display:grid;grid-template-columns:1.15fr .85fr;gap:30px;align-items:center}.hero p{color:var(--mu);font-size:1.15rem;max-width:54ch}
.hero .tag{color:#fff;font:700 clamp(1.2rem,2.6vw,1.6rem)/1.25 'Barlow',sans-serif;margin:.2em 0 .6em}
.eyebrow{color:var(--red2)!important;font-size:1.05rem!important;margin:0}.cta{display:flex;flex-wrap:wrap;gap:10px}
.phero{padding:34px 0 26px;background:radial-gradient(circle at 85% 0,#3d0709 0,#050505 70%);border-bottom:1px solid var(--line)}.phero p{color:var(--mu);max-width:65ch;margin:.3em 0 0;font-size:1.1rem}
.crumb{font-size:.9rem;color:var(--mu);margin-bottom:8px}.crumb a{color:var(--mu)}
.sub{padding:32px 0;background:#0b0b0b;border-bottom:2px solid var(--red)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;text-align:center;color:var(--mu)}.stats b{display:block;font:italic 800 2rem 'Barlow Condensed';color:var(--red2);text-transform:uppercase}

section{padding:52px 0}.alt-bg{background:#0b0b0b}
.shead{display:flex;justify-content:space-between;align-items:baseline;gap:12px}

/* cards */
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}.card .b{padding:16px;display:flex;flex-direction:column;flex:1}.card .acts{margin-top:auto;padding-top:12px}
.cimg{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-bottom:2px solid var(--red);background:#000}.cimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.card:hover .cimg img{transform:scale(1.04)}
.card h3 a{color:inherit;text-decoration:none}.card .more{margin:4px 0 0}
.is-sold .cimg img{filter:grayscale(.8) brightness(.7)}
.ph{display:block;aspect-ratio:4/3;width:100%;height:100%;background:#000 center/45% no-repeat url(/assets/logo-small.png)}.ph.big{border:1px solid var(--line);border-radius:var(--r)}
.kicker{color:var(--mu);font-size:.95rem}
.price{color:var(--red2);font-size:1.75rem;line-height:1.1}.price.big{font-size:clamp(2.2rem,5vw,3rem);margin:4px 0 6px}
.badge{display:inline-block;font-size:.9rem;padding:3px 10px;border-radius:5px;background:var(--ok);color:#001b0b}.badge.pend{background:var(--warn);color:#201500}.badge.sold{background:#777;color:#fff}
.cimg .badge{position:absolute;top:10px;left:10px}
.empty{background:var(--panel);border:1px dashed #444;border-radius:var(--r);padding:26px;text-align:center;color:var(--mu)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.chips a{border:1px solid var(--line);padding:6px 14px;border-radius:99px;color:var(--tx);text-decoration:none;font-size:.95rem;background:var(--panel)}.chips a[aria-current]{background:var(--red);border-color:var(--red)}

/* categories */
.cats{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.cat{position:relative;display:block;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#000;text-decoration:none;color:#fff}
.cat img,.cat .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6;transition:opacity .25s,transform .3s}.cat:hover img{opacity:.8;transform:scale(1.04)}
.cat .cb{position:absolute;left:0;right:0;bottom:0;padding:12px 14px;background:linear-gradient(transparent,#000d 40%)}.cat b{display:block;font:italic 800 1.6rem/1 'Barlow Condensed';text-transform:uppercase}.cat small{color:var(--mu);font-size:.9rem}

/* info boxes */
.two{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.appt,.contact-card,.dcard{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:24px}.appt{border-left:4px solid var(--red)}
.steps{padding-left:1.2em;margin:.5em 0 0}.steps li{margin:6px 0}
.big-contact{font-size:1.25rem;font-weight:700;line-height:2}.big-contact a{color:#fff;text-decoration:none}
details{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px 18px;margin:10px 0}summary{cursor:pointer;font-weight:700}
.prose{max-width:820px}.prose .lead{font-size:1.25rem}
.note{background:#1b1200;border:1px solid #5a4000;border-radius:8px;padding:12px 14px;color:#f6deaa}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}

/* vehicle page */
.listing{padding:24px 0 30px}.lv{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:start}.lv>*{min-width:0}
.gal{position:relative}
.gtrack{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;background:#000;border:1px solid var(--line);border-radius:var(--r);overscroll-behavior-x:contain}.gtrack::-webkit-scrollbar{display:none}
.slide{flex:0 0 100%;margin:0;scroll-snap-align:center}.slide img{display:block;width:100%;aspect-ratio:4/5;max-height:78vh;object-fit:contain;background:#000}
.gnav{position:absolute;top:calc(50% - 60px);width:46px;height:66px;border:0;background:#000b;color:#fff;font-size:2.2rem;cursor:pointer;border-radius:6px}.gnav:hover{background:var(--red)}.prev{left:8px}.next{right:8px}
.gcap{margin:8px 2px 0;color:var(--mu);font-size:.9rem}.gcap a{color:var(--mu)}
.thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 0;scrollbar-width:thin}.thumbs a{flex:0 0 76px;border:2px solid transparent;border-radius:6px;overflow:hidden;opacity:.6}.thumbs a[aria-current],.thumbs a:hover{border-color:var(--red2);opacity:1}.thumbs img{display:block;width:100%;aspect-ratio:1;object-fit:cover}
.info{position:sticky;top:96px}.info h1{font-size:clamp(2rem,4.5vw,3.1rem);margin-top:8px}
.soldnote{background:#222;border-radius:8px;padding:14px;font-weight:700}
.vdetails{padding:10px 0 56px}.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dcard.wide{grid-column:1/-1}.dcard h2{font-size:1.8rem}
.specs{margin:0}.specs div{display:grid;grid-template-columns:minmax(120px,40%) 1fr;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.specs div:last-child{border:0}.specs dt{color:var(--mu)}.specs dd{margin:0;font-weight:600}
.feat{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 18px}.feat li:before{content:"✓ ";color:var(--red2);font-weight:700}
.note-card{background:#0d0d0d;color:var(--mu)}

/* forms */
form{display:grid;gap:12px}form.plain{max-width:560px}
label{display:block;font-weight:600;font-size:.95rem}label>input:not([type=radio]):not([type=checkbox]),label>select,label>textarea,label>.money{margin-top:4px;display:block}
input,select,textarea{width:100%;padding:12px;background:#000;color:#fff;border:1px solid #555;border-radius:7px;font:inherit;font-size:16px;min-height:48px}
input[readonly]{background:#1a1a1a;border-color:#333;color:#ddd}
input[type=radio],input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--red);flex:0 0 auto;margin:0}
.tried :invalid{border-color:var(--red2)}
fieldset{border:0;padding:0;margin:0}legend{font-weight:600;font-size:.95rem;margin-bottom:6px}
.radios{display:flex;flex-wrap:wrap;gap:8px}.radios label{display:flex;align-items:center;gap:8px;border:1px solid #555;border-radius:7px;padding:10px 14px;font-weight:600;cursor:pointer;min-height:48px}.radios label:has(:checked){border-color:var(--red2);background:#2a0607}
.ack{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:.9rem;color:var(--mu)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vbox{display:grid;grid-template-columns:2fr 1fr;gap:12px}.vbox label:only-child{grid-column:1/-1}
.money{position:relative;display:block}.money span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--mu);font-weight:700}.money input{padding-left:28px;font-size:1.15rem;font-weight:700}
.req{color:var(--red2)}.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.ferr{background:#2a0607;border:1px solid var(--red);color:#ffd2d2;border-radius:7px;padding:10px 12px;margin:0}.ferr a{color:#fff}

/* dialogs */
.modal{width:min(640px,100%);max-height:94vh;padding:0;border:1px solid #444;border-radius:14px;background:var(--panel2);color:var(--tx);box-shadow:0 20px 70px #000c}
.modal::backdrop{background:#000c;backdrop-filter:blur(3px)}
.mwrap{padding:24px;position:relative}.mwrap h2{padding-right:40px;margin-bottom:.2em}.mwrap>.meta{margin-top:0}
.mclose{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;border-radius:50%;background:#2a2a2a;color:#fff;font-size:1.8rem;line-height:1;cursor:pointer}.mclose:hover{background:var(--red)}
.fok{text-align:center;padding:20px 6px}.fok p{font-size:1.15rem}.okicon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--ok);color:#001b0b;font-size:2rem!important;font-weight:800;margin:0 auto}
/* no-JavaScript fallback: /page/#viewing shows the form inline */
html:not(.js) dialog:target{display:block;position:static;margin:20px auto}

/* footer */
footer{background:#000;border-top:2px solid var(--red);padding:40px 0 20px;color:var(--mu)}.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:24px}footer h3{color:#fff;font-size:1.2rem}footer a{display:block;color:var(--mu);text-decoration:none;padding:3px 0}footer a:hover{color:#fff}.legal{font-size:.85rem;border-top:1px solid var(--line);margin-top:24px;padding-top:12px}
.mob{display:none}

@media(max-width:900px){.lv,.two,.contact-grid,.dgrid{grid-template-columns:1fr}.info{position:static}.hcall{display:none}}
@media(max-width:800px){
  body{font-size:17px;padding-bottom:64px}
  .hero{padding:32px 0}.hero .w{grid-template-columns:1fr}.hero img{max-width:280px;margin:auto;order:-1}
  .bar{flex-wrap:wrap;padding:6px 12px;gap:6px}.bar img{height:44px}
  nav[aria-label=Main]{margin:0;width:100%;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}nav[aria-label=Main]::-webkit-scrollbar{display:none}nav[aria-label=Main] a{white-space:nowrap;padding:6px 10px;font-size:1.05rem}
  section{padding:38px 0}.listing{padding:12px 0 20px}.w{padding:0 14px}
  .listing .w{padding:0}.listing .crumb{padding:0 14px}.gtrack{border-radius:0;border-left:0;border-right:0}.gnav{display:none}.gcap,.thumbs{padding-left:14px;padding-right:14px}.info{padding:0 14px}
  .slide img{max-height:70vh}
  .mob{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#000;border-top:2px solid var(--red);padding-bottom:env(safe-area-inset-bottom)}
  .mob a{flex:1;text-align:center;padding:14px 6px;color:#fff;font:italic 800 1.15rem 'Barlow Condensed';text-transform:uppercase;text-decoration:none}.mob .hl{background:var(--red)}.mob .hl2{background:#fff;color:#000}
  .modal{max-height:100%;height:100%;max-width:100%;width:100%;margin:0;border-radius:0;border:0}.mwrap{padding:18px 16px 30px}
  .grid{grid-template-columns:1fr}.cats{grid-template-columns:1fr 1fr}.cat b{font-size:1.3rem}
}
@media(max-width:460px){.row2,.vbox{grid-template-columns:1fr}.acts .btn{font-size:1rem;padding:10px 4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
