/* =========================================================
   SANIYA CAB - COMPLETE PREMIUM STYLESHEET
   Theme: Golden Yellow + Deep Navy + White
   Replace your full /assets/css/style.css with this file
========================================================= */

:root{
  --gold:#ffb703;
  --gold-2:#f59e0b;
  --gold-soft:#fff5cf;
  --navy:#061426;
  --navy-2:#0b1d35;
  --navy-3:#102746;
  --ink:#122033;
  --muted:#657085;
  --light:#f6f8fc;
  --white:#ffffff;
  --border:#e6ebf2;
  --shadow:0 18px 50px rgba(6,20,38,.12);
  --shadow-lg:0 26px 70px rgba(6,20,38,.18);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial,Helvetica,sans-serif;
  color:var(--ink);
  background:#fff;
  line-height:1.6;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:auto}

/* =========================================================
   PREMIUM TOPBAR
========================================================= */
.premium-topbar{
  background:linear-gradient(90deg,#030b15 0%,#08182c 55%,#030b15 100%);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.08);
  position:relative;
  z-index:1002;
}
.premium-topbar-inner{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.top-contact{
  display:flex;
  align-items:center;
  gap:28px;
}
.top-contact a{
  display:flex;
  align-items:center;
  gap:9px;
  color:#fff;
  font-size:12px;
  transition:.25s ease;
}
.top-contact a:hover{color:var(--gold)}
.top-contact a span:last-child{
  display:flex;
  flex-direction:column;
  line-height:1.15;
}
.top-contact small{
  color:#8fa0b6;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:1px;
}
.top-contact strong{font-size:11px;font-weight:800}
.top-icon{
  width:27px;
  height:27px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,183,3,.12);
  color:var(--gold);
  border:1px solid rgba(255,183,3,.28);
}
.top-location{
  display:flex;
  align-items:center;
  gap:16px;
  font-size:11px;
  font-weight:700;
}
.top-location span i{color:var(--gold);margin-right:6px}
.top-whatsapp{
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#16b85a;
  color:#fff;
  transition:.25s ease;
}
.top-whatsapp:hover{transform:translateY(-2px)}

/* Backward compatibility for old topbar classes */
.topbar{
  background:linear-gradient(90deg,#030b15,#08182c,#030b15);
  color:#fff;
  font-size:13px;
}
.topbar-inner{
  min-height:40px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.top-left,.top-right{display:flex;gap:24px;align-items:center}
.topbar i{color:var(--gold);margin-right:6px}

/* =========================================================
   PREMIUM HEADER
========================================================= */
.premium-header{
  position:relative;
  z-index:1000;
  background:rgba(255,255,255,.98);
  box-shadow:0 8px 35px rgba(3,13,25,.10);
  border-bottom:1px solid rgba(4,20,38,.08);
}
.header-container{
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.premium-brand{
  position:relative;
  min-width:245px;
  min-height:82px;
  display:flex;
  align-items:center;
  gap:13px;
  padding:0 35px 0 2px;
  isolation:isolate;
}
.premium-brand::before{
  content:"";
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  width:220%;
  background:linear-gradient(135deg,var(--gold) 0%,#ffd24a 100%);
  z-index:-1;
  clip-path:polygon(0 0,88% 0,100% 100%,0 100%);
  box-shadow:10px 0 25px rgba(255,183,3,.20);
}
.premium-logo-icon{
  width:48px;
  height:48px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:var(--navy);
  color:var(--gold);
  font-size:21px;
  border:2px solid rgba(255,255,255,.72);
  box-shadow:0 8px 20px rgba(5,18,35,.22);
}
.premium-logo-text{
  display:flex;
  flex-direction:column;
  line-height:1.05;
}
.premium-logo-text strong{
  color:var(--navy);
  font-size:24px;
  font-weight:900;
  letter-spacing:-.6px;
  white-space:nowrap;
}
.premium-logo-text small{
  margin-top:6px;
  color:#26394f;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:1.6px;
}
.premium-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  flex:1;
}
.premium-nav a{
  position:relative;
  padding:30px 10px;
  color:var(--navy);
  text-transform:uppercase;
  font-size:12px;
  font-weight:800;
  letter-spacing:.25px;
  transition:.25s ease;
}
.premium-nav a::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:21px;
  width:0;
  height:3px;
  border-radius:20px;
  background:var(--gold);
  transform:translateX(-50%);
  transition:.25s ease;
}
.premium-nav a:hover,
.premium-nav a.active{color:var(--gold-2)}
.premium-nav a:hover::after,
.premium-nav a.active::after{width:25px}
.header-actions{
  display:flex;
  align-items:center;
  gap:13px;
}
.header-call-btn{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--navy);
}
.header-call-btn>span{
  width:37px;
  height:37px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--gold-soft);
  color:var(--gold-2);
  border:1px solid rgba(245,158,11,.25);
}
.header-call-btn div{
  display:flex;
  flex-direction:column;
  line-height:1.15;
}
.header-call-btn small{
  font-size:8px;
  color:#8794a7;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.8px;
}
.header-call-btn strong{
  font-size:11px;
  color:var(--navy);
  font-weight:900;
  white-space:nowrap;
}
.premium-book-btn{
  min-height:49px;
  padding:0 17px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:var(--navy);
  font-size:12px;
  font-weight:900;
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  box-shadow:0 8px 20px rgba(255,183,3,.26);
  transition:.25s ease;
  white-space:nowrap;
}
.premium-book-btn:hover{
  color:#fff;
  background:linear-gradient(135deg,var(--navy),var(--navy-3));
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(5,20,38,.24);
}
.premium-menu-toggle{
  display:none;
  width:45px;
  height:45px;
  border-radius:8px;
  border:0;
  background:var(--navy);
  color:var(--gold);
  font-size:18px;
  cursor:pointer;
}

/* Old header compatibility */
.site-header{
  min-height:76px;
  background:#fff;
  display:flex;
  box-shadow:0 2px 16px rgba(0,0,0,.06);
  position:relative;
  z-index:20;
}
.brand-wedge{
  width:31%;
  min-width:310px;
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  clip-path:polygon(0 0,84% 0,100% 100%,0 100%);
  display:flex;
  align-items:center;
  padding-left:max(24px,calc((100vw - 1180px)/2));
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--navy);
  font-size:26px;
  font-weight:900;
}
.brand-icon{
  height:46px;
  width:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--navy);
  color:var(--gold);
}
.nav-shell{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:24px;
  padding-right:max(24px,calc((100vw - 1180px)/2));
}
.nav{
  display:flex;
  gap:24px;
  align-items:center;
}
.nav a{
  font-size:14px;
  font-weight:800;
  text-transform:uppercase;
  color:var(--navy);
}
.nav a:hover{color:var(--gold-2)}
.header-cta{
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  color:var(--navy);
  padding:15px 20px;
  font-weight:900;
  font-size:13px;
  border-radius:6px;
}
.header-cta:hover{background:var(--navy);color:#fff}
.menu-toggle{
  display:none;
  border:0;
  background:none;
  font-size:22px;
  color:var(--navy);
}

/* =========================================================
   HERO
========================================================= */
.hero{
  position:relative;
  min-height:620px;
  background:
    linear-gradient(90deg,rgba(2,9,18,.98),rgba(6,20,38,.88) 52%,rgba(6,20,38,.35)),
    radial-gradient(circle at 75% 35%,#284261 0,#12243d 30%,#061426 68%);
  overflow:hidden;
  color:#fff;
  display:flex;
  align-items:center;
}
.hero:before{
  content:"";
  position:absolute;
  right:-60px;
  bottom:-40px;
  width:650px;
  height:430px;
  background:url('/assets/images/taxi-hero.svg') center/contain no-repeat;
  opacity:.98;
}
.hero-inner{
  position:relative;
  z-index:2;
  padding:84px 0 150px;
}
.eyebrow{
  color:var(--gold);
  font-size:14px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.hero h1{
  font-size:62px;
  line-height:1.05;
  margin:15px 0 20px;
  max-width:720px;
  text-transform:uppercase;
  color:#fff;
}
.hero h1 strong{display:block;color:#fff}
.hero p{
  max-width:610px;
  color:#dce3ee;
  font-size:18px;
}
.hero-actions{
  display:flex;
  gap:14px;
  margin-top:28px;
}

/* =========================================================
   BUTTONS
========================================================= */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:15px 24px;
  border-radius:6px;
  font-weight:900;
  border:2px solid transparent;
  cursor:pointer;
  transition:.25s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-orange,.btn-gold{
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  color:var(--navy);
}
.btn-blue{
  background:var(--navy);
  color:#fff;
}
.btn-outline{
  border-color:#fff;
  color:#fff;
  background:transparent;
}
.btn-outline:hover{
  background:#fff;
  color:var(--navy);
}

/* =========================================================
   BOOKING FORM
========================================================= */
.booking-float{
  margin-top:-80px;
  position:relative;
  z-index:10;
}
.booking-card{
  background:#fff;
  border-radius:14px;
  box-shadow:var(--shadow-lg);
  padding:28px;
  border:1px solid rgba(6,20,38,.06);
}
.booking-tabs{
  display:flex;
  gap:10px;
  margin-bottom:20px;
  flex-wrap:wrap;
}
.booking-tabs button{
  border:1px solid var(--border);
  background:#fff;
  padding:10px 18px;
  font-weight:900;
  border-radius:7px;
  color:var(--navy);
  cursor:pointer;
}
.booking-tabs button.active,
.booking-tabs button:hover{
  background:var(--gold);
  color:var(--navy);
  border-color:var(--gold);
}
.booking-grid{
  display:grid;
  grid-template-columns:1.2fr 1.2fr 1fr 1fr .85fr;
  gap:12px;
}
.field label{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
  color:#687386;
  margin-bottom:6px;
}
.field input,.field select,.field textarea{
  width:100%;
  padding:13px 14px;
  border:1px solid #dfe5ee;
  background:#fbfcfe;
  border-radius:7px;
  color:var(--ink);
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:3px solid rgba(255,183,3,.18);
  border-color:var(--gold);
}

/* =========================================================
   GENERIC SECTIONS
========================================================= */
.section{padding:88px 0}
.section.light{background:var(--light)}
.section-title{
  max-width:720px;
  margin-bottom:38px;
}
.section-title.center{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}
.section-title h2{
  font-size:42px;
  line-height:1.12;
  margin:8px 0 12px;
  color:var(--navy);
}
.section-title p{color:var(--muted)}

/* =========================================================
   ABOUT
========================================================= */
.about-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}
.about-art{
  position:relative;
  min-height:440px;
  background:linear-gradient(135deg,var(--navy),var(--navy-3));
  border-radius:14px;
  overflow:hidden;
  box-shadow:var(--shadow);
}
.about-art:before{
  content:"";
  position:absolute;
  inset:35px;
  background:url('/assets/images/taxi-side.svg') center/contain no-repeat;
}
.about-badge{
  position:absolute;
  left:24px;
  bottom:24px;
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  color:var(--navy);
  padding:18px 22px;
  font-weight:900;
  border-radius:8px;
  box-shadow:var(--shadow);
}
.feature-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  margin:26px 0;
}
.feature{
  display:flex;
  gap:12px;
  align-items:flex-start;
}
.feature i{
  height:42px;
  width:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--gold-soft);
  color:var(--gold-2);
}

/* =========================================================
   SERVICES
========================================================= */
.service-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.service-card{
  background:#fff;
  padding:30px;
  border:1px solid var(--border);
  position:relative;
  transition:.25s ease;
  border-radius:12px;
  overflow:hidden;
}
.service-card:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:4px;
  background:var(--gold);
  transform:scaleX(0);
  transform-origin:left;
  transition:.25s ease;
}
.service-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow);
  border-color:transparent;
}
.service-card:hover:after{transform:scaleX(1)}
.service-icon{
  height:62px;
  width:62px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  color:var(--navy);
  font-size:26px;
  margin-bottom:18px;
  clip-path:polygon(0 0,80% 0,100% 20%,100% 100%,0 100%);
}
.service-card h3{
  margin:0 0 10px;
  font-size:22px;
  color:var(--navy);
}
.service-card p{color:var(--muted)}

