﻿    :root {
      --navy: #0d2149;
      --navy-2: #16326b;
      --orange: #f5a623;
      --orange-2: #f28c00;
      --ink: #1e2a44;
      --muted: #6b7385;
      --line: #e6e9f0;
      --bg: #ffffff;
      --bg-soft: #f5f7fb;
      --cream: #faf6ee;
      --radius: 16px;
      --shadow: 0 12px 40px rgba(13,33,73,.12);
      --shadow-sm: 0 6px 20px rgba(13,33,73,.08);
      --font-body: 'Poppins', system-ui, sans-serif;
      --font-head: 'Sora', 'Poppins', system-ui, sans-serif;
    }
    * { margin: 0; padding: 0; box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      font-family: var(--font-body);
      color: var(--ink);
      background: var(--bg);
      line-height: 1.6;
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
    }
    img { max-width: 100%; display: block; }
    a { text-decoration: none; color: inherit; }
    h1, h2, h3, h4 { font-family: var(--font-head); letter-spacing: -.01em; }
    .container { width: min(1180px, 92%); margin: 0 auto; }
    section { padding: 72px 0; }
    .section-head { text-align: center; max-width: 640px; margin: 0 auto 44px; }
    .section-head h2 {
      font-size: clamp(1.9rem, 3.2vw, 2.6rem);
      color: var(--navy);
      font-weight: 800;
      position: relative;
      display: inline-block;
      padding-bottom: 14px;
    }
    .section-head h2::after {
      content: ""; position: absolute; left: 50%; bottom: 0; transform: translateX(-50%);
      width: 90px; height: 4px; border-radius: 4px; background: var(--orange);
    }
    .section-head p { color: var(--muted); margin-top: 16px; }
    .btn {
      display: inline-flex; align-items: center; justify-content: center; gap: 8px;
      background: var(--orange); color: #fff; font-weight: 600;
      padding: 12px 28px; border-radius: 40px; border: none; cursor: pointer;
      transition: .2s; font-size: .95rem; font-family: var(--font-body);
    }
    .btn:hover { background: var(--orange-2); transform: translateY(-2px); box-shadow: 0 10px 24px rgba(242,140,0,.35); }
    .btn-outline { background: transparent; border: 2px solid var(--orange); color: var(--orange); }
    .btn-outline:hover { background: var(--orange); color: #fff; }
    .btn-light { background: #fff; color: var(--navy); }
    .btn-light:hover { background: var(--orange); color: #fff; }

    /* ===== TOP BAR ===== */
    .topbar { background: var(--navy); color: #dfe6f5; font-size: .85rem; }
    .topbar .container { display: flex; justify-content: space-between; align-items: center; padding: 8px 0; flex-wrap: wrap; gap: 8px; }
    .topbar a { color: #dfe6f5; }
    .topbar .tb-right { display: flex; gap: 18px; flex-wrap: wrap; }
    .topbar .tb-right a:hover { color: var(--orange); }

    /* ===== HEADER / NAV ===== */
    header { position: sticky; top: 0; z-index: 100; background: #fff; box-shadow: var(--shadow-sm); }
    .nav { display: flex; align-items: center; justify-content: space-between; padding: 12px 0; gap: 18px; }
    .logo { display: flex; align-items: center; gap: 10px; font-family: var(--font-head); font-weight: 800; color: var(--navy); font-size: 1.2rem; line-height: 1.15; flex-shrink: 0; }
    .logo .mark { width: 42px; height: 42px; border-radius: 12px; background: linear-gradient(135deg, var(--orange), var(--orange-2)); display: grid; place-items: center; color: #fff; font-size: 1.3rem; flex-shrink: 0; }
    .logo small { display: block; font-size: .6rem; color: var(--muted); font-weight: 500; letter-spacing: 2px; }
    .menu { display: flex; align-items: center; gap: 22px; list-style: none; }
    .menu a { font-weight: 500; color: var(--ink); font-size: .92rem; transition: .2s; white-space: nowrap; }
    .menu a:hover { color: var(--orange); }
    .nav-cta { display: flex; align-items: center; gap: 14px; flex-shrink: 0; }
    .call-btn { display: flex; align-items: center; gap: 8px; font-weight: 700; color: var(--navy); white-space: nowrap; }
    .call-btn span { font-size: .68rem; color: var(--muted); font-weight: 500; display: block; }
    .hamburger { display: none; background: none; border: none; font-size: 1.6rem; color: var(--navy); cursor: pointer; }

    /* ===== HERO + SLIDER ===== */
    .hero { position: relative; padding: 56px 0 0; color: #fff; overflow: hidden; }
    .about { padding-top: 56px; }
    .hero-slides { position: absolute; inset: 0; z-index: 0; }
    .hero-slide {
      position: absolute; inset: 0; background-size: cover; background-position: center;
      opacity: 0; transition: opacity 1.4s ease, transform 6s ease; transform: scale(1.05);
    }
    .hero-slide.active { opacity: 1; transform: scale(1); }
    .hero::before {
      content: ""; position: absolute; inset: 0; z-index: 1;
      background: linear-gradient(rgba(13,33,73,.74), rgba(13,33,73,.86));
    }
    .hero .container { position: relative; z-index: 2; }
    .hero h1 { font-size: clamp(2rem, 4.6vw, 3.4rem); font-weight: 800; line-height: 1.15; max-width: 720px; }
    .hero h1 span { color: var(--orange); }
    .hero p { max-width: 560px; margin-top: 18px; color: #d7deee; font-size: 1.05rem; }
    .hero-badges { display: flex; gap: 26px; margin-top: 26px; flex-wrap: wrap; }
    .hero-badges div { display: flex; align-items: center; gap: 8px; font-weight: 500; font-size: .95rem; }
    .hero-badges b { color: var(--orange); }
    .hero-dots { display: flex; gap: 10px; margin-top: 26px; }
    .hero-dots button { width: 12px; height: 12px; border-radius: 50%; border: none; background: rgba(255,255,255,.4); cursor: pointer; transition: .2s; padding: 0; }
    .hero-dots button.active { background: var(--orange); width: 30px; border-radius: 8px; }

    /* ===== BOOKING FORM ===== */
    .booking { margin-top: 40px; background: #fff; border-radius: var(--radius); box-shadow: var(--shadow); color: var(--ink); overflow: hidden; max-width: 980px; }
    .booking-tabs { display: flex; flex-wrap: wrap; background: var(--bg-soft); border-bottom: 1px solid var(--line); }
    .booking-tabs button {
      flex: 1; min-width: 110px; padding: 16px 10px; border: none; background: transparent;
      font-family: inherit; font-weight: 600; color: var(--muted); cursor: pointer; font-size: .95rem;
      border-bottom: 3px solid transparent; transition: .2s;
    }
    .booking-tabs button.active { color: var(--navy); background: #fff; border-bottom-color: var(--orange); }
    .booking-form { padding: 22px; display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; align-items: end; }
    .field { display: flex; flex-direction: column; gap: 6px; }
    .field label { font-size: .78rem; font-weight: 600; color: var(--muted); text-transform: uppercase; letter-spacing: .5px; }
    .field input, .field select {
      padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; font-family: inherit;
      font-size: .95rem; color: var(--ink); background: #fff; width: 100%;
    }
    .field input:focus, .field select:focus { outline: none; border-color: var(--orange); }
    .booking-form .btn { justify-content: center; padding: 13px 20px; height: 46px; }
    .hidden { display: none !important; }

    /* ===== ABOUT ===== */
    .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; align-items: center; }
    .about-img { position: relative; }
    .about-img img { border-radius: var(--radius); box-shadow: var(--shadow); width: 100%; }
    .about-exp { position: absolute; bottom: -22px; right: -12px; background: var(--orange); color: #fff; padding: 18px 24px; border-radius: 14px; box-shadow: var(--shadow); text-align: center; }
    .about-exp b { font-size: 1.8rem; display: block; }
    .about-text h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); color: var(--navy); font-weight: 800; margin-bottom: 8px; }
    .about-text .kicker { color: var(--orange); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; font-size: .85rem; }
    .about-text p { color: var(--muted); margin: 16px 0; }
    .about-list { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 18px 0 26px; }
    .about-list li { display: flex; align-items: center; gap: 8px; font-weight: 500; font-size: .95rem; }
    .about-list li::before { content: "âœ”"; color: #fff; background: var(--orange); width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; font-size: .7rem; flex-shrink: 0; }

    /* ===== LITTLE BANNERS ===== */
    .banners { background: var(--bg-soft); }
    .banner-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
    .banner-card { position: relative; border-radius: var(--radius); overflow: hidden; height: 220px; box-shadow: var(--shadow-sm); color: #fff; display: flex; align-items: flex-end; background: var(--navy); }
    .banner-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .4s; }
    .banner-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent, rgba(13,33,73,.85)); }
    .banner-card .b-content { position: relative; z-index: 2; padding: 20px; width: 100%; }
    .banner-card h3 { font-size: 1.2rem; font-weight: 700; }
    .banner-card span { color: var(--orange); font-weight: 600; font-size: .85rem; }
    .banner-card:hover img { transform: scale(1.08); }

    /* ===== SLIDER (cars/luxury) ===== */
    .slider-wrap { position: relative; }
    .slider { display: flex; gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory; padding: 6px 4px; scroll-behavior: smooth; cursor: grab; -ms-overflow-style: none; scrollbar-width: none; }
    .slider.dragging { cursor: grabbing; scroll-behavior: auto; scroll-snap-type: none; }
    .slider::-webkit-scrollbar { display: none; }

    /* section head with arrows on the right (like sightseeing) */
    .slider-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 34px; }
    .slider-head .sh-text { max-width: 640px; }
    .slider-head h2 { font-size: clamp(1.9rem, 3.2vw, 2.6rem); color: var(--navy); font-weight: 800; position: relative; padding-bottom: 12px; }
    .slider-head h2::after { content: ""; position: absolute; left: 0; bottom: 0; width: 70px; height: 4px; border-radius: 4px; background: var(--orange); }
    .slider-head p { color: var(--muted); margin-top: 14px; }

    /* WTi-style ride card */
    .ride-card { flex: 0 0 396px; scroll-snap-align: start; background: #fff; border: 1px solid var(--line); border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-sm); display: flex; flex-direction: column; transition: .25s; }
    .ride-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
    .ride-card .rc-img { height: 176px; overflow: hidden; background: var(--bg-soft); }
    .ride-card .rc-img img { width: 100%; height: 100%; object-fit: cover; display: block; pointer-events: none; -webkit-user-drag: none; }
    .rc-body { padding: 4px 22px 18px; }
    .rc-title { color: var(--navy); font-size: 1.35rem; font-weight: 800; }
    .rc-title span { font-size: .88rem; color: var(--muted); font-weight: 500; }
    .rc-feats { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 18px; margin: 16px 0; }
    .rc-feat { display: flex; gap: 11px; align-items: flex-start; }
    .rc-feat .ico { font-size: 1.35rem; line-height: 1.1; flex-shrink: 0; }
    .rc-feat .lbl { font-size: .68rem; letter-spacing: .6px; color: var(--muted); text-transform: uppercase; font-weight: 700; }
    .rc-feat .val { font-size: .92rem; color: var(--navy); font-weight: 600; line-height: 1.3; }
    .rc-feat .val b { color: #16a34a; font-weight: 700; }
    .rc-buy { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
    .rc-price { color: var(--navy); font-size: 1.5rem; font-weight: 800; white-space: nowrap; }
    .rc-price small { font-size: .72rem; color: var(--muted); font-weight: 500; }
    .rc-buy .btn { padding: 12px 28px; }
    .rc-note { margin-top: auto; background: var(--bg-soft); text-align: center; padding: 13px 16px; font-size: .8rem; color: var(--muted); font-weight: 500; }
    .sights-nav button:disabled { opacity: .35; cursor: default; background: #fff; color: var(--navy); border-color: #e3d9c6; }

    /* ===== VAN GALLERY ===== */
    .van { background: var(--bg-soft); }
    .van-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
    .van-card { background: #fff; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); display: grid; grid-template-columns: 1fr 1fr; }
    .van-card img { height: 100%; min-height: 220px; width: 100%; object-fit: cover; background: var(--bg-soft); }
    .van-card .vc-body { padding: 24px; }
    .van-card h3 { color: var(--navy); font-size: 1.4rem; }
    .van-card p { color: var(--muted); font-size: .9rem; margin: 10px 0; }
    .van-card .price { color: var(--orange); font-weight: 700; font-size: 1.2rem; margin-bottom: 14px; }

    /* ===== SERVICES ===== */
    .service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
    .service-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 28px 22px; text-align: center; transition: .25s; position: relative; overflow: hidden; }
    .service-card::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 4px; background: var(--orange); transform: scaleX(0); transition: .3s; transform-origin: left; }
    .service-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
    .service-card:hover::before { transform: scaleX(1); }
    .service-icon { width: 64px; height: 64px; margin: 0 auto 16px; border-radius: 50%; background: var(--bg-soft); display: grid; place-items: center; font-size: 1.8rem; }
    .service-card h3 { color: var(--navy); font-size: 1.1rem; margin-bottom: 8px; }
    .service-card p { color: var(--muted); font-size: .88rem; }

    /* ===== INTENSIVE SIGHTSEEING CAROUSEL ===== */
    .sights { background: var(--cream); }
    .sights-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; margin-bottom: 34px; }
    .pill { display: inline-flex; align-items: center; gap: 6px; background: #fdecd0; color: var(--orange-2); font-weight: 700; font-size: .78rem; letter-spacing: .5px; padding: 7px 16px; border-radius: 30px; text-transform: uppercase; }
    .sights-head h2 { font-size: clamp(2rem, 4vw, 3rem); color: var(--navy); font-weight: 800; margin: 16px 0 8px; }
    .sights-head p { color: var(--muted); max-width: 560px; }
    .sights-nav { display: flex; gap: 12px; flex-shrink: 0; }
    .sights-nav button { width: 48px; height: 48px; border-radius: 50%; border: 1px solid #e3d9c6; background: #fff; color: var(--navy); font-size: 1.3rem; cursor: pointer; transition: .2s; }
    .sights-nav button:hover { background: var(--navy); color: #fff; border-color: var(--navy); }
    .sight-card {
      flex: 0 0 300px; scroll-snap-align: start; position: relative; height: 400px;
      border-radius: 22px; overflow: hidden; color: #fff; display: flex; align-items: flex-end;
      background: var(--navy); box-shadow: var(--shadow-sm);
    }
    .sight-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .5s; }
    .sight-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(6,15,35,.92) 8%, rgba(6,15,35,.35) 55%, rgba(6,15,35,.15)); }
    .sight-card:hover img { transform: scale(1.08); }
    .badge-sites { position: absolute; top: 18px; left: 18px; z-index: 3; background: var(--orange); color: #fff; font-weight: 800; font-size: 1.05rem; padding: 8px 14px; border-radius: 10px; display: flex; align-items: center; gap: 5px; }
    .badge-sites small { font-size: .62rem; font-weight: 700; letter-spacing: .5px; }
    .badge-days { position: absolute; top: 18px; right: 18px; z-index: 3; background: rgba(0,0,0,.55); backdrop-filter: blur(4px); color: #fff; font-weight: 600; font-size: .78rem; padding: 8px 14px; border-radius: 30px; }
    .sight-body { position: relative; z-index: 3; padding: 26px 22px; width: 100%; }
    .sight-kicker { font-size: .72rem; font-weight: 700; letter-spacing: 1.5px; color: #c9d2e6; text-transform: uppercase; }
    .sight-body h3 { font-size: 2rem; font-weight: 800; margin: 4px 0 8px; }
    .sight-body > p { color: #d7deee; font-size: .86rem; line-height: 1.5; min-height: 42px; }
    .sight-price { margin-top: 14px; font-family: var(--font-head); font-weight: 800; font-size: 1.5rem; display: flex; align-items: baseline; gap: 8px; }
    .sight-price small { font-size: .8rem; font-weight: 600; color: #9fb0d0; }

    /* ===== PACKAGES ===== */
    .packages { background: var(--bg-soft); }
    .pkg-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
    .pkg-card { background: #fff; border-radius: 20px; overflow: hidden; box-shadow: var(--shadow-sm); transition: .25s; }
    .pkg-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
    .pkg-card .p-thumb { height: 240px; overflow: hidden; background: linear-gradient(135deg, var(--navy), var(--navy-2)); }
    .pkg-card .p-thumb img { width: 100%; height: 100%; object-fit: cover; transition: .4s; }
    .pkg-card:hover .p-thumb img { transform: scale(1.08); }
    .pkg-card .p-body { padding: 18px; text-align: center; }
    .pkg-card h3 { color: var(--navy); font-size: 1.15rem; }
    .pkg-card .p-price { color: var(--orange); font-weight: 700; margin-top: 6px; }
    .pkg-center { text-align: center; margin-top: 40px; }
    /* overlay adventure cards */
    .adv-card { flex: 0 0 300px; scroll-snap-align: start; position: relative; height: 340px; border-radius: 22px; overflow: hidden; color: #fff; display: flex; align-items: flex-end; background: var(--navy); box-shadow: var(--shadow-sm); cursor: pointer; }
    .adv-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .5s; }
    .adv-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to top, rgba(6,15,35,.92) 6%, rgba(6,15,35,.25) 55%, transparent 85%); }
    .adv-card:hover img { transform: scale(1.07); }
    .adv-badge { position: absolute; top: 16px; left: 16px; z-index: 3; background: #e6effe; color: #2563eb; font-weight: 700; font-size: .74rem; padding: 6px 14px; border-radius: 30px; }
    .adv-badge.new { background: #dcfce7; color: #16a34a; }
    .adv-body { position: relative; z-index: 3; padding: 22px 22px 24px; width: 100%; }
    .adv-body h3 { font-size: 1.55rem; font-weight: 800; }
    .adv-body .lbl { font-size: .68rem; letter-spacing: 1.5px; color: #c1cbe0; text-transform: uppercase; margin-top: 8px; }
    .adv-body .price { font-family: var(--font-head); font-weight: 800; font-size: 1.4rem; margin-top: 2px; }
    .adv-go { position: absolute; right: 18px; bottom: 22px; z-index: 4; width: 46px; height: 46px; border-radius: 50%; border: 1px solid rgba(255,255,255,.55); display: grid; place-items: center; color: #fff; background: rgba(255,255,255,.1); backdrop-filter: blur(3px); transition: .2s; cursor: pointer; }
    .adv-go:hover { background: #fff; color: var(--navy); transform: translateY(-2px); }
    .adv-go svg { width: 20px; height: 20px; }

    /* ===== CTA STATIC BANNER ===== */
    .cta-banner { position: relative; padding: 80px 0; color: #fff; overflow: hidden; text-align: center; }
    .cta-banner .cta-bg { position: absolute; inset: 0; background-size: cover; background-position: center; z-index: 0; }
    .cta-banner::before { content: ""; position: absolute; inset: 0; background: linear-gradient(120deg, rgba(13,33,73,.92), rgba(22,50,107,.78)); z-index: 1; }
    .cta-banner .container { position: relative; z-index: 2; }
    .cta-banner h2 { font-size: clamp(1.8rem, 3.4vw, 2.6rem); font-weight: 800; }
    .cta-banner p { color: #cfd8ee; margin-top: 12px; font-size: 1.05rem; }
    .cta-actions { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; margin-top: 28px; }
    .cta-actions .btn { padding: 15px 32px; font-size: 1rem; }
    .btn-phone { background: #fff; color: var(--navy); font-weight: 800; }
    .btn-phone:hover { background: var(--orange); color: #fff; }

    /* ===== BLOG ===== */
    .blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
    .blog-card { background: #fff; border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); border: 1px solid var(--line); transition: .25s; }
    .blog-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
    .blog-card .bl-thumb { height: 200px; overflow: hidden; background: var(--bg-soft); }
    .blog-card .bl-thumb img { width: 100%; height: 100%; object-fit: cover; }
    .blog-card .bl-body { padding: 22px; }
    .blog-card .bl-date { color: var(--orange); font-size: .8rem; font-weight: 600; }
    .blog-card h3 { color: var(--navy); font-size: 1.15rem; margin: 8px 0; }
    .blog-card p { color: var(--muted); font-size: .9rem; }
    .blog-card a.read { color: var(--navy); font-weight: 600; font-size: .88rem; margin-top: 12px; display: inline-block; }

    /* ===== FAQ ===== */
    .faq { background: var(--bg-soft); }
    .faq-wrap { max-width: 800px; margin: 0 auto; display: flex; flex-direction: column; gap: 14px; }
    .faq-item { background: #fff; border-radius: 12px; box-shadow: var(--shadow-sm); overflow: hidden; }
    .faq-q { width: 100%; text-align: left; background: none; border: none; padding: 20px 24px; font-family: var(--font-head); font-weight: 600; color: var(--navy); font-size: 1rem; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
    .faq-q .ico { transition: .3s; color: var(--orange); font-size: 1.4rem; flex-shrink: 0; }
    .faq-item.open .faq-q .ico { transform: rotate(45deg); }
    .faq-a { max-height: 0; overflow: hidden; transition: max-height .35s ease; padding: 0 24px; color: var(--muted); }
    .faq-item.open .faq-a { max-height: 300px; padding: 0 24px 20px; }

    /* ===== REVIEWS ===== */
    .review-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
    .review-card { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; box-shadow: var(--shadow-sm); }
    .stars { color: var(--orange); margin-bottom: 12px; letter-spacing: 2px; }
    .review-card p { color: var(--ink); font-style: italic; }
    .reviewer { display: flex; align-items: center; gap: 12px; margin-top: 18px; }
    .reviewer img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; background: var(--bg-soft); }
    .reviewer b { color: var(--navy); display: block; font-size: .95rem; }
    .reviewer small { color: var(--muted); }

    /* ===== FOOTER ===== */
    footer { background: var(--navy); color: #c3cde3; padding: 60px 0 0; }
    .footer-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.4fr; gap: 36px; }
    footer h4 { color: #fff; font-size: 1.1rem; margin-bottom: 18px; }
    footer ul { list-style: none; display: flex; flex-direction: column; gap: 10px; }
    footer a:hover { color: var(--orange); }
    footer .f-logo { display: flex; align-items: center; gap: 10px; font-family: var(--font-head); font-weight: 800; color: #fff; font-size: 1.3rem; margin-bottom: 14px; }
    footer .f-logo .mark { width: 40px; height: 40px; border-radius: 10px; background: linear-gradient(135deg, var(--orange), var(--orange-2)); display: grid; place-items: center; }
    footer p { font-size: .9rem; }
    .socials { display: flex; gap: 12px; margin-top: 16px; }
    .socials a { width: 40px; height: 40px; border-radius: 50%; background: rgba(255,255,255,.1); display: grid; place-items: center; transition: .2s; }
    .socials a:hover { background: var(--orange); color: #fff; }
    .footer-bottom { border-top: 1px solid rgba(255,255,255,.12); margin-top: 44px; padding: 20px 0; text-align: center; font-size: .85rem; }

    /* WhatsApp float */
    .wa-float { position: fixed; bottom: 24px; right: 24px; width: 58px; height: 58px; border-radius: 50%; background: #25d366; display: grid; place-items: center; box-shadow: 0 8px 24px rgba(37,211,102,.5); z-index: 200; color: #fff; animation: pulse 2s infinite; }
    .wa-float svg { width: 32px; height: 32px; fill: #fff; }
    @keyframes pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.08); } }

    /* ===== TRIP MODAL / POPUP ===== */
    .modal-overlay { position: fixed; inset: 0; background: rgba(9,18,40,.6); backdrop-filter: blur(3px); z-index: 500; display: flex; align-items: center; justify-content: center; padding: 20px; opacity: 0; visibility: hidden; transition: .3s; }
    .modal-overlay.open { opacity: 1; visibility: visible; }
    .modal { position: relative; display: grid; grid-template-columns: 1fr 1.15fr; width: min(1000px, 100%); max-height: 92vh; overflow: auto; background: #fff; border-radius: 26px; box-shadow: 0 30px 80px rgba(0,0,0,.4); transform: translateY(20px); transition: .3s; }
    .modal-overlay.open .modal { transform: translateY(0); }
    .modal-close { position: absolute; top: 16px; right: 18px; z-index: 5; width: 40px; height: 40px; border-radius: 50%; border: none; background: rgba(0,0,0,.06); color: #333; font-size: 1.5rem; cursor: pointer; transition: .2s; }
    .modal-close:hover { background: var(--orange); color: #fff; }
    .modal-left { background: #f3f4f6; padding: 40px 34px; }
    .modal-left h3 { font-size: 1.7rem; font-weight: 800; color: var(--orange); text-align: center; margin-bottom: 24px; }
    .modal-steps { list-style: none; display: flex; flex-direction: column; gap: 16px; }
    .modal-steps li { display: flex; gap: 12px; font-size: .95rem; color: var(--ink); font-weight: 500; }
    .modal-steps li b { color: var(--navy); }
    .modal-badges { display: flex; justify-content: space-between; gap: 12px; margin: 30px 0; text-align: center; }
    .modal-badges .mb { flex: 1; }
    .modal-badges .mb .mb-ico { font-size: 2rem; }
    .modal-badges .mb b { display: block; color: var(--navy); font-weight: 800; margin-top: 6px; }
    .modal-badges .mb span { font-size: .78rem; color: var(--muted); }
    .modal-sep { border: none; border-top: 1px solid #dfe1e6; margin: 8px 0 24px; }
    .modal-call { text-align: center; }
    .modal-call span { display: block; color: var(--ink); font-weight: 600; margin-bottom: 8px; }
    .modal-call a { font-size: 1.6rem; font-weight: 800; color: var(--orange); }
    .modal-right { padding: 40px 34px; }
    .modal-right h3 { font-size: 1.8rem; font-weight: 800; color: var(--orange); margin-bottom: 20px; }
    .modal-right .rt-label { font-weight: 700; color: var(--navy); font-size: .95rem; display: block; margin-bottom: 12px; }
    .trip-types { display: flex; flex-wrap: wrap; gap: 16px 22px; margin-bottom: 22px; }
    .trip-types label { display: flex; align-items: center; gap: 8px; font-size: .95rem; font-weight: 500; cursor: pointer; }
    .trip-types input { accent-color: var(--orange); width: 18px; height: 18px; }
    .modal-field { position: relative; margin-bottom: 16px; }
    .modal-field input, .modal-field select { width: 100%; padding: 16px 46px 16px 18px; border: 1px solid var(--line); border-radius: 12px; font-family: inherit; font-size: .98rem; color: var(--ink); background: #fff; }
    .modal-field input:focus, .modal-field select:focus { outline: none; border-color: var(--orange); }
    .modal-field .fi-ico { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--orange); pointer-events: none; }
    .modal-field.small-label label { position: absolute; top: 7px; left: 18px; font-size: .68rem; color: var(--muted); font-weight: 600; }
    .modal-field.small-label select { padding-top: 24px; padding-bottom: 8px; }
    .modal-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
    .modal-right .btn { width: 100%; padding: 17px; font-size: 1.05rem; font-weight: 800; margin-top: 8px; color: var(--navy); }

    /* ===== SVG ICON GRAPHICS (replace emoji) ===== */
    .rc-feat .ico { font-size: 0; color: transparent; width: 28px; height: 28px; background-repeat: no-repeat; background-position: center; background-size: contain; }
    .rc-feat:nth-child(1) .ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E"); }
    .rc-feat:nth-child(2) .ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4-3 6.7-7 8-4-1.3-7-4-7-8V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
    .rc-feat:nth-child(3) .ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V5a2 2 0 0 1 2-2h5a2 2 0 0 1 2 2v16'/%3E%3Cpath d='M3 21h13'/%3E%3Cpath d='M6 11h6'/%3E%3Cpath d='M14 8l3 3v6a2 2 0 0 0 4 0V9l-3-3'/%3E%3C/svg%3E"); }
    .rc-feat:nth-child(4) .ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3Ccircle cx='16.5' cy='14.5' r='1'/%3E%3C/svg%3E"); }

    .service-icon { font-size: 0; color: transparent; background-repeat: no-repeat; background-position: center; background-size: 34px; }
    .service-card:nth-child(1) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V8l5-3v16'/%3E%3Cpath d='M9 21V11l7-4v14'/%3E%3Cpath d='M16 21V9l4 2v10'/%3E%3Cpath d='M3 21h18'/%3E%3C/svg%3E"); }
    .service-card:nth-child(2) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 21l2-18'/%3E%3Cpath d='M17 21l-2-18'/%3E%3Cpath d='M12 5v2'/%3E%3Cpath d='M12 11v2'/%3E%3Cpath d='M12 17v2'/%3E%3C/svg%3E"); }
    .service-card:nth-child(3) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='1'/%3E%3Cpath d='M9 7h2'/%3E%3Cpath d='M13 7h2'/%3E%3Cpath d='M9 11h2'/%3E%3Cpath d='M13 11h2'/%3E%3Cpath d='M9 15h2'/%3E%3Cpath d='M13 15h2'/%3E%3C/svg%3E"); }
    .service-card:nth-child(4) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Ccircle cx='17' cy='9' r='2'/%3E%3Cpath d='M3 20a6 6 0 0 1 12 0'/%3E%3Cpath d='M15 20a4 4 0 0 1 6-3'/%3E%3C/svg%3E"); }
    .service-card:nth-child(5) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='9' r='3'/%3E%3Ccircle cx='16' cy='9' r='3'/%3E%3Cpath d='M2 20a6 6 0 0 1 12 0'/%3E%3Cpath d='M12 20a6 6 0 0 1 10-4'/%3E%3C/svg%3E"); }
    .service-card:nth-child(6) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15l-7.5-2.5V6a1.5 1.5 0 0 0-3 0v6.5L3 15v2l7.5-2v3L8 19.5V21l4-1 4 1v-1.5L13.5 18v-3l7.5 2z'/%3E%3C/svg%3E"); }
    .service-card:nth-child(7) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21C7 17 4 14 4 10a4 4 0 0 1 8-1 4 4 0 0 1 8 1c0 4-3 7-8 11z'/%3E%3C/svg%3E"); }
    .service-card:nth-child(8) .service-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f28c00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2l5 4H7z'/%3E%3Cpath d='M6 10h12v11H6z'/%3E%3Cpath d='M4 21h16'/%3E%3Cpath d='M10 21v-5h4v5'/%3E%3C/svg%3E"); }

    .modal-badges .mb-ico { font-size: 0; color: transparent; height: 42px; background-repeat: no-repeat; background-position: center; background-size: 38px; }
    .modal-badges .mb:nth-child(1) .mb-ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 17l1-5 1.5-4h9L18 12l1 5'/%3E%3Cpath d='M4 17h16'/%3E%3Ccircle cx='8' cy='17' r='1.5'/%3E%3Ccircle cx='16' cy='17' r='1.5'/%3E%3C/svg%3E"); }
    .modal-badges .mb:nth-child(2) .mb-ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316a34a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 4-3 6.7-7 8-4-1.3-7-4-7-8V6z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
    .modal-badges .mb:nth-child(3) .mb-ico { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5a623' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='12' height='17' rx='2'/%3E%3Cpath d='M9 4V3h6v1'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }

    /* ===== ANIMATIONS ===== */
    @keyframes fadeUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: none; } }
    .reveal { opacity: 0; transform: translateY(34px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.3,1); will-change: opacity, transform; }
    .reveal.in { opacity: 1; transform: none; }
    .hero h1, .hero .container > p, .hero-badges, .hero-dots, .booking { animation: fadeUp .8s both; }
    .hero h1 { animation-delay: .1s; }
    .hero .container > p { animation-delay: .25s; }
    .hero-badges { animation-delay: .4s; }
    .hero-dots { animation-delay: .5s; }
    .booking { animation-delay: .6s; }
    /* soft floating accent on the whatsapp + hero for a lively feel */
    .sight-card:hover, .adv-card:hover { box-shadow: 0 20px 50px rgba(6,15,35,.35); }
    @media (prefers-reduced-motion: reduce) {
      .reveal { opacity: 1 !important; transform: none !important; transition: none; }
      .hero h1, .hero .container > p, .hero-badges, .hero-dots, .booking { animation: none; }
      .hero-slide, .wa-float { animation: none !important; }
    }

    /* ===== RESPONSIVE ===== */
    @media (max-width: 1080px) {
      .menu { position: fixed; top: 0; right: -100%; height: 100vh; width: 78%; max-width: 320px; background: #fff; flex-direction: column; align-items: flex-start; padding: 90px 30px; gap: 22px; box-shadow: -10px 0 40px rgba(0,0,0,.15); transition: right .3s; z-index: 110; overflow-y: auto; }
      .menu.open { right: 0; }
      .menu a { font-size: 1.05rem; }
      .hamburger { display: block; z-index: 120; }
    }
    @media (max-width: 992px) {
      .banner-grid, .service-grid, .pkg-grid { grid-template-columns: repeat(2, 1fr); }
      .blog-grid, .review-grid { grid-template-columns: 1fr 1fr; }
      .about-grid, .van-grid { grid-template-columns: 1fr; }
      .footer-grid { grid-template-columns: 1fr 1fr; }
      .booking-form { grid-template-columns: repeat(2, 1fr); }
      .booking-form .btn { grid-column: 1 / -1; }
      .sights-head, .slider-head { flex-direction: column; align-items: flex-start; }
      .modal { grid-template-columns: 1fr; max-width: 460px; }
      .modal-left { display: none; }
    }
    @media (max-width: 768px) {
      .topbar { display: none; }   /* hide address / phone / email strip on mobile */
      .nav-cta .call-btn span { display: none; }
      .van-card { grid-template-columns: 1fr; }
      .van-card img { min-height: 200px; }
      .blog-grid, .review-grid { grid-template-columns: 1fr; }
      .ride-card { flex: 0 0 88%; }
    }
    @media (max-width: 600px) {
      .nav-cta .call-btn { display: none; }   /* number stays in top bar + drawer */
      .logo { font-size: 1.05rem; }
      .logo .mark { width: 38px; height: 38px; font-size: 1.15rem; }
      .topbar { font-size: .78rem; }
    }
    @media (max-width: 560px) {
      .banner-grid, .service-grid, .pkg-grid, .footer-grid, .booking-form, .about-list { grid-template-columns: 1fr; }
      section { padding: 52px 0; }
      .about-exp { right: 10px; bottom: -18px; padding: 14px 18px; }
      .modal-right { padding: 30px 22px; }
      .modal-row { grid-template-columns: 1fr; }
      .trip-types { gap: 12px 18px; }
      .sight-card { flex: 0 0 260px; height: 360px; }
      .cta-actions .btn { width: 100%; }
      .ride-card { flex: 0 0 100%; }
      .adv-card { flex: 0 0 88%; }
      .slider { gap: 16px; }
      .rc-feats { grid-template-columns: 1fr; gap: 14px; }
      .rc-buy { flex-direction: column; align-items: stretch; }
      .rc-buy .btn { width: 100%; }
      .rc-body { padding: 4px 20px 20px; }
    }

    /* ============================================================
       ADDED FOR MULTI-PAGE PHP SITE
       ============================================================ */

    /* --- Dropdown nav menu --- */
    .menu > li { position: relative; }
    .menu .has-drop > a::after { content: " ▾"; font-size: .7rem; color: var(--muted); }
    .dropdown {
      position: absolute; top: 130%; left: 0; min-width: 240px; background: #fff;
      border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow);
      padding: 10px; list-style: none; opacity: 0; visibility: hidden; transform: translateY(8px);
      transition: .22s; z-index: 120;
    }
    .menu > li:hover > .dropdown { opacity: 1; visibility: visible; transform: translateY(0); }
    .dropdown li { display: block; }
    .dropdown a { display: block; padding: 9px 14px; border-radius: 9px; font-size: .9rem; color: var(--ink); font-weight: 500; }
    .dropdown a:hover { background: var(--bg-soft); color: var(--orange); }
    .menu .nav-book { background: var(--orange); color: #fff !important; padding: 9px 20px; border-radius: 30px; font-weight: 700; }
    .menu .nav-book:hover { background: var(--orange-2); color: #fff !important; }

    /* --- Page hero / breadcrumb --- */
    .page-hero { position: relative; padding: 70px 0; color: #fff; text-align: center; overflow: hidden; }
    .page-hero .page-hero-bg {
      position: absolute; inset: 0; z-index: 0;
      background: linear-gradient(rgba(13,33,73,.82), rgba(13,33,73,.9)),
        url('../img/cab-car-rental-in-indore.jpg') center/cover;
    }
    .page-hero .container { position: relative; z-index: 2; }
    .page-hero h1 { font-size: clamp(1.9rem, 4vw, 2.9rem); font-weight: 800; }
    .page-hero h1 span { color: var(--orange); }
    .page-hero p { max-width: 640px; margin: 14px auto 26px; color: #d7deee; }
    .crumbs { display: flex; gap: 8px; justify-content: center; align-items: center; font-size: .85rem; color: #b9c4de; margin-bottom: 16px; flex-wrap: wrap; }
    .crumbs a { color: #b9c4de; }
    .crumbs a:hover { color: var(--orange); }
    .crumbs b { color: #fff; font-weight: 600; }
    .btn-lg { padding: 15px 34px; font-size: 1rem; }

    /* --- Fleet grid (vehicle cards laid out, not slider) --- */
    .fleet-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
    .fleet-grid .ride-card { flex: none; }

    /* --- Gallery --- */
    .gallery-section { background: var(--bg-soft); }
    .gallery-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
    .gallery-item { border-radius: 14px; overflow: hidden; box-shadow: var(--shadow-sm); height: 190px; background: var(--navy); }
    .gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: .4s; }
    .gallery-item:hover img { transform: scale(1.08); }

    /* --- Link cards (cities / services / cab links) --- */
    .link-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
    .link-card {
      display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line);
      border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: .25s; color: var(--ink);
    }
    .link-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
    .link-card .lc-img { height: 190px; overflow: hidden; background: var(--navy); }
    .link-card .lc-img img { width: 100%; height: 100%; object-fit: cover; transition: .4s; }
    .link-card:hover .lc-img img { transform: scale(1.07); }
    .link-card .lc-body { padding: 22px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
    .link-card h3 { color: var(--navy); font-size: 1.25rem; }
    .link-card p { color: var(--muted); font-size: .9rem; flex: 1; }
    .link-card .lc-go { color: var(--orange); font-weight: 700; font-size: .9rem; margin-top: 6px; }

    /* --- Simple checklist / service links list --- */
    .svc-links { list-style: none; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
    .svc-links a {
      display: flex; align-items: center; gap: 10px; background: #fff; border: 1px solid var(--line);
      border-radius: 12px; padding: 14px 16px; font-weight: 600; color: var(--navy); transition: .2s;
    }
    .svc-links a:hover { border-color: var(--orange); color: var(--orange); transform: translateX(4px); }
    .svc-links a::before { content: "🚕"; }

    /* --- Detail page two-column --- */
    .detail-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 46px; align-items: center; }
    .detail-grid img { border-radius: var(--radius); box-shadow: var(--shadow); width: 100%; }
    .detail-text h2 { color: var(--navy); font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 800; }
    .detail-text .kicker { color: var(--orange); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; font-size: .82rem; }
    .detail-text p { color: var(--muted); margin: 14px 0; }
    .spec-list { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 18px 0 26px; }
    .spec-list li { background: var(--bg-soft); border-radius: 10px; padding: 12px 14px; }
    .spec-list .k { font-size: .7rem; text-transform: uppercase; letter-spacing: .5px; color: var(--muted); font-weight: 700; }
    .spec-list .v { color: var(--navy); font-weight: 700; }
    .detail-cta { display: flex; gap: 14px; flex-wrap: wrap; }

    /* --- Contact --- */
    .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
    .contact-info { display: flex; flex-direction: column; gap: 18px; }
    .contact-info .ci-item { display: flex; gap: 14px; align-items: flex-start; }
    .contact-info .ci-ico { width: 46px; height: 46px; border-radius: 12px; background: var(--bg-soft); display: grid; place-items: center; font-size: 1.3rem; flex-shrink: 0; }
    .contact-info b { color: var(--navy); display: block; }
    .contact-info a, .contact-info span { color: var(--muted); }
    .map-wrap { border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); min-height: 320px; }
    .map-wrap iframe { width: 100%; height: 100%; min-height: 320px; border: 0; display: block; }

    @media (max-width: 1080px) {
      .dropdown { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none;
        border: none; border-left: 2px solid var(--line); border-radius: 0; margin: 6px 0 6px 10px; padding: 0 0 0 8px; display: none; }
      .menu .has-drop.open > .dropdown { display: block; }
    }
    @media (max-width: 992px) {
      .fleet-grid, .link-grid, .svc-links { grid-template-columns: repeat(2, 1fr); }
      .gallery-grid { grid-template-columns: repeat(3, 1fr); }
      .detail-grid, .contact-grid { grid-template-columns: 1fr; }
    }
    @media (max-width: 560px) {
      .fleet-grid, .link-grid, .svc-links, .spec-list { grid-template-columns: 1fr; }
      .gallery-grid { grid-template-columns: repeat(2, 1fr); }
    }

    /* ============================================================
       SLIDER ARROWS + HERO DOTS — bigger, clearer, not cramped
       ============================================================ */
    .sights-nav { gap: 14px; }
    .sights-nav button {
      width: 56px; height: 56px; font-size: 1.9rem; line-height: 1;
      border: 2px solid var(--orange); background: #fff; color: var(--orange);
      box-shadow: var(--shadow-sm); display: grid; place-items: center; padding: 0 0 4px;
      font-weight: 700; transition: .22s;
    }
    .sights-nav button:hover { background: var(--orange); color: #fff; border-color: var(--orange); transform: translateY(-2px); }
    .sights-nav button:active { transform: translateY(0); }

    /* give the arrows room so they don't stick to the section edge */
    .slider-head, .sights-head { margin-bottom: 40px; align-items: center; }
    .slider-head .sights-nav, .sights-head .sights-nav { padding-top: 4px; }

    /* Hero slide dots — a bit bigger + spaced from the edge */
    .hero-dots { gap: 12px; margin-top: 30px; margin-bottom: 8px; }
    .hero-dots button { width: 14px; height: 14px; }
    .hero-dots button.active { width: 34px; }

    @media (max-width: 560px) {
      .sights-nav button { width: 50px; height: 50px; font-size: 1.7rem; }
    }

    /* ============================================================
       SLIDER HEIGHT +15%
       ============================================================ */
    .ride-card .rc-img { height: 202px; }   /* was 176px */
    .sight-card { height: 460px; }           /* was 400px */
    .adv-card   { height: 391px; }           /* was 340px */

    @media (max-width: 560px) {
      .sight-card { height: 414px; }         /* was 360px */
    }

    /* ============================================================
       HERO HEIGHT +15% (form removed, so give it more room)
       ============================================================ */
    .hero { padding-top: 72px; padding-bottom: 76px; min-height: 82vh; display: flex; align-items: center; }
    .hero .container { width: min(1180px, 92%); }
    @media (max-width: 768px) {
      .hero { min-height: 68vh; padding-bottom: 60px; }
    }

    /* ===== Vehicle detail: features + best-for ===== */
    .feature-cols { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: start; }
    .feature-list { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
    .feature-list li { display: flex; align-items: flex-start; gap: 10px; font-weight: 500; color: var(--ink); font-size: .95rem; }
    .feature-list li::before { content: "✔"; color: #fff; background: var(--orange); width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; font-size: .7rem; flex-shrink: 0; margin-top: 2px; }
    .best-for-box { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); padding: 26px; box-shadow: var(--shadow-sm); }
    .best-for-box h3 { color: var(--navy); font-size: 1.2rem; margin-bottom: 16px; }
    .chips { display: flex; flex-wrap: wrap; gap: 10px; }
    .chip { background: var(--bg-soft); color: var(--navy); font-weight: 600; font-size: .85rem; padding: 8px 14px; border-radius: 30px; border: 1px solid var(--line); }
    @media (max-width: 860px) {
      .feature-cols { grid-template-columns: 1fr; gap: 28px; }
      .feature-list { grid-template-columns: 1fr; }
    }
