/**
 * Lokrio mobile premium — tourist.com inspired: clean, compact, breathable.
 * Desktop untouched (max-width 768).
 */
@media (max-width: 768px) {
  /* ── Hybrid photo hero: compact ── */
  body.kyk-body .kyk-hero--premium h1 {
    font-size: clamp(13px, 3.9vw, 17px) !important;
    max-width: none !important;
    width: 100% !important;
    margin: 6px auto 10px !important;
    letter-spacing: -0.035em !important;
    white-space: nowrap !important;
    line-height: 1.15 !important;
    text-align: center !important;
    color: #f8fafc !important;
  }

  body.kyk-body .kyk-hero--premium h1 .kyk-hero-emphasis {
    color: #fff !important;
    font-family: inherit !important;
    font-size: 1em !important;
    font-weight: inherit !important;
  }

  body.kyk-body .kyk-hero--premium h1 .kyk-green {
    color: #22c55e !important;
    font-family: inherit !important;
    font-size: 1em !important;
    font-weight: inherit !important;
    display: inline !important;
  }

  /* Sticky #kykHeader only — hide duplicate in-hero top card */
  body.kyk-body .kyk-hero--premium .kyk-hero-topbar {
    display: none !important;
  }

  body.kyk-body .kyk-hero--premium .kyk-hero-bg-img {
    object-position: center 40%;
  }

  body.kyk-body .kyk-hero-seo-line,
  body.kyk-body .kyk-hero-seo-line--below {
    display: none !important; /* SEO stays in title/footer; declutter mobile */
  }

  body.kyk-body .kyk-tabs--glass {
    /* Floating fmab-tabbar already has Bus/Flights/Hotels — hide duplicate hero menu */
    display: none !important;
  }

  /* Unified dock: search-only on mobile (tabs hidden) */
  body.kyk-body .kyk-hero--premium .kyk-search-dock--unified {
    padding: 10px !important;
    border-radius: 18px !important;
  }

  body.kyk-body .kyk-hero--premium .kyk-search-dock--unified .kyk-tabs--glass {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  /* Trust strip removed from home */
  body.kyk-body .kyk-trust-row--below {
    display: none !important;
  }

  body.kyk-body .kyk-below-hero {
    padding: 10px 12px 2px !important;
  }

  body.kyk-body .kyk-route-rail {
    gap: 8px !important;
    padding: 8px 10px !important;
    border-radius: 14px !important;
  }

  body.kyk-body .kyk-route-rail__primary {
    font-size: 11.5px !important;
    padding: 6px 10px !important;
  }

  body.kyk-body .kyk-route-rail__chips a {
    min-height: 28px !important;
    padding: 0 10px !important;
    font-size: 11px !important;
  }

  /* Explore Nepal lead — compact 2×2 stats, no overflow */
  body.kyk-body .lj-map__lead {
    padding: 10px !important;
    border-radius: 14px !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
  }

  body.kyk-body .lj-map__kicker {
    display: none !important;
  }

  body.kyk-body .lj-map__title {
    white-space: nowrap !important;
    font-size: clamp(15px, 4.4vw, 18px) !important;
    letter-spacing: -0.03em !important;
    line-height: 1.2 !important;
  }

  body.kyk-body .lj-map__badges {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
  }

  body.kyk-body .lj-stats {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
    padding: 2px !important;
    border-radius: 12px !important;
    gap: 0 !important;
  }

  body.kyk-body .lj-stats__item {
    padding: 8px 8px !important;
    gap: 6px !important;
    min-width: 0 !important;
    border-radius: 10px !important;
  }

  body.kyk-body .lj-stats__item + .lj-stats__item {
    padding-left: 8px !important;
    border-left: 0 !important;
  }

  body.kyk-body .lj-stats__item:nth-child(odd) {
    border-right: 1px solid rgba(15, 23, 42, 0.07) !important;
  }

  body.kyk-body .lj-stats__item:nth-child(-n+2) {
    border-bottom: 1px solid rgba(15, 23, 42, 0.07) !important;
  }

  body.kyk-body .lj-stats__icon {
    flex: 0 0 26px !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 8px !important;
  }

  body.kyk-body .lj-stats__icon svg {
    width: 13px !important;
    height: 13px !important;
  }

  body.kyk-body .lj-stats__value {
    font-size: 14px !important;
  }

  body.kyk-body .lj-stats__label {
    font-size: 9.5px !important;
    margin-top: 1px !important;
  }

  body.kyk-body .lj-community {
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 8px 10px !important;
    border-radius: 12px !important;
    gap: 8px !important;
  }

  body.kyk-body .lj-community__count {
    font-size: 13px !important;
  }

  body.kyk-body .lj-community__text {
    font-size: 11px !important;
    line-height: 1.3 !important;
  }

  body.kyk-body .lj-map__shell {
    padding: 8px !important;
    border-radius: 14px !important;
  }

  /* Featured / promos — tighter rail */
  body.kyk-body .kyk-home-featured {
    padding: 16px 14px 12px !important;
    gap: 12px !important;
  }

  body.kyk-body .kyk-dk-hero-inner--full,
  body.kyk-body .kyk-dk-hero-inner--graphic,
  body.kyk-body .kyk-dk-hero-inner--cover {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
    border-radius: 18px !important;
    padding: 16px !important;
  }

  body.kyk-body .kyk-continue {
    padding: 8px 14px 14px !important;
  }

  body.kyk-body .kyk-continue-head h2 {
    font-size: 16px !important;
  }

  /* Planner — tourist-like horizontal cards */
  body.kyk-body .kyk-planner {
    padding: 20px 0 24px !important;
  }

  body.kyk-body .kyk-planner-inner {
    padding: 0 14px;
  }

  body.kyk-body .kyk-planner-head {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
  }

  body.kyk-body .kyk-planner h2 {
    font-size: 22px !important;
    letter-spacing: -0.03em;
  }

  body.kyk-body .kyk-planner-sub {
    font-size: 13.5px !important;
    line-height: 1.45;
  }

  body.kyk-body .kyk-planner-routes {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 2px 14px 10px !important;
    margin: 0 -14px !important;
    scrollbar-width: none;
  }

  body.kyk-body .kyk-planner-routes::-webkit-scrollbar {
    display: none;
  }

  body.kyk-body .kyk-planner-routes .kyk-route-card {
    flex: 0 0 min(78vw, 280px) !important;
    width: min(78vw, 280px) !important;
    max-width: none !important;
    scroll-snap-align: start;
    border-radius: 16px !important;
  }

  body.kyk-body .kyk-planner-services {
    width: 100%;
    overflow-x: auto;
    flex-wrap: nowrap !important;
  }

  /* More destinations — compact 2-col, less noise */
  body.kyk-body .kyk-planner-more {
    margin-top: 8px;
  }

  body.kyk-body .kyk-planner-more h3 {
    font-size: 15px !important;
  }

  body.kyk-body .kyk-planner-chips--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.kyk-body .kyk-planner-chips--collapsed .kyk-planner-chip:nth-child(n+9) {
    display: none !important;
  }

  body.kyk-body .kyk-planner-chip {
    min-height: 40px !important;
    font-size: 12px !important;
    border-radius: 12px !important;
    padding: 0 10px !important;
  }

  /* Pop services / offers / flights — less padding */
  body.kyk-body .kyk-pop-services,
  body.kyk-body .kyk-offers,
  body.kyk-body .kyk-flight-routes,
  body.kyk-body .kyk-stats-bar {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.kyk-body .kyk-pop-services-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  /* Bottom nav breathing room */
  body.kyk-body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* ── tourist.com-style shell: soft page + inset cards (not full-bleed) ── */
  html {
    background: #eef2f7;
  }

  body.kyk-body {
    background: #eef2f7 !important;
    overflow-x: hidden !important;
  }

  body.kyk-body #main-content {
    overflow-x: hidden;
  }

  /* Sticky header sits in soft shell with side breathing room feel */
  body.kyk-body #kykHeader.kyk-header {
    background: rgba(255, 255, 255, 0.96) !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.06);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04);
  }

  body.kyk-body #kykHeader .kyk-header-inner {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  /* Hero = rounded inset card, side margins */
  body.kyk-body .kyk-hero.kyk-hero--premium {
    width: auto !important;
    max-width: none !important;
    margin: 10px 12px 14px !important;
    padding: 0 !important;
    min-height: 0 !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    box-shadow:
      0 10px 28px rgba(15, 23, 42, 0.14),
      0 1px 0 rgba(255, 255, 255, 0.35) inset;
  }

  body.kyk-body .kyk-hero--premium .kyk-hero-bg,
  body.kyk-body .kyk-hero--premium .kyk-hero-shade {
    border-radius: 22px !important;
  }

  body.kyk-body .kyk-hero--premium .kyk-hero-inner.kyk-hero-inner--center {
    padding: 12px 12px 10px !important;
    box-sizing: border-box;
  }

  body.kyk-body .kyk-hero--premium .kyk-search-anchor,
  body.kyk-body .kyk-hero--premium #kykSearchAnchor,
  body.kyk-body .kyk-hero--premium .kyk-search-dock,
  body.kyk-body .kyk-hero--premium .kyk-form {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  /* Below-hero sections: side gutters + card surfaces */
  body.kyk-body .lj-map {
    margin: 0 12px 14px !important;
    padding: 0 !important;
    max-width: none !important;
    width: auto !important;
    box-sizing: border-box;
  }

  body.kyk-body .lj-map__shell {
    background: #fff;
    border-radius: 18px;
    padding: 12px 12px 10px !important;
    border: 1px solid rgba(15, 23, 42, 0.06);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
  }

  body.kyk-body .lj-map__canvas {
    border-radius: 14px !important;
  }

  body.kyk-body .kyk-home-featured,
  body.kyk-body .kyk-continue,
  body.kyk-body .kyk-planner,
  body.kyk-body .kyk-pop-services,
  body.kyk-body .kyk-offers,
  body.kyk-body .kyk-flight-routes,
  body.kyk-body .kyk-stats-bar {
    margin-left: 12px !important;
    margin-right: 12px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box;
  }

  body.kyk-body .kyk-home-featured,
  body.kyk-body .kyk-continue,
  body.kyk-body .kyk-planner,
  body.kyk-body .kyk-pop-services,
  body.kyk-body .kyk-offers,
  body.kyk-body .kyk-flight-routes {
    background: #fff;
    border-radius: 18px;
    padding: 14px 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.06);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.045);
    margin-bottom: 12px !important;
  }

  body.kyk-body .kyk-dk-hero-inner--full,
  body.kyk-body .kyk-dk-hero-inner--graphic,
  body.kyk-body .kyk-dk-hero-inner--cover {
    border-radius: 16px !important;
  }

  body.kyk-body .kyk-planner-routes {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
  }
}