/* =========================================================
   FLEET
========================================================= */
.fleet-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.fleet-card{
  border:1px solid var(--border);
  background:#fff;
  overflow:hidden;
  border-radius:12px;
  transition:.25s ease;
}
.fleet-card:hover{
  transform:translateY(-5px);
  box-shadow:var(--shadow);
}
.fleet-img{
  height:210px;
  background:linear-gradient(135deg,var(--navy),var(--navy-3));
  display:grid;
  place-items:center;
}
.fleet-img img{
  width:88%;
  height:88%;
  object-fit:contain;
}
.fleet-info{padding:24px}
.fleet-info h3{color:var(--navy)}
.fleet-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:var(--muted);
  font-size:13px;
}

/* =========================================================
   STATS
========================================================= */
.stats{
  background:linear-gradient(135deg,var(--gold),#ffd24a);
  color:var(--navy);
  padding:44px 0;
}
.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
  text-align:center;
}
.stat strong{
  font-size:40px;
  display:block;
  font-weight:900;
}

/* =========================================================
   ROUTES
========================================================= */
.route-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.route{
  padding:18px;
  border:1px solid var(--border);
  font-weight:900;
  background:#fff;
  color:var(--navy);
  border-radius:8px;
  transition:.25s ease;
}
.route i{
  color:var(--gold-2);
  margin-right:8px;
}
.route:hover{
  border-color:var(--gold);
  color:var(--gold-2);
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(6,20,38,.08);
}

