:root{
    --primary:#ffc107;
    --primary-dark:#d99f00;
    --brand-red:#c82333;
    --brand-red-dark:#87131f;
    --brand-gold:#ffc107;
    --brand-gold-light:#ffc107;
    --brand-ivory:#fbf8f2;
    --black:#171012;
    --dark:#291c1f;
    --white:#ffffff;
    --gray:#74676a;
    --light:#fbf8f2;
    --border:rgba(255,255,255,0.08);
    --shadow:0 15px 40px rgba(0,0,0,0.12);
    --radius:25px;
    --radius-sm:14px;
    --container:1250px;
}



*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Inter','Segoe UI',sans-serif;
    background:linear-gradient(180deg,#ffffff 0%, var(--light) 40%, #ffffff 100%);
    color:var(--dark);
    overflow-x:hidden;
}

/* Floating action buttons */
.fab-stack{
    position:fixed;
    right:18px;
    bottom:18px;
    display:flex;
    flex-direction:column;
    gap:12px;
    z-index:1200;
    pointer-events:none;
}

.fab{
    width:54px;
    height:54px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    border:1px solid rgba(0,0,0,0.10);
    box-shadow:0 16px 40px rgba(0,0,0,0.16);
    cursor:pointer;
    pointer-events:auto;
    transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
    backdrop-filter:blur(10px);
    transform:translateY(0);
}

.fab i{
    font-size:20px;
}

.fab:hover{
    transform:translateY(-4px) scale(1.03);
    box-shadow:0 22px 60px rgba(0,0,0,0.22);
}

.fab--call{
    background:linear-gradient(180deg, rgba(254,197,2,1), rgba(255,214,51,1));
    color:var(--black);
    animation:fabFloat 2.6s ease-in-out infinite;
}

.fab--whatsapp{
    background:linear-gradient(180deg, #25D366, #12b55a);
    color:white;
    animation:fabFloat 2.9s ease-in-out infinite;
}

.fab--top{
    background:rgba(17,17,17,0.92);
    color:white;
    border-color:rgba(255,255,255,0.14);
    animation:fabPulse 2.2s ease-in-out infinite;
}

.fab--top.is-hidden{
    opacity:0;
    transform:translateY(10px);
    pointer-events:none;
    filter:blur(0.2px);
}

@keyframes fabFloat{
    0%,100%{ transform:translateY(0); }
    50%{ transform:translateY(-6px); }
}

@keyframes fabPulse{
    0%,100%{ box-shadow:0 16px 40px rgba(0,0,0,0.18); }
    50%{ box-shadow:0 16px 50px rgba(254,197,2,0.35); }
}

@media(max-width:480px){
    .fab-stack{
        right:12px;
        bottom:12px;
        gap:10px;
    }

    .fab{
        width:50px;
        height:50px;
        border-radius:16px;
    }
}

a{
    color:inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
    outline:3px solid rgba(254,197,2,0.45);
    outline-offset:3px;
}

/* SCROLLBAR */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-thumb{
    background:var(--primary);
    border-radius:20px;
}

/* HEADER */

header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:1000;

    /* BLACK KI JAGAH WHITE */
    background:rgba(255,255,255,0.95);

    backdrop-filter:blur(14px);

    border-bottom:1px solid rgba(0,0,0,0.08);

    box-shadow:0 10px 30px rgba(0,0,0,0.08);

    transition:0.4s ease;
}

.header-container{
    max-width:var(--container);
    margin:auto;
    padding:12px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.logo img{
    display:block;
    max-width:100%;
    transition:0.5s;
    filter:none;
}

.logo img:hover{
    transform:none;
}

.logo--home{
    width:210px;
    aspect-ratio:1600 / 585;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    overflow:visible;
}

.logo--home img{
    width:100%;
    height:100%;
    max-width:100%;
    object-fit:contain;
    object-position:center;
    flex:0 0 auto;
}

nav ul{
    display:flex;
    align-items:center;
    gap:30px;
    list-style:none;
}

nav a{
    color:#111;
    text-decoration:none;
    font-size:15px;
    font-weight:600;
    position:relative;
    transition:0.4s;
    letter-spacing:.5px;
}

nav a::after{
    content:'';
    position:absolute;
    left:0;
    bottom:-8px;
    width:0%;
    height:2px;
    background:var(--primary);
    transition:0.4s;
}

nav a:hover{
    color:#FEC502;
}

nav a:hover::after{
    width:100%;
}

.menu-toggle{
    display:none;
    background:none;
    border:none;
    color:var(--black);
    font-size:28px;
    cursor:pointer;
}

/* HERO */

.hero{
    height:100vh;
    position:relative;
    overflow:hidden;
    padding:0;
}

.slider,
.slide{
    height:100%;
}

.slide{
    display:none;
    position:relative;
}

.slide.active{
    display:block;
}

.slide img,
.slide video{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.slide img{
    animation:zoomEffect 10s linear infinite;
}

.slide video{
    object-position:center;
    background:#101a1d;
    pointer-events:none;
}

@keyframes zoomEffect{
    100%{
        transform:scale(1.15);
    }
}

.slide-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg, rgba(7,10,13,0.24) 0%, rgba(7,10,13,0.10) 36%, rgba(7,10,13,0.52) 100%),
        linear-gradient(90deg, rgba(7,10,13,0.78) 0%, rgba(7,10,13,0.46) 50%, rgba(7,10,13,0.22) 100%);
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:100px 90px 60px;
}

.slide-content{
    width:min(100%, 1080px);
    animation:fadeUp 1s ease;
}

.hero-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-bottom:20px;
    color:rgba(255,255,255,0.92);
    font-family:'Inter','Segoe UI',sans-serif;
    font-size:13px;
    font-weight:700;
    letter-spacing:0.16em;
    line-height:1;
    text-transform:uppercase;
}

.hero-eyebrow span{
    width:30px;
    height:3px;
    border-radius:999px;
    background:var(--primary);
    box-shadow:0 0 18px rgba(254,197,2,0.45);
}

.slide-content h1{
    font-family:'Manrope','Sora','Inter','Segoe UI',sans-serif;
    font-size:clamp(46px, 4.35vw, 68px);
    font-weight:800;
    letter-spacing:-0.048em;
    color:white;
    line-height:1.08;
    margin-bottom:26px;
    text-wrap:balance;
    text-shadow:0 12px 34px rgba(0,0,0,0.42);
}

.slide-content h1 > span{
    display:block;
}

.slide-content h1 .hero-title-accent{
    color:var(--primary);
}

.slide-content h1 .hero-title-tail{
    margin-top:11px;
    color:rgba(255,255,255,0.86);
    font-size:0.46em;
    font-weight:700;
    letter-spacing:0.025em;
    line-height:1.2;
}

.slide-content p{
    font-family:'Inter','Segoe UI',sans-serif;
    max-width:760px;
    margin:0 auto 35px;
    color:rgba(255,255,255,0.88);
    font-size:19px;
    font-weight:500;
    line-height:1.65;
    text-shadow:0 3px 14px rgba(0,0,0,0.42);
}

@keyframes fadeUp{
    from{
        opacity:0;
        transform:translateY(50px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* BUTTON */

.cta-btn,
.form-submit{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:16px 40px;
    border:none;
    border-radius:50px;
    background:var(--primary);
    color:var(--black);
    text-decoration:none;
    font-weight:700;
    cursor:pointer;
    transition:0.4s ease;
    box-shadow:0 10px 30px rgba(254,197,2,0.4);
}

.cta-btn--outline{
    background:transparent;
    color:var(--black);
    border:1px solid rgba(0,0,0,0.16);
    box-shadow:none;
}

.cta-btn:hover,
.form-submit:hover{
    transform:translateY(-6px) scale(1.04);
    box-shadow:0 20px 40px rgba(254,197,2,0.55);
    background:#ffd633;
}

.cta-btn--outline:hover{
    background:rgba(254,197,2,0.15);
    border-color:rgba(254,197,2,0.60);
    box-shadow:none;
}

/* SLIDER BUTTONS */

.slider-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:60px;
    height:60px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,0.12);
    backdrop-filter:blur(10px);
    color:white;
    font-size:22px;
    cursor:pointer;
    transition:0.4s;
    z-index:10;
}

.slider-arrow:hover{
    background:var(--primary);
    color:black;
}

.slider-arrow.prev{
    left:30px;
}

.slider-arrow.next{
    right:30px;
}

/* DOTS */

.slider-controls{
    position:absolute;
    left:50%;
    bottom:35px;
    transform:translateX(-50%);
    display:flex;
    gap:12px;
    z-index:10;
}

.dot{
    width:14px;
    height:14px;
    border-radius:50%;
    background:rgba(255,255,255,0.5);
    cursor:pointer;
    transition:0.4s;
}

.dot.active{
    width:40px;
    border-radius:20px;
    background:var(--primary);
}

/* GLOBAL */

.container{
    max-width:var(--container);
    margin:auto;
}

section{
    padding:110px 20px;
    scroll-margin-top:110px;
}

.section-title{
    text-align:center;
    font-size:50px;
    margin-bottom:70px;
    position:relative;
    color:var(--black);
}

.section-title::after{
    content:'';
    position:absolute;
    left:50%;
    transform:translateX(-50%);
    bottom:-18px;
    width:120px;
    height:5px;
    border-radius:20px;
    background:var(--primary);
}

.section-title.section-title--light::after{
    opacity:0.95;
}

/* PAGE BREADCRUMB */

.page-breadcrumb{
    margin-top:106px;
    height:200px;
    min-height:200px;
    position:relative;
    overflow:hidden;
    background:url("assets/img/slides/slider1.png") center center / cover no-repeat;
}

.page-breadcrumb img{
    width:100%;
    height:100%;
    min-height:0;
    object-fit:cover;
    display:block;
}

.page-breadcrumb-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(0,0,0,0.62), rgba(0,0,0,0.48));
    display:flex;
    align-items:center;
}

.page-breadcrumb-content{
    color:white;
    text-align:left;
}

.page-breadcrumb-content h1{
    font-family:'Sora','Inter','Segoe UI',sans-serif;
    font-size:52px;
    line-height:1.08;
    margin-bottom:10px;
}

.page-breadcrumb-content p{
    font-size:17px;
    color:rgba(255,255,255,0.88);
}

.page-breadcrumb-content a{
    color:#ffd84a;
    text-decoration:none;
    font-weight:700;
}

/* ABOUT PAGE */

.about-image-section{
    position: relative;
    width: 100%;
    min-height: 500px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-about-image{
    width: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.main-about-image img{
    width: 100%;
    height: 500px;
    object-fit: cover;
    display: block;
    border-radius: 30px;
}

.small-about-image{
    position: absolute;
    right: -20px;
    bottom: -30px;
    width: 65%;
    background: #fff;
    border-radius: 25px;
    overflow: hidden;
    padding: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
}

.small-about-image img{
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 20px;
    display: block;
}

.image-content{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 20px;
    background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
    color: #fff;
    border-radius: 0 0 20px 20px;
}

.image-content h4{
    font-size: 24px;
    margin-bottom: 8px;
}

.image-content p{
    font-size: 14px;
    opacity: 0.9;
}

@media (max-width:768px){

  .small-car-card{
      width: 240px;
      aspect-ratio: 1 / 1;   /* perfect square */
      height: auto;
      overflow: hidden;
      border-radius: 25px;
  }

  .small-car-card img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
  }

}








/* SECTION */
.service-section{
  width:100%;
  padding:50px 7%;
}

/* CONTAINER */
.service-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  flex-wrap:wrap;
}

/* LEFT CONTENT */
.service-content{
  flex:1;
  min-width:300px;
}

.service-subtitle{
  color:#f4a000;
  font-size:16px;
  font-weight:600;
  margin-bottom:12px;
}

/* MAIN HEADING */
.service-title{
  font-size:32px;
  line-height:1.2;
  font-weight:800;
  max-width:650px;   /* width bada */
}

.service-title span{
  color:#f4a000;
}

/* PARAGRAPH */
.service-text{
  font-size:16px;   /* Pehle 22px tha */
  line-height:1.9;
  color:#26354f;
  margin-bottom:28px;
  max-width:620px;
}

/* FEATURES */
.features{
  display:grid;
  grid-template-columns:repeat(2, minmax(220px, 1fr));
  gap:14px 30px;
  margin-bottom:28px;
}

.feature-item{
  font-size:15px;   /* Pehle 20px tha */
  font-weight:500;
  color:#061739;
  display:flex;
  align-items:center;
  gap:10px;
}

/* BOTTOM TEXT */
.bottom-text{
  font-size:20px;   /* Pehle 26px tha */
  font-weight:700;
  color:#061739;
}

/* RIGHT IMAGE */
.service-image{
  flex:1;
  text-align:center;
  min-width:280px;
}

.service-image img{
  width:100%;
  max-width:520px;   /* Image bhi choti */
}

/* DESKTOP LARGE SCREEN FIX */
@media (min-width:1400px){

  .service-section{
    padding:60px 10%;
  }

  .service-title{
    font-size:52px;
  }

  .service-image img{
    max-width:580px;
  }
}

/* TABLET */
@media(max-width:992px){

  .service-title{
    font-size:36px;
  }

  .service-text{
    font-size:15px;
  }
}

/* =========================
   MOBILE RESPONSIVE FIX
========================= */

@media (max-width:768px){

  .service-section{
    padding:35px 20px;
  }

  .service-container{
    flex-direction:column;
    gap:20px;
    text-align:center;
  }

  /* IMAGE */
  .service-image img{
    max-width:280px;
    width:100%;
  }

  /* HEADING */
  .service-title{
    font-size:22px;
    line-height:1.3;
    max-width:100%;
    margin-bottom:15px;
  }

  .service-subtitle{
    font-size:14px;
    margin-bottom:10px;
  }

  /* TEXT */
  .service-text{
    font-size:14px;
    line-height:1.9;
    margin-bottom:20px;
    padding:0 5px;
  }

  /* FEATURES */
  .features{
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:20px;
  }

  .feature-item{
    justify-content:flex-start;
    font-size:14px;
    gap:8px;
    text-align:left;
  }

  /* BOTTOM TEXT */
  .bottom-text{
    font-size:16px;
    line-height:1.4;
  }

  /* FLOATING BUTTONS */
  .floating-buttons{
    right:12px;
    bottom:15px;
  }

  .floating-buttons a{
    width:45px;
    height:45px;
    font-size:18px;
  }
}

/* GALLERY PAGE */

.gallery-page-section{
    padding:88px 20px 100px;
    background:
        radial-gradient(900px 360px at 12% 0%, rgba(254,197,2,0.12), transparent 58%),
        linear-gradient(180deg,#ffffff 0%, #f7f8fa 60%, #ffffff 100%);
}

.gallery-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}

.gallery-card{
    position:relative;
    border-radius:var(--radius);
    overflow:hidden;
    border:1px solid rgba(0,0,0,0.10);
    background:#fff;
    box-shadow:0 14px 36px rgba(0,0,0,0.10);
    cursor:pointer;
}

.gallery-card img{
    width:100%;
    height:230px;
    object-fit:cover;
    display:block;
    transition:transform 0.4s ease;
}

.gallery-card:hover img{
    transform:scale(1.05);
}

.gallery-card:focus-within,
.gallery-card:focus{
    outline:3px solid rgba(254,197,2,0.55);
    outline-offset:3px;
}

.gallery-lightbox{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.88);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:3000;
    padding:24px;
}

.gallery-lightbox.is-open{
    display:flex;
}

.gallery-lightbox img{
    max-width:min(92vw, 1280px);
    max-height:86vh;
    width:auto;
    height:auto;
    border-radius:14px;
    border:2px solid rgba(255,255,255,0.16);
    box-shadow:0 25px 80px rgba(0,0,0,0.45);
}

.gallery-lightbox-close{
    position:absolute;
    top:18px;
    right:20px;
    width:46px;
    height:46px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,0.15);
    color:#fff;
    font-size:34px;
    line-height:1;
    cursor:pointer;
}

.gallery-lightbox-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:52px;
    height:52px;
    border:none;
    border-radius:50%;
    background:rgba(255,255,255,0.16);
    color:#fff;
    font-size:24px;
    cursor:pointer;
}

.gallery-lightbox-prev{
    left:20px;
}

.gallery-lightbox-next{
    right:20px;
}

body.no-scroll{
    overflow:hidden;
}

/* ALL CARS PAGE SHOWCASE */

.all-cars-page #services{
    background:
        radial-gradient(900px 360px at 12% 0%, rgba(254,197,2,0.10), transparent 58%),
        linear-gradient(180deg,#ffffff 0%, #f7f8fa 60%, #ffffff 100%);
}

.car-showcase-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}

.car-showcase-card{
    background:#fff;
    border:1px solid rgba(0,0,0,0.12);
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 12px 30px rgba(0,0,0,0.10);
    transition:transform 0.25s ease, box-shadow 0.25s ease;
}

.car-showcase-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 46px rgba(0,0,0,0.14);
}

.car-showcase-media{
    position:relative;
    height:236px;
    overflow:hidden;
}

.car-showcase-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.car-brand{
    position:absolute;
    left:14px;
    top:14px;
    padding:6px 10px;
    border-radius:8px;
    background:rgba(17,17,17,0.92);
    color:#fff;
    font-size:11px;
    font-weight:800;
    letter-spacing:0.4px;
}

.car-showcase-body{
    padding:16px 16px 14px;
}

.car-topline{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
}

.car-topline h4{
    margin:0;
    font-size:28px;
    line-height:1.2;
    color:var(--black);
}

.car-category{
    display:inline-flex;
    padding:6px 10px;
    border-radius:7px;
    background:#f1f2f4;
    color:#8b9099;
    font-size:11px;
    font-weight:800;
    text-transform:lowercase;
}

.car-price{
    margin-top:10px;
}

.car-price strong{
    font-size:25px;
    line-height:1;
    color:var(--primary);
}

.car-price span{
    color:#6f7682;
    font-weight:600;
}

.car-week-price{
    margin-top:8px;
    color:#6f7682;
    font-weight:600;
    padding-bottom:14px;
    border-bottom:1px solid #eceef2;
}

.car-meta-grid{
    margin-top:14px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}

.car-meta-grid span{
    background:#f5f6f8;
    border-radius:8px;
    border:1px solid #eef0f3;
    padding:10px 10px;
    color:#343943;
    font-size:13px;
    font-weight:700;
    display:flex;
    gap:8px;
    align-items:center;
}

.car-meta-grid i{
    color:#111;
    font-size:12px;
}

.car-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
}

.car-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    border-radius:999px;
    height:52px;
    font-weight:800;
    font-size:18px;
    letter-spacing:0.2px;
}

.car-btn--book{
    background:var(--primary);
    color:var(--black);
    box-shadow:0 10px 24px rgba(254,197,2,0.36);
}

.car-btn--rent{
    background:#ffffff;
    color:var(--black);
    border:1px solid rgba(17,17,17,0.24);
    box-shadow:none;
}

/* ABOUT */

#about{
    background:
        radial-gradient(1000px 520px at 14% 12%, rgba(254,197,2,0.10), transparent 60%),
        radial-gradient(900px 520px at 86% 30%, rgba(0,0,0,0.05), transparent 62%),
        linear-gradient(180deg,#ffffff 0%, #fbfbfb 55%, #ffffff 100%);
    padding-top:60px;
    padding-bottom:90px;
}

.about-container{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:50px;
    align-items:center;
}

.about-content{
    background:rgba(255,255,255,0.80);
    border:1px solid rgba(0,0,0,0.06);
    box-shadow:0 18px 60px rgba(0,0,0,0.08);
    border-radius:var(--radius);
    padding:44px 38px;
    position:relative;
    overflow:hidden;
}

.about-content::before{
    content:"";
    position:absolute;
    inset:-2px;
    background:radial-gradient(900px 360px at 0% 0%, rgba(254,197,2,0.14), transparent 60%);
    opacity:0.95;
    pointer-events:none;
}

.about-card::after{
    content:"";
    position:absolute;
    top:26px;
    right:26px;
    width:160px;
    height:140px;
    background:
        radial-gradient(circle at 4px 4px, rgba(17,17,17,0.08) 2px, transparent 2.5px);
    background-size:14px 14px;
    opacity:0.45;
    mask-image:radial-gradient(closest-side, rgba(0,0,0,1), rgba(0,0,0,0));
    pointer-events:none;
}

.about-content > *{
    position:relative;
    z-index:1;
}

.about-content h3{
    font-size:40px;
    margin-bottom:20px;
    line-height:1.1;
}

.about-content p{
    color:var(--gray);
    line-height:1.9;
    margin-bottom:18px;
}

/* Premium About bullets */
#about .about-list{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    list-style:none;
    margin-top:24px;
}

#about .about-list li{
    margin-bottom:0;
    font-weight:700;
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:12px 14px;
    border-radius:18px;
    background:rgba(255,255,255,0.65);
    border:1px solid rgba(0,0,0,0.05);
}

#about .about-list li::before{
    content:none;
}

#about .about-icon{
    width:32px;
    height:32px;
    border-radius:12px;
    background:rgba(254,197,2,0.22);
    border:1px solid rgba(254,197,2,0.25);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary-dark);
    flex:0 0 auto;
}

.about-top{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    margin-bottom:18px;
}

.about-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(254,197,2,0.20);
    border:1px solid rgba(17,17,17,0.10);
    color:var(--black);
    font-weight:900;
    font-size:13px;
    letter-spacing:0.2px;
}

.about-underline{
    width:62px;
    height:4px;
    border-radius:999px;
    background:var(--primary);
    margin:6px 0 18px;
    box-shadow:0 10px 24px rgba(254,197,2,0.35);
}

.about-footer{
    margin-top:18px;
    border-radius:22px;
    border:1px solid rgba(0,0,0,0.06);
    background:
        radial-gradient(700px 220px at 10% 0%, rgba(254,197,2,0.14), transparent 55%),
        linear-gradient(180deg, rgba(255,255,255,0.82), rgba(248,248,248,0.82));
    padding:18px 18px;
    display:flex;
    gap:12px;
    align-items:center;
    justify-content:space-between;
    position:relative;
    overflow:hidden;
}

.about-note-title{
    font-weight:1000;
    color:var(--black);
    font-size:14px;
    line-height:1.2;
}

.about-note-sub{
    margin-top:4px;
    color:var(--gray);
    font-weight:700;
    font-size:12px;
}

.about-car{
    width:190px;
    height:70px;
    position:relative;
    flex:0 0 auto;
}

.about-car img{
    position:absolute;
    right:-10px;
    bottom:-18px;
    width:auto;
    height:110px;
    filter:drop-shadow(0 18px 22px rgba(0,0,0,0.18));
}

.about-list{
    list-style:none;
    margin-top:25px;
}

.about-list li{
    margin-bottom:15px;
    color:var(--dark);
    font-weight:500;
}

.about-list li::before{
    content:'✔';
    color:var(--primary);
    margin-right:10px;
}

/* HOME ABOUT SHOWCASE */

#about.about-showcase-section{
    position:relative;
    overflow:hidden;
    padding:110px 20px;
    background:
        radial-gradient(900px 520px at 0% 10%, rgba(254,197,2,0.13), transparent 62%),
        radial-gradient(800px 500px at 100% 90%, rgba(17,17,17,0.06), transparent 65%),
        #ffffff;
}

#about.about-showcase-section::before{
    content:"";
    position:absolute;
    top:72px;
    right:-90px;
    width:240px;
    height:240px;
    border:1px solid rgba(17,17,17,0.07);
    border-radius:50%;
    box-shadow:0 0 0 38px rgba(17,17,17,0.025), 0 0 0 76px rgba(17,17,17,0.018);
    pointer-events:none;
}

.about-road-orbit{
    position:absolute;
    z-index:0;
    top:72px;
    right:-90px;
    width:240px;
    height:240px;
    border-radius:50%;
    pointer-events:none;
}

.about-road-orbit::before{
    content:"";
    position:absolute;
    inset:9px;
    border:1px dashed rgba(200,35,51,0.16);
    border-radius:50%;
}

.about-orbit-car{
    position:absolute;
    inset:0;
    border-radius:50%;
    animation:aboutCarOrbit 9s linear infinite;
    will-change:transform;
}

.about-orbit-car img{
    position:absolute;
    top:50%;
    right:-28px;
    width:64px;
    height:auto;
    transform:translateY(-50%) rotate(-90deg);
    transform-origin:center;
    filter:drop-shadow(0 7px 7px rgba(49,25,21,0.22));
}

@keyframes aboutCarOrbit{
    from{
        transform:rotate(0deg);
    }
    to{
        transform:rotate(360deg);
    }
}

.about-showcase{
    display:grid;
    grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap:72px;
    align-items:center;
    position:relative;
    z-index:1;
}

@media(prefers-reduced-motion:reduce){
    .about-orbit-car{
        animation:none;
        transform:rotate(210deg);
    }
}

.about-visual{
    min-width:0;
}

.about-visual-frame{
    position:relative;
    min-height:590px;
    overflow:hidden;
    isolation:isolate;
    border:1px solid rgba(17,17,17,0.08);
    border-radius:36px;
    background:linear-gradient(145deg, #f8f8f6 0%, #e9eaed 68%, #f7f7f7 100%);
    box-shadow:0 28px 75px rgba(17,17,17,0.14);
}

.about-visual-frame::before{
    content:"";
    position:absolute;
    z-index:-1;
    left:-140px;
    bottom:-180px;
    width:460px;
    height:300px;
    border-radius:50%;
    background:var(--primary);
    transform:rotate(-12deg);
}

.about-visual-frame::after{
    content:"";
    position:absolute;
    z-index:1;
    inset:auto 0 0;
    height:170px;
    background:linear-gradient(180deg, transparent, rgba(10,12,14,0.12));
    pointer-events:none;
}

.about-visual-pattern{
    position:absolute;
    z-index:1;
    top:34px;
    left:34px;
    width:128px;
    height:128px;
    opacity:0.34;
    background:radial-gradient(circle, rgba(17,17,17,0.42) 1.5px, transparent 2px);
    background-size:14px 14px;
    mask-image:linear-gradient(135deg, #000, transparent 76%);
}

.about-visual-frame > img{
    position:absolute;
    z-index:2;
    top:50%;
    left:-7%;
    width:116%;
    max-width:none;
    height:auto;
    transform:translateY(-45%);
    mix-blend-mode:multiply;
    filter:contrast(1.02) saturate(0.92);
}

.about-experience-card,
.about-route-card{
    position:absolute;
    z-index:4;
    border:1px solid rgba(255,255,255,0.12);
    box-shadow:0 16px 38px rgba(17,17,17,0.20);
    backdrop-filter:blur(14px);
}

.about-experience-card{
    left:24px;
    bottom:24px;
    display:flex;
    align-items:center;
    gap:13px;
    max-width:220px;
    padding:15px 17px;
    border-radius:20px;
    color:#ffffff;
    background:rgba(17,17,17,0.92);
}

.about-experience-card strong{
    color:var(--primary);
    font-family:'Manrope','Inter',sans-serif;
    font-size:42px;
    font-weight:800;
    letter-spacing:-0.06em;
    line-height:0.9;
}

.about-experience-card strong span{
    font-size:0.58em;
}

.about-experience-card p{
    margin:0;
    color:rgba(255,255,255,0.82);
    font-size:12px;
    font-weight:700;
    line-height:1.35;
}

.about-route-card{
    top:24px;
    right:24px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:13px 15px;
    border-color:rgba(17,17,17,0.08);
    border-radius:18px;
    background:rgba(255,255,255,0.86);
}

.about-route-card > i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:13px;
    background:var(--primary);
    color:var(--black);
}

.about-route-card small,
.about-route-card strong{
    display:block;
}

.about-route-card small{
    margin-bottom:3px;
    color:var(--gray);
    font-size:10px;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.about-route-card strong{
    color:var(--black);
    font-size:13px;
}

.about-story{
    min-width:0;
}

.about-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--primary-dark);
    font-size:12px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.about-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:var(--primary);
}

.about-story h2{
    max-width:none;
    margin:0 0 22px;
    color:var(--black);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(34px, 2.85vw, 42px);
    font-weight:800;
    letter-spacing:-0.047em;
    line-height:1.12;
    text-wrap:balance;
}

.about-story h2 .about-title-line{
    display:block;
    white-space:nowrap;
}

.about-story h2 .about-title-highlight{
    position:relative;
    width:max-content;
    max-width:100%;
    z-index:0;
}

.about-story h2 .about-title-highlight::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:0;
    right:0;
    bottom:-2px;
    height:12px;
    border-radius:999px;
    background:rgba(254,197,2,0.72);
    transform:rotate(-1deg);
}

.about-lead{
    max-width:650px;
    margin:0 0 13px;
    color:#2d2d2d;
    font-size:18px;
    font-weight:600;
    line-height:1.7;
}

.about-copy{
    max-width:650px;
    margin:0;
    color:var(--gray);
    font-size:15px;
    line-height:1.75;
}

.about-service-note{
    max-width:650px;
    margin:14px 0 0;
    color:var(--gray);
    font-size:15px;
    font-weight:400;
    line-height:1.75;
}

.about-service-note + .about-service-note{
    margin-top:10px;
}

.about-feature-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
    margin-top:28px;
}

.about-feature{
    display:flex;
    align-items:flex-start;
    gap:12px;
    min-width:0;
    padding:14px;
    border:1px solid rgba(17,17,17,0.07);
    border-radius:17px;
    background:rgba(255,255,255,0.74);
    transition:transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.about-feature:hover{
    transform:translateY(-3px);
    border-color:rgba(254,197,2,0.65);
    box-shadow:0 12px 28px rgba(17,17,17,0.08);
}

.about-feature > span{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:13px;
    background:rgba(254,197,2,0.19);
    color:var(--primary-dark);
}

.about-feature h3{
    margin:0 0 4px;
    color:var(--black);
    font-size:14px;
    font-weight:800;
}

.about-feature p{
    margin:0;
    color:var(--gray);
    font-size:12px;
    line-height:1.45;
}

.about-metrics{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    margin-top:24px;
    padding:18px 0;
    border-top:1px solid rgba(17,17,17,0.09);
    border-bottom:1px solid rgba(17,17,17,0.09);
}

.about-metrics > div{
    padding:0 18px;
    border-right:1px solid rgba(17,17,17,0.09);
}

.about-metrics > div:first-child{
    padding-left:0;
}

.about-metrics > div:last-child{
    padding-right:0;
    border-right:0;
}

.about-metrics strong,
.about-metrics span{
    display:block;
}

.about-metrics strong{
    margin-bottom:5px;
    color:var(--black);
    font-family:'Manrope','Inter',sans-serif;
    font-size:22px;
    font-weight:800;
    letter-spacing:-0.035em;
}

.about-metrics span{
    color:var(--gray);
    font-size:11px;
    font-weight:600;
    line-height:1.35;
}

.about-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:22px;
    margin-top:26px;
}

.about-story .cta-btn{
    gap:10px;
    padding:15px 25px;
}

.about-story .cta-btn.about-fleet-cta{
    position:relative;
    isolation:isolate;
    min-width:292px;
    min-height:72px;
    overflow:hidden;
    justify-content:flex-start;
    padding:0 88px 12px 27px;
    border:2px solid #ff4652;
    border-radius:999px;
    color:#ffffff;
    background:linear-gradient(135deg, #ff2639 0%, #dc1027 58%, #ad0b20 100%);
    box-shadow:
        inset 0 0 0 3px rgba(255,255,255,0.18),
        0 16px 32px rgba(173,11,32,0.27);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:18px;
    font-weight:800;
    letter-spacing:-0.025em;
}

.about-story .cta-btn.about-fleet-cta::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    background:
        radial-gradient(150px 65px at 12% 0%, rgba(255,255,255,0.23), transparent 72%),
        linear-gradient(105deg, transparent 20%, rgba(255,255,255,0.13) 45%, transparent 67%);
    transform:translateX(-105%);
    transition:transform 0.65s ease;
}

.about-story .cta-btn.about-fleet-cta::after{
    content:"";
    position:absolute;
    right:26px;
    bottom:13px;
    left:27px;
    height:2px;
    background:repeating-linear-gradient(90deg, rgba(255,255,255,0.82) 0 16px, transparent 16px 30px);
    opacity:0.85;
}

.about-fleet-label{
    position:relative;
    z-index:2;
    white-space:nowrap;
}

.about-fleet-car{
    position:absolute;
    z-index:2;
    top:15px;
    right:28px;
    display:grid;
    width:48px;
    height:32px;
    place-items:center;
    color:#ffffff;
    font-size:29px;
    filter:drop-shadow(0 5px 6px rgba(84,0,12,0.22));
    animation:aboutFleetCarCruise 2.6s ease-in-out infinite;
}

.about-fleet-car::before{
    content:"";
    position:absolute;
    top:50%;
    right:90%;
    width:25px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.78));
    box-shadow:7px -6px 0 -0.5px rgba(255,255,255,0.48), 3px 6px 0 -0.5px rgba(255,255,255,0.34);
}

@keyframes aboutFleetCarCruise{
    0%,100%{
        transform:translateX(-3px);
    }
    50%{
        transform:translateX(5px);
    }
}

.about-story .cta-btn.about-fleet-cta:hover{
    color:#ffffff;
    background:linear-gradient(135deg, #ff3547 0%, #d80e25 56%, #970719 100%);
    box-shadow:
        inset 0 0 0 3px rgba(255,255,255,0.22),
        0 21px 38px rgba(173,11,32,0.34);
    transform:translateY(-4px);
}

.about-story .cta-btn.about-fleet-cta:hover::before{
    transform:translateX(105%);
}

.about-call{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--black);
    text-decoration:none;
}

.about-call > span{
    width:43px;
    height:43px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border:1px solid rgba(17,17,17,0.10);
    border-radius:50%;
    background:#ffffff;
    box-shadow:0 8px 22px rgba(17,17,17,0.08);
    transition:background 0.25s ease, color 0.25s ease;
}

.about-call:hover > span{
    background:var(--black);
    color:var(--primary);
}

.about-call small,
.about-call strong{
    display:block;
}

.about-call small{
    margin-bottom:3px;
    color:var(--gray);
    font-size:10px;
    font-weight:700;
    letter-spacing:0.05em;
    text-transform:uppercase;
}

.about-call strong{
    font-size:14px;
    font-weight:800;
}

@media(max-width:1100px){
    .about-showcase{
        gap:44px;
    }

    .about-visual-frame{
        min-height:550px;
    }

    .about-story h2{
        font-size:38px;
    }
}

@media(max-width:991px){
    #about.about-showcase-section{
        padding:90px 20px;
    }

    .about-showcase{
        grid-template-columns:1fr;
        gap:58px;
    }

    .about-visual{
        width:min(100%, 720px);
        margin:0 auto;
    }

    .about-visual-frame{
        min-height:520px;
    }

    .about-story{
        width:min(100%, 720px);
        margin:0 auto;
    }

    .about-story h2,
    .about-lead,
    .about-copy{
        max-width:none;
    }
}

@media(max-width:600px){
    #about.about-showcase-section{
        padding:76px 15px;
    }

    .about-showcase{
        gap:44px;
    }

    .about-visual-frame{
        min-height:390px;
        border-radius:27px;
    }

    .about-visual-pattern{
        top:22px;
        left:22px;
        width:90px;
        height:90px;
    }

    .about-visual-frame > img{
        left:-14%;
        width:128%;
        transform:translateY(-42%);
    }

    .about-route-card{
        top:14px;
        right:14px;
        padding:10px 11px;
    }

    .about-route-card > i{
        width:34px;
        height:34px;
    }

    .about-experience-card{
        left:14px;
        bottom:14px;
        padding:12px 14px;
    }

    .about-experience-card strong{
        font-size:35px;
    }

    .about-kicker{
        font-size:11px;
        letter-spacing:0.11em;
    }

    .about-story h2{
        font-size:clamp(27px, 7.6vw, 32px);
        letter-spacing:-0.04em;
    }

    .about-story h2 .about-title-line{
        white-space:normal;
    }

    .about-lead{
        font-size:16px;
    }

    .about-feature-grid{
        grid-template-columns:1fr;
    }

    .about-metrics > div{
        padding:0 10px;
    }

    .about-metrics strong{
        font-size:18px;
    }

    .about-metrics span{
        font-size:10px;
    }

    .about-actions{
        align-items:flex-start;
        flex-direction:column;
        gap:17px;
    }
}

@media(max-width:400px){
    .about-route-card small{
        display:none;
    }

    .about-route-card strong{
        font-size:11px;
    }

    .about-experience-card{
        max-width:190px;
    }

    .about-experience-card p{
        font-size:11px;
    }
}

@media(max-width:600px){
    .about-story .cta-btn.about-fleet-cta{
        width:100%;
        min-width:0;
        min-height:68px;
        padding-left:23px;
        font-size:16px;
    }
}

@media(prefers-reduced-motion:reduce){
    .about-fleet-car{
        animation:none;
    }
}

/* BOOKING FORM */

.booking-form{
    background:
        radial-gradient(850px 320px at 10% 0%, rgba(254,197,2,0.16), transparent 60%),
        linear-gradient(180deg,#ffffff, #f7f7f7);
    padding:40px 40px 34px;
    border-radius:var(--radius);
    box-shadow:0 20px 70px rgba(0,0,0,0.10);
    border:1px solid rgba(0,0,0,0.08);
    position:relative;
    overflow:hidden;
}

.booking-form::before{
    content:"";
    position:absolute;
    inset:0;
    border-radius:var(--radius);
    pointer-events:none;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.65);
}

