:root{
  --gold:#F5A623;
  --gold-dark:#D4891A;
  --gold-light:#FFD166;
  --tn-yellow:#F5A623;
  --tn-amber:#D4891A;
  --tn-border-yellow:rgba(245,166,35,0.25);
  --dark:#0D0D0D;
  --dark2:#141414;
  --dark3:#1C1C1C;
  --text:#111827;
  --muted:#64748b;
  --border:rgba(245,166,35,0.2);
  --card-bg:#ffffff;
  --section-bg:#f8fafc;
}

*{margin:0;padding:0;box-sizing:border-box}

/* 1. Base Scrolling & Overflow Optimization */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  overflow-x:hidden;
  max-width:100%;
  scroll-padding-top:76px;
  font-size:16px;
}

@media (prefers-reduced-motion: no-preference) {
  html{scroll-behavior:smooth}
}

@media (prefers-reduced-motion: reduce) {
  html{scroll-behavior:auto !important}
  *, *::before, *::after {
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
    scroll-behavior:auto !important;
  }
}

body{
  font-family:'Poppins',sans-serif;
  background:#ffffff;
  color:#111827;
  overflow-x:hidden;
  max-width:100%;
  position:relative;
  -webkit-overflow-scrolling:touch;
  -webkit-font-smoothing:antialiased;
}

/* 2. Mobile-Specific Smooth & Natural Touch Momentum */
@media (max-width: 991px) {
  html, body {
    -webkit-overflow-scrolling:touch;
    overscroll-behavior-x:none;
    overscroll-behavior-y:auto;
  }

  /* GPU-layer isolation for fixed/floating UI to prevent scroll stutter */
  .navbar,
  .scroll-top,
  .wa-btn,
  .fback-fab,
  #com-ment,
  #scrollTop {
    -webkit-transform:translateZ(0);
    transform:translateZ(0);
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
  }

  .wa-btn {
    will-change:transform;
  }
}

/* ===== UTILITIES ===== */
.tn-text-yellow{color:#F5A623 !important}
.tn-text-amber{color:#D4891A !important}

/* ===== NAVBAR ===== */
.navbar{
  background:rgba(13,13,13,0.97);
  backdrop-filter:blur(20px);
  padding:12px 0;
  border-bottom:1px solid var(--border);
  position:fixed;
  top:0;
  width:100%;
  z-index:1000;
  transition:all 0.3s ease;
}
.navbar.scrolled{
  padding:8px 0;
  background:rgba(13,13,13,1);
  box-shadow:0 4px 25px rgba(0,0,0,0.5);
}
.navbar-brand{
  font-family:'Poppins',sans-serif;
  font-weight:800;
  color:#fff !important;
  display:inline-flex;
  align-items:center;
  padding:0;
  margin:0;
}
.navbar-brand .logo-badge{
  display:inline-flex;
  align-items:center;
}
.navbar-brand img{
  height:52px;
  max-height:52px;
  width:auto;
  max-width:170px;
  object-fit:contain;
  vertical-align:middle;
  transition:height 0.3s ease;
}
.navbar.scrolled .navbar-brand img{
  height:44px;
}
.navbar-nav .nav-link{
  color:rgba(255,255,255,0.85) !important;
  font-size:0.8rem;
  font-weight:600;
  letter-spacing:0.5px;
  padding:8px 12px !important;
  transition:color 0.25s ease;
  text-transform:uppercase;
  display:flex;
  align-items:center;
}
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link.active{
  color:var(--gold) !important;
}
/* ===== NAVBAR DROPDOWN ===== */
.navbar-nav .dropdown-menu {
  background: rgba(18, 18, 18, 0.98);
  border: 1px solid rgba(245, 166, 35, 0.3);
  border-radius: 12px;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.7);
  padding: 8px 0;
  min-width: 270px;
}
.navbar-nav .dropdown-menu .dropdown-item {
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.82rem;
  font-weight: 500;
  padding: 8px 18px;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
}
.navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar-nav .dropdown-menu .dropdown-item:focus {
  background: rgba(245, 166, 35, 0.12);
  color: var(--gold, #F5A623);
  padding-left: 22px;
}
.navbar-nav .dropdown-header {
  font-size: 0.72rem;
  letter-spacing: 0.8px;
  color: var(--gold, #F5A623);
  font-weight: 700;
  padding: 6px 18px 4px;
}
.navbar-nav .dropdown-divider {
  border-color: rgba(255, 255, 255, 0.1);
  margin: 6px 0;
}
@media (min-width: 992px) {
  .navbar-nav .nav-item.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
    animation: navFadeIn 0.2s ease forwards;
  }
}
@keyframes navFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 991px) {
  .navbar-nav .dropdown-menu {
    background: rgba(28, 28, 28, 0.95);
    border: 1px solid rgba(245, 166, 35, 0.2);
    margin: 5px 0 10px 10px;
    padding: 6px 0;
  }
  .navbar-nav .dropdown-menu .dropdown-item {
    padding: 8px 14px;
    font-size: 0.85rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  }
}
.navbar-toggler{
  border:1.5px solid var(--border);
  padding:6px 10px;
  border-radius:8px;
  background:transparent;
  outline:none;
}
.navbar-toggler:focus{
  box-shadow:0 0 0 3px rgba(245,166,35,0.25);
}
.navbar-toggler-icon{
  filter:brightness(10);
}
.btn-book-nav{
  background:var(--gold);
  color:#000000 !important;
  font-weight:700;
  font-size:0.82rem;
  letter-spacing:0.4px;
  padding:9px 20px !important;
  border-radius:8px;
  text-transform:uppercase;
  transition:all 0.3s ease;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  text-decoration:none;
}
.btn-book-nav:hover{
  background:var(--gold-light);
  color:#000000 !important;
  transform:translateY(-1px);
  box-shadow:0 4px 15px rgba(245,166,35,0.35);
}

/* ===== HERO SECTION ===== */
.hero-section{
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#0d0d0d;
  min-height:90vh;
}
.hero-bg{
  position:absolute;
  inset:0;
  background:url('https://images.unsplash.com/photo-1568605117036-5fe5e7bab0b7?w=1600&q=80') center/cover no-repeat;
  opacity:0.25;
  z-index:0;
}
.hero-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(13,13,13,0.96) 0%,rgba(13,13,13,0.72) 60%,rgba(13,13,13,0.94) 100%);
  z-index:1;
}
.hero-content{
  position:relative;
  z-index:2;
  padding-top:clamp(90px, 12vw, 125px);
}
.hero-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(245,166,35,0.12);
  border:1px solid var(--border);
  color:var(--gold);
  font-size:clamp(0.68rem, 1.4vw, 0.75rem);
  font-weight:600;
  letter-spacing:1.5px;
  text-transform:uppercase;
  padding:7px 16px;
  border-radius:50px;
  margin-bottom:1.25rem;
}
.hero-badge::before{
  content:'';
  width:6px;
  height:6px;
  background:var(--gold);
  border-radius:50%;
  animation:pulse 1.5s infinite;
}
@keyframes pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:0.4;transform:scale(1.3)}
}
.hero-title{
  font-family:'Poppins',sans-serif;
  font-size:clamp(1.9rem, 4.5vw, 3.4rem);
  font-weight:900;
  color:#ffffff;
  line-height:1.18;
  margin-bottom:1rem;
  letter-spacing:-0.5px;
}
.hero-title .highlight{
  color:var(--gold);
}
.hero-sub{
  font-size:clamp(0.88rem, 1.8vw, 1.05rem);
  color:rgba(255,255,255,0.75);
  line-height:1.75;
  max-width:580px;
  margin-bottom:1.75rem;
  font-weight:300;
}
.hero-btns{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:2.25rem;
}
.btn-primary-gold{
  background:var(--gold);
  color:#000000;
  padding:12px 28px;
  border-radius:10px;
  font-weight:700;
  font-size:0.88rem;
  letter-spacing:0.3px;
  border:none;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:all 0.3s ease;
}
.btn-primary-gold:hover{
  background:var(--gold-light);
  color:#000000;
  transform:translateY(-2px);
  box-shadow:0 8px 25px rgba(245,166,35,0.35);
}
.btn-outline-white{
  border:1.5px solid rgba(255,255,255,0.28);
  color:#ffffff;
  padding:12px 26px;
  border-radius:10px;
  font-weight:600;
  font-size:0.88rem;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  transition:all 0.3s ease;
  background:transparent;
}
.btn-outline-white:hover{
  border-color:var(--gold);
  color:var(--gold);
  background:rgba(245,166,35,0.06);
}
.hero-stats{
  display:flex;
  gap:0;
  border-top:1px solid var(--border);
  padding-top:1.5rem;
  flex-wrap:wrap;
}
.stat-item{
  padding-right:2rem;
  margin-right:2rem;
  border-right:1px solid var(--border);
}
.stat-item:last-child{
  border-right:none;
  margin-right:0;
  padding-right:0;
}
.stat-num{
  font-size:clamp(1.6rem, 3vw, 2rem);
  font-weight:800;
  color:var(--gold);
  line-height:1;
}
.stat-label{
  font-size:0.72rem;
  color:rgba(255,255,255,0.6);
  text-transform:uppercase;
  letter-spacing:1.5px;
  margin-top:4px;
}

