*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Nunito',sans-serif;background:var(--nv);color:var(--wh);-webkit-font-smoothing:antialiased}

.lem{width:38px;height:38px;background:linear-gradient(135deg,var(--sf),var(--sf3));border-radius:var(--r12);display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 16px var(--sfg)}
.ln{font-family:'Cinzel',serif;font-size:15px;font-weight:700;background:linear-gradient(135deg,var(--sf2),var(--gd));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ls{font-size:9px;color:rgba(255,255,255,.3);letter-spacing:2px;text-transform:uppercase;display:block;margin-top:1px}
nav{display:flex;align-items:center;gap:4px}
nav a{color:rgba(255,255,255,.85);text-decoration:none;font-size:13px;font-weight:600;padding:7px 14px;border-radius:var(--r6);transition:all .2s}
nav a:hover{color:var(--wh);background:rgba(244,123,0,.1)}

.accent{background:linear-gradient(135deg,var(--sf2),#F5D060);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

.page-hero{background:linear-gradient(160deg,var(--nv2),var(--nv3));border-bottom:1px solid rgba(244,123,0,.12);padding:64px 5%;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;top:-80px;right:-80px;width:400px;height:400px;background:radial-gradient(ellipse,rgba(244,123,0,.08),transparent 70%);pointer-events:none}
.page-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--sf),var(--gd),var(--sf),transparent)}
.ptag{display:inline-flex;align-items:center;gap:8px;background:rgba(244,123,0,.1);border:1px solid rgba(244,123,0,.22);border-radius:var(--rp);padding:5px 16px;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--sf2);margin-bottom:14px}
.ph{font-family:'Cinzel',serif;font-size:clamp(26px,4vw,48px);font-weight:700;color:var(--wh);margin-bottom:12px;line-height:1.15}
.ps{font-size:14px;color:rgba(255,255,255,.75);max-width:520px;line-height:1.75}

.content{max-width:1100px;margin:0 auto;padding:60px 5%}

/* Quick contact strip */
.qc-strip{background:linear-gradient(135deg,rgba(244,123,0,.12),rgba(232,189,58,.06));border:1px solid rgba(244,123,0,.2);border-radius:var(--r28);padding:32px 36px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;margin-bottom:48px}
.qc-text h2{font-family:'Cinzel',serif;font-size:22px;color:var(--wh);margin-bottom:4px}
.qc-text p{font-size:13px;color:rgba(255,255,255,.45)}
.qc-btns{display:flex;gap:10px;flex-wrap:wrap}
.btn-call{background:linear-gradient(135deg,var(--sf),var(--sf3));color:var(--wh);padding:12px 24px;border-radius:var(--r12);font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 20px var(--sfg);transition:all .2s}
.btn-call:hover{transform:translateY(-2px);box-shadow:0 10px 28px var(--sfg)}
.btn-wa{background:rgba(37,211,102,.15);border:1px solid rgba(37,211,102,.25);color:#25D366;padding:12px 24px;border-radius:var(--r12);font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:all .2s}
.btn-wa:hover{background:rgba(37,211,102,.25);transform:translateY(-2px)}

/* Grid layout */
.grid-2{display:grid;grid-template-columns:1fr 1.4fr;gap:32px}

/* Info cards */
.info-cards{display:flex;flex-direction:column;gap:14px}
.icard{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:var(--r20);padding:20px;display:flex;align-items:flex-start;gap:14px;transition:all .25s}
.icard:hover{border-color:rgba(244,123,0,.3);background:rgba(244,123,0,.04)}
.icard-icon{width:44px;height:44px;background:rgba(244,123,0,.1);border:1px solid rgba(244,123,0,.2);border-radius:var(--r12);display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.icard-label{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:4px}
.icard-value{font-size:14px;font-weight:700;color:var(--wh);line-height:1.5}
.icard-value a{color:var(--sf2);text-decoration:none}
.icard-value a:hover{color:var(--gd)}
.icard-sub{font-size:11px;color:rgba(255,255,255,.3);margin-top:3px}

.hours-card{background:rgba(180,90,30,.2);border:1px solid rgba(180,90,30,.4);border-radius:var(--r20);padding:22px;margin-top:14px}
.hours-title{font-family:'Cinzel',serif;font-size:14px;color:var(--wh);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.hours-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:13px}
.hours-row:last-child{border:none}
.hours-day{color:rgba(255,255,255,.5)}
.hours-time{color:var(--sf2);font-weight:700}

/* Form */
.form-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:var(--r28);padding:32px;box-shadow:0 4px 24px rgba(26,8,0,.5)}
.form-title{font-family:'Cinzel',serif;font-size:20px;color:var(--wh);margin-bottom:4px}
.form-sub{font-size:13px;color:rgba(255,255,255,.4);margin-bottom:24px}
.field{margin-bottom:16px}
.field label{display:block;font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.3);margin-bottom:6px}
.field-wrap{position:relative}
.finput{width:100%;padding:12px 14px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);border-radius:var(--r12);font-size:14px;font-weight:600;color:var(--wh);font-family:'Nunito',sans-serif;outline:none;transition:all .2s;-webkit-appearance:none}
.finput::placeholder{color:rgba(255,255,255,.2);font-weight:400}
.finput:focus{border-color:rgba(244,123,0,.45);background:rgba(244,123,0,.04);box-shadow:0 0 0 3px rgba(244,123,0,.1)}
.finput option{background:var(--nv3)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.btn-submit{width:100%;padding:15px;background:linear-gradient(135deg,var(--sf),var(--sf3));border:none;border-radius:var(--r12);color:var(--wh);font-size:15px;font-weight:700;font-family:'Nunito',sans-serif;cursor:pointer;transition:all .25s;box-shadow:0 8px 28px var(--sfg),inset 0 1px 0 rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px}
.btn-submit:hover{transform:translateY(-2px);box-shadow:0 14px 40px var(--sfg)}
.success-msg{display:none;background:rgba(29,173,16,.12);border:1px solid rgba(29,173,16,.25);border-radius:var(--r12);padding:14px 18px;color:var(--gr3);font-size:14px;font-weight:600;margin-top:14px;align-items:center;gap:10px}
.success-msg.show{display:flex}

/* Map */
.map-card{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:var(--r28);overflow:hidden;margin-top:48px}
.map-hdr{padding:18px 24px;border-bottom:1px solid rgba(255,255,255,.05)}
.map-hdr h3{font-family:'Cinzel',serif;font-size:16px;color:var(--wh)}
.map-body{background:linear-gradient(135deg,rgba(180,90,30,.2),rgba(26,8,0,.5));height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.map-body .icon{font-size:56px}
.map-body p{font-size:14px;font-weight:700;color:var(--wh)}
.map-body small{font-size:12px;color:rgba(255,255,255,.35)}
.btn-maps{background:rgba(244,123,0,.12);border:1px solid rgba(244,123,0,.25);color:var(--sf2);padding:10px 22px;border-radius:var(--r12);font-size:13px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:all .2s;margin-top:4px}
.btn-maps:hover{background:rgba(244,123,0,.22)}

footer a{color:var(--sf2);text-decoration:none}
@media(max-width:860px){.grid-2{grid-template-columns:1fr}.row2{grid-template-columns:1fr}nav{display:none}}

/* ═══════════════════ CHAKRA BEHIND GIRL LOADER ═══════════════════ */
#loader {
  position: fixed; inset: 0; z-index: 9999;
  background: linear-gradient(175deg, #F2F4FA 0%, #E8ECF7 45%, #DDE3F4 100%);
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  transition: opacity 0.9s ease, visibility 0.9s ease;
  overflow: hidden;
}
#loader.out { opacity: 0; visibility: hidden; pointer-events: none; }

#loader::before {
  content: '';
  position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse 65% 55% at 50% 38%,
    rgba(255,255,255,0.78) 0%, rgba(255,255,255,0.28) 55%, transparent 100%);
}