.booking-form::after{
    content:"";
    position:absolute;
    left:18px;
    top:18px;
    width:72px;
    height:6px;
    border-radius:999px;
    background:var(--primary);
    box-shadow:0 10px 26px rgba(254,197,2,0.40);
    pointer-events:none;
}

.booking-card::after{
    content:"";
    position:absolute;
    top:28px;
    right:26px;
    width:140px;
    height:130px;
    background:
        radial-gradient(circle at 4px 4px, rgba(17,17,17,0.08) 2px, transparent 2.5px);
    background-size:14px 14px;
    opacity:0.38;
    mask-image:radial-gradient(closest-side, rgba(0,0,0,1), rgba(0,0,0,0));
    pointer-events:none;
}

.booking-form h3{
    font-size:30px;
    margin-bottom:0;
    position:relative;
    z-index:1;
}

.form-group{
    margin-bottom:18px;
    position:relative;
    z-index:1;
}

.form-group label{
    display:block;
    margin-bottom:10px;
    font-weight:600;
    color:rgba(17,17,17,0.88);
    letter-spacing:0.2px;
}

input,
select,
textarea{
    width:100%;
    padding:16px;
    border:1px solid rgba(0,0,0,0.08);
    border-radius:var(--radius-sm);
    background:rgba(255,255,255,0.78);
    transition:0.4s;
    font-size:15px;
}

input:focus,
select:focus,
textarea:focus{
    outline:none;
    background:white;
    border-color:rgba(254,197,2,0.75);
    box-shadow:0 0 0 4px rgba(254,197,2,0.22);
}

.booking-head{
    position:relative;
    z-index:1;
    margin-bottom:10px;
}

.booking-title{
    display:flex;
    align-items:flex-start;
    gap:14px;
}

.booking-title-icon{
    width:40px;
    height:40px;
    border-radius:14px;
    background:rgba(254,197,2,0.22);
    border:1px solid rgba(254,197,2,0.24);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary-dark);
    flex:0 0 auto;
    margin-top:2px;
}

.booking-subtitle{
    margin-top:6px;
    color:var(--gray);
    font-weight:600;
    font-size:14px;
}

.booking-underline{
    width:56px;
    height:4px;
    border-radius:999px;
    background:var(--primary);
    margin:10px 0 18px 54px;
    box-shadow:0 10px 24px rgba(254,197,2,0.35);
}

.booking-grid{
    position:relative;
    z-index:1;
}

.booking-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.field{
    position:relative;
}

.field-icon{
    position:absolute;
    left:14px;
    top:50%;
    transform:translateY(-50%);
    width:32px;
    height:32px;
    border-radius:12px;
    background:rgba(254,197,2,0.18);
    border:1px solid rgba(254,197,2,0.20);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary-dark);
    pointer-events:none;
}

.form-group--icon input,
.form-group--icon select{
    padding-left:54px;
}

.form-submit--wide{
    width:100%;
    justify-content:center;
    gap:12px;
    margin-top:6px;
}

.booking-benefits{
    margin-top:18px;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:12px;
}

.benefit{
    display:flex;
    gap:10px;
    align-items:flex-start;
    padding:12px 12px;
    border-radius:18px;
    background:rgba(255,255,255,0.70);
    border:1px solid rgba(0,0,0,0.05);
}

.benefit i{
    width:34px;
    height:34px;
    border-radius:12px;
    background:rgba(254,197,2,0.20);
    border:1px solid rgba(254,197,2,0.22);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--primary-dark);
    flex:0 0 auto;
}

.benefit strong{
    display:block;
    color:var(--black);
    font-weight:900;
    font-size:12px;
    line-height:1.2;
}

.benefit span{
    display:block;
    margin-top:2px;
    color:var(--gray);
    font-weight:600;
    font-size:11px;
    line-height:1.2;
}

/* SERVICES */

#services{
    background:#fafafa;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:30px;
}

.service-card{
    background:white;
    border-radius:var(--radius);
    overflow:hidden;
    position:relative;
    box-shadow:0 14px 45px rgba(0,0,0,0.10);
    border:1px solid rgba(0,0,0,0.06);
    transition:0.35s ease;
}

.service-card:hover{
    transform:translateY(-10px);
    box-shadow:0 20px 60px rgba(0,0,0,0.14);
    border-color:rgba(0,0,0,0.10);
}

.service-media{
    position:relative;
    height:220px;
    background:linear-gradient(180deg,#ffffff,#fafafa);
    overflow:hidden;
}

.service-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.5s ease;
}

.service-card:hover .service-media img{
    transform:scale(1.06);
}

.service-badge{
    position:absolute;
    left:16px;
    top:16px;
    padding:9px 12px;
    border-radius:999px;
    background:rgba(17,17,17,0.90);
    color:white;
    font-weight:800;
    font-size:12px;
    letter-spacing:0.2px;
}

.service-rate{
    position:absolute;
    right:16px;
    top:16px;
    padding:9px 12px;
    border-radius:999px;
    background:var(--primary);
    color:var(--black);
    font-weight:900;
    font-size:12px;
    letter-spacing:0.2px;
    box-shadow:0 10px 26px rgba(254,197,2,0.35);
}

.service-body{
    padding:22px 22px 24px;
}

.service-body h4{
    font-size:22px;
    margin-bottom:6px;
    color:var(--black);
}

.service-type{
    margin-bottom:14px;
    color:var(--primary-dark);
    font-weight:800;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:0.6px;
}

.service-specs{
    list-style:none;
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-bottom:18px;
    color:var(--dark);
    font-weight:600;
}

.service-specs li{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--gray);
    font-weight:700;
}

.service-specs i{
    width:18px;
    color:var(--primary-dark);
}

.service-actions{
    display:flex;
    gap:14px;
}

.service-btn{
    flex:1 1 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:46px;
    border-radius:999px;
    text-decoration:none;
    font-weight:900;
    letter-spacing:0.2px;
    transition:0.25s ease;
}

.service-btn--primary{
    background:var(--primary);
    color:var(--black);
    box-shadow:0 14px 34px rgba(254,197,2,0.35);
}

.service-btn--primary:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 44px rgba(254,197,2,0.45);
}

.service-btn--ghost{
    background:transparent;
    color:var(--black);
    border:1px solid rgba(17,17,17,0.24);
}

.service-btn--ghost:hover{
    background:rgba(254,197,2,0.12);
    border-color:rgba(254,197,2,0.65);
}

/* INTERACTIVE FLEET SHOWROOM */

#services.fleet-showroom{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:112px 20px 122px;
    background:
        radial-gradient(760px 430px at 94% 4%, rgba(200,35,51,0.09), transparent 65%),
        radial-gradient(620px 360px at 4% 96%, rgba(201,162,76,0.12), transparent 67%),
        #fbf8f2;
}

#services.fleet-showroom::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:-210px;
    right:-170px;
    width:470px;
    height:470px;
    border:1px solid rgba(200,35,51,0.10);
    border-radius:50%;
    box-shadow:
        0 0 0 54px rgba(200,35,51,0.025),
        0 0 0 108px rgba(201,162,76,0.025);
}

.fleet-heading{
    display:grid;
    grid-template-columns:1fr;
    align-items:start;
    gap:16px;
    width:96%;
    margin:0 auto 48px;
}

.fleet-kicker{
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:17px;
    color:var(--brand-red);
    font-size:12px;
    font-weight:900;
    letter-spacing:0.17em;
    text-transform:uppercase;
}

.fleet-kicker span{
    width:36px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.fleet-heading h2{
    max-width:none;
    margin:0;
    color:var(--black);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(24px, 2.4vw, 36px);
    font-weight:800;
    letter-spacing:-0.045em;
    line-height:1.08;
    white-space:nowrap;
}

.fleet-heading h2 span{
    color:var(--brand-red);
}

.fleet-heading-note{
    max-width:720px;
    padding:0;
    border-left:0;
}

.fleet-heading-note > p{
    max-width:510px;
    margin:0;
    color:var(--gray);
    font-size:15px;
    font-weight:600;
    line-height:1.75;
}

.fleet-heading-facts{
    display:flex;
    flex-wrap:wrap;
    gap:10px 24px;
    margin-top:14px;
}

.fleet-heading-facts span{
    color:var(--dark);
    font-size:12px;
    font-weight:800;
}

.fleet-heading-facts strong{
    margin-right:4px;
    color:var(--brand-red);
    font-size:16px;
}

.fleet-stage{
    display:grid;
    grid-template-columns:minmax(0, 1.22fr) minmax(380px, 0.78fr);
    width:96%;
    min-height:525px;
    overflow:hidden;
    margin:0 auto;
    border:1px solid rgba(81,33,40,0.10);
    border-radius:34px;
    background:#fffdfa;
    box-shadow:0 34px 90px rgba(75,34,40,0.14);
}

.fleet-stage-visual{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    overflow:hidden;
    padding:74px 36px 58px;
    background:
        linear-gradient(140deg, rgba(255,255,255,0.96), rgba(245,237,229,0.96)),
        #f7f1eb;
}

.fleet-stage-visual::before{
    content:"";
    position:absolute;
    left:-16%;
    bottom:-46%;
    width:82%;
    aspect-ratio:1;
    border-radius:50%;
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 30px 70px rgba(135,19,31,0.25);
}

.fleet-stage-visual::after{
    content:"";
    position:absolute;
    top:22%;
    right:-90px;
    width:210px;
    height:210px;
    border:1px solid rgba(201,162,76,0.22);
    border-radius:50%;
    box-shadow:0 0 0 26px rgba(201,162,76,0.045);
}

.fleet-stage-topline{
    position:absolute;
    z-index:4;
    top:28px;
    left:32px;
    right:32px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.fleet-stage-count{
    color:rgba(41,28,31,0.52);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:13px;
    font-weight:900;
    letter-spacing:0.16em;
}

.fleet-stage-badge{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    padding:7px 13px;
    border:1px solid rgba(200,35,51,0.14);
    border-radius:999px;
    background:rgba(255,255,255,0.78);
    color:var(--brand-red);
    box-shadow:0 9px 26px rgba(69,27,33,0.08);
    backdrop-filter:blur(8px);
    font-size:11px;
    font-weight:900;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.fleet-stage-wordmark{
    position:absolute;
    z-index:0;
    top:49%;
    left:50%;
    color:rgba(135,19,31,0.045);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(92px, 10vw, 150px);
    font-weight:900;
    letter-spacing:-0.08em;
    line-height:1;
    transform:translate(-50%, -50%);
    user-select:none;
}

.fleet-car-frame{
    position:relative;
    z-index:2;
    width:min(100%, 660px);
    height:350px;
    overflow:hidden;
    border:1px solid rgba(51,28,32,0.09);
    border-radius:34px;
    background:#ffffff;
    box-shadow:0 26px 66px rgba(49,28,31,0.18);
    transform:translateZ(0);
    transition:opacity 0.22s ease, transform 0.35s ease, box-shadow 0.35s ease;
}

.fleet-car-frame::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(125deg, rgba(255,255,255,0.40), transparent 32%, transparent 72%, rgba(200,35,51,0.04));
}

.fleet-stage:hover .fleet-car-frame{
    transform:translateY(-5px);
    box-shadow:0 34px 78px rgba(49,28,31,0.22);
}

.fleet-stage-image{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    opacity:1;
    transform:translateX(0) scale(1);
    transition:opacity 0.18s ease, transform 0.3s ease;
}

.fleet-stage.is-switching .fleet-stage-image{
    opacity:0;
    transform:translateX(-18px) scale(0.975);
}

.fleet-road-line{
    position:absolute;
    z-index:3;
    left:15%;
    right:15%;
    bottom:30px;
    height:3px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(41,28,31,0.12);
}

.fleet-road-line span{
    display:block;
    width:28%;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
    animation:fleetRoadMove 3.4s ease-in-out infinite;
}

@keyframes fleetRoadMove{
    0%, 100%{ transform:translateX(0); }
    50%{ transform:translateX(257%); }
}

.fleet-stage-info{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    overflow:hidden;
    padding:46px 38px;
    color:#ffffff;
    background:
        radial-gradient(390px 230px at 100% 0%, rgba(201,162,76,0.14), transparent 68%),
        linear-gradient(148deg, #2d1016 0%, #18090d 74%);
}

.fleet-stage-info::before{
    content:"";
    position:absolute;
    left:0;
    top:47px;
    width:4px;
    height:72px;
    border-radius:0 999px 999px 0;
    background:linear-gradient(var(--brand-gold-light), var(--brand-gold));
}

.fleet-stage-info::after{
    content:"06";
    position:absolute;
    right:-13px;
    bottom:-34px;
    color:rgba(255,255,255,0.025);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:180px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

.fleet-stage-info > *{
    position:relative;
    z-index:1;
}

.fleet-stage-type{
    margin-bottom:12px;
    color:var(--brand-gold-light);
    font-size:11px;
    font-weight:900;
    letter-spacing:0.16em;
    text-transform:uppercase;
}

.fleet-stage-info h3{
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(31px, 2.7vw, 40px);
    font-weight:800;
    letter-spacing:-0.045em;
    line-height:1.08;
}

.fleet-stage-description{
    max-width:430px;
    margin:14px 0 0;
    color:rgba(255,255,255,0.68);
    font-size:13px;
    font-weight:600;
    line-height:1.7;
}

.fleet-stage-rate{
    display:flex;
    align-items:flex-end;
    gap:7px;
    margin:22px 0 20px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,0.10);
}

.fleet-stage-rate > span{
    align-self:center;
    margin-right:3px;
    color:rgba(255,255,255,0.55);
    font-size:11px;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.fleet-stage-rate strong{
    color:var(--brand-gold-light);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:38px;
    font-weight:900;
    letter-spacing:-0.05em;
    line-height:0.85;
}

.fleet-stage-rate small{
    color:rgba(255,255,255,0.64);
    font-size:12px;
    font-weight:700;
}

.fleet-stage-specs{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:10px;
    margin:0 0 22px;
    padding:0;
    list-style:none;
}

.fleet-stage-specs li{
    min-width:0;
    padding:11px 9px;
    border:1px solid rgba(255,255,255,0.09);
    border-radius:15px;
    background:rgba(255,255,255,0.045);
    text-align:center;
}

.fleet-stage-specs i{
    margin-bottom:7px;
    color:var(--brand-gold-light);
    font-size:15px;
}

.fleet-stage-specs span,
.fleet-stage-specs small,
.fleet-stage-specs strong{
    display:block;
}

.fleet-stage-specs small{
    margin-bottom:2px;
    color:rgba(255,255,255,0.42);
    font-size:9px;
    font-weight:800;
    letter-spacing:0.06em;
    text-transform:uppercase;
}

.fleet-stage-specs strong{
    overflow:hidden;
    color:#ffffff;
    font-size:11px;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.fleet-stage-actions{
    display:flex;
    gap:10px;
}

.fleet-book-btn,
.fleet-call-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    border-radius:999px;
    text-decoration:none;
    transition:transform 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
}

.fleet-book-btn{
    flex:1 1 auto;
    gap:11px;
    padding:0 22px;
    background:linear-gradient(135deg, var(--brand-red), #a71626);
    color:#ffffff;
    box-shadow:0 14px 34px rgba(200,35,51,0.30);
    font-size:13px;
    font-weight:900;
}

.fleet-book-btn i{
    font-size:17px;
}

.fleet-call-btn{
    flex:0 0 46px;
    border:1px solid rgba(234,208,146,0.36);
    color:var(--brand-gold-light);
    background:rgba(255,255,255,0.045);
}

.fleet-book-btn:hover,
.fleet-call-btn:hover{
    transform:translateY(-3px);
}

.fleet-book-btn:hover{
    box-shadow:0 18px 42px rgba(200,35,51,0.42);
}

.fleet-call-btn:hover{
    background:rgba(234,208,146,0.10);
}

.fleet-stage-assurance{
    display:flex;
    align-items:center;
    gap:10px;
    margin-top:15px;
    color:rgba(255,255,255,0.52);
}

.fleet-stage-assurance i{
    color:var(--brand-gold);
    font-size:16px;
}

.fleet-stage-assurance span{
    font-size:10px;
    font-weight:600;
    line-height:1.35;
}

.fleet-stage-assurance strong{
    display:block;
    color:rgba(255,255,255,0.86);
    font-size:11px;
}

.fleet-selector-wrap{
    position:relative;
    z-index:2;
    margin-top:10px;
    padding:20px;
    border:1px solid rgba(66,31,37,0.10);
    border-radius:27px;
    background:rgba(255,255,255,0.82);
    box-shadow:0 18px 46px rgba(69,34,39,0.09);
    backdrop-filter:blur(12px);
}

.fleet-selector-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-bottom:14px;
    padding:0 3px;
}

.fleet-selector-heading strong{
    color:var(--black);
    font-size:13px;
    font-weight:900;
}

.fleet-selector-heading span{
    color:var(--gray);
    font-size:11px;
    font-weight:600;
}

.fleet-selector{
    display:grid;
    grid-template-columns:repeat(6, minmax(0, 1fr));
    gap:8px;
}

.fleet-choice{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    align-items:center;
    gap:10px;
    min-width:0;
    min-height:76px;
    padding:13px 12px;
    overflow:hidden;
    border:1px solid rgba(41,28,31,0.08);
    border-radius:17px;
    background:#f8f4ef;
    color:var(--dark);
    cursor:pointer;
    text-align:left;
    transition:transform 0.28s ease, background-color 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease;
}

.fleet-choice::after{
    content:"";
    position:absolute;
    left:0;
    right:100%;
    bottom:0;
    height:3px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
    transition:right 0.35s ease;
}

.fleet-choice:hover{
    transform:translateY(-3px);
    border-color:rgba(200,35,51,0.16);
    background:#fffdfa;
    box-shadow:0 10px 24px rgba(58,29,34,0.08);
}

.fleet-choice.is-active{
    border-color:#2b0d14;
    background:linear-gradient(145deg, #361019, #1c090e);
    color:#ffffff;
    box-shadow:0 13px 28px rgba(68,17,27,0.19);
}

.fleet-choice.is-active::after{
    right:0;
}

.fleet-choice-number{
    align-self:start;
    padding-top:2px;
    color:var(--brand-red);
    font-size:9px;
    font-weight:900;
    letter-spacing:0.08em;
}

.fleet-choice.is-active .fleet-choice-number{
    color:var(--brand-gold-light);
}

.fleet-choice-copy{
    min-width:0;
}

.fleet-choice-copy strong,
.fleet-choice-copy small{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.fleet-choice-copy strong{
    font-size:12px;
    font-weight:900;
}

.fleet-choice-copy small{
    margin-top:5px;
    color:var(--gray);
    font-size:9px;
    font-weight:700;
}

.fleet-choice.is-active .fleet-choice-copy small{
    color:rgba(255,255,255,0.55);
}

.fleet-choice > i{
    color:rgba(41,28,31,0.26);
    font-size:10px;
    transition:transform 0.25s ease, color 0.25s ease;
}

.fleet-choice:hover > i{
    transform:translateX(2px);
    color:var(--brand-red);
}

.fleet-choice.is-active > i{
    color:var(--brand-gold-light);
    transform:rotate(-45deg);
}

.fleet-choice:focus-visible,
.fleet-book-btn:focus-visible,
.fleet-call-btn:focus-visible{
    outline:3px solid rgba(201,162,76,0.52);
    outline-offset:3px;
}

.fleet-animate .fleet-heading-copy,
.fleet-animate .fleet-heading-note,
.fleet-animate .fleet-stage,
.fleet-animate .fleet-selector-wrap{
    opacity:0;
    transform:translateY(24px);
}

.fleet-animate.is-visible .fleet-heading-copy,
.fleet-animate.is-visible .fleet-heading-note,
.fleet-animate.is-visible .fleet-stage,
.fleet-animate.is-visible .fleet-selector-wrap{
    animation:fleetReveal 0.72s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.fleet-animate.is-visible .fleet-heading-note{
    animation-delay:0.08s;
}

.fleet-animate.is-visible .fleet-stage{
    animation-delay:0.15s;
}

.fleet-animate.is-visible .fleet-selector-wrap{
    animation-delay:0.24s;
}

@keyframes fleetReveal{
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:1100px){
    .fleet-heading{
        gap:16px;
    }

    .fleet-stage{
        grid-template-columns:minmax(0, 1.05fr) minmax(350px, 0.95fr);
    }

    .fleet-stage-visual{
        padding-right:28px;
        padding-left:28px;
    }

    .fleet-stage-info{
        padding:50px 34px;
    }

    .fleet-selector{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }
}

@media(max-width:860px){
    #services.fleet-showroom{
        padding-top:92px;
        padding-bottom:100px;
    }

    .fleet-heading{
        grid-template-columns:1fr;
        gap:16px;
    }

    .fleet-heading-note{
        max-width:680px;
        padding-left:0;
        border-left:0;
    }

    .fleet-stage{
        grid-template-columns:1fr;
    }

    .fleet-stage-visual{
        min-height:520px;
    }

    .fleet-stage-info{
        min-height:auto;
        padding:50px 42px;
    }

    .fleet-stage-description{
        max-width:610px;
    }
}

@media(max-width:600px){
    #services.fleet-showroom{
        padding:76px 15px 84px;
    }

    .fleet-heading{
        margin-bottom:34px;
    }

    .fleet-heading h2{
        font-size:clamp(16px, 5vw, 25px);
    }

    .fleet-heading-note{
        padding-left:0;
    }

    .fleet-heading-facts{
        gap:8px 16px;
    }

    .fleet-stage{
        border-radius:27px;
    }

    .fleet-stage-visual{
        min-height:405px;
        padding:72px 16px 58px;
    }

    .fleet-stage-topline{
        top:21px;
        left:19px;
        right:19px;
    }

    .fleet-stage-badge{
        min-height:30px;
        padding:6px 10px;
        font-size:9px;
    }

    .fleet-stage-wordmark{
        font-size:25vw;
    }

    .fleet-car-frame{
        width:100%;
        height:275px;
        border-radius:23px;
    }

    .fleet-road-line{
        left:18%;
        right:18%;
        bottom:29px;
    }

    .fleet-stage-info{
        padding:42px 22px 36px;
    }

    .fleet-stage-info::before{
        top:44px;
        height:58px;
    }

    .fleet-stage-info h3{
        font-size:32px;
    }

    .fleet-stage-rate{
        align-items:flex-end;
        flex-wrap:wrap;
    }

    .fleet-stage-rate strong{
        font-size:38px;
    }

    .fleet-stage-specs{
        gap:7px;
    }

    .fleet-stage-specs li{
        padding:12px 6px;
    }

    .fleet-book-btn{
        padding:0 16px;
        font-size:12px;
    }

    .fleet-selector-wrap{
        margin-right:-15px;
        padding:17px 0 17px 15px;
        border-radius:23px 0 0 23px;
    }

    .fleet-selector-heading{
        padding-right:15px;
    }

    .fleet-selector{
        display:flex;
        gap:8px;
        overflow-x:auto;
        padding:1px 15px 10px 0;
        scroll-snap-type:x mandatory;
        scrollbar-width:none;
    }

    .fleet-selector::-webkit-scrollbar{
        display:none;
    }

    .fleet-choice{
        flex:0 0 205px;
        scroll-snap-align:start;
    }
}

@media(prefers-reduced-motion:reduce){
    .fleet-road-line span{
        animation:none;
    }

    .fleet-stage-image,
    .fleet-car-frame,
    .fleet-choice,
    .fleet-animate .fleet-heading-copy,
    .fleet-animate .fleet-heading-note,
    .fleet-animate .fleet-stage,
    .fleet-animate .fleet-selector-wrap{
        transition:none;
        animation:none;
        opacity:1;
        transform:none;
    }
}

/* SIMPLE BOOKING JOURNEY */

#ride-process.ride-process{
    position:relative;
    overflow:hidden;
    padding:76px 20px;
    background:
        radial-gradient(520px 260px at 5% 12%, rgba(200,35,51,0.09), transparent 68%),
        radial-gradient(420px 240px at 96% 94%, rgba(255,193,7,0.13), transparent 70%),
        #f2ede7;
}

#ride-process.ride-process::before{
    content:"";
    position:absolute;
    top:-190px;
    right:-150px;
    width:430px;
    height:430px;
    border:70px solid rgba(255,255,255,0.34);
    border-radius:50%;
    pointer-events:none;
}

.ride-process .container{
    position:relative;
    z-index:1;
}

.ride-process-shell{
    display:grid;
    grid-template-columns:minmax(0, 0.94fr) minmax(0, 1.06fr);
    min-height:478px;
    overflow:hidden;
    border:1px solid rgba(95,67,57,0.13);
    border-radius:34px;
    background:rgba(255,252,247,0.92);
    box-shadow:0 28px 80px rgba(53,33,25,0.13);
    transition:border-color 0.4s ease, box-shadow 0.4s ease;
}

.ride-process-shell:hover{
    border-color:rgba(200,35,51,0.22);
    box-shadow:0 32px 90px rgba(53,33,25,0.17);
}

.ride-process-visual{
    position:relative;
    min-height:450px;
    overflow:hidden;
    margin:14px;
    border-radius:25px;
    background:#14272a;
}

.ride-process-visual::before{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    background:
        linear-gradient(180deg, rgba(7,19,22,0.12) 10%, rgba(7,19,22,0.08) 38%, rgba(7,19,22,0.88) 100%),
        linear-gradient(115deg, rgba(200,35,51,0.20), transparent 52%);
    pointer-events:none;
}

.ride-process-visual::after{
    content:"";
    position:absolute;
    z-index:2;
    top:24px;
    right:24px;
    width:54px;
    height:54px;
    border-top:2px solid rgba(255,193,7,0.88);
    border-right:2px solid rgba(255,193,7,0.88);
    border-radius:0 14px 0 0;
    pointer-events:none;
}

.ride-process-visual > img,
.ride-process-visual > video{
    display:block;
    width:100%;
    height:100%;
    min-height:450px;
    object-fit:cover;
    object-position:center;
    filter:saturate(0.88) contrast(1.04);
    transition:transform 0.85s cubic-bezier(0.22, 1, 0.36, 1), filter 0.5s ease;
}

.ride-process-visual > video{
    transform:scale(0.985);
}

.ride-process-shell:hover .ride-process-visual > img,
.ride-process-shell:hover .ride-process-visual > video{
    transform:scale(1);
    filter:saturate(1) contrast(1.05);
}

.ride-process-visual-copy{
    position:absolute;
    z-index:3;
    right:30px;
    bottom:30px;
    left:30px;
    color:#ffffff;
}

.ride-process-visual-copy > span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    margin-bottom:10px;
    color:var(--brand-gold-light);
    font-size:8px;
    font-weight:900;
    letter-spacing:0.13em;
    text-transform:uppercase;
}

.ride-process-visual-copy h3{
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(30px, 3vw, 42px);
    font-weight:800;
    letter-spacing:-0.055em;
    line-height:1.03;
    white-space:nowrap;
}

.ride-availability{
    position:absolute;
    z-index:4;
    top:26px;
    left:26px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 13px;
    border:1px solid rgba(255,255,255,0.25);
    border-radius:14px;
    color:#ffffff;
    background:rgba(11,28,31,0.72);
    box-shadow:0 14px 34px rgba(0,0,0,0.25);
    backdrop-filter:blur(12px);
    animation:rideAvailabilityFloat 4s ease-in-out infinite;
}

.ride-availability > i{
    color:#65d991;
    font-size:7px;
    filter:drop-shadow(0 0 6px rgba(101,217,145,0.8));
}

.ride-availability span,
.ride-availability strong,
.ride-availability small{
    display:block;
}

.ride-availability strong{
    font-size:9px;
    font-weight:900;
    letter-spacing:0.02em;
}

.ride-availability small{
    margin-top:2px;
    color:rgba(255,255,255,0.58);
    font-size:7px;
    font-weight:700;
}

@keyframes rideAvailabilityFloat{
    0%, 100%{ transform:translateY(0); }
    50%{ transform:translateY(-5px); }
}

.ride-process-content{
    position:relative;
    isolation:isolate;
    align-self:center;
    overflow:hidden;
    padding:38px 44px 38px 36px;
}

.ride-process-content::before{
    content:"03";
    position:absolute;
    z-index:-1;
    top:12px;
    right:25px;
    color:rgba(200,35,51,0.035);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:128px;
    font-weight:900;
    letter-spacing:-0.10em;
    line-height:1;
    pointer-events:none;
}

.ride-process-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:13px;
    color:var(--brand-red);
    font-size:8px;
    font-weight:900;
    letter-spacing:0.15em;
    text-transform:uppercase;
}

.ride-process-kicker > span{
    width:28px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.ride-process-kicker > b{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-left:auto;
    padding:7px 9px;
    border:1px solid rgba(200,35,51,0.10);
    border-radius:999px;
    color:#69777a;
    background:rgba(255,255,255,0.68);
    font-size:6.5px;
    font-weight:900;
    letter-spacing:0.08em;
    box-shadow:0 7px 18px rgba(52,30,24,0.05);
}

.ride-process-kicker > b i{
    color:var(--brand-red);
    font-size:8px;
}

.ride-process-content h2{
    max-width:none;
    margin:0;
    color:#172b31;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(20px, 2.25vw, 34px);
    font-weight:800;
    letter-spacing:-0.045em;
    line-height:1.08;
    white-space:nowrap;
}

.ride-process-content h2 em{
    position:relative;
    color:var(--brand-red);
    font-style:normal;
}

.ride-process-content h2 em::after{
    content:"";
    position:absolute;
    z-index:-1;
    right:0;
    bottom:0.02em;
    left:0;
    height:0.13em;
    border-radius:999px;
    background:linear-gradient(90deg, rgba(255,193,7,0.25), rgba(255,193,7,0.72));
    transform:rotate(-1deg);
}

.ride-process-content > p{
    max-width:580px;
    margin:14px 0 0;
    color:#69777a;
    font-size:11px;
    font-weight:600;
    line-height:1.7;
}

.ride-process-promises{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:14px;
}

.ride-process-promises span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 11px;
    border:1px solid rgba(200,35,51,0.08);
    border-radius:999px;
    color:#455b60;
    background:linear-gradient(135deg, #ffffff, #fff9f5);
    font-size:7px;
    font-weight:850;
    box-shadow:0 7px 18px rgba(46,29,23,0.055);
    transition:transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease;
}

.ride-process-promises span:hover{
    transform:translateY(-2px);
    border-color:rgba(200,35,51,0.18);
    box-shadow:0 10px 22px rgba(46,29,23,0.09);
}

.ride-process-promises i{
    color:var(--brand-red);
    font-size:8px;
}

.ride-steps{
    position:relative;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:10px;
    margin:17px 0 20px;
    padding:0;
    list-style:none;
}

.ride-steps::before{
    content:"";
    position:absolute;
    top:30px;
    right:12%;
    left:12%;
    height:1px;
    background:linear-gradient(90deg, rgba(200,35,51,0.22), rgba(255,193,7,0.72), rgba(200,35,51,0.22));
}

.ride-steps li{
    position:relative;
    z-index:1;
    display:flex;
    min-width:0;
    min-height:142px;
    flex-direction:column;
    align-items:flex-start;
    overflow:hidden;
    padding:14px 14px 15px;
    border:1px solid rgba(23,43,49,0.095);
    border-radius:18px;
    background:
        radial-gradient(130px 90px at 0% 0%, rgba(200,35,51,0.075), transparent 78%),
        linear-gradient(145deg, rgba(255,255,255,0.94), rgba(255,250,246,0.82));
    transition:transform 0.32s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
}

.ride-steps li::before{
    content:"";
    position:absolute;
    top:0;
    right:14px;
    left:14px;
    height:3px;
    border-radius:0 0 999px 999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
    transform:scaleX(0.32);
    transform-origin:left;
    transition:transform 0.36s cubic-bezier(0.22, 1, 0.36, 1);
}

.ride-steps li::after{
    display:none;
}

.ride-steps li:hover{
    transform:translateY(-5px);
    border-color:rgba(200,35,51,0.20);
    background:
        radial-gradient(160px 105px at 0% 0%, rgba(200,35,51,0.12), transparent 82%),
        linear-gradient(145deg, #ffffff, #fffaf5);
    box-shadow:0 17px 32px rgba(61,35,27,0.12);
}

.ride-steps li:hover::before{
    transform:scaleX(1);
}

.ride-step-number{
    display:grid;
    width:32px;
    height:32px;
    place-items:center;
    border:1px solid rgba(200,35,51,0.11);
    border-radius:10px;
    color:var(--brand-red);
    background:#fff5f4;
    font-size:8px;
    font-weight:900;
    box-shadow:0 7px 18px rgba(135,19,31,0.07);
    transition:color 0.3s ease, background 0.3s ease, transform 0.3s ease;
}

.ride-steps li > i{
    position:absolute;
    top:14px;
    right:14px;
    display:grid;
    width:32px;
    height:32px;
    place-items:center;
    border-radius:10px;
    color:#8d6a12;
    background:rgba(255,193,7,0.15);
    font-size:12px;
    transition:color 0.3s ease, background 0.3s ease, transform 0.36s cubic-bezier(0.22, 1, 0.36, 1);
}

.ride-steps li > div{
    min-width:0;
    margin-top:auto;
    padding-top:18px;
}

.ride-steps li:hover .ride-step-number{
    color:#ffffff;
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
    transform:rotate(-5deg);
}

.ride-steps li:hover > i{
    color:#172b31;
    background:var(--brand-gold);
    transform:rotate(-5deg) scale(1.10);
}

.ride-steps strong,
.ride-steps small{
    display:block;
}

.ride-steps strong{
    margin-bottom:4px;
    color:#203238;
    font-size:9.5px;
    font-weight:900;
    line-height:1.3;
}

.ride-steps small{
    color:#7b8688;
    font-size:7.2px;
    font-weight:600;
    line-height:1.45;
}

.ride-process-action{
    display:flex;
    align-items:center;
    gap:12px;
}

.ride-process-action > a{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:52px;
    overflow:hidden;
    padding:0 8px 0 20px;
    border-radius:17px;
    color:#ffffff;
    background:linear-gradient(135deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 13px 28px rgba(135,19,31,0.24);
    font-size:10px;
    font-weight:900;
    text-decoration:none;
    transition:transform 0.3s ease, box-shadow 0.3s ease;
}

.ride-process-action > a::before{
    content:"";
    position:absolute;
    top:-40%;
    left:-45%;
    width:30%;
    height:180%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.46), transparent);
    transform:skewX(-18deg);
    transition:left 0.6s ease;
}

.ride-process-action > a:hover{
    transform:translateY(-3px);
    box-shadow:0 17px 34px rgba(135,19,31,0.31);
}

.ride-process-action > a:hover::before{
    left:125%;
}

.ride-process-action > a > i{
    display:grid;
    width:37px;
    height:37px;
    margin-left:5px;
    place-items:center;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:12px;
    background:rgba(255,255,255,0.10);
    font-size:15px;
}

.ride-process-action > span{
    display:flex;
    align-items:center;
    gap:7px;
    padding:9px 11px;
    border:1px solid rgba(23,43,49,0.07);
    border-radius:12px;
    color:#6d797c;
    background:rgba(255,255,255,0.58);
    font-size:7px;
    font-weight:800;
}

.ride-process-action > span i{
    color:var(--brand-gold);
}

@media(max-width:950px){
    .ride-process-shell{
        grid-template-columns:0.92fr 1.08fr;
    }

    .ride-process-content{
        padding:36px 30px 34px 24px;
    }

    .ride-process-content h2{
        font-size:clamp(20px, 2.25vw, 34px);
    }

    .ride-steps{
        grid-template-columns:1fr;
        gap:8px;
    }

    .ride-steps::before{
        display:none;
    }

    .ride-steps li{
        display:grid;
        grid-template-columns:34px 34px minmax(0, 1fr);
        align-items:center;
        gap:10px;
        min-height:62px;
        padding:9px 13px;
    }

    .ride-steps li::before{
        top:11px;
        right:auto;
        bottom:11px;
        left:0;
        width:3px;
        height:auto;
        transform:scaleY(0.35);
        transform-origin:center;
    }

    .ride-steps li:hover{
        transform:translateX(4px);
    }

    .ride-steps li:hover::before{
        transform:scaleY(1);
    }

    .ride-steps li > i{
        position:static;
    }

    .ride-steps li > div{
        margin:0;
        padding:0;
    }
}

@media(max-width:780px){
    #ride-process.ride-process{
        padding:68px 18px;
    }

    .ride-process-shell{
        grid-template-columns:1fr;
    }

    .ride-process-visual{
        min-height:350px;
    }

    .ride-process-visual > img,
    .ride-process-visual > video{
        min-height:350px;
    }

    .ride-process-content{
        padding:34px 32px 38px;
    }
}

@media(max-width:520px){
    #ride-process.ride-process{
        padding:58px 13px;
    }

    .ride-process-shell{
        border-radius:25px;
    }

    .ride-process-visual{
        min-height:285px;
        margin:9px;
        border-radius:19px;
    }

    .ride-process-visual > img,
    .ride-process-visual > video{
        min-height:285px;
    }

    .ride-process-visual-copy{
        right:20px;
        bottom:22px;
        left:20px;
    }

    .ride-process-visual-copy h3{
        font-size:22px;
    }

    .ride-availability{
        top:18px;
        left:18px;
    }

    .ride-process-content{
        padding:27px 18px 30px;
    }

    .ride-process-content h2{
        font-size:clamp(16px, 5vw, 20px);
    }

    .ride-process-content > p{
        font-size:10px;
    }

    .ride-steps{
        margin:21px 0 23px;
    }

    .ride-steps li{
        grid-template-columns:32px 32px minmax(0, 1fr);
        gap:8px;
        padding:9px 34px 9px 10px;
    }

    .ride-step-number{
        width:32px;
        height:32px;
    }

    .ride-steps li > i{
        width:30px;
        height:30px;
        border-radius:10px;
        font-size:11px;
    }

    .ride-steps li::after{
        right:10px;
    }

    .ride-steps strong{
        font-size:9px;
    }

    .ride-steps small{
        font-size:7.5px;
    }

    .ride-process-action{
        align-items:flex-start;
        flex-direction:column;
        gap:11px;
    }

    .ride-process-action > a{
        width:100%;
    }
}