/* Hero Highlights Row */
.hero-highlights-row{
  margin-top:20px;
}
.hero-highlight-card{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(245,166,35,0.25);
  border-radius:14px;
  padding:16px 18px;
  display:flex;
  align-items:center;
  gap:14px;
  backdrop-filter:blur(10px);
  transition:all 0.3s ease;
  height:100%;
}
.hero-highlight-card:hover{
  border-color:#F5A623;
  transform:translateY(-3px);
  box-shadow:0 8px 24px rgba(0,0,0,0.4),0 0 15px rgba(245,166,35,0.15);
}
.hero-hl-icon{
  width:46px;
  height:46px;
  border-radius:12px;
  background:rgba(245,166,35,0.15);
  border:1px solid rgba(245,166,35,0.3);
  color:#F5A623;
  font-size:1.35rem;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.hero-hl-title{
  font-size:0.95rem;
  font-weight:700;
  color:#F5A623 !important;
  margin-bottom:2px;
}
.hero-hl-sub{
  font-size:0.78rem;
  color:#e2e8f0;
  line-height:1.4;
  margin:0;
}

/* ===== TRUSTED STRIP ===== */
.trusted-strip{
  background:var(--dark2);
  padding:16px 0;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.trusted-strip .item{
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(255,255,255,0.8);
  font-size:clamp(0.75rem, 1.5vw, 0.82rem);
  font-weight:500;
  white-space:nowrap;
}
.trusted-strip .item i{
  color:var(--gold);
  font-size:1.05rem;
}
.trusted-strip .sep{
  color:var(--border);
  font-size:1.1rem;
}

/* ===== SECTION TITLES & HEADINGS ===== */
.section-tag{
  font-size:clamp(0.68rem, 1.4vw, 0.74rem);
  font-weight:700;
  letter-spacing:2.5px;
  color:var(--gold);
  text-transform:uppercase;
  margin-bottom:8px;
  display:block;
}
.section-title{
  font-family:'Poppins',sans-serif;
  font-size:clamp(1.65rem, 3.5vw, 2.45rem);
  font-weight:800;
  color:#111827;
  line-height:1.25;
  letter-spacing:-0.5px;
}
.section-title span{
  color:var(--gold);
}
.section-sub{
  color:#4b5563;
  font-size:clamp(0.85rem, 1.6vw, 0.95rem);
  line-height:1.75;
  font-weight:400;
  margin-top:10px;
  max-width:580px;
}

/* ===== SECTIONS CONTAINER BACKGROUNDS (CLEAN WHITE / LIGHT THEME) ===== */
.services-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff}
.tamilnadu-section{padding:clamp(55px, 7vw, 85px) 0;background:#f8fafc}
.routes-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff}
.airport-section{padding:clamp(55px, 7vw, 85px) 0;background:#f8fafc}
.outstation-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff}
.local-section{padding:clamp(55px, 7vw, 85px) 0;background:#f8fafc}
.fleet-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff}
.how-section{padding:clamp(55px, 7vw, 85px) 0;background:#0d0d0d;position:relative;overflow:hidden}
.areas-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff !important}
.occasion-section{padding:clamp(55px, 7vw, 85px) 0;background:#f8fafc}
.faq-section{padding:clamp(55px, 7vw, 85px) 0;background:#ffffff}
.testimonial-section{padding:clamp(55px, 7vw, 85px) 0;background:#f8fafc}

/* Distinct Dark Highlight Sections */
.why-section{padding:clamp(55px, 7vw, 85px) 0;background:#0d0d0d;position:relative;overflow:hidden}
.contact-section{padding:clamp(55px, 7vw, 85px) 0;background:#0d0d0d;position:relative;overflow:hidden}

/* ===== SERVICE & FEATURE CARDS (WHITE CARDS WITH CLEAN SHADOWS) ===== */
.service-card,
.region-card,
.route-card,
.airport-card,
.outstation-card,
.local-card,
.occasion-card,
.fleet-card,
.area-card,
.tn-coverage-card{
  background:#ffffff;
  border:1.5px solid #e5e7eb;
  border-radius:16px;
  padding:clamp(20px, 2.5vw, 26px) clamp(16px, 2vw, 22px);
  transition:all 0.35s ease;
  color:#111827;
  height:100%;
  box-shadow:0 4px 18px rgba(0,0,0,0.03);
  display:flex;
  flex-direction:column;
}
.service-card:hover,
.region-card:hover,
.route-card:hover,
.airport-card:hover,
.outstation-card:hover,
.local-card:hover,
.occasion-card:hover,
.fleet-card:hover,
.area-card:hover,
.tn-coverage-card:hover{
  border-color:#F5A623;
  transform:translateY(-4px);
  box-shadow:0 14px 32px rgba(245,166,35,0.14),0 4px 15px rgba(0,0,0,0.04);
}

.service-card h3,
.region-card h3,
.route-card h3,
.airport-card h3,
.outstation-card h3,
.local-card h3,
.occasion-card h3,
.fleet-card h3,
.fleet-card h4,
.step-card h3,
.step-card h4,
.area-card h3,
.tn-card-title{
  color:#111827 !important;
  font-weight:700;
  font-size:clamp(0.95rem, 1.8vw, 1.05rem);
  margin-bottom:8px;
  line-height:1.35;
}
.service-card p,
.region-card p,
.route-desc,
.airport-card p,
.outstation-card p,
.local-card p,
.occasion-card p,
.fleet-card p,
.step-card p,
.area-card p,
.tn-card-desc{
  color:#4b5563;
  font-size:clamp(0.8rem, 1.4vw, 0.86rem);
  line-height:1.7;
  font-weight:400;
  margin:0;
}

/* Icon wraps */
.service-icon-wrap,
.region-icon-wrap,
.airport-icon-wrap,
.outstation-icon-wrap,
.local-icon-wrap,
.occasion-icon-wrap,
.area-icon-wrap,
.tn-badge-icon{
  width:48px;
  height:48px;
  background:#FFF8E1;
  border:1px solid rgba(245,166,35,0.3);
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.3rem;
  color:#D4891A;
  margin-bottom:14px;
  transition:all 0.3s ease;
  flex-shrink:0;
}
.service-card:hover .service-icon-wrap,
.region-card:hover .region-icon-wrap,
.airport-card:hover .airport-icon-wrap,
.outstation-card:hover .outstation-icon-wrap,
.local-card:hover .local-icon-wrap,
.occasion-card:hover .occasion-icon-wrap,
.area-card:hover .area-icon-wrap,
.tn-coverage-card:hover .tn-badge-icon{
  background:#F5A623;
  color:#000000;
}

/* Route Cards Meta */
.route-card{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.route-header{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.route-icon{
  width:42px;
  height:42px;
  background:#FFF8E1;
  border:1px solid rgba(245,166,35,0.3);
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.15rem;
  color:#D4891A;
  flex-shrink:0;
}
.route-card:hover .route-icon{
  background:#F5A623;
  color:#000000;
}
.route-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:12px;
  margin-top:14px;
  border-top:1px dashed #e5e7eb;
  font-size:0.75rem;
  color:#6b7280;
  gap:8px;
  flex-wrap:wrap;
}
.route-badge{
  background:#FFF8E1;
  color:#D4891A;
  font-weight:700;
  padding:3px 10px;
  border-radius:20px;
  font-size:0.68rem;
  border:1px solid rgba(245,166,35,0.3);
  white-space:nowrap;
}

/* Fleet Card Badges */
.fleet-card{
  display:flex;
  flex-direction:column;
  height:100%;
  text-align:center;
  align-items:center;
}
.fleet-emoji{font-size:clamp(2.2rem, 4vw, 2.8rem);display:block;margin-bottom:12px;color:#F5A623}
.fleet-card h3{
  min-height:2.2em;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:6px;
  width:100%;
}
.fleet-card p{
  min-height:2.8em;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:12px;
  width:100%;
  line-height:1.4;
}
.fleet-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--gold);
  color:#000000;
  font-size:0.65rem;
  font-weight:700;
  padding:4px 12px;
  border-radius:20px;
  margin-top:auto !important;
  text-transform:uppercase;
  letter-spacing:0.5px;
}

/* How It Works Steps */
.step-card{
  text-align:center;
  padding:clamp(14px, 2vw, 20px) 10px;
}
.step-num{
  width:52px;
  height:52px;
  background:#141414;
  border:2px solid #F5A623;
  color:#F5A623 !important;
  font-size:1.25rem;
  font-weight:900;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 16px;
  font-family:'Poppins',sans-serif;
  box-shadow:0 0 20px rgba(245,166,35,0.35);
}

/* Why Choose Us Cards (Dark Highlight Section) */
.why-card{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08);
  border-radius:16px;
  padding:clamp(20px, 2.5vw, 26px) clamp(16px, 2vw, 22px);
  transition:all 0.3s ease;
  height:100%;
  display:flex;
  flex-direction:column;
}
.why-card:hover{
  background:rgba(245,166,35,0.08);
  border-color:var(--gold);
}
.why-num{
  font-size:clamp(2rem, 3.5vw, 2.5rem);
  font-weight:900;
  color:rgba(245,166,35,0.25);
  line-height:1;
  margin-bottom:8px;
  font-family:'Poppins',sans-serif;
}
.why-card h3, .why-card h4{
  font-size:0.98rem;
  font-weight:700;
  color:#ffffff !important;
  margin-bottom:8px;
}
.why-card p{
  font-size:0.82rem;
  color:rgba(255,255,255,0.65);
  line-height:1.7;
  font-weight:300;
  margin:0;
}
.why-icon{
  color:var(--gold);
  font-size:1.4rem;
  margin-bottom:10px;
}

/* ===== SERVICE AREAS & COVERAGE CARDS ===== */
.primary-base-box{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:#FFF8E1;
  border:1.5px solid rgba(245,166,35,0.4);
  color:#111827;
  padding:10px 20px;
  border-radius:50px;
  font-size:clamp(0.78rem, 1.5vw, 0.88rem);
  font-weight:600;
  box-shadow:0 4px 15px rgba(245,166,35,0.1);
  max-width:100%;
}
.primary-base-box i{
  color:#F5A623;
  font-size:1.05rem;
  flex-shrink:0;
}
.area-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:12px;
}
.tn-pill, .area-tag{
  background:#f1f5f9 !important;
  color:#1e293b !important;
  border:1px solid #e2e8f0 !important;
  font-size:0.74rem !important;
  font-weight:600 !important;
  padding:5px 10px !important;
  border-radius:8px !important;
  display:inline-block;
  transition:all 0.25s ease;
  text-decoration:none;
}
.tn-pill:hover, .area-tag:hover{
  background:#FFF8E1 !important;
  border-color:#F5A623 !important;
  color:#D4891A !important;
  transform:translateY(-2px);
}

/* ===== TESTIMONIALS ===== */
.testimonial-card{
  background:#ffffff;
  border-radius:16px;
  padding:clamp(20px, 2.5vw, 26px);
  border:1.5px solid #e5e7eb;
  height:100%;
  transition:all 0.3s ease;
  box-shadow:0 4px 18px rgba(0,0,0,0.02);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.testimonial-card:hover{
  border-color:var(--gold);
  box-shadow:0 12px 35px rgba(245,166,35,0.12);
}
.stars{
  color:var(--gold);
  font-size:0.9rem;
  margin-bottom:10px;
}
.testimonial-card p{
  font-size:clamp(0.8rem, 1.4vw, 0.86rem);
  color:#4b5563;
  line-height:1.75;
  font-style:italic;
  margin:0;
}
.t-author{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #f1f5f9;
}
.t-avatar{
  width:38px;
  height:38px;
  background:var(--gold);
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  font-size:0.82rem;
  color:#000000;
  flex-shrink:0;
}
.t-name{
  font-size:0.84rem;
  font-weight:700;
  color:#111827;
}
.t-city{
  font-size:0.72rem;
  color:#6b7280;
}

/* ===== FAQ SECTION ===== */
.faq-accordion{
  max-width:920px;
  margin:0 auto;
}
.faq-item{
  background:#ffffff;
  border:1.5px solid #e5e7eb;
  border-radius:14px;
  margin-bottom:12px;
  overflow:hidden;
  transition:all 0.3s ease;
  box-shadow:0 2px 8px rgba(0,0,0,0.02);
}
.faq-item:hover{
  border-color:var(--gold);
}
.faq-question{
  padding:clamp(14px, 2vw, 18px) clamp(16px, 2.5vw, 22px);
  cursor:pointer;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  font-weight:700;
  font-size:clamp(0.86rem, 1.5vw, 0.95rem);
  color:#111827;
  user-select:none;
  background:#ffffff;
  border:none;
  width:100%;
  text-align:left;
  transition:color 0.2s ease;
}
.faq-question:hover{color:#D4891A}
.faq-question i{font-size:1.1rem;color:var(--gold);transition:transform 0.3s;flex-shrink:0}
.faq-item.active .faq-question i{transform:rotate(180deg)}
.faq-answer{padding:0 24px 20px;font-size:0.88rem;color:#4b5563;line-height:1.8;display:none}
.faq-item.active .faq-answer{display:block}

/* ===== CONTACT CARDS (DARK CONTRAST SECTION) ===== */
.contact-card{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(245,166,35,0.25);
  border-radius:16px;
  padding:clamp(20px, 2.5vw, 26px) clamp(16px, 2vw, 20px);
  text-align:center;
  transition:all 0.3s;
  height:100%;
}
.contact-card:hover{
  background:rgba(255,255,255,0.09);
  border-color:#F5A623;
  box-shadow:0 12px 30px rgba(0,0,0,0.4),0 0 15px rgba(245,166,35,0.15);
  transform:translateY(-3px);
}
.contact-icon{
  width:52px;
  height:52px;
  border-radius:50%;
  background:rgba(245,166,35,0.15);
  border:1px solid rgba(245,166,35,0.3);
  color:#F5A623;
  font-size:1.5rem;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
}
.contact-card h3, .contact-card h5{
  color:#F5A623 !important;
  font-size:0.85rem;
  font-weight:700;
  letter-spacing:1.5px;
  text-transform:uppercase;
  margin-bottom:8px;
}
.contact-card p, .contact-card p a{
  color:#ffffff !important;
  font-weight:600;
  font-size:0.95rem;
  text-decoration:none;
  transition:color 0.2s;
  word-break:break-word;
}
.contact-card p a:hover{
  color:#F5A623 !important;
}
.contact-card small{
  color:rgba(255,255,255,0.6);
  font-size:0.75rem;
  display:block;
  margin-top:4px;
}

/* ===== CHECKLIST & SIDEBAR ===== */
.check-list{list-style:none;padding:0}
.check-list li{display:flex;align-items:flex-start;gap:10px;font-size:0.85rem;color:rgba(255,255,255,0.78);padding:8px 0;border-bottom:1px solid rgba(255,255,255,0.06)}
.check-list li:last-child{border-bottom:none}
.check-list li i{color:var(--gold);margin-top:2px;flex-shrink:0}

/* ===== INTERACTIVE BOOKING ENGINE CARD (CLEAN WHITE CARD) ===== */
.booking-float-card{
  background:#ffffff;
  border-radius:20px;
  padding:clamp(20px, 3vw, 32px) clamp(16px, 2.5vw, 28px);
  box-shadow:0 30px 80px rgba(0,0,0,0.5);
  position:relative;
  z-index:2;
  color:#111827;
}
.booking-float-card::before{
  content:'';
  position:absolute;
  top:-2px;
  left:20px;
  right:20px;
  height:4px;
  background:#F5A623;
  border-radius:2px;
}
.booking-float-card h3{
  font-size:clamp(1.1rem, 2vw, 1.25rem);
  font-weight:800;
  color:#111827;
  margin-bottom:6px;
}
.booking-float-card p{
  font-size:0.8rem;
  color:#6b7280;
  margin-bottom:16px;
}

/* Trip Type Tabs */
.trip-type-tabs{
  display:flex;
  gap:6px;
  margin-bottom:16px;
  background:#f1f5f9;
  padding:5px;
  border-radius:12px;
  border:1px solid #e2e8f0;
  flex-wrap:wrap;
}
.trip-tab{
  flex:1;
  min-width:0;
  text-align:center;
  padding:9px 6px;
  border-radius:8px;
  font-size:0.78rem;
  font-weight:600;
  cursor:pointer;
  color:#64748b;
  transition:all 0.2s;
  border:none;
  background:transparent;
  font-family:'Poppins',sans-serif;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  white-space:nowrap;
}
.trip-tab i{font-size:0.85rem;flex-shrink:0}
.trip-tab.active{
  background:#F5A623 !important;
  color:#000000 !important;
  font-weight:700;
  box-shadow:0 4px 14px rgba(245,166,35,0.35);
}
.trip-tab.active i{color:#000000 !important}

/* Airport Direction Toggle */
.airport-dir-toggle{display:flex;gap:6px;margin-bottom:10px}
.dir-btn{
  flex:1;
  padding:9px;
  border:1.5px solid #e2e8f0;
  border-radius:9px;
  background:#f8fafc;
  font-size:0.75rem;
  font-weight:600;
  font-family:'Poppins',sans-serif;
  cursor:pointer;
  transition:all 0.25s;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  color:#64748b;
}
.dir-btn.active{
  background:#FFF8E1;
  border-color:#F5A623;
  color:#D4891A;
}
.dir-btn:hover:not(.active){border-color:#F5A623;color:#111827}

/* BFF = Booking Floating Field */
.bff{position:relative;margin-bottom:10px}
.bff-input{
  width:100%;
  border:1.5px solid #e2e8f0;
  border-radius:10px;
  padding:20px 12px 6px 42px;
  font-size:16px; /* 16px to prevent auto-zoom on iOS */
  font-family:'Poppins',sans-serif;
  color:#111827;
  background:#f8fafc;
  outline:none;
  transition:all 0.3s;
  -webkit-appearance:none;
  appearance:none;
  height:52px;
}
.bff-input:focus{
  border-color:#F5A623;
  background:#ffffff;
  box-shadow:0 0 0 4px rgba(245,166,35,0.15);
}
.bff-input.field-error{
  border-color:#ef4444 !important;
  box-shadow:0 0 0 4px rgba(239,68,68,0.15) !important;
}
textarea.bff-input{height:auto;resize:none;padding-top:24px}

.bff-label{
  position:absolute;
  left:42px;
  top:50%;
  transform:translateY(-50%);
  font-size:0.82rem;
  color:#94a3b8;
  font-weight:500;
  pointer-events:none;
  transition:all 0.2s ease;
  z-index:2;
  white-space:nowrap;
  font-family:'Poppins',sans-serif;
}
textarea.bff-input ~ .bff-label{top:18px;transform:none}

.bff-input:not(:placeholder-shown) ~ .bff-label,
.bff-input:focus ~ .bff-label,
select.bff-input ~ .bff-label,
textarea.bff-input:focus ~ .bff-label,
textarea.bff-input:not(:placeholder-shown) ~ .bff-label{
  top:7px !important;
  transform:none !important;
  font-size:0.62rem !important;
  color:#D4891A !important;
  font-weight:700;
  letter-spacing:0.5px;
  text-transform:uppercase;
}

.bff-icon{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:#F5A623;
  font-size:0.95rem;
  z-index:3;
  transition:color 0.25s;
  pointer-events:none;
}
textarea.bff-input ~ .bff-icon,
.bff textarea ~ .bff-icon{top:18px;transform:none}
.bff:focus-within .bff-icon{color:#F5A623 !important}

/* Form Divider */
.form-divider{display:flex;align-items:center;justify-content:center;gap:6px;margin:2px 0 6px}
.form-divider::before,
.form-divider::after{content:'';flex:1;height:1px;background:#e5e7eb}
.form-divider span{
  background:#F5A623;
  color:#000000;
  width:22px;
  height:22px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:0.65rem;
  font-weight:700;
}

.tab-fields{}
.tab-fields.d-none{display:none !important}

/* Submit Book Now Button */
.btn-book-now{
  width:100%;
  background:#F5A623;
  color:#000000;
  border:none;
  border-radius:10px;
  padding:14px;
  font-weight:800;
  font-size:0.95rem;
  font-family:'Poppins',sans-serif;
  letter-spacing:0.5px;
  transition:all 0.3s;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin-top:4px;
  min-height:50px;
}
.btn-book-now:hover{
  background:#D4891A;
  color:#000000;
  transform:translateY(-2px);
  box-shadow:0 8px 25px rgba(245,166,35,0.4);
}

/* ===== FOOTER ===== */
footer{background:#04070e;padding:60px 0 20px;border-top:1px solid rgba(245,166,35,0.15)}
.footer-brand{font-size:1.4rem;font-weight:800;color:#fff;margin-bottom:12px}
.footer-brand span{color:var(--gold)}
.footer-desc{font-size:0.82rem;color:rgba(255,255,255,0.6);line-height:1.75;max-width:340px}
.footer-title{
  font-size:0.82rem;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;
  color:#F5A623 !important;
  margin-bottom:20px;
  display:inline-block;
  position:relative;
  padding-bottom:8px;
}
.footer-title::after{
  content:'';
  position:absolute;
  left:0;
  bottom:0;
  width:32px;
  height:2.5px;
  background:#D4891A;
  border-radius:2px;
}
.footer-links{list-style:none;padding:0;margin:0}
.footer-links li{margin-bottom:8px}
.footer-links li a{color:rgba(255,255,255,0.65);font-size:0.82rem;text-decoration:none;transition:color 0.3s;display:inline-block}
.footer-links li a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,0.06);padding-top:20px;margin-top:40px;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px;text-align:center}
#cen-ter:hover{color:#fff8e1}
.footer-bottom p{font-size:0.75rem;color:rgba(255,255,255,0.45);margin:0}

/* ===== FLOATING ACTION BUTTONS STACKING SYSTEM ===== */
/* Zero overlap & perfect vertical alignment guaranteed across desktop, tablet, and mobile screens */
.wa-btn,
.fback-fab,
#com-ment,
.scroll-top,
#scrollTop,
#arr-ow {
  box-sizing: border-box !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

.wa-btn{
  position:fixed;
  bottom:24px;
  right:24px;
  width:56px;
  height:56px;
  background:#25D366;
  color:#ffffff !important;
  font-size:1.55rem;
  z-index:999;
  text-decoration:none;
  box-shadow:0 4px 20px rgba(37,211,102,0.4);
  transition:transform 0.3s ease, box-shadow 0.3s ease;
  animation:bob 3s ease-in-out infinite;
}
.wa-btn:hover{transform:scale(1.1);color:#ffffff !important;box-shadow:0 6px 24px rgba(37,211,102,0.6)}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* Feedback Pop FAB */
.fback-page{
  --fback-accent:#F5A623;
  --fback-dark-bg:#1c1c1c;
  --fback-dark-card:#232323;
  --fback-dark-input:#2c2c2c;
}
.fback-fab,
#com-ment{
  position:fixed;
  bottom:92px;
  right:24px;
  width:56px;
  height:56px;
  background:var(--fback-accent);
  border:3px solid #ffffff;
  box-shadow:0 6px 18px rgba(0,0,0,0.4);
  cursor:pointer;
  z-index:998;
  transition:transform 0.2s ease, box-shadow 0.2s ease;
}
.fback-fab:hover,
#com-ment:hover{
  transform:scale(1.08);
  box-shadow:0 8px 22px rgba(245,166,35,0.45);
}
.fback-fab i,
#com-ment i{
  color:#1c1c1c;
  font-size:22px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:0;
}

/* Scroll To Top Button */
.scroll-top,
#scrollTop,
#arr-ow{
  position:fixed;
  bottom:160px;
  right:24px;
  width:56px;
  height:56px;
  background:var(--gold);
  display:none;
  color:#000000 !important;
  font-size:1.4rem;
  z-index:997;
  text-decoration:none;
  border:none;
  outline:none;
  cursor:pointer;
  transition:all 0.3s ease;
  box-shadow:0 4px 18px rgba(0,0,0,0.3);
}
.scroll-top.show,
#scrollTop.show{
  display:flex !important;
}
.scroll-top:hover,
#scrollTop:hover,
#arr-ow:hover{
  background:var(--gold-dark);
  transform:translateY(-3px);
  box-shadow:0 8px 22px rgba(245,166,35,0.45);
}
.scroll-top i,
#scrollTop i,
#arr-ow i{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
  font-size:1.45rem !important;
}

/* Feedback Modal Content */
.fback-modal .modal-content{
  background:var(--fback-dark-card);
  color:#ffffff;
  border-radius:16px;
  border:1px solid rgba(245,166,35,0.2);
  padding:12px;
}
.fback-modal .modal-header{border-bottom:none;padding-bottom:0}
.fback-modal .modal-title{font-weight:700;font-size:1.35rem;color:#F5A623}
.fback-modal .fback-subtitle{color:#b3b3b3;font-size:0.9rem;margin-top:4px}
.fback-modal .btn-close{filter:invert(1);opacity:0.7}
.fback-input-icon{background:var(--fback-dark-input);border:1px solid #3a3a3a;color:var(--fback-accent)}
.fback-modal .form-control{background:var(--fback-dark-input);border:1px solid #3a3a3a;color:#ffffff;font-size:16px}
.fback-modal .form-control::placeholder{color:#9a9a9a;text-transform:uppercase;font-size:0.82rem;letter-spacing:0.3px}
.fback-modal .form-control:focus{background:var(--fback-dark-input);color:#ffffff;box-shadow:0 0 0 0.2rem rgba(245,166,35,0.25);border-color:var(--fback-accent)}
.fback-modal textarea.form-control{resize:none}
.fback-btn-submit{background:var(--fback-accent);border:none;color:#1c1c1c;font-weight:700;padding:12px;border-radius:8px;width:100%;transition:all 0.25s}
.fback-btn-submit:hover{background:#D4891A;color:#1c1c1c}

/* ═══════════════════════════════════════════════════════════════════
   COMPREHENSIVE RESPONSIVE BREAKPOINTS (ALL DEVICES & RESOLUTIONS)
   ═══════════════════════════════════════════════════════════════════ */

/* 1. Ultra-wide screens (>= 1400px) */
@media (min-width: 1400px) {
  .hero-left{padding-right:2rem}
  .booking-float-card{padding:34px 30px}
}

/* 2. Laptops & Medium Desktops (1200px - 1399px) */
@media (min-width: 1200px) and (max-width: 1399px) {
  .hero-title{font-size:clamp(2.1rem, 3.2vw, 2.7rem)}
  .stat-num{font-size:1.55rem}
}

/* 3. Small Laptops & Large Tablets (992px - 1199px) */
@media (max-width: 1199px) {
  .hero-highlights-grid{grid-template-columns:repeat(3, 1fr);gap:10px}
  .highlight-card{padding:12px 10px}
  .highlight-title{font-size:0.82rem}
  .highlight-desc{font-size:0.72rem}
  .trip-tab{font-size:0.74rem;padding:8px 4px}
  .stat-num{font-size:1.5rem}
  .stat-label{font-size:0.7rem}
}

/* 4. Tablets & iPad Portrait (768px - 991px) */
@media (max-width: 991px) {
  .hero-section{min-height:auto;padding-top:92px !important;padding-bottom:50px}
  .hero-content{padding-top:0 !important}
  .hero-section .hero-content .row{padding-top:0 !important}
  .hero-section .hero-content .row > .col-lg-6:first-child{margin-top:0 !important}
  .hero-left{text-align:center;margin-bottom:28px}
  .hero-badge{margin-left:auto;margin-right:auto}
  .hero-title{max-width:100%;margin-left:auto;margin-right:auto}
  .hero-sub{max-width:620px;margin-left:auto;margin-right:auto}
  .hero-btns{justify-content:center}
  .hero-stats{justify-content:center;margin-top:20px}
  .stat-item{padding-right:1.5rem;margin-right:1.5rem}
  .hero-highlights-grid{max-width:680px;margin:20px auto 0;grid-template-columns:repeat(3, 1fr);gap:10px}
  .booking-float-card{margin-top:10px;margin-bottom:0;max-width:640px;margin-left:auto;margin-right:auto}
  
  /* Mobile Navigation Menu */
  .navbar-collapse{background:rgba(13,13,13,0.98);border:1px solid var(--border);border-radius:12px;padding:16px;margin-top:10px}
  .navbar-nav .nav-link{padding:10px 14px !important;border-bottom:1px solid rgba(255,255,255,0.06);font-size:0.9rem}
  .btn-book-nav{margin:14px 12px 6px;display:inline-flex;justify-content:center;width:calc(100% - 24px)}
  
  /* Floating buttons for Tablet */
  .wa-btn{bottom:20px !important;right:20px !important;width:50px !important;height:50px !important;font-size:1.4rem !important}
  .fback-fab, #com-ment{bottom:80px !important;right:20px !important;width:50px !important;height:50px !important}
  .fback-fab i, #com-ment i{font-size:20px !important}
  .scroll-top, #scrollTop, #arr-ow{bottom:140px !important;right:20px !important;width:50px !important;height:50px !important;font-size:1.25rem !important}
  .floating-booking-wrap{bottom:80px !important;right:20px !important}
}

/* 5. Mobile Landscape & Phablets (576px - 767px) */
@media (max-width: 767px) {
  .hero-section{padding-top:92px !important;padding-bottom:40px}
  .hero-content{padding-top:0 !important}
  .hero-section .hero-content .row{padding-top:0 !important}
  .hero-section .hero-content .row > .col-lg-6:first-child{margin-top:0 !important}
  .hero-title{font-size:clamp(1.75rem, 5vw, 2.2rem)}
  .hero-stats{gap:0.75rem}
  .stat-item{border-right:none;margin-right:0;padding-right:0;flex:1}
  .stat-num{font-size:1.35rem}
  .stat-label{font-size:0.68rem}
  .hero-highlights-grid{grid-template-columns:repeat(3, 1fr);gap:8px}
  .highlight-card{padding:10px 8px;border-radius:10px}
  .highlight-icon{font-size:1.1rem;margin-bottom:6px}
  .highlight-title{font-size:0.76rem}
  .highlight-desc{font-size:0.66rem;line-height:1.3}
  
  .section-title{font-size:clamp(1.45rem, 4.5vw, 1.85rem)}
  .trusted-strip .sep{display:none}
  .trusted-strip .item{font-size:0.72rem;padding:4px 8px}
  
  /* Floating buttons for Mobile */
  .wa-btn{bottom:16px !important;right:16px !important;width:48px !important;height:48px !important;font-size:1.3rem !important}
  .fback-fab, #com-ment{bottom:74px !important;right:16px !important;width:48px !important;height:48px !important}
  .fback-fab i, #com-ment i{font-size:19px !important}
  .scroll-top, #scrollTop, #arr-ow{bottom:132px !important;right:16px !important;width:48px !important;height:48px !important;font-size:1.2rem !important}
  .floating-booking-wrap{bottom:74px !important;right:16px !important}
  
  .trip-type-tabs{display:grid;grid-template-columns:repeat(3, 1fr);gap:5px}
  .trip-tab{flex:none;font-size:0.7rem;padding:8px 4px;flex-direction:column;gap:3px}
  .trip-tab i{font-size:0.95rem}
  .trip-tab:nth-child(4),
  .trip-tab:nth-child(5){grid-column:span 1}
  
  .service-card, .region-card, .route-card, .airport-card, .outstation-card, .local-card, .occasion-card, .fleet-card, .area-card, .why-card, .testimonial-card{padding:18px 16px}
  .footer-bottom{margin-top:30px;padding-top:16px}
}

/* Small Mobile Phones (480px) */
@media (max-width: 480px) {
  .wa-btn{bottom:14px !important;right:14px !important;width:44px !important;height:44px !important;font-size:1.2rem !important}
  .fback-fab, #com-ment{bottom:68px !important;right:14px !important;width:44px !important;height:44px !important}
  .fback-fab i, #com-ment i{font-size:18px !important}
  .scroll-top, #scrollTop, #arr-ow{bottom:122px !important;right:14px !important;width:44px !important;height:44px !important;font-size:1.1rem !important}
  .floating-booking-wrap{bottom:68px !important;right:14px !important}
}

/* 6. Standard Mobile Phones (360px - 575px) */
@media (max-width: 575px) {
  .hero-section{padding-top:92px !important;padding-bottom:35px}
  .hero-content{padding-top:0 !important}
  .hero-section .hero-content .row{padding-top:0 !important}
  .hero-section .hero-content .row > .col-lg-6:first-child{margin-top:0 !important}
  .hero-btns{display:flex;flex-direction:column;width:100%;gap:10px;margin-bottom:1.5rem}
  .hero-btns .btn-primary-gold,
  .hero-btns .btn-outline-white{width:100%;padding:12px 16px;font-size:0.86rem;justify-content:center}
  .hero-badge{font-size:0.64rem;padding:5px 12px}
  
  .hero-highlights-grid{grid-template-columns:1fr;gap:8px}
  .highlight-card{display:flex;align-items:center;text-align:left;gap:12px;padding:10px 14px}
  .highlight-icon{margin-bottom:0;font-size:1.25rem}
  
  .booking-float-card{border-radius:16px;padding:20px 14px}
  .bff-input{height:50px;padding:18px 10px 4px 38px}
  .bff-icon{left:10px;font-size:0.9rem}
  .bff-label{left:38px;font-size:0.78rem}
  
  .trip-type-tabs{grid-template-columns:repeat(3, 1fr);gap:4px;padding:4px}
  .trip-tab{padding:7px 2px;font-size:0.67rem}
  
  .primary-base-box{padding:8px 14px;font-size:0.75rem}
  .faq-question{padding:12px 14px;font-size:0.84rem}
  .faq-answer{padding:0 14px 14px;font-size:0.82rem}
}

/* 7. Extra Small Mobile Phones (<= 375px) */
@media (max-width: 375px) {
  .navbar-brand{font-size:1.15rem}
  .hero-title{font-size:1.55rem;letter-spacing:-0.3px}
  .hero-sub{font-size:0.8rem}
  
  .trip-type-tabs{grid-template-columns:repeat(2, 1fr);gap:4px}
  .trip-tab:nth-child(5){grid-column:span 2}
  
  .wa-btn{bottom:12px !important;right:12px !important;width:42px !important;height:42px !important;font-size:1.15rem !important}
  .fback-fab, #com-ment{bottom:64px !important;right:12px !important;width:42px !important;height:42px !important}
  .fback-fab i, #com-ment i{font-size:17px !important}
  .scroll-top, #scrollTop, #arr-ow{bottom:116px !important;right:12px !important;width:42px !important;height:42px !important;font-size:1rem !important}
  .floating-booking-wrap{bottom:64px !important;right:12px !important}
  
  .bff-input{font-size:15px;padding-left:36px}
  .bff-label{left:36px;font-size:0.74rem}
  .bff-icon{left:8px}
  .btn-book-now{font-size:0.88rem;padding:12px}
  
  .service-card, .region-card, .route-card, .airport-card, .outstation-card, .local-card, .occasion-card, .fleet-card, .area-card, .why-card, .testimonial-card{padding:14px 12px;border-radius:12px}
}

/* 8. Reduced Motion Accessibility */
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ==========================================================================
   TN CABS SEO ARCHITECTURE & INTERACTIVE FOOTER STYLES
   ========================================================================== */
.hover-gold:hover {
  color: var(--gold, #F5A623) !important;
  transition: color 0.2s ease-in-out;
}

.hover-shadow:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.08) !important;
  transition: all 0.25s ease-in-out;
}

.transition-all {
  transition: all 0.25s ease-in-out;
}

.letter-spacing-1 {
  letter-spacing: 1px;
}

.shadow-xs {
  box-shadow: 0 2px 6px rgba(0,0,0,0.04);
}

/* Footer SEO Accordion Custom Styling */
.tncabs-footer {
  color: #ffffff !important;
}

.tncabs-footer p,
.tncabs-footer span:not([style*="color:#F5A623"]),
.tncabs-footer li,
.tncabs-footer .text-muted,
.tncabs-footer .text-light {
  color: #ffffff !important;
  opacity: 0.95 !important;
}

.tncabs-footer a {
  color: #ffffff !important;
  transition: color 0.2s ease-in-out;
}

.tncabs-footer a:hover {
  color: #F5A623 !important;
}

.footer-seo-accordion .accordion-item {
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: #141414 !important;
}

.footer-seo-accordion .accordion-button,
.footer-seo-accordion .accordion-button.collapsed {
  background-color: #1a1a1a !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  padding: 13px 18px !important;
}

.footer-seo-accordion .accordion-button:not(.collapsed) {
  background-color: #242424 !important;
  color: #F5A623 !important;
  border-bottom: 1px solid rgba(245, 166, 35, 0.35) !important;
}

.footer-seo-accordion .accordion-button::after {
  filter: invert(1) brightness(2) !important;
}

.footer-seo-accordion .accordion-button:not(.collapsed)::after {
  filter: invert(70%) sepia(80%) saturate(1000%) hue-rotate(350deg) !important;
}

.footer-seo-accordion .accordion-body {
  background: #0a0a0a !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-seo-accordion .accordion-body a {
  color: #ffffff !important;
  opacity: 0.95 !important;
}

.footer-seo-accordion .accordion-body a:hover {
  color: #F5A623 !important;
  opacity: 1 !important;
}

/* SEO Breadcrumbs */
.seo-breadcrumbs-section .breadcrumb-item + .breadcrumb-item::before {
  content: "›";
  color: #94a3b8;
  font-size: 1.1rem;
  line-height: 1;
}

/* Responsive Footer adjustments */
@media (max-width: 768px) {
  .tncabs-footer {
    padding-top: 1.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .footer-seo-accordion .accordion-button {
    font-size: 0.88rem !important;
    padding: 11px 14px !important;
  }
}

/* Footer & SEO Brand Palette #F5A623 */
.text-gold,
.tncabs-footer .text-warning,
.footer-seo-accordion .text-warning,
#allPagesModal .text-warning {
  color: #F5A623 !important;
}

.tncabs-footer .border-gold {
  border-color: #F5A623 !important;
}

.btn-gold,
.tncabs-footer .btn-warning,
#allPagesModal .btn-warning {
  background-color: #F5A623 !important;
  border-color: #F5A623 !important;
  color: #0D0D0D !important;
}

.btn-gold:hover,
.tncabs-footer .btn-warning:hover,
#allPagesModal .btn-warning:hover {
  background-color: #e09419 !important;
  border-color: #e09419 !important;
  color: #0D0D0D !important;
}