/* ── Footer mobile accordion + compact trust ── */
@media (max-width: 768px) {
  .lokrio-ft-premium {
    margin-top: 12px;
  }

  .lfp-trust-inner {
    display: flex !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    padding: 14px 14px 12px !important;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .lfp-trust-inner::-webkit-scrollbar {
    display: none;
  }

  .lfp-trust-item {
    flex: 0 0 78%;
    max-width: 280px;
    scroll-snap-align: start;
    border-right: none !important;
    border-bottom: none !important;
    padding: 12px 14px !important;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--lfp-line, #e2e8f0) !important;
    box-shadow: 0 6px 16px rgba(15, 23, 42, 0.04);
  }

  .lfp-trust-item strong {
    font-size: 13px;
  }

  .lfp-trust-item p {
    font-size: 12px;
  }

  .lfp-mega {
    grid-template-columns: 1fr !important;
    padding: 18px 14px 12px !important;
    gap: 0 !important;
  }

  .lfp-mega-brand {
    padding-bottom: 14px;
    margin-bottom: 4px;
    border-bottom: 1px solid var(--lfp-line, #e2e8f0);
  }

  .lfp-blurb {
    max-width: none;
    font-size: 12.5px;
    margin-bottom: 12px;
  }

  .lfp-acc {
    border-bottom: 1px solid var(--lfp-line, #e2e8f0);
    padding: 0;
  }

  .lfp-acc > summary.lfp-h {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 0;
    padding: 14px 2px;
    border-bottom: none;
    cursor: pointer;
    list-style: none;
    user-select: none;
  }

  .lfp-acc > summary.lfp-h::-webkit-details-marker {
    display: none;
  }

  .lfp-acc > summary.lfp-h::after {
    content: "+";
    font-size: 18px;
    font-weight: 700;
    color: #94a3b8;
    border: none;
  }

  .lfp-acc[open] > summary.lfp-h::after {
    content: "–";
    color: var(--lfp-orange, #ff6900);
  }

  .lfp-acc .lfp-nav {
    padding: 0 0 12px;
    gap: 0;
  }

  .lfp-acc .lfp-nav a {
    padding: 10px 2px;
    font-size: 14px;
  }

  .lfp-mega-contact {
    padding-top: 14px;
  }

  .lfp-mega-contact .lfp-h {
    margin-bottom: 10px;
  }

  .lfp-contact-stack {
    grid-template-columns: 1fr !important;
    gap: 8px;
  }

  .lfp-c-card {
    padding: 11px 12px;
    border-radius: 14px;
  }

  .lfp-strip {
    padding: 8px 12px 18px !important;
    width: 100%;
    box-sizing: border-box;
    overflow: visible;
  }

  .lfp-strip-card {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    padding: 12px !important;
    border-radius: 14px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: visible;
  }

  .lfp-pay-card-label {
    border-right: none;
    padding-right: 0;
    width: 100%;
  }

  .lfp-pay-card-secure {
    white-space: normal;
  }

  /* Payment logos: wrap fully — no cut-off on mobile */
  .lfp-pay-logos {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    min-width: 0 !important;
  }

  .lfp-pay-stack {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .lfp-pay-divider {
    display: none !important;
  }

  .lfp-pay-logo,
  .lfp-pay-logo--wide {
    width: calc(25% - 6px) !important;
    min-width: 64px;
    max-width: 88px;
    height: 36px !important;
    flex: 1 1 64px !important;
  }

  .lfp-pay-logo img,
  .lfp-pay-logo--wide img {
    max-width: 70% !important;
    max-height: 20px !important;
  }

  .lfp-bar-inner {
    padding: 14px 12px !important;
    flex-direction: column;
    text-align: center;
  }

  .lokrio-ft-premium {
    margin: 8px 12px 20px !important;
    border-radius: 18px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.06);
    background: #fff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
  }

  .lokrio-ft-premium .lfp-bar {
    border-radius: 0;
  }
}

/* Desktop: force accordion panels visible even if closed */
@media (min-width: 769px) {
  .lfp-acc[open] > .lfp-nav,
  .lfp-acc > .lfp-nav {
    display: grid !important;
  }

  .lfp-acc > summary.lfp-h {
    pointer-events: none;
    list-style: none;
  }

  .lfp-acc > summary.lfp-h::-webkit-details-marker,
  .lfp-acc > summary.lfp-h::marker {
    display: none;
  }

  .lfp-acc > summary.lfp-h::after {
    display: none;
  }
}