@media(prefers-reduced-motion:reduce){
    .ride-availability{
        animation:none;
    }

    .ride-process-visual > img,
    .ride-process-visual > video,
    .ride-steps li,
    .ride-step-number,
    .ride-steps li > i,
    .ride-process-action > a,
    .ride-process-action > a::before{
        transition:none;
    }
}

/* SERVICES / WHY SEPARATOR */

.checker-separator{
    height:22px;
    width:100%;
    position:relative;
    overflow:hidden;
    background-color:#f7bf00;

    background-repeat:repeat-x;
    background-size:220px 22px;
    border-top:1px solid #111111;
    border-bottom:1px solid #111111;
}

.road-cars{
    position:absolute;
    inset:0;
    pointer-events:none;
}

.road-cars img{
    position:absolute;
    top:1px;
    width:52px;
    height:auto;
    z-index:2;
    filter:drop-shadow(0 1px 2px rgba(0,0,0,0.35));
    animation:roadCarRTL 8s linear infinite;
}

.road-cars img:nth-child(1){
    right:-60px;
}

.road-cars img:nth-child(2){
    right:-260px;
    animation-delay:2.6s;
}

.road-cars img:nth-child(3){
    right:-460px;
    animation-delay:5.2s;
}

@keyframes roadCarRTL{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(calc(-100vw - 560px));
    }
}

/* JOURNEY SERVICE SHOWCASE */

#destinations.journey-services{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(850px 360px at 5% 0%, rgba(200,35,51,0.08), transparent 62%),
        radial-gradient(700px 420px at 100% 100%, rgba(201,162,76,0.13), transparent 65%),
        linear-gradient(180deg, #fffdf9 0%, #f8f4ef 100%);
}

#destinations.journey-services::before{
    content:"";
    position:absolute;
    top:70px;
    right:-105px;
    width:230px;
    height:230px;
    border:1px solid rgba(135,19,31,0.07);
    border-radius:50%;
    box-shadow:0 0 0 36px rgba(135,19,31,0.025), 0 0 0 72px rgba(201,162,76,0.025);
    pointer-events:none;
}

.journey-intro{
    display:grid;
    grid-template-columns:minmax(0, 1.08fr) minmax(360px, 0.92fr);
    gap:80px;
    align-items:end;
    margin-bottom:48px;
    position:relative;
    z-index:1;
}

.journey-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:16px;
    color:var(--brand-red);
    font-size:12px;
    font-weight:800;
    letter-spacing:0.15em;
    text-transform:uppercase;
}

.journey-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:var(--brand-gold);
}

.journey-intro h2{
    max-width:680px;
    margin:0;
    color:var(--black);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(44px, 4.2vw, 60px);
    font-weight:800;
    letter-spacing:-0.052em;
    line-height:1.06;
    text-wrap:balance;
}

.journey-intro h2 span{
    color:var(--brand-red);
}

.journey-intro-copy{
    padding-bottom:5px;
}

.journey-intro-copy > p{
    margin:0;
    color:var(--gray);
    font-size:16px;
    line-height:1.75;
}

.journey-trust-points{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin-top:18px;
}

.journey-trust-points span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border:1px solid rgba(17,17,17,0.08);
    border-radius:999px;
    background:rgba(255,255,255,0.72);
    color:#4e4245;
    font-size:11px;
    font-weight:700;
}

.journey-trust-points i{
    color:var(--brand-red);
}

.journey-bento{
    display:grid;
    grid-template-columns:minmax(0, 1.16fr) minmax(380px, 0.84fr);
    gap:22px;
    align-items:stretch;
}

.journey-feature{
    min-height:600px;
    position:relative;
    overflow:hidden;
    border:1px solid rgba(17,17,17,0.10);
    border-radius:32px;
    background:#21171a;
    box-shadow:0 24px 62px rgba(46,18,24,0.17);
}

.journey-feature > img{
    width:100%;
    height:100%;
    position:absolute;
    inset:0;
    object-fit:cover;
    transition:transform 0.7s ease;
}

.journey-feature:hover > img{
    transform:scale(1.035);
}

.journey-feature-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg, rgba(12,9,10,0.08) 18%, rgba(13,9,10,0.18) 48%, rgba(17,8,11,0.90) 100%),
        linear-gradient(90deg, rgba(20,8,12,0.36), transparent 65%);
}

.journey-feature-content{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding:28px;
    color:#ffffff;
}

.journey-feature-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.journey-number,
.journey-popular{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,0.16);
    backdrop-filter:blur(12px);
}

.journey-number{
    width:46px;
    height:46px;
    border-radius:15px;
    background:rgba(24,10,13,0.68);
    color:var(--brand-gold-light);
    font-family:'Manrope','Inter',sans-serif;
    font-weight:800;
}

.journey-popular{
    gap:7px;
    padding:9px 12px;
    border-radius:999px;
    background:rgba(255,255,255,0.88);
    color:var(--brand-red-dark);
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:0.05em;
}

.journey-popular i{
    color:var(--brand-gold);
}

.journey-category{
    display:block;
    margin-bottom:8px;
    color:var(--brand-gold-light);
    font-size:11px;
    font-weight:800;
    letter-spacing:0.11em;
    text-transform:uppercase;
}

.journey-feature h3{
    max-width:560px;
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Inter',sans-serif;
    font-size:clamp(34px, 3.2vw, 48px);
    font-weight:800;
    letter-spacing:-0.045em;
    line-height:1.08;
}

.journey-feature-content > div:last-child > p{
    max-width:560px;
    margin:12px 0 0;
    color:rgba(255,255,255,0.78);
    font-size:15px;
    line-height:1.65;
}

.journey-feature-bottom{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-top:24px;
}

.journey-feature-price small,
.journey-feature-price strong{
    display:block;
}

.journey-feature-price small{
    margin-bottom:4px;
    color:rgba(255,255,255,0.66);
    font-size:10px;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.journey-feature-price strong{
    color:var(--brand-gold-light);
    font-family:'Manrope','Inter',sans-serif;
    font-size:24px;
    font-weight:800;
}

.journey-actions{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.journey-btn{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:11px 17px;
    border:1px solid transparent;
    border-radius:999px;
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    transition:transform 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}

.journey-btn:hover{
    transform:translateY(-2px);
}

.journey-btn--primary{
    color:#ffffff;
    background:linear-gradient(135deg, #df3343, var(--brand-red-dark));
    box-shadow:0 12px 28px rgba(0,0,0,0.20);
}

.journey-btn--ghost{
    color:#ffffff;
    border-color:rgba(255,255,255,0.26);
    background:rgba(255,255,255,0.10);
    backdrop-filter:blur(10px);
}

.journey-btn--ghost:hover{
    border-color:rgba(255,255,255,0.48);
    background:rgba(255,255,255,0.17);
}

.journey-transfer-stack{
    display:grid;
    grid-template-rows:repeat(2, minmax(0, 1fr));
    gap:22px;
}

.journey-transfer{
    min-height:0;
    display:grid;
    grid-template-columns:minmax(165px, 0.86fr) minmax(0, 1.14fr);
    overflow:hidden;
    border:1px solid rgba(17,17,17,0.09);
    border-radius:27px;
    background:rgba(255,255,255,0.90);
    box-shadow:0 16px 38px rgba(46,18,24,0.08);
    transition:transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.journey-transfer:hover,
.journey-compact:hover{
    transform:translateY(-5px);
    border-color:rgba(200,35,51,0.25);
    box-shadow:0 22px 48px rgba(65,20,28,0.13);
}

.journey-transfer-media,
.journey-compact-media{
    position:relative;
    overflow:hidden;
    background:#eee8e2;
}

.journey-transfer-media img,
.journey-compact-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform 0.55s ease;
}

.journey-transfer:hover img,
.journey-compact:hover img{
    transform:scale(1.045);
}

.journey-transfer-media > span,
.journey-compact-media > span{
    position:absolute;
    top:14px;
    left:14px;
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,0.25);
    border-radius:13px;
    background:rgba(31,12,17,0.78);
    color:var(--brand-gold-light);
    font-size:12px;
    font-weight:800;
    backdrop-filter:blur(10px);
}

.journey-transfer-body{
    min-width:0;
    display:flex;
    flex-direction:column;
    padding:22px 20px;
}

.journey-transfer-body .journey-category,
.journey-compact-body .journey-category{
    color:var(--brand-red);
}

.journey-transfer h3,
.journey-compact h3{
    margin:0;
    color:var(--black);
    font-family:'Manrope','Inter',sans-serif;
    font-weight:800;
    letter-spacing:-0.035em;
    line-height:1.15;
}

.journey-transfer h3{
    font-size:22px;
}

.journey-transfer-body > p,
.journey-compact-body > p{
    margin:9px 0 16px;
    color:var(--gray);
    font-size:12px;
    line-height:1.55;
}

.journey-card-foot{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:auto;
    padding-top:14px;
    border-top:1px solid rgba(17,17,17,0.08);
}

.journey-card-foot > strong{
    color:var(--black);
    font-size:13px;
    font-weight:800;
}

.journey-quick-actions{
    display:flex;
    gap:7px;
}

.journey-quick-actions a,
.journey-arrow{
    width:36px;
    height:36px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border:1px solid rgba(17,17,17,0.09);
    border-radius:50%;
    background:#ffffff;
    color:var(--brand-red);
    text-decoration:none;
    box-shadow:0 7px 18px rgba(17,17,17,0.07);
    transition:transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.journey-quick-actions a:hover,
.journey-arrow:hover{
    transform:translateY(-2px);
    background:var(--brand-red);
    color:#ffffff;
}

.journey-compact-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
    margin-top:22px;
}

.journey-compact{
    overflow:hidden;
    border:1px solid rgba(17,17,17,0.09);
    border-radius:27px;
    background:rgba(255,255,255,0.90);
    box-shadow:0 16px 38px rgba(46,18,24,0.08);
    transition:transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.journey-compact-media{
    height:190px;
}

.journey-compact-body{
    min-height:225px;
    display:flex;
    flex-direction:column;
    padding:22px;
}

.journey-compact h3{
    font-size:23px;
}

@media(max-width:1100px){
    .journey-intro{
        gap:44px;
    }

    .journey-bento{
        grid-template-columns:1fr;
    }

    .journey-feature{
        min-height:570px;
    }

    .journey-transfer-stack{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-template-rows:none;
    }

    .journey-transfer{
        grid-template-columns:1fr;
    }

    .journey-transfer-media{
        height:220px;
    }
}

@media(max-width:768px){
    .journey-intro{
        grid-template-columns:1fr;
        gap:22px;
        margin-bottom:36px;
    }

    .journey-intro h2{
        font-size:clamp(36px, 8vw, 48px);
    }

    .journey-transfer-stack,
    .journey-compact-grid{
        grid-template-columns:1fr;
    }

    .journey-feature{
        min-height:610px;
    }

    .journey-feature-bottom{
        align-items:flex-start;
        flex-direction:column;
    }

    .journey-transfer{
        grid-template-columns:minmax(145px, 0.8fr) minmax(0, 1.2fr);
    }

    .journey-transfer-media{
        height:auto;
    }

    .journey-compact{
        display:grid;
        grid-template-columns:minmax(155px, 0.8fr) minmax(0, 1.2fr);
    }

    .journey-compact-media{
        height:auto;
    }

    .journey-compact-body{
        min-height:250px;
    }
}

@media(max-width:540px){
    #destinations.journey-services{
        padding-left:15px;
        padding-right:15px;
    }

    .journey-intro h2{
        font-size:34px;
    }

    .journey-feature{
        min-height:580px;
        border-radius:25px;
    }

    .journey-feature-content{
        padding:20px;
    }

    .journey-feature h3{
        font-size:34px;
    }

    .journey-actions{
        width:100%;
    }

    .journey-btn{
        flex:1 1 auto;
    }

    .journey-transfer,
    .journey-compact{
        display:block;
        border-radius:23px;
    }

    .journey-transfer-media,
    .journey-compact-media{
        height:205px;
    }

    .journey-transfer-body,
    .journey-compact-body{
        min-height:0;
        padding:20px;
    }
}

/* CLEAN SERVICE DIRECTORY */

#destinations.service-directory{
    position:relative;
    overflow:visible;
    background:
        radial-gradient(800px 420px at 0% 5%, rgba(200,35,51,0.07), transparent 62%),
        linear-gradient(180deg, #fffdf9 0%, #f7f3ef 100%);
}

.service-directory-layout{
    display:grid;
    grid-template-columns:minmax(300px, 0.72fr) minmax(0, 1.28fr);
    gap:76px;
    align-items:start;
}

.service-directory-intro{
    position:sticky;
    top:150px;
}

.service-directory-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
    color:var(--brand-red);
    font-size:12px;
    font-weight:800;
    letter-spacing:0.15em;
    text-transform:uppercase;
}

.service-directory-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:var(--brand-gold);
}

.service-directory-intro h2{
    margin:0;
    color:var(--black);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(44px, 4vw, 58px);
    font-weight:800;
    letter-spacing:-0.052em;
    line-height:1.06;
    text-wrap:balance;
}

.service-directory-intro h2 span{
    color:var(--brand-red);
}

.service-directory-intro > p{
    max-width:420px;
    margin:22px 0 0;
    color:var(--gray);
    font-size:16px;
    line-height:1.75;
}

.service-directory-benefits{
    display:grid;
    gap:10px;
    margin-top:28px;
}

.service-directory-benefits > div{
    display:flex;
    align-items:center;
    gap:12px;
    padding:12px 14px;
    border:1px solid rgba(17,17,17,0.07);
    border-radius:17px;
    background:rgba(255,255,255,0.68);
}

.service-directory-benefits i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:13px;
    color:var(--brand-red);
    background:rgba(200,35,51,0.09);
}

.service-directory-benefits strong,
.service-directory-benefits small{
    display:block;
}

.service-directory-benefits strong{
    margin-bottom:3px;
    color:var(--black);
    font-size:13px;
    font-weight:800;
}

.service-directory-benefits small{
    color:var(--gray);
    font-size:11px;
}

.service-directory-contact-row{
    display:flex;
    align-items:center;
    flex-wrap:nowrap;
    gap:18px;
    margin-top:24px;
}

.service-directory-cta{
    min-height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    flex:0 0 auto;
    margin-top:0;
    padding:5px 6px 5px 18px;
    border:1px solid rgba(255,255,255,0.16);
    border-radius:15px;
    color:#ffffff;
    background:linear-gradient(135deg, #d8283a, #a91325);
    box-shadow:0 10px 24px rgba(135,19,31,0.18);
    text-decoration:none;
    font-size:12px;
    font-weight:800;
    transition:transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.service-directory-cta i{
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border:1px solid rgba(255,255,255,0.10);
    border-radius:11px;
    background:rgba(82,0,13,0.18);
    font-size:14px;
}

.service-directory-cta:hover{
    background:linear-gradient(135deg, #e33244, #981020);
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(135,19,31,0.25);
}

.service-directory-support{
    display:flex;
    align-items:center;
    gap:11px;
    min-width:0;
    margin-top:0;
}

.service-directory-support > span{
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border:1px solid rgba(147,101,31,0.23);
    border-radius:50%;
    color:var(--primary-dark);
    background:rgba(201,162,76,0.12);
}

.service-directory-support small,
.service-directory-support a{
    display:block;
}

.service-directory-support small{
    margin-bottom:3px;
    color:var(--gray);
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:0.06em;
}

.service-directory-support a{
    color:var(--black);
    text-decoration:none;
    font-size:13px;
    font-weight:800;
}

.service-directory-list{
    border-top:1px solid rgba(17,17,17,0.12);
}

.service-row{
    display:grid;
    grid-template-columns:38px 132px minmax(0, 1fr) 136px;
    gap:18px;
    align-items:center;
    position:relative;
    padding:18px 14px;
    border-bottom:1px solid rgba(17,17,17,0.12);
    transition:background 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
}

.service-row::before{
    content:"";
    position:absolute;
    top:18px;
    bottom:18px;
    left:0;
    width:3px;
    border-radius:999px;
    background:linear-gradient(180deg, var(--brand-red), var(--brand-gold));
    transform:scaleY(0);
    transition:transform 0.3s ease;
}

.service-row:hover{
    z-index:1;
    transform:translateX(5px);
    background:rgba(255,255,255,0.86);
    box-shadow:0 16px 36px rgba(70,25,32,0.09);
}

.service-row:hover::before{
    transform:scaleY(1);
}

.service-row-number{
    align-self:start;
    padding-top:7px;
    color:var(--brand-red);
    font-family:'Manrope','Inter',sans-serif;
    font-size:11px;
    font-weight:800;
    letter-spacing:0.08em;
}

.service-row-media{
    width:132px;
    height:96px;
    overflow:hidden;
    border-radius:18px;
    background:#e9e3dd;
}

.service-row-media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform 0.5s ease;
}

.service-row:hover .service-row-media img{
    transform:scale(1.06);
}

.service-row-copy{
    min-width:0;
}

.service-row-copy > span{
    display:block;
    margin-bottom:5px;
    color:var(--brand-red);
    font-size:9px;
    font-weight:800;
    letter-spacing:0.11em;
    text-transform:uppercase;
}

.service-row-copy h3{
    margin:0;
    color:var(--black);
    font-family:'Manrope','Inter',sans-serif;
    font-size:21px;
    font-weight:800;
    letter-spacing:-0.035em;
    line-height:1.16;
}

.service-row-copy p{
    margin:7px 0 0;
    color:var(--gray);
    font-size:12px;
    line-height:1.5;
}

.service-row-end{
    min-width:0;
    text-align:right;
}

.service-row-price small,
.service-row-price strong{
    display:block;
}

.service-row-price small{
    margin-bottom:4px;
    color:var(--gray);
    font-size:9px;
    font-weight:700;
    letter-spacing:0.06em;
    text-transform:uppercase;
}

.service-row-price strong{
    color:var(--black);
    font-family:'Manrope','Inter',sans-serif;
    font-size:14px;
    font-weight:800;
}

.service-row-actions{
    display:flex;
    justify-content:flex-end;
    gap:7px;
    margin-top:12px;
}

.service-row-actions a{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(17,17,17,0.09);
    border-radius:50%;
    color:var(--brand-red);
    background:#ffffff;
    box-shadow:0 6px 16px rgba(17,17,17,0.06);
    text-decoration:none;
    transition:transform 0.25s ease, background 0.25s ease, color 0.25s ease;
}

.service-row-actions a:hover{
    transform:translateY(-2px);
    color:#ffffff;
    background:var(--brand-red);
}

@media(max-width:1100px){
    .service-directory-layout{
        grid-template-columns:minmax(260px, 0.68fr) minmax(0, 1.32fr);
        gap:42px;
    }

    .service-directory-intro h2{
        font-size:44px;
    }

    .service-row{
        grid-template-columns:30px 105px minmax(0, 1fr) 122px;
        gap:14px;
        padding-left:10px;
        padding-right:10px;
    }

    .service-row-media{
        width:105px;
        height:88px;
    }

    .service-row-copy h3{
        font-size:18px;
    }

}

@media(max-width:900px){
    .service-directory-layout{
        grid-template-columns:1fr;
        gap:52px;
    }

    .service-directory-intro{
        position:static;
    }

    .service-directory-intro > p{
        max-width:700px;
    }

    .service-directory-benefits{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        max-width:700px;
    }

    .service-directory-contact-row{
        align-items:center;
        flex-direction:row;
        gap:18px;
    }

    .service-row{
        grid-template-columns:38px 126px minmax(0, 1fr) 132px;
        gap:18px;
    }

    .service-row-media{
        width:126px;
        height:94px;
    }
}

@media(max-width:700px){
    .service-row{
        grid-template-columns:108px minmax(0, 1fr);
        gap:15px;
        padding:18px 10px;
    }

    .service-row-number{
        position:absolute;
        top:27px;
        left:19px;
        z-index:2;
        width:32px;
        height:32px;
        display:flex;
        align-items:center;
        justify-content:center;
        padding:0;
        border-radius:11px;
        color:var(--brand-gold-light);
        background:rgba(37,11,17,0.78);
        backdrop-filter:blur(8px);
    }

    .service-row-media{
        width:108px;
        height:92px;
        grid-row:span 2;
    }

    .service-row-end{
        grid-column:2;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:14px;
        text-align:left;
    }

    .service-row-actions{
        margin-top:0;
    }
}

@media(max-width:520px){
    .service-directory-intro h2{
        font-size:38px;
    }

    .service-directory-benefits{
        grid-template-columns:1fr;
    }

    .service-directory-cta{
        width:100%;
    }

    .service-directory-contact-row{
        align-items:stretch;
        flex-direction:column;
        gap:15px;
    }

    .service-row{
        display:block;
        padding:18px 0 22px;
    }

    .service-row:hover{
        transform:none;
        padding-left:8px;
        padding-right:8px;
    }

    .service-row::before{
        display:none;
    }

    .service-row-number{
        top:30px;
        left:12px;
    }

    .service-row-media{
        width:100%;
        height:190px;
        margin-bottom:17px;
        border-radius:21px;
    }

    .service-row-copy h3{
        font-size:21px;
    }

    .service-row-end{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:16px;
        margin-top:16px;
        padding-top:14px;
        border-top:1px solid rgba(17,17,17,0.08);
    }
}

/* MARQUEE STRIP */

.marquee-strip{
    background:var(--primary);
    border-top:1px solid rgba(17,17,17,0.18);
    border-bottom:1px solid rgba(17,17,17,0.18);
    overflow:hidden;
    padding:12px 0;
}

.marquee-track{
    display:flex;
    gap:38px;
    white-space:nowrap;
    width:max-content;
    animation:marqueeRun 28s linear infinite;
    color:var(--black);
    font-weight:800;
    letter-spacing:0.2px;
}

.marquee-track span::after{
    content:"\2022";
    margin-left:38px;
    opacity:0.7;
}

.marquee-track span::before{
    content:"\f1b9";
    font-family:"Font Awesome 6 Free";
    font-weight:900;
    margin-right:10px;
}

@keyframes marqueeRun{
    from{ transform:translateX(0); }
    to{ transform:translateX(-50%); }
}

/* WHY CHOOSE */

#why-choose{
    background:
        radial-gradient(900px 320px at 85% 0%, rgba(17,17,17,0.05), transparent 60%),
        linear-gradient(180deg, #f1f3f6 0%, #eceff3 100%);
}

.why-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:30px;
}

.why-card{
    background:white;
    padding:40px 25px;
    text-align:center;
    border-radius:var(--radius);
    transition:0.5s;
    box-shadow:0 10px 30px rgba(0,0,0,0.06);
}

.why-card:hover{
    transform:translateY(-12px);
    background:var(--primary);
}

.why-card:hover p,
.why-card:hover h4,
.why-card:hover .why-icon{
    color:black;
}

.why-icon{
    font-size:55px;
    color:var(--primary);
    margin-bottom:20px;
    transition:0.4s;
}

.why-card h4{
    font-size:24px;
    margin-bottom:15px;
}

.why-card p{
    color:var(--gray);
    line-height:1.7;
}

/* WHY LAYVA / TRUST STORY */

#why-choose.trust-story{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:118px 20px 126px;
    background:
        radial-gradient(850px 460px at 4% 8%, rgba(255,255,255,0.88), transparent 65%),
        radial-gradient(700px 400px at 96% 94%, rgba(200,35,51,0.07), transparent 67%),
        linear-gradient(145deg, #edf3f4 0%, #dfeaec 100%);
}

#why-choose.trust-story::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:-120px;
    bottom:-150px;
    width:340px;
    height:340px;
    border:1px solid rgba(26,67,76,0.10);
    border-radius:50%;
    box-shadow:
        0 0 0 38px rgba(26,67,76,0.025),
        0 0 0 76px rgba(200,35,51,0.018);
}

.trust-story-layout{
    display:grid;
    grid-template-columns:minmax(360px, 0.86fr) minmax(0, 1.14fr);
    align-items:center;
    gap:78px;
}

.trust-visual{
    position:relative;
    min-height:740px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.72);
    border-radius:42px;
    background:#23343a;
    box-shadow:0 32px 82px rgba(32,61,68,0.22);
}

.trust-visual > img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 48%;
    transform:scale(1.015);
    transition:transform 1s cubic-bezier(0.22, 1, 0.36, 1), filter 0.6s ease;
}

.trust-visual:hover > img{
    transform:scale(1.065);
    filter:saturate(1.05) contrast(1.03);
}

.trust-visual-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg, rgba(9,24,29,0.32) 0%, transparent 34%, rgba(7,21,26,0.18) 55%, rgba(6,18,23,0.86) 100%),
        linear-gradient(90deg, rgba(7,21,26,0.22), transparent 58%);
    pointer-events:none;
}

.trust-visual-top{
    position:absolute;
    z-index:2;
    top:30px;
    left:30px;
    right:30px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:22px;
    color:#ffffff;
}

.trust-visual-top > span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:7px 12px;
    border:1px solid rgba(255,255,255,0.22);
    border-radius:999px;
    background:rgba(8,25,30,0.30);
    backdrop-filter:blur(10px);
    font-size:10px;
    font-weight:900;
    letter-spacing:0.09em;
    text-transform:uppercase;
}

.trust-visual-top > span i{
    color:var(--brand-gold-light);
}

.trust-visual-top > strong{
    max-width:210px;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:20px;
    font-weight:800;
    letter-spacing:-0.035em;
    line-height:1.2;
    text-align:right;
    text-shadow:0 4px 18px rgba(0,0,0,0.28);
}

.trust-visual-route{
    position:absolute;
    z-index:2;
    left:28px;
    right:28px;
    bottom:178px;
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    gap:11px;
    color:var(--brand-gold-light);
}

.trust-visual-route span{
    position:relative;
    height:1px;
    overflow:hidden;
    background:rgba(255,255,255,0.20);
}

.trust-visual-route span::after{
    content:"";
    position:absolute;
    top:0;
    left:-40%;
    width:40%;
    height:100%;
    background:linear-gradient(90deg, transparent, var(--brand-gold-light));
    animation:trustRouteLine 3.1s linear infinite;
}

.trust-visual-route span:last-child::after{
    animation-delay:1.55s;
}

.trust-visual-route i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(234,208,146,0.42);
    border-radius:50%;
    background:rgba(13,35,41,0.68);
    box-shadow:0 8px 20px rgba(0,0,0,0.18);
    font-size:14px;
}

@keyframes trustRouteLine{
    to{ left:110%; }
}

.trust-visual-card{
    position:absolute;
    z-index:2;
    left:24px;
    right:24px;
    bottom:24px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.16);
    border-radius:24px;
    background:rgba(8,25,30,0.76);
    box-shadow:0 18px 42px rgba(0,0,0,0.22);
    backdrop-filter:blur(15px);
}

.trust-visual-card > div{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:12px;
    min-width:0;
    padding:18px 20px;
}

.trust-visual-card > div + div{
    border-left:1px solid rgba(255,255,255,0.12);
}

.trust-visual-card strong{
    color:var(--brand-gold-light);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:30px;
    font-weight:900;
    letter-spacing:-0.05em;
}

.trust-visual-card span{
    color:rgba(255,255,255,0.75);
    font-size:10px;
    font-weight:700;
    line-height:1.35;
}

.trust-verified-badge{
    position:absolute;
    z-index:3;
    right:-1px;
    top:38%;
    display:flex;
    align-items:center;
    gap:10px;
    min-width:142px;
    padding:12px 14px;
    border-radius:18px 0 0 18px;
    background:#ffffff;
    color:#17333a;
    box-shadow:0 16px 38px rgba(10,31,37,0.20);
    animation:trustBadgeFloat 3.2s ease-in-out infinite;
}

.trust-verified-badge i{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:13px;
    color:#ffffff;
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
}

.trust-verified-badge span,
.trust-verified-badge small{
    display:block;
}

.trust-verified-badge span{
    font-size:12px;
    font-weight:900;
}

.trust-verified-badge small{
    margin-bottom:2px;
    color:#6d8186;
    font-size:9px;
    font-weight:800;
    letter-spacing:0.07em;
    text-transform:uppercase;
}

@keyframes trustBadgeFloat{
    0%, 100%{ transform:translateY(0); }
    50%{ transform:translateY(-7px); }
}

.trust-content{
    min-width:0;
}

.trust-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:17px;
    color:var(--brand-red);
    font-size:11px;
    font-weight:900;
    letter-spacing:0.17em;
    text-transform:uppercase;
}

.trust-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.trust-content > h2{
    max-width:none;
    margin:0;
    color:#152b31;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(32px, 2.7vw, 40px);
    font-weight:800;
    letter-spacing:-0.05em;
    line-height:1.07;
    white-space:nowrap;
}

.trust-content > h2 span{
    color:var(--brand-red);
}

.trust-intro{
    max-width:650px;
    margin:22px 0 0;
    color:#5f7378;
    font-size:15px;
    font-weight:600;
    line-height:1.75;
}

.trust-points{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:0 28px;
    margin-top:34px;
    border-bottom:1px solid rgba(21,43,49,0.13);
}

.trust-point{
    position:relative;
    display:grid;
    grid-template-columns:48px minmax(0, 1fr);
    gap:14px;
    min-width:0;
    padding:22px 28px 22px 0;
    border-top:1px solid rgba(21,43,49,0.13);
    transition:transform 0.3s ease, border-color 0.3s ease;
}

.trust-point::after{
    content:"";
    position:absolute;
    left:0;
    top:-1px;
    width:0;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
    transition:width 0.4s ease;
}

.trust-point:hover{
    transform:translateX(6px);
    border-top-color:transparent;
}

.trust-point:hover::after{
    width:100%;
}

.trust-point-number{
    position:absolute;
    top:25px;
    right:5px;
    color:rgba(21,43,49,0.23);
    font-size:9px;
    font-weight:900;
    letter-spacing:0.08em;
}

.trust-point-icon{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(21,43,49,0.10);
    border-radius:16px;
    color:var(--brand-red);
    background:rgba(255,255,255,0.62);
    box-shadow:0 8px 22px rgba(33,68,76,0.07);
    transition:transform 0.3s ease, color 0.3s ease, background 0.3s ease;
}

.trust-point:hover .trust-point-icon{
    color:#ffffff;
    background:#17333a;
    transform:rotate(-5deg) scale(1.05);
}

.trust-point h3{
    margin:1px 0 7px;
    padding-right:18px;
    color:#152b31;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:16px;
    font-weight:800;
    letter-spacing:-0.025em;
    line-height:1.25;
}

.trust-point p{
    margin:0;
    color:#667a7f;
    font-size:11px;
    font-weight:600;
    line-height:1.55;
}

.trust-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-top:30px;
}

.trust-actions > a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:50px;
    padding:12px 22px;
    border-radius:999px;
    color:#ffffff;
    background:linear-gradient(135deg, #df3343, var(--brand-red-dark));
    box-shadow:0 14px 32px rgba(135,19,31,0.20);
    text-decoration:none;
    font-size:13px;
    font-weight:900;
    transition:transform 0.25s ease, box-shadow 0.25s ease;
}

.trust-actions > a:hover{
    transform:translateY(-3px);
    box-shadow:0 19px 40px rgba(135,19,31,0.29);
}

.trust-actions > span{
    display:flex;
    align-items:center;
    gap:8px;
    max-width:245px;
    color:#496168;
    font-size:10px;
    font-weight:800;
    line-height:1.4;
}

.trust-actions > span i{
    color:var(--brand-gold);
}

.trust-animate .trust-visual,
.trust-animate .trust-kicker,
.trust-animate .trust-content > h2,
.trust-animate .trust-intro,
.trust-animate .trust-point,
.trust-animate .trust-actions{
    opacity:0;
    transform:translateY(24px);
}

.trust-animate.is-visible .trust-visual,
.trust-animate.is-visible .trust-kicker,
.trust-animate.is-visible .trust-content > h2,
.trust-animate.is-visible .trust-intro,
.trust-animate.is-visible .trust-point,
.trust-animate.is-visible .trust-actions{
    animation:trustReveal 0.72s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.trust-animate.is-visible .trust-kicker{ animation-delay:0.06s; }
.trust-animate.is-visible .trust-content > h2{ animation-delay:0.11s; }
.trust-animate.is-visible .trust-intro{ animation-delay:0.16s; }
.trust-animate.is-visible .trust-point:nth-child(1){ animation-delay:0.20s; }
.trust-animate.is-visible .trust-point:nth-child(2){ animation-delay:0.24s; }
.trust-animate.is-visible .trust-point:nth-child(3){ animation-delay:0.28s; }
.trust-animate.is-visible .trust-point:nth-child(4){ animation-delay:0.32s; }
.trust-animate.is-visible .trust-point:nth-child(5){ animation-delay:0.36s; }
.trust-animate.is-visible .trust-point:nth-child(6){ animation-delay:0.40s; }
.trust-animate.is-visible .trust-actions{ animation-delay:0.44s; }

@keyframes trustReveal{
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:1120px){
    .trust-story-layout{
        grid-template-columns:minmax(330px, 0.78fr) minmax(0, 1.22fr);
        gap:48px;
    }

    .trust-visual{
        min-height:710px;
    }

    .trust-points{
        grid-template-columns:1fr;
    }
}

@media(max-width:900px){
    #why-choose.trust-story{
        padding-top:96px;
        padding-bottom:104px;
    }

    .trust-story-layout{
        grid-template-columns:1fr;
        gap:58px;
    }

    .trust-visual{
        width:min(100%, 720px);
        min-height:610px;
        margin:0 auto;
    }

    .trust-content{
        width:min(100%, 720px);
        margin:0 auto;
    }

    .trust-points{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media(max-width:600px){
    #why-choose.trust-story{
        padding:76px 15px 84px;
    }

    .trust-story-layout{
        gap:46px;
    }

    .trust-visual{
        min-height:530px;
        border-radius:29px;
    }

    .trust-visual-top{
        top:21px;
        left:20px;
        right:20px;
    }

    .trust-visual-top > strong{
        max-width:150px;
        font-size:16px;
    }

    .trust-verified-badge{
        top:35%;
        min-width:126px;
        padding:10px 11px;
    }

    .trust-verified-badge i{
        width:34px;
        height:34px;
    }

    .trust-visual-route{
        left:20px;
        right:20px;
        bottom:160px;
    }

    .trust-visual-card{
        left:15px;
        right:15px;
        bottom:15px;
        border-radius:20px;
    }

    .trust-visual-card > div{
        display:block;
        padding:15px 14px;
    }

    .trust-visual-card strong,
    .trust-visual-card span{
        display:block;
    }

    .trust-visual-card strong{
        margin-bottom:4px;
        font-size:27px;
    }

    .trust-content > h2{
        font-size:clamp(30px, 9vw, 36px);
        white-space:normal;
    }

    .trust-intro{
        font-size:14px;
    }

    .trust-points{
        grid-template-columns:1fr;
        margin-top:28px;
    }

    .trust-point{
        padding-right:6px;
    }

    .trust-actions{
        align-items:flex-start;
        flex-direction:column;
    }

    .trust-actions > a{
        width:100%;
    }
}

@media(prefers-reduced-motion:reduce){
    .trust-visual-route span::after,
    .trust-verified-badge{
        animation:none;
    }

    .trust-visual > img,
    .trust-point,
    .trust-point-icon,
    .trust-animate .trust-visual,
    .trust-animate .trust-kicker,
    .trust-animate .trust-content > h2,
    .trust-animate .trust-intro,
    .trust-animate .trust-point,
    .trust-animate .trust-actions{
        transition:none;
        animation:none;
        opacity:1;
        transform:none;
    }
}

/* TESTIMONIALS */

#testimonials{
    background:linear-gradient(135deg,#111,#222);
}

#testimonials .section-title{
    color:white;
}

.testimonials-carousel{
    position:relative;
    margin-top:10px;
    overflow:hidden;
    padding:0 60px;
}

.testimonials-container{
    display:flex;
    gap:22px;
    overflow-x:auto;
    padding:12px 0;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    -webkit-overflow-scrolling:touch;
}

.testimonials-container::-webkit-scrollbar{
    height:10px;
}

.testimonials-container::-webkit-scrollbar-thumb{
    background:rgba(254,197,2,0.75);
    border-radius:999px;
}

.t-nav{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:52px;
    height:52px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.14);
    background:rgba(255,255,255,0.08);
    backdrop-filter:blur(10px);
    color:white;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:0.25s ease;
    z-index:3;
}

.t-nav:hover{
    background:var(--primary);
    color:var(--black);
    border-color:rgba(0,0,0,0.15);
    transform:translateY(-50%) scale(1.06);
}

.t-nav:disabled{
    opacity:0.35;
    cursor:not-allowed;
}

