/* ============================================================
   BAKU COURIER — custom.css
   Shared styles for all pages
   ============================================================ */

:root{
  --bc-green:  #16A34A;
  --bc-green-dark: #12813B;
  --bc-green-deep: #0B3D22;
  --bc-red:    #DC2626;
  --bc-red-dark: #B91C1C;
  --bc-blue:   #1D4ED8;
  --bc-black:  #111111;
  --bc-white:  #FFFFFF;
  --bc-grey:   #F5F7F6;
  --bc-line:   #E4EAE6;
  --bc-muted:  #5B6660;
  --font-display: 'Archivo', system-ui, sans-serif;
  --font-body: 'Inter', system-ui, sans-serif;
  --radius: 14px;
  --shadow-soft: 0 10px 30px rgba(17,17,17,.08);
  --shadow-hover: 0 18px 44px rgba(17,17,17,.14);
}

*{ -webkit-font-smoothing:antialiased; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--font-body);
  color:var(--bc-black);
  background:var(--bc-white);
  overflow-x:hidden;
}

h1,h2,h3,h4,h5,.display-font{
  font-family:var(--font-display);
  letter-spacing:-.02em;
}

.eyebrow{
  display:inline-flex; align-items:center; gap:.55rem;
  font-family:var(--font-display);
  font-size:.78rem; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--bc-green);
}
.eyebrow::before{
  content:""; width:26px; height:2px;
  background:repeating-linear-gradient(90deg,var(--bc-green) 0 5px,transparent 5px 9px);
}
.eyebrow.light{ color:#4ADE80; }

.section{ padding:96px 0; }
.section-grey{ background:var(--bc-grey); }
.section-title{ font-size:clamp(1.9rem,3.4vw,2.7rem); font-weight:800; }
.section-lead{ color:var(--bc-muted); max-width:640px; }

/* ============ Buttons ============ */
.btn{ font-weight:600; border-radius:10px; padding:.7rem 1.5rem; transition:all .22s ease; }
.btn-cta{ background:var(--bc-red); color:#fff; border:1px solid var(--bc-red); }
.btn-cta:hover{ background:var(--bc-red-dark); border-color:var(--bc-red-dark); color:#fff; transform:translateY(-2px); box-shadow:0 10px 24px rgba(220,38,38,.32); }
.btn-outline-light-c{ background:transparent; color:#fff; border:1.5px solid rgba(255,255,255,.55); }
.btn-outline-light-c:hover{ background:#fff; color:var(--bc-black); border-color:#fff; }
.btn-blue{ background:var(--bc-blue); color:#fff; border:1px solid var(--bc-blue); }
.btn-blue:hover{ background:#1741B5; color:#fff; transform:translateY(-2px); }
.btn-outline-green{ border:1.5px solid var(--bc-green); color:var(--bc-green-dark); background:transparent; }
.btn-outline-green:hover{ background:var(--bc-green); color:#fff; }

a{ color:var(--bc-blue); }

/* ============ Navbar ============ */
.navbar-bc{
  transition:background .3s ease, box-shadow .3s ease, padding .3s ease;
  background:transparent;
  padding:1.1rem 0;
}
.navbar-bc .nav-link{
  color:rgba(255,255,255,.88); font-weight:500; margin:0 .35rem;
  position:relative;
}
.navbar-bc .nav-link::after{
  content:""; position:absolute; left:.5rem; right:.5rem; bottom:.2rem; height:2px;
  background:var(--bc-green); transform:scaleX(0); transform-origin:left; transition:transform .25s ease;
}
.navbar-bc .nav-link:hover::after,
.navbar-bc .nav-link.active::after{ transform:scaleX(1); }
.navbar-bc .nav-link:hover{ color:#fff; }
.navbar-bc.scrolled{
  background:var(--bc-white);
  box-shadow:0 6px 24px rgba(17,17,17,.08);
  padding:.55rem 0;
}
.navbar-bc.scrolled .nav-link{ color:var(--bc-black); }
.navbar-bc.scrolled .nav-link:hover{ color:var(--bc-green-dark); }

/* ============ Navbar logo image ============ */
.navbar-bc .navbar-logo{
  filter: brightness(0) invert(1);  /* white version on dark hero */
  transition: filter .3s ease;
}
.navbar-bc.scrolled .navbar-logo{
  filter: none;  /* original colors on white navbar */
}

/* Logo placeholder — replace with <img src="images/logo.png" height="44" alt="Baku Courier"> when ready */
.brand-logo{ display:flex; align-items:center; gap:.6rem; text-decoration:none; }
.logo-mark{
  width:42px; height:42px; border-radius:10px;
  background:var(--bc-green);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:1.05rem;
  box-shadow:0 6px 16px rgba(22,163,74,.35);
}
.brand-text{
  font-family:var(--font-display); font-weight:800; font-size:1.15rem; line-height:1;
  color:#fff; letter-spacing:-.01em;
}
.brand-text small{
  display:block; font-family:var(--font-body); font-weight:600; font-size:.6rem;
  letter-spacing:.28em; color:var(--bc-green); text-transform:uppercase; margin-top:3px;
}
.navbar-bc.scrolled .brand-text{ color:var(--bc-black); }
.navbar-toggler{ border:none; color:#fff; font-size:1.4rem; }
.navbar-bc.scrolled .navbar-toggler{ color:var(--bc-black); }
.navbar-toggler:focus{ box-shadow:none; }
@media (max-width: 991.98px){
  .navbar-bc .navbar-collapse{
    background:var(--bc-white); border-radius:var(--radius); margin-top:.8rem;
    padding:1rem 1.2rem; box-shadow:var(--shadow-soft);
  }
  .navbar-bc .nav-link, .navbar-bc.scrolled .nav-link{ color:var(--bc-black); }
  .navbar-bc .btn-cta{ margin-top:.5rem; width:100%; }
}

/* ============ Home Hero ============ */
.hero{
  position:relative;
  min-height:92vh;
  display:flex; align-items:center;
  color:#fff;
  /*
    HERO IMAGE SLOT — replace gradient with fleet photo:
    background: linear-gradient(100deg, rgba(11,25,17,.92) 0%, rgba(11,61,34,.78) 55%, rgba(11,25,17,.55) 100%), url('../images/hero-fleet.jpg') center/cover no-repeat;
  */
  background:
    radial-gradient(1100px 520px at 85% 20%, rgba(22,163,74,.28), transparent 60%),
    linear-gradient(115deg, #0B1911 0%, #0B3D22 58%, #10261A 100%);
}
.hero::before, .page-hero::before{
  content:""; position:absolute; inset:0;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(180deg, transparent, #000 30%, #000 75%, transparent);
  pointer-events:none;
}
.hero-inner{ position:relative; z-index:2; padding:140px 0 120px; }
.hero h1{
  font-size:clamp(2.5rem, 5.6vw, 4.3rem);
  font-weight:900; line-height:1.04; letter-spacing:-.03em;
}
.hero h1 .accent{ color:var(--bc-green); }
.hero-sub{ color:rgba(255,255,255,.82); font-size:1.02rem; max-width:620px; }
.hero-tags{ display:flex; flex-wrap:wrap; gap:.5rem; }
.hero-tag{
  font-size:.78rem; font-weight:600; letter-spacing:.02em;
  color:#DFF5E7; background:rgba(22,163,74,.16);
  border:1px solid rgba(22,163,74,.4);
  padding:.34rem .8rem; border-radius:100px;
}

/* Signature: GPS route line */
.route-svg{ position:absolute; right:-40px; bottom:0; width:56%; max-width:760px; opacity:.9; z-index:1; pointer-events:none; }
.route-path{
  fill:none; stroke:var(--bc-green); stroke-width:2.5;
  stroke-dasharray:8 10; stroke-linecap:round;
  animation:routeflow 22s linear infinite;
}
.route-path.faint{ stroke:rgba(255,255,255,.22); animation-duration:30s; }
@keyframes routeflow{ to{ stroke-dashoffset:-720; } }
.route-pin{ fill:var(--bc-red); }
.route-dot{ fill:#fff; }
@media (prefers-reduced-motion: reduce){
  .route-path{ animation:none; }
  html{ scroll-behavior:auto; }
  .reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
}
@media (max-width: 767.98px){ .route-svg{ display:none; } .hero{ min-height:auto; } }

.hero-stats{ border-top:1px solid rgba(255,255,255,.14); }
.hero-stat b{ font-family:var(--font-display); font-size:1.5rem; font-weight:800; color:#fff; display:block; }
.hero-stat span{ color:rgba(255,255,255,.65); font-size:.82rem; }

/* ============ Inner Page Hero ============ */
.page-hero{
  position:relative; color:#fff;
  padding:180px 0 88px;
  background:
    radial-gradient(900px 420px at 82% 10%, rgba(22,163,74,.25), transparent 60%),
    linear-gradient(115deg, #0B1911 0%, #0B3D22 60%, #10261A 100%);
}
.page-hero h1{
  font-size:clamp(2.2rem, 4.6vw, 3.4rem);
  font-weight:900; letter-spacing:-.03em;
}
.page-hero .lead-c{ color:rgba(255,255,255,.8); max-width:640px; font-size:1.02rem; }
.breadcrumb-bc{
  display:flex; align-items:center; gap:.6rem; flex-wrap:wrap;
  font-size:.85rem; font-weight:500;
}
.breadcrumb-bc a{ color:rgba(255,255,255,.65); text-decoration:none; }
.breadcrumb-bc a:hover{ color:#4ADE80; }
.breadcrumb-bc i{ font-size:.6rem; color:rgba(255,255,255,.4); }
.breadcrumb-bc .current{ color:#4ADE80; }

/* ============ Services (home cards) ============ */
.service-card{
  background:var(--bc-white);
  border:1px solid var(--bc-line);
  border-radius:var(--radius);
  padding:1.8rem 1.6rem;
  height:100%;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  position:relative;
}
.service-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-hover); border-color:transparent; }
.service-icon{
  width:54px; height:54px; border-radius:12px;
  background:#E9F7EE; color:var(--bc-green-dark);
  display:flex; align-items:center; justify-content:center;
  font-size:1.35rem; margin-bottom:1.1rem;
  transition:all .25s ease;
}
.service-card:hover .service-icon{ background:var(--bc-green); color:#fff; }
.service-card h3{ font-size:1.12rem; font-weight:700; }
.service-card p{ color:var(--bc-muted); font-size:.92rem; margin-bottom:0; }
.service-card .stretched-hint{
  display:inline-flex; align-items:center; gap:.4rem;
  font-size:.85rem; font-weight:600; color:var(--bc-blue); margin-top:1rem;
}
.service-card.featured{
  background:linear-gradient(150deg, var(--bc-green-deep), #0E5530);
  border:none; color:#fff;
}
.service-card.featured h3{ color:#fff; }
.service-card.featured p{ color:rgba(255,255,255,.78); }
.service-card.featured .service-icon{ background:rgba(255,255,255,.14); color:#fff; }
.service-card.featured:hover .service-icon{ background:var(--bc-red); }
.featured-badge{
  position:absolute; top:1.1rem; right:1.1rem;
  background:var(--bc-red); color:#fff;
  font-size:.66rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  padding:.3rem .65rem; border-radius:100px;
  z-index:2;
}
.service-card.featured .stretched-hint{ color:#8EE7B0; }

/* Featured service card image support */
.service-card.featured .service-card-media::after{
  background:linear-gradient(160deg, rgba(11,61,34,.75), rgba(11,61,34,.45));
}

/* ============ Service card image support ============ */
.service-card-media{
  width:100%; height:160px;
  border-radius:10px; overflow:hidden;
  margin-bottom:1.1rem; position:relative;
  background:linear-gradient(140deg, var(--bc-green-deep), var(--bc-green-dark));
  display:flex; align-items:center; justify-content:center;
}
.service-card-media img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; z-index:1;
  transition:transform .35s ease;
}
.service-card:hover .service-card-media img{
  transform:scale(1.05);
}
.service-card-media i{
  font-size:2.2rem; color:rgba(255,255,255,.9);
  position:relative; z-index:2;
}
.service-card-media:has(img) i{ display:none; }
.service-card-media::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(160deg, rgba(11,61,34,.55), rgba(11,61,34,.25));
  z-index:2; pointer-events:none;
}

/* ============ Services listing page ============ */
.svc-row{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  overflow:hidden; position:relative;
  transition:transform .25s ease, box-shadow .25s ease;
}
.svc-row:hover{ transform:translateY(-5px); box-shadow:var(--shadow-hover); }
/*
  SERVICE IMAGE SLOT — replace .svc-media content with:
  <img src="images/cargo-van-service.jpg" alt="Cargo Van Service" class="w-100 h-100" style="object-fit:cover;">
*/
.svc-media{
  min-height:280px; height:100%; position:relative;
  background:linear-gradient(140deg, var(--bc-green-deep), var(--bc-green-dark));
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.92); font-size:4rem;
}
.svc-media::after{
  content:""; position:absolute; inset:0;
  background-image:repeating-linear-gradient(90deg, transparent 0 26px, rgba(255,255,255,.05) 26px 28px);
}
.svc-num{
  position:absolute; top:1.1rem; left:1.3rem;
  font-family:var(--font-display); font-weight:800; font-size:.85rem;
  color:rgba(255,255,255,.75); letter-spacing:.12em;
  border:1px solid rgba(255,255,255,.35); border-radius:100px;
  padding:.2rem .7rem;
}

.svc-media img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover;
  z-index:1;
}
.svc-media .svc-fallback-icon{
  position:relative; z-index:2;
}
.svc-media:has(img) .svc-fallback-icon{ display:none; }
.svc-media .svc-num{ z-index:3; }

.svc-media::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(160deg, rgba(11,61,34,0.25), rgba(11,61,34,.25));
  z-index:2; pointer-events:none;
}


.svc-body{ padding:clamp(1.6rem, 3vw, 2.4rem); }
.svc-body h2{ font-size:1.45rem; font-weight:800; }
.svc-body .svc-desc{ color:var(--bc-muted); font-size:.96rem; }
.svc-check{
  display:flex; align-items:flex-start; gap:.6rem;
  font-size:.9rem; color:var(--bc-black); padding:.26rem 0;
}
.svc-check i{ color:var(--bc-green); margin-top:.22rem; font-size:.85rem; }
.svc-tags{ display:flex; flex-wrap:wrap; gap:.45rem; }
.svc-tag{
  font-size:.74rem; font-weight:600;
  color:var(--bc-green-dark); background:#E9F7EE;
  border:1px solid #CBEBD6;
  padding:.28rem .7rem; border-radius:100px;
}
/* Featured service row */
.svc-row.featured{ background:linear-gradient(150deg, var(--bc-green-deep), #0E5530); border:none; color:#fff; }
.svc-row.featured .svc-body h2{ color:#fff; }
.svc-row.featured .svc-desc{ color:rgba(255,255,255,.78); }
.svc-row.featured .svc-check{ color:rgba(255,255,255,.92); }
.svc-row.featured .svc-media{ background:rgba(255,255,255,.06); }
.svc-row.featured .svc-tag{ color:#8EE7B0; background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.18); }

/* ============ Process steps ============ */
.step-item{ text-align:center; position:relative; padding:0 .8rem; }
.step-num{
  width:64px; height:64px; margin:0 auto 1rem;
  border-radius:18px; background:#E9F7EE; color:var(--bc-green-dark);
  display:flex; align-items:center; justify-content:center;
  font-size:1.4rem; position:relative; z-index:2;
  border:1.5px solid #CBEBD6;
}
.step-item b{ font-family:var(--font-display); font-weight:700; display:block; margin-bottom:.3rem; }
.step-item span{ color:var(--bc-muted); font-size:.88rem; }
@media (min-width: 768px){
  .step-item:not(:last-child)::after{
    content:""; position:absolute; top:32px; left:calc(50% + 44px); right:calc(-50% + 44px);
    border-top:2.5px dashed #BFE5CC; z-index:1;
  }
}

/* ============ Fleet ============ */
.fleet-card{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  overflow:hidden; height:100%;
  transition:transform .25s ease, box-shadow .25s ease;
}
.fleet-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow-hover); }
/*
  FLEET IMAGE SLOT — replace .fleet-media content with:
  <img src="images/cargo-van.jpg" alt="Cargo Van" class="w-100 h-100" style="object-fit:cover;">
*/
.fleet-media{
  height:190px; position:relative;
  background:linear-gradient(140deg, #0B3D22, #12813B);
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.92); font-size:3.4rem;
}
.fleet-media::after{
  content:""; position:absolute; inset:0;
  background-image:repeating-linear-gradient(90deg, transparent 0 26px, rgba(255,255,255,.05) 26px 28px);
}
.fleet-body{ padding:1.4rem 1.5rem 1.6rem; }
.fleet-body h3{ font-size:1.15rem; font-weight:800; }
.fleet-spec{
  display:flex; align-items:center; gap:.55rem;
  color:var(--bc-muted); font-size:.88rem; padding:.28rem 0;
}
.fleet-spec i{ color:var(--bc-green); width:16px; text-align:center; font-size:.8rem; }

/* ============ Fleet card image support ============ */
.fleet-media img{
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; z-index:1;
  transition:transform .35s ease;
}
.fleet-card:hover .fleet-media img{ transform:scale(1.05); }
.fleet-media:has(img) i{ display:none; }
.fleet-media::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(160deg, rgba(11,61,34,.65), rgba(11,61,34,.35));
  z-index:2; pointer-events:none;
}

/* ============ Why Choose ============ */
.why-wrap{
  background:linear-gradient(160deg, #0B1911, var(--bc-green-deep));
  border-radius:24px; color:#fff;
  padding:clamp(2.2rem, 5vw, 4.2rem);
  position:relative; overflow:hidden;
}
.why-wrap::before{
  content:""; position:absolute; top:-60px; right:-60px; width:340px; height:340px;
  border:2.5px dashed rgba(22,163,74,.35); border-radius:50%;
}
.why-item{ display:flex; align-items:flex-start; gap:.85rem; padding:.85rem .25rem; }
.why-item i{
  color:var(--bc-green); font-size:1rem; margin-top:.22rem;
  background:rgba(22,163,74,.14); border:1px solid rgba(22,163,74,.4);
  width:34px; height:34px; min-width:34px; border-radius:9px;
  display:flex; align-items:center; justify-content:center;
}
.why-item b{ display:block; font-family:var(--font-display); font-weight:700; font-size:.98rem; }
.why-item span{ color:rgba(255,255,255,.62); font-size:.82rem; }

/* ============ About ============ */
.about-visual{
  position:relative; border-radius:var(--radius); overflow:hidden;
  background:linear-gradient(150deg, #0B3D22, #16A34A);
  min-height:420px; display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.9);
  /* ABOUT IMAGE SLOT: background:url('../images/about-team.jpg') center/cover no-repeat; */
}
.about-visual i{ font-size:5rem; opacity:.85; }
.about-chip{
  position:absolute; bottom:1.4rem; left:1.4rem; right:1.4rem;
  background:rgba(255,255,255,.96); border-radius:12px; padding:1rem 1.2rem;
  display:flex; align-items:center; gap:1rem; color:var(--bc-black);
  box-shadow:var(--shadow-soft);
}
.about-chip .chip-icon{
  width:46px; height:46px; min-width:46px; border-radius:10px; background:var(--bc-green); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:1.15rem;
}
.about-point{ display:flex; gap:.8rem; padding:.55rem 0; }
.about-point i{ color:var(--bc-green); margin-top:.3rem; }
.about-point p{ margin:0; color:var(--bc-muted); font-size:.95rem; }
.about-point b{ color:var(--bc-black); }

/* ============ Contact ============ */
.contact-card{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  padding:2rem; box-shadow:var(--shadow-soft);
}
.form-label{ font-weight:600; font-size:.86rem; }
.form-control, .form-select{
  border-radius:10px; border:1.5px solid var(--bc-line);
  padding:.68rem .9rem; font-size:.94rem;
}
.form-control:focus, .form-select:focus{
  border-color:var(--bc-green); box-shadow:0 0 0 .2rem rgba(22,163,74,.14);
}
.contact-info-item{ display:flex; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--bc-line); }
.contact-info-item:last-child{ border-bottom:none; }
.contact-info-item .ci-icon{
  width:46px; height:46px; min-width:46px; border-radius:11px;
  background:#E9F7EE; color:var(--bc-green-dark);
  display:flex; align-items:center; justify-content:center; font-size:1.1rem;
}
.contact-info-item b{ display:block; font-family:var(--font-display); font-size:.95rem; }
.contact-info-item a, .contact-info-item span{ color:var(--bc-muted); font-size:.92rem; text-decoration:none; }
.contact-info-item a:hover{ color:var(--bc-blue); }
.map-frame{
  border-radius:var(--radius); overflow:hidden; border:1px solid var(--bc-line);
  box-shadow:var(--shadow-soft); line-height:0;
}
.map-frame iframe{ width:100%; height:340px; border:0; }
.map-frame-wide iframe{ height:440px; }

/* ============ CTA band ============ */
.cta-band{
  background:linear-gradient(120deg, var(--bc-green-dark), var(--bc-green));
  border-radius:22px; color:#fff;
  padding:clamp(2rem,4vw,3.2rem);
  position:relative; overflow:hidden;
}
.cta-band::after{
  content:"\f0d1"; font-family:"Font Awesome 6 Free"; font-weight:900;
  position:absolute; right:-20px; bottom:-30px; font-size:11rem; opacity:.08;
}

/* ============ Footer ============ */
.footer{ background:#0B1911; color:rgba(255,255,255,.72); padding:72px 0 0; }
.footer h5{ color:#fff; font-size:1rem; font-weight:700; margin-bottom:1.1rem; }
.footer a{ color:rgba(255,255,255,.68); text-decoration:none; font-size:.92rem; transition:color .2s; }
.footer a:hover{ color:var(--bc-green); }
.footer ul{ list-style:none; padding:0; margin:0; }
.footer li{ padding:.28rem 0; }
.footer .f-contact li{ display:flex; gap:.7rem; align-items:flex-start; }
.footer .f-contact i{ color:var(--bc-green); margin-top:.3rem; width:16px; }
.social-icons a{
  display:inline-flex; align-items:center; justify-content:center;
  width:40px; height:40px; border-radius:10px;
  background:rgba(255,255,255,.08); color:#fff; margin-right:.5rem;
  transition:all .22s ease;
}
.social-icons a:hover{ background:var(--bc-green); transform:translateY(-3px); color:#fff; }
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:56px; padding:1.3rem 0; font-size:.85rem;
}

/* ============ Utilities ============ */
.reveal{ opacity:0; transform:translateY(26px); transition:opacity .6s ease, transform .6s ease; }
.reveal.visible{ opacity:1; transform:none; }

#backToTop{
  position:fixed; right:22px; bottom:22px; z-index:1050;
  width:46px; height:46px; border-radius:12px; border:none;
  background:var(--bc-green); color:#fff; font-size:1rem;
  box-shadow:0 10px 24px rgba(22,163,74,.4);
  display:none;
}
#backToTop:hover{ background:var(--bc-green-dark); }

/* ============ Service detail pages ============ */
.text-body-c{ color:var(--bc-muted); font-size:.98rem; line-height:1.75; }

/* DETAIL IMAGE SLOT — swap icon for <img> */
.detail-media{
  height:340px; border-radius:var(--radius); position:relative; overflow:hidden;
  background:linear-gradient(140deg, var(--bc-green-deep), var(--bc-green-dark));
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.92); font-size:5rem;
}
.detail-media::after{
  content:""; position:absolute; inset:0;
  background-image:repeating-linear-gradient(90deg, transparent 0 26px, rgba(255,255,255,.05) 26px 28px);
}

.include-card{
  display:flex; gap:.9rem; align-items:flex-start;
  background:#fff; border:1px solid var(--bc-line); border-radius:12px;
  padding:1.1rem 1.2rem; height:100%;
  transition:box-shadow .22s ease, transform .22s ease;
}
.include-card:hover{ box-shadow:var(--shadow-soft); transform:translateY(-3px); }
.include-card i{
  color:var(--bc-green-dark); background:#E9F7EE;
  width:40px; height:40px; min-width:40px; border-radius:10px;
  display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.include-card b{ display:block; font-family:var(--font-display); font-size:.95rem; margin-bottom:.15rem; }
.include-card span{ color:var(--bc-muted); font-size:.85rem; }

/* Sidebar */
.detail-sidebar{ position:sticky; top:96px; display:flex; flex-direction:column; gap:1.4rem; }
.side-card{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  padding:1.5rem;
}
.side-title{ font-size:1rem; font-weight:800; margin-bottom:1rem; }
.side-list{ list-style:none; margin:0; padding:0; }
.side-list a{
  display:flex; align-items:center; gap:.7rem;
  padding:.68rem .8rem; border-radius:10px;
  color:var(--bc-black); text-decoration:none;
  font-size:.9rem; font-weight:500;
  transition:all .2s ease;
}
.side-list a i:first-child{ color:var(--bc-green); width:18px; text-align:center; font-size:.85rem; }
.side-list a i:last-child{ font-size:.6rem; color:#B8C4BD; }
.side-list a:hover{ background:var(--bc-grey); color:var(--bc-green-dark); }
.side-list li.active a{ background:var(--bc-green); color:#fff; }
.side-list li.active a i{ color:#fff; }

.side-card-dark{
  background:linear-gradient(150deg, var(--bc-green-deep), #0E5530);
  border:none; color:#fff; text-align:center;
}
.side-card-dark h4{ font-size:1.1rem; font-weight:800; }
.side-card-dark p{ color:rgba(255,255,255,.75); font-size:.88rem; }
.side-help-icon{
  width:56px; height:56px; margin:0 auto 1rem;
  border-radius:14px; background:rgba(255,255,255,.12);
  display:flex; align-items:center; justify-content:center; font-size:1.3rem;
}
.side-phone{
  display:block; font-family:var(--font-display); font-weight:800; font-size:1.05rem;
  color:#4ADE80; text-decoration:none; margin-top:.3rem;
}
.side-phone:hover{ color:#8EE7B0; }

.side-fact{ display:flex; align-items:center; gap:.7rem; padding:.42rem 0; font-size:.9rem; color:var(--bc-muted); }
.side-fact i{ color:var(--bc-green); width:18px; text-align:center; }

/* FAQ accordion */
.accordion-bc .accordion-item{
  border:1px solid var(--bc-line); border-radius:12px !important;
  margin-bottom:.8rem; overflow:hidden;
}
.accordion-bc .accordion-button{
  font-family:var(--font-display); font-weight:700; font-size:.98rem;
  color:var(--bc-black); background:#fff; box-shadow:none;
  padding:1.05rem 1.3rem;
}
.accordion-bc .accordion-button:not(.collapsed){ background:#E9F7EE; color:var(--bc-green-dark); }
.accordion-bc .accordion-button:focus{ box-shadow:0 0 0 .2rem rgba(22,163,74,.14); }
.accordion-bc .accordion-body{ color:var(--bc-muted); font-size:.92rem; padding:1.05rem 1.3rem; }
@media (max-width: 991.98px){ .detail-sidebar{ position:static; } }

/* ============ Fleet page ============ */
.fleet-hero-stats{ border-top:1px solid rgba(255,255,255,.14); padding-top:1.8rem; }
.fhs-item{
  display:flex; flex-direction:column; align-items:flex-start; gap:.3rem;
  padding:.8rem 1.2rem; border-radius:12px;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
}
.fhs-item i{ color:#4ADE80; font-size:1.2rem; }
.fhs-item b{ color:#fff; font-family:var(--font-display); font-size:.95rem; }
.fhs-item span{ color:rgba(255,255,255,.62); font-size:.78rem; }

.fleet-detail-row{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  overflow:hidden; margin-bottom:1.8rem;
  transition:box-shadow .25s ease;
}
.fleet-detail-row:hover{ box-shadow:var(--shadow-hover); }
.fleet-detail-media{
  min-height:320px; height:100%; position:relative;
  background:linear-gradient(140deg, var(--bc-green-deep), var(--bc-green-dark));
  display:flex; align-items:center; justify-content:center;
  color:rgba(255,255,255,.92); font-size:5rem;
}
.fleet-detail-media::after{
  content:""; position:absolute; inset:0;
  background-image:repeating-linear-gradient(90deg, transparent 0 26px, rgba(255,255,255,.05) 26px 28px);
}
.fleet-num{
  position:absolute; top:1.2rem; left:1.4rem;
  font-family:var(--font-display); font-weight:800; font-size:.85rem;
  color:rgba(255,255,255,.75); letter-spacing:.12em;
  border:1px solid rgba(255,255,255,.35); border-radius:100px;
  padding:.2rem .7rem;
}
.fleet-detail-body{ padding:clamp(1.8rem,4vw,2.6rem); }
.fleet-detail-body h2{ font-size:1.7rem; font-weight:800; }

.fleet-spec-box{
  display:flex; align-items:flex-start; gap:.75rem;
  background:var(--bc-grey); border-radius:10px; padding:.85rem 1rem;
  border:1px solid var(--bc-line);
}
.fleet-spec-box i{
  color:var(--bc-green-dark); font-size:1rem; margin-top:.18rem;
  background:#D1FAE5; width:34px; height:34px; min-width:34px;
  border-radius:8px; display:flex; align-items:center; justify-content:center;
}
.fleet-spec-box b{ display:block; font-size:.82rem; font-weight:700; margin-bottom:.1rem; }
.fleet-spec-box span{ font-size:.82rem; color:var(--bc-muted); }

/* Vehicle picker table */
.picker-table{ border-color:var(--bc-line); border-radius:var(--radius); overflow:hidden; }
.picker-table thead tr{ background:var(--bc-grey); }
.picker-table thead th{
  font-family:var(--font-display); font-size:.82rem; font-weight:700;
  color:var(--bc-black); padding:1rem .8rem; border-color:var(--bc-line);
}
.picker-table tbody td{ font-size:.9rem; padding:.85rem .8rem; border-color:var(--bc-line); }
.picker-table tbody tr:hover{ background:#F0FBF5; }

/* Fleet standards cards */
.standard-card{
  background:#fff; border:1px solid var(--bc-line); border-radius:12px;
  padding:1.2rem 1.3rem; height:100%;
  transition:transform .22s ease, box-shadow .22s ease;
}
.standard-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-soft); }
.standard-card i{
  color:var(--bc-green-dark); background:#E9F7EE;
  width:42px; height:42px; border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  font-size:.95rem; margin-bottom:.8rem;
}
.standard-card b{ display:block; font-family:var(--font-display); font-size:.95rem; margin-bottom:.3rem; }
.standard-card span{ color:var(--bc-muted); font-size:.85rem; }

/* ============ About page — value cards ============ */
.value-card{
  background:#fff; border:1px solid var(--bc-line); border-radius:var(--radius);
  padding:1.8rem 1.6rem; height:100%;
  transition:transform .25s ease, box-shadow .25s ease;
}
.value-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow-hover); }
.value-icon{
  width:52px; height:52px; border-radius:13px;
  background:#E9F7EE; color:var(--bc-green-dark);
  display:flex; align-items:center; justify-content:center;
  font-size:1.2rem; margin-bottom:1.1rem;
  transition:all .25s ease;
}
.value-card:hover .value-icon{ background:var(--bc-green); color:#fff; }
.value-card h3{ font-size:1.1rem; font-weight:800; margin-bottom:.5rem; }
.value-card p{ color:var(--bc-muted); font-size:.92rem; margin:0; }

/* ============ Legal pages (privacy, terms) ============ */
.legal-body{ max-width:100%; }
.legal-meta{
  display:flex; align-items:center; gap:.6rem;
  font-size:.88rem; color:var(--bc-muted);
  background:var(--bc-grey); border:1px solid var(--bc-line);
  border-radius:10px; padding:.75rem 1rem; margin-bottom:2rem;
}
.legal-meta i{ color:var(--bc-green); }
.legal-section{ margin-bottom:2.8rem; padding-bottom:2.8rem; border-bottom:1px solid var(--bc-line); }
.legal-section:last-child{ border-bottom:none; margin-bottom:0; padding-bottom:0; }
.legal-section h2{
  font-size:1.25rem; font-weight:800; display:flex; align-items:center; gap:.7rem;
  margin-bottom:1.1rem; color:var(--bc-black);
}
.legal-num{
  display:inline-flex; align-items:center; justify-content:center;
  width:30px; height:30px; min-width:30px; border-radius:8px;
  background:var(--bc-green); color:#fff;
  font-size:.78rem; font-weight:800; font-family:var(--font-display);
}
.legal-section h3{ font-size:1rem; font-weight:700; margin:1.2rem 0 .5rem; color:var(--bc-black); }
.legal-section p, .legal-section li{ color:var(--bc-muted); font-size:.94rem; line-height:1.75; }
.legal-section ul{ padding-left:1.2rem; margin-bottom:1rem; }
.legal-section li{ margin-bottom:.35rem; }

.legal-contact-box{
  background:var(--bc-grey); border:1px solid var(--bc-line);
  border-radius:12px; padding:1.4rem 1.5rem; margin-top:1rem;
}
.lcb-item{
  display:flex; align-items:flex-start; gap:.75rem;
  font-size:.92rem; padding:.5rem 0; color:var(--bc-muted);
}
.lcb-item i{ color:var(--bc-green); width:16px; margin-top:.2rem; }
.lcb-item a{ color:var(--bc-blue); text-decoration:none; }
.lcb-item a:hover{ color:var(--bc-green-dark); }

.legal-sidebar{ position:sticky; top:96px; display:flex; flex-direction:column; gap:1.4rem; }
.legal-toc{ list-style:none; padding:0; margin:0; }
.legal-toc li{ padding:.3rem 0; border-bottom:1px solid var(--bc-line); }
.legal-toc li:last-child{ border-bottom:none; }
.legal-toc a{
  font-size:.88rem; color:var(--bc-muted); text-decoration:none;
  transition:color .2s;
}
.legal-toc a:hover{ color:var(--bc-green-dark); }
@media (max-width:991.98px){ .legal-sidebar{ position:static; } }

/* ============ Contact page ============ */
.contact-hero-bar{
  display:flex; flex-direction:column; gap:.75rem;
}
.chb-item{
  display:flex; align-items:center; gap:1rem;
  background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.18);
  border-radius:12px; padding:.9rem 1.2rem;
  text-decoration:none; color:#fff;
  transition:background .22s ease;
}
.chb-item:hover{ background:rgba(255,255,255,.16); color:#fff; }
.chb-icon{
  width:42px; height:42px; min-width:42px; border-radius:10px;
  background:var(--bc-green); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.chb-item span{ display:block; font-size:.75rem; color:rgba(255,255,255,.65); }
.chb-item b{ display:block; font-family:var(--font-display); font-size:.98rem; }

.social-icons-contact{ display:flex; gap:.5rem; flex-wrap:wrap; }
.social-icons-contact a{
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:9px;
  background:var(--bc-grey); color:var(--bc-black);
  border:1px solid var(--bc-line);
  transition:all .22s ease; text-decoration:none;
}
.social-icons-contact a:hover{ background:var(--bc-green); color:#fff; border-color:var(--bc-green); }

.quote-nudge{
  display:flex; align-items:flex-start; gap:.85rem;
  background:#E9F7EE; border:1px solid #CBEBD6;
  border-radius:12px; padding:1rem 1.1rem;
}
.quote-nudge i{
  color:var(--bc-green-dark); font-size:1.1rem; margin-top:.15rem;
}
.quote-nudge b{ display:block; font-size:.9rem; font-weight:700; margin-bottom:.18rem; }
.quote-nudge span{ font-size:.86rem; color:var(--bc-muted); }
.quote-nudge a{ color:var(--bc-blue); font-weight:600; }

/* ============ Quote page ============ */
.quote-section-label{
  display:flex; align-items:center; gap:.6rem;
  font-family:var(--font-display); font-weight:700; font-size:.88rem;
  letter-spacing:.08em; text-transform:uppercase; color:var(--bc-green-dark);
  background:#E9F7EE; border:1px solid #CBEBD6;
  border-radius:9px; padding:.55rem 1rem; margin-bottom:1rem;
}
.quote-section-label i{ font-size:.85rem; }

.vehicle-hint{
  display:flex; align-items:flex-start; gap:.75rem;
  padding:.65rem 0; border-bottom:1px solid var(--bc-line);
}
.vehicle-hint:last-of-type{ border-bottom:none; }
.vehicle-hint i{
  color:var(--bc-green-dark); background:#E9F7EE;
  width:34px; height:34px; min-width:34px; border-radius:8px;
  display:flex; align-items:center; justify-content:center; font-size:.85rem;
}
.vehicle-hint b{ display:block; font-size:.88rem; font-weight:700; }
.vehicle-hint span{ font-size:.8rem; color:var(--bc-muted); }