/* Drive4JASKO enhancements — original Logistica theme retained */
:root{--jasko-ink:#15202b}html{scroll-behavior:smooth}body{color:var(--jasko-ink)}.navbar .nav-link{font-size:.88rem}.navbar .dropdown-menu{border-radius:10px;box-shadow:0 15px 40px #15202b22}.jasko-hero{background:#14212e;color:#fff;padding:78px 0 65px}.jasko-hero h1{color:#fff;font-weight:800}.jasko-hero p{color:#e0e7ee;max-width:760px}.jasko-section{padding:65px 0}.jasko-card{background:#fff;border:1px solid #e4e9ee;border-radius:14px;padding:26px;height:100%;box-shadow:0 10px 30px #15202b0a}.jasko-card h3{font-size:1.2rem}.jasko-card img{width:100%;height:190px;object-fit:cover;border-radius:9px;margin-bottom:18px}.jasko-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#b03a2e}.jasko-accordion .accordion-button{font-weight:600}.jasko-search{max-width:700px}.jasko-chip{display:inline-block;border:1px solid #d9e0e6;border-radius:30px;padding:5px 12px;font-size:.8rem;margin:3px}.jasko-callout{border-left:4px solid #b93629;background:#f7f8fa;padding:20px;border-radius:5px}.jasko-muted{color:#586675}.jasko-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}@media(max-width:991px){.jasko-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.navbar .nav-link{font-size:1rem}}@media(max-width:640px){.jasko-grid{grid-template-columns:1fr}.jasko-hero{padding:48px 0}.jasko-section{padding:42px 0}}
/* October expansion */
.jasko-info-card{background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.035);transition:transform .2s ease}.jasko-info-card:hover{transform:translateY(-2px)}.jasko-info-card h3{color:#102333}.navbar .dropdown-menu{max-height:70vh;overflow:auto}@media(max-width:991px){.navbar .dropdown-menu{max-height:none}.jasko-hero h1{font-size:2.1rem}}

/* Online forms directory */
.form-entry[hidden]{display:none!important}.form-entry .accordion-button{gap:.5rem}.form-entry .badge{font-size:.7rem;white-space:normal}.nav-pills .nav-link{border-radius:.45rem}.tab-pane{min-height:100px}

/* Mobile full-width (Jas, 2026-10-12): below the lg breakpoint, containers lose
   their fixed max-widths and run to the screen edges with a slim gutter, so
   content reads as a full-width page on phones and portrait tablets. */
@media (max-width: 991.98px) {
  .container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    max-width: 100% !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
  .container .container, .container-fluid .container, .container-xxl .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .row { --bs-gutter-x: 0.9rem; }
  .jasko-grid { gap: 12px; }
  .jasko-card { padding: 18px; }
}
@media (max-width: 575.98px) {
  .container, .container-fluid, .container-sm, .container-md, .container-lg, .container-xl, .container-xxl {
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
}

/* Homepage restyle (2026-10-13): shape + layout variety beyond card grids */
.jasko-card{border-radius:20px}
.jasko-arch{border-radius:220px 220px 18px 18px;width:100%;height:100%;min-height:340px;object-fit:cover}
.jasko-checkline{display:flex;gap:12px;align-items:flex-start;font-weight:600}
.jasko-checkline .ck,.jasko-checks .ck{flex:0 0 30px;height:30px;border-radius:50%;background:#b93629;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem}
.jasko-band-dark{background:#10222f;color:#e8eef3;clip-path:polygon(0 2.2vw,100% 0,100% calc(100% - 2.2vw),0 100%);padding:105px 0}
.jasko-stat-num{font-size:4rem;font-weight:800;color:#fff;line-height:1}
.jasko-stat-lab{margin-top:8px;font-size:1rem;color:#c3d2dd}
.jasko-ruled{list-style:none;margin:0;padding:0}
.jasko-ruled li{display:flex;gap:16px;padding:15px 0;border-top:1px solid #e4e9ee}
.jasko-ruled .n{font-weight:800;color:#b93629}
.jasko-photo-band{position:relative;background:url('../img/staging-yard.jpg') center/cover no-repeat;color:#dfe9f0;padding:115px 0}
.jasko-photo-band:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,17,24,.86),rgba(9,17,24,.38) 60%,rgba(9,17,24,.18))}
.jasko-band-inner{position:relative;z-index:1}
.jasko-ring{width:250px;height:250px;border:10px solid #b93629;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:10px auto;text-align:center;padding:20px}
.jasko-ring-big{font-size:2.7rem;font-weight:800;color:#10222f;line-height:1}
.jasko-ring-lab{margin-top:8px;color:#586675;font-weight:600}
.jasko-checks{list-style:none;margin:0 auto;padding:0;max-width:880px;display:grid;grid-template-columns:1fr 1fr;gap:16px 30px}
.jasko-checks li{display:flex;gap:12px;align-items:center;font-weight:600;font-size:1.05rem}
.jasko-timeline{position:relative;max-width:620px;margin:0 auto;padding-left:64px}
.jasko-timeline:before{content:"";position:absolute;left:19px;top:10px;bottom:10px;width:2px;background:#d9e0e6}
.jasko-tl-item{position:relative;padding-bottom:30px}
.jasko-tl-item:last-child{padding-bottom:0}
.jasko-tl-item h3{margin:4px 0 0;font-size:1.25rem}
.jasko-tl-dot{position:absolute;left:-64px;top:-4px;width:40px;height:40px;border-radius:50%;background:#10222f;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.jasko-quote-mark{font-size:5rem;line-height:.5;color:#b93629;font-family:Georgia,serif}
.jasko-bigquote{font-size:1.85rem;line-height:1.4;font-weight:600;max-width:820px;margin:18px auto 12px}
.jasko-plainquote{border-top:3px solid #b93629;padding-top:16px}
@media (max-width: 640px){.jasko-checks{grid-template-columns:1fr}.jasko-bigquote{font-size:1.4rem}.jasko-band-dark{padding:80px 0}.jasko-photo-band{padding:70px 0}}

/* --- Accordion slider (Why JASKO, added 2026-10-13) --- */
.jasko-acc-card{position:relative;background:#e9e9eb;border-radius:28px;padding:22px;margin-top:36px}
.jasko-acc{display:flex;gap:10px;height:470px}
.jasko-panel{position:relative;flex:.85;border-radius:20px;overflow:hidden;cursor:pointer;background:#222 center/cover no-repeat;transition:flex .9s cubic-bezier(.25,.8,.25,1);min-width:0}
.jasko-panel.active{flex:5.2;cursor:default}
.jasko-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.62));opacity:0;transition:opacity .5s}
.jasko-panel.active::after{opacity:1}
.jasko-vlabel{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);writing-mode:vertical-rl;rotate:180deg;color:#fff;font-weight:700;letter-spacing:.24em;font-size:12.5px;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.55);transition:opacity .35s;white-space:nowrap;z-index:2}
.jasko-panel.active .jasko-vlabel{opacity:0}
.jasko-overlay{position:absolute;left:0;right:0;bottom:0;padding:26px 28px;color:#fff;opacity:0;transform:translateY(14px);transition:opacity .55s ease .3s,transform .55s ease .3s;z-index:2}
.jasko-panel.active .jasko-overlay{opacity:1;transform:none}
.jasko-overlay h3{font-size:27px;margin:0 0 4px;color:#fff}
.jasko-overlay p{color:#e8e8ea;font-size:15px;margin:0 0 14px}
.jasko-pill{display:inline-block;color:#fff;text-decoration:none;border:1.5px solid rgba(255,255,255,.85);padding:8px 18px;border-radius:999px;font-size:13.5px;font-weight:600;transition:background .25s,border-color .25s}
.jasko-pill:hover{background:#a6192e;border-color:#a6192e;color:#fff}
.jasko-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:#111;font-size:21px;line-height:1;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.22);display:flex;align-items:center;justify-content:center}
.jasko-arrow:hover{background:#fff}
.jasko-arrow.prev{left:34px}
.jasko-arrow.next{right:34px}
.jasko-track{position:relative;height:2px;background:#c9c9cd;border-radius:2px;margin:20px 8px 4px}
.jasko-knob{position:absolute;top:50%;left:12.5%;width:14px;height:14px;border-radius:50%;background:#121312;transform:translate(-50%,-50%);transition:left .9s cubic-bezier(.25,.8,.25,1)}
@media (max-width:720px){.jasko-acc{height:400px;gap:7px}.jasko-acc-card{padding:12px;border-radius:22px}.jasko-overlay{padding:18px}.jasko-overlay h3{font-size:21px}.jasko-arrow{width:38px;height:38px}.jasko-arrow.prev{left:18px}.jasko-arrow.next{right:18px}}
@media (prefers-reduced-motion: reduce){.jasko-panel,.jasko-knob{transition:none}}

/* --- Stats band call panel + count-up (added 2026-10-13) --- */
.jasko-band-call{background:#b93629;border-radius:16px;padding:26px 28px;color:#fff}
.jasko-band-call-lab{font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;opacity:.85}
.jasko-band-call-num{display:block;font-size:2rem;font-weight:800;color:#fff;text-decoration:none;margin:6px 0 4px;line-height:1.15}
.jasko-band-call-num:hover{color:#ffe1dc}
.jasko-band-call-sub{color:#f3d9d5;font-size:.95rem}

/* 2026-10-13e: straighten angled band on small screens + stop horizontal overflow */
html,body{overflow-x:clip}
@supports not (overflow:clip){html,body{overflow-x:hidden}}
@media(max-width:768px){.jasko-band-dark{clip-path:none;padding:64px 0}}

/* Find Your Path: 4-card variant (homepage) */
.jasko-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:991px){.jasko-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.jasko-grid-4{grid-template-columns:1fr}}

/* Grid containment + wider single-column breakpoint (2026-10-14, Jas phone report) */
.jasko-grid,.jasko-grid-4{max-width:100%}
.jasko-grid>*{min-width:0;max-width:100%}
.jasko-section{overflow-x:clip}
@media(max-width:767px){.jasko-grid-4{grid-template-columns:1fr}}

/* ============================================================
   STAGED 2026-10-18 — Mobile footer compaction (NOT LIVE).
   Jas flagged the footer as too deep on phones (2026-10-18).
   On mobile only: Drivers + Company link columns sit side by
   side instead of stacking full-width, and footer padding /
   heading margins tighten. Desktop footer unchanged.
   On publish: upload this file, bump ?v=20261014c -> ?v=20261018a
   on all 24 pages (CSS + JS tags), verify live on a phone width.
   ============================================================ */
@media (max-width: 767.98px) {
  .footer .container.py-5 { padding-top: 2rem !important; padding-bottom: 1.25rem !important; }
  .footer .row.g-5 { --bs-gutter-y: 1.75rem; }
  .footer .row.g-5 > div:nth-child(2),
  .footer .row.g-5 > div:nth-child(3) { flex: 0 0 50%; max-width: 50%; }
  .footer h4.mb-4 { margin-bottom: 0.9rem !important; }
  .footer img.mb-4 { margin-bottom: 1rem !important; }
  .footer .copyright { padding: 15px 0; }
}