.t-nav--prev{
    left:10px;
}

.t-nav--next{
    right:10px;
}

.testimonial-card{
    background:rgba(255,255,255,0.07);
    backdrop-filter:blur(12px);
    border:1px solid rgba(255,255,255,0.08);
    padding:35px;
    border-radius:var(--radius);
    color:white;
    transition:0.5s;
    flex:0 0 calc((100% - 44px) / 3);
    min-width:280px;
    scroll-snap-align:start;
}

.testimonial-card:hover{
    transform:translateY(-10px);
    border-color:var(--primary);
}

.stars{
    color:var(--primary);
    font-size:22px;
    margin-bottom:20px;
}

.testimonial-text{
    line-height:1.9;
    color:#ddd;
    margin-bottom:20px;
}

.testimonial-author{
    font-weight:700;
    color:var(--primary);
}

/* CUSTOMER REVIEW LOUNGE */

#testimonials.review-showcase{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    padding:116px 20px 124px;
    background:
        radial-gradient(780px 430px at 3% 4%, rgba(200,35,51,0.19), transparent 66%),
        radial-gradient(670px 410px at 96% 96%, rgba(201,162,76,0.12), transparent 68%),
        linear-gradient(145deg, #071a1f 0%, #102c32 58%, #0b2025 100%);
}

#testimonials.review-showcase::before{
    content:"\201C";
    position:absolute;
    z-index:-1;
    top:-115px;
    right:4%;
    color:rgba(255,255,255,0.025);
    font-family:Georgia,serif;
    font-size:430px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

#testimonials.review-showcase::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:-150px;
    bottom:-180px;
    width:390px;
    height:390px;
    border:1px solid rgba(255,193,7,0.13);
    border-radius:50%;
    box-shadow:0 0 0 44px rgba(255,193,7,0.035), 0 0 0 88px rgba(200,35,51,0.018);
}

.review-showcase-heading{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(300px, 0.62fr);
    align-items:end;
    gap:70px;
    margin-bottom:46px;
}

.review-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:16px;
    color:var(--brand-gold-light);
    font-size:11px;
    font-weight:900;
    letter-spacing:0.17em;
    text-shadow:0 0 14px rgba(255,193,7,0.16);
    text-transform:uppercase;
}

.review-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold-light));
}

.review-showcase-heading h2{
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(40px, 4.1vw, 58px);
    font-weight:800;
    letter-spacing:-0.052em;
    line-height:1.05;
}

.review-showcase-heading h2 span{
    color:var(--brand-gold-light);
    text-shadow:0 0 24px rgba(255,193,7,0.12);
}

.review-showcase-heading > p{
    max-width:480px;
    margin:0 0 4px;
    padding-left:25px;
    border-left:1px solid rgba(255,255,255,0.18);
    color:rgba(255,255,255,0.63);
    font-size:14px;
    font-weight:600;
    line-height:1.75;
}

.review-showcase-grid{
    display:grid;
    grid-template-columns:minmax(310px, 0.68fr) minmax(0, 1.32fr);
    gap:24px;
    align-items:stretch;
}

.review-score-panel,
.review-stage-panel{
    position:relative;
    min-height:570px;
    overflow:hidden;
    border-radius:38px;
}

.review-score-panel{
    padding:40px 38px;
    border:1px solid rgba(255,255,255,0.13);
    color:#ffffff;
    background:
        radial-gradient(420px 250px at 0% 0%, rgba(200,35,51,0.22), transparent 66%),
        rgba(255,255,255,0.055);
    box-shadow:0 28px 72px rgba(0,0,0,0.22);
    backdrop-filter:blur(12px);
    transition:transform 0.4s ease, border-color 0.4s ease, background 0.4s ease;
}

.review-score-panel:hover{
    transform:translateY(-5px);
    border-color:rgba(255,193,7,0.34);
    background:
        radial-gradient(420px 250px at 0% 0%, rgba(200,35,51,0.28), transparent 66%),
        rgba(255,255,255,0.075);
}

.review-score-brand{
    position:relative;
    z-index:2;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
}

.review-google-word{
    display:flex;
    font-family:Arial,sans-serif;
    font-size:28px;
    font-weight:700;
    letter-spacing:-0.08em;
}

.g-blue{color:#4285f4;}
.g-red{color:#ea4335;}
.g-yellow{color:#fbbc05;}
.g-green{color:#34a853;}

.review-score-brand small{
    padding-bottom:4px;
    color:rgba(255,255,255,0.48);
    font-size:9px;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.review-score-value{
    position:relative;
    z-index:2;
    display:flex;
    align-items:flex-end;
    gap:9px;
    margin-top:36px;
}

.review-score-value strong{
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:90px;
    font-weight:900;
    letter-spacing:-0.075em;
    line-height:0.82;
}

.review-score-value span{
    color:rgba(255,255,255,0.48);
    font-size:15px;
    font-weight:800;
}

.review-score-stars{
    position:relative;
    z-index:2;
    display:flex;
    gap:6px;
    margin-top:25px;
    color:var(--brand-gold-light);
    font-size:16px;
}

.review-score-panel > p{
    position:relative;
    z-index:2;
    max-width:250px;
    margin:12px 0 0;
    color:rgba(255,255,255,0.58);
    font-size:11px;
    font-weight:600;
    line-height:1.55;
}

.review-rating-bars{
    position:relative;
    z-index:2;
    display:grid;
    gap:12px;
    margin-top:31px;
    padding:24px 0;
    border-top:1px solid rgba(255,255,255,0.10);
    border-bottom:1px solid rgba(255,255,255,0.10);
}

.review-rating-bars > div{
    display:grid;
    grid-template-columns:42px minmax(0, 1fr) 28px;
    align-items:center;
    gap:10px;
}

.review-rating-bars span,
.review-rating-bars strong{
    color:rgba(255,255,255,0.55);
    font-size:9px;
    font-style:normal;
    font-weight:800;
}

.review-rating-bars strong{
    text-align:right;
}

.review-rating-bars i{
    display:block;
    height:5px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,0.10);
}

.review-rating-bars b{
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold-light));
    transform-origin:left;
}

.review-score-footer{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}

.review-score-footer span{
    color:rgba(255,255,255,0.55);
    font-size:9px;
    font-weight:700;
    line-height:1.4;
}

.review-score-footer strong{
    display:block;
    margin-bottom:2px;
    color:#ffffff;
    font-size:16px;
    font-weight:900;
}

.review-score-panel > img{
    position:absolute;
    z-index:1;
    right:-52px;
    bottom:-5px;
    width:280px;
    max-width:none;
    opacity:0.12;
    filter:grayscale(1) brightness(1.55);
    animation:reviewCarDrift 5s ease-in-out infinite;
    pointer-events:none;
}

.review-score-panel:hover > img{
    opacity:0.19;
}

@keyframes reviewCarDrift{
    0%, 100%{ transform:translateX(0); }
    50%{ transform:translateX(-12px); }
}

.review-stage-panel{
    display:flex;
    flex-direction:column;
    padding:40px 44px 20px;
    border:1px solid rgba(255,255,255,0.68);
    color:#172b31;
    background:
        radial-gradient(500px 300px at 100% 0%, rgba(200,35,51,0.07), transparent 68%),
        #fbf9f4;
    box-shadow:0 30px 80px rgba(0,0,0,0.26);
    transition:transform 0.4s ease, box-shadow 0.4s ease;
}

.review-stage-panel:hover{
    transform:translateY(-5px);
    box-shadow:0 38px 94px rgba(0,0,0,0.31);
}

.review-stage-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding-bottom:22px;
    border-bottom:1px solid rgba(23,43,49,0.10);
}

.review-stage-top > span:first-child{
    color:#79878a;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:10px;
    font-weight:900;
    letter-spacing:0.14em;
}

.review-stage-top > span:last-child{
    display:flex;
    align-items:center;
    gap:7px;
    color:#527077;
    font-size:9px;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.review-stage-top i{
    color:var(--brand-red);
}

.review-stage{
    display:grid;
    flex:1 1 auto;
    align-items:center;
    min-height:390px;
}

.review-card{
    position:relative;
    grid-area:1 / 1;
    padding:46px 12px 38px;
    opacity:0;
    pointer-events:none;
    transform:translateX(28px) scale(0.985);
    transition:opacity 0.42s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.review-card.is-active{
    opacity:1;
    pointer-events:auto;
    transform:translateX(0) scale(1);
}

.review-quote-mark{
    position:absolute;
    top:12px;
    right:7px;
    color:rgba(200,35,51,0.08);
    font-family:Georgia,serif;
    font-size:128px;
    font-weight:900;
    line-height:1;
    pointer-events:none;
}

.review-card-stars{
    position:relative;
    z-index:1;
    display:flex;
    gap:5px;
    color:var(--brand-gold);
    font-size:13px;
}

.review-card blockquote{
    position:relative;
    z-index:1;
    max-width:760px;
    margin:24px 0 34px;
    color:#172b31;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(25px, 2.5vw, 36px);
    font-weight:700;
    letter-spacing:-0.038em;
    line-height:1.42;
}

.review-person{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    gap:13px;
}

.review-person > span{
    width:48px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    border-radius:16px;
    color:#ffffff;
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 9px 24px rgba(135,19,31,0.20);
    font-size:11px;
    font-weight:900;
    letter-spacing:0.05em;
}

.review-person strong,
.review-person small{
    display:block;
}

.review-person strong{
    margin-bottom:3px;
    color:#172b31;
    font-size:13px;
    font-weight:900;
}

.review-person small{
    color:#718489;
    font-size:10px;
    font-weight:700;
}

.review-stage-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    min-height:64px;
    border-top:1px solid rgba(23,43,49,0.10);
}

.review-navigation{
    display:flex;
    gap:8px;
}

.review-navigation button{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(23,43,49,0.12);
    border-radius:50%;
    color:#17333a;
    background:#ffffff;
    cursor:pointer;
    transition:transform 0.25s ease, color 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}

.review-navigation button:hover{
    transform:translateY(-3px);
    color:#ffffff;
    border-color:var(--brand-red);
    background:var(--brand-red);
}

.review-dots{
    display:flex;
    align-items:center;
    gap:6px;
}

.review-dot{
    width:7px;
    height:7px;
    padding:0;
    border:0;
    border-radius:999px;
    background:rgba(23,43,49,0.18);
    cursor:pointer;
    transition:width 0.3s ease, background 0.3s ease;
}

.review-dot.is-active{
    width:26px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.review-auto-progress{
    height:3px;
    margin:0 -44px;
    overflow:hidden;
    background:rgba(23,43,49,0.07);
}

.review-auto-progress span{
    display:block;
    width:0;
    height:100%;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold-light));
}

.review-auto-progress.is-running span{
    animation:reviewAutoProgress 6s linear forwards;
}

@keyframes reviewAutoProgress{
    to{ width:100%; }
}

.review-animate .review-showcase-heading > *,
.review-animate .review-score-panel,
.review-animate .review-stage-panel{
    opacity:0;
    transform:translateY(26px);
}

.review-animate.is-visible .review-showcase-heading > *,
.review-animate.is-visible .review-score-panel,
.review-animate.is-visible .review-stage-panel{
    animation:reviewReveal 0.74s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.review-animate.is-visible .review-showcase-heading > p{ animation-delay:0.07s; }
.review-animate.is-visible .review-score-panel{ animation-delay:0.14s; }
.review-animate.is-visible .review-stage-panel{ animation-delay:0.22s; }

@keyframes reviewReveal{
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:980px){
    .review-showcase-heading{
        grid-template-columns:1fr;
        gap:22px;
    }

    .review-showcase-heading > p{
        max-width:700px;
    }

    .review-showcase-grid{
        grid-template-columns:1fr;
    }

    .review-score-panel{
        min-height:440px;
    }

    .review-score-panel > img{
        width:340px;
        right:5%;
    }

    .review-stage-panel{
        min-height:540px;
    }
}

@media(max-width:600px){
    #testimonials.review-showcase{
        padding:78px 15px 84px;
    }

    .review-showcase-heading{
        margin-bottom:34px;
    }

    .review-showcase-heading h2{
        font-size:clamp(34px, 10.5vw, 43px);
    }

    .review-showcase-heading > p{
        padding-left:16px;
        font-size:13px;
    }

    .review-score-panel,
    .review-stage-panel{
        border-radius:28px;
    }

    .review-score-panel{
        min-height:470px;
        padding:30px 24px;
    }

    .review-score-value strong{
        font-size:74px;
    }

    .review-score-panel > img{
        right:-66px;
        width:280px;
    }

    .review-stage-panel{
        min-height:530px;
        padding:28px 22px 18px;
    }

    .review-stage{
        min-height:390px;
    }

    .review-card{
        padding:38px 2px 28px;
    }

    .review-card blockquote{
        margin-top:20px;
        font-size:clamp(22px, 6.7vw, 28px);
        line-height:1.48;
    }

    .review-quote-mark{
        right:-4px;
        font-size:100px;
    }

    .review-auto-progress{
        margin-right:-22px;
        margin-left:-22px;
    }
}

@media(prefers-reduced-motion:reduce){
    .review-score-panel > img,
    .review-auto-progress.is-running span,
    .review-animate .review-showcase-heading > *,
    .review-animate .review-score-panel,
    .review-animate .review-stage-panel{
        animation:none;
    }

    .review-card,
    .review-score-panel,
    .review-stage-panel,
    .review-animate .review-showcase-heading > *,
    .review-animate .review-score-panel,
    .review-animate .review-stage-panel{
        transition:none;
    }

    .review-animate .review-showcase-heading > *,
    .review-animate .review-score-panel,
    .review-animate .review-stage-panel{
        opacity:1;
        transform:none;
    }
}

/* DIVIDER */

#divider{
    background:
        radial-gradient(1200px 520px at 50% 0%, rgba(254,197,2,0.10), transparent 60%),
        linear-gradient(180deg, rgba(254,197,2,0.06) 0%, rgba(246,247,248,0.95) 40%, rgba(255,255,255,1) 100%);
    padding:85px 20px;
}

.divider-wrap{
    background:
        radial-gradient(900px 380px at 12% 0%, rgba(254,197,2,0.20), transparent 58%),
        radial-gradient(700px 300px at 92% 10%, rgba(0,0,0,0.05), transparent 55%),
        linear-gradient(180deg,#ffffff, #f6f6f6);
    border:2px solid rgba(17,17,17,0.28);
    border-radius:var(--radius);
    box-shadow:
        0 22px 70px rgba(0,0,0,0.12),
        inset 0 0 0 1px rgba(255,255,255,0.55);
    padding:34px;
    display:grid;
    grid-template-columns:1.15fr 0.85fr;
    gap:26px;
    align-items:center;
    position:relative;
    overflow:hidden;
    transition:transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.divider-wrap::before{
    content:"";
    position:absolute;
    inset:-2px;
    background:
        radial-gradient(1200px 520px at 0% 0%, rgba(254,197,2,0.18), transparent 60%),
        radial-gradient(900px 420px at 100% 100%, rgba(0,0,0,0.05), transparent 62%);
    opacity:0.85;
    pointer-events:none;
}

.divider-wrap::after{
    content:"";
    position:absolute;
    inset:0;
    border-radius:var(--radius);
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.55);
    pointer-events:none;
}

.divider-wrap:hover{
    transform:translateY(-6px);
    border-color:rgba(17,17,17,0.40);
    box-shadow:
        0 28px 90px rgba(0,0,0,0.16),
        inset 0 0 0 1px rgba(255,255,255,0.60);
}

.divider-copy{
    position:relative;
    z-index:1;
    text-align:left;
}

.divider-badge{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 14px;
    border-radius:999px;
    background:rgba(254,197,2,0.20);
    color:var(--black);
    font-weight:800;
    letter-spacing:0.3px;
    font-size:13px;
    border:1px solid rgba(17,17,17,0.14);
}

.divider-copy h2{
    margin-top:16px;
    font-size:40px;
    line-height:1.12;
    color:var(--black);
}

.divider-accent{
    color:var(--primary-dark);
}

.divider-copy p{
    margin-top:14px;
    color:var(--gray);
    line-height:1.8;
    font-size:16px;
    max-width:58ch;
}

.divider-actions{
    margin-top:22px;
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.divider-features{
    margin-top:18px;
    display:flex;
    flex-wrap:wrap;
    gap:14px 18px;
    color:rgba(17,17,17,0.72);
    font-weight:700;
    font-size:13px;
}

.divider-features span{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:10px 12px;
    border-radius:999px;
    background:rgba(255,255,255,0.65);
    border:1px solid rgba(17,17,17,0.10);
}

.divider-features i{
    color:var(--primary-dark);
}

.divider-media{
    position:relative;
    z-index:1;
}

.divider-stats-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:12px;
    margin-bottom:14px;
}

.stat{
    border-radius:18px;
    border:1px solid rgba(17,17,17,0.12);
    background:rgba(255,255,255,0.82);
    padding:14px 14px;
    text-align:left;
    position:relative;
    overflow:hidden;
    display:flex;
    gap:10px;
    align-items:center;
}

.stat:hover{
    border-color:rgba(17,17,17,0.18);
}

.stat--compact i{
    width:34px;
    height:34px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(254,197,2,0.16);
    color:var(--primary-dark);
    flex:0 0 auto;
}

.stat-text{
    min-width:0;
}

.stat-value{
    font-size:20px;
    font-weight:900;
    color:var(--black);
    line-height:1.1;
}

.stat-label{
    margin-top:4px;
    color:var(--gray);
    font-weight:600;
    font-size:12px;
}

.divider-car{
    height:195px;
    border-radius:22px;
    border:1px solid rgba(17,17,17,0.10);
    background:
        radial-gradient(900px 320px at 15% 35%, rgba(254,197,2,0.16), transparent 62%),
        radial-gradient(700px 260px at 85% 15%, rgba(254,197,2,0.10), transparent 58%),
        linear-gradient(135deg, #ffffff 0%, #f6f7f8 55%, #ffffff 100%);
    position:relative;
    overflow:hidden;
    padding:10px 14px;
}

.divider-car::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(255,255,255,0.0), rgba(254,197,2,0.10), rgba(255,255,255,0.0));
    opacity:0.55;
    transform:skewX(-20deg) translateX(-15%);
    pointer-events:none;
}

.divider-car img{
    position:absolute;
    right:14px;
    bottom:6px;
    max-height:calc(100% - 12px);
    max-width:calc(100% - 28px);
    width:auto;
    height:auto;
    filter:drop-shadow(0 22px 30px rgba(0,0,0,0.22));
    transform:translateZ(0);
}

/* MAP */

#map{
    padding:0;
}

#map iframe{
    width:100%;
    height:500px;
    border:none;
}

/* FOOTER */

footer{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        radial-gradient(620px 300px at 8% 12%, rgba(200,35,51,0.16), transparent 68%),
        radial-gradient(520px 260px at 92% 85%, rgba(201,162,76,0.09), transparent 72%),
        linear-gradient(145deg, #13090c 0%, #0e090a 58%, #120b0d 100%);
    color:white;
    padding:76px 20px 24px;
    border-top:1px solid rgba(201,162,76,0.30);
}

footer::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:0;
    left:50%;
    width:min(88%, 1320px);
    height:2px;
    background:linear-gradient(90deg, transparent, var(--brand-red), var(--brand-gold-light), transparent);
    transform:translateX(-50%);
    opacity:0.85;
}

.footer-container{
    position:relative;
    max-width:1320px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:48px;
    margin-bottom:44px;
}

.footer-logo{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:220px;
    aspect-ratio:1600 / 585;
    overflow:hidden;
    margin-bottom:19px;
    border:1px solid rgba(201,162,76,0.24);
    border-radius:18px;
    background:linear-gradient(145deg, #ffffff, #fff8f4);
    box-shadow:0 16px 38px rgba(0,0,0,0.24);
}

.footer-logo img{
    display:block;
    width:100%;
    height:100%;
    max-width:100%;
    object-fit:contain;
    object-position:center;
    margin:0;
    flex:0 0 auto;
}

.footer-section h4{
    position:relative;
    margin:8px 0 23px;
    padding-bottom:12px;
    color:var(--brand-gold-light);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:19px;
    font-weight:800;
    letter-spacing:-0.025em;
}

.footer-section h4::after{
    content:"";
    position:absolute;
    bottom:0;
    left:0;
    width:34px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold-light));
}

.footer-section p,
.footer-section a{
    color:#c9c3c5;
    text-decoration:none;
    margin-bottom:10px;
    display:block;
    font-size:14px;
    line-height:1.75;
    transition:color 0.3s ease, transform 0.3s ease;
}

.footer-section:first-child > p{
    max-width:300px;
    color:#bdb5b8;
}

.footer-section a:hover{
    color:var(--brand-gold-light);
    transform:translateX(5px);
}

.footer-section:last-child p{
    display:grid;
    grid-template-columns:30px minmax(0, 1fr);
    align-items:start;
    gap:9px;
    margin-bottom:12px;
    line-height:1.55;
}

.footer-section:last-child p i{
    display:grid;
    width:28px;
    height:28px;
    place-items:center;
    margin-top:1px;
    border:1px solid rgba(201,162,76,0.20);
    border-radius:9px;
    color:var(--brand-gold-light) !important;
    background:rgba(201,162,76,0.09);
    font-size:11px;
}

.social-icons{
    display:flex;
    gap:10px;
    margin-top:21px;
}

.social-icons a{
    width:42px;
    height:42px;
    margin:0;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:13px;
    color:#d8d2d4;
    background:rgba(255,255,255,0.055);
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 9px 22px rgba(0,0,0,0.16);
    transition:transform 0.3s ease, border-color 0.3s ease, background 0.3s ease, color 0.3s ease;
}

.social-icons a:hover{
    border-color:rgba(255,255,255,0.18);
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
    color:#ffffff;
    transform:translateY(-5px);
}

.footer-bottom{
    max-width:1320px;
    margin:0 auto;
    border-top:1px solid rgba(255,255,255,0.075);
    text-align:center;
    padding-top:22px;
    color:#9f9799;
}

.footer-bottom p{
    margin:0;
    font-size:12.5px;
    line-height:1.7;
}

.footer-bottom span{
    margin:0 6px;
    color:rgba(201,162,76,0.62);
}

.footer-bottom a{
    color:#d4c8cb;
    text-underline-offset:3px;
    transition:color 0.25s ease;
}

.footer-bottom a:hover{
    color:var(--brand-gold-light);
}

@media(max-width:768px){
    footer{
        padding:58px 18px 22px;
    }

    .footer-container{
        gap:34px;
        margin-bottom:34px;
    }

    .footer-logo{
        width:200px;
    }

    .footer-section h4{
        margin-bottom:18px;
    }
}

/* CONTACT */

#contact{
    background:radial-gradient(1200px 600px at 10% 10%, rgba(254,197,2,0.16), transparent 60%),
               radial-gradient(900px 500px at 90% 20%, rgba(254,197,2,0.10), transparent 55%),
               linear-gradient(135deg,#0b0b0b,#151515);
    color:white;
    text-align:center;
}

.contact-page--light{
    background:
        radial-gradient(1000px 520px at 14% 12%, rgba(254,197,2,0.10), transparent 60%),
        radial-gradient(900px 520px at 86% 30%, rgba(0,0,0,0.05), transparent 62%),
        linear-gradient(180deg,#ffffff 0%, #f7f8fa 58%, #ffffff 100%) !important;
    color:var(--dark);
}

.contact-page--light .section-lead{
    color:var(--gray);
}

.contact-page--light .section-title{
    font-family:'Sora','Inter','Segoe UI',sans-serif;
    font-size:clamp(30px, 3.2vw, 46px);
    line-height:1.12;
    letter-spacing:-0.02em;
    margin-bottom:34px;
}

.contact-page--light .section-lead{
    max-width:760px;
    margin:8px auto 0;
    font-family:'Inter','Segoe UI',sans-serif;
    font-size:clamp(17px, 1.45vw, 21px);
    line-height:1.6;
    font-weight:500;
    color:#5d6673;
    text-align:center;
}

.contact-page--light .muted{
    color:#5f6570;
}

.contact-page--light .contact-card,
.contact-page--light .contact-box{
    background:linear-gradient(180deg, #ffffff, #f8f8f8);
    border:1px solid rgba(0,0,0,0.10);
    box-shadow:0 14px 40px rgba(0,0,0,0.10);
}

.contact-page--light .contact-card::before,
.contact-page--light .contact-box::before{
    opacity:0.45;
}

.contact-page--light .contact-icon{
    background:rgba(254,197,2,0.20);
    color:#ae7f00;
}

.contact-page--light .contact-card a{
    color:var(--black);
}

.contact-page--light .contact-box h3{
    color:var(--black);
}

.contact-page--light .contact-form label{
    color:var(--dark);
}

.contact-page--light .contact-form input,
.contact-page--light .contact-form textarea{
    background:#ffffff;
    color:var(--dark);
    border:1px solid rgba(17,17,17,0.14);
}

.contact-page--light .contact-form input::placeholder,
.contact-page--light .contact-form textarea::placeholder{
    color:#737b88;
}

.contact-page--light .contact-form input:focus,
.contact-page--light .contact-form textarea:focus{
    background:#ffffff;
    box-shadow:0 0 0 4px rgba(254,197,2,0.20);
}

.contact-page-booking-wrap{
    margin-top:0;
    padding:34px 20px 90px;
}

.contact-booking{
    max-width:100%;
}

.contact-booking-layout{
    display:grid;
    grid-template-columns:1.25fr 0.75fr;
    gap:20px;
    align-items:stretch;
}

.contact-booking-content{
    border-radius:var(--radius);
    border:1px solid rgba(0,0,0,0.10);
    background:linear-gradient(180deg, #ffffff, #f8f8f8);
    box-shadow:0 14px 40px rgba(0,0,0,0.10);
    padding:28px 24px;
    text-align:left;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    gap:14px;
}

.contact-booking-content h3{
    font-family:'Sora','Inter','Segoe UI',sans-serif;
    font-size:38px;
    line-height:1.1;
    margin:0;
    color:var(--black);
}

.contact-booking-content p{
    margin:0;
    color:var(--gray);
    line-height:1.75;
}

.contact-booking-content ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:10px;
}

.contact-booking-content li{
    color:var(--dark);
    font-weight:600;
    display:flex;
    align-items:flex-start;
    gap:10px;
}

.contact-booking-content li i{
    color:var(--primary-dark);
    margin-top:4px;
}

.contact-booking-content .cta-btn{
    align-self:flex-start;
}

.contact-booking-tags{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}

.contact-booking-tags span{
    padding:7px 11px;
    border-radius:999px;
    background:rgba(254,197,2,0.16);
    border:1px solid rgba(254,197,2,0.45);
    color:var(--black);
    font-size:13px;
    font-weight:700;
}

.contact-booking-stats{
    margin-top:auto;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:10px;
}

.contact-booking-stats div{
    border:1px solid rgba(0,0,0,0.12);
    border-radius:16px;
    background:#fff;
    padding:10px 8px;
    text-align:center;
}

.contact-booking-stats strong{
    display:block;
    font-size:20px;
    color:var(--black);
    line-height:1.1;
}

.contact-booking-stats span{
    font-size:12px;
    color:var(--gray);
    font-weight:700;
}

.contact-booking-note{
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 14px;
    border-radius:16px;
    background:rgba(17,17,17,0.04);
    border:1px solid rgba(0,0,0,0.08);
}

.contact-booking-note i{
    color:var(--primary-dark);
    font-size:18px;
}

.contact-booking-note p{
    margin:0;
    color:var(--dark);
    font-size:14px;
    line-height:1.4;
}

.contact-booking-note a{
    color:var(--black);
    font-weight:800;
    text-decoration:none;
}

.contact-page .page-breadcrumb-content h1,
.contact-page #contact h1,
.contact-page #contact h2,
.contact-page #contact h3,
.contact-page #contact h4{
    color:var(--black);
}

.contact-page .page-breadcrumb-content h1,
.contact-page .page-breadcrumb-content p{
    color:var(--white);
}

.contact-page .page-breadcrumb-content a{
    color:#ffd84a;
}

.section-title--light{
    color:white;
}

.section-lead{
    max-width:820px;
    margin:16px auto 0;
    font-size:18px;
    line-height:1.8;
    color:var(--gray);
}

.section-lead--light{
    color:rgba(255,255,255,0.82);
}

.muted{
    color:#cfcfcf;
}

.contact-layout{
    display:grid;
    grid-template-columns:1fr 1.15fr;
    gap:28px;
    margin-top:44px;
    align-items:start;
}

.contact-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:16px;
}

.contact-card{
    padding:22px 22px;
    border-radius:var(--radius);
    background:linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.05));
    border:1px solid rgba(255,255,255,0.10);
    backdrop-filter:blur(12px);
    box-shadow:0 14px 40px rgba(0,0,0,0.35);
    transition:0.4s ease;
    text-align:left;
    display:flex;
    gap:16px;
    align-items:flex-start;
    position:relative;
    overflow:hidden;
}

.contact-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(500px 180px at 0% 0%, rgba(254,197,2,0.14), transparent 55%);
    opacity:0.55;
    pointer-events:none;
}

.contact-card:hover{
    transform:translateY(-10px);
    border-color:rgba(254,197,2,0.45);
}

.contact-icon{
    width:54px;
    height:54px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(254,197,2,0.16);
    color:#ffd84a;
    font-size:22px;
    flex:0 0 auto;
    position:relative;
    z-index:1;
}

.contact-meta{
    position:relative;
    z-index:1;
    flex:1 1 auto;
    min-width:0;
}

.contact-card h3{
    font-size:20px;
    margin-bottom:8px;
}

.contact-card a{
    color:white;
    text-decoration:none;
    font-weight:700;
}

.contact-card a:hover{
    color:var(--primary);
}

.contact-box{
    max-width:none;
    margin:0;
    padding:38px;
    background:linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.05));
    backdrop-filter:blur(12px);
    border-radius:var(--radius);
    border:1px solid rgba(255,255,255,0.10);
    box-shadow:0 14px 40px rgba(0,0,0,0.35);
    text-align:left;
    position:relative;
    overflow:hidden;
}

.contact-box::before{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(700px 240px at 20% 0%, rgba(254,197,2,0.12), transparent 55%);
    opacity:0.65;
    pointer-events:none;
}

.contact-box h3{
    font-size:34px;
    margin-bottom:14px;
    position:relative;
    z-index:1;
}

.contact-box p{
    margin:18px 0;
    font-size:18px;
    color:#ddd;
    position:relative;
    z-index:1;
}

.contact-form{
    margin-top:18px;
    text-align:left;
    position:relative;
    z-index:1;
}

.form-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.contact-form label{
    color:#ededed;
}

.contact-form input,
.contact-form textarea{
    background:rgba(255,255,255,0.07);
    color:white;
    border:1px solid rgba(255,255,255,0.10);
}

.contact-form input::placeholder,
.contact-form textarea::placeholder{
    color:rgba(255,255,255,0.7);
}

.contact-form input:focus,
.contact-form textarea:focus{
    background:rgba(255,255,255,0.10);
    box-shadow:0 0 0 4px rgba(254,197,2,0.22);
}

/* MOBILE */

@media(max-width:991px){

    .about-container{
        grid-template-columns:1fr;
    }

    .booking-form{
        order:-1;
    }

    .about-content{
        order:1;
    }

    .slide-content h1{
        font-size:clamp(40px, 5.9vw, 52px);
    }

    .divider-wrap{
        grid-template-columns:1fr;
        padding:28px;
        gap:22px;
    }

    .divider-copy h2{
        font-size:34px;
    }

    .testimonials-carousel{
        padding:0 56px;
    }

    .testimonial-card{
        flex-basis:calc((100% - 22px) / 2);
        min-width:260px;
    }

    .why-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .rental-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .services-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .gallery-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .car-showcase-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .contact-booking-layout{
        grid-template-columns:1fr;
    }

    .contact-booking-stats{
        margin-top:8px;
    }
}

@media(max-width:600px){
    .why-grid{
        grid-template-columns:1fr;
    }

    .rental-grid{
        grid-template-columns:1fr;
    }

    .services-grid{
        grid-template-columns:1fr;
    }

    .gallery-grid{
        grid-template-columns:1fr;
    }

    .car-showcase-grid{
        grid-template-columns:1fr;
    }

    .checker-separator{
        height:16px;
    }

    .road-cars img{
        width:44px;
        top:0;
        animation-duration:7s;
    }

    .marquee-strip{
        padding:10px 0;
    }

    .marquee-track{
        gap:26px;
        font-size:14px;
        animation-duration:22s;
    }

    .marquee-track span::after{
        margin-left:26px;
    }
}

@media(max-width:768px){

    .menu-toggle{
        display:block;
    }

    .page-breadcrumb{
        margin-top:94px;
        height:150px;
        min-height:150px;
    }

    .page-breadcrumb img{
        min-height:0;
    }

    .page-breadcrumb-content h1{
        font-size:38px;
    }

    .contact-page--light .section-title{
        margin-bottom:26px;
    }

    .contact-page--light .section-lead{
        font-size:17px;
        line-height:1.6;
    }

    nav ul{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        background:rgba(255,255,255,0.98);
        border-top:1px solid rgba(0,0,0,0.08);
        flex-direction:column;
        padding:25px;
        display:none;
        box-shadow:0 18px 40px rgba(0,0,0,0.12);
    }

    nav ul.active{
        display:flex;
    }

    .slide-overlay{
        padding:100px 24px 55px;
    }

    .slide-content{
        width:min(100%, 640px);
    }

    .hero-eyebrow{
        margin-bottom:16px;
        font-size:11px;
        letter-spacing:0.13em;
    }

    .hero-eyebrow span{
        width:23px;
    }

    .slide-content h1{
        font-size:clamp(32px, 7.4vw, 42px);
        letter-spacing:-0.042em;
        line-height:1.08;
        margin-bottom:20px;
    }

    .slide-content p{
        font-size:16px;
        line-height:1.6;
        margin-bottom:28px;
    }

    .section-title{
        font-size:36px;
    }

    .hero{
        height:86vh;
    }

    .slider-arrow{
        display:none;
    }

    .slide img,
    .slide video{
        object-position:center 68%;
    }

    .slide img{
        animation:none;
        transform:none;
    }

    .logo--home{
        width:160px;
    }

    .logo--home img{
        width:100%;
        height:100%;
    }

    .contact-layout{
        grid-template-columns:1fr;
    }

    .divider-stats-row{
        grid-template-columns:1fr;
    }

    .divider-car{
        height:175px;
    }

    .divider-car img{
        right:10px;
        bottom:6px;
    }

    .t-nav{
        width:46px;
        height:46px;
    }

    .testimonials-carousel{
        padding:0 50px;
    }

    .testimonial-card{
        flex-basis:85%;
        min-width:260px;
    }

    .booking-row{
        grid-template-columns:1fr;
        gap:14px;
    }

    .booking-benefits{
        grid-template-columns:1fr;
    }

    .booking-underline{
        margin-left:0;
    }

    .about-car{
        width:150px;
    }

    .about-car img{
        height:96px;
    }

    .form-row{
        grid-template-columns:1fr;
    }

}

@media(max-width:480px){

    .slide-overlay{
        align-items:center;
        padding:96px 18px 50px;
    }

    .hero-eyebrow{
        gap:8px;
        margin-bottom:14px;
        font-size:10px;
    }

    .slide-content h1{
        font-size:clamp(29px, 8.8vw, 35px);
        letter-spacing:-0.038em;
        line-height:1.1;
    }

    .slide-content p{
        font-size:15px;
        line-height:1.55;
        margin-bottom:26px;
    }

    .cta-btn,
    .form-submit{
        width:100%;
    }

    section{
        padding:80px 15px;
    }

    .booking-form{
        padding:25px;
    }

    .contact-box{
        padding:30px 20px;
    }

    .fab-stack{
        right:10px;
        bottom:18px;
    }

    .page-breadcrumb-content h1{
        font-size:32px;
    }

    .page-breadcrumb-content p{
        font-size:15px;
    }
}

/* Encoding-safe overrides (avoid mojibake characters) */
.stars{
    font-size:0;
}

.stars::before{
    content:"★★★★★";
    font-size:22px;
    letter-spacing:2px;
    color:var(--primary);
}

.about-list li::before{
    content:"\2713";
}




.google-review-strip{
    background:#050505;
    border:1px solid rgba(255,255,255,0.06);
    border-radius:24px;
    padding:35px 40px;
    margin-top:70px;

    display:flex;
    align-items:center;
    justify-content:center;
    gap:70px;

    max-width:1150px;
    margin-left:auto;
    margin-right:auto;

    box-shadow:0 10px 40px rgba(0,0,0,0.45);
    flex-wrap:wrap;
}

.google-review-left{
    min-width:220px;
}

.google-rating{
    font-size:72px;
    font-weight:800;
    color:#fbbc05;
    line-height:1;
}

.google-brand{
    font-size:24px;
    font-weight:700;
    display:flex;
    align-items:center;
    margin-top:10px;
}

.review-text{
    color:#fff;
    font-size:16px;
    margin-left:8px;
}