/* ── LAYER STACK ── */
.ld-scene {
  position: relative;
  width: min(320px, 86vw);
  height: min(400px, 108vw);
  animation: ldSceneReveal 0.9s 0.2s cubic-bezier(0.34,1.1,0.64,1) both,
             ldFloat 4.5s 1.2s ease-in-out infinite;
}
@keyframes ldSceneReveal {
  from { opacity: 0; transform: scale(0.82) translateY(18px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}
@keyframes ldFloat {
  0%,100% { transform: translateY(0); }
  50%     { transform: translateY(-7px); }
}

/* LAYER 1 — India map (bottom) */
.ld-map-img {
  position: absolute;
  inset: 0; width: 100%; height: 100%;
  object-fit: contain;
  object-position: center 30%;
  z-index: 1;
  opacity: 0.85;
}

/* LAYER 2 — Spinning Ashoka Chakra (behind girl, in front of map) */
.ld-chakra-svg {
  position: absolute;
  /* centre it over the chakra position in the map photo */
  left: 50%; top: 46%;
  transform: translate(-50%, -50%);
  width: 85%; height: auto;
  z-index: 2;
  animation: ldChakraSpin 8s linear infinite;
  transform-origin: center center;
  filter: drop-shadow(0 6px 24px rgba(4,12,60,0.35));
}
@keyframes ldChakraSpin {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to   { transform: translate(-50%, -50%) rotate(360deg); }
}

/* LAYER 3 — Girl photo (front, on top of chakra) */
.ld-girl-img {
  position: absolute;
  left: 50%; top: 46%;
  transform: translate(-50%, -50%);
  width: 58%; height: auto;
  z-index: 3;
  object-fit: contain;
}

/* bottom text */
.loader-bottom {
  position: relative; z-index: 6;
  text-align: center; margin-top: 14px;
  animation: ldTextReveal 0.7s 0.9s ease both;
}
@keyframes ldTextReveal {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: translateY(0); }
}
.loader-brand {
  font-family: 'Playfair Display','Cinzel', Georgia, serif;
  font-size: clamp(20px,5vw,26px); font-weight: 700;
  color: #040C1E; letter-spacing:-0.01em;
  margin-bottom: 5px; line-height: 1.25;
}
.loader-tagline {
  font-family: 'Nunito', sans-serif;
  font-size: 13px; font-weight: 500;
  color: rgba(26,8,0,0.52); line-height: 1.65; margin-bottom: 16px;
}
.ld-badge {
  width: 72px; height: 72px; border-radius: 50%;
  overflow: hidden; margin: 0 auto;
  box-shadow: 0 2px 14px rgba(26,8,0,0.14),
              0 0 0 2px rgba(201,162,39,0.45);
  animation: ldBadgePop 0.6s 1.2s cubic-bezier(0.34,1.4,0.64,1) both;
}
@keyframes ldBadgePop {
  from { opacity: 0; transform: scale(0.5); }
  to   { opacity: 1; transform: scale(1); }
}
.ld-badge img { width:100%; height:100%; object-fit:cover; }
.loader-bar {
  width: 180px; height: 2px;
  background: rgba(26,8,0,0.08);
  border-radius: 2px; margin: 14px auto 0; overflow: hidden;
}
.loader-bar-fill {
  height: 100%; width: 0; border-radius: 2px;
  background: linear-gradient(90deg, #F47B00, #C9A227, #138808);
  animation: ldFill 2.6s cubic-bezier(0.4,0,0.2,1) forwards;
}
@keyframes ldFill { to { width: 100%; } }

/* ═══════════════════════════════════════════════
   /* ═══════════════════ WARM PEACH THEME — Token Override
═══════════════════════════════════════════════ */
:root {
  /* sf2/gd/sf3/sfg/r6/r12/r20/r28/rp/gr3/nv/nv2/nv3 were used throughout this
     file (button gradients, glow shadows, border-radius on cards/badges/nav
     links, success-message color) but never actually defined here — they
     silently resolved to nothing. Colors fall back to inherited values
     and mostly still looked okay by coincidence, but border-radius and
     box-shadow with an undefined var() are simply dropped, so every element
     using --r6/--r12/--r20/--r28/--rp rendered with square corners instead
     of rounded ones, and --sfg/--sf-glow shadows never appeared at all.
     Same standard values used consistently across every other page. */
  --sf:  #F47B00;
  --sf2: #FF9D2F;
  --sf3: #A85200;
  --sfg: rgba(244,123,0,0.28);
  --sf-glow: rgba(244,123,0,0.35);
  --gd:  #E8BD3A;
  --gd2: #F5D060;
  --gr:  #1DAD10;
  --gr3: #49CF3E;
  --nv:  #040C1E;
  --nv2: #061428;
  --nv3: #0B1F3A;
  --nv4: #1C3E6A;
  --r6:  6px;
  --r12: 12px;
  --r20: 20px;
  --r28: 28px;
  --rp:  100px;

  --pc-900: #FFF0E8;   /* page base — warm peach */
  --pc-800: #FFE8DC;   /* alt sections */
  --pc-700: #FFD9C8;   /* deeper peach */
  --pc-600: #F5C4AC;   /* borders */
  --pc-400: #D4956A;   /* muted accent */
  --pc-200: #A86840;   /* sub-text */
  --pc-100: #7A4420;   /* dark-on-light */

  /* Flip text to dark */
  --wh:     #1A0800;
  --cream:  #FFF0E8;
  --muted:  rgba(60,25,5,0.55);
  --faint:  rgba(60,25,5,0.09);

  /* Softer shadows on light bg */
  --shadow-card: 0 4px 24px rgba(180,90,30,0.12), 0 1px 4px rgba(180,90,30,0.07);
  --shadow-hero:  0 20px 80px rgba(180,90,30,0.14);
  --glow-sf: 0 0 40px rgba(244,123,0,0.20);
  --glow-gd: 0 0 30px rgba(201,162,39,0.14);
}

/* ── PAGE BASE ── */
body { background: #FFF0E8 !important; color: #1A0800 !important; }

/* ── HEADER ── */

header::before {
  background: linear-gradient(90deg,#F47B00,#E8BD3A,#138808) !important;
}

.logo-name, 

nav a { color: rgba(26,8,0,0.70) !important; font-weight:700 !important; }
nav a:hover { color: #F47B00 !important; background: rgba(244,123,0,0.10) !important; }

/* ── HERO ── */
.hero { background: #FFF0E8 !important; }
.hero-grid {
  background-image: radial-gradient(circle, rgba(180,90,30,0.10) 1px, transparent 1px) !important;
}
.blob-1 { background: radial-gradient(ellipse,rgba(244,123,0,0.10) 0%,transparent 70%) !important; }
.blob-2 { background: radial-gradient(ellipse,rgba(201,162,39,0.07) 0%,transparent 70%) !important; }
.blob-3 { background: radial-gradient(ellipse,rgba(19,136,8,0.05) 0%,transparent 70%) !important; }
.hero-headline, .hero-eyebrow, .hero-sub { color: #1A0800 !important; }
.hero-sub { color: rgba(60,25,5,0.60) !important; }
.hero-eyebrow {
  background: rgba(244,123,0,0.12) !important;
  border-color: rgba(244,123,0,0.28) !important;
  color: #D46800 !important;
}
.hstat-num { background: linear-gradient(135deg,#F47B00,#E8BD3A); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.hstat-label { color: rgba(60,25,5,0.45) !important; }
.trust-badge {
  background: rgba(60,25,5,0.06) !important;
  border-color: rgba(60,25,5,0.12) !important;
  color: rgba(60,25,5,0.65) !important;
}

/* ── BOOKING WIDGET ── */
.booking-widget {
  background: rgba(255,255,255,0.85) !important;
  border-color: rgba(244,123,0,0.22) !important;
  box-shadow: 0 8px 48px rgba(180,90,30,0.16) !important;
}
.widget-top-bar {
  background: linear-gradient(135deg,rgba(244,123,0,0.12),rgba(201,162,39,0.06)) !important;
  border-bottom-color: rgba(244,123,0,0.18) !important;
}
.widget-title { color: #1A0800 !important; }
.trip-tab { color: rgba(60,25,5,0.45) !important; }
.trip-tab.active { background: linear-gradient(135deg,#F47B00,#A85200) !important; color:#fff !important; }
.trip-tabs { background: rgba(60,25,5,0.06) !important; border-color: rgba(60,25,5,0.10) !important; }
.field-label { color: rgba(60,25,5,0.45) !important; }
.field-input {
  background: rgba(255,255,255,0.90) !important;
  border-color: rgba(60,25,5,0.14) !important;
  color: #1A0800 !important;
}
.field-input::placeholder { color: rgba(60,25,5,0.32) !important; }
.field-input:focus {
  border-color: rgba(244,123,0,0.55) !important;
  box-shadow: 0 0 0 3px rgba(244,123,0,0.12) !important;
  background: #fff !important;
}
.field-input option { background: #FFF0E8; color: #1A0800; }
.widget-
.wf-item { color: rgba(60,25,5,0.40) !important; }

/* autocomplete */
.autocomplete-list, .pac-container {
  background: #FFF0E8 !important;
  border-color: rgba(244,123,0,0.35) !important;
  box-shadow: 0 16px 48px rgba(180,90,30,0.18) !important;
}
.autocomplete-item:hover { background: rgba(244,123,0,0.09) !important; }
.autocomplete-item .ac-sub { color: rgba(60,25,5,0.42) !important; }

/* ── TRUST BAR ── */
.trust-bar { background: #FFE8DC !important; border-color: rgba(60,25,5,0.06) !important; }
.tb-item { color: rgba(60,25,5,0.62) !important; border-right-color: rgba(60,25,5,0.08) !important; }

/* ── SECTION LABELS / TITLES ── */
.sec-tag { background: rgba(244,123,0,0.10) !important; border-color: rgba(244,123,0,0.22) !important; }
.sec-title { color: #1A0800 !important; }
.sec-sub { color: rgba(60,25,5,0.55) !important; }

/* ── FLEET ── */
.fleet-section { background: #FFE8DC !important; }
.fleet-card {
  background: rgba(255,255,255,0.88) !important;
  border-color: rgba(60,25,5,0.10) !important;
  box-shadow: 0 2px 14px rgba(180,90,30,0.08) !important;
}
.fleet-card:hover { border-color: rgba(244,123,0,0.40) !important; box-shadow: 0 16px 40px rgba(180,90,30,0.16) !important; }
.fleet-name { color: #1A0800 !important; }
.fleet-models { color: rgba(60,25,5,0.38) !important; }
.fleet-spec { background: rgba(60,25,5,0.06) !important; border-color: rgba(60,25,5,0.09) !important; color: rgba(60,25,5,0.58) !important; }
.fleet-price-box { background: rgba(60,25,5,0.04) !important; border-color: rgba(60,25,5,0.08) !important; }
.fp-unit, .fp-type { color: rgba(60,25,5,0.35) !important; }
.fleet-book { background: rgba(244,123,0,0.10) !important; border-color: rgba(244,123,0,0.28) !important; color: #D46800 !important; }

/* ── CALC ── */
.calc-section { background: #FFF0E8 !important; }
.calc-glass { background: rgba(255,255,255,0.88) !important; border-color: rgba(60,25,5,0.10) !important; }
.cr-row { border-bottom-color: rgba(60,25,5,0.06) !important; }
.cr-row .lbl { color: rgba(60,25,5,0.52) !important; }
.cr-row .val { color: #1A0800 !important; }
.crs-balance { background: rgba(60,25,5,0.05) !important; border-color: rgba(60,25,5,0.09) !important; }

/* ── ROUTES ── */
.routes-section { background: #FFE8DC !important; }
.route-card { background: rgba(255,255,255,0.85) !important; border-color: rgba(60,25,5,0.09) !important; }
.route-card:hover { background: rgba(244,123,0,0.06) !important; border-color: rgba(244,123,0,0.28) !important; }
.route-name { color: #1A0800 !important; }
.route-meta, .route-dist { color: rgba(60,25,5,0.40) !important; }

/* ── WHY ── */
.why-section { background: #FFF0E8 !important; }
.why-card { background: rgba(255,255,255,0.65) !important; border-color: rgba(60,25,5,0.09) !important; }
.why-card:hover { border-color: rgba(244,123,0,0.22) !important; box-shadow: 0 12px 40px rgba(180,90,30,0.12) !important; }
.why-icon-wrap { background: rgba(244,123,0,0.10) !important; border-color: rgba(244,123,0,0.20) !important; }
.why-title { color: #1A0800 !important; }
.why-text { color: rgba(60,25,5,0.58) !important; }

/* ── TESTIMONIALS ── */
.testi-section { background: #FFE8DC !important; }
.testi-card { background: rgba(255,255,255,0.65) !important; border-color: rgba(60,25,5,0.09) !important; }
.testi-card:hover { border-color: rgba(201,162,39,0.28) !important; box-shadow: 0 12px 36px rgba(180,90,30,0.13) !important; }
.testi-text { color: rgba(60,25,5,0.62) !important; }
.testi-name { color: #1A0800 !important; }
.testi-route { color: rgba(60,25,5,0.40) !important; }
.testi-quote-mark { color: rgba(244,123,0,0.12) !important; }

/* ── CTA ── */
.cta-section { background: #FFF0E8 !important; }
.cta-title { color: #1A0800 !important; }
.cta-sub { color: rgba(60,25,5,0.58) !important; }
.btn-secondary {
  background: rgba(60,25,5,0.07) !important;
  border-color: rgba(60,25,5,0.16) !important;
  color: #1A0800 !important;
}
.btn-secondary:hover { background: rgba(60,25,5,0.13) !important; }

/* ── FOOTER ── */

/* ── INNER PAGE HERO ── */
.page-hero { background: linear-gradient(160deg,#F5C4AC,#EDB48A) !important; border-bottom-color: rgba(200,90,0,0.28) !important; }
.ph { color: #1A0800 !important; }
.ps { color: rgba(60,25,5,0.68) !important; }
.ptag { background: rgba(244,123,0,0.10) !important; border-color: rgba(244,123,0,0.22) !important; }

/* ── CARDS — inner pages ── */
.icard { background: rgba(255,255,255,0.65) !important; border-color: rgba(60,25,5,0.09) !important; }
.icard:hover { border-color: rgba(244,123,0,0.28) !important; }
.icard-label { color: rgba(60,25,5,0.40) !important; }
.icard-value { color: #1A0800 !important; }
.icard-sub { color: rgba(60,25,5,0.32) !important; }
.hours-card { background: rgba(255,255,255,0.75) !important; border-color: rgba(60,25,5,0.10) !important; }
.hours-title { color: #1A0800 !important; }
.hours-day { color: rgba(60,25,5,0.52) !important; }
.hours-row { border-bottom-color: rgba(60,25,5,0.06) !important; }

/* ── CONTACT FORM ── */
.content { background: #FFE8DC !important; }
.form-card { background: rgba(255,255,255,0.78) !important; border-color: rgba(60,25,5,0.10) !important; box-shadow: 0 4px 24px rgba(180,90,30,0.10) !important; }
.form-title { color: #1A0800 !important; }
.form-sub { color: rgba(60,25,5,0.45) !important; }
.field label { color: rgba(60,25,5,0.45) !important; }
.finput { background: rgba(255,255,255,0.88) !important; border-color: rgba(60,25,5,0.12) !important; color: #1A0800 !important; }
.finput::placeholder { color: rgba(60,25,5,0.30) !important; }
.finput:focus { border-color: rgba(244,123,0,0.50) !important; background: #fff !important; }
.finput option { background: #FFF0E8; color: #1A0800; }
.qc-strip { background: linear-gradient(135deg,rgba(244,123,0,0.09),rgba(232,189,58,0.05)) !important; border-color: rgba(244,123,0,0.20) !important; }
.qc-text h2 { color: #1A0800 !important; }
.qc-text p { color: rgba(60,25,5,0.48) !important; }
.map-card { background: rgba(255,255,255,0.75) !important; border-color: rgba(60,25,5,0.08) !important; }
.map-hdr { border-bottom-color: rgba(60,25,5,0.07) !important; }
.map-hdr h3, .map-body p { color: #1A0800 !important; }

/* ── POLICIES ── */
.layout { background: #FFF0E8 !important; }
.policy-panel { background: rgba(255,255,255,0.85) !important; border-color: rgba(60,25,5,0.09) !important; }
.policy-sec { border-bottom-color: rgba(60,25,5,0.06) !important; }
.policy-title { color: #1A0800 !important; }
.policy-sub { color: rgba(60,25,5,0.52) !important; }
.hbox { background: rgba(244,123,0,0.08) !important; border-left-color: #F47B00 !important; }
.hbox p { color: rgba(60,25,5,0.82) !important; }
.snav-item { color: rgba(60,25,5,0.52) !important; }
.snav-item:hover { color: #1A0800 !important; background: rgba(60,25,5,0.05) !important; }
.snav-item.act { background: rgba(244,123,0,0.10) !important; border-left-color: #F47B00 !important; color: #D46800 !important; }
.snav h3 { color: rgba(60,25,5,0.32) !important; }
.snav-help { background: rgba(255,255,255,0.75) !important; border-color: rgba(60,25,5,0.12) !important; }
.snav-help h4 { color: #1A0800 !important; }
.snav-help small { color: rgba(60,25,5,0.35) !important; }

/* ── FAQ ── */
.faq-item { background: rgba(255,255,255,0.65) !important; border-color: rgba(60,25,5,0.09) !important; }
.faq-item:hover { border-color: rgba(244,123,0,0.25) !important; }
.faq-q { color: #1A0800 !important; }
.faq-a { color: rgba(60,25,5,0.58) !important; }

/* ── BLOG ── */
.blog-card { background: rgba(255,255,255,0.65) !important; border-color: rgba(60,25,5,0.09) !important; }
.blog-card:hover { border-color: rgba(244,123,0,0.28) !important; }
.blog-title { color: #1A0800 !important; }
.blog-excerpt { color: rgba(60,25,5,0.58) !important; }
.blog-meta { color: rgba(60,25,5,0.42) !important; }

/* ── DASHBOARDS ── */
.dash-card, .stat-card, .booking-row {
  background: rgba(255,255,255,0.88) !important;
  border-color: rgba(60,25,5,0.09) !important;
}
.dash-label, .stat-label { color: rgba(60,25,5,0.42) !important; }
.dash-value, .stat-value { color: #1A0800 !important; }

/* ── AUTOFILL ── */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px rgba(255,255,255,0.95) inset !important;
  -webkit-text-fill-color: #1A0800 !important;
  caret-color: #1A0800 !important;
}

/* ── PROSE (p, h3, li) — inner pages ── */
h3 { color: #1A0800 !important; }
p  { color: rgba(60,25,5,0.58) !important; }
ul li { color: rgba(60,25,5,0.58) !important; }

/* ── CONTACT PAGE — remaining component fixes ── */
.map-body { background: linear-gradient(135deg,rgba(244,123,0,0.10),rgba(232,189,58,0.06)) !important; }
.map-body p { color: #1A0800 !important; }
.map-body small { color: rgba(60,25,5,0.45) !important; }

/* ══════════════════ VIBRANT PEACH FOOTER ══════════════════ */
/* ─── FOOTER COMPLETE REDESIGN ─── */

  100% { background-position: 200% 50%; }
}

/* ── Footer Top Grid ── */

/* ── Brand Column ── */

.footer-brand p {
  font-size: 13.5px; color: rgba(255, 210, 160, 0.90);
  line-height: 1.90; margin-bottom: 22px;
}

/* ── Contact Rows ── */

.footer-contact-row:hover { color: #FFD4A0; }
.footer-contact-row .ic {
  color: #F47B00; font-size: 15px; margin-top: 1px; flex-shrink: 0;
  filter: drop-shadow(0 0 4px rgba(244,123,0,0.4));
}
.footer-contact-row a { color: inherit; text-decoration: none; }
.footer-contact-row a:hover { color: #FF9D2F; text-decoration: underline; }

/* ── Social Buttons ── */

.footer-social-btn svg { width: 20px; height: 20px; }
.footer-social-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.35);
}

/* ── Nav Columns ── */

/* ── Trust Badges ── */
.footer-trust {
  max-width: 1200px; margin: 0 auto;
  padding: 0 5% 32px;
  display: flex; gap: 10px; flex-wrap: wrap;
  position: relative; z-index: 1;
  justify-content: center;
  border-top: 1px solid rgba(244,123,0,0.12);
  padding-top: 28px;
}
.footer-trust-badge {
  display: flex; align-items: center; gap: 7px;
  background: rgba(244,123,0,0.11);
  border: 1px solid rgba(244,123,0,0.28);
  border-radius: 100px; padding: 7px 16px;
  font-size: 12px; font-weight: 700;
  color: rgba(255, 210, 160, 0.90);
  transition: all 0.2s;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}
.footer-trust-badge:hover {
  background: rgba(244,123,0,0.20);
  border-color: rgba(244,123,0,0.50);
  color: #FFD4A0;
}

/* ── Footer Bottom ── */

.mini-flag span { flex: 1; }
.mini-flag span:nth-child(1) { background: #F47B00 !important; }
.mini-flag span:nth-child(2) { background: rgba(255,255,255,0.90) !important; }
.mini-flag span:nth-child(3) { background: #138808 !important; }

.fb-links a {
  font-size: 12px; color: rgba(255, 210, 160, 0.55) !important;
  text-decoration: none; transition: color 0.2s;
}
.fb-links a:hover { color: #FF9D2F !important; }
/* ── FOOTER: counter body color inheritance ── */

.footer-contact-row a:hover { color: #FF9D2F !important; }

.fb-links a:hover { color: #FF9D2F !important; }
.footer-contact-row .ic { color: #F47B00 !important; }
/* ─── Typography Readability Improvements ─── */
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
p, li, .body-text, .desc, .description { font-size: 15px; line-height: 1.85; }

/* ═══════════════════════ FLOATING CALL + WHATSAPP ═══════════════════════ */

.float-btn:hover { transform: scale(1.08); }
.float-btn svg { width: 28px; height: 28px; }

@keyframes floatPulseCall {
  0%,100% { box-shadow: 0 8px 28px var(--sf-glow), 0 0 0 0 rgba(244,123,0,0.45); }
  50%     { box-shadow: 0 8px 28px var(--sf-glow), 0 0 0 10px rgba(244,123,0,0); }
}
@keyframes floatPulseWA {
  0%,100% { box-shadow: 0 8px 28px rgba(29,168,81,0.45), 0 0 0 0 rgba(29,168,81,0.45); }
  50%     { box-shadow: 0 8px 28px rgba(29,168,81,0.45), 0 0 0 10px rgba(29,168,81,0); }
}

.float-btn:hover 
@media (max-width: 768px) {
  /* Anchored to the bottom-right corner instead of vertically centered
     (top:50%) so the buttons don't sit on top of page content on mobile —
     see same fix applied in main.css for the homepage. */
  
  
  .float-btn svg { width: 25px; height: 25px; }
  
}

/* ═══════════════════════════════════════════════
   REDESIGNED HERO SECTION
═══════════════════════════════════════════════ */

/* Hero layout */
.page-hero {
  background: linear-gradient(135deg, #FFD9C8 0%, #F5C4AC 45%, #EDB48A 100%);
  border-bottom: 2px solid rgba(200,90,0,.22);
  padding: 72px 5% 56px;
  position: relative;
  overflow: hidden;
  min-height: 420px;
}

/* Animated gradient orbs */
.page-hero::before {
  content: '';
  position: absolute; top: -120px; right: -80px;
  width: 520px; height: 520px;
  background: radial-gradient(ellipse, rgba(244,123,0,.18), transparent 68%);
  pointer-events: none; animation: heroOrb1 8s ease-in-out infinite alternate;
}
.page-hero::after {
  content: '';
  position: absolute; bottom: -60px; left: -60px;
  width: 380px; height: 380px;
  background: radial-gradient(ellipse, rgba(180,90,30,.20), transparent 68%);
  pointer-events: none; animation: heroOrb2 10s ease-in-out infinite alternate;
}
@keyframes heroOrb1 { from{transform:translate(0,0) scale(1)} to{transform:translate(-40px,30px) scale(1.15)} }
@keyframes heroOrb2 { from{transform:translate(0,0) scale(1)} to{transform:translate(30px,-20px) scale(1.1)} }

/* Bottom gradient line */
.page-hero .hero-line {
  position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--sf), var(--gd), var(--sf), transparent);
}

/* Floating emoji particles */
.hero-particles { position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.hp {
  position: absolute; font-size: 22px; opacity: 0.06;
  animation: floatParticle linear infinite;
}
.hp1 { left:8%;  top:20%; animation-duration:12s; animation-delay:0s; }
.hp2 { left:18%; top:70%; animation-duration:15s; animation-delay:2s; }
.hp3 { left:75%; top:15%; animation-duration:11s; animation-delay:1s; }
.hp4 { left:85%; top:65%; animation-duration:14s; animation-delay:3s; }
.hp5 { left:45%; top:80%; animation-duration:13s; animation-delay:0.5s; }
.hp6 { left:60%; top:10%; animation-duration:16s; animation-delay:4s; }
@keyframes floatParticle {
  0%   { transform: translateY(0px) rotate(0deg);   opacity:.06; }
  50%  { transform: translateY(-28px) rotate(15deg); opacity:.12; }
  100% { transform: translateY(0px) rotate(0deg);   opacity:.06; }
}

/* Inner two-column layout */
.hero-inner {
  max-width: 1100px; margin: 0 auto;
  display: grid; grid-template-columns: 1fr 420px;
  gap: 48px; align-items: center; position: relative; z-index: 1;
}

/* Text column */
.hero-text-col {}

/* Entry animations */
.hero-anim-1 { animation: heroFadeUp .6s ease both; animation-delay:.05s; }
.hero-anim-2 { animation: heroFadeUp .6s ease both; animation-delay:.15s; }
.hero-anim-3 { animation: heroFadeUp .6s ease both; animation-delay:.25s; }
.hero-anim-4 { animation: heroFadeUp .6s ease both; animation-delay:.35s; }
.hero-anim-5 { animation: heroFadeUp .6s ease both; animation-delay:.45s; }
@keyframes heroFadeUp {
  from { opacity:0; transform:translateY(22px); }
  to   { opacity:1; transform:translateY(0); }
}

/* CTA buttons */
.hero-ctas { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 28px; }
.hcta-call {
  display: inline-flex; align-items: center; gap: 8px;
  background: linear-gradient(135deg, var(--sf), var(--sf3));
  color: #fff; padding: 13px 26px; border-radius: 50px;
  font-size: 14px; font-weight: 700; text-decoration: none;
  box-shadow: 0 8px 24px rgba(244,123,0,.35); transition: all .25s;
}
.hcta-call:hover { transform: translateY(-3px); box-shadow: 0 14px 36px rgba(244,123,0,.45); }
.hcta-wa {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(37,211,102,.12); border: 1.5px solid rgba(37,211,102,.30);
  color: #25D366; padding: 13px 26px; border-radius: 50px;
  font-size: 14px; font-weight: 700; text-decoration: none;
  transition: all .25s;
}
.hcta-wa:hover { background: rgba(37,211,102,.22); transform: translateY(-3px); }

/* Trust badges row */
.hero-badges { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 24px; }
.hbadge {
  display: flex; align-items: center; gap: 7px;
  font-size: 12px; font-weight: 600; color: rgba(60,25,5,0.70);
}
.hbadge-dot {
  width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
  animation: pulseDot 2s ease-in-out infinite;
}
.hbadge-dot.green  { background: #25D366; box-shadow: 0 0 8px rgba(37,211,102,.6); }
.hbadge-dot.orange { background: #F47B00; box-shadow: 0 0 8px rgba(244,123,0,.6); animation-delay:.4s; }
.hbadge-dot.blue   { background: #4A9EFF; box-shadow: 0 0 8px rgba(74,158,255,.6); animation-delay:.8s; }
@keyframes pulseDot {
  0%,100% { transform:scale(1); opacity:1; }
  50%      { transform:scale(1.4); opacity:.7; }
}

/* Stats cards grid */
.hero-stats-col {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.hstat-card {
  background: rgba(255,255,255,.92);
  border: 1.5px solid rgba(200,90,0,.22);
  border-radius: 18px; padding: 22px 16px;
  text-align: center; transition: all .3s;
  position: relative; overflow: hidden;
  box-shadow: 0 6px 24px rgba(120,50,0,.14);
}
.hstat-card::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(244,123,0,.06), transparent);
  opacity: 0; transition: opacity .3s;
}
.hstat-card:hover { border-color: rgba(244,123,0,.3); transform: translateY(-4px); box-shadow: 0 16px 40px rgba(120,50,0,.15); }
.hstat-card:hover::before { opacity: 1; }
.hstat-highlight {
  grid-column: span 2;
  background: linear-gradient(135deg, rgba(244,123,0,.16), rgba(232,189,58,.10));
  border-color: rgba(244,123,0,.3);
}
.hstat-icon { font-size: 26px; margin-bottom: 8px; }
.hstat-num {
  font-family: 'Cinzel', serif; font-size: 22px; font-weight: 700;
  color: var(--wh); line-height: 1;
  background: linear-gradient(135deg, #D46800, #E8BD3A);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.hstat-highlight .hstat-num {
  font-size: 26px;
  /* The base .hstat-num gradient (white → light orange) is illegible here
     since this card's own background is also a light orange tint — same
     light-on-light contrast problem as the card-background fix above.
     Use a solid, more saturated color instead of a gradient for this one. */
  background: none; -webkit-text-fill-color: initial;
  color: #A85200;
}
.hstat-label {
  font-size: 11px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: rgba(60,25,5,0.52);
  margin-top: 6px;
}

/* Scroll hint */
.hero-scroll-hint {
  max-width: 1100px; margin: 36px auto 0;
  display: flex; flex-direction: column; align-items: flex-start;
  gap: 6px; padding-left: 2px; position: relative; z-index: 1;
}
.hero-scroll-hint span {
  font-size: 11px; font-weight: 600; letter-spacing: 1.5px;
  text-transform: uppercase; color: rgba(60,25,5,0.30);
}
.scroll-arrow {
  width: 18px; height: 28px; border: 2px solid rgba(60,25,5,.18);
  border-radius: 10px; position: relative;
}
.scroll-arrow::after {
  content: ''; position: absolute; top: 5px; left: 50%; transform: translateX(-50%);
  width: 4px; height: 4px; border-radius: 50%; background: rgba(244,123,0,.8);
  animation: scrollDot 1.6s ease-in-out infinite;
}
@keyframes scrollDot {
  0%   { top:5px;  opacity:1; }
  80%  { top:13px; opacity:0; }
  100% { top:5px;  opacity:0; }
}

/* Responsive */
@media(max-width:900px) {
  .hero-inner { grid-template-columns: 1fr; gap: 36px; }
  .hero-stats-col { grid-template-columns: repeat(4,1fr); }
  .hstat-highlight { grid-column: span 1; }
}
@media(max-width:600px) {
  .hero-stats-col { grid-template-columns: 1fr 1fr; }
  .hstat-highlight { grid-column: span 2; }
  .hero-badges { gap: 12px; }
}

/* ── PEACH THEME: gaps missed by the original override pass ──
   .ls (header logo subtitle) still used near-invisible faint white text
   on the now-light header. .btn-call and .btn-submit still used var(--wh),
   which flips to dark brown, giving low-contrast dark-on-orange text. */
.ls { color: rgba(60,25,5,0.40) !important; }
.btn-call { color: #fff !important; }
.btn-submit { color: #fff !important; }