/* =========================================================
   TESTIMONIALS
========================================================= */
.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.testimonial{
  background:#fff;
  border:1px solid var(--border);
  padding:26px;
  border-radius:12px;
  box-shadow:0 10px 30px rgba(6,20,38,.05);
}
.testimonial .stars{color:var(--gold)}

/* =========================================================
   CTA
========================================================= */
.cta{
  background:linear-gradient(90deg,#04101f,#0b213d 55%,#102c50);
  color:#fff;
  padding:60px 0;
  position:relative;
  overflow:hidden;
}
.cta:before{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  border-radius:50%;
  right:8%;
  top:-100px;
  background:rgba(255,183,3,.10);
}
.cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  position:relative;
  z-index:1;
}
.cta h2{
  font-size:38px;
  margin:0 0 8px;
  color:#fff;
}

/* =========================================================
   INNER PAGE HERO
========================================================= */
.page-hero{
  background:linear-gradient(90deg,#04101f,#0b213d 55%,#102c50);
  color:#fff;
  padding:78px 0;
}
.page-hero h1{
  font-size:48px;
  margin:0 0 8px;
  color:#fff;
}
.breadcrumb{color:#c6d2e4}

/* =========================================================
   CONTENT / FAQ
========================================================= */
.content-card{
  background:#fff;
  border:1px solid var(--border);
  padding:32px;
  border-radius:12px;
}
.faq{
  display:grid;
  gap:14px;
}
.faq details{
  border:1px solid var(--border);
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  transition:.25s ease;
}
.faq details[open]{
  border-color:rgba(255,183,3,.65);
  box-shadow:0 10px 30px rgba(6,20,38,.07);
}
.faq summary{
  position:relative;
  padding:19px 52px 19px 20px;
  font-weight:900;
  cursor:pointer;
  list-style:none;
  color:var(--navy);
}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{
  content:"+";
  position:absolute;
  right:18px;
  top:50%;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--gold-soft);
  color:var(--gold-2);
  font-size:20px;
}
.faq details[open] summary:after{content:"−"}
.faq details p{
  padding:0 20px 20px;
  margin:0;
  color:var(--muted);
}

/* =========================================================
   CONTACT / FORMS
========================================================= */
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:34px;
}
.contact-box{
  background:linear-gradient(145deg,var(--navy),var(--navy-3));
  color:#fff;
  padding:32px;
  border-radius:12px;
}
.contact-box i{color:var(--gold)}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.form-grid .full{grid-column:1/-1}
.success{
  background:#eaf8ef;
  color:#146c2e;
  padding:12px 16px;
  border-radius:6px;
  margin-bottom:20px;
}

