/* Shree Ji Travels — Dynamic layer: hero slider, mobile booking bar, back-to-top, smart forms */
.hero-slides{position:absolute;inset:0}
.hero-slides img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.4s ease}
.hero-slides img.on{opacity:1}
.hero-dots{position:absolute;left:0;right:0;bottom:14px;display:flex;gap:8px;justify-content:center;z-index:2}
.hero-dots button{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.7);background:transparent;cursor:pointer;padding:0}
.hero-dots button.on{background:var(--saffron);border-color:var(--saffron)}
@media (prefers-reduced-motion:reduce){.hero-slides img{transition:none}}

/* Shrinking header on scroll */
.site-header{transition:box-shadow .25s ease}
.site-header.scrolled{box-shadow:0 10px 30px -12px rgba(7,27,51,.35)}
.site-header.scrolled .header-inner{height:64px}
.site-header .header-inner{transition:height .25s ease}

/* Sticky mobile booking bar */
.mobile-book-bar{display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:115;background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:8px;gap:8px}
.mobile-book-bar a{flex:1;margin:0}
@media(max-width:720px){
  .mobile-book-bar{display:flex}
  body{padding-bottom:76px}
  .float-wa{bottom:96px}
  .float-call{bottom:158px}
}

/* Back to top */
.to-top{position:fixed;left:18px;bottom:18px;z-index:110;width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--navy);font-size:1.3rem;font-weight:900;cursor:pointer;box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transform:translateY(8px);transition:.25s}
.to-top.show{opacity:1;pointer-events:auto;transform:none}
@media(max-width:720px){.to-top{bottom:96px;left:12px}}

/* Smart-form helpers */
.field[data-return-field]{transition:.2s}
.char-counter{font-size:.78rem;color:var(--muted);text-align:right}

/* FAQ search */
.faq-search{max-width:860px;margin:18px auto 0;display:flex;gap:10px}
.faq-search input{border-radius:999px;padding:14px 20px}
.faq-empty{display:none;text-align:center;color:var(--muted);padding:18px}
.faq-empty.show{display:block}

/* Bigger tap targets on coarse pointers */
@media (pointer:coarse){
  .nav-desktop>a,.drop-btn{padding:14px 16px}
  .faq-q{padding:20px}
  .btn{min-height:48px}
}

/* Real owner photos — always show FULL image, never crop */
img.nocrop{object-fit:contain !important;background:linear-gradient(135deg,#EAF0F7,#DCE5F1) !important}
/* Poster — natural size, zero boxes: every pixel of the file is visible */
img.poster-full{aspect-ratio:auto !important;height:auto !important;width:100% !important;object-fit:contain !important;background:#fff !important}
/* Destination cards — full real photos, navy backdrop, text always readable */
.dest img.nocrop{background:#071B33 !important}
.card-img img.nocrop{aspect-ratio:4/3}
.fleet-card img.nocrop{aspect-ratio:4/3}
.page-hero-card img.nocrop{aspect-ratio:4/3}
.g-item img.nocrop{height:280px}
.split img.nocrop{aspect-ratio:4/3}
