body {
    font-family: 'Roboto', sans-serif;
    background-color: #000;
    color: #fff;
    margin: 0;
    overflow-x: hidden;
}

a { text-decoration: none; color: inherit; }

/* Fade-in animation */
.fade-in { animation: fadeIn 1.2s ease forwards; opacity: 0; }
@keyframes fadeIn { from { opacity: 0; transform: translateY(20px);} to {opacity: 1; transform: translateY(0);} }

/* Hero */
.hero {
    background: linear-gradient(#323232a6, rgba(86, 86, 86, 0.7)), url('images/truck-hero.webp') center/cover no-repeat;
    height: 420px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #fff;
}
.hero h1 { font-size: 3rem; margin-bottom: 15px; font-weight: 700; }
.hero p { font-size: 1.1rem; margin-bottom: 30px; color: #ddd; }
.hero .cta-buttons a {background-color: #D4AF37; color: #000; padding: 12px 30px; margin: 5px; border-radius: 8px; font-weight: 600; transition: all 0.3s ease;}
.hero .cta-buttons a:hover { background-color: #bfa133; }
/* ===== HERO UPGRADE ===== */
.premium-hero {
  background: linear-gradient(#323232a6, rgba(86, 86, 86, 0.7)), /*linear-gradient(rgba(0,0,0,0.75), rgba(0,0,0,0.85)),*/
              url('images/truck-hero.webp') center/cover no-repeat;
  padding: 50px 20px;
  text-align: center;
}

.hero-inner {
  max-width: 900px;
  margin: auto;
}

.hero-inner h1 {
  font-size: 3rem;
  color: #d4af37;
}

.hero-inner p {
  color: #ccc;
  margin: 15px 0 30px;
}

/* Stats Section */
.stats-section {display: flex; justify-content: center; align-items: center; gap: 40px; background: #0b0b0b; padding: 60px 10px; flex-wrap: wrap;}
.stat-card {background: linear-gradient(145deg, #1a1a1a, #0d0d0d); border: 1px solid rgba(212,175,55,0.4); border-radius: 14px; text-align: center; color: #fff; padding: 40px 50px; box-shadow: 0 5px 15px rgba(0,0,0,0.5);
  transition: all 0.4s ease;   min-width: 230px; position: relative;overflow: hidden; }
.stat-card::before {content: ""; position: absolute; top: -100%; left: 0; width: 100%;height: 100%;background: rgba(212,175,55,0.08);transition: 0.5s;}
.stat-card:hover::before {top: 0;}
.stat-card:hover {transform: translateY(-6px); border-color: #d4af37; box-shadow: 0 10px 25px rgba(212,175,55,0.25);}
.stat-icon {font-size: 2.8rem; color: #d4af37; margin-bottom: 10px; transition: color 0.3s ease;}
.stat-card:hover .stat-icon {color: #f5d76e;}
.stat-card h3 {font-size: 2rem; color: #d4af37; margin: 10px 0;}
.stat-card p {font-size: 1rem; color: #ccc; margin: 0; text-transform: uppercase; letter-spacing: 1px;}
@media (max-width: 768px) {
  .stat-card {padding: 30px 40px;}
  .stats-section {gap: 20px;}
}

/* Filter */
.filter-section {
    max-width: 1200px; margin: 50px auto 0; padding: 0 20px;
    display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 15px;
}
.filter-section select, .filter-section input, .filter-section button {
    padding: 10px 12px; border-radius: 6px;
    border: none; background: #111;
    color: #fff; font-size: 1rem;
    width: 100%; box-sizing: border-box;
}
/* Button Styling */
#search-btn {background: #d4af37;color: #fff;font-weight: 600;cursor: pointer;transition: all 0.3s ease;}
#search-btn:hover {background: #fff;color: #000;}
/* SEARCH BAR */
.search-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
}

.search-bar select,
.search-bar input {
  background: #111;
  color: #fff;
  border: 1px solid #222;
  padding: 12px;
  border-radius: 8px;
  min-width: 160px;
}

.search-bar button {
  background: #d4af37;
  color: #000;
  padding: 12px 25px;
  border-radius: 8px;
  font-weight: bold;
  cursor: pointer;
}

/* ===== TRUCK CARDS PREMIUM ===== */
.truck-card-premium {
  position: relative;
  height: 380px;
  border-radius: 16px;
  overflow: hidden;
  background: #111;
  transition: 0.4s ease;
}

/*.truck-card-premium img {*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  object-fit: cover;*/
/*  transition: 0.5s;*/
/*}*/

/*.truck-card-premium:hover img {*/
/*  transform: scale(1.08);*/
/*}*/
.truck-card-premium img {width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; transition: transform 0.4s ease;}
.truck-card-premium:hover img {transform: scale(1.05);}
.truck-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.9), transparent);
}

/* CONTENT */
.truck-content {
  position: absolute;
  bottom: 0;
  padding: 20px;
  width: 100%;
  color: #fff;
}

.truck-top {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}

.truck-top h3 {
  color: #d4af37;
  font-size: 1.2rem;
}

.price {
  font-weight: bold;
}

.route {
  font-size: 0.9rem;
  margin: 6px 0;
  color: #ccc;
}

.truck-meta {
  display: flex;
  gap: 10px;
  font-size: 0.85rem;
  color: #aaa;
}

/* FOOTER */
.truck-bottom {
  margin-top: 10px;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}

.book-btn {
  background: #d4af37;
  color: #000;
  padding: 6px 14px;
  border-radius: 6px;
  font-size: 0.85rem;
}

.book-btn:hover {
  background: #fff;
}

/* ===== GRID IMPROVEMENT ===== */
.truck-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
}
/* Make datepicker icon white */
.filter-section input[type="date"]::-webkit-calendar-picker-indicator {
  filter: invert(1);
  cursor: pointer;
}
.filter-section input[type="date"]::-moz-calendar-picker-indicator {
  filter: invert(1);
  cursor: pointer;
}

.capacity-group-title, .route-group-title {
  margin-top: 50px;
  margin-bottom: 20px;
  font-size: 1.8rem;
  color: #d4af37;
  text-transform: uppercase;
  border-bottom: 2px solid #d4af37;
  padding-bottom: 6px;
}
.toggle-buttons {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
  gap: 20px;
}

.toggle-buttons button {
  background: #333;
  color: #d4af37;
  border: 2px solid #d4af37;
  padding: 10px 25px;
  border-radius: 6px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.3s ease, color 0.3s ease;
}

.toggle-buttons button.active,
.toggle-buttons button:hover {
  background: #d4af37;
  color: #000;
}

/* services - how it works*/
.services{background-color:#0e0e0e;color:#fff;padding:100px 10%;text-align:center;}
.services h2{font-size:2.5rem;color:#d4af37;margin-bottom:60px;letter-spacing:1px;text-transform:uppercase;}
.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:40px;}
.service-card{background:linear-gradient(145deg,#1a1a1a,#0d0d0d);border:1px solid rgba(212,175,55,0.3);padding:40px 25px;border-radius:16px;transition:all 0.4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5);cursor:pointer;position:relative;overflow:hidden;}
.service-card::before{content:"";position:absolute;top:-100%;left:0;width:100%;height:100%;background:rgba(212,175,55,0.08);transition:0.5s;}
.service-card:hover::before{top:0;}
.service-card:hover{transform:translateY(-8px);border-color:#d4af37;box-shadow:0 10px 30px rgba(212,175,55,0.2);}
.service-icon{font-size:2.8rem;color:#d4af37;margin-bottom:20px;transition:color 0.3s ease;}
.service-icon:hover{color:#f5d76e;}
.service-card h3{font-size:1.3rem;margin-bottom:15px;color:#f0f0f0;text-transform:uppercase;}
.service-card p{color:#ccc;font-size:0.95rem;line-height:1.6;}
.testimonial-name {color:#d4af37;}

@media(max-width:768px){.services{padding:70px 8%;}.services h2{font-size:2rem;}.service-card{padding:30px 20px;}}

/* Truck Cards */
.available-trucks {text-align: center; font-size: 2.2rem; color: #d4af37; margin-bottom: 20px; text-transform: uppercase;}
/*.truck-cards {display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 25px; margin-top: 30px;}*/
/*.truck-card {position: relative; background-size: cover; background-position: center; height: 420px; border-radius: 15px; overflow: hidden; cursor: pointer; transition: transform .3s ease, box-shadow .3s ease;}*/
/*.truck-card img {width: 100%; height: 100%; object-fit: cover; object-position: center; display: block; transition: transform 0.4s ease;}*/
/*.truck-card:hover img {transform: scale(1.05);}*/
/*.truck-card:hover {transform: translateY(-5px); box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);}*/
/* Overlay layer */
/*.truck-card .overlay {position: absolute; inset: 0; background: rgba(60, 60, 60, 0.5); display: flex; align-items: flex-end; justify-content: center; transition: background .3s ease;}*/
/*.truck-card:hover .overlay {background: rgba(0,0,0,0.6);}*/
/* Floating text */
/*.truck-info {color: #fff; text-align: left; width: 100%; padding: 20px 25px; display: grid; grid-template-columns: repeat(2,1fr); gap: 10px;}*/
/*.truck-info h3 {color: #d4af37; margin: 0; font-size: 1.3rem;}*/
/*.truck-info h4 {margin: 5px 0; font-size: 1.1rem;}*/
/*.truck-info p {margin: 3px 0; color: #ddd;}*/
/*.truck-info .price {font-weight: bold; color: #d4af37; margin-top: 10px;}*/
/* Book button */
.book-btn {margin-top: 15px; display: flex; background: #d4af37; color: #111; padding: 10px 20px; border-radius: 6px; text-decoration: none; font-weight: bold; justify-content: center; transition: background .3s ease, color .3s ease;}
.book-btn:hover {background: #fff;color: #000;}

/* Map */
.map-container {width: 95%; height: 450px; border-radius: 15px; overflow: hidden; box-shadow: 0 0 25px rgba(212, 175, 55, 0.15); border: 1px solid rgba(212, 175, 55, 0.2); padding: 60px 20px; margin: 80px 20px;}
.map-container iframe {width: 100%; height: 100%; border: none;}

/* CTA */
.cta-section {
    background: #D4AF37; color: #000; text-align: center;
    padding: 60px 20px; border-radius: 12px; margin: 80px 20px;
}
.cta-section a {
    background: #000; color: #fff; padding: 15px 30px; border-radius: 8px;
    transition: .3s;
}
.cta-section a:hover { background: #222; }

@media(max-width:768px){
    .hero { height:500px;}
    .steps{flex-direction:column;align-items:center;}
    .filter-section{display:flex;flex-direction:column;align-items:center;}
}
/* PREMIUM HERO */
.premium-hero {
  height: 500px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.hero-content {
  text-align: center;
  max-width: 700px;
}

.hero-actions {
  margin-top: 25px;
}

.primary-btn {
  background: #d4af37;
  color: #000;
  padding: 12px 25px;
  margin: 5px;
  border-radius: 8px;
  font-weight: 600;
}

.secondary-btn {
  border: 2px solid #d4af37;
  color: #d4af37;
  padding: 12px 25px;
  margin: 5px;
  border-radius: 8px;
}

/* OPTIONS SECTION */
.transport-options {
  padding: 80px 10%;
  text-align: center;
  background: #0b0b0b;
}

.transport-options h2 {
  color: #d4af37;
  margin-bottom: 50px;
}

.options-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
}

.option-card {
  background: linear-gradient(145deg,#1a1a1a,#0d0d0d);
  padding: 40px;
  border-radius: 16px;
  border: 1px solid rgba(212,175,55,0.2);
  transition: 0.4s;
}

.option-card:hover {
  transform: translateY(-8px);
  border-color: #d4af37;
}

.option-card ion-icon {
  font-size: 40px;
  color: #d4af37;
  margin-bottom: 15px;
}

.option-card h3 {
  margin-bottom: 10px;
}

.option-card ul {
  text-align: left;
  margin: 20px 0;
  color: #ccc;
}

.option-btn {
  display: inline-block;
  margin-top: 15px;
  background: #d4af37;
  color: #000;
  padding: 10px 20px;
  border-radius: 6px;
}

/* Highlight LOAD option */
.option-card.highlight {
  border: 2px solid #d4af37;
  box-shadow: 0 0 20px rgba(212,175,55,0.2);
}
/* LOAD STATUS TAG */
.truck-meta span i {
  margin-right: 5px;
  color: #d4af37;
}

/* BID BUTTON VARIANT */
.bid-btn {
  background: #d4af37;
}

.bid-btn:hover {
  background: #fff;
}

/* Floating WhatsApp Button */
.whatsapp-btn {position: fixed;bottom: 30px;right: 30px;background-color: var(--gold);color: var(--black);border-radius: 50%;width: 60px;height: 60px;display: flex;justify-content: center;align-items: center;font-size: 30px;text-decoration: none;box-shadow: 0 8px 20px rgba(0,0,0,0.4);transition: all 0.3s ease;z-index: 1000;}
.whatsapp-btn:hover {transform: scale(1.1);box-shadow: 0 12px 25px rgba(0,0,0,0.6);}
.whatsapp-btn ion-icon {font-size: 28px;}

.trust-text {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: #d4af37; /* gold */
  background: rgba(212, 175, 55, 0.08);
  border: 1px solid rgba(212, 175, 55, 0.2);
  padding: 10px 14px;
  border-radius: 8px;
  margin-top: 10px;
  font-weight: 500;
}

.trust-text i {
  color: #d4af37;
  font-size: 16px;
}
.price-note {
  font-size: 14px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.05);
  border-left: 3px solid #d4af37;
  padding: 10px 14px;
  margin-top: 8px;
  border-radius: 6px;
  line-height: 1.5;
}
.price-note i {
  color: #d4af37;
  margin-right: 6px;
}

.filter-note {
  font-size: 14px;
  color: #e5e5e5;
  background: rgba(255, 255, 255, 0.04);
  border-left: 3px solid #d4af37;
  padding: 10px 14px;
  margin: 10px auto 15px; /* centers horizontally */
  border-radius: 6px;
  line-height: 1.5;
  max-width: 600px;
  text-align: center; /* centers text */
}

/*Location Section*/
.locations{
    padding: 4rem 5%;
    text-align: center;
    background: #0f0f0f;
}
.location-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 25px;
  margin-top: 20px;
}

.location-grid ul {
  list-style: none;
  padding: 0;
}

.location-grid li {
  padding: 5px 0;
}
.location-card {
  background: linear-gradient(145deg, #1a1a1a, #0d0d0d);
  border: 1px solid rgba(212, 175, 55, 0.3);
  padding: 30px 20px;
  border-radius: 16px;
  transition: all 0.4s ease;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  position: relative;
  overflow: hidden;
}

.location-card::before {
  content: "";
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(212, 175, 55, 0.08);
  transition: 0.5s;
}

.location-card:hover::before {
  top: 0;
}

.location-card:hover {
  transform: translateY(-8px);
  border-color: #d4af37;
  box-shadow: 0 10px 30px rgba(212, 175, 55, 0.2);
}

.location-card i {
  font-size: 2.8rem;
  color: #d4af37;
  margin-bottom: 20px;
  transition: color 0.3s ease;
}

.location-card:hover i {
  color: #f5d76e;
}

.location-card h3 {
  font-size: 1.3rem;
  margin-bottom: 15px;
  color: #f0f0f0;
  text-transform: uppercase;
}

.location-card p {
  color: #ccc;
  font-size: 0.95rem;
  line-height: 1.6;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .location-card {
        padding: 30px 20px;
    }
}