/* Kanha homepage banner: image includes the heading and subtitle. */
.hero-royal.kanha-hero {
  position: relative;
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: 3 / 1;
  padding: 0 !important;
  margin: 0;
  background-image: var(--kanha-hero-image) !important;
  background-size: 100% 100% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
.hero-royal.kanha-hero::before,
.hero-royal.kanha-hero::after { content: none !important; display: none !important; }
/* Keep heading available to assistive technology and search engines,
   but don't print it twice because the banner JPG contains the text. */
.hero-royal.kanha-hero > .container {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}
@media (max-width: 767px) {
  .hero-royal.kanha-hero { aspect-ratio: 3 / 1; }
}


/* Compact header logo: desktop and mobile */
.main-header .navbar-brand.kanha-logo {
  display: flex;
  align-items: center;
  flex: 0 0 245px;
  width: 245px;
  max-width: 27vw;
  padding: 0;
  margin-right: 12px;
}
.main-header .navbar-brand.kanha-logo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 85px;
  object-fit: contain;
}
@media (max-width: 1199px) and (min-width: 992px) {
  .main-header .navbar-brand.kanha-logo { flex-basis: 210px; width: 210px; }
}
@media (max-width: 991px) {
  .main-header .navbar-brand.kanha-logo { flex-basis: 205px; width: 205px; max-width: 58vw; margin-right: 8px; }
  .main-header .navbar-brand.kanha-logo img { max-height: 72px; }
}
@media (max-width: 480px) {
  .main-header .navbar-brand.kanha-logo { flex-basis: 180px; width: 180px; max-width: 54vw; }
  .main-header .navbar-brand.kanha-logo img { max-height: 63px; }
}

/* Mobile top alert bar: keep message and both phone numbers visible */
@media (max-width: 767px) {
  .kanha-topbar { display: block !important; height: auto !important; overflow: visible !important; }
  .kanha-topbar .container { width: 100%; max-width: 100%; padding-left: 10px; padding-right: 10px; }
  .kanha-topbar__inner { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: center; gap: 5px 12px; padding: 7px 0; text-align: center; height: auto !important; }
  .kanha-topbar__inner > span { display: block !important; flex: 0 0 100%; font-size: 11px; line-height: 1.4; white-space: normal; }
  .kanha-topbar__inner > a { display: inline-flex !important; align-items: center; gap: 4px; font-size: 12px; line-height: 1.4; white-space: nowrap; }
}
@media (max-width: 360px) {
  .kanha-topbar__inner { gap: 4px 8px; }
  .kanha-topbar__inner > a { font-size: 10px; }
}

/* Mobile topbar visibility: override theme hiding rules */
@media screen and (max-width: 991.98px) {
  html body .kanha-topbar,
  html body div.kanha-topbar {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 1100 !important;
    width: 100% !important;
    min-height: 36px !important;
    max-height: none !important;
    transform: none !important;
    clip-path: none !important;
    background: #061c15 !important;
  }
  html body .kanha-topbar .kanha-topbar__inner {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 5px 12px !important;
    padding: 8px 4px !important;
    height: auto !important;
  }
  html body .kanha-topbar__inner > span,
  html body .kanha-topbar__inner > a {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #f2c746 !important;
    line-height: 1.5 !important;
  }
  html body .kanha-topbar__inner > span {
    flex: 0 0 100% !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }
  html body .main-header { position: relative; }
}


/* Homepage service cards: clean three-column layout, no fourth image */
#services.our-services { padding-top: 70px; padding-bottom: 75px; background: #f6f8f4; }
#services .kanha-service-cards.service-items-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
#services .kanha-service-cards > .kanha-service-card {
  display: flex !important;
  flex-direction: column !important;
  width: auto !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 28px 26px !important;
  background: #fff !important;
  border: 1px solid #e4eae2 !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(20,55,38,.07) !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
#services .kanha-service-cards > .kanha-service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 36px rgba(20,55,38,.14) !important;
}
#services .kanha-service-card .icon-box {
  width: 60px !important; height: 60px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border-radius: 15px !important; margin-bottom: 20px !important;
  background: #eaf3e9 !important; color: #145a3b !important;
}
#services .kanha-service-card:nth-child(2) .icon-box { background: #fff2df !important; color: #98510c !important; }
#services .kanha-service-card:nth-child(3) .icon-box { background: #e8f1f5 !important; color: #18556c !important; }
#services .kanha-service-card .icon-box i { font-size: 25px !important; }
#services .kanha-service-card .service-item-body {
  display: flex !important; flex-direction: column !important; flex: 1 !important; width: 100% !important;
}
#services .kanha-service-card .service-item-content h2 { font-size: 25px !important; line-height: 1.3 !important; margin-bottom: 12px !important; }
#services .kanha-service-card .service-item-content h2 a { color: #153c2c !important; }
#services .kanha-service-card .service-item-content p { font-size: 16px !important; line-height: 1.7 !important; color: #52655b !important; }
#services .kanha-service-card .service-item-btn { margin-top: auto !important; padding-top: 22px !important; }
#services .kanha-service-card .kanha-card-link { color: #99500b !important; font-weight: 700 !important; }
#services .kanha-service-cards > .service-cta-box { display: none !important; }
@media (max-width: 991px) {
  #services .kanha-service-cards.service-items-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; }
}
@media (max-width: 640px) {
  #services.our-services { padding-top: 42px; padding-bottom: 46px; }
  #services .kanha-service-cards.service-items-list { grid-template-columns: 1fr !important; gap: 14px !important; }
  #services .kanha-service-cards > .kanha-service-card { padding: 22px 20px !important; }
  #services .kanha-service-card .service-item-content h2 { font-size: 22px !important; }
}


/* Compact three-image service cards — overrides prior icon card rules */
#services .kanha-image-services.service-items-list {
  display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px !important; align-items:stretch !important;
}
#services .kanha-image-services > .kanha-image-service-card {
  display:flex !important; flex-direction:column; min-width:0; padding:10px !important;
  border:1px solid #e4e8e3; border-radius:15px; background:#fff;
  box-shadow:0 6px 22px rgba(12,40,25,.08); overflow:hidden;
  transition:transform .2s ease,box-shadow .2s ease;
}
#services .kanha-image-services > .kanha-image-service-card:hover {
  transform:translateY(-4px);box-shadow:0 12px 28px rgba(12,40,25,.14);
}
#services .kanha-image-service-card__image {
  display:block; width:100%; height:190px; border-radius:10px; overflow:hidden;
}
#services .kanha-image-service-card__image img {
  display:block; width:100%;height:100%;object-fit:cover;object-position:center;
  transition:transform .3s ease;
}
#services .kanha-image-service-card:hover img {transform:scale(1.04)}
#services .kanha-image-service-card__button {
  display:flex;align-items:center;justify-content:center;gap:8px;
  margin-top:10px; min-height:46px; padding:10px 12px;
  border-radius:9px; background:#4a1d07; color:#fff !important;
  font-size:16px;font-weight:700;text-align:center;text-decoration:none;
}
#services .kanha-image-service-card__button:hover {background:#174c32;color:#fff !important;}
@media(max-width:991px){
 #services .kanha-image-services.service-items-list {gap:12px !important;}
 #services .kanha-image-service-card__image {height:145px;}
 #services .kanha-image-service-card__button {font-size:14px;}
}
@media(max-width:640px){
 #services .kanha-image-services.service-items-list {grid-template-columns:1fr !important;gap:15px !important;}
 #services .kanha-image-service-card__image {height:190px;}
}


/* History and About: centered full-width sections */
.kanha-heritage-stacked {
    background: #fff !important;
    background-image: none !important;
    color: #18231e !important;
    padding: 58px 0 62px !important;
    text-align: center;
}
.kanha-heritage-stacked::before,
.kanha-heritage-stacked::after { display: none !important; }
.kanha-heritage-stacked .container { max-width: 1260px; }
.kanha-heritage-stacked .kanha-heritage-block { 
    max-width: 1160px; margin: 0 auto; padding: 0 12px;
    background: transparent; border: 0; box-shadow: none;
}
.kanha-heritage-stacked .kanha-heritage-block + .kanha-heritage-block {
    margin-top: 54px;
}
.kanha-heritage-stacked .kanha-heritage-block h2 {
    margin: 0 0 20px; font-size: clamp(25px, 2.1vw, 34px);
    font-weight: 600; line-height: 1.25; color: #17251d !important;
}
.kanha-heritage-stacked .kanha-heritage-block p {
    margin: 0 auto 13px; font-size: 16px; line-height: 1.85;
    color: #394a42 !important; text-align: center;
}
@media (max-width: 767px) {
    .kanha-heritage-stacked { padding: 40px 0 44px !important; }
    .kanha-heritage-stacked .kanha-heritage-block + .kanha-heritage-block { margin-top: 38px; }
    .kanha-heritage-stacked .kanha-heritage-block p { font-size: 15px; line-height: 1.75; }
}

/* Simple two-column Kanha FAQ */
.kanha-faq-simple {background:#fff !important;padding:60px 0 75px !important;}
.kanha-faq-simple::before,.kanha-faq-simple::after {display:none !important;}
.kanha-faq-simple h2 {text-align:center;font-family:inherit;font-size:clamp(25px,2.2vw,34px);font-weight:600;color:#111;margin:0 0 32px;}
.kanha-faq-simple__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;}
.kanha-faq-simple__item {border:1px solid #dedede;border-radius:3px;background:#fff;min-width:0;}
.kanha-faq-simple__item summary {display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 13px;cursor:pointer;list-style:none;font-size:17px;font-weight:500;color:#111;min-height:72px;}
.kanha-faq-simple__item summary::-webkit-details-marker {display:none;}
.kanha-faq-simple__plus {width:48px;height:48px;flex:0 0 48px;background:#080808;border-radius:4px;position:relative;}
.kanha-faq-simple__plus::before,.kanha-faq-simple__plus::after {content:'';position:absolute;background:#fff;top:50%;left:50%;transform:translate(-50%,-50%);}
.kanha-faq-simple__plus::before {width:23px;height:2px;}
.kanha-faq-simple__plus::after {width:2px;height:23px;}
.kanha-faq-simple__item[open] .kanha-faq-simple__plus::after {display:none;}
.kanha-faq-simple__answer {padding:0 18px 16px;color:#4b5756;line-height:1.7;font-size:15px;}
.kanha-faq-simple__answer p {margin:0;}
@media(max-width:767px){.kanha-faq-simple {padding:42px 0 50px !important;}.kanha-faq-simple__grid {grid-template-columns:1fr;gap:12px;}.kanha-faq-simple__item summary {font-size:15px;min-height:62px;}.kanha-faq-simple__plus {width:38px;height:38px;flex-basis:38px;}.kanha-faq-simple h2 {margin-bottom:24px;}}

/* Location table directly below FAQ */
.kanha-location-section { padding: 44px 0 64px; background: #fff; }
.kanha-location-section h2 { margin: 0 0 24px; text-align: center; font-size: clamp(23px, 2.2vw, 32px); font-weight: 500; line-height: 1.3; color: #111; }
.kanha-location-table-scroll { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.kanha-location-table { width: 100%; border-collapse: collapse; min-width: 650px; border: 1px solid #dedede; font-size: 16px; line-height: 1.6; }
.kanha-location-table th { padding: 13px 20px; text-align: center; background: #084b1a; color: #fff; font-weight: 700; }
.kanha-location-table td { padding: 25px 22px; vertical-align: top; color: #26323b; }
.kanha-location-table tbody tr:nth-child(even) { background: #f0f0f0; }
.kanha-location-table tbody tr:nth-child(odd) { background: #fff; }
.kanha-location-table th:nth-child(1) { width: 20%; }
.kanha-location-table th:nth-child(2) { width: 15%; }
.kanha-location-table th:nth-child(3) { width: 30%; }
.kanha-location-table th:nth-child(4) { width: 35%; }
@media (max-width: 767px) {
 .kanha-location-section { padding: 30px 0 42px; }
 .kanha-location-table { font-size: 14px; }
 .kanha-location-table td { padding: 15px; }
 .kanha-location-section h2 { font-size: 22px; }
}

/* Geography & How to Reach — two compact information tables */
.kanha-geography-redesign{background:#fafbf9;padding:64px 0 70px}
.kanha-geography-heading{text-align:center;margin:0 auto 32px;max-width:780px}
.kanha-geography-eyebrow{display:block;color:#bc653b;font-weight:700;letter-spacing:.07em;text-transform:uppercase;font-size:13px;margin-bottom:9px}
.kanha-geography-heading h2{color:#123e2a;font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 10px}
.kanha-geography-heading p{color:#5b6965;font-size:16px;margin:0}
.kanha-geography-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
.kanha-geography-panel{min-width:0;background:white;border:1px solid #e1e8e2;border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(11,49,30,.08)}
.kanha-geography-panel h3{background:#104d28;color:#fff;text-align:center;font-size:17px;line-height:1.4;font-weight:700;padding:19px 15px;margin:0;min-height:70px;display:flex;align-items:center;justify-content:center;gap:11px}
.kanha-geography-panel h3 i{color:#f2c16b}
.kanha-geography-rows{margin:0}
.kanha-geography-rows>div{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:19px 22px;min-height:66px}
.kanha-geography-rows>div:nth-child(even){background:#f1f4f2}
.kanha-geography-rows dt{color:#273d33;font-weight:500;flex:1}
.kanha-geography-rows dd{margin:0;color:#185533;font-weight:700;text-align:right;flex:1}
.kanha-geography-note{font-size:13px;color:#66756b;text-align:center;margin:19px 0 0}
@media(max-width:767px){
 .kanha-geography-redesign{padding:42px 0}
 .kanha-geography-grid{grid-template-columns:1fr;gap:18px}
 .kanha-geography-panel h3{font-size:15px;min-height:62px}
 .kanha-geography-rows>div{padding:15px 13px;gap:10px;font-size:13px;min-height:58px}
 .kanha-geography-heading{margin-bottom:24px}
}

/* Compact geography tables — overrides previous layout */
.kanha-geography-redesign{padding:36px 0 42px}
.kanha-geography-heading{margin-bottom:20px}
.kanha-geography-heading h2{font-size:clamp(23px,2.3vw,30px);margin-bottom:5px}
.kanha-geography-heading p{font-size:14px}
.kanha-geography-grid{gap:18px}
.kanha-geography-panel{border-radius:12px}
.kanha-geography-panel h3{min-height:48px;padding:11px 12px;font-size:16px;gap:8px}
.kanha-geography-rows>div{min-height:44px;padding:10px 17px;gap:12px;font-size:14px;line-height:1.35}
.kanha-geography-note{margin-top:12px}
@media(max-width:767px){
 .kanha-geography-redesign{padding:28px 0 34px}
 .kanha-geography-grid{gap:14px}
 .kanha-geography-panel h3{min-height:44px;padding:10px;font-size:14px}
 .kanha-geography-rows>div{min-height:42px;padding:9px 12px;font-size:12px;gap:8px}
 .kanha-geography-heading{margin-bottom:16px}
}

/* Kanha experiences information table — replaces homepage service image cards */
.kanha-experiences{padding:48px 0 54px;background:#f8faf8}
.kanha-experiences-heading{margin-bottom:24px}
.kanha-experiences-heading h2{font-size:clamp(24px,2.4vw,34px)}
.kanha-experiences-heading p{margin-top:8px}
.kanha-experiences-table-wrap{overflow:hidden;border:1px solid #dce6dd;border-radius:16px;box-shadow:0 12px 30px rgba(8,46,25,.07);background:#fff}
.kanha-experiences-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.65}
.kanha-experiences-table thead{background:#10512d;color:#fff}
.kanha-experiences-table thead th{text-align:left;padding:15px 22px;font-weight:700;color:#fff}
.kanha-experiences-table thead th:first-child{width:29%}
.kanha-experiences-table tbody tr:nth-child(even){background:#f0f5f1}
.kanha-experiences-table tbody tr+tr{border-top:1px solid #dce6dd}
.kanha-experiences-table tbody th{vertical-align:top;text-align:left;color:#123d29;font-size:18px;font-weight:700;padding:22px}
.kanha-experiences-table tbody td{vertical-align:top;padding:16px 22px;color:#334c41}
.kanha-experiences-table ul{margin:0;padding-left:19px}
.kanha-experiences-table li+li{margin-top:10px}
.kanha-experiences-table strong{color:#143e2a}
.kanha-experiences-table a{color:#995014;text-decoration:underline;text-underline-offset:3px}
.kanha-experiences-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:#dbece0;color:#11532e;margin-right:9px}
.kanha-experiences-note{font-size:13px;color:#56685d;margin:14px 0 0}
.kanha-experiences-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.kanha-experiences-actions a{display:inline-block;background:#4c210b;color:white;border-radius:9px;padding:11px 20px;font-weight:700;text-decoration:none}
.kanha-experiences-actions a:hover{background:#12502d;color:white}
@media(max-width:767px){
 .kanha-experiences{padding:32px 0 38px}
 .kanha-experiences-table thead{display:none}
 .kanha-experiences-table,.kanha-experiences-table tbody,.kanha-experiences-table tr,.kanha-experiences-table tbody th,.kanha-experiences-table tbody td{display:block;width:100%}
 .kanha-experiences-table tbody th{padding:15px 15px 5px;font-size:17px}
 .kanha-experiences-table tbody td{padding:8px 16px 17px;font-size:14px}
 .kanha-experiences-table li+li{margin-top:9px}
 .kanha-experiences-actions a{flex:1;text-align:center;min-width:150px;font-size:13px}
}

/* Experience table replaces Top Attractions; original service cards restored above. */

/* Compact homepage SECTION headings — do not alter hero or card headings */
.kanha-heritage-block > h2,
.kanha-geography-heading > h2,
.kanha-faq-simple .container > h2,
.kanha-location-section .container > h2,
.kanha-section .section-title > h2,
.kanha-experiences-heading > h2 {
  display:table !important;
  width:fit-content !important;
  max-width:100%;
  margin:0 auto 12px !important;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-shadow:none !important;
  color:#101010 !important;
  font-size:24px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  text-align:center !important;
  border-radius:2px;
  text-transform:none !important;
}
.kanha-heritage-block,.kanha-geography-heading,.kanha-experiences-heading {text-align:center;}
.kanha-section .section-title,.kanha-experiences-heading {margin-bottom:20px !important;}
@media(max-width:767px){
  .kanha-heritage-block > h2,
  .kanha-geography-heading > h2,
  .kanha-faq-simple .container > h2,
  .kanha-location-section .container > h2,
  .kanha-section .section-title > h2,
  .kanha-experiences-heading > h2 {font-size:20px !important;padding:0 !important;margin-bottom:10px !important;}
}