/* =========================================================
   FOOTER
========================================================= */
.footer{
  background:#040d1a;
  color:#c8d2df;
  padding-top:62px;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:38px;
}
.footer h4{color:#fff;margin-top:0}
.footer a{display:block;margin:8px 0}
.footer a:hover{color:var(--gold)}
.footer-brand{
  color:#fff;
  font-size:24px;
  font-weight:900!important;
}
.footer-brand i{color:var(--gold)}
.socials{
  display:flex;
  gap:8px;
}
.socials a{
  height:40px;
  width:40px;
  display:grid;
  place-items:center;
  background:#102039;
  border-radius:6px;
}
.socials a:hover{
  background:var(--gold);
  color:var(--navy);
}
.footer-bottom{
  border-top:1px solid #17263c;
  margin-top:42px;
  padding:20px 0;
  font-size:13px;
}

/* =========================================================
   FLOATING ACTION BUTTONS
========================================================= */
.floating-call,.floating-wa{
  position:fixed;
  right:20px;
  width:50px;
  height:50px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  z-index:50;
  box-shadow:0 8px 22px rgba(0,0,0,.22);
}
.floating-call{
  bottom:82px;
  background:linear-gradient(135deg,var(--gold),#ffc72e);
  color:var(--navy);
}
.floating-wa{
  bottom:22px;
  background:#22c55e;
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media(max-width:1200px){
  .premium-nav{gap:1px}
  .premium-nav a{
    padding-left:7px;
    padding-right:7px;
    font-size:11px;
  }
  .header-call-btn{display:none}
}

@media(max-width:992px){
  .premium-topbar-inner{
    padding-top:7px;
    padding-bottom:7px;
  }
  .top-contact a:nth-child(2){display:none}
  .premium-header{position:relative}
  .header-container{min-height:72px}
  .premium-brand{
    min-height:72px;
    min-width:205px;
  }
  .premium-logo-icon{
    width:43px;
    height:43px;
  }
  .premium-logo-text strong{font-size:20px}
  .premium-nav{
    position:absolute;
    left:15px;
    right:15px;
    top:82px;
    display:none;
    flex-direction:column;
    align-items:stretch;
    padding:12px;
    border-radius:12px;
    background:var(--navy);
    box-shadow:0 20px 50px rgba(0,0,0,.30);
  }
  .premium-nav.show{display:flex}
  .premium-nav a{
    padding:13px 15px;
    color:#fff;
    border-radius:7px;
    border-bottom:1px solid rgba(255,255,255,.06);
  }
  .premium-nav a::after{display:none}
  .premium-nav a:hover,
  .premium-nav a.active{
    background:rgba(255,183,3,.12);
    color:var(--gold);
  }
  .premium-menu-toggle{
    display:grid;
    place-items:center;
  }

  .top-right span,.top-left span{display:none}
  .brand-wedge{min-width:250px;width:42%}
  .nav{
    display:none;
    position:absolute;
    top:76px;
    left:0;
    right:0;
    background:var(--navy);
    flex-direction:column;
    align-items:flex-start;
    padding:22px;
    box-shadow:var(--shadow);
  }
  .nav.open{display:flex}
  .nav a{color:#fff}
  .menu-toggle{display:block}
  .header-cta{display:none}

  .hero h1{font-size:48px}
  .hero:before{opacity:.35;right:-180px}
  .booking-grid{grid-template-columns:1fr 1fr}
  .booking-grid .btn{grid-column:1/-1}
  .about-grid,.contact-grid{grid-template-columns:1fr}
  .service-grid,.fleet-grid,.testimonial-grid{grid-template-columns:1fr 1fr}
  .route-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}

@media(max-width:650px){
  .premium-topbar-inner{justify-content:center}
  .top-location{display:none}
  .top-contact{
    width:100%;
    justify-content:center;
  }
  .header-container{
    padding-left:13px;
    padding-right:13px;
  }
  .premium-brand{
    min-width:auto;
    padding-right:23px;
  }
  .premium-brand::before{width:190%}
  .premium-logo-icon{
    width:39px;
    height:39px;
    border-radius:11px;
  }
  .premium-logo-text strong{font-size:18px}
  .premium-logo-text small{
    font-size:7px;
    letter-spacing:1px;
  }
  .premium-book-btn{
    width:43px;
    height:43px;
    min-height:43px;
    padding:0;
    border-radius:50%;
  }
  .premium-book-btn span,
  .premium-book-btn .fa-arrow-right{display:none}

  .container{width:min(100% - 24px,1180px)}
  .topbar-inner{min-height:34px}
  .brand-wedge{
    min-width:0;
    width:72%;
    clip-path:polygon(0 0,88% 0,100% 100%,0 100%);
    padding-left:14px;
  }
  .brand{font-size:20px}
  .brand-icon{width:38px;height:38px}
  .nav-shell{padding-right:14px}
  .hero{min-height:560px}
  .hero-inner{padding:70px 0 120px}
  .hero h1{font-size:39px}
  .hero p{font-size:16px}
  .hero-actions{flex-wrap:wrap}
  .booking-float{margin-top:-70px}
  .booking-card{padding:18px}
  .booking-grid,.form-grid{grid-template-columns:1fr}
  .feature-list,.service-grid,.fleet-grid,.testimonial-grid,.route-grid,.stats-grid,.footer-grid{grid-template-columns:1fr}
  .section{padding:62px 0}
  .section-title h2,.page-hero h1{font-size:34px}
  .cta-inner{
    align-items:flex-start;
    flex-direction:column;
  }
  .cta h2{font-size:30px}
}
/* =========================================================
   SANIYA CAB - PHOTO UPGRADE + MOBILE CONTACT BAR
========================================================= */
body{padding-bottom:0}.premium-photo-hero{min-height:650px;background:linear-gradient(90deg,rgba(2,9,18,.97) 0%,rgba(6,20,38,.87) 46%,rgba(6,20,38,.32) 75%,rgba(6,20,38,.18) 100%),url('/assets/images/hero-main.jpg') center 48%/cover no-repeat}.premium-photo-hero:before{display:none}.premium-photo-hero:after{content:"";position:absolute;inset:auto 0 0;height:130px;background:linear-gradient(transparent,rgba(2,9,18,.55));pointer-events:none}.premium-image,.about-photo{position:relative;min-height:455px;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-lg);background:var(--navy)}.about-photo img{width:100%;height:455px;object-fit:cover;transition:transform .55s ease}.about-photo:hover img{transform:scale(1.045)}.about-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(3,12,23,.68))}.about-photo .about-badge{z-index:2}.image-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.image-service-card{position:relative;height:340px;border-radius:16px;overflow:hidden;box-shadow:0 14px 38px rgba(6,20,38,.13);background:var(--navy);isolation:isolate}.image-service-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.image-service-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,20,38,.02) 25%,rgba(6,20,38,.92) 100%);z-index:1}.image-service-card:hover img{transform:scale(1.07)}.image-card-overlay{position:absolute;left:0;right:0;bottom:0;padding:25px;color:#fff;z-index:2}.image-card-overlay>i{width:46px;height:46px;display:grid;place-items:center;border-radius:10px;background:var(--gold);color:var(--navy);font-size:19px;margin-bottom:12px}.image-card-overlay h3{font-size:23px;margin:0 0 4px;color:#fff}.image-card-overlay p{margin:0;color:#dce5ef;font-size:14px}.why-image-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.why-image-card{background:#fff;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 12px 30px rgba(6,20,38,.07);transition:.3s ease}.why-image-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.why-image-card img{width:100%;height:205px;object-fit:cover}.why-image-card>div{padding:22px}.why-image-card span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--gold);color:var(--navy);font-weight:900;font-size:12px}.why-image-card h3{margin:12px 0 6px;color:var(--navy)}.why-image-card p{margin:0;color:var(--muted);font-size:14px}.dark-feature{background:linear-gradient(120deg,#030d1a,#0a1e36 62%,#102b4d);color:#fff;overflow:hidden}.dark-feature h2{font-size:44px;line-height:1.12;color:#fff;margin:12px 0 16px}.dark-feature p{color:#ccd8e7;font-size:17px}.airport-feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.mini-points{display:flex;flex-wrap:wrap;gap:12px 20px;margin:25px 0}.mini-points span{font-weight:800;font-size:14px}.mini-points i{color:var(--gold);margin-right:7px}.airport-photo-stack{position:relative;min-height:470px}.airport-photo-stack .photo-main{position:absolute;right:0;top:0;width:88%;height:400px;object-fit:cover;border-radius:18px;box-shadow:0 24px 60px rgba(0,0,0,.28)}.airport-photo-stack .photo-small{position:absolute;left:0;bottom:0;width:48%;height:230px;object-fit:cover;border:7px solid var(--navy-2);border-radius:16px;box-shadow:0 20px 45px rgba(0,0,0,.30)}.photo-fleet .fleet-img{height:230px;background:var(--navy)}.photo-fleet .fleet-img img{width:100%;height:100%;object-fit:cover}.photo-page-hero{position:relative;background-position:center;background-size:cover;isolation:isolate}.photo-page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,24,.95),rgba(6,20,38,.65));z-index:-1}.about-page-hero{background-image:url('/assets/images/about.jpg')}.services-page-hero{background-image:url('/assets/images/airport.jpg')}.fleet-page-hero{background-image:url('/assets/images/ride.jpg')}.floating-call,.floating-wa{display:none!important}.mobile-action-bar{display:none}
@media(max-width:992px){.image-service-grid{grid-template-columns:repeat(2,1fr)}.why-image-grid{grid-template-columns:repeat(2,1fr)}.airport-feature-grid{grid-template-columns:1fr;gap:35px}.airport-photo-stack{min-height:430px}}
@media(max-width:650px){body{padding-bottom:68px}.premium-photo-hero{min-height:590px;background-position:62% center}.premium-photo-hero .hero-inner{padding-top:74px}.about-photo,.premium-image{min-height:350px}.about-photo img{height:350px}.image-service-grid,.why-image-grid{grid-template-columns:1fr}.image-service-card{height:310px}.why-image-card img{height:230px}.dark-feature h2{font-size:34px}.airport-photo-stack{min-height:355px}.airport-photo-stack .photo-main{width:92%;height:300px}.airport-photo-stack .photo-small{width:52%;height:165px;border-width:5px}.mobile-action-bar{position:fixed;left:0;right:0;bottom:0;height:66px;display:grid;grid-template-columns:repeat(3,1fr);z-index:5000;background:#fff;border-top:1px solid #e5e9ef;box-shadow:0 -8px 25px rgba(3,12,24,.14);padding-bottom:env(safe-area-inset-bottom)}.mobile-action-bar a{display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:900;color:#fff}.mobile-action-bar i{font-size:17px}.mobile-call{background:var(--gold);color:var(--navy)!important}.mobile-sms{background:var(--navy-3)}.mobile-whatsapp{background:#16b85a}.footer{padding-bottom:10px}}

/* CSS LOAD / LAYOUT HARDENING */
html,body{width:100%;max-width:100%;overflow-x:hidden}
main,section,header,footer,nav,div{min-width:0}
.image-service-card,.why-image-card,.fleet-card,.about-photo,.airport-photo-stack{max-width:100%}
.image-service-card img,.why-image-card img,.photo-fleet img,.about-photo img,.airport-photo-stack img{max-width:100%}
@media(max-width:992px){.header-container{width:min(100% - 24px,1180px)}.premium-book-btn{flex-shrink:0}}

/* =========================================================
   DYNAMIC 84-CITY ROUTE DIRECTORY + SEO ROUTE PAGES
========================================================= */
.routes-main-hero{position:relative;padding:86px 0 74px;color:#fff;background:linear-gradient(105deg,rgba(3,12,24,.97),rgba(8,27,50,.88)),url('/assets/images/long-drive.jpg') center/cover no-repeat;overflow:hidden}.routes-main-hero:after{content:"";position:absolute;right:-90px;top:-110px;width:360px;height:360px;border-radius:50%;border:60px solid rgba(255,183,3,.08)}.routes-main-hero .container{position:relative;z-index:2}.routes-main-hero h1{font-size:54px;line-height:1.05;margin:8px 0 14px}.routes-main-hero p{max-width:760px;color:#dce6f2;font-size:17px}.routes-count-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.routes-count-row span{display:flex;align-items:center;gap:7px;padding:10px 14px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.06);backdrop-filter:blur(6px);font-size:12px;color:#d9e2ee}.routes-count-row strong{color:var(--gold);font-size:17px}.route-directory{background:#f7f9fc}.route-directory-toolbar{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px}.route-directory-toolbar h2{font-size:38px;line-height:1.1;margin:6px 0 0;color:var(--navy)}.route-filters{display:flex;gap:10px}.route-filters input,.route-filters select{height:46px;border:1px solid var(--border);background:#fff;border-radius:9px;padding:0 14px;color:var(--ink);min-width:220px;box-shadow:0 8px 24px rgba(6,20,38,.05)}.route-state-section{margin-bottom:48px}.route-state-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:0 2px}.route-state-heading span{font-size:22px;font-weight:900;color:var(--navy)}.route-state-heading strong{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--gold-2);background:#fff2c2;padding:7px 10px;border-radius:999px}.city-route-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.city-route-card{position:relative;background:#fff;border:1px solid #e8edf4;border-radius:18px;padding:24px;overflow:hidden;box-shadow:0 14px 38px rgba(6,20,38,.06);transition:.28s ease}.city-route-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-70px;top:-70px;background:linear-gradient(145deg,rgba(255,183,3,.18),rgba(255,183,3,.05))}.city-route-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(6,20,38,.11)}.city-card-top{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.city-card-top small{font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:800;color:#8a96a6}.city-card-top h3{font-size:24px;line-height:1.1;margin:3px 0 0;color:var(--navy)}.city-card-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--navy);color:var(--gold)}.city-route-links{position:relative;z-index:1;display:grid;gap:9px}.city-route-links a{display:flex;align-items:flex-start;gap:8px;color:#677386;font-size:12.5px;font-weight:700;line-height:1.45}.city-route-links a i{color:var(--gold-2);margin-top:3px}.city-route-links a:hover{color:var(--gold-2)}.city-card-more{position:relative;z-index:1;display:flex!important;align-items:center;justify-content:space-between!important;margin-top:19px!important;padding-top:15px;border-top:1px solid var(--border);color:var(--navy)!important;font-size:11px!important;font-weight:900!important}.city-card-more:hover{transform:none!important;color:var(--gold-2)!important}.all-routes-note{padding:18px 20px;border:1px solid rgba(255,183,3,.35);border-radius:12px;background:#fff9e6;color:#5d6571;font-size:13px}.all-routes-note i{color:var(--gold-2);margin-right:8px}
.home-city-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.home-route-card{position:relative;overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:0 14px 35px rgba(6,20,38,.06)}.home-route-card:after{content:"";position:absolute;right:-52px;top:-65px;width:170px;height:170px;border-radius:50%;background:rgba(255,183,3,.11)}.home-route-card-head{position:relative;z-index:1;display:flex;align-items:baseline;gap:7px;margin-bottom:16px}.home-route-card-head span{font-size:16px;font-weight:900;color:var(--navy)}.home-route-card-head h3{margin:0;font-size:24px;color:var(--gold-2)}.home-route-links{position:relative;z-index:1;display:grid;gap:9px}.home-route-links a{display:flex;gap:8px;align-items:flex-start;color:#697487;font-size:12px;font-weight:700}.home-route-links i{color:var(--gold-2);margin-top:3px}.home-route-links a:hover{color:var(--gold-2)}.route-all-link{text-align:center;margin-top:30px}
.route-seo-hero{position:relative;min-height:520px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(2,9,18,.97),rgba(6,20,38,.78) 55%,rgba(6,20,38,.28)),var(--route-hero) center/cover no-repeat;overflow:hidden}.route-seo-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(transparent,rgba(3,12,23,.55))}.route-seo-hero-inner{position:relative;z-index:2;padding:72px 0 100px}.route-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#b9c5d4;font-size:11px;margin-bottom:22px}.route-breadcrumb a:hover{color:var(--gold)}.route-state-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(255,183,3,.3);border-radius:999px;background:rgba(255,183,3,.09);color:var(--gold);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}.route-seo-hero h1{font-size:58px;line-height:1.04;max-width:840px;margin:14px 0 16px}.route-seo-hero p{max-width:760px;color:#dce4ef;font-size:17px}.route-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.route-booking-wrap{margin-top:-62px;position:relative;z-index:10}.route-booking-card{background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(5,18,35,.16);padding:24px;border:1px solid rgba(6,20,38,.06)}.route-booking-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:17px}.route-booking-title span{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--gold-2);font-weight:900}.route-booking-title h2{font-size:23px;margin:2px 0 0;color:var(--navy)}.route-booking-grid{display:grid;grid-template-columns:1.1fr 1.1fr .9fr 1fr .75fr;gap:11px;align-items:end}.route-overview-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.route-copy h2{font-size:40px;line-height:1.12;color:var(--navy);margin:8px 0 18px}.route-copy p{color:var(--muted)}.route-benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:25px}.route-benefit-grid>div{display:grid;grid-template-columns:42px 1fr;column-gap:10px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:10px;background:#fff}.route-benefit-grid i{grid-row:1/3;width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--gold-soft);color:var(--gold-2)}.route-benefit-grid strong{color:var(--navy);font-size:13px}.route-benefit-grid span{color:#7a8798;font-size:11px}.route-photo-feature{position:relative}.route-photo-feature img{width:100%;height:480px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow-lg)}.route-photo-badge{position:absolute;left:22px;right:22px;bottom:22px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 16px;border-radius:12px;background:rgba(5,18,35,.92);color:#fff;backdrop-filter:blur(8px)}.route-photo-badge span{font-size:9px;text-transform:uppercase;color:#91a0b3}.route-photo-badge strong{font-size:13px}.route-photo-badge i{color:var(--gold)}.route-image-gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px}.route-gallery-item{position:relative;margin:0;border-radius:14px;overflow:hidden;background:var(--navy)}.route-gallery-item.wide{grid-column:span 2}.route-gallery-item img{width:100%;height:100%;object-fit:cover;transition:.4s ease}.route-gallery-item:hover img{transform:scale(1.05)}.route-gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,14,28,.72))}.route-gallery-item figcaption{position:absolute;left:15px;bottom:12px;z-index:2;color:#fff;font-size:12px;font-weight:900}.route-content-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:42px;align-items:start}.route-article h2{font-size:38px;line-height:1.15;color:var(--navy)}.route-article h3{font-size:22px;color:var(--navy);margin:25px 0 7px}.route-article p{color:var(--muted)}.route-side-card{position:sticky;top:20px;background:var(--navy);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}.route-side-card img{width:100%;height:230px;object-fit:cover}.route-side-card>div{padding:24px;color:#fff}.route-side-card h3{font-size:24px;margin:7px 0}.route-side-card p{color:#c4cfdb;font-size:13px}.route-side-card .btn{width:100%;margin-top:10px}.route-wa-link{margin-top:10px;min-height:48px;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:8px;background:#16b85a;color:#fff;font-size:12px;font-weight:900}.route-faq-section{background:linear-gradient(135deg,#f7f9fc,#fff9e8)}.route-faq{max-width:900px}.related-route-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.related-route-card{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto;align-items:center;gap:5px 8px;padding:16px;border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:0 10px 28px rgba(6,20,38,.05)}.related-route-card span{font-size:11px;color:#738095}.related-route-card strong{font-size:13px;color:var(--navy)}.related-route-card i{grid-row:1/2;color:var(--gold-2)}.related-route-card small{grid-column:1/-1;color:var(--gold-2);font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.6px}.related-route-card:hover{border-color:var(--gold);transform:translateY(-2px)}
@media(max-width:1100px){.city-route-card-grid,.home-city-route-grid{grid-template-columns:repeat(2,1fr)}.related-route-grid{grid-template-columns:repeat(3,1fr)}.route-booking-grid{grid-template-columns:1fr 1fr 1fr}.route-booking-grid .btn{grid-column:span 1}.route-overview-grid{grid-template-columns:1fr 1fr;gap:32px}.route-content-grid{grid-template-columns:1fr .75fr}}
@media(max-width:760px){.routes-main-hero{padding:68px 0 58px}.routes-main-hero h1,.route-seo-hero h1{font-size:39px}.route-directory-toolbar{align-items:stretch;flex-direction:column}.route-filters{display:grid;grid-template-columns:1fr}.route-filters input,.route-filters select{min-width:0;width:100%}.city-route-card-grid,.home-city-route-grid{grid-template-columns:1fr}.route-seo-hero{min-height:500px}.route-seo-hero-inner{padding:58px 0 88px}.route-booking-wrap{margin-top:-45px}.route-booking-grid{grid-template-columns:1fr}.route-booking-title{align-items:flex-start;flex-direction:column;gap:2px}.route-overview-grid,.route-content-grid{grid-template-columns:1fr}.route-copy h2,.route-article h2{font-size:32px}.route-benefit-grid{grid-template-columns:1fr}.route-photo-feature img{height:360px}.route-image-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.route-gallery-item.wide{grid-column:span 2}.route-side-card{position:relative;top:0}.related-route-grid{grid-template-columns:1fr 1fr}.route-state-heading span{font-size:19px}}
@media(max-width:430px){.related-route-grid{grid-template-columns:1fr}.route-image-gallery{grid-template-columns:1fr;grid-auto-rows:210px}.route-gallery-item.wide{grid-column:span 1}.route-photo-feature img{height:315px}.routes-count-row span{width:100%}.city-route-card{padding:20px}}