.g-blue{color:#4285F4;}
.g-red{color:#EA4335;}
.g-yellow{color:#FBBC05;}
.g-green{color:#34A853;}

.google-stars{
    color:#fbbc05;
    font-size:22px;
    margin-top:14px;
    letter-spacing:2px;
}

.google-count{
    color:#bdbdbd;
    margin-top:10px;
    font-size:16px;
}

.google-review-bars{
    width:700px;
    max-width:100%;
}

.bar-row{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:18px;
    color:#fff;
}

.bar-row span{
    width:40px;
    font-weight:600;
    font-size:16px;
}

.bar{
    width:100%;
    height:10px;
    background:#222;
    border-radius:50px;
    overflow:hidden;
}

.fill{
    height:100%;
    border-radius:50px;
    background:linear-gradient(90deg,#00c6ff,#fbbc05);
}

.fill-5{width:83%;}
.fill-4{width:28%;}
.fill-3{width:0%;}

.bar-row strong{
    width:35px;
    text-align:right;
    color:#d6d6d6;
}

/* RED & GOLD BRAND THEME */

body{
    background:linear-gradient(180deg, #ffffff 0%, var(--brand-ivory) 42%, #ffffff 100%);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
    outline-color:rgba(200,35,51,0.42);
}

::-webkit-scrollbar-thumb{
    background:linear-gradient(180deg, var(--brand-red), var(--brand-gold));
}

header{
    border-bottom-color:rgba(200,35,51,0.13);
    box-shadow:0 10px 34px rgba(87,15,25,0.10);
}

nav a::after{
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

nav a:hover{
    color:var(--brand-red);
}

.fab--call{
    color:#ffffff;
    background:linear-gradient(145deg, #df3343, var(--brand-red-dark));
    border-color:rgba(201,162,76,0.42);
}

@keyframes fabPulse{
    0%,100%{ box-shadow:0 16px 40px rgba(67,11,20,0.22); }
    50%{ box-shadow:0 16px 52px rgba(200,35,51,0.42); }
}

.slide-overlay{
    background:
        linear-gradient(180deg, rgba(20,8,11,0.16) 0%, rgba(20,8,11,0.05) 36%, rgba(20,8,11,0.42) 100%),
        linear-gradient(90deg, rgba(38,8,14,0.58) 0%, rgba(20,10,12,0.32) 50%, rgba(12,9,10,0.14) 100%);
}

.hero-eyebrow span{
    background:var(--brand-red);
    box-shadow:0 0 18px rgba(200,35,51,0.48);
}

.slide-content h1 .hero-title-accent{
    color:var(--brand-gold-light);
}

@keyframes heroTitleLineIn{
    0%{
        opacity:0;
        filter:blur(9px);
        transform:translateY(34px) scale(0.97);
    }
    65%{
        opacity:1;
        filter:blur(0);
        transform:translateY(-3px) scale(1);
    }
    100%{
        opacity:1;
        filter:blur(0);
        transform:translateY(0) scale(1);
    }
}

@keyframes heroTitleGoldFlow{
    0%,100%{
        background-position:0% 50%;
    }
    50%{
        background-position:100% 50%;
    }
}

.slide.active .slide-content h1 > span{
    opacity:0;
    will-change:transform, opacity, filter;
    animation:heroTitleLineIn 0.9s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.slide.active .slide-content h1 > span:first-child{
    animation-delay:0.18s;
}

.slide.active .slide-content h1 > .hero-title-accent{
    color:transparent;
    background:linear-gradient(105deg, #e6a800 0%, #ffc107 28%, #ffe28a 49%, #ffc107 68%, #d89400 100%);
    background-size:220% auto;
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
    animation:
        heroTitleLineIn 0.9s 0.34s cubic-bezier(0.22, 1, 0.36, 1) forwards,
        heroTitleGoldFlow 3.8s 1.25s ease-in-out infinite;
}

@media(prefers-reduced-motion:reduce){
    .slide.active .slide-content h1 > span,
    .slide.active .slide-content h1 > .hero-title-accent{
        opacity:1;
        filter:none;
        transform:none;
        animation:none;
    }

    .slide.active .slide-content h1 > .hero-title-accent{
        color:var(--brand-gold-light);
        background:none;
        -webkit-text-fill-color:currentColor;
    }
}

.cta-btn:not(.cta-btn--outline),
.form-submit{
    color:#ffffff;
    background:linear-gradient(135deg, #df3343 0%, var(--brand-red) 54%, var(--brand-red-dark) 100%);
    box-shadow:0 12px 30px rgba(150,20,34,0.28);
}

.cta-btn:not(.cta-btn--outline):hover,
.form-submit:hover{
    color:#ffffff;
    background:linear-gradient(135deg, #ec4654, #a71928);
    box-shadow:0 20px 42px rgba(150,20,34,0.38);
}

.cta-btn--outline{
    border-color:rgba(200,35,51,0.28);
}

.cta-btn--outline:hover{
    background:rgba(200,35,51,0.08);
    border-color:rgba(200,35,51,0.48);
}

.slider-arrow:hover{
    color:#ffffff;
    background:var(--brand-red);
}

.dot.active{
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.section-title::after{
    background:linear-gradient(90deg, var(--brand-red) 0 58%, var(--brand-gold) 58% 100%);
}

#about.about-showcase-section{
    background:
        radial-gradient(900px 520px at 0% 10%, rgba(200,35,51,0.09), transparent 62%),
        radial-gradient(800px 500px at 100% 90%, rgba(201,162,76,0.13), transparent 65%),
        #fffdf9;
}

.about-visual-frame{
    border-color:rgba(135,19,31,0.13);
    background:linear-gradient(145deg, #fcf8f1 0%, #eee5df 68%, #faf5ef 100%);
    box-shadow:0 28px 75px rgba(76,17,26,0.16);
}

.about-visual-frame::before{
    background:linear-gradient(135deg, var(--brand-red), var(--brand-red-dark));
}

.about-experience-card{
    background:rgba(38,9,15,0.94);
    border-color:rgba(201,162,76,0.32);
}

.about-experience-card strong{
    color:var(--brand-gold-light);
}

.about-route-card > i{
    color:#ffffff;
    background:var(--brand-red);
}

.about-kicker{
    color:var(--brand-red);
}

.about-kicker span{
    background:var(--brand-gold);
}

.about-story h2 .about-title-highlight::after{
    background:linear-gradient(90deg, rgba(200,35,51,0.34), rgba(201,162,76,0.88));
}

.about-feature:hover{
    border-color:rgba(200,35,51,0.42);
    box-shadow:0 12px 28px rgba(87,15,25,0.09);
}

.about-feature > span,
.booking-title-icon,
.field-icon,
.benefit i{
    color:var(--brand-red);
    border-color:rgba(200,35,51,0.16);
    background:rgba(200,35,51,0.09);
}

.about-metrics strong{
    color:var(--brand-red);
}

.about-call:hover > span{
    color:var(--brand-gold-light);
    background:var(--brand-red-dark);
}

.booking-underline{
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.booking-form{
    background:
        radial-gradient(850px 320px at 10% 0%, rgba(200,35,51,0.08), transparent 60%),
        linear-gradient(180deg, #fffdf9, #f8f2eb);
}

.car-btn--book,
.service-btn--primary{
    color:#ffffff;
    background:linear-gradient(135deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 14px 34px rgba(150,20,34,0.27);
}

.service-btn--primary:hover{
    box-shadow:0 18px 44px rgba(150,20,34,0.36);
}

.service-btn--ghost:hover{
    background:rgba(200,35,51,0.07);
    border-color:rgba(200,35,51,0.38);
}

.service-rate{
    background:linear-gradient(135deg, var(--brand-gold-light), var(--brand-gold));
}

#services{
    background:#fcfaf6;
}

#destinations{
    background:
        radial-gradient(900px 320px at 15% 0%, rgba(200,35,51,0.09), transparent 60%),
        linear-gradient(180deg, #fffaf3 0%, #f8f6f4 100%);
}

.service-card:hover,
.rental-card:hover{
    border-color:rgba(200,35,51,0.22);
    box-shadow:0 24px 54px rgba(87,15,25,0.13);
}

.rental-price{
    background:rgba(201,162,76,0.14);
    border-color:rgba(147,101,31,0.38);
}

.checker-separator{
    background:linear-gradient(90deg, var(--brand-red-dark), var(--brand-red) 48%, var(--brand-gold) 100%);
    border-color:rgba(60,11,18,0.86);
}

.marquee-strip{
    background:linear-gradient(90deg, var(--brand-red-dark), var(--brand-red));
    border-color:rgba(201,162,76,0.58);
}

.marquee-track{
    color:#ffffff;
}

.marquee-track span::before,
.marquee-track span::after{
    color:var(--brand-gold-light);
}

#why-choose{
    background:
        radial-gradient(900px 320px at 85% 0%, rgba(200,35,51,0.07), transparent 60%),
        linear-gradient(180deg, #fbf7f1 0%, #f1ebe7 100%);
}

.why-icon{
    color:var(--brand-red);
}

.why-card:hover{
    background:linear-gradient(145deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 20px 50px rgba(87,15,25,0.24);
}

.why-card:hover p,
.why-card:hover h4{
    color:#ffffff;
}

.why-card:hover .why-icon{
    color:var(--brand-gold-light);
}

#testimonials{
    background:
        radial-gradient(800px 360px at 90% 0%, rgba(200,35,51,0.20), transparent 62%),
        linear-gradient(135deg, #16090d, #291318);
}

.t-nav:hover{
    color:var(--brand-red-dark);
    background:var(--brand-gold-light);
    border-color:rgba(201,162,76,0.62);
}

.divider-badge,
.contact-booking-tags span{
    background:rgba(201,162,76,0.14);
    border-color:rgba(147,101,31,0.32);
}

.divider-accent,
.divider-features i,
.contact-booking-content li i,
.contact-booking-note i{
    color:var(--brand-red);
}

#contact{
    background:
        radial-gradient(1000px 520px at 8% 12%, rgba(200,35,51,0.22), transparent 60%),
        radial-gradient(850px 460px at 90% 20%, rgba(201,162,76,0.12), transparent 58%),
        linear-gradient(135deg, #16090d, #241216);
}

.contact-page--light .contact-icon,
.contact-icon{
    color:var(--brand-red);
    background:rgba(200,35,51,0.10);
}

.contact-card:hover{
    border-color:rgba(201,162,76,0.48);
}

.contact-card a:hover{
    color:var(--brand-gold-light);
}

.footer-section h4{
    color:var(--brand-gold-light);
}

.footer-section a:hover{
    color:var(--brand-gold-light);
}

.fill{
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold-light));
}

/* MOBILE HEADER / HERO OVERLAP FIX */

@media(max-width:768px){
    header{
        height:98px;
    }

    .header-container{
        height:100%;
        padding:8px 18px;
    }

    #hero.hero{
        height:calc(100svh - 98px);
        min-height:560px;
        margin-top:98px;
    }

    #hero .slide{
        overflow:hidden;
    }

    #hero .slide img{
        object-position:center 72%;
        transform:scale(1.18);
        transform-origin:center 68%;
    }

    #hero .slide:nth-child(3) img{
        object-position:center 76%;
        transform:scale(1.30);
    }

    #hero .slide video{
        object-position:center;
        transform:scale(1.02);
    }

    #hero .slide-overlay{
        padding:34px 20px 48px;
        background:
            linear-gradient(180deg, rgba(25,8,12,0.52) 0%, rgba(25,8,12,0.30) 40%, rgba(20,8,11,0.52) 100%),
            linear-gradient(90deg, rgba(38,8,14,0.50), rgba(20,10,12,0.22));
    }
}

@media(max-width:480px){
    #hero.hero{
        min-height:570px;
    }

    #hero .slide-overlay{
        padding:28px 18px 42px;
    }
}

/* COMPACT MULTI-REVIEW LAYOUT */

.testimonials-legacy{
    display:none !important;
}

#testimonials.review-showcase{
    padding:72px 20px 78px;
    background:
        radial-gradient(620px 280px at 0% 0%, rgba(200,35,51,0.16), transparent 66%),
        linear-gradient(145deg, #091c21, #112b31);
}

#testimonials.review-showcase::before{
    top:-88px;
    right:2%;
    font-size:290px;
}

.review-showcase-heading{
    grid-template-columns:minmax(0, 1fr) minmax(280px, 0.72fr);
    gap:46px;
    margin-bottom:27px;
}

.review-kicker{
    margin-bottom:10px;
    font-size:9px;
}

.review-showcase-heading h2{
    font-size:clamp(32px, 3.2vw, 44px);
    line-height:1.08;
}

.review-showcase-heading > p{
    max-width:450px;
    padding-left:20px;
    font-size:11px;
    line-height:1.65;
}

.review-showcase-grid{
    display:block;
}

.review-score-panel{
    display:flex;
    align-items:center;
    isolation:isolate;
    flex-wrap:nowrap;
    gap:0;
    min-height:0;
    margin:16px 0 0;
    padding:17px 20px;
    border-color:rgba(255,193,7,0.27);
    border-radius:22px;
    background:
        radial-gradient(280px 100px at 0% 50%, rgba(200,35,51,0.20), transparent 72%),
        linear-gradient(110deg, rgba(255,255,255,0.075), rgba(255,255,255,0.035) 54%, rgba(255,193,7,0.085));
    box-shadow:0 16px 38px rgba(0,0,0,0.18), inset 0 1px 0 rgba(255,255,255,0.08);
}

.review-score-panel:hover{
    transform:none;
    border-color:rgba(255,193,7,0.48);
    background:
        radial-gradient(320px 110px at 0% 50%, rgba(200,35,51,0.25), transparent 72%),
        linear-gradient(110deg, rgba(255,255,255,0.09), rgba(255,255,255,0.045) 54%, rgba(255,193,7,0.12));
}

.review-score-brand{
    display:block;
    min-width:170px;
    padding-right:22px;
    border-right:1px solid rgba(255,255,255,0.11);
}

.review-google-word{
    font-size:30px;
    line-height:1;
}

.review-score-brand small{
    display:block;
    margin-top:5px;
    padding:0;
    font-size:7px;
    letter-spacing:0.13em;
}

.review-score-value{
    gap:5px;
    margin:0;
    padding-left:20px;
}

.review-score-value strong{
    font-size:42px;
    letter-spacing:-0.06em;
    line-height:1;
}

.review-score-value span{
    padding-bottom:4px;
    font-size:10px;
}

.review-score-stars{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:4px;
    min-width:118px;
    margin:0 0 0 21px;
    padding-right:26px;
    border-right:1px solid rgba(255,255,255,0.11);
    font-size:13px;
}

.review-score-stars > i{
    filter:drop-shadow(0 0 7px rgba(255,193,7,0.36));
}

.review-stars-label{
    flex:0 0 100%;
    margin-top:3px;
    color:rgba(255,255,255,0.48);
    font-size:7px;
    font-weight:800;
    letter-spacing:0.09em;
    line-height:1.2;
    text-transform:uppercase;
}

.review-score-panel > p,
.review-rating-bars,
.review-score-panel > img{
    display:none;
}

.review-score-footer{
    display:flex;
    gap:9px;
    margin:0 0 0 auto;
}

.review-score-footer span{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:160px;
    padding:10px 13px;
    border:1px solid rgba(255,255,255,0.09);
    border-radius:15px;
    color:rgba(255,255,255,0.54);
    background:rgba(255,255,255,0.045);
    font-size:7.5px;
    line-height:1.25;
}

.review-score-footer span > i{
    display:grid;
    flex:0 0 34px;
    width:34px;
    height:34px;
    place-items:center;
    border-radius:11px;
    color:var(--brand-gold-light);
    background:linear-gradient(145deg, rgba(200,35,51,0.32), rgba(255,193,7,0.16));
    font-size:12px;
}

.review-score-footer span > b{
    color:inherit;
    font-weight:700;
}

.review-score-footer strong{
    display:block;
    margin:0 0 1px;
    color:#ffffff;
    font-size:14px;
}

.review-stage-panel{
    min-height:0;
    overflow:visible;
    padding:15px 16px 13px;
    border-color:rgba(255,255,255,0.10);
    border-radius:24px;
    background:rgba(255,255,255,0.045);
    box-shadow:0 18px 44px rgba(0,0,0,0.16);
}

.review-stage-panel:hover{
    transform:none;
    box-shadow:0 18px 44px rgba(0,0,0,0.16);
}

.review-stage-top{
    min-height:36px;
    padding:0 3px 12px;
    border-bottom-color:rgba(255,255,255,0.10);
}

.review-stage-top > span:first-child,
.review-stage-top > span:last-child{
    color:rgba(255,255,255,0.55);
}

.review-stage-top i{
    color:var(--brand-gold-light);
    filter:drop-shadow(0 0 5px rgba(255,193,7,0.32));
}

.review-showcase.is-auto-playing .review-stage-top > span:last-child i{
    animation:reviewAutoPulse 1.7s ease-in-out infinite;
}

@keyframes reviewAutoPulse{
    0%, 100%{
        opacity:0.55;
        filter:drop-shadow(0 0 0 rgba(255,193,7,0));
    }
    50%{
        opacity:1;
        filter:drop-shadow(0 0 6px rgba(255,193,7,0.78));
    }
}

.review-stage{
    display:flex;
    align-items:stretch;
    gap:14px;
    min-height:0;
    overflow-x:auto;
    padding:14px 2px 18px;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
}

.review-stage::-webkit-scrollbar{
    display:none;
}

.review-card,
.review-card.is-active{
    position:relative;
    grid-area:auto;
    display:flex;
    isolation:isolate;
    flex:0 0 calc((100% - 42px) / 4);
    flex-direction:column;
    min-width:220px;
    min-height:226px;
    overflow:hidden;
    padding:20px;
    opacity:1;
    pointer-events:auto;
    scroll-snap-align:start;
    border:1px solid rgba(255,255,255,0.78);
    border-radius:19px;
    background:#fbf9f4;
    box-shadow:0 10px 25px rgba(0,0,0,0.10);
    transform:none;
    transition:
        transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.38s ease,
        border-color 0.32s ease,
        background 0.32s ease;
}

.review-card::before{
    content:"";
    position:absolute;
    z-index:3;
    right:18px;
    bottom:0;
    left:18px;
    height:3px;
    border-radius:999px 999px 0 0;
    background:linear-gradient(90deg, var(--brand-red), #ff6d57 48%, var(--brand-gold-light));
    box-shadow:0 0 15px rgba(200,35,51,0.28);
    opacity:0;
    transform:scaleX(0.18);
    transform-origin:left;
    transition:opacity 0.3s ease, transform 0.48s cubic-bezier(0.22, 1, 0.36, 1);
    pointer-events:none;
}

.review-card::after{
    content:"";
    position:absolute;
    z-index:0;
    top:-45%;
    left:-65%;
    width:34%;
    height:190%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.72), transparent);
    opacity:0;
    transform:skewX(-18deg);
    transition:left 0.72s ease, opacity 0.32s ease;
    pointer-events:none;
}

.review-card:hover{
    z-index:4;
    transform:translateY(-7px) scale(1.012);
    border-color:rgba(200,35,51,0.36);
    background:linear-gradient(145deg, #fffefa, #faf5ed);
    box-shadow:
        0 22px 44px rgba(0,0,0,0.20),
        0 8px 22px rgba(200,35,51,0.10);
}

.review-card:hover::before{
    opacity:1;
    transform:scaleX(1);
}

.review-card:hover::after{
    left:132%;
    opacity:0.46;
}

.review-quote-mark{
    z-index:1;
    top:4px;
    right:8px;
    font-size:68px;
    transition:color 0.32s ease, transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.review-card-stars{
    gap:3px;
    color:var(--brand-gold);
    font-size:9px;
    filter:drop-shadow(0 2px 3px rgba(255,193,7,0.24));
    transition:filter 0.32s ease, transform 0.32s ease;
}

.review-card blockquote{
    flex:1 1 auto;
    margin:14px 0 18px;
    font-family:'Inter','Segoe UI',sans-serif;
    font-size:12px;
    font-weight:600;
    letter-spacing:0;
    line-height:1.62;
}

.review-person{
    gap:9px;
}

.review-person > span{
    width:36px;
    height:36px;
    border-radius:12px;
    font-size:9px;
    transition:transform 0.38s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.32s ease;
}

.review-person strong{
    margin-bottom:2px;
    font-size:10px;
    transition:color 0.3s ease;
}

.review-person small{
    font-size:8px;
}

@media(hover:hover){
    .review-card:hover .review-quote-mark{
        color:rgba(200,35,51,0.14);
        transform:rotate(-7deg) scale(1.10);
    }

    .review-card:hover .review-card-stars{
        filter:drop-shadow(0 4px 6px rgba(255,193,7,0.36));
        transform:translateY(-2px);
    }

    .review-card:hover .review-person > span{
        transform:translateY(-2px) rotate(-4deg) scale(1.08);
        box-shadow:0 12px 25px rgba(135,19,31,0.28);
    }

    .review-card:hover .review-person strong{
        color:var(--brand-red);
    }
}

.review-stage-footer{
    min-height:46px;
    justify-content:flex-end;
    border-top-color:rgba(255,255,255,0.10);
}

.review-navigation button{
    width:34px;
    height:34px;
    border-color:rgba(255,255,255,0.16);
    color:#ffffff;
    background:rgba(255,255,255,0.08);
}

.review-navigation button:disabled{
    opacity:0.28;
    cursor:not-allowed;
}

.review-dots,
.review-auto-progress{
    display:none;
}

@media(max-width:1100px){
    .review-card,
    .review-card.is-active{
        flex-basis:calc((100% - 28px) / 3);
    }
}

@media(max-width:780px){
    .review-showcase-heading{
        grid-template-columns:1fr;
        gap:14px;
    }

    .review-showcase-heading > p{
        max-width:620px;
    }

    .review-card,
    .review-card.is-active{
        flex-basis:calc((100% - 14px) / 2);
    }

    .review-score-panel{
        display:grid;
        grid-template-columns:auto auto minmax(150px, 1fr);
        gap:12px 16px;
    }

    .review-score-brand{
        min-width:150px;
        padding-right:18px;
    }

    .review-google-word{
        font-size:27px;
    }

    .review-score-value{
        padding-left:0;
    }

    .review-score-stars{
        margin-left:0;
        padding-right:0;
        border-right:0;
    }

    .review-score-footer{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        width:100%;
        margin:0;
    }

    .review-score-footer span{
        min-width:0;
    }
}

@media(max-width:600px){
    #testimonials.review-showcase{
        padding:62px 15px 66px;
    }

    .review-showcase-heading{
        margin-bottom:22px;
    }

    .review-showcase-heading h2{
        font-size:32px;
    }

    .review-showcase-heading > p{
        padding-left:14px;
        font-size:10px;
    }

    .review-stage-top > span:last-child{
        max-width:150px;
        font-size:7px;
        line-height:1.35;
        text-align:right;
    }

    .review-score-panel{
        grid-template-columns:1fr auto;
        gap:12px 14px;
        padding:15px;
    }

    .review-score-brand{
        min-width:0;
        padding-right:0;
        border-right:0;
    }

    .review-google-word{
        font-size:26px;
    }

    .review-score-value{
        justify-self:end;
    }

    .review-score-stars{
        grid-column:1 / -1;
        margin-top:-3px;
    }

    .review-score-footer{
        grid-column:1 / -1;
        display:grid;
    }

    .review-score-footer span{
        padding:7px 8px;
    }

    .review-score-footer span > i{
        flex-basis:25px;
        width:25px;
        height:25px;
    }

    .review-stage-panel{
        padding:13px 13px 11px;
        border-radius:21px;
    }

    .review-stage{
        gap:11px;
    }

    .review-card,
    .review-card.is-active{
        flex:0 0 84%;
        min-width:250px;
        min-height:215px;
        padding:18px;
    }

    .review-card blockquote{
        font-size:11px;
    }
}

@media(prefers-reduced-motion:reduce){
    .review-showcase.is-auto-playing .review-stage-top > span:last-child i{
        animation:none;
    }

    .review-card,
    .review-card::before,
    .review-card::after,
    .review-quote-mark,
    .review-card-stars,
    .review-person > span{
        transition:none;
    }
}

/* BOOK YOUR CAB */

#contact.cab-booking-section{
    position:relative;
    overflow:hidden;
    padding:88px 20px 94px;
    color:#ffffff;
    text-align:left;
    background:
        radial-gradient(780px 420px at 0% 0%, rgba(200,35,51,0.26), transparent 68%),
        radial-gradient(680px 380px at 100% 100%, rgba(255,193,7,0.12), transparent 70%),
        linear-gradient(145deg, #07181d, #0d272c 56%, #091c21);
}

#contact.cab-booking-section::before{
    content:"BOOK";
    position:absolute;
    top:20px;
    right:-24px;
    color:rgba(255,255,255,0.018);
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:240px;
    font-weight:900;
    letter-spacing:-0.09em;
    line-height:0.8;
    pointer-events:none;
}

.cab-booking-orbit{
    position:absolute;
    top:-250px;
    left:-230px;
    width:520px;
    height:520px;
    border:1px solid rgba(255,193,7,0.11);
    border-radius:50%;
    box-shadow:
        0 0 0 58px rgba(255,193,7,0.025),
        0 0 0 116px rgba(200,35,51,0.025);
    animation:cabOrbitSpin 20s linear infinite;
    pointer-events:none;
}

.cab-booking-orbit::after{
    content:"";
    position:absolute;
    top:48%;
    right:-5px;
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--brand-gold);
    box-shadow:0 0 18px rgba(255,193,7,0.7);
}

@keyframes cabOrbitSpin{
    to{ transform:rotate(360deg); }
}

.cab-booking-section .container{
    position:relative;
    z-index:1;
}

.cab-booking-heading{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(320px, 0.68fr);
    align-items:end;
    gap:60px;
    margin-bottom:34px;
}

.cab-booking-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    margin-bottom:11px;
    color:var(--brand-gold);
    font-size:8px;
    font-weight:900;
    letter-spacing:0.16em;
    text-transform:uppercase;
}

.cab-booking-kicker span{
    width:34px;
    height:3px;
    border-radius:999px;
    background:linear-gradient(90deg, var(--brand-red), var(--brand-gold));
}

.cab-booking-heading h2{
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(42px, 4.2vw, 60px);
    font-weight:850;
    letter-spacing:-0.06em;
    line-height:1;
}

.cab-booking-heading h2 em{
    color:var(--brand-gold);
    font-style:normal;
    text-shadow:0 0 26px rgba(255,193,7,0.12);
}

.cab-booking-heading > p{
    max-width:470px;
    margin:0 0 5px;
    padding-left:22px;
    border-left:1px solid rgba(255,255,255,0.16);
    color:rgba(255,255,255,0.57);
    font-size:11px;
    font-weight:600;
    line-height:1.7;
}

.cab-booking-shell{
    display:grid;
    grid-template-columns:minmax(0, 0.88fr) minmax(0, 1.12fr);
    min-height:660px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.11);
    border-radius:32px;
    background:rgba(255,255,255,0.045);
    box-shadow:0 34px 90px rgba(0,0,0,0.30);
    backdrop-filter:blur(12px);
}

.cab-booking-visual{
    position:relative;
    min-height:660px;
    overflow:hidden;
    padding:30px;
    border-right:1px solid rgba(255,255,255,0.10);
    background:
        radial-gradient(420px 250px at 50% 36%, rgba(255,193,7,0.13), transparent 72%),
        radial-gradient(360px 240px at 0% 100%, rgba(200,35,51,0.28), transparent 72%),
        linear-gradient(155deg, rgba(255,255,255,0.055), rgba(255,255,255,0.015));
}

.cab-booking-visual::after{
    content:"";
    position:absolute;
    top:0;
    right:0;
    width:150px;
    height:150px;
    border-top:1px solid rgba(255,193,7,0.24);
    border-right:1px solid rgba(255,193,7,0.24);
    border-radius:0 31px 0 100%;
    pointer-events:none;
}

.cab-live-pill{
    position:relative;
    z-index:5;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:9px 12px;
    border:1px solid rgba(255,255,255,0.12);
    border-radius:999px;
    color:rgba(255,255,255,0.75);
    background:rgba(4,18,22,0.54);
    font-size:7px;
    font-weight:900;
    letter-spacing:0.08em;
    text-transform:uppercase;
    backdrop-filter:blur(9px);
}

.cab-live-pill i{
    color:#61d68a;
    font-size:6px;
    filter:drop-shadow(0 0 6px rgba(97,214,138,0.85));
    animation:cabLivePulse 1.6s ease-in-out infinite;
}

@keyframes cabLivePulse{
    50%{ opacity:0.35; transform:scale(0.7); }
}

.cab-route-card{
    position:absolute;
    z-index:5;
    top:80px;
    right:28px;
    left:28px;
    display:grid;
    grid-template-columns:34px minmax(0, 1fr) 26px 34px;
    align-items:center;
    gap:10px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,0.13);
    border-radius:17px;
    background:rgba(5,22,26,0.66);
    box-shadow:0 15px 38px rgba(0,0,0,0.18);
    backdrop-filter:blur(12px);
}

.cab-route-card > span{
    display:grid;
    width:32px;
    height:32px;
    place-items:center;
    border-radius:10px;
    color:var(--brand-gold);
    background:rgba(255,193,7,0.12);
    font-size:10px;
}

.cab-route-card > div small,
.cab-route-card > div strong{
    display:block;
}

.cab-route-card > div small{
    margin-bottom:2px;
    color:rgba(255,255,255,0.42);
    font-size:6px;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.cab-route-card > div strong{
    color:#ffffff;
    font-size:9px;
}

.cab-route-card > i{
    color:rgba(255,255,255,0.28);
    font-size:10px;
}

.cab-car-stage{
    position:absolute;
    z-index:2;
    isolation:isolate;
    top:145px;
    right:5%;
    left:5%;
    height:270px;
}

.cab-car-stage::before{
    content:"";
    position:absolute;
    z-index:1;
    top:30px;
    right:-14%;
    bottom:72px;
    left:-14%;
    opacity:0.52;
    background-image:
        linear-gradient(90deg, transparent, rgba(255,255,255,0.24), transparent),
        linear-gradient(90deg, transparent, rgba(255,193,7,0.22), transparent),
        linear-gradient(90deg, transparent, rgba(255,255,255,0.16), transparent);
    background-position:0 28%, -85px 53%, -25px 78%;
    background-repeat:repeat-x;
    background-size:190px 2px, 145px 2px, 230px 1px;
    filter:blur(0.35px);
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 13%, #000 87%, transparent);
    mask-image:linear-gradient(90deg, transparent, #000 13%, #000 87%, transparent);
    animation:cabSpeedStreaks 0.85s linear infinite;
    pointer-events:none;
}

.cab-car-stage::after{
    content:"";
    position:absolute;
    z-index:1;
    right:2%;
    bottom:43px;
    width:32%;
    height:40px;
    border-radius:50%;
    background:radial-gradient(ellipse, rgba(255,193,7,0.16), rgba(255,255,255,0.08) 42%, transparent 72%);
    filter:blur(8px);
    animation:cabRoadDust 1.1s ease-in-out infinite;
    pointer-events:none;
}

@keyframes cabSpeedStreaks{
    to{ background-position:240px 28%, 205px 53%, 285px 78%; }
}

@keyframes cabRoadDust{
    0%, 100%{ opacity:0.28; transform:translateX(0) scaleX(0.85); }
    50%{ opacity:0.62; transform:translateX(14px) scaleX(1.12); }
}

.cab-car-glow{
    position:absolute;
    z-index:0;
    top:38px;
    left:50%;
    width:78%;
    height:170px;
    border-radius:50%;
    background:radial-gradient(ellipse, rgba(255,193,7,0.24), rgba(200,35,51,0.10) 44%, transparent 70%);
    filter:blur(14px);
    transform:translateX(-50%);
}

.cab-car-stage > img{
    position:absolute;
    z-index:2;
    top:16px;
    left:50%;
    width:min(94%, 540px);
    max-width:none;
    filter:drop-shadow(0 28px 24px rgba(0,0,0,0.42));
    transform:translateX(-50%);
    transform-origin:center bottom;
    animation:cabCarCruise 2.4s ease-in-out infinite;
}

@keyframes cabCarCruise{
    0%, 100%{ transform:translateX(calc(-50% - 4px)) translateY(0) rotate(-0.25deg); }
    50%{ transform:translateX(calc(-50% + 5px)) translateY(-3px) rotate(0.18deg); }
}

.cab-road{
    position:absolute;
    z-index:1;
    right:-12%;
    bottom:8px;
    left:-12%;
    height:54px;
    overflow:hidden;
    border-top:1px solid rgba(255,255,255,0.12);
    border-bottom:1px solid rgba(255,255,255,0.08);
    background:linear-gradient(180deg, rgba(2,13,16,0.08), rgba(2,13,16,0.40));
    transform:perspective(160px) rotateX(56deg);
}

.cab-road span{
    position:absolute;
    top:50%;
    width:92px;
    height:4px;
    border-radius:999px;
    background:var(--brand-gold);
    opacity:0.82;
    filter:blur(0.25px);
    animation:cabRoadMove 0.95s linear infinite;
}

.cab-road span:nth-child(1){ left:-20%; }
.cab-road span:nth-child(2){ left:15%; animation-delay:-0.24s; }
.cab-road span:nth-child(3){ left:50%; animation-delay:-0.48s; }
.cab-road span:nth-child(4){ left:85%; animation-delay:-0.72s; }

@keyframes cabRoadMove{
    to{ transform:translateX(260%); }
}

.cab-visual-copy{
    position:absolute;
    z-index:4;
    right:30px;
    bottom:96px;
    left:30px;
}

.cab-visual-copy > span{
    display:block;
    margin-bottom:8px;
    color:var(--brand-gold);
    font-size:7px;
    font-weight:900;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.cab-visual-copy h3{
    margin:0;
    color:#ffffff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(31px, 3vw, 43px);
    font-weight:850;
    letter-spacing:-0.055em;
    line-height:1.02;
}

.cab-visual-copy p{
    max-width:410px;
    margin:10px 0 0;
    color:rgba(255,255,255,0.53);
    font-size:8.5px;
    font-weight:600;
    line-height:1.55;
}

.cab-contact-row{
    position:absolute;
    z-index:5;
    right:30px;
    bottom:25px;
    left:30px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.cab-contact-row > a{
    display:flex;
    align-items:center;
    gap:9px;
    color:#ffffff;
    text-decoration:none;
}

.cab-contact-row > a > i{
    display:grid;
    width:34px;
    height:34px;
    place-items:center;
    border-radius:11px;
    color:#101d20;
    background:var(--brand-gold);
    font-size:11px;
    box-shadow:0 8px 20px rgba(255,193,7,0.18);
}

.cab-contact-row small,
.cab-contact-row strong{
    display:block;
}

.cab-contact-row small{
    margin-bottom:2px;
    color:rgba(255,255,255,0.42);
    font-size:6px;
}

.cab-contact-row strong{
    font-size:9px;
}

.cab-contact-row > span{
    display:flex;
    align-items:center;
    gap:6px;
    color:rgba(255,255,255,0.52);
    font-size:7px;
    font-weight:800;
}

.cab-contact-row > span i{
    color:var(--brand-gold);
}

.cab-form-panel{
    padding:30px;
    color:#172b31;
    background:
        radial-gradient(360px 210px at 100% 0%, rgba(255,193,7,0.11), transparent 70%),
        #fbf8f2;
}

.cab-form-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:21px;
}

.cab-form-heading span{
    display:block;
    margin-bottom:4px;
    color:var(--brand-red);
    font-size:7px;
    font-weight:900;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.cab-form-heading h3{
    margin:0;
    color:#172b31;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:27px;
    font-weight:850;
    letter-spacing:-0.045em;
}

.cab-form-heading > b{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 10px;
    border:1px solid rgba(14,160,73,0.16);
    border-radius:999px;
    color:#168644;
    background:rgba(23,196,91,0.08);
    font-size:7px;
    font-weight:900;
}

.cab-form-heading > b i{
    font-size:11px;
}

.cab-booking-form{
    margin:0;
}

.cab-trip-type{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:8px;
    margin:0 0 14px;
    padding:0;
    border:0;
}

.cab-trip-type legend{
    grid-column:1 / -1;
    margin-bottom:7px;
    color:#637276;
    font-size:7px;
    font-weight:900;
    letter-spacing:0.09em;
    text-transform:uppercase;
}

.cab-trip-type label{
    cursor:pointer;
}

.cab-trip-type input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.cab-trip-type label > span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:41px;
    border:1px solid rgba(23,43,49,0.11);
    border-radius:13px;
    color:#5f6d71;
    background:rgba(255,255,255,0.74);
    font-size:8px;
    font-weight:850;
    transition:color 0.28s ease, border-color 0.28s ease, background 0.28s ease, transform 0.28s ease;
}

.cab-trip-type label:hover > span{
    transform:translateY(-2px);
    border-color:rgba(200,35,51,0.20);
}

.cab-trip-type input:checked + span{
    border-color:var(--brand-red);
    color:#ffffff;
    background:linear-gradient(135deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 9px 22px rgba(135,19,31,0.18);
}

.cab-form-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

.cab-field{
    position:relative;
    display:block;
}

.cab-field > span{
    display:block;
    margin:0 0 6px 2px;
    color:#637276;
    font-size:7px;
    font-weight:850;
    letter-spacing:0.04em;
}

.cab-field > span small{
    color:#929b9d;
    font-size:6px;
}

.cab-field > i{
    position:absolute;
    z-index:2;
    bottom:16px;
    left:13px;
    color:#bd8d15;
    font-size:10px;
    pointer-events:none;
}

.cab-field input,
.cab-field select{
    width:100%;
    height:43px;
    padding:0 12px 0 34px;
    border:1px solid rgba(23,43,49,0.11);
    border-radius:13px;
    outline:0;
    color:#203238;
    background:rgba(255,255,255,0.84);
    font:700 8px/1 'Inter','Segoe UI',sans-serif;
    box-shadow:0 6px 16px rgba(43,27,22,0.035);
    transition:border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.cab-field input::placeholder{
    color:#9aa2a4;
    opacity:1;
}

.cab-field input:focus,
.cab-field select:focus{
    border-color:rgba(200,35,51,0.42);
    background:#ffffff;
    box-shadow:0 0 0 3px rgba(200,35,51,0.08), 0 8px 20px rgba(43,27,22,0.06);
}

.cab-field--full{
    margin-top:12px;
}

.cab-submit{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    width:100%;
    min-height:58px;
    overflow:hidden;
    margin-top:16px;
    padding:8px 9px 8px 18px;
    border:0;
    border-radius:16px;
    color:#ffffff;
    background:linear-gradient(135deg, #e33143, var(--brand-red) 50%, var(--brand-red-dark));
    box-shadow:0 14px 30px rgba(135,19,31,0.24);
    cursor:pointer;
    text-align:left;
    transition:transform 0.3s ease, box-shadow 0.3s ease;
}

.cab-submit::before{
    content:"";
    position:absolute;
    top:-40%;
    left:-30%;
    width:24%;
    height:180%;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.42), transparent);
    transform:skewX(-18deg);
    transition:left 0.65s ease;
}

.cab-submit:hover{
    transform:translateY(-3px);
    box-shadow:0 19px 38px rgba(135,19,31,0.32);
}

.cab-submit:hover::before{
    left:120%;
}

.cab-submit span,
.cab-submit small,
.cab-submit strong{
    display:block;
}

.cab-submit small{
    margin-bottom:3px;
    color:rgba(255,255,255,0.58);
    font-size:6px;
    font-weight:800;
    letter-spacing:0.07em;
    text-transform:uppercase;
}

.cab-submit strong{
    font-size:11px;
    font-weight:900;
}

.cab-submit > i{
    display:grid;
    flex:0 0 40px;
    width:40px;
    height:40px;
    place-items:center;
    border:1px solid rgba(255,255,255,0.14);
    border-radius:12px;
    background:rgba(255,255,255,0.10);
    font-size:18px;
}

.cab-form-note{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    margin:11px 0 0;
    color:#8a9496;
    font-size:6.5px;
    font-weight:700;
}

.cab-form-note i{
    color:#168644;
}

@media(max-width:1050px){
    .cab-booking-shell{
        grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr);
    }

    .cab-booking-visual{
        padding:24px;
    }

    .cab-route-card{
        right:22px;
        left:22px;
    }

    .cab-visual-copy,
    .cab-contact-row{
        right:24px;
        left:24px;
    }
}

@media(max-width:860px){
    #contact.cab-booking-section{
        padding:76px 18px 82px;
    }

    .cab-booking-heading{
        grid-template-columns:1fr;
        gap:15px;
    }

    .cab-booking-heading > p{
        max-width:620px;
    }

    .cab-booking-shell{
        grid-template-columns:1fr;
    }

    .cab-booking-visual{
        min-height:570px;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,0.10);
    }

    .cab-form-panel{
        padding:34px;
    }
}

@media(max-width:560px){
    #contact.cab-booking-section{
        padding:64px 13px 70px;
    }

    .cab-booking-heading{
        margin-bottom:25px;
    }

    .cab-booking-heading h2{
        font-size:38px;
    }

    .cab-booking-heading > p{
        padding-left:14px;
        font-size:9px;
    }

    .cab-booking-shell{
        border-radius:23px;
    }

    .cab-booking-visual{
        min-height:520px;
        padding:20px;
    }

    .cab-route-card{
        top:70px;
        right:18px;
        left:18px;
    }

    .cab-car-stage{
        top:145px;
        right:0;
        left:0;
    }

    .cab-car-stage > img{
        width:104%;
    }

    .cab-visual-copy{
        right:20px;
        bottom:91px;
        left:20px;
    }

    .cab-visual-copy h3{
        font-size:32px;
    }

    .cab-contact-row{
        right:20px;
        bottom:22px;
        left:20px;
    }

    .cab-contact-row > span{
        display:none;
    }

    .cab-form-panel{
        padding:25px 18px 28px;
    }

    .cab-form-heading h3{
        font-size:23px;
    }

    .cab-trip-type{
        gap:5px;
    }

    .cab-trip-type label > span{
        gap:5px;
        min-height:39px;
        font-size:7px;
    }

    .cab-form-grid{
        grid-template-columns:1fr;
        gap:11px;
    }

    .cab-field--full{
        margin-top:11px;
    }

    .cab-field input,
    .cab-field select{
        height:45px;
        font-size:8.5px;
    }

    .cab-field > i{
        bottom:17px;
    }
}

