/* Bargain Towing & Services — shared styles */
:root{
  --green:#2D342E; --green-deep:#222822;
  --red:#C04A38; --red-deep:#912C22;
  --cream:#EAE8E0; --silver:#928D86; --ink:#1C1F1B; --white:#fff;
  --line:#dad6cb;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6}
h1,h2,h3,.display{font-family:'Oswald',sans-serif;text-transform:uppercase;letter-spacing:.5px;line-height:1.08}
a{color:inherit;text-decoration:none}
img{max-width:100%}
.wrap{max-width:1160px;margin:0 auto;padding:0 24px}
.section{padding:62px 0}
.section.alt{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.section h2{color:var(--green);font-size:2rem;font-weight:700;text-align:center;margin-bottom:8px}
.section .lead{text-align:center;color:#5b5f58;max-width:640px;margin:0 auto 38px}

/* top utility bar */
.topbar{background:var(--green-deep);color:var(--cream);font-size:.85rem}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:38px;flex-wrap:wrap}
.topbar strong{color:#fff}

/* emergency 24/7 bar — sticky at very top, whole bar is tap-to-call */
.emergency-bar{position:sticky;top:0;z-index:60;display:flex;align-items:center;justify-content:center;gap:12px;
  background:var(--red);color:#fff;padding:11px 16px;font-family:'Oswald',sans-serif;font-weight:700;
  letter-spacing:.6px;text-transform:uppercase;font-size:1rem;box-shadow:0 2px 8px rgba(0,0,0,.28);transition:.15s}
.emergency-bar:hover{background:#cf5341}
.emergency-bar .eb-pulse{width:11px;height:11px;border-radius:50%;background:#fff;animation:ebpulse 1.6s infinite}
.emergency-bar .eb-sep{opacity:.55;font-weight:400}
.emergency-bar .eb-call{display:inline-flex;align-items:center;gap:7px;background:rgba(0,0,0,.2);padding:5px 13px;border-radius:7px}
@keyframes ebpulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.65)}70%{box-shadow:0 0 0 11px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}
@media(max-width:600px){.emergency-bar{font-size:.82rem;gap:9px;flex-wrap:wrap;padding:10px 12px}.emergency-bar .eb-sep{display:none}}

/* header (sits below the sticky emergency bar) */
header.site{position:static;background:var(--green);box-shadow:0 2px 10px rgba(0,0,0,.18)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:84px}
.brand{display:flex;align-items:center;gap:14px}
.brand img{height:62px;width:auto;display:block}
nav.main ul{list-style:none;display:flex;gap:24px}
nav.main a{color:var(--cream);font-family:'Oswald',sans-serif;font-weight:600;font-size:.96rem;text-transform:uppercase;letter-spacing:.6px;padding:6px 0;border-bottom:2px solid transparent;transition:.15s}
nav.main a:hover,nav.main a.active{color:#fff;border-color:var(--red)}
.call-btn{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;font-family:'Oswald',sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:.5px;padding:12px 20px;border-radius:8px;white-space:nowrap;transition:.15s;box-shadow:0 3px 0 var(--red-deep)}
.call-btn:hover{background:#cf5341;transform:translateY(-1px)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Oswald',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:15px 26px;border-radius:9px;font-size:1.05rem;transition:.15s;cursor:pointer}
.btn-red{background:var(--red);color:#fff;box-shadow:0 3px 0 var(--red-deep)}
.btn-red:hover{background:#cf5341;transform:translateY(-1px)}
.btn-ghost{background:transparent;color:#fff;border:2px solid rgba(234,232,224,.5)}
.btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.06)}
.btn-green{background:var(--green);color:#fff}
.btn-green:hover{background:#3a443c}

/* hero */
.hero{position:relative;color:var(--cream);padding:74px 0 86px;
  background:linear-gradient(rgba(34,40,34,.86),rgba(34,40,34,.93)),
    repeating-linear-gradient(45deg,#2b322c 0 22px,#2f362f 22px 44px)}
.hero.page{padding:54px 0 56px}
.hero .wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:40px;align-items:center}
.hero.page .wrap{grid-template-columns:1fr}
.stars{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.08);border:1px solid rgba(234,232,224,.25);padding:7px 14px;border-radius:999px;font-size:.9rem;margin-bottom:20px}
.stars b{color:#FFC107;letter-spacing:2px}
.hero h1{font-size:3.2rem;font-weight:700;color:#fff;margin-bottom:16px}
.hero.page h1{font-size:2.5rem}
.hero h1 .accent{color:var(--red)}
.hero p.sub{font-size:1.16rem;max-width:560px;margin-bottom:28px;color:#e7e4db}
.cta-row{display:flex;gap:14px;flex-wrap:wrap}
.hero-badge{justify-self:center;max-width:300px;width:100%;filter:drop-shadow(0 12px 24px rgba(0,0,0,.45))}

/* breadcrumbs */
.crumbs{background:#fff;border-bottom:1px solid var(--line);font-size:.85rem;color:#6b6f68}
.crumbs .wrap{padding:12px 24px}
.crumbs a{color:var(--red)}

/* trust strip */
.trust{background:var(--cream);border-bottom:1px solid var(--line)}
.trust .wrap{display:flex;justify-content:space-around;gap:18px;flex-wrap:wrap;padding:22px 24px;text-align:center}
.trust .item{flex:1;min-width:150px}
.trust .item .big{font-family:'Oswald',sans-serif;font-weight:700;color:var(--green);font-size:1.45rem;text-transform:uppercase}
.trust .item .small{font-size:.9rem;color:#5b5f58}

/* service cards */
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.card{background:#fff;border:1px solid #e1ddd2;border-radius:14px;padding:24px 20px;transition:.15s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(45,52,46,.12);border-color:var(--silver)}
.card .ic{width:46px;height:46px;border-radius:10px;background:var(--green);display:flex;align-items:center;justify-content:center;color:#fff;font-family:'Oswald';font-weight:700;font-size:1.1rem;margin-bottom:14px}
.card h3{color:var(--ink);font-size:1.1rem;margin-bottom:8px}
.card p{font-size:.94rem;color:#5b5f58}
.card a.more{color:var(--red);font-weight:600;font-size:.9rem;display:inline-block;margin-top:10px}

/* prose / sub-page content */
.prose{max-width:760px;margin:0 auto}
.prose h2{text-align:left;font-size:1.6rem;margin:30px 0 12px}
.prose h3{font-size:1.2rem;color:var(--green);margin:22px 0 8px}
.prose p{margin-bottom:14px}
.prose ul{margin:0 0 16px 22px}
.prose li{margin-bottom:7px}

/* pricing */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:920px;margin:0 auto}
.price{background:#fff;border:1px solid #e1ddd2;border-radius:14px;padding:26px 22px;text-align:center}
.price .amt{font-family:'Oswald';font-weight:700;color:var(--green);font-size:2rem}
.price .lbl{font-weight:700;margin:6px 0}
.price .note{font-size:.88rem;color:#5b5f58}
.price-disclaimer{text-align:center;color:#6b6f68;font-size:.86rem;max-width:680px;margin:26px auto 0}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review{background:#fff;border:1px solid #e1ddd2;border-radius:14px;padding:22px}
.review .rstars{color:#FFC107;letter-spacing:2px;margin-bottom:8px}
.review p{font-size:.96rem;color:#3a3e38;margin-bottom:12px}
.review .who{font-weight:600;color:var(--green);font-size:.9rem}

/* faq */
.faq{max-width:780px;margin:0 auto}
.faq details{background:#fff;border:1px solid #e1ddd2;border-radius:12px;padding:4px 20px;margin-bottom:12px}
.faq summary{font-family:'Oswald';font-weight:600;font-size:1.06rem;color:var(--green);cursor:pointer;padding:16px 0;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';float:right;color:var(--red);font-size:1.3rem}
.faq details[open] summary::after{content:'–'}
.faq details p{padding:0 0 16px;color:#4a4e47}

/* area list */
.area-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:820px;margin:0 auto}
.area-list a{background:#fff;border:1px solid #e1ddd2;border-radius:8px;padding:9px 16px;font-weight:600;color:var(--green);font-size:.92rem;transition:.15s}
.area-list a:hover{background:var(--green);color:#fff}

/* cta band */
.ctaband{background:var(--green);color:var(--cream);text-align:center;padding:48px 0}
.ctaband h2{color:#fff;font-size:1.9rem;margin-bottom:10px}
.ctaband p{margin-bottom:22px;color:#dcd9d0}

/* contact / map */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.contact-grid .info p{margin-bottom:10px}
.map-embed{border:0;width:100%;height:340px;border-radius:14px}

/* footer */
footer.site{background:var(--green);color:var(--cream);padding:44px 0 30px}
footer.site .cols{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:30px;margin-bottom:26px}
footer.site h4{font-family:'Oswald';text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;color:#fff}
footer.site a,footer.site p{color:#c3c0b7;font-size:.92rem;display:block;margin-bottom:7px}
footer.site a:hover{color:#fff}
footer.site .ft-call{font-family:'Oswald';font-weight:700;font-size:1.5rem;color:#fff;margin-bottom:6px}
footer.site .legal{border-top:1px solid rgba(255,255,255,.12);padding-top:18px;text-align:center;font-size:.84rem;color:#9d9a91}

/* mobile sticky call */
.mobile-call{display:none}

@media(max-width:900px){
  nav.main{display:none}
  .hero .wrap{grid-template-columns:1fr;text-align:center}
  .hero-badge{display:none}
  .hero h1{font-size:2.4rem}
  .cta-row{justify-content:center}
  .cards,.reviews,.price-grid{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  footer.site .cols{grid-template-columns:1fr}
  .topbar,.header-call{display:none}
  .mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--red);color:#fff;align-items:center;justify-content:center;gap:8px;padding:15px;font-family:'Oswald';font-weight:700;font-size:1.12rem;box-shadow:0 -2px 12px rgba(0,0,0,.25)}
  body{padding-bottom:56px}
}
@media(max-width:560px){.cards,.reviews,.price-grid{grid-template-columns:1fr}}

/* ---- photos ---- */
.hero.home{background:
  linear-gradient(rgba(34,40,34,.80),rgba(34,40,34,.90)),
  url('/assets/photos/hero-night-fleet.jpg') center/cover no-repeat;}
.hero.home{background:
  linear-gradient(rgba(34,40,34,.80),rgba(34,40,34,.90)),
  -webkit-image-set(url('/assets/photos/hero-night-fleet.webp') type('image/webp'),
            url('/assets/photos/hero-night-fleet.jpg') type('image/jpeg')) center/cover no-repeat;
  background:
  linear-gradient(rgba(34,40,34,.80),rgba(34,40,34,.90)),
  image-set(url('/assets/photos/hero-night-fleet.webp') type('image/webp'),
            url('/assets/photos/hero-night-fleet.jpg') type('image/jpeg')) center/cover no-repeat;}
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.gallery a{display:block;border-radius:12px;overflow:hidden;border:1px solid #e1ddd2;aspect-ratio:4/3;position:relative}
.gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gallery a:hover img{transform:scale(1.07)}
.gallery .cap{position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,rgba(28,31,27,.85));color:#fff;font-size:.8rem;font-weight:600;padding:18px 10px 8px}
.svc-photo{width:100%;max-height:430px;object-fit:cover;border-radius:14px;display:block;border:1px solid #e1ddd2}
@media(max-width:900px){.gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.gallery{grid-template-columns:1fr 1fr}.svc-photo{max-height:260px}}

/* ===== refinements: 5-up services, reviews carousel, areas marquee, mobile ===== */
.cards.five{grid-template-columns:repeat(5,1fr);gap:14px}
.cards.five .card{padding:22px 16px}
.cards.five .card h3{font-size:1.02rem}
.cards.five .card p{font-size:.88rem}
@media(max-width:1080px){.cards.five{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){
  .cards.five{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:2px 2px 14px;-webkit-overflow-scrolling:touch}
  .cards.five .card{flex:0 0 76%;scroll-snap-align:start}
}

/* reviews -> horizontal scroll carousel */
.reviews{display:flex;grid-template-columns:none;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 2px 18px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--silver) transparent}
.reviews .review{flex:0 0 350px;scroll-snap-align:start;display:flex;flex-direction:column}
.reviews::-webkit-scrollbar{height:8px}
.reviews::-webkit-scrollbar-thumb{background:var(--silver);border-radius:8px}
.reviews::-webkit-scrollbar-track{background:transparent}
.review-cta{background:var(--green);text-decoration:none;justify-content:center}
.review-cta .rstars{color:#FFC107}
.review-cta p{color:#eae8e0;font-size:1rem}
.review-cta .who{color:#fff}
.review-cta:hover{background:#3a443c}
@media(max-width:560px){.reviews .review{flex:0 0 84%}}

/* areas -> auto-scrolling marquee */
.marquee{overflow:hidden;width:100%;margin-top:6px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.marquee-track{display:flex;gap:12px;width:max-content;animation:marquee 32s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee a{background:#fff;border:1px solid #e1ddd2;border-radius:8px;padding:11px 20px;font-weight:600;
  color:var(--green);white-space:nowrap;font-size:.95rem;flex:0 0 auto}
.marquee a:hover{background:var(--green);color:#fff}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}}

/* mobile polish */
@media(max-width:560px){
  .hero h1{font-size:2rem}
  .hero p.sub{font-size:1.05rem}
  .section{padding:44px 0}
  .section h2{font-size:1.6rem}
  .btn,.call-btn{font-size:1rem;padding:13px 20px}
  .trust .wrap{padding:18px 14px;gap:12px}
  .trust .item{min-width:46%}
  .gallery .cap{font-size:.74rem}
}

/* mobile hamburger menu */
.nav-toggle{display:none}
.nav-burger{display:none}
@media(max-width:900px){
  header.site{position:relative}
  .nav-burger{display:block;color:var(--cream);font-size:1.85rem;line-height:1;cursor:pointer;padding:2px 6px;-webkit-tap-highlight-color:transparent}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:var(--green-deep);box-shadow:0 10px 18px rgba(0,0,0,.32);z-index:58}
  .nav-toggle:checked ~ nav.main{display:block}
  nav.main ul{flex-direction:column;gap:0;padding:6px 0}
  nav.main a{display:block;padding:15px 24px;border-bottom:1px solid rgba(255,255,255,.07);font-size:1.05rem}
  nav.main a:hover,nav.main a.active{border-color:rgba(255,255,255,.07);color:#fff;background:rgba(255,255,255,.05)}
}

/* Toledo skyline footer band (original art: downtown + Anthony Wayne Bridge + Glass City Skyway) */
.cityline{background:var(--green);line-height:0;overflow:hidden}
.cityline svg{display:block;width:100%;height:auto;max-height:120px}
.cityline .b rect,.cityline .b path{fill:var(--cream)}
.cityline .ground{fill:var(--cream);opacity:.45}
.cityline .c line,.cityline .c path{stroke:var(--cream);stroke-width:2.4;fill:none;opacity:.9}
@media(max-width:600px){.cityline svg{max-height:70px}}

/* Toledo skyline footer band (custom silhouette image) */
.cityline{background:var(--cream);text-align:center;padding:26px 20px 18px;line-height:0;overflow:hidden;border-top:1px solid var(--line)}
.cityline img{display:inline-block;width:100%;max-width:680px;height:auto}
@media(max-width:600px){.cityline{padding:18px 14px 12px}}
