:root {
  --primary-red: #A91E2C;
  --dark-gray: #2c2c2c;
  --light-gray: #f8f9fa;
  --text-gray: #666;
}

body {
  font-family: 'Open Sans', sans-serif;
  color: #333;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
}

.top-bar {
  font-size: 0.9rem;
}

.top-bar a:hover {
  opacity: 0.8;
}

.navbar {
  padding: 1rem 0;
  transition: all 0.3s ease;
  background-color: #f8f9fa !important;
  border-bottom: 3px solid var(--primary-red);
}

.navbar-brand img {
  transition: all 0.3s ease;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1));
}

.navbar .nav-link {
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  padding: 0.5rem 1rem !important;
  transition: color 0.3s ease;
}

.navbar .nav-link:hover {
  color: var(--primary-red) !important;
}

.navbar .btn-danger {
  background-color: var(--primary-red);
  border-color: var(--primary-red);
}

.navbar .btn-danger:hover {
  background-color: #d11f21;
  border-color: #d11f21;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(237, 34, 36, 0.3);
}

.dropdown-menu {
  border: 2px solid var(--primary-red);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  margin-top: 0.5rem;
}

.dropdown-item {
  padding: 0.75rem 1.5rem;
  transition: all 0.2s ease;
}

.dropdown-item:hover {
  background-color: var(--primary-red);
  color: white;
}

.hero-section {
  min-height: 500px;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

@media (min-width: 768px) {
  .hero-section {
    min-height: 600px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
  }
}

.btn-danger {
  background-color: var(--primary-red);
  border-color: var(--primary-red);
  font-weight: 600;
  padding: 0.75rem 2rem;
}

.btn-danger:hover {
  background-color: #d11f21;
  border-color: #d11f21;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(237, 34, 36, 0.4);
}

.btn-outline-danger {
  color: var(--primary-red);
  border-color: var(--primary-red);
  font-weight: 600;
}

.btn-outline-danger:hover {
  background-color: var(--primary-red);
  border-color: var(--primary-red);
  color: white;
}

.btn-lg {
  padding: 1rem 2.5rem;
  font-size: 1.1rem;
}

.cta-section {
  background: linear-gradient(135deg, var(--primary-red) 0%, #d11f21 100%);
}

.cta-section .btn-light:hover {
  background-color: white;
  transform: translateY(-3px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.2);
}

footer {
  background-color: #1a1a1a;
}

footer a:hover {
  color: var(--primary-red) !important;
  transition: color 0.3s ease;
}

footer .social-links a {
  transition: all 0.3s ease;
}

footer .social-links a:hover {
  transform: translateY(-3px);
}

@media (max-width: 768px) {
  .top-bar .col-md-6:last-child {
    text-align: left !important;
    margin-top: 0.5rem;
  }
}

@media (max-width: 768px) {
  .navbar-brand img {
    height: 60px;
  }
}

* {
  transition: color 0.2s ease, background-color 0.2s ease;
}

a, button, .btn {
  transition: all 0.3s ease;
}

.form-control:focus {
  border-color: var(--primary-red);
  box-shadow: 0 0 0 0.2rem rgba(237, 34, 36, 0.25);
}

.form-label {
  font-weight: 600;
  color: #333;
}

:root, [data-bs-theme=light] {
  --bs-primary: #A91E2C;
  --bs-primary-rgb: 169,30,44;
  --bs-primary-text-emphasis: #440C12;
  --bs-primary-bg-subtle: #EED2D5;
  --bs-primary-border-subtle: #DDA5AB;
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #A91E2C;
  --bs-btn-border-color: #A91E2C;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #901A25;
  --bs-btn-hover-border-color: #871823;
  --bs-btn-focus-shadow-rgb: 242,221,223;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #871823;
  --bs-btn-active-border-color: #7F1721;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #A91E2C;
  --bs-btn-disabled-border-color: #A91E2C;
}

.btn-outline-primary {
  --bs-btn-color: #A91E2C;
  --bs-btn-border-color: #A91E2C;
  --bs-btn-focus-shadow-rgb: 169,30,44;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #A91E2C;
  --bs-btn-hover-border-color: #A91E2C;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #A91E2C;
  --bs-btn-active-border-color: #A91E2C;
  --bs-btn-disabled-color: #A91E2C;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #A91E2C;
}

.card-body {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.card-body ul {
  flex-grow: 1;
}

.card-body .btn {
  margin-top: auto !important;
}

.hero-engine {
  background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-truck-white-350.webp') type('image/webp'), url('../../assets/img/ram-2500-truck-white-350.jpg') type('image/jpeg'));
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

@media (min-width: 576px) {
  .hero-engine {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-truck-white-700.webp') type('image/webp'), url('../../assets/img/ram-2500-truck-white-700.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

@media (min-width: 768px) {
  .hero-engine {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-truck-white.webp') type('image/webp'), url('../../assets/img/ram-2500-truck-white.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

.hero-transmission {
  background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-3500-cummins-truck-black-350.webp') type('image/webp'), url('../../assets/img/ram-3500-cummins-truck-black-350.jpg') type('image/jpeg'));
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

@media (min-width: 576px) {
  .hero-transmission {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-3500-cummins-truck-black-700.webp') type('image/webp'), url('../../assets/img/ram-3500-cummins-truck-black-700.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

@media (min-width: 768px) {
  .hero-transmission {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-3500-cummins-truck-black.webp') type('image/webp'), url('../../assets/img/ram-3500-cummins-truck-black.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

.hero-fuel-air {
  background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-cummins-truck-white-350.webp') type('image/webp'), url('../../assets/img/ram-2500-cummins-truck-white-350.jpg') type('image/jpeg'));
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media (min-width: 576px) {
  .hero-fuel-air {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-cummins-truck-white-700.webp') type('image/webp'), url('../../assets/img/ram-2500-cummins-truck-white-700.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

@media (min-width: 768px) {
  .hero-fuel-air {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-2500-cummins-truck-white.webp') type('image/webp'), url('../../assets/img/ram-2500-cummins-truck-white.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

.hero-suspension-steering {
  background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-vehicle-lift-350.webp') type('image/webp'), url('../../assets/img/ram-truck-vehicle-lift-350.jpg') type('image/jpeg'));
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

@media (min-width: 576px) {
  .hero-suspension-steering {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-vehicle-lift-700.webp') type('image/webp'), url('../../assets/img/ram-truck-vehicle-lift-700.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

@media (min-width: 768px) {
  .hero-suspension-steering {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-vehicle-lift-1280.webp') type('image/webp'), url('../../assets/img/ram-truck-vehicle-lift-1280.jpg') type('image/jpeg'));
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}

.hero-home {
  background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-white-350.webp') type('image/webp'), url('../../assets/img/ram-truck-white-350.png') type('image/png'));
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
}

@media (min-width: 576px) {
  .hero-home {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-white-700.webp') type('image/webp'), url('../../assets/img/ram-truck-white-700.png') type('image/png'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

@media (min-width: 768px) {
  .hero-home {
    background-image: linear-gradient(135deg, rgba(0,0,0,0.8), rgba(237,34,36,0.6)), image-set(url('../../assets/img/ram-truck-white.webp') type('image/webp'), url('../../assets/img/ram-truck-white.png') type('image/png'));
    background-size: cover;
    background-position: top;
    background-repeat: no-repeat;
  }
}