@media(prefers-reduced-motion:reduce){
    .cab-booking-orbit,
    .cab-live-pill i,
    .cab-car-stage > img,
    .cab-road span{
        animation:none;
    }

    .cab-trip-type label > span,
    .cab-submit,
    .cab-submit::before{
        transition:none;
    }
}

/* CITY LAYER FOR CAB VISUAL */

.cab-city-backdrop{
    position:absolute;
    z-index:0;
    top:0;
    right:0;
    left:0;
    height:455px;
    overflow:hidden;
    opacity:0.58;
    background:
        linear-gradient(180deg, rgba(5,20,24,0.18) 0%, rgba(5,20,24,0.12) 34%, rgba(5,20,24,0.84) 88%, #0a2227 100%),
        linear-gradient(90deg, rgba(7,24,29,0.38), transparent 48%, rgba(96,25,31,0.16)),
        url("assets/img/sliders/slider2.png") center 36% / cover no-repeat;
    filter:saturate(0.66) contrast(1.10) blur(0.8px);
    transform:scale(1.08);
    transform-origin:center;
    animation:cabCityDrift 8s ease-in-out infinite alternate;
    pointer-events:none;
}

.cab-city-backdrop::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 15% 36%, rgba(255,193,7,0.28) 0 2px, transparent 3px),
        radial-gradient(circle at 29% 42%, rgba(255,193,7,0.22) 0 1px, transparent 2px),
        radial-gradient(circle at 72% 34%, rgba(255,193,7,0.24) 0 1.5px, transparent 2.5px),
        linear-gradient(180deg, transparent 56%, rgba(5,20,24,0.54) 100%);
    background-size:110px 80px, 140px 95px, 160px 100px, auto;
    mix-blend-mode:screen;
    opacity:0.62;
}

.cab-city-backdrop::after{
    content:"JHANSI  •  ORCHHA  •  GWALIOR  •  AGRA";
    position:absolute;
    right:28px;
    bottom:39px;
    left:28px;
    color:rgba(255,255,255,0.24);
    font-size:6px;
    font-weight:900;
    letter-spacing:0.22em;
    text-align:center;
    text-transform:uppercase;
    white-space:nowrap;
}

@keyframes cabCityDrift{
    0%{ transform:scale(1.08) translateX(-2.2%); }
    100%{ transform:scale(1.12) translateX(2.2%); }
}

.cab-car-stage > img{
    filter:
        drop-shadow(0 28px 24px rgba(0,0,0,0.48))
        drop-shadow(0 0 10px rgba(255,255,255,0.12));
}

.cab-route-card{
    background:rgba(5,22,26,0.76);
    box-shadow:0 15px 38px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.05);
}

@media(max-width:560px){
    .cab-city-backdrop{
        height:405px;
        background-position:center 32%;
    }

    .cab-city-backdrop::after{
        right:16px;
        bottom:31px;
        left:16px;
        font-size:5.5px;
        letter-spacing:0.15em;
    }
}

@media(prefers-reduced-motion:reduce){
    .cab-city-backdrop,
    .cab-car-stage::before,
    .cab-car-stage::after{
        animation:none;
    }
}

/* BOOKING PHOTO VISUAL */

.cab-booking-photo{
    position:absolute;
    z-index:0;
    inset:0;
    overflow:hidden;
    background:
        radial-gradient(480px 230px at 58% 38%, rgba(255,193,7,0.09), transparent 72%),
        linear-gradient(180deg, #102d33, #0a2025 68%, #091f24);
    pointer-events:none;
}

.cab-booking-photo::before{
    content:"";
    position:absolute;
    z-index:2;
    inset:0;
    background:
        linear-gradient(180deg, rgba(6,20,24,0.20) 0%, rgba(6,20,24,0.06) 34%, rgba(6,20,24,0.30) 58%, rgba(6,20,24,0.94) 83%, #091f24 100%),
        linear-gradient(90deg, rgba(7,24,29,0.30), transparent 50%, rgba(135,19,31,0.13));
}

.cab-booking-photo::after{
    content:"";
    position:absolute;
    z-index:3;
    top:45%;
    right:-15%;
    left:-15%;
    height:2px;
    opacity:0.34;
    background:linear-gradient(90deg, transparent, var(--brand-gold) 30%, #ffffff 50%, var(--brand-gold) 70%, transparent);
    filter:blur(0.6px);
    animation:cabPhotoSpeedLine 1.7s ease-in-out infinite;
}

.cab-booking-photo > img{
    box-sizing:border-box;
    width:100%;
    height:100%;
    padding:92px 0 178px;
    object-fit:contain;
    object-position:center;
    filter:saturate(0.90) contrast(1.06) brightness(0.90);
    -webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
    mask-image:linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
    transform:scale(1);
    transform-origin:center;
    animation:cabBookingPhotoPan 8s ease-in-out infinite alternate;
}

@keyframes cabBookingPhotoPan{
    0%{ transform:scale(0.985) translateX(-0.45%); }
    100%{ transform:scale(1.015) translateX(0.45%); }
}

@keyframes cabPhotoSpeedLine{
    0%, 100%{ opacity:0.18; transform:translateX(-8%) scaleX(0.82); }
    50%{ opacity:0.48; transform:translateX(8%) scaleX(1); }
}

.cab-booking-visual .cab-live-pill{
    position:absolute;
    top:28px;
    left:28px;
}

@media(max-width:560px){
    .cab-booking-photo > img{
        padding:104px 0 162px;
        object-position:center;
    }

    .cab-booking-visual .cab-live-pill{
        top:20px;
        left:20px;
    }
}

@media(prefers-reduced-motion:reduce){
    .cab-booking-photo > img,
    .cab-booking-photo::after{
        animation:none;
    }
}

/* =========================================================
   ABOUT PAGE
   ========================================================= */

.about-page{
    background:#fffdf9;
}

.about-page nav a.is-current{
    color:var(--brand-red);
}

.about-page nav a.is-current::after{
    width:100%;
}

.about-page main{
    overflow:hidden;
}

.about-page .page-breadcrumb{
    background:
        linear-gradient(90deg, rgba(25,8,12,0.28), rgba(25,8,12,0.14)),
        url("assets/img/sliders/slider3.jpeg") center 48% / cover no-repeat;
}

.about-page main section{
    scroll-margin-top:110px;
}

.about-hero{
    position:relative;
    min-height:630px;
    margin-top:112px;
    padding:0 20px;
    display:flex;
    align-items:center;
    isolation:isolate;
    overflow:hidden;
    background:#1b0c10;
}

.about-hero__image,
.about-hero__shade{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.about-hero__image{
    z-index:-3;
    object-fit:cover;
    object-position:center 48%;
    transform:scale(1.015);
}

.about-hero__shade{
    z-index:-2;
    background:
        linear-gradient(90deg, rgba(22,6,10,0.94) 0%, rgba(29,8,13,0.80) 42%, rgba(21,8,11,0.27) 70%, rgba(15,8,9,0.28) 100%),
        linear-gradient(180deg, rgba(15,7,9,0.22), rgba(15,7,9,0.13) 50%, rgba(15,7,9,0.66));
}

.about-hero::before{
    content:"";
    position:absolute;
    z-index:-1;
    inset:0;
    opacity:0.18;
    background-image:
        linear-gradient(rgba(255,255,255,0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.08) 1px, transparent 1px);
    background-size:72px 72px;
    mask-image:linear-gradient(90deg, #000, transparent 67%);
}

.about-hero::after{
    content:"";
    position:absolute;
    z-index:-1;
    right:-150px;
    bottom:-290px;
    width:680px;
    height:680px;
    border:1px solid rgba(255,193,7,0.28);
    border-radius:50%;
    box-shadow:
        0 0 0 65px rgba(255,193,7,0.04),
        0 0 0 130px rgba(255,255,255,0.025);
}

.about-hero__layout{
    width:100%;
    display:grid;
    grid-template-columns:minmax(0, 1fr) 310px;
    align-items:end;
    gap:70px;
    padding:72px 0 80px;
}

.about-hero__content{
    max-width:790px;
}

.about-breadcrumb{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:36px;
    color:rgba(255,255,255,0.72);
    font-size:13px;
    font-weight:700;
    letter-spacing:0.05em;
}

.about-breadcrumb a{
    color:#fff;
    text-decoration:none;
}

.about-breadcrumb a::after{
    display:none;
}

.about-breadcrumb i{
    color:var(--brand-gold-light);
    font-size:9px;
}

.about-eyebrow,
.about-section-kicker{
    display:flex;
    align-items:center;
    gap:11px;
    color:var(--brand-red);
    font-size:12px;
    font-weight:800;
    letter-spacing:0.16em;
    line-height:1.2;
    text-transform:uppercase;
}

.about-eyebrow{
    margin-bottom:20px;
    color:#fff;
}

.about-eyebrow span,
.about-section-kicker span{
    width:32px;
    height:3px;
    border-radius:999px;
    background:var(--brand-gold-light);
}

.about-section-kicker span{
    background:var(--brand-red);
}

.about-hero h1{
    max-width:780px;
    margin:0;
    color:#fff;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(54px, 5.25vw, 78px);
    font-weight:800;
    letter-spacing:-0.055em;
    line-height:0.99;
    text-wrap:balance;
}

.about-hero h1 span{
    display:inline-block;
    color:var(--brand-gold-light);
}

.about-hero__lead{
    max-width:700px;
    margin:27px 0 0;
    color:rgba(255,255,255,0.82);
    font-size:18px;
    font-weight:500;
    line-height:1.72;
}

.about-hero__actions{
    display:flex;
    flex-wrap:wrap;
    gap:13px;
    margin-top:34px;
}

.about-btn{
    min-height:54px;
    padding:0 25px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    border:1px solid transparent;
    border-radius:12px;
    font-size:13px;
    font-weight:800;
    letter-spacing:0.015em;
    text-decoration:none;
    transition:transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.about-btn:hover{
    transform:translateY(-3px);
}

.about-btn--primary{
    color:#fff;
    background:linear-gradient(135deg, #df3343, var(--brand-red-dark));
    box-shadow:0 13px 30px rgba(109,13,27,0.34);
}

.about-btn--primary:hover{
    box-shadow:0 18px 36px rgba(109,13,27,0.46);
}

.about-btn--glass{
    color:#fff;
    border-color:rgba(255,255,255,0.28);
    background:rgba(255,255,255,0.09);
    backdrop-filter:blur(10px);
}

.about-btn--glass:hover{
    background:rgba(255,255,255,0.16);
}

.about-hero__card{
    padding:24px;
    color:#fff;
    border:1px solid rgba(255,255,255,0.18);
    border-radius:20px;
    background:rgba(25,9,13,0.72);
    box-shadow:0 24px 65px rgba(0,0,0,0.30);
    backdrop-filter:blur(16px);
}

.about-hero__card-top{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:20px;
    color:var(--brand-gold-light);
    font-size:11px;
    font-weight:800;
    letter-spacing:0.13em;
    text-transform:uppercase;
}

.about-live-dot{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#47d886;
    box-shadow:0 0 0 5px rgba(71,216,134,0.13);
    animation:aboutLivePulse 1.8s ease-in-out infinite;
}

@keyframes aboutLivePulse{
    50%{ box-shadow:0 0 0 8px rgba(71,216,134,0.04); }
}

.about-hero__card > strong{
    display:block;
    margin-bottom:22px;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:21px;
    letter-spacing:-0.025em;
    line-height:1.35;
}

.about-hero__quick{
    display:grid;
    gap:10px;
}

.about-hero__quick > div{
    display:flex;
    align-items:center;
    gap:13px;
    padding:12px 13px;
    border:1px solid rgba(255,255,255,0.09);
    border-radius:12px;
    background:rgba(255,255,255,0.055);
}

.about-hero__quick i{
    width:35px;
    height:35px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-gold-light);
    border-radius:10px;
    background:rgba(255,193,7,0.10);
}

.about-hero__quick span,
.about-hero__quick b,
.about-hero__quick small{
    display:block;
}

.about-hero__quick b{
    font-size:13px;
    line-height:1.25;
}

.about-hero__quick small{
    margin-top:3px;
    color:rgba(255,255,255,0.60);
    font-size:10px;
    font-weight:600;
}

.about-story-section{
    position:relative;
    padding:125px 20px 135px;
    background:
        radial-gradient(700px 400px at 6% 75%, rgba(255,193,7,0.08), transparent 70%),
        #fffdf9;
}

.about-story-layout{
    display:grid;
    grid-template-columns:minmax(0, 1.04fr) minmax(0, 0.96fr);
    align-items:center;
    gap:95px;
}

.about-story-visual{
    position:relative;
    min-height:590px;
}

.about-story-visual__main{
    position:absolute;
    inset:0 55px 55px 0;
    overflow:hidden;
    border-radius:28px;
    box-shadow:0 28px 70px rgba(58,28,31,0.17);
}

.about-story-visual__main::after{
    content:"";
    position:absolute;
    inset:0;
    border:1px solid rgba(255,255,255,0.42);
    border-radius:inherit;
    box-shadow:inset 0 -100px 100px rgba(17,7,9,0.18);
}

.about-story-visual__main img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}

.about-story-visual__small{
    position:absolute;
    right:0;
    bottom:0;
    z-index:2;
    width:47%;
    height:245px;
    padding:7px;
    overflow:hidden;
    border-radius:21px;
    background:#fff;
    box-shadow:0 18px 48px rgba(56,24,28,0.24);
}

.about-story-visual__small img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    border-radius:15px;
}

.about-story-visual__badge{
    position:absolute;
    top:34px;
    left:-24px;
    z-index:3;
    min-width:178px;
    padding:15px 18px;
    display:flex;
    align-items:center;
    gap:12px;
    color:#fff;
    border-radius:0 14px 14px 0;
    background:linear-gradient(135deg, var(--brand-red), var(--brand-red-dark));
    box-shadow:0 15px 35px rgba(121,15,29,0.30);
}

.about-story-visual__badge i{
    color:var(--brand-gold-light);
    font-size:21px;
}

.about-story-visual__badge span,
.about-story-visual__badge strong{
    display:block;
}

.about-story-visual__badge span{
    color:rgba(255,255,255,0.74);
    font-size:10px;
    font-weight:700;
    line-height:1.3;
    text-transform:uppercase;
}

.about-story-visual__badge strong{
    margin-bottom:2px;
    color:#fff;
    font-size:17px;
    text-transform:none;
}

.about-story-visual__dots{
    position:absolute;
    right:-25px;
    top:-28px;
    width:115px;
    height:115px;
    opacity:0.34;
    background-image:radial-gradient(var(--brand-red) 1.6px, transparent 1.6px);
    background-size:13px 13px;
}

.about-story-copy{
    max-width:590px;
}

.about-story-title__line{
    display:block;
    white-space:nowrap;
}

.about-story-copy h2 .about-story-title__accent{
    margin-top:4px;
    color:var(--brand-red);
}

.about-story-copy h2,
.about-section-heading h2,
.about-why__intro h2,
.about-final-cta h2{
    margin:16px 0 0;
    color:#221417;
    font-family:'Manrope','Sora','Inter',sans-serif;
    font-size:clamp(42px, 4.2vw, 58px);
    font-weight:800;
    letter-spacing:-0.048em;
    line-height:1.06;
}

.about-story-copy h2{
    max-width:560px;
    font-size:clamp(38px, 3.35vw, 47px);
    letter-spacing:-0.042em;
    line-height:1.08;
}

.about-story-copy__lead{
    max-width:560px;
    margin:25px 0 15px !important;
    color:#2d1b1e !important;
    font-size:17px !important;
    font-weight:650;
    line-height:1.65 !important;
}

.about-story-copy > p{
    max-width:560px;
    margin-top:12px;
    color:#716368;
    font-size:14px;
    line-height:1.75;
}

.about-signature{
    margin:27px 0 22px;
    padding:17px 0;
    display:flex;
    align-items:center;
    gap:14px;
    border-top:1px solid rgba(83,49,56,0.12);
    border-bottom:1px solid rgba(83,49,56,0.12);
}

.about-signature__icon{
    width:47px;
    height:47px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:#fff;
    border-radius:13px;
    background:var(--brand-red);
    box-shadow:0 11px 25px rgba(150,20,34,0.24);
}

.about-signature strong,
.about-signature small{
    display:block;
}

.about-signature strong{
    color:#2b1b1e;
    font-size:14px;
}

.about-signature small{
    margin-top:4px;
    color:#8b7b7f;
    font-size:12px;
}

.about-text-link{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--brand-red);
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}

.about-text-link i{
    transition:transform 0.25s ease;
}

.about-text-link:hover i{
    transform:translateX(5px);
}

.about-promise{
    position:relative;
    z-index:2;
    padding:0 20px;
    background:#fffdf9;
}

.about-promise__grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.09);
    border-radius:22px;
    background:linear-gradient(135deg, #231317, #120a0c);
    box-shadow:0 25px 70px rgba(35,16,20,0.22);
}

.about-promise article{
    position:relative;
    min-height:164px;
    padding:32px 27px;
    display:flex;
    align-items:flex-start;
    gap:15px;
    border-right:1px solid rgba(255,255,255,0.09);
}

.about-promise article:last-child{
    border-right:0;
}

.about-promise article > span{
    position:absolute;
    right:16px;
    top:8px;
    color:rgba(255,255,255,0.04);
    font-family:'Manrope','Sora',sans-serif;
    font-size:52px;
    font-weight:800;
}

.about-promise article > i{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-gold-light);
    border:1px solid rgba(255,193,7,0.22);
    border-radius:12px;
    background:rgba(255,193,7,0.08);
}

.about-promise h3{
    margin:1px 0 7px;
    color:#fff;
    font-family:'Manrope','Sora',sans-serif;
    font-size:17px;
}

.about-promise p{
    color:rgba(255,255,255,0.56);
    font-size:12px;
    line-height:1.6;
}

.about-journey{
    padding:135px 20px 130px;
    background:#fffdf9;
}

.about-section-heading{
    display:grid;
    grid-template-columns:minmax(0, 1.1fr) minmax(300px, 0.62fr);
    align-items:end;
    gap:80px;
    margin-bottom:70px;
}

.about-section-heading > p,
.about-why__intro > p{
    padding-left:21px;
    color:#75666a;
    border-left:3px solid var(--brand-red);
    font-size:14px;
    line-height:1.75;
}

.about-timeline{
    position:relative;
}

.about-timeline::before{
    content:"";
    position:absolute;
    top:42px;
    bottom:42px;
    left:198px;
    width:1px;
    background:linear-gradient(180deg, rgba(200,35,51,0.15), var(--brand-red), rgba(200,35,51,0.15));
}

.about-timeline article{
    display:grid;
    grid-template-columns:155px 86px minmax(0, 1fr);
    align-items:center;
    min-height:175px;
}

.about-timeline__year{
    color:#2c1b1e;
    font-family:'Manrope','Sora',sans-serif;
    font-size:25px;
    font-weight:800;
    text-align:right;
}

.about-timeline__marker{
    position:relative;
    z-index:2;
    width:48px;
    height:48px;
    margin:auto;
    display:grid;
    place-items:center;
    color:#fff;
    border:7px solid #fffdf9;
    border-radius:50%;
    background:var(--brand-red);
    box-shadow:0 0 0 1px rgba(200,35,51,0.18);
}

.about-timeline__content{
    max-width:800px;
    padding:28px 33px;
    border:1px solid rgba(86,48,56,0.10);
    border-radius:18px;
    background:#fff;
    box-shadow:0 15px 45px rgba(64,29,36,0.055);
    transition:transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.about-timeline article:hover .about-timeline__content{
    transform:translateX(6px);
    border-color:rgba(200,35,51,0.20);
    box-shadow:0 20px 52px rgba(64,29,36,0.10);
}

.about-timeline__content span{
    color:var(--brand-red);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.about-timeline__content h3{
    margin:7px 0 7px;
    color:#2a191d;
    font-family:'Manrope','Sora',sans-serif;
    font-size:20px;
    letter-spacing:-0.02em;
}

.about-timeline__content p{
    color:#77686c;
    font-size:13px;
    line-height:1.65;
}

.about-page .marquee-strip{
    padding:13px 0;
}

.about-why{
    position:relative;
    padding:125px 20px 130px;
    color:#fff;
    overflow:hidden;
    background:
        radial-gradient(750px 430px at 12% 12%, rgba(200,35,51,0.22), transparent 64%),
        radial-gradient(650px 400px at 92% 88%, rgba(255,193,7,0.08), transparent 66%),
        #150b0e;
}

.about-why::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:0.10;
    background-image:
        linear-gradient(rgba(255,255,255,0.10) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.10) 1px, transparent 1px);
    background-size:75px 75px;
}

.about-why .container{
    position:relative;
    z-index:1;
}

.about-section-kicker--light{
    color:var(--brand-gold-light);
}

.about-section-kicker--light span{
    background:var(--brand-gold-light);
}

.about-why__intro{
    display:grid;
    grid-template-columns:minmax(0, 0.9fr) minmax(300px, 0.62fr);
    align-items:end;
    gap:120px;
    margin-bottom:65px;
}

.about-why__intro h2{
    color:#fff;
}

.about-why__intro > p{
    color:rgba(255,255,255,0.62);
    border-left-color:var(--brand-gold-light);
}

.about-why__grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:15px;
}

.about-why__grid article{
    position:relative;
    min-height:310px;
    padding:30px 26px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.10);
    border-radius:18px;
    background:rgba(255,255,255,0.045);
    backdrop-filter:blur(8px);
    transition:transform 0.28s ease, background 0.28s ease, border-color 0.28s ease;
}

.about-why__grid article::after{
    content:"";
    position:absolute;
    right:-55px;
    bottom:-70px;
    width:145px;
    height:145px;
    border:1px solid rgba(255,193,7,0.11);
    border-radius:50%;
}

.about-why__grid article:hover{
    transform:translateY(-8px);
    border-color:rgba(255,193,7,0.30);
    background:rgba(255,255,255,0.075);
}

.about-why__number{
    position:absolute;
    top:22px;
    right:22px;
    color:rgba(255,255,255,0.11);
    font-family:'Manrope','Sora',sans-serif;
    font-size:15px;
    font-weight:800;
}

.about-why__icon{
    width:52px;
    height:52px;
    margin-bottom:48px;
    display:grid;
    place-items:center;
    color:var(--brand-gold-light);
    border:1px solid rgba(255,193,7,0.22);
    border-radius:14px;
    background:rgba(255,193,7,0.09);
    font-size:19px;
}

.about-why__grid h3{
    margin-bottom:12px;
    color:#fff;
    font-family:'Manrope','Sora',sans-serif;
    font-size:20px;
    letter-spacing:-0.022em;
}

.about-why__grid p{
    color:rgba(255,255,255,0.58);
    font-size:13px;
    line-height:1.7;
}

.about-services{
    padding:130px 20px 140px;
    background:
        radial-gradient(900px 470px at 100% 0%, rgba(200,35,51,0.055), transparent 70%),
        #fffdf9;
}

.about-section-heading--center{
    grid-template-columns:1fr;
    justify-items:center;
    gap:22px;
    text-align:center;
}

.about-section-heading--center .about-section-kicker{
    justify-content:center;
}

.about-section-heading--center > p{
    max-width:650px;
    padding-left:0;
    border-left:0;
}

.about-services__grid{
    display:grid;
    grid-template-columns:repeat(6, minmax(0, 1fr));
    grid-auto-rows:300px;
    gap:16px;
}

.about-service-card{
    position:relative;
    grid-column:span 2;
    overflow:hidden;
    color:#fff;
    border-radius:20px;
    box-shadow:0 16px 40px rgba(56,27,33,0.11);
}

.about-service-card--wide{
    grid-column:span 3;
}

.about-service-card img,
.about-service-card__shade{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.about-service-card img{
    object-fit:cover;
    transition:transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.about-service-card__shade{
    background:linear-gradient(180deg, transparent 38%, rgba(17,6,9,0.85) 100%);
}

.about-service-card__copy{
    position:absolute;
    right:25px;
    bottom:23px;
    left:25px;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:end;
    gap:4px 12px;
}

.about-service-card__copy small{
    grid-column:1;
    color:var(--brand-gold-light);
    font-size:9px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.about-service-card__copy strong{
    grid-column:1;
    font-family:'Manrope','Sora',sans-serif;
    font-size:21px;
}

.about-service-card__copy i{
    grid-column:2;
    grid-row:1 / span 2;
    width:38px;
    height:38px;
    display:grid;
    place-items:center;
    align-self:center;
    color:#fff;
    border:1px solid rgba(255,255,255,0.34);
    border-radius:50%;
    background:rgba(255,255,255,0.10);
    transition:background 0.25s ease, color 0.25s ease, transform 0.25s ease;
}

.about-service-card:hover img{
    transform:scale(1.06);
}

.about-service-card:hover .about-service-card__copy i{
    color:#1a0d10;
    background:var(--brand-gold-light);
    transform:rotate(5deg);
}

.about-final-cta{
    padding:0 20px 130px;
    background:#fffdf9;
}

.about-final-cta__box{
    position:relative;
    min-height:465px;
    padding:70px 70px;
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(400px, 0.75fr);
    align-items:center;
    gap:45px;
    overflow:hidden;
    color:#fff;
    border-radius:30px;
    background:
        radial-gradient(520px 330px at 84% 30%, rgba(255,193,7,0.14), transparent 72%),
        linear-gradient(135deg, #8d1523, #4f0d17 58%, #1b0c10);
    box-shadow:0 28px 75px rgba(105,17,30,0.23);
}

.about-final-cta__box::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:0.11;
    background-image:radial-gradient(rgba(255,255,255,0.8) 1px, transparent 1px);
    background-size:17px 17px;
    mask-image:linear-gradient(90deg, transparent 35%, #000);
}

.about-final-cta__copy,
.about-final-cta__visual{
    position:relative;
    z-index:1;
}

.about-final-cta h2{
    color:#fff;
}

.about-final-cta h2 span{
    color:var(--brand-gold-light);
}

.about-final-cta__copy > p:not(.about-section-kicker){
    max-width:630px;
    margin-top:22px;
    color:rgba(255,255,255,0.70);
    font-size:15px;
    line-height:1.75;
}

.about-final-cta__actions{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:25px;
    margin-top:31px;
}

.about-btn--gold{
    color:#281519;
    background:linear-gradient(135deg, #ffe27a, var(--brand-gold-light));
    box-shadow:0 14px 34px rgba(255,193,7,0.24);
}

.about-final-cta__phone{
    display:flex;
    align-items:center;
    gap:11px;
    color:#fff;
    text-decoration:none;
}

.about-final-cta__phone > i{
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    color:var(--brand-gold-light);
    border:1px solid rgba(255,255,255,0.19);
    border-radius:50%;
    background:rgba(255,255,255,0.08);
}

.about-final-cta__phone span,
.about-final-cta__phone small,
.about-final-cta__phone strong{
    display:block;
}

.about-final-cta__phone small{
    margin-bottom:3px;
    color:rgba(255,255,255,0.60);
    font-size:9px;
    font-weight:700;
    letter-spacing:0.12em;
    text-transform:uppercase;
}

.about-final-cta__phone strong{
    font-size:14px;
}

.about-final-cta__visual{
    min-height:320px;
}

.about-final-cta__circle{
    position:absolute;
    top:50%;
    left:50%;
    width:340px;
    height:340px;
    border:1px solid rgba(255,193,7,0.28);
    border-radius:50%;
    box-shadow:
        0 0 0 48px rgba(255,193,7,0.045),
        0 0 0 96px rgba(255,255,255,0.025);
    transform:translate(-50%, -50%);
}

.about-final-cta__visual > img{
    position:absolute;
    z-index:2;
    top:50%;
    left:50%;
    width:128%;
    max-width:none;
    height:auto;
    filter:drop-shadow(0 30px 25px rgba(0,0,0,0.46));
    transform:translate(-51%, -52%);
    animation:aboutCarFloat 3.4s ease-in-out infinite;
}

@keyframes aboutCarFloat{
    50%{ transform:translate(-51%, -55%); }
}

.about-final-cta__route{
    position:absolute;
    right:0;
    bottom:8px;
    z-index:3;
    padding:12px 16px;
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid rgba(255,255,255,0.15);
    border-radius:13px;
    background:rgba(24,9,13,0.74);
    box-shadow:0 15px 35px rgba(0,0,0,0.22);
    backdrop-filter:blur(12px);
}

.about-final-cta__route > i{
    color:var(--brand-gold-light);
}

.about-final-cta__route span,
.about-final-cta__route small,
.about-final-cta__route strong{
    display:block;
}

.about-final-cta__route small{
    color:rgba(255,255,255,0.55);
    font-size:8px;
    font-weight:700;
    text-transform:uppercase;
}

.about-final-cta__route strong{
    margin-top:3px;
    color:#fff;
    font-size:11px;
}

@media(max-width:1100px){
    .about-hero__layout{
        grid-template-columns:minmax(0, 1fr) 280px;
        gap:35px;
    }

    .about-story-layout{
        gap:60px;
    }

    .about-story-visual{
        min-height:530px;
    }

    .about-promise article{
        padding:27px 19px;
    }

    .about-why__intro{
        gap:70px;
    }

    .about-why__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .about-why__grid article{
        min-height:260px;
    }

    .about-final-cta__box{
        padding:60px 50px;
        grid-template-columns:minmax(0, 1fr) minmax(340px, 0.68fr);
    }
}

@media(max-width:900px){
    .about-hero{
        min-height:auto;
    }

    .about-hero__layout{
        grid-template-columns:1fr;
        gap:30px;
        padding:65px 0;
    }

    .about-hero__card{
        max-width:650px;
    }

    .about-hero__quick{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }

    .about-hero__quick > div{
        align-items:flex-start;
    }

    .about-story-layout{
        grid-template-columns:1fr;
        gap:70px;
    }

    .about-story-visual{
        min-height:600px;
    }

    .about-story-copy{
        max-width:760px;
    }

    .about-promise__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .about-promise article:nth-child(2){
        border-right:0;
    }

    .about-promise article:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,0.09);
    }

    .about-section-heading,
    .about-why__intro{
        grid-template-columns:1fr;
        align-items:start;
        gap:25px;
    }

    .about-section-heading > p,
    .about-why__intro > p{
        max-width:720px;
    }

    .about-services__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-auto-rows:280px;
    }

    .about-service-card,
    .about-service-card--wide{
        grid-column:span 1;
    }

    .about-final-cta__box{
        grid-template-columns:1fr;
        padding-bottom:30px;
    }

    .about-final-cta__visual{
        min-height:300px;
    }

    .about-final-cta__visual > img{
        width:610px;
    }
}

@media(max-width:768px){
    .about-page nav a.is-current::after{
        display:none;
    }

    .about-hero{
        margin-top:98px;
        padding-right:18px;
        padding-left:18px;
    }

    .about-hero__image{
        object-position:66% center;
    }

    .about-hero__shade{
        background:
            linear-gradient(90deg, rgba(22,6,10,0.94) 0%, rgba(29,8,13,0.82) 55%, rgba(15,8,9,0.45) 100%),
            linear-gradient(180deg, rgba(15,7,9,0.22), rgba(15,7,9,0.60));
    }

    .about-hero__layout{
        padding:50px 0 56px;
    }

    .about-breadcrumb{
        margin-bottom:29px;
    }

    .about-hero h1{
        font-size:clamp(43px, 9vw, 61px);
    }

    .about-hero__lead{
        font-size:16px;
    }

    .about-story-section,
    .about-journey,
    .about-why,
    .about-services{
        padding:90px 18px;
    }

    .about-final-cta{
        padding:0 18px 90px;
    }

    .about-story-visual{
        min-height:525px;
    }

    .about-story-visual__main{
        right:40px;
        bottom:48px;
    }

    .about-story-visual__small{
        width:49%;
        height:210px;
    }

    .about-story-visual__badge{
        left:-12px;
    }

    .about-story-copy h2,
    .about-section-heading h2,
    .about-why__intro h2,
    .about-final-cta h2{
        font-size:clamp(37px, 7vw, 49px);
    }

    .about-section-heading{
        margin-bottom:50px;
    }

    .about-timeline::before{
        left:23px;
    }

    .about-timeline article{
        grid-template-columns:48px minmax(0, 1fr);
        align-items:start;
        min-height:0;
        margin-bottom:23px;
    }

    .about-timeline article:last-child{
        margin-bottom:0;
    }

    .about-timeline__year{
        grid-column:2;
        grid-row:1;
        margin:0 0 9px 20px;
        font-size:18px;
        text-align:left;
    }

    .about-timeline__marker{
        grid-column:1;
        grid-row:1 / span 2;
        width:46px;
        height:46px;
    }

    .about-timeline__content{
        grid-column:2;
        grid-row:2;
        margin-left:20px;
        padding:23px;
    }

    .about-final-cta__box{
        padding:52px 32px 25px;
        border-radius:24px;
    }
}

@media(max-width:560px){
    .about-hero__layout{
        gap:24px;
    }

    .about-breadcrumb{
        font-size:11px;
    }

    .about-eyebrow,
    .about-section-kicker{
        font-size:10px;
        letter-spacing:0.13em;
    }

    .about-hero h1{
        font-size:40px;
        letter-spacing:-0.045em;
    }

    .about-hero__lead{
        margin-top:20px;
        font-size:14px;
        line-height:1.65;
    }

    .about-hero__actions{
        display:grid;
        margin-top:27px;
    }

    .about-btn{
        width:100%;
    }

    .about-hero__card{
        padding:19px;
    }

    .about-hero__card > strong{
        font-size:17px;
    }

    .about-hero__quick{
        grid-template-columns:1fr;
    }

    .about-story-section,
    .about-journey,
    .about-why,
    .about-services{
        padding:72px 14px;
    }

    .about-story-layout{
        gap:52px;
    }

    .about-story-visual{
        min-height:390px;
    }

    .about-story-visual__main{
        inset:0 22px 42px 0;
        border-radius:21px;
    }

    .about-story-visual__small{
        width:50%;
        height:155px;
        border-radius:16px;
    }

    .about-story-visual__badge{
        top:20px;
        left:-4px;
        min-width:150px;
        padding:12px 14px;
    }

    .about-story-visual__dots{
        display:none;
    }

    .about-story-copy h2,
    .about-section-heading h2,
    .about-why__intro h2,
    .about-final-cta h2{
        font-size:34px;
    }

    .about-story-copy h2{
        font-size:clamp(26px, 8vw, 30px);
        line-height:1.12;
    }

    .about-story-title__line{
        white-space:nowrap;
    }

    .about-story-copy__lead{
        margin-top:21px !important;
        font-size:15px !important;
    }

    .about-promise{
        padding:0 14px;
    }

    .about-promise__grid{
        grid-template-columns:1fr;
    }

    .about-promise article{
        min-height:130px;
        padding:25px 22px;
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,0.09);
    }

    .about-promise article:last-child{
        border-bottom:0;
    }

    .about-section-heading,
    .about-why__intro{
        margin-bottom:42px;
    }

    .about-section-heading > p,
    .about-why__intro > p{
        font-size:13px;
    }

    .about-timeline__content{
        margin-left:11px;
        padding:20px 18px;
    }

    .about-timeline__content h3{
        font-size:17px;
    }

    .about-timeline__year{
        margin-left:11px;
    }

    .about-why__grid{
        grid-template-columns:1fr;
    }

    .about-why__grid article{
        min-height:245px;
    }

    .about-services__grid{
        grid-template-columns:1fr;
        grid-auto-rows:250px;
    }

    .about-final-cta{
        padding:0 14px 72px;
    }

    .about-final-cta__box{
        min-height:0;
        padding:43px 21px 20px;
    }

    .about-final-cta__actions{
        align-items:stretch;
        flex-direction:column;
    }

    .about-final-cta__phone{
        justify-content:center;
    }

    .about-final-cta__visual{
        min-height:230px;
    }

    .about-final-cta__circle{
        width:230px;
        height:230px;
    }

    .about-final-cta__visual > img{
        width:420px;
    }

    .about-final-cta__route{
        right:50%;
        bottom:0;
        transform:translateX(50%);
        white-space:nowrap;
    }
}

@media(prefers-reduced-motion:reduce){
    .about-live-dot,
    .about-final-cta__visual > img{
        animation:none;
    }

    .about-service-card img,
    .about-why__grid article,
    .about-timeline__content,
    .about-btn{
        transition:none;
    }
}

/* ABOUT JOURNEY — SCROLL MOTION */

.about-journey{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
        radial-gradient(110% 36% at 50% 112%, rgba(204,222,229,0.58) 0 58%, transparent 58.5%),
        radial-gradient(105% 31% at 50% 105%, rgba(222,235,240,0.72) 0 64%, transparent 64.5%),
        linear-gradient(180deg, #f9fbfc 0%, #eef5f7 28%, #e8f1f4 100%);
}

.about-journey::before{
    content:"";
    position:absolute;
    z-index:-2;
    inset:0;
    opacity:0.18;
    background-image:radial-gradient(rgba(103,137,149,0.28) 1px, transparent 1px);
    background-size:26px 26px;
    mask-image:linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
    animation:aboutJourneyGrid 18s linear infinite;
}

.about-journey::after{
    content:"";
    position:absolute;
    z-index:-1;
    right:auto;
    bottom:-520px;
    left:50%;
    width:145%;
    height:650px;
    border:1px solid rgba(116,154,168,0.16);
    border-radius:50%;
    background:rgba(228,239,243,0.48);
    box-shadow:0 -48px 0 rgba(239,246,248,0.38);
    transform:translateX(-50%);
    animation:aboutJourneyOrbit 9s ease-in-out infinite;
}

@keyframes aboutJourneyGrid{
    to{ background-position:52px 26px; }
}

@keyframes aboutJourneyOrbit{
    50%{ transform:translate(-50%, -14px) scale(1.015); }
}

.about-journey > .container{
    position:relative;
    z-index:1;
}

.about-journey .about-section-heading{
    position:relative;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 0.72fr);
    align-items:center;
    gap:90px;
}

.about-journey .about-section-heading h2{
    max-width:none;
    margin-top:16px;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(34px, 3vw, 42px);
    font-weight:700;
    letter-spacing:-0.038em;
    line-height:1.08;
    white-space:nowrap;
}

.about-journey .about-section-heading h2 span{
    color:var(--brand-red);
}

.about-journey .about-section-kicker span{
    animation:aboutJourneyKicker 2.4s ease-in-out infinite;
}

@keyframes aboutJourneyKicker{
    50%{
        opacity:0.72;
        box-shadow:0 0 14px rgba(200,35,51,0.28);
    }
}

.about-journey__summary{
    display:grid;
    gap:15px;
}

.about-journey__summary > p{
    padding-left:21px;
    color:#75666a;
    border-left:3px solid var(--brand-red);
    font-size:14px;
    line-height:1.75;
}

.about-journey__live{
    width:max-content;
    max-width:100%;
    padding:9px 13px;
    display:flex;
    align-items:center;
    gap:9px;
    color:#6f5e62;
    border:1px solid rgba(200,35,51,0.11);
    border-radius:999px;
    background:rgba(255,255,255,0.72);
    box-shadow:0 8px 24px rgba(55,26,32,0.055);
    font-size:9px;
    font-weight:800;
    letter-spacing:0.10em;
    text-transform:uppercase;
}

.about-journey__live > span{
    width:8px;
    height:8px;
    flex:0 0 auto;
    border-radius:50%;
    background:#38bf75;
    box-shadow:0 0 0 5px rgba(56,191,117,0.12);
    animation:aboutJourneyLive 1.7s ease-in-out infinite;
}

@keyframes aboutJourneyLive{
    50%{ box-shadow:0 0 0 8px rgba(56,191,117,0.03); }
}

.about-timeline{
    --journey-progress:0%;
}

.about-timeline::before{
    width:2px;
    overflow:hidden;
    background:
        repeating-linear-gradient(
            180deg,
            rgba(200,35,51,0.20) 0 8px,
            transparent 8px 15px
        );
}

.about-timeline__route{
    position:absolute;
    z-index:3;
    top:42px;
    bottom:42px;
    left:198px;
    width:2px;
    pointer-events:none;
}

.about-timeline__route-fill{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:var(--journey-progress);
    border-radius:999px;
    background:linear-gradient(180deg, var(--brand-gold-light), var(--brand-red));
    box-shadow:0 0 13px rgba(200,35,51,0.32);
}

.about-timeline__vehicle{
    position:absolute;
    top:var(--journey-progress);
    left:50%;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    color:#fff;
    border:4px solid #fffdf9;
    border-radius:50%;
    background:linear-gradient(135deg, #e33143, var(--brand-red-dark));
    box-shadow:
        0 0 0 1px rgba(200,35,51,0.18),
        0 10px 24px rgba(115,15,28,0.28);
    font-size:11px;
    transform:translate(-50%, -50%);
    transition:top 0.16s linear;
}

.about-timeline__vehicle::after{
    content:"";
    position:absolute;
    inset:-7px;
    border:1px solid rgba(200,35,51,0.20);
    border-radius:50%;
    animation:aboutJourneyVehicleRing 1.8s ease-out infinite;
}

@keyframes aboutJourneyVehicleRing{
    75%,100%{
        opacity:0;
        transform:scale(1.55);
    }
}

.about-timeline article{
    position:relative;
}

.about-timeline__year,
.about-timeline__marker,
.about-timeline__content{
    transition:
        color 0.35s ease,
        background 0.35s ease,
        border-color 0.35s ease,
        box-shadow 0.35s ease,
        transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.about-timeline__year{
    position:relative;
}

.about-timeline__year::after{
    content:"";
    position:absolute;
    right:-17px;
    top:50%;
    width:0;
    height:2px;
    border-radius:999px;
    background:var(--brand-red);
    transform:translateY(-50%);
    transition:width 0.35s ease;
}

.about-timeline__marker{
    overflow:visible;
}

.about-timeline__marker::before{
    content:"";
    position:absolute;
    inset:-5px;
    border:1px solid rgba(200,35,51,0.16);
    border-radius:50%;
    transform:scale(0.82);
    transition:transform 0.35s ease, opacity 0.35s ease;
}

.about-timeline__content{
    position:relative;
    overflow:hidden;
    background:
        linear-gradient(110deg, rgba(255,255,255,1), rgba(255,252,248,0.94)),
        #fff;
}

.about-timeline__content::before{
    content:"";
    position:absolute;
    top:18px;
    bottom:18px;
    left:0;
    width:3px;
    border-radius:0 999px 999px 0;
    background:linear-gradient(180deg, var(--brand-gold-light), var(--brand-red));
    opacity:0;
    transform:scaleY(0.35);
    transition:opacity 0.35s ease, transform 0.35s ease;
}

.about-timeline__content::after{
    content:"";
    position:absolute;
    top:0;
    left:-45%;
    width:30%;
    height:100%;
    opacity:0;
    background:linear-gradient(90deg, transparent, rgba(255,255,255,0.92), transparent);
    transform:skewX(-18deg);
    pointer-events:none;
}

.about-timeline article.is-current .about-timeline__year{
    color:var(--brand-red);
    transform:translateX(-4px);
}

.about-timeline article.is-current .about-timeline__year::after{
    width:12px;
}

.about-timeline article.is-current .about-timeline__marker{
    color:#271519;
    background:var(--brand-gold-light);
    box-shadow:
        0 0 0 1px rgba(255,193,7,0.38),
        0 0 0 8px rgba(255,193,7,0.09),
        0 12px 26px rgba(115,15,28,0.15);
    transform:scale(1.08);
}

.about-timeline article.is-current .about-timeline__marker::before{
    opacity:0;
    transform:scale(1.65);
}

.about-timeline article.is-current .about-timeline__content{
    border-color:rgba(200,35,51,0.23);
    box-shadow:
        0 24px 65px rgba(64,29,36,0.12),
        0 0 0 1px rgba(255,193,7,0.06);
    transform:translateX(8px);
}

.about-timeline article.is-current .about-timeline__content::before{
    opacity:1;
    transform:scaleY(1);
}

.about-timeline article.is-current .about-timeline__content::after{
    animation:aboutJourneyCardSweep 0.9s ease-out;
}

@keyframes aboutJourneyCardSweep{
    0%{ left:-45%; opacity:0; }
    30%{ opacity:0.72; }
    100%{ left:120%; opacity:0; }
}

.journey-motion-ready .about-section-heading > div,
.journey-motion-ready .about-journey__summary{
    opacity:0;
    transform:translateY(22px);
}

.journey-motion-ready.journey-section-visible .about-section-heading > div,
.journey-motion-ready.journey-section-visible .about-journey__summary{
    animation:aboutJourneyHeadingIn 0.75s 0.08s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.journey-motion-ready.journey-section-visible .about-journey__summary{
    animation-delay:0.2s;
}

@keyframes aboutJourneyHeadingIn{
    to{
        opacity:1;
        transform:translateY(0);
    }
}

.journey-motion-ready .about-timeline article{
    opacity:0;
    transform:translateY(34px) scale(0.985);
    transition:
        opacity 0.65s var(--journey-delay) ease,
        transform 0.65s var(--journey-delay) cubic-bezier(0.22, 1, 0.36, 1);
}

.journey-motion-ready .about-timeline article.is-visible{
    opacity:1;
    transform:translateY(0) scale(1);
}

@media(max-width:768px){
    .about-journey .about-section-heading{
        grid-template-columns:1fr;
        align-items:start;
        gap:25px;
    }

    .about-journey__route{
        top:23px;
        bottom:23px;
        left:23px;
    }

    .about-timeline__vehicle{
        width:31px;
        height:31px;
        border-width:4px;
        font-size:10px;
    }

    .about-timeline__year::after{
        right:auto;
        left:-17px;
    }

    .about-timeline article.is-current .about-timeline__year{
        transform:translateX(4px);
    }

    .about-timeline article.is-current .about-timeline__content{
        transform:translateX(4px);
    }
}

@media(max-width:560px){
    .about-journey .about-section-heading h2{
        font-size:clamp(22px, 7vw, 30px);
        letter-spacing:-0.032em;
    }

    .about-journey__summary > p{
        padding-left:15px;
        font-size:13px;
    }

    .about-journey__live{
        padding:8px 11px;
        font-size:8px;
        letter-spacing:0.07em;
    }

    .about-timeline__route{
        left:23px;
    }
}

@media(prefers-reduced-motion:reduce){
    .about-journey::before,
    .about-journey::after,
    .about-journey .about-section-kicker span,
    .about-journey__live > span,
    .about-timeline__vehicle::after,
    .about-timeline article.is-current .about-timeline__content::after{
        animation:none;
    }

    .journey-motion-ready .about-section-heading > div,
    .journey-motion-ready .about-journey__summary,
    .journey-motion-ready .about-timeline article{
        opacity:1;
        transform:none;
        animation:none;
        transition:none;
    }

    .about-timeline__vehicle{
        transition:none;
    }
}

/* ABOUT WHY — COMPACT CLEAN LAYOUT */

.about-why{
    padding:88px 20px 94px;
}

.about-why__intro{
    grid-template-columns:minmax(0, 1fr) minmax(360px, 0.72fr);
    align-items:center;
    gap:85px;
    margin-bottom:43px;
}

.about-why__intro h2{
    margin-top:15px;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(32px, 3vw, 42px);
    font-weight:700;
    letter-spacing:-0.04em;
    line-height:1.08;
    white-space:nowrap;
}

.about-why__intro > p{
    padding-left:18px;
    font-size:13px;
    line-height:1.68;
}

.about-why__grid{
    gap:12px;
}

.about-why__grid article{
    min-height:232px;
    padding:23px 22px;
    border-color:rgba(255,255,255,0.085);
    border-radius:15px;
    background:rgba(255,255,255,0.035);
}

.about-why__grid article::after{
    right:-40px;
    bottom:-50px;
    width:100px;
    height:100px;
    opacity:0.62;
}

.about-why__number{
    top:18px;
    right:18px;
    font-size:12px;
}

.about-why__icon{
    width:44px;
    height:44px;
    margin-bottom:26px;
    border-radius:12px;
    font-size:16px;
}

.about-why__grid h3{
    margin-bottom:9px;
    font-size:17px;
    letter-spacing:-0.018em;
}

.about-why__grid p{
    font-size:12px;
    line-height:1.62;
}

.about-why__grid article:hover{
    transform:translateY(-5px);
}

@media(max-width:1100px){
    .about-why__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .about-why__grid article{
        min-height:220px;
    }
}

@media(max-width:900px){
    .about-why__intro{
        grid-template-columns:1fr;
        align-items:start;
        gap:22px;
    }

    .about-why__intro > p{
        max-width:680px;
    }
}

@media(max-width:560px){
    .about-why{
        padding:68px 14px 72px;
    }

    .about-why__intro{
        margin-bottom:34px;
    }

    .about-why__intro h2{
        font-size:clamp(25px, 7.7vw, 32px);
        white-space:normal;
    }

    .about-why__intro > p{
        padding-left:14px;
        font-size:12px;
    }

    .about-why__grid{
        grid-template-columns:1fr;
        gap:10px;
    }

    .about-why__grid article{
        min-height:0;
        padding:22px 20px;
    }

    .about-why__icon{
        margin-bottom:22px;
    }
}

/* ABOUT SERVICES — COMPACT CENTERED GRID */

.about-services{
    padding:88px 20px 100px;
    background:
        radial-gradient(600px 280px at 50% 0%, rgba(200,35,51,0.035), transparent 74%),
        #fffdf9;
}

.about-services .about-section-heading--center{
    max-width:820px;
    margin:0 auto 46px;
    display:grid;
    grid-template-columns:1fr;
    justify-items:center;
    gap:15px;
    text-align:center;
}

.about-services .about-section-heading--center h2{
    margin-top:14px;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(32px, 3vw, 42px);
    font-weight:700;
    letter-spacing:-0.04em;
    line-height:1.1;
}

.about-services .about-section-heading--center > p{
    max-width:590px;
    margin:0 auto;
    padding:0;
    color:#75666a;
    border:0;
    font-size:13px;
    line-height:1.7;
}

.about-services__grid{
    width:min(100%, 1120px);
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    grid-auto-rows:220px;
    gap:14px;
}

.about-service-card,
.about-service-card--wide{
    grid-column:auto;
    border:1px solid rgba(62,34,40,0.08);
    border-radius:15px;
    box-shadow:0 12px 30px rgba(56,27,33,0.085);
}

.about-service-card__shade{
    background:
        linear-gradient(180deg, rgba(17,6,9,0.02) 30%, rgba(17,6,9,0.80) 100%);
}

.about-service-card__copy{
    right:18px;
    bottom:17px;
    left:18px;
    gap:3px 10px;
}

.about-service-card__copy small{
    font-size:8px;
    letter-spacing:0.12em;
}

.about-service-card__copy strong{
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:16px;
    font-weight:700;
    letter-spacing:-0.02em;
}

.about-service-card__copy i{
    width:33px;
    height:33px;
    font-size:12px;
}

.about-service-card:nth-child(3) img{
    object-position:center 40%;
}

.about-service-card:hover{
    box-shadow:0 17px 38px rgba(56,27,33,0.13);
    transform:translateY(-4px);
}

.about-service-card:hover img{
    transform:scale(1.035);
}

.about-service-card{
    transition:transform 0.28s ease, box-shadow 0.28s ease;
}

@media(max-width:1000px){
    .about-services__grid{
        max-width:760px;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-auto-rows:220px;
    }
}

@media(max-width:768px){
    .about-services{
        padding:70px 18px 78px;
    }

    .about-services .about-section-heading--center{
        margin-bottom:38px;
    }

    .about-services .about-section-heading--center h2{
        font-size:clamp(30px, 6vw, 37px);
    }
}

@media(max-width:560px){
    .about-services{
        padding:62px 14px 70px;
    }

    .about-services .about-section-heading--center{
        gap:12px;
        margin-bottom:32px;
    }

    .about-services .about-section-heading--center h2{
        font-size:28px;
    }

    .about-services .about-section-heading--center > p{
        font-size:12px;
    }

    .about-services__grid{
        grid-template-columns:1fr;
        grid-auto-rows:210px;
        gap:11px;
    }
}

/* ABOUT FINAL CTA — COMPACT CENTERED BANNER */

.about-final-cta{
    padding:0 20px 94px;
}

.about-final-cta__box{
    width:min(100%, 1120px);
    min-height:330px;
    margin:0 auto;
    padding:44px 50px;
    grid-template-columns:minmax(0, 1.08fr) minmax(320px, 0.72fr);
    gap:28px;
    border-radius:22px;
    box-shadow:0 20px 55px rgba(105,17,30,0.18);
}

.about-final-cta__box::before{
    opacity:0.065;
}

.about-final-cta__copy{
    max-width:620px;
}

.about-final-cta__copy .about-section-kicker{
    font-size:10px;
    letter-spacing:0.14em;
}

.about-final-cta h2{
    margin-top:15px;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(32px, 3.15vw, 42px);
    font-weight:700;
    letter-spacing:-0.042em;
    line-height:1.08;
    white-space:nowrap;
}

.about-final-cta__copy > p:not(.about-section-kicker){
    max-width:530px;
    margin-top:16px;
    font-size:13px;
    line-height:1.65;
}

.about-final-cta__actions{
    gap:18px;
    margin-top:24px;
}

.about-final-cta .about-btn{
    min-height:48px;
    padding:0 20px;
    border-radius:11px;
    font-size:12px;
}

.about-final-cta__phone{
    gap:9px;
}

.about-final-cta__phone > i{
    width:39px;
    height:39px;
    font-size:13px;
}

.about-final-cta__phone strong{
    font-size:12px;
}

.about-final-cta__visual{
    min-height:235px;
}

.about-final-cta__circle{
    width:245px;
    height:245px;
    box-shadow:
        0 0 0 34px rgba(255,193,7,0.035),
        0 0 0 68px rgba(255,255,255,0.018);
}

.about-final-cta__visual > img{
    width:108%;
    max-width:470px;
}

.about-final-cta__route{
    right:4px;
    bottom:5px;
    padding:10px 13px;
    border-radius:11px;
}

@media(max-width:900px){
    .about-final-cta__box{
        grid-template-columns:minmax(0, 1fr) minmax(270px, 0.62fr);
        padding:40px 36px;
    }

    .about-final-cta h2{
        font-size:clamp(28px, 4vw, 36px);
    }

    .about-final-cta__visual > img{
        width:112%;
    }
}

@media(max-width:720px){
    .about-final-cta{
        padding:0 18px 76px;
    }

    .about-final-cta__box{
        grid-template-columns:1fr;
        gap:12px;
        padding:38px 28px 22px;
        text-align:center;
    }

    .about-final-cta__copy{
        max-width:none;
    }

    .about-final-cta__copy .about-section-kicker{
        justify-content:center;
    }

    .about-final-cta h2{
        white-space:normal;
    }

    .about-final-cta__copy > p:not(.about-section-kicker){
        margin-right:auto;
        margin-left:auto;
    }

    .about-final-cta__actions{
        justify-content:center;
    }

    .about-final-cta__visual{
        min-height:210px;
    }

    .about-final-cta__visual > img{
        width:420px;
        max-width:none;
    }
}

@media(max-width:480px){
    .about-final-cta{
        padding:0 14px 68px;
    }

    .about-final-cta__box{
        padding:34px 20px 18px;
        border-radius:18px;
    }

    .about-final-cta h2{
        font-size:27px;
    }

    .about-final-cta__actions{
        gap:14px;
    }

    .about-final-cta__visual{
        min-height:190px;
    }

    .about-final-cta__visual > img{
        width:360px;
    }

    .about-final-cta__route{
        right:50%;
        transform:translateX(50%);
    }
}

/* FINAL CTA BUTTON — CLEAN SINGLE-SURFACE STYLE */

.about-final-cta .about-btn--gold{
    min-height:44px;
    padding:0 18px;
    gap:8px;
    color:#27191b;
    border:1px solid rgba(255,255,255,0.20);
    border-radius:9px;
    background:linear-gradient(135deg, #ffdc55 0%, #ffc107 100%);
    box-shadow:0 8px 20px rgba(84,35,0,0.18);
    font-size:11px;
    font-weight:700;
    letter-spacing:0;
}

.about-final-cta .about-btn--gold i{
    width:auto;
    height:auto;
    margin:0;
    padding:0;
    display:inline-block;
    color:#27191b;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    font-size:12px;
    line-height:1;
}

.about-final-cta .about-btn--gold:hover{
    color:#27191b;
    background:linear-gradient(135deg, #ffe16b 0%, #ffca1c 100%);
    box-shadow:0 11px 25px rgba(84,35,0,0.23);
    transform:translateY(-2px);
}

/* =========================================================
   ALL CARS PAGE — CLEAN FLEET CATALOGUE
   ========================================================= */

.all-cars-page{
    background:#fffdf9;
}

.all-cars-page nav a.is-current{
    color:var(--brand-red);
}

.all-cars-page nav a.is-current::after{
    width:100%;
}

.all-cars-page .page-breadcrumb{
    background:
        linear-gradient(90deg, rgba(25,8,12,0.28), rgba(25,8,12,0.14)),
        url("assets/img/sliders/slider3.jpeg") center 48% / cover no-repeat;
}

.all-cars-page main{
    overflow:hidden;
}

.allcars-catalog{
    padding:86px 20px 96px;
    background:
        radial-gradient(650px 300px at 95% 0%, rgba(200,35,51,0.045), transparent 74%),
        #fffdf9;
}

.allcars-heading{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 0.62fr);
    align-items:end;
    gap:90px;
    margin-bottom:42px;
}

.allcars-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--brand-red);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.16em;
    text-transform:uppercase;
}

.allcars-kicker span{
    width:29px;
    height:3px;
    border-radius:999px;
    background:var(--brand-red);
}

.allcars-heading h2{
    margin-top:14px;
    color:#241619;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(34px, 3.4vw, 46px);
    font-weight:700;
    letter-spacing:-0.045em;
    line-height:1.08;
}

.allcars-heading > p{
    padding-left:18px;
    color:#75666a;
    border-left:3px solid var(--brand-red);
    font-size:13px;
    line-height:1.72;
}

.allcars-toolbar{
    margin-bottom:22px;
    padding:9px 10px 9px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    border:1px solid rgba(68,39,45,0.10);
    border-radius:13px;
    background:#fff;
    box-shadow:0 8px 25px rgba(57,27,33,0.045);
}

.allcars-result strong,
.allcars-result small{
    display:block;
}

.allcars-result strong{
    color:#2a1a1d;
    font-size:12px;
}

.allcars-result strong span{
    color:var(--brand-red);
}

.allcars-result small{
    margin-top:2px;
    color:#948589;
    font-size:9px;
}

.allcars-filters{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:6px;
}

.allcars-filters button{
    min-height:35px;
    padding:0 15px;
    color:#65565a;
    border:1px solid transparent;
    border-radius:8px;
    background:transparent;
    font-family:'Inter',sans-serif;
    font-size:10px;
    font-weight:700;
    cursor:pointer;
    transition:color 0.22s ease, border-color 0.22s ease, background 0.22s ease, transform 0.22s ease;
}

.allcars-filters button:hover{
    color:var(--brand-red);
    border-color:rgba(200,35,51,0.13);
    background:rgba(200,35,51,0.045);
}

.allcars-filters button.is-active{
    color:#fff;
    border-color:var(--brand-red);
    background:var(--brand-red);
    box-shadow:0 7px 16px rgba(150,20,34,0.18);
}

.allcars-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:15px;
}

.allcars-card{
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(67,38,44,0.10);
    border-radius:15px;
    background:#fff;
    box-shadow:0 12px 32px rgba(60,29,35,0.06);
    transition:transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease;
}

.allcars-card:hover{
    transform:translateY(-5px);
    border-color:rgba(200,35,51,0.18);
    box-shadow:0 18px 42px rgba(60,29,35,0.11);
}

.allcars-card[hidden]{
    display:none;
}

.allcars-card.is-filtered-in{
    animation:allcarsCardIn 0.38s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes allcarsCardIn{
    from{ opacity:0; transform:translateY(12px) scale(0.985); }
    to{ opacity:1; transform:none; }
}

.allcars-card__media{
    position:relative;
    height:166px;
    overflow:hidden;
    background:#eef2f3;
}

.allcars-card__media::after{
    content:"";
    position:absolute;
    inset:auto 0 0;
    height:42%;
    background:linear-gradient(180deg, transparent, rgba(22,10,13,0.22));
    pointer-events:none;
}

.allcars-card__media img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.allcars-card:hover .allcars-card__media img{
    transform:scale(1.045);
}

.allcars-card:nth-child(4) .allcars-card__media img,
.allcars-card:nth-child(12) .allcars-card__media img{
    object-position:center 42%;
}

.allcars-card__type,
.allcars-card__tag{
    position:absolute;
    z-index:2;
    top:12px;
    padding:6px 9px;
    border-radius:7px;
    font-size:8px;
    font-weight:800;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.allcars-card__type{
    left:12px;
    color:#fff;
    background:rgba(28,13,17,0.78);
    backdrop-filter:blur(8px);
}

.allcars-card__tag{
    right:12px;
    display:flex;
    align-items:center;
    gap:5px;
    color:#301c0a;
    background:var(--brand-gold-light);
    box-shadow:0 6px 16px rgba(73,41,0,0.16);
}

.allcars-card__body{
    padding:17px;
}

.allcars-card__title{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.allcars-card__title small{
    display:block;
    margin-bottom:3px;
    color:#9a8a8e;
    font-size:8px;
    font-weight:700;
    letter-spacing:0.07em;
    text-transform:uppercase;
}

.allcars-card__title h3{
    color:#28191c;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:16px;
    font-weight:700;
    letter-spacing:-0.025em;
    line-height:1.2;
}

.allcars-card__title > span{
    min-width:39px;
    height:29px;
    padding:0 8px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-red);
    border:1px solid rgba(200,35,51,0.13);
    border-radius:8px;
    background:rgba(200,35,51,0.045);
    font-size:9px;
    font-weight:800;
}

.allcars-card__body > p{
    min-height:38px;
    margin-top:10px;
    color:#796a6e;
    font-size:11px;
    line-height:1.62;
}

.allcars-specs{
    margin:14px 0 0;
    padding:12px 0;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    list-style:none;
    border-top:1px solid rgba(69,38,45,0.08);
    border-bottom:1px solid rgba(69,38,45,0.08);
}

.allcars-specs li{
    min-width:0;
    display:flex;
    align-items:center;
    gap:7px;
    border-right:1px solid rgba(69,38,45,0.08);
}

.allcars-specs li:last-child{
    border-right:0;
    padding-left:8px;
}

.allcars-specs li:nth-child(2){
    padding-left:8px;
}

.allcars-specs i{
    flex:0 0 auto;
    color:var(--brand-red);
    font-size:11px;
}

.allcars-specs span,
.allcars-specs small,
.allcars-specs strong{
    display:block;
    min-width:0;
}

.allcars-specs small{
    color:#a29497;
    font-size:7px;
    font-weight:600;
}

.allcars-specs strong{
    margin-top:2px;
    overflow:hidden;
    color:#443438;
    font-size:8px;
    font-weight:800;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.allcars-card__footer{
    margin-top:13px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.allcars-available{
    display:flex;
    align-items:center;
    gap:6px;
    color:#77686c;
    font-size:8px;
    font-weight:700;
}

.allcars-available > i{
    width:7px;
    height:7px;
    flex:0 0 auto;
    border-radius:50%;
    background:#39bd73;
    box-shadow:0 0 0 4px rgba(57,189,115,0.10);
}

.allcars-card__footer > a{
    min-height:34px;
    padding:0 12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    color:#fff;
    border-radius:8px;
    background:linear-gradient(135deg, #d52b3b, var(--brand-red-dark));
    box-shadow:0 7px 16px rgba(135,19,31,0.16);
    font-size:9px;
    font-weight:800;
    text-decoration:none;
    transition:transform 0.22s ease, box-shadow 0.22s ease;
}

.allcars-card__footer > a:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 20px rgba(135,19,31,0.24);
}

.allcars-page .marquee-strip{
    padding:11px 0;
}

.allcars-assurance{
    padding:65px 20px;
    background:#fffdf9;
}

.allcars-assurance__grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    overflow:hidden;
    border:1px solid rgba(65,37,43,0.09);
    border-radius:15px;
    background:#fff;
    box-shadow:0 12px 36px rgba(58,27,34,0.055);
}

.allcars-assurance article{
    min-height:105px;
    padding:22px 24px;
    display:flex;
    align-items:center;
    gap:13px;
    border-right:1px solid rgba(65,37,43,0.08);
}

.allcars-assurance article:last-child{
    border-right:0;
}

.allcars-assurance article > i{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-red);
    border-radius:11px;
    background:rgba(200,35,51,0.07);
    font-size:14px;
}

.allcars-assurance h3{
    color:#302024;
    font-family:'Sora','Inter',sans-serif;
    font-size:12px;
}

.allcars-assurance p{
    margin-top:4px;
    color:#908085;
    font-size:9px;
}

.allcars-help{
    padding:0 20px 90px;
    background:#fffdf9;
}

.allcars-help__box{
    padding:27px 30px;
    display:grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    align-items:center;
    gap:22px;
    color:#fff;
    border-radius:17px;
    background:
        radial-gradient(360px 170px at 90% 0%, rgba(255,193,7,0.12), transparent 75%),
        linear-gradient(135deg, #6d111d, #250d12);
    box-shadow:0 17px 45px rgba(89,14,26,0.16);
}

.allcars-help__icon{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    color:#2b181b;
    border-radius:13px;
    background:var(--brand-gold-light);
    font-size:17px;
}

.allcars-help__copy > p{
    color:var(--brand-gold-light);
    font-size:8px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.allcars-help__copy h2{
    margin-top:5px;
    color:#fff;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:22px;
    font-weight:700;
    letter-spacing:-0.03em;
}

.allcars-help__copy > span{
    display:block;
    margin-top:6px;
    color:rgba(255,255,255,0.62);
    font-size:10px;
}

.allcars-help__actions{
    display:flex;
    align-items:center;
    gap:10px;
}

.allcars-help__actions a{
    min-height:40px;
    padding:0 15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border-radius:9px;
    font-size:9px;
    font-weight:800;
    text-decoration:none;
}

.allcars-help__whatsapp{
    color:#fff;
    background:#20b95d;
    box-shadow:0 8px 20px rgba(20,148,71,0.16);
}

.allcars-help__call{
    color:#fff;
    border:1px solid rgba(255,255,255,0.17);
    background:rgba(255,255,255,0.06);
}

@media(max-width:1100px){
    .allcars-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }

    .allcars-help__box{
        grid-template-columns:auto minmax(0, 1fr);
    }

    .allcars-help__actions{
        grid-column:2;
    }
}

@media(max-width:900px){
    .allcars-heading{
        grid-template-columns:1fr;
        align-items:start;
        gap:22px;
    }

    .allcars-heading > p{
        max-width:680px;
    }

    .allcars-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .allcars-assurance__grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .allcars-assurance article:nth-child(2){
        border-right:0;
    }

    .allcars-assurance article:nth-child(-n+2){
        border-bottom:1px solid rgba(65,37,43,0.08);
    }
}

@media(max-width:700px){
    .all-cars-page nav a.is-current::after{
        display:none;
    }

    .allcars-catalog{
        padding:70px 18px 78px;
    }

    .allcars-heading{
        margin-bottom:32px;
    }

    .allcars-heading h2{
        font-size:34px;
    }

    .allcars-toolbar{
        padding:12px;
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
    }

    .allcars-filters{
        width:100%;
        justify-content:flex-start;
    }

    .allcars-filters button{
        flex:1 1 auto;
    }

    .allcars-assurance{
        padding:52px 18px;
    }

    .allcars-help{
        padding:0 18px 75px;
    }

    .allcars-help__box{
        grid-template-columns:1fr;
        justify-items:center;
        gap:15px;
        text-align:center;
    }

    .allcars-help__actions{
        grid-column:auto;
        justify-content:center;
        flex-wrap:wrap;
    }
}

@media(max-width:520px){
    .allcars-catalog{
        padding:62px 14px 68px;
    }

    .allcars-heading h2{
        font-size:29px;
    }

    .allcars-heading > p{
        padding-left:14px;
        font-size:12px;
    }

    .allcars-grid{
        grid-template-columns:1fr;
        gap:12px;
    }

    .allcars-card__media{
        height:190px;
    }

    .allcars-assurance{
        padding:45px 14px;
    }

    .allcars-assurance__grid{
        grid-template-columns:1fr;
    }

    .allcars-assurance article,
    .allcars-assurance article:nth-child(2){
        min-height:90px;
        border-right:0;
        border-bottom:1px solid rgba(65,37,43,0.08);
    }

    .allcars-assurance article:last-child{
        border-bottom:0;
    }

    .allcars-help{
        padding:0 14px 68px;
    }

    .allcars-help__box{
        padding:25px 18px;
    }

    .allcars-help__copy h2{
        font-size:19px;
    }

    .allcars-help__actions{
        width:100%;
        display:grid;
    }
}

@media(prefers-reduced-motion:reduce){
    .allcars-card,
    .allcars-card__media img,
    .allcars-card__footer > a{
        transition:none;
    }

    .allcars-card.is-filtered-in{
        animation:none;
    }
}

/* ALL CARS — REFINED VEHICLE CARDS */

.allcars-card{
    position:relative;
    border-color:rgba(94,57,65,0.12);
    border-radius:16px;
    box-shadow:0 9px 28px rgba(57,27,33,0.065);
}

.allcars-card::after{
    content:"";
    position:absolute;
    right:18px;
    bottom:0;
    left:18px;
    height:2px;
    border-radius:999px 999px 0 0;
    background:linear-gradient(90deg, transparent, var(--brand-red), var(--brand-gold-light), transparent);
    opacity:0;
    transform:scaleX(0.45);
    transition:opacity 0.28s ease, transform 0.28s ease;
}

.allcars-card:hover::after{
    opacity:0.75;
    transform:scaleX(1);
}

.allcars-card:hover{
    transform:translateY(-4px);
    border-color:rgba(200,35,51,0.19);
    box-shadow:0 17px 38px rgba(57,27,33,0.105);
}

.allcars-card__media{
    height:170px;
    border-bottom:1px solid rgba(69,40,46,0.07);
    background:
        radial-gradient(260px 120px at 50% 75%, rgba(255,255,255,0.95), transparent 74%),
        linear-gradient(180deg, #f6f7f7, #eceff0);
}

.allcars-card__media::after{
    height:28%;
    opacity:0.52;
}

.allcars-card__type,
.allcars-card__tag{
    top:11px;
    padding:5px 8px;
    border-radius:6px;
    font-size:7px;
}

.allcars-card__type{
    left:11px;
}

.allcars-card__tag{
    right:11px;
}

.allcars-card__body{
    padding:17px 18px 16px;
    display:flex;
    flex-direction:column;
}

.allcars-card__title small{
    margin-bottom:4px;
    font-size:7px;
}

.allcars-card__title h3{
    font-size:16px;
}

.allcars-card__title > span{
    min-width:37px;
    height:27px;
    padding:0 7px;
    border-radius:7px;
    font-size:8px;
}

.allcars-card__body > p{
    min-height:36px;
    margin-top:9px;
    color:#76676b;
    font-size:10.5px;
    line-height:1.58;
}

.allcars-specs{
    margin-top:13px;
    padding:0;
    gap:7px;
    border:0;
}

.allcars-specs li,
.allcars-specs li:nth-child(2),
.allcars-specs li:last-child{
    min-height:46px;
    padding:7px 6px;
    gap:6px;
    border:1px solid rgba(88,53,61,0.075);
    border-radius:8px;
    background:#fcf9f9;
}

.allcars-specs i{
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-red);
    border-radius:6px;
    background:rgba(200,35,51,0.07);
    font-size:9px;
}

.allcars-specs small{
    font-size:6.5px;
}

.allcars-specs strong{
    font-size:7.5px;
}

.allcars-card__footer{
    margin-top:13px;
    padding-top:12px;
    border-top:1px solid rgba(69,38,45,0.075);
}

.allcars-available{
    gap:7px;
    font-size:7.5px;
}

.allcars-card__footer > a{
    min-height:36px;
    padding:0 14px;
    gap:7px;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:8px;
    background:linear-gradient(135deg, #d72d3d, #a91828);
    box-shadow:0 7px 16px rgba(135,19,31,0.15);
    font-size:8.5px;
}

.allcars-card__footer > a i.fab{
    width:auto;
    height:auto;
    margin:0;
    padding:0;
    display:inline-block;
    color:#fff;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    font-size:10px;
    line-height:1;
    animation:none;
    pointer-events:none;
}

.allcars-card__footer > a:hover{
    box-shadow:0 10px 22px rgba(135,19,31,0.22);
}

@media(max-width:520px){
    .allcars-card__media{
        height:185px;
    }

    .allcars-card__body{
        padding:17px;
    }

    .allcars-card__body > p{
        font-size:11px;
    }

    .allcars-specs small{
        font-size:7px;
    }

    .allcars-specs strong{
        font-size:8px;
    }
}

/* =========================================================
   GALLERY PAGE — EDITORIAL PHOTO SHOWCASE
   ========================================================= */

.gallery-page{
    background:#fffdf9;
}

.gallery-page nav a.is-current{
    color:var(--brand-red);
}

.gallery-page nav a.is-current::after{
    width:100%;
}

.gallery-page .page-breadcrumb{
    background:
        linear-gradient(90deg, rgba(25,8,12,0.28), rgba(25,8,12,0.14)),
        url("assets/img/sliders/slider3.jpeg") center 48% / cover no-repeat;
}

.gallery-page main{
    overflow:hidden;
}

.gallery-showcase{
    padding:86px 20px 96px;
    background:
        radial-gradient(650px 300px at 96% 0%, rgba(200,35,51,0.04), transparent 74%),
        #fffdf9;
}

.gallery-heading{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 0.62fr);
    align-items:end;
    gap:90px;
    margin-bottom:40px;
}

.gallery-kicker{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--brand-red);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.16em;
    text-transform:uppercase;
}

.gallery-kicker span{
    width:29px;
    height:3px;
    border-radius:999px;
    background:var(--brand-red);
}

.gallery-heading h2{
    margin-top:14px;
    color:#241619;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(34px, 3.4vw, 46px);
    font-weight:700;
    letter-spacing:-0.045em;
    line-height:1.08;
}

.gallery-heading > p{
    padding-left:18px;
    color:#75666a;
    border-left:3px solid var(--brand-red);
    font-size:13px;
    line-height:1.72;
}

.gallery-toolbar{
    margin-bottom:18px;
    padding:9px 10px 9px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    border:1px solid rgba(68,39,45,0.10);
    border-radius:13px;
    background:#fff;
    box-shadow:0 8px 25px rgba(57,27,33,0.045);
}

.gallery-result strong,
.gallery-result small{
    display:block;
}

.gallery-result strong{
    color:#2a1a1d;
    font-size:12px;
}

.gallery-result strong span{
    color:var(--brand-red);
}

.gallery-result small{
    margin-top:2px;
    color:#948589;
    font-size:9px;
}

.gallery-filters{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:6px;
}

.gallery-filters button{
    min-height:35px;
    padding:0 15px;
    color:#65565a;
    border:1px solid transparent;
    border-radius:8px;
    background:transparent;
    font-family:'Inter',sans-serif;
    font-size:10px;
    font-weight:700;
    cursor:pointer;
    transition:color 0.22s ease, border-color 0.22s ease, background 0.22s ease, transform 0.22s ease;
}

.gallery-filters button:hover{
    color:var(--brand-red);
    border-color:rgba(200,35,51,0.13);
    background:rgba(200,35,51,0.045);
}

.gallery-filters button.is-active{
    color:#fff;
    border-color:var(--brand-red);
    background:var(--brand-red);
    box-shadow:0 7px 16px rgba(150,20,34,0.18);
}

.gallery-page .gallery-grid{
    display:grid;
    grid-template-columns:repeat(12, minmax(0, 1fr));
    grid-auto-rows:92px;
    grid-auto-flow:dense;
    gap:14px;
}

.gallery-page .gallery-card{
    position:relative;
    grid-column:span 4;
    grid-row:span 3;
    min-width:0;
    overflow:hidden;
    color:#fff;
    border:1px solid rgba(62,34,40,0.09);
    border-radius:15px;
    background:#e9edef;
    box-shadow:0 10px 28px rgba(56,27,33,0.075);
    cursor:pointer;
    isolation:isolate;
    transition:transform 0.28s ease, border-color 0.28s ease, box-shadow 0.28s ease;
}

.gallery-page .gallery-card--wide{
    grid-column:span 8;
}

.gallery-page .gallery-card--tall{
    grid-row:span 5;
}

.gallery-page .gallery-card[hidden]{
    display:none;
}

.gallery-page .gallery-card.is-filtered-in{
    animation:galleryCardIn 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes galleryCardIn{
    from{ opacity:0; transform:translateY(13px) scale(0.99); }
    to{ opacity:1; transform:none; }
}

.gallery-page .gallery-card::after{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    background:
        linear-gradient(180deg, rgba(15,7,9,0.04) 30%, rgba(15,7,9,0.78) 100%);
    pointer-events:none;
}

.gallery-page .gallery-card img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform 0.65s cubic-bezier(0.22, 1, 0.36, 1), filter 0.4s ease;
}

.gallery-page .gallery-card:hover{
    z-index:2;
    transform:translateY(-4px);
    border-color:rgba(200,35,51,0.18);
    box-shadow:0 18px 40px rgba(56,27,33,0.14);
}

.gallery-page .gallery-card:hover img{
    transform:scale(1.045);
    filter:saturate(1.05);
}

.gallery-page .gallery-card figcaption{
    position:absolute;
    z-index:2;
    right:17px;
    bottom:16px;
    left:17px;
    padding-right:42px;
}

.gallery-page .gallery-card figcaption span{
    display:block;
    margin-bottom:4px;
    color:var(--brand-gold-light);
    font-size:8px;
    font-weight:800;
    letter-spacing:0.13em;
    text-transform:uppercase;
}

.gallery-page .gallery-card figcaption h3{
    color:#fff;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:16px;
    font-weight:700;
    letter-spacing:-0.025em;
    line-height:1.25;
    text-shadow:0 2px 10px rgba(0,0,0,0.28);
}

.gallery-card__view{
    position:absolute;
    z-index:3;
    right:14px;
    bottom:14px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    color:#fff;
    border:1px solid rgba(255,255,255,0.28);
    border-radius:9px;
    background:rgba(255,255,255,0.10);
    backdrop-filter:blur(8px);
    font-size:11px;
    transform:translateY(4px);
    transition:color 0.25s ease, background 0.25s ease, transform 0.25s ease;
}

.gallery-page .gallery-card:hover .gallery-card__view{
    color:#261519;
    background:var(--brand-gold-light);
    transform:translateY(0);
}

.gallery-page .gallery-card:focus{
    outline:3px solid rgba(200,35,51,0.25);
    outline-offset:3px;
}

.gallery-cta{
    padding:0 20px 90px;
    background:#fffdf9;
}

.gallery-cta__box{
    padding:28px 31px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    color:#fff;
    border-radius:17px;
    background:
        radial-gradient(380px 170px at 88% 0%, rgba(255,193,7,0.12), transparent 74%),
        linear-gradient(135deg, #76131f, #2a0e14);
    box-shadow:0 17px 45px rgba(89,14,26,0.16);
}

.gallery-cta__box > div:first-child > p{
    color:var(--brand-gold-light);
    font-size:8px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.gallery-cta__box h2{
    margin-top:5px;
    color:#fff;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:22px;
    font-weight:700;
    letter-spacing:-0.03em;
}

.gallery-cta__box > div:first-child > span{
    display:block;
    margin-top:6px;
    color:rgba(255,255,255,0.62);
    font-size:10px;
}

.gallery-cta__actions{
    display:flex;
    align-items:center;
    gap:9px;
    flex:0 0 auto;
}

.gallery-cta__actions a{
    min-height:40px;
    padding:0 15px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border-radius:9px;
    font-size:9px;
    font-weight:800;
    text-decoration:none;
}

.gallery-cta__actions a:first-child{
    color:#fff;
    border:1px solid rgba(255,255,255,0.17);
    background:rgba(255,255,255,0.06);
}

.gallery-cta__actions a:last-child{
    color:#fff;
    background:#20b95d;
    box-shadow:0 8px 20px rgba(20,148,71,0.16);
}

.gallery-cta__actions a i.fab{
    width:auto;
    height:auto;
    padding:0;
    color:#fff;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    font-size:10px;
    animation:none;
}

.gallery-page .gallery-lightbox{
    padding:28px 78px;
    background:rgba(16,7,10,0.91);
    backdrop-filter:blur(12px);
}

.gallery-lightbox__stage{
    width:min(100%, 1180px);
    max-height:90vh;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border:1px solid rgba(255,255,255,0.13);
    border-radius:15px;
    background:#180c0f;
    box-shadow:0 28px 90px rgba(0,0,0,0.52);
}

.gallery-page .gallery-lightbox__stage > img{
    width:100%;
    height:auto;
    max-width:none;
    max-height:88vh;
    min-height:0;
    display:block;
    object-fit:contain;
    border:0;
    border-radius:0;
    background:#0f090a;
    box-shadow:none;
}

.gallery-lightbox__meta{
    min-height:64px;
    padding:12px 18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    color:#fff;
    border-top:1px solid rgba(255,255,255,0.09);
}

.gallery-lightbox__meta small,
.gallery-lightbox__meta strong{
    display:block;
}

.gallery-lightbox__meta small{
    margin-bottom:3px;
    color:var(--brand-gold-light);
    font-size:7px;
    font-weight:800;
    letter-spacing:0.13em;
    text-transform:uppercase;
}

.gallery-lightbox__meta strong{
    font-family:'Sora','Inter',sans-serif;
    font-size:12px;
}

.gallery-lightbox__meta > span{
    color:rgba(255,255,255,0.58);
    font-size:9px;
    font-weight:700;
}

.gallery-page .gallery-lightbox-close,
.gallery-page .gallery-lightbox-nav{
    display:grid;
    place-items:center;
    color:#fff;
    border:1px solid rgba(255,255,255,0.14);
    background:rgba(255,255,255,0.08);
    backdrop-filter:blur(8px);
    transition:color 0.22s ease, background 0.22s ease, transform 0.22s ease;
}

.gallery-page .gallery-lightbox-close{
    top:20px;
    right:21px;
    width:40px;
    height:40px;
    font-size:16px;
}

.gallery-page .gallery-lightbox-nav{
    width:44px;
    height:44px;
    font-size:13px;
}

.gallery-page .gallery-lightbox-close:hover,
.gallery-page .gallery-lightbox-nav:hover{
    color:#241417;
    background:var(--brand-gold-light);
}

.gallery-page .gallery-lightbox-prev:hover{
    transform:translateY(-50%) translateX(-3px);
}

.gallery-page .gallery-lightbox-next:hover{
    transform:translateY(-50%) translateX(3px);
}

@media(max-width:1000px){
    .gallery-page .gallery-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-auto-rows:230px;
    }

    .gallery-page .gallery-card,
    .gallery-page .gallery-card--wide,
    .gallery-page .gallery-card--tall{
        grid-column:span 1;
        grid-row:span 1;
    }

    .gallery-page .gallery-card--wide{
        grid-column:span 2;
    }
}

@media(max-width:900px){
    .gallery-heading{
        grid-template-columns:1fr;
        align-items:start;
        gap:22px;
    }

    .gallery-heading > p{
        max-width:680px;
    }

    .gallery-cta__box{
        align-items:flex-start;
        flex-direction:column;
        gap:20px;
    }

    .gallery-page .gallery-lightbox{
        padding:66px 60px 24px;
    }
}

@media(max-width:700px){
    .gallery-page nav a.is-current::after{
        display:none;
    }

    .gallery-showcase{
        padding:70px 18px 78px;
    }

    .gallery-heading{
        margin-bottom:32px;
    }

    .gallery-heading h2{
        font-size:34px;
    }

    .gallery-toolbar{
        padding:12px;
        align-items:flex-start;
        flex-direction:column;
        gap:12px;
    }

    .gallery-filters{
        width:100%;
        justify-content:flex-start;
    }

    .gallery-filters button{
        flex:1 1 auto;
    }

    .gallery-cta{
        padding:0 18px 75px;
    }

    .gallery-page .gallery-lightbox{
        padding:65px 15px 18px;
    }

    .gallery-page .gallery-lightbox-prev{
        left:20px;
    }

    .gallery-page .gallery-lightbox-next{
        right:20px;
    }

    .gallery-page .gallery-lightbox-nav{
        top:auto;
        bottom:30px;
        z-index:2;
        transform:none;
    }

    .gallery-page .gallery-lightbox-prev:hover{
        transform:translateX(-3px);
    }

    .gallery-page .gallery-lightbox-next:hover{
        transform:translateX(3px);
    }
}

@media(max-width:520px){
    .gallery-showcase{
        padding:62px 14px 68px;
    }

    .gallery-heading h2{
        font-size:29px;
    }

    .gallery-heading > p{
        padding-left:14px;
        font-size:12px;
    }

    .gallery-page .gallery-grid{
        grid-template-columns:1fr;
        grid-auto-rows:235px;
        gap:11px;
    }

    .gallery-page .gallery-card,
    .gallery-page .gallery-card--wide,
    .gallery-page .gallery-card--tall{
        grid-column:span 1;
        grid-row:span 1;
    }

    .gallery-page .gallery-card--tall{
        grid-row:auto;
        min-height:300px;
    }

    .gallery-cta{
        padding:0 14px 68px;
    }

    .gallery-cta__box{
        padding:25px 18px;
        text-align:center;
    }

    .gallery-cta__actions{
        width:100%;
        display:grid;
    }

    .gallery-lightbox__meta{
        min-height:58px;
        padding:10px 13px;
    }
}

@media(prefers-reduced-motion:reduce){
    .gallery-page .gallery-card,
    .gallery-page .gallery-card img,
    .gallery-card__view{
        transition:none;
    }

    .gallery-page .gallery-card.is-filtered-in{
        animation:none;
    }
}

/* GALLERY — SMALL CLEAN THUMBNAILS */

.gallery-page .gallery-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr));
    grid-auto-rows:190px;
    gap:11px;
}

.gallery-page .gallery-card,
.gallery-page .gallery-card--wide,
.gallery-page .gallery-card--tall{
    grid-column:span 1;
    grid-row:span 1;
    min-height:0;
    border-radius:12px;
}

.gallery-page .gallery-card::after{
    background:linear-gradient(180deg, transparent 62%, rgba(15,7,9,0.22) 100%);
}

.gallery-page .gallery-card figcaption{
    display:none;
}

.gallery-card__view{
    right:9px;
    bottom:9px;
    width:29px;
    height:29px;
    border-radius:7px;
    font-size:9px;
    opacity:0;
    transform:translateY(3px);
}

.gallery-page .gallery-card:hover .gallery-card__view,
.gallery-page .gallery-card:focus .gallery-card__view{
    opacity:1;
    transform:translateY(0);
}

@media(max-width:1050px){
    .gallery-page .gallery-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
        grid-auto-rows:185px;
    }
}

@media(max-width:760px){
    .gallery-page .gallery-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        grid-auto-rows:170px;
    }
}

@media(max-width:520px){
    .gallery-page .gallery-grid{
        grid-template-columns:1fr;
        grid-auto-rows:220px;
        gap:10px;
    }

    .gallery-page .gallery-card,
    .gallery-page .gallery-card--wide,
    .gallery-page .gallery-card--tall{
        min-height:0;
    }

    .gallery-card__view{
        opacity:1;
    }
}

/* =========================================================
   CONTACT PAGE — CLEAN BOOKING HUB
   ========================================================= */

.contact-page{
    background:#fffdf9;
}

.contact-page nav a.is-current{
    color:var(--brand-red);
}

.contact-page nav a.is-current::after{
    width:100%;
}

.contact-page .page-breadcrumb{
    background:
        linear-gradient(90deg, rgba(25,8,12,0.28), rgba(25,8,12,0.14)),
        url("assets/img/sliders/slider3.jpeg") center 48% / cover no-repeat;
}

.contact-page main{
    overflow:hidden;
}

.contact-hub{
    padding:76px 20px 62px;
    background:
        radial-gradient(620px 300px at 95% 0%, rgba(200,35,51,0.04), transparent 74%),
        #fffdf9;
}

.contact-hub__heading{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(360px, 0.62fr);
    align-items:end;
    gap:90px;
    margin-bottom:40px;
}

.contact-hub__kicker{
    display:flex;
    align-items:center;
    gap:10px;
    color:var(--brand-red);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.16em;
    text-transform:uppercase;
}

.contact-hub__kicker > span{
    width:29px;
    height:3px;
    border-radius:999px;
    background:var(--brand-red);
}

.contact-hub__heading h2{
    margin-top:14px;
    color:#241619;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:clamp(34px, 3.4vw, 46px);
    font-weight:700;
    letter-spacing:-0.045em;
    line-height:1.08;
}

.contact-hub__heading > p{
    padding-left:18px;
    color:#75666a;
    border-left:3px solid var(--brand-red);
    font-size:14px;
    line-height:1.72;
}

.contact-hub__layout{
    display:grid;
    grid-template-columns:minmax(330px, 0.78fr) minmax(0, 1.22fr);
    gap:14px;
}

.contact-hub__aside,
.contact-enquiry{
    border-radius:18px;
}

.contact-hub__aside{
    position:relative;
    padding:31px;
    overflow:hidden;
    color:#fff;
    background:
        radial-gradient(380px 220px at 100% 0%, rgba(255,193,7,0.12), transparent 72%),
        linear-gradient(145deg, #74131f, #240d12);
    box-shadow:0 18px 48px rgba(83,13,24,0.16);
}

.contact-hub__aside::after{
    content:"";
    position:absolute;
    right:-105px;
    bottom:-145px;
    width:300px;
    height:300px;
    border:1px solid rgba(255,193,7,0.14);
    border-radius:50%;
    box-shadow:0 0 0 43px rgba(255,193,7,0.025);
    pointer-events:none;
}

.contact-hub__status{
    width:max-content;
    padding:7px 10px;
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--brand-gold-light);
    border:1px solid rgba(255,255,255,0.11);
    border-radius:999px;
    background:rgba(255,255,255,0.055);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.10em;
    text-transform:uppercase;
}

.contact-hub__status i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#42d47c;
    box-shadow:0 0 0 4px rgba(66,212,124,0.11);
}

.contact-hub__aside > h3{
    max-width:410px;
    margin-top:20px;
    color:#fff;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:27px;
    font-weight:700;
    letter-spacing:-0.04em;
    line-height:1.18;
}

.contact-hub__aside > p{
    max-width:430px;
    margin-top:12px;
    color:rgba(255,255,255,0.63);
    font-size:13px;
    line-height:1.67;
}

.contact-hub__methods{
    margin-top:23px;
    display:grid;
    gap:8px;
}

.contact-hub__method{
    min-height:62px;
    padding:10px 12px;
    display:grid;
    grid-template-columns:auto minmax(0, 1fr) auto;
    align-items:center;
    gap:11px;
    color:#fff;
    border:1px solid rgba(255,255,255,0.09);
    border-radius:11px;
    background:rgba(255,255,255,0.048);
    text-decoration:none;
    transition:background 0.24s ease, border-color 0.24s ease, transform 0.24s ease;
}

.contact-hub__method:hover{
    border-color:rgba(255,193,7,0.24);
    background:rgba(255,255,255,0.075);
    transform:translateX(3px);
}

.contact-hub__method > span{
    width:35px;
    height:35px;
    display:grid;
    place-items:center;
    color:var(--brand-gold-light);
    border-radius:9px;
    background:rgba(255,193,7,0.09);
    font-size:12px;
}

.contact-hub__method small,
.contact-hub__method strong{
    display:block;
}

.contact-hub__method small{
    color:rgba(255,255,255,0.49);
    font-size:10px;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.contact-hub__method strong{
    margin-top:3px;
    overflow:hidden;
    color:#fff;
    font-size:12px;
    font-weight:700;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.contact-hub__method > i{
    color:rgba(255,255,255,0.45);
    font-size:11px;
}

.contact-hub__method i.fab,
.contact-enquiry__submit-row button i.fab{
    width:auto;
    height:auto;
    margin:0;
    padding:0;
    display:inline-block;
    color:inherit;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
    font-size:inherit;
    line-height:1;
    animation:none;
    pointer-events:none;
}

.contact-hub__address{
    position:relative;
    z-index:1;
    margin-top:18px;
    padding-top:17px;
    display:flex;
    align-items:flex-start;
    gap:11px;
    border-top:1px solid rgba(255,255,255,0.09);
}

.contact-hub__address > i{
    margin-top:2px;
    color:var(--brand-gold-light);
    font-size:12px;
}

.contact-hub__address small{
    color:rgba(255,255,255,0.48);
    font-size:9px;
    font-weight:700;
    letter-spacing:0.08em;
    text-transform:uppercase;
}

.contact-hub__address p{
    max-width:360px;
    margin-top:4px;
    color:rgba(255,255,255,0.72);
    font-size:11px;
    line-height:1.55;
}

.contact-enquiry{
    padding:28px 29px;
    border:1px solid rgba(66,37,43,0.10);
    background:#fff;
    box-shadow:0 13px 38px rgba(58,28,34,0.065);
}

.contact-enquiry__head{
    padding-bottom:18px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-bottom:1px solid rgba(69,39,45,0.08);
}

.contact-enquiry__head p{
    color:var(--brand-red);
    font-size:10px;
    font-weight:800;
    letter-spacing:0.14em;
    text-transform:uppercase;
}

.contact-enquiry__head h3{
    margin-top:4px;
    color:#2a1a1d;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:21px;
    font-weight:700;
    letter-spacing:-0.03em;
}

.contact-enquiry__head > span{
    padding:7px 10px;
    display:flex;
    align-items:center;
    gap:7px;
    color:#706064;
    border:1px solid rgba(64,35,42,0.09);
    border-radius:999px;
    background:#fcf9f9;
    font-size:10px;
    font-weight:700;
}

.contact-enquiry__head > span i{
    color:var(--brand-red);
}

.contact-enquiry__form{
    margin-top:18px;
}

.contact-enquiry__grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:12px;
}

.contact-enquiry__field label{
    display:block;
    margin:0 0 6px 2px;
    color:#5f5054;
    font-size:11px;
    font-weight:800;
}

.contact-enquiry__field label span{
    color:#a7989c;
    font-weight:600;
}

.contact-enquiry__field > div{
    position:relative;
}

.contact-enquiry__field > div > i{
    position:absolute;
    top:50%;
    left:13px;
    z-index:1;
    color:var(--brand-red);
    font-size:10px;
    transform:translateY(-50%);
    pointer-events:none;
}

.contact-enquiry__field input,
.contact-enquiry__field select,
.contact-enquiry__field textarea{
    width:100%;
    color:#35262a;
    border:1px solid rgba(73,43,50,0.11);
    border-radius:9px;
    outline:none;
    background:#fcfbfb;
    font-family:'Inter',sans-serif;
    font-size:12px;
    transition:border-color 0.22s ease, background 0.22s ease, box-shadow 0.22s ease;
}

.contact-enquiry__field input,
.contact-enquiry__field select{
    height:43px;
    padding:0 12px 0 35px;
}

.contact-enquiry__field textarea{
    min-height:82px;
    padding:11px 12px;
    resize:vertical;
}

.contact-enquiry__field input::placeholder,
.contact-enquiry__field textarea::placeholder{
    color:#aa9da0;
}

.contact-enquiry__field input:focus,
.contact-enquiry__field select:focus,
.contact-enquiry__field textarea:focus{
    border-color:rgba(200,35,51,0.38);
    background:#fff;
    box-shadow:0 0 0 3px rgba(200,35,51,0.065);
}

.contact-trip-select{
    position:relative;
    z-index:12;
}

.contact-trip-select__trigger{
    width:100%;
    height:46px;
    padding:0 13px 0 10px;
    display:grid;
    grid-template-columns:31px minmax(0, 1fr) auto;
    align-items:center;
    gap:9px;
    color:#38272b;
    border:1px solid rgba(200,35,51,0.18);
    border-radius:14px;
    outline:none;
    background:linear-gradient(135deg, #fff 0%, #fff8f8 100%);
    box-shadow:
        0 4px 12px rgba(89,32,42,0.035),
        inset 0 1px 0 rgba(255,255,255,0.95);
    font-family:'Inter',sans-serif;
    font-size:12px;
    text-align:left;
    cursor:pointer;
    transition:
        border-color 0.22s ease,
        box-shadow 0.22s ease,
        background 0.22s ease,
        transform 0.22s ease;
}

.contact-trip-select__trigger:hover{
    border-color:rgba(200,35,51,0.34);
    background:#fff;
}

.contact-trip-select__trigger:focus-visible,
.contact-trip-select.is-open .contact-trip-select__trigger{
    border-color:var(--brand-red);
    background:#fff;
    box-shadow:
        0 0 0 4px rgba(200,35,51,0.075),
        0 9px 22px rgba(92,26,38,0.08);
}

.contact-trip-select__leading{
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    color:var(--brand-red);
    border-radius:10px;
    background:linear-gradient(145deg, #fff0f1, #ffe4e7);
    font-size:11px;
}

.contact-trip-select__value{
    overflow:hidden;
    font-weight:600;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.contact-trip-select__chevron{
    color:#7c686d;
    font-size:9px;
    transition:transform 0.24s ease, color 0.24s ease;
}

.contact-trip-select.is-open .contact-trip-select__chevron{
    color:var(--brand-red);
    transform:rotate(180deg);
}

.contact-trip-select__menu{
    position:absolute;
    top:calc(100% + 8px);
    left:0;
    z-index:40;
    width:100%;
    max-height:285px;
    padding:7px;
    overflow:auto;
    visibility:hidden;
    border:1px solid rgba(200,35,51,0.14);
    border-radius:16px;
    background:rgba(255,255,255,0.98);
    box-shadow:
        0 22px 45px rgba(74,22,32,0.16),
        0 4px 12px rgba(74,22,32,0.07);
    opacity:0;
    transform:translateY(-7px) scale(0.985);
    transform-origin:top center;
    pointer-events:none;
    transition:
        visibility 0.2s ease,
        opacity 0.2s ease,
        transform 0.2s ease;
    backdrop-filter:blur(12px);
    scrollbar-width:thin;
    scrollbar-color:rgba(200,35,51,0.28) transparent;
}

.contact-trip-select.is-open .contact-trip-select__menu{
    visibility:visible;
    opacity:1;
    transform:translateY(0) scale(1);
    pointer-events:auto;
}

.contact-trip-select__menu button{
    width:100%;
    min-height:37px;
    padding:0 11px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    color:#49373b;
    border:0;
    border-radius:10px;
    outline:none;
    background:transparent;
    font-family:'Inter',sans-serif;
    font-size:11px;
    font-weight:600;
    text-align:left;
    cursor:pointer;
    transition:color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.contact-trip-select__menu button:hover,
.contact-trip-select__menu button:focus-visible{
    color:var(--brand-red);
    background:#fff0f2;
    transform:translateX(2px);
}

.contact-trip-select__menu button i{
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:transparent;
    border-radius:7px;
    font-size:8px;
}

.contact-trip-select__menu button[aria-selected="true"]{
    color:#fff;
    background:linear-gradient(135deg, #d92d3e, #a71828);
    box-shadow:0 6px 14px rgba(154,22,38,0.17);
}

.contact-trip-select__menu button[aria-selected="true"] i{
    color:#77131f;
    background:#ffd65a;
}

.contact-trip-select.is-selected .contact-trip-select__value{
    color:#9e1726;
    font-weight:700;
}

.contact-trip-select.is-invalid .contact-trip-select__trigger{
    border-color:#d92638;
    box-shadow:0 0 0 4px rgba(217,38,56,0.085);
}

.contact-trip-select__error{
    margin:6px 0 0 3px;
    color:#bd1e2e;
    font-size:9px;
    font-weight:700;
}

.contact-enquiry__field--full{
    margin-top:12px;
}

.contact-enquiry__submit-row{
    margin-top:14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}

.contact-enquiry__submit-row button{
    min-height:42px;
    padding:0 17px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:#fff;
    border:0;
    border-radius:9px;
    background:linear-gradient(135deg, #d82e3e, #9f1726);
    box-shadow:0 8px 19px rgba(135,19,31,0.17);
    font-family:'Inter',sans-serif;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
    transition:transform 0.22s ease, box-shadow 0.22s ease;
}

.contact-enquiry__submit-row button:hover{
    transform:translateY(-2px);
    box-shadow:0 11px 24px rgba(135,19,31,0.23);
}

.contact-enquiry__submit-row > p{
    display:flex;
    align-items:center;
    gap:7px;
    color:#95868a;
    font-size:9.5px;
}

.contact-enquiry__submit-row > p i{
    color:#39b96f;
}

.contact-assurance{
    margin-top:14px;
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    overflow:hidden;
    border:1px solid rgba(65,37,43,0.09);
    border-radius:13px;
    background:#fff;
}

.contact-assurance article{
    min-height:82px;
    padding:17px 20px;
    display:flex;
    align-items:center;
    gap:11px;
    border-right:1px solid rgba(65,37,43,0.08);
}

.contact-assurance article:last-child{
    border-right:0;
}

.contact-assurance article > i{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-red);
    border-radius:9px;
    background:rgba(200,35,51,0.065);
    font-size:12px;
}

.contact-assurance strong,
.contact-assurance span{
    display:block;
}

.contact-assurance strong{
    color:#37272b;
    font-family:'Sora','Inter',sans-serif;
    font-size:12px;
}

.contact-assurance span{
    margin-top:3px;
    color:#96868a;
    font-size:10px;
}

.contact-page .marquee-strip{
    padding:11px 0;
}

.contact-location{
    padding:72px 20px 78px;
    background:
        radial-gradient(520px 280px at 0% 100%, rgba(200,35,51,0.035), transparent 74%),
        #fffdf9;
}

.contact-location__layout{
    display:grid;
    grid-template-columns:minmax(290px, 0.67fr) minmax(0, 1.33fr);
    align-items:stretch;
    gap:16px;
}

.contact-location__copy{
    padding:30px;
    border:1px solid rgba(65,37,43,0.09);
    border-radius:16px;
    background:#fff;
    box-shadow:0 11px 32px rgba(58,27,34,0.05);
}

.contact-location__copy h2{
    margin-top:13px;
    color:#27181b;
    font-family:'Sora','Manrope','Inter',sans-serif;
    font-size:28px;
    font-weight:700;
    letter-spacing:-0.04em;
    line-height:1.15;
}

.contact-location__copy > p:not(.contact-hub__kicker){
    margin-top:12px;
    color:#7a6b6f;
    font-size:13px;
    line-height:1.68;
}

.contact-location__details{
    margin:22px 0;
    display:grid;
    gap:9px;
}

.contact-location__details > div{
    padding:10px 11px;
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid rgba(67,38,44,0.07);
    border-radius:9px;
    background:#fcf9f9;
}

.contact-location__details > div > i{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    flex:0 0 auto;
    color:var(--brand-red);
    border-radius:8px;
    background:rgba(200,35,51,0.065);
    font-size:10px;
}

.contact-location__details span,
.contact-location__details small,
.contact-location__details strong{
    display:block;
}

.contact-location__details small{
    color:#9b8c8f;
    font-size:9px;
    font-weight:700;
    text-transform:uppercase;
}

.contact-location__details strong{
    margin-top:3px;
    color:#49383c;
    font-size:10.5px;
    line-height:1.45;
}

.contact-location__copy > a{
    min-height:38px;
    padding:0 13px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    color:#fff;
    border-radius:8px;
    background:var(--brand-red);
    font-size:10px;
    font-weight:800;
    text-decoration:none;
}

.contact-location__map{
    min-height:390px;
    padding:7px;
    overflow:hidden;
    border:1px solid rgba(65,37,43,0.10);
    border-radius:16px;
    background:#fff;
    box-shadow:0 13px 38px rgba(58,28,34,0.07);
}

.contact-location__map iframe{
    width:100%;
    height:100%;
    min-height:374px;
    display:block;
    border:0;
    border-radius:11px;
}

@media(max-width:980px){
    .contact-hub__layout{
        grid-template-columns:1fr;
    }

    .contact-hub__aside{
        display:grid;
        grid-template-columns:minmax(0, 0.8fr) minmax(0, 1.2fr);
        align-items:start;
        gap:0 28px;
    }

    .contact-hub__status,
    .contact-hub__aside > h3,
    .contact-hub__aside > p{
        grid-column:1;
    }

    .contact-hub__methods{
        grid-column:2;
        grid-row:1 / span 4;
        margin-top:0;
    }

    .contact-hub__address{
        grid-column:1;
    }
}

@media(max-width:900px){
    .contact-hub__heading{
        grid-template-columns:1fr;
        align-items:start;
        gap:22px;
    }

    .contact-hub__heading > p{
        max-width:680px;
    }

    .contact-location__layout{
        grid-template-columns:1fr;
    }

    .contact-location__map{
        min-height:360px;
    }
}

@media(max-width:700px){
    .contact-page nav a.is-current::after{
        display:none;
    }

    .contact-hub{
        padding:70px 18px 58px;
    }

    .contact-hub__heading{
        margin-bottom:32px;
    }

    .contact-hub__heading h2{
        font-size:34px;
    }

    .contact-hub__aside{
        padding:27px;
        display:block;
    }

    .contact-hub__methods{
        margin-top:22px;
    }

    .contact-enquiry__grid{
        grid-template-columns:1fr;
    }

    .contact-assurance{
        grid-template-columns:1fr;
    }

    .contact-assurance article{
        border-right:0;
        border-bottom:1px solid rgba(65,37,43,0.08);
    }

    .contact-assurance article:last-child{
        border-bottom:0;
    }

    .contact-location{
        padding:68px 18px 75px;
    }
}

@media(max-width:520px){
    .contact-hub{
        padding:62px 14px 52px;
    }

    .contact-hub__heading h2{
        font-size:29px;
    }

    .contact-hub__heading > p{
        padding-left:14px;
        font-size:12px;
    }

    .contact-hub__aside{
        padding:24px 20px;
        border-radius:15px;
    }

    .contact-hub__aside > h3{
        font-size:23px;
    }

    .contact-enquiry{
        padding:23px 18px;
        border-radius:15px;
    }

    .contact-enquiry__head{
        align-items:flex-start;
        flex-direction:column;
        gap:10px;
    }

    .contact-enquiry__submit-row{
        align-items:stretch;
        flex-direction:column;
    }

    .contact-enquiry__submit-row button{
        width:100%;
    }

    .contact-location{
        padding:60px 14px 68px;
    }

    .contact-location__copy{
        padding:24px 20px;
    }

    .contact-location__copy h2{
        font-size:25px;
    }

    .contact-location__map,
    .contact-location__map iframe{
        min-height:300px;
    }
}

@media(prefers-reduced-motion:reduce){
    .contact-hub__method,
    .contact-enquiry__submit-row button,
    .contact-trip-select__trigger,
    .contact-trip-select__chevron,
    .contact-trip-select__menu,
    .contact-trip-select__menu button{
        transition:none;
    }
}
