/*
Theme Name: IVPL
Theme URI: https://imperialvoyages.com/
Author: Imperial Voyages Pvt Ltd
Author URI: https://imperialvoyages.com/
Description: A custom responsive WordPress theme developed for Imperial Voyages Pvt Ltd.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-theme, responsive, travel, tours, bootstrap, tailwind, WordPress
Text Domain: ivpl
*/
@import url("https://fonts.googleapis.com/css2?family=MonteCarlo&display=swap");

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("assets/webfonts/fa-solid-900.woff2") format("woff2"), url("assets/webfonts/fa-solid-900.woff") format("woff");
}

/* India Wildlife & Tiger Safaris: preserves the Elementor-managed background image
   while providing the contrast specified for the final CTA. */
.ivpl-india-final-cta {
  --background-overlay: 'x';
  isolation: isolate;
  position: relative;
}

.ivpl-india-final-cta::before {
  background: linear-gradient(90deg, rgba(5, 22, 43, 0.96) 0%, rgba(5, 22, 43, 0.82) 42%, rgba(5, 22, 43, 0) 68%);
  color: transparent;
  font-size: 0;
  line-height: 0;
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 0;
}

.ivpl-india-final-cta > .e-con-inner {
  position: relative;
  z-index: 1;
}

@font-face {
  font-family: "Font Awesome 5 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/webfonts/fa-brands-400.woff2") format("woff2"), url("assets/webfonts/fa-brands-400.woff") format("woff");
}

@font-face {
  font-family: "bootstrap-icons";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/css/fonts/bootstrap-icons09cf.woff2") format("woff2"), url("assets/css/fonts/bootstrap-icons09cf.woff") format("woff");
}

@font-face {
  font-family: "boxicons";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/fonts/boxicons.woff2") format("woff2"), url("assets/fonts/boxicons.woff") format("woff");
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-rubik);
  font-weight: 600;
  line-height: 1.4;
  color: var(--title-color);
  text-transform: capitalize;
}

img {
  max-width: 100%;
  height: auto;
}

/* Default (Desktop) */
h1 {
  font-size: 64px;
}

h2 {
  font-size: 54px;
}

/*  */
.short-bt-line {
  position: relative;
  padding-bottom: 22px;
}

.short-bt-line::after {
  content: "";
  display: block;
  width: 95px;
  height: 3px;
  margin-top: 18px;
  background: linear-gradient(90deg,
      #b5853b 0%,
      #d6ad62 50%,
      #8f6427 100%);
  border-radius: 2px;
}

/* --- */
h2 em {
  color: var(--primary-color2);
}

.tour-info-title {
  font-size: 36px;
}

.subtitle h4 {
  font-size: 24px;
  color: var(--primary-color1);
}

/* Tablet (≤ 991px) */
@media (max-width: 991px) {
  h1 {
    font-size: 54px;
  }

  h2 {
    font-size: 48px;
  }
}

/* Mobile (≤ 767px) */
@media (max-width: 767px) {
  h1 {
    font-size: 44px;
  }

  h2 {
    font-size: 36px;
  }
}

.pt-60 {
  padding-top: 60px;
}

.custom-logo {
  max-height: 105px;
  max-width: 200px;
  height: auto;
  width: 100%;
  padding: 10px 0;
}

.package-card3.style-3 .package-card-img {
  height: 250px;
  overflow: hidden;
}

.package-card3.style-3 .package-card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* fills box, crops excess */
  display: block;
  /* removes bottom whitespace */
}

/* Wrapper styling */
.plan-your-trip {
  color: #B5853B;
  max-width: 600px;
  margin: auto;
  font-family: var(--ivpl-font-body);
}

/* Inputs, Textarea, Select */
.plan-your-trip .wpcf7-form-control.wpcf7-text,
.plan-your-trip .wpcf7-form-control.wpcf7-email,
.plan-your-trip .wpcf7-form-control.wpcf7-tel,
.plan-your-trip .wpcf7-form-control.wpcf7-textarea,
.plan-your-trip .wpcf7-form-control.wpcf7-select {
  width: 100%;
  padding: 0.75rem 1rem;
  border: 1px solid #B5853B;
  border-radius: 12px;
  background-color: #A2D9F7;
  font-size: 1rem;
  color: #B5853B;
  transition: all 0.3s ease;
  box-sizing: border-box;
  font-family: var(--ivpl-font-body);
}

.plan-your-trip .wpcf7-form-control:focus {
  outline: none;
  border-color: #B5853B;
  box-shadow: 0 0 0 3px rgba(181, 133, 59, 0.2);
}

.plan-your-trip .wpcf7-textarea {
  min-height: 100px;
  resize: vertical;
}

.plan-your-trip .wpcf7-select {
  appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='%23B5853B' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 16px 16px;
}

/* Custom Radio Buttons */
.plan-your-trip .radio-group {
  display: flex;
  gap: 1rem;
  margin-top: 0.5rem;
}

.plan-your-trip input[type="radio"] {
  display: none;
}

.plan-your-trip .custom-radio {
  display: inline-block;
  padding: 0.75rem 1.25rem;
  border: 2px solid #B5853B;
  border-radius: 25px;
  cursor: pointer;
  color: #B5853B;
  font-weight: 500;
  transition: all 0.2s ease;
  background-color: #A2D9F7;
}

.plan-your-trip input[type="radio"]:checked+.custom-radio {
  background-color: #B5853B;
  color: var(--ivpl-brand-pale-blue);
  border-color: #B5853B;
}

/* Checkbox Styling */
.plan-your-trip input[type="checkbox"] {
  accent-color: #B5853B;
  margin-right: 0.5rem;
}

/* Submit Button */
.plan-your-trip .wpcf7-submit {
  background-color: #B5853B;
  color: var(--ivpl-brand-pale-blue);
  padding: 0.75rem 1.5rem;
  border: none;
  border-radius: 25px;
  font-size: 1rem;
  cursor: pointer;
  transition: background 0.3s ease;
  font-family: var(--ivpl-font-body);
}

.plan-your-trip .wpcf7-submit:hover {
  background-color: #B5853B;
}

/* Number Increment/Decrement Buttons */
.plan-your-trip .number-field-group {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 1rem;
}

.plan-your-trip .number-field-group strong {
  min-width: 80px;
}

.plan-your-trip input[type="number"] {
  width: 60px;
  text-align: center;
  font-weight: bold;
  font-size: 1.1rem;
  background-color: transparent;
  border: none;
  color: #B5853B;
  font-family: var(--ivpl-font-body);
}

.plan-your-trip input[type="number"]:focus {
  outline: none;
}

.plan-your-trip button.increase,
.plan-your-trip button.decrease {
  background: none;
  border: 2px solid #B5853B;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  font-size: 1.2rem;
  color: #B5853B;
  line-height: 1;
  cursor: pointer;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.plan-your-trip button.increase:hover,
.plan-your-trip button.decrease:hover {
  background-color: #B5853B;
  color: #A2D9F7;
}

.plan-your-trip .number-field-group small {
  font-size: 0.85rem;
  color: #B5853B;
  margin-left: 8px;
}

/* Optional: Spacing between sections */
.plan-your-trip .trip-duration-group,
.plan-your-trip .traveler-group {
  margin-bottom: 2rem;
}

.category-thumb {
  height: 175px;
  overflow: hidden;
  margin-bottom: 20px;
  border-radius: 10px;
  width: 100%;
  /* optional, ensures full width */
}

/* Make the image fill and crop nicely */
.category-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.package-category-section .package-card-img-wrap a {
  height: 225px;
  overflow: hidden;
  margin-bottom: 0px;
  border-radius: 10px;
  width: 100%;
}

.package-category-section .package-card-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.package-card5.destination h6 {
  color: #A2D9F7;
}

/* .accordion-body */
.accordion-item {
  background-color: #A2D9F7;
}

.package-details-area .tour-plan .accordion-body {
  border-bottom: 2px solid #A2D9F7;
}

a.h-whatsapp {
  font-size: 25px;
  color: #32A4DD;
  display: inline-block;
  animation: whatsappPulse 2.5s ease-in-out infinite;
}

@keyframes whatsappPulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(0.85);
  }

  100% {
    transform: scale(1);
  }
}

/*----------*/
.related-tour .price-area h5 {
  font-size: 17px;
}

.gallery-img-wrap.first-img {
  height: 420px;
  overflow: hidden;
}

.gallery-img-wrap.first-img img,
.gallery-img-wrap.second-img img,
.gallery-img-wrap.third-img img,
.gallery-img-wrap.fourth-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  /* or contain (explained below) */
}

.gallery-img-wrap.second-img,
.gallery-img-wrap.third-img,
.gallery-img-wrap.fourth-img {
  height: 200px;
  overflow: hidden;
}

.heading-xl::after {
  content: "";
  display: inline-block;
  width: 300px;
  height: 20px;
  margin: 10px auto 10px;
  background: url("assets/img/icons/head-icon.png") center / contain no-repeat;
  animation: headingIconGlow 3s ease-in-out infinite;
  transform-origin: center;
}

@keyframes headingIconGlow {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.75;
    filter: drop-shadow(0 0 0 rgba(181, 133, 59, 0));
  }

  50% {
    transform: scale(1.04);
    opacity: 1;
    filter: drop-shadow(0 0 8px rgba(181, 133, 59, 0.45));
  }
}

/* My Css */
.ivpl-icon-boxes {
  display: grid;
  gap: 11px;
  margin-top: 18px;
  width: 100%;
}

.ivpl-icon-boxes .elementor-icon-box-wrapper {
  align-items: center;
  border: 1px solid var(--ivpl-border);
  display: grid;
  grid-template-columns: 48px 1fr;
  padding: 14px 18px;
}

.ivpl-icon-boxes .elementor-icon-box-icon {
  margin: 0;
}

.ivpl-icon-boxes .elementor-icon {
  color: var(--ivpl-gold);
}

.ivpl-icon-boxes .elementor-icon-box-title {
  font-size: 20px;
  margin: 0 0 2px;
}

.ivpl-icon-boxes .elementor-icon-box-description {
  color: var(--ivpl-muted);
  font-size: 12px;
  line-height: 1.45;
}

.ivpl-icon-boxes .box-body {
  border-left: 2px solid #d1c9be;
  padding-left: 12px;
}

.ivpl-icon-boxes .elementskit-infobox {
  align-items: normal !important;
}

.step-icons .elementor-icon {
  background: #031529;
  align-items: center;
  border: 1px solid var(--ivpl-border);
  border-radius: 50%;
  color: var(--ivpl-gold);
  display: inline-flex;
  height: 70px;
  justify-content: center;
  margin-bottom: 16px;
  width: 70px;
  padding: 15px;

}

.step-icons:not(:last-child)::after {
  border-top: 1px dashed rgba(181, 133, 59, 0.5);
  content: "";
  left: 68%;
  position: absolute;
  top: 34px;
  width: 68%;
}

/* Blog Details Meta */
.tp-blog-details-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin: 15px 0 25px;
}

/* Meta Item */
.tp-blog-details-meta>span {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;

  color: var(--mt-muted);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
}

/* Separator */
.tp-blog-details-meta>span:not(:last-child)::after {
  content: "";
  width: 4px;
  height: 4px;
  margin-left: 14px;

  background: var(--mt-line);
  border-radius: 50%;
}

/* Icons */
.tp-blog-details-meta>span>i {
  color: var(--mt-coral);
  font-size: 15px;

  transition:
    color 0.3s ease,
    transform 0.3s ease;
}

/* Links */
.tp-blog-details-meta a {
  color: var(--mt-ink-soft);
  text-decoration: none;

  transition: color 0.3s ease;
}

.tp-blog-details-meta a:hover {
  color: var(--mt-coral);
}

/* Icon Effect */
.tp-blog-details-meta>span:hover>i {
  color: var(--mt-blue);
  transform: translateY(-2px);
}


/* Mobile */
@media (max-width: 767px) {

  .tp-blog-details-meta {
    gap: 8px 15px;
    margin: 12px 0 20px;
  }

  .tp-blog-details-meta>span {
    font-size: 13px;
  }

  .tp-blog-details-meta>span:not(:last-child)::after {
    margin-left: 7px;
  }
}

.tp-blog-details-content h2 {
  font-weight: 400;
  font-size: 37px;
  margin: 15px 0;
}

/* Travel Journal dynamic components -------------------------------------- */
.ivpl-journal-category-nav {
  background: #fbf8f2;
  border-bottom: 1px solid #e6dccd;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  padding: 30px max(24px, calc((100vw - 1440px) / 2));
}

.ivpl-journal-category-item {
  align-items: center;
  border-right: 1px solid #e3d8c8;
  color: #0b2035;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 122px;
  padding: 4px 12px;
  text-align: center;
  text-decoration: none;
}

.ivpl-journal-category-item:last-child {
  border-right: 0;
}

.ivpl-journal-category-item:hover {
  color: #a96e20;
}

.ivpl-journal-category-item.is-empty {
  opacity: 0.82;
}

.ivpl-journal-category-icon {
  align-items: center;
  color: #bd873b;
  display: flex;
  font-size: 38px;
  height: 46px;
  justify-content: center;
  line-height: 1;
}

.ivpl-journal-category-icon-image {
  height: 44px;
  object-fit: contain;
  width: 52px;
}

.ivpl-journal-category-item strong {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 17px;
  line-height: 1.08;
}

.ivpl-journal-category-item>span:last-child {
  color: #786f64;
  font-size: 11px;
}

.ivpl-journal-featured-card,
.ivpl-journal-categories-card,
.ivpl-journal-story-card {
  background: #fffdfa;
  border: 1px solid #e5ddd1;
  border-radius: 11px;
  box-shadow: 0 10px 34px rgba(11, 32, 53, 0.06);
  overflow: hidden;
}

.ivpl-journal-featured-media,
.ivpl-journal-story-media {
  display: block;
  overflow: hidden;
  position: relative;
}

.ivpl-journal-featured-media {
  aspect-ratio: 16 / 7;
}

.ivpl-journal-featured-image,
.ivpl-journal-story-image,
.ivpl-journal-image-placeholder {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.ivpl-journal-image-placeholder {
  background: linear-gradient(135deg, #0c2b49, #c08a3c);
}

.ivpl-journal-badge {
  background: #b67b2d;
  border-radius: 3px;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  left: 18px;
  letter-spacing: 0.07em;
  padding: 8px 13px;
  position: absolute;
  text-transform: uppercase;
  top: 18px;
}

.ivpl-journal-featured-content {
  padding: 28px 38px 25px;
}

.ivpl-journal-featured-content h2 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(31px, 3vw, 48px);
  font-weight: 500;
  line-height: 1.02;
  margin: 0 0 14px;
  text-transform: none;
}

.ivpl-journal-featured-content h2 a,
.ivpl-journal-story-content h3 a {
  color: #0a1f35;
  text-decoration: none;
}

.ivpl-journal-featured-content p {
  color: #423d37;
  font-size: 15px;
  line-height: 1.65;
  margin: 0 0 22px;
}

.ivpl-journal-meta,
.ivpl-journal-story-meta {
  align-items: center;
  color: #6e675f;
  display: flex;
  flex-wrap: wrap;
  font-size: 12px;
  gap: 13px 28px;
}

.ivpl-journal-meta i,
.ivpl-journal-story-meta i {
  color: #b67b2d;
  margin-right: 7px;
}

.ivpl-journal-categories-card {
  padding: 24px 26px;
}

.ivpl-journal-categories-card h3 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 18px;
  letter-spacing: 0.05em;
  margin: 0 0 15px;
  padding-bottom: 12px;
  position: relative;
  text-transform: uppercase;
}

.ivpl-journal-categories-card h3::after {
  background: #b67b2d;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 48px;
}

.ivpl-journal-categories-card ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ivpl-journal-categories-card li {
  margin: 0;
}

.ivpl-journal-categories-card li a {
  color: #1e2d3d;
  display: flex;
  font-size: 12px;
  justify-content: space-between;
  padding: 6px 0;
  text-decoration: none;
}

.ivpl-journal-categories-card li a:hover,
.ivpl-journal-view-all {
  color: #b67b2d;
}

.ivpl-journal-categories-card small {
  color: #7d756d;
}

.ivpl-journal-view-all {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin-top: 15px;
  text-decoration: none;
  text-transform: uppercase;
}

.ivpl-journal-latest-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.ivpl-journal-story-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.ivpl-journal-story-media {
  aspect-ratio: 4 / 3;
}

.ivpl-journal-story-media .ivpl-journal-badge {
  bottom: 0;
  font-size: 9px;
  left: 8px;
  padding: 5px 8px;
  top: auto;
}

.ivpl-journal-story-content {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 14px 13px 13px;
}

.ivpl-journal-story-content h3 {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.15;
  margin: 0 0 17px;
  text-transform: none;
}

.ivpl-journal-story-meta {
  font-size: 9px;
  gap: 7px;
  margin-top: auto;
}

.ivpl-journal-empty {
  background: #fffdfa;
  border: 1px solid #e5ddd1;
  border-radius: 8px;
  color: #6e675f;
  margin: 0;
  padding: 24px;
}

.ivpl-journal-benefits {
  background: rgba(5, 22, 39, 0.94);
  border: 1px solid rgba(190, 135, 57, 0.45);
  border-radius: 10px;
  box-shadow: 0 16px 35px rgba(0, 0, 0, 0.2);
}

@media (max-width: 1200px) {
  .ivpl-journal-category-nav {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .ivpl-journal-category-item:nth-child(4) {
    border-right: 0;
  }

  .ivpl-journal-category-item:nth-child(-n + 4) {
    border-bottom: 1px solid #e3d8c8;
    padding-bottom: 22px;
  }

  .ivpl-journal-category-item:nth-child(n + 5) {
    padding-top: 22px;
  }

  .ivpl-journal-latest-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .ivpl-journal-category-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 20px 14px;
  }

  .ivpl-journal-category-item,
  .ivpl-journal-category-item:nth-child(4) {
    border-bottom: 1px solid #e3d8c8;
    border-right: 1px solid #e3d8c8;
    padding: 18px 8px;
  }

  .ivpl-journal-category-item:nth-child(2n) {
    border-right: 0;
  }

  .ivpl-journal-category-item:nth-last-child(-n + 2) {
    border-bottom: 0;
  }

  .ivpl-journal-featured-media {
    aspect-ratio: 4 / 3;
  }

  .ivpl-journal-featured-content {
    padding: 23px 20px;
  }

  .ivpl-journal-featured-content h2 {
    font-size: 31px;
  }

  .ivpl-journal-latest-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .ivpl-journal-latest-grid {
    grid-template-columns: 1fr;
  }
}

/* =====================================================
   JAWAI LEOPARD SAFARI PAGE
===================================================== */
.ivpl-jawai-page {
  font-family: Lato, Arial, sans-serif;
  color: #26322e;
  background: #fffaf4;
  overflow: hidden
}

.ivpl-jawai-page .elementor-widget-container {
  max-width: 100%
}

.ivpl-jawai-page .elementor-container,
.ivpl-jawai-page>.e-con-inner {
  max-width: 1440px;
  margin: 0 auto
}

.ivpl-jawai-page h1,
.ivpl-jawai-page h2,
.ivpl-jawai-page h3,
.ivpl-jawai-page h4 {
  font-family: 'Playfair Display', Georgia, serif;
  color: #18251f;
  margin: 0 0 10px
}

.ivpl-jawai-page .section-kicker {
  font-size: 14px;
  letter-spacing: 1.6px;
  color: #a76421;
  text-align: center;
  text-transform: uppercase
}

.ivpl-jawai-page .ivpl-jawai-hero {
  min-height: 620px;
  background-position: center center;
  background-size: cover;
  position: relative;
  color: #fff
}

.ivpl-jawai-page .ivpl-jawai-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 13, 16, .94) 0%, rgba(4, 13, 16, .6) 39%, rgba(4, 13, 16, .05) 76%)
}

.ivpl-jawai-page .ivpl-jawai-hero>.e-con-inner {
  position: relative;
  z-index: 1;
  min-height: 620px;
  display: flex;
  align-items: center
}

.ivpl-jawai-page .hero-copy-wrap {
  width: 50%;
  padding: 100px 40px 60px 7%;
  align-items: flex-start
}

.ivpl-jawai-page .hero-copy-wrap h1 {
  font-size: 64px;
  line-height: 1.05;
  color: #fff;
  text-align: left
}

.ivpl-jawai-page .hero-breadcrumb {
  font-size: 13px;
  color: #e0b55c
}

.ivpl-jawai-page .hero-subtitle {
  font-family: 'Playfair Display', Georgia, serif;
  color: #d99b2b;
  font-size: 24px
}

.ivpl-jawai-page .hero-copy {
  font-size: 18px;
  color: #fff;
  max-width: 560px
}

.ivpl-jawai-page .hero-copy p {
  margin-bottom: 0
}

.ivpl-jawai-page .ivpl-jawai-intro,
.ivpl-jawai-page .ivpl-jawai-info-grid,
.ivpl-jawai-page .ivpl-jawai-why,
.ivpl-jawai-page .ivpl-jawai-stays,
.ivpl-jawai-page .ivpl-jawai-stays-grid,
.ivpl-jawai-page .ivpl-jawai-people,
.ivpl-jawai-page .ivpl-jawai-note,
.ivpl-jawai-page .ivpl-jawai-journey,
.ivpl-jawai-page .ivpl-jawai-best,
.ivpl-jawai-page .ivpl-jawai-faq,
.ivpl-jawai-page .ivpl-jawai-final {
  max-width: 1440px;
  margin: 0 auto;
  padding: 28px 3%;
  box-sizing: border-box
}

.ivpl-jawai-page .ivpl-jawai-intro {
  display: flex;
  align-items: center;
  background: #fffdf9;
  border: 1px solid #eaded0;
  border-radius: 10px;
  margin-top: 28px
}

.ivpl-jawai-page .intro-text {
  flex: 1
}

.ivpl-jawai-page .ivpl-jawai-intro>.elementor-element:last-child {
  width: 39%
}

.ivpl-jawai-page .ivpl-jawai-intro img {
  height: 220px;
  border-radius: 8px
}

.ivpl-jawai-page .ivpl-jawai-info-grid {
  display: grid;
  grid-template-columns: 1.2fr 1.05fr 1fr
}

.ivpl-jawai-page .ivpl-jawai-info-grid>.e-con {
  background: #fffdf9;
  border: 1px solid #eaded0;
  border-radius: 10px;
  padding: 22px;
  min-height: 320px
}

.ivpl-jawai-page .ivpl-jawai-info-grid h3 {
  text-align: left;
  font-size: 26px
}

.ivpl-jawai-page .ivpl-jawai-info-grid img {
  height: 210px
}

.ivpl-jawai-page .ivpl-jawai-quote {
  background: #061c31 !important;
  color: #fff
}

.ivpl-jawai-page .ivpl-jawai-quote h2,
.ivpl-jawai-page .ivpl-jawai-quote p {
  color: #f4ad38
}

.ivpl-jawai-page .quote-mark {
  font-size: 72px;
  color: #f4ad38 !important;
  font-family: Georgia, serif
}

.ivpl-jawai-page .quote-copy {
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 20px;
  color: #f5ad3c !important
}

.ivpl-jawai-page .ivpl-jawai-why,
.ivpl-jawai-page .ivpl-jawai-stays,
.ivpl-jawai-page .ivpl-jawai-journey,
.ivpl-jawai-page .ivpl-jawai-best {
  text-align: center
}

.ivpl-jawai-page .ivpl-jawai-benefit-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 14px;
  margin-top: 22px
}

.ivpl-jawai-page .ivpl-jawai-feature-card {
  border: 1px solid #eaded0;
  background: #fffdf9;
  border-radius: 8px;
  padding: 10px;
  text-align: center
}

.ivpl-jawai-page .ivpl-jawai-feature-card img {
  height: 145px;
  border-radius: 8px
}

.ivpl-jawai-page .ivpl-jawai-feature-card h4 {
  font-size: 18px;
  line-height: 1.2
}

.ivpl-jawai-page .ivpl-jawai-feature-card p {
  font-size: 13px
}

.ivpl-jawai-page .ivpl-jawai-feature-card .elementor-icon {
  margin-top: -20px;
  position: relative;
  border-radius: 50%;
  padding: 10px
}

.ivpl-jawai-page .ivpl-jawai-stays {
  padding-bottom: 14px
}

.ivpl-jawai-page .ivpl-jawai-stays-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 18px
}

.ivpl-jawai-page .ivpl-jawai-lodge-card,
.ivpl-jawai-page .ivpl-jawai-approach {
  border: 1px solid #eaded0;
  border-radius: 10px;
  background: #fffdf9;
  padding: 14px
}

.ivpl-jawai-page .ivpl-jawai-lodge-card img {
  height: 210px
}

.ivpl-jawai-page .ivpl-jawai-lodge-card h3 {
  text-align: left;
  font-size: 27px
}

.ivpl-jawai-page .ivpl-jawai-lodge-card p {
  text-align: left
}

.ivpl-jawai-page .ivpl-jawai-approach {
  background: #08281c !important;
  color: #fff
}

.ivpl-jawai-page .ivpl-jawai-approach h3,
.ivpl-jawai-page .ivpl-jawai-approach p {
  color: #fff
}

.ivpl-jawai-page .ivpl-jawai-approach h3 {
  text-align: center;
  font-size: 27px
}

.ivpl-jawai-page .ivpl-jawai-people {
  display: grid;
  grid-template-columns: 1fr 1.3fr;
  align-items: stretch;
  background: #fffdf9;
  border: 1px solid #eaded0;
  border-radius: 10px
}

.ivpl-jawai-page .people-copy {
  padding: 14px
}

.ivpl-jawai-page .people-copy h2 {
  text-align: left;
  font-size: 42px
}

.ivpl-jawai-page .ivpl-jawai-people img {
  height: 440px
}

.ivpl-jawai-page .people-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  text-align: center
}

.ivpl-jawai-page .people-facts p {
  font-size: 13px
}

.ivpl-jawai-page .ivpl-jawai-note {
  display: flex;
  align-items: center;
  border: 1px solid #eaded0;
  border-radius: 10px;
  background: #f7ede0;
  margin-top: 12px
}

.ivpl-jawai-page .ivpl-jawai-note .elementor-icon {
  border-radius: 50%;
  padding: 12px
}

.ivpl-jawai-page .ivpl-jawai-journey,
.ivpl-jawai-page .ivpl-jawai-best {
  margin-top: 18px;
  border: 1px solid #eaded0;
  border-radius: 10px;
  background: #fffdf9
}

.ivpl-jawai-page .ivpl-jawai-days {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 22px
}

.ivpl-jawai-page .ivpl-jawai-day {
  border-right: 1px dashed #c6833c;
  padding: 12px
}

.ivpl-jawai-page .ivpl-jawai-day:last-child {
  border-right: 0
}

.ivpl-jawai-page .ivpl-jawai-day h4 {
  font-size: 21px
}

.ivpl-jawai-page .ivpl-jawai-day p {
  font-size: 14px
}

.ivpl-jawai-page .ivpl-jawai-day img {
  height: 150px
}

.ivpl-jawai-page .ivpl-jawai-seasons {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 20px
}

.ivpl-jawai-page .ivpl-jawai-season {
  display: grid;
  grid-template-columns: 110px 1fr;
  grid-template-rows: auto 1fr;
  text-align: left;
  column-gap: 14px;
  padding: 10px;
  border: 1px solid #eaded0;
  border-radius: 8px
}

.ivpl-jawai-page .ivpl-jawai-season img {
  grid-row: 1/3;
  height: 170px
}

.ivpl-jawai-page .ivpl-jawai-season h3 {
  font-size: 22px
}

.ivpl-jawai-page .ivpl-jawai-season p {
  font-size: 14px
}

.ivpl-jawai-page .ivpl-jawai-recommendation {
  display: flex;
  align-items: center;
  text-align: left;
  background: #f7ede0;
  border: 1px solid #eaded0;
  border-radius: 8px;
  padding: 14px;
  margin-top: 14px
}

.ivpl-jawai-page .ivpl-jawai-recommendation .elementor-icon {
  border-radius: 50%;
  padding: 10px
}

.ivpl-jawai-page .ivpl-jawai-faq {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 24px;
  align-items: stretch
}

.ivpl-jawai-page .faq-list {
  border: 1px solid #eaded0;
  border-radius: 8px;
  padding: 14px;
  background: #fffdf9
}

.ivpl-jawai-page .ivpl-jawai-faq img {
  height: 300px
}

.ivpl-jawai-page .ivpl-jawai-final {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  border: 1px solid #eaded0;
  border-radius: 10px;
  background: #f7ede0;
  margin-bottom: 28px;
  align-items: center
}

.ivpl-jawai-page .ivpl-jawai-final h2 {
  text-align: left;
  font-size: 36px
}

.ivpl-jawai-page .cta-buttons {
  align-items: stretch
}

.ivpl-jawai-page .ivpl-jawai-final .elementor-button {
  width: 100%
}

@media (max-width:1024px) {
  .ivpl-jawai-page .hero-copy-wrap {
    width: 60%;
    padding-left: 5%
  }

  .ivpl-jawai-page .hero-copy-wrap h1 {
    font-size: 52px
  }

  .ivpl-jawai-page .ivpl-jawai-benefit-grid {
    grid-template-columns: repeat(3, 1fr)
  }

  .ivpl-jawai-page .ivpl-jawai-stays-grid {
    grid-template-columns: 1fr 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-approach {
    grid-column: 1/-1
  }

  .ivpl-jawai-page .ivpl-jawai-days {
    grid-template-columns: repeat(2, 1fr)
  }

  .ivpl-jawai-page .ivpl-jawai-day:nth-child(2) {
    border-right: 0
  }

  .ivpl-jawai-page .ivpl-jawai-seasons {
    grid-template-columns: 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-season {
    grid-template-columns: 140px 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-people {
    grid-template-columns: 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-people img {
    height: 320px
  }
}

@media (max-width:767px) {

  .ivpl-jawai-page .ivpl-jawai-hero,
  .ivpl-jawai-page .ivpl-jawai-hero>.e-con-inner {
    min-height: 640px
  }

  .ivpl-jawai-page .hero-copy-wrap {
    width: 100%;
    padding: 110px 22px 40px
  }

  .ivpl-jawai-page .hero-copy-wrap h1 {
    font-size: 42px
  }

  .ivpl-jawai-page .hero-copy {
    font-size: 15px
  }

  .ivpl-jawai-page .ivpl-jawai-intro,
  .ivpl-jawai-page .ivpl-jawai-info-grid,
  .ivpl-jawai-page .ivpl-jawai-stays-grid,
  .ivpl-jawai-page .ivpl-jawai-people,
  .ivpl-jawai-page .ivpl-jawai-faq,
  .ivpl-jawai-page .ivpl-jawai-final {
    display: flex;
    flex-direction: column
  }

  .ivpl-jawai-page .ivpl-jawai-intro>.elementor-element:last-child {
    width: 100%
  }

  .ivpl-jawai-page .ivpl-jawai-info-grid>.e-con {
    min-height: 0
  }

  .ivpl-jawai-page .ivpl-jawai-benefit-grid,
  .ivpl-jawai-page .ivpl-jawai-days {
    grid-template-columns: 1fr 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-feature-card img {
    height: 110px
  }

  .ivpl-jawai-page .ivpl-jawai-feature-card h4 {
    font-size: 15px
  }

  .ivpl-jawai-page .ivpl-jawai-feature-card p,
  .ivpl-jawai-page .ivpl-jawai-day p {
    font-size: 12px
  }

  .ivpl-jawai-page .ivpl-jawai-season {
    grid-template-columns: 90px 1fr
  }

  .ivpl-jawai-page .ivpl-jawai-season img {
    height: 130px
  }

  .ivpl-jawai-page .ivpl-jawai-final h2 {
    font-size: 30px
  }

  .ivpl-jawai-page .ivpl-jawai-final {
    padding: 22px
  }

  .ivpl-jawai-page .hero-buttons {
    width: 100%
  }
}

/* Jawai Elementor precedence fixes */
.ivpl-jawai-page .ivpl-jawai-hero h1,
.ivpl-jawai-page .ivpl-jawai-hero h2,
.ivpl-jawai-page .ivpl-jawai-hero h3,
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy,
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy p {
  color: #fff !important
}

.ivpl-jawai-page .ivpl-jawai-hero .hero-subtitle {
  color: #d99b2b !important
}

.ivpl-jawai-page .ivpl-jawai-hero .hero-breadcrumb {
  color: #e0b55c !important
}

.ivpl-jawai-page .ivpl-jawai-hero .elementor-button {
  background: #b87524 !important;
  color: #fff !important;
  border-color: #d39a46 !important
}

.ivpl-jawai-page .ivpl-jawai-hero .elementor-button.elementor-size-sm {
  font-size: 15px !important
}

.ivpl-jawai-page .ivpl-jawai-quote h2,
.ivpl-jawai-page .ivpl-jawai-quote p,
.ivpl-jawai-page .ivpl-jawai-quote .quote-copy {
  color: #f4ad38 !important
}

/* Jawai hero widget text colors */
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(1) p,
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(1) p * {
  color: #e0b55c !important
}

.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(3) p,
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(3) p * {
  color: #d99b2b !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important
}

.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(4) p,
.ivpl-jawai-page .ivpl-jawai-hero .hero-copy-wrap>.elementor-widget-text-editor:nth-child(4) p * {
  color: #fff !important
}

/* Preserve Jawai mockup heading capitalization */
.ivpl-jawai-page h1,
.ivpl-jawai-page h2,
.ivpl-jawai-page h3,
.ivpl-jawai-page h4 {
  text-transform: none !important
}


/* =====================================================
   KANHA NATIONAL PARK SAFARI
===================================================== */
.ivpl-kanha-page {
  background: #fffaf4;
  color: #26322e;
  overflow: hidden
}

.ivpl-kanha-page>.elementor-element {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 34px 3vw;
  box-sizing: border-box
}

.ivpl-kanha-page .ivpl-kanha-hero {
  padding: 0;
  min-height: 620px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: cover;
  position: relative;
  color: #fff
}

.ivpl-kanha-page .ivpl-kanha-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 13, 16, .94), rgba(4, 13, 16, .58) 42%, rgba(4, 13, 16, .04) 79%);
  pointer-events: none
}

.ivpl-kanha-page .ivpl-kanha-hero>.elementor-element {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  min-height: 620px;
  justify-content: center;
  padding: 110px 0 50px;
  box-sizing: border-box
}

.ivpl-kanha-page .hero-copy-wrap {
  max-width: 610px;
  align-items: flex-start !important
}

.ivpl-kanha-page .hero-copy-wrap h1,
.ivpl-kanha-page .hero-copy-wrap p {
  color: #fff !important;
  text-align: left !important
}

.ivpl-kanha-page .hero-copy-wrap .hero-breadcrumb p {
  color: #e0b55c !important;
  font-size: 13px !important
}

.ivpl-kanha-page .hero-copy-wrap .hero-subtitle p {
  color: #d99b2b !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 25px !important;
  line-height: 1.2 !important
}

.ivpl-kanha-page .hero-copy-wrap .hero-copy p {
  font-size: 16px !important;
  max-width: 500px
}

.ivpl-kanha-page .hero-copy-wrap h1 {
  font-size: 62px !important;
  line-height: 1.03 !important
}

.ivpl-kanha-page .ivpl-kanha-buttons {
  align-items: flex-start !important
}

.ivpl-kanha-page .ivpl-kanha-buttons .elementor-button {
  min-width: 190px
}

.ivpl-kanha-page .ivpl-kanha-intro-grid,
.ivpl-kanha-page .ivpl-kanha-story-grid,
.ivpl-kanha-page .ivpl-kanha-lodge-grid,
.ivpl-kanha-page .ivpl-kanha-faq,
.ivpl-kanha-page .ivpl-kanha-final {
  max-width: 1200px;
  margin: 0 auto;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #fffdf9
}

.ivpl-kanha-page .intro-text {
  flex: 1.25;
  padding: 14px 10px
}

.ivpl-kanha-page .ivpl-kanha-intro-grid>.elementor-widget-image {
  flex: .75
}

.ivpl-kanha-page .ivpl-kanha-intro-grid img {
  height: 220px;
  object-fit: cover
}

.ivpl-kanha-page .ivpl-kanha-story-grid>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 18px;
  background: #fffdf9;
  box-sizing: border-box
}

.ivpl-kanha-page .ivpl-kanha-story-grid .ivpl-kanha-quote {
  background: #03284a;
  border-color: #03284a;
  color: #d79b2e
}

.ivpl-kanha-page .ivpl-kanha-quote p,
.ivpl-kanha-page .ivpl-kanha-quote h2 {
  color: #d79b2e !important
}

.ivpl-kanha-page .quote-mark p {
  font-size: 58px !important;
  line-height: .65 !important
}

.ivpl-kanha-page .section-kicker p {
  color: #b86e25 !important;
  font-size: 14px !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-align: center
}

.ivpl-kanha-page .ivpl-kanha-why,
.ivpl-kanha-page .ivpl-kanha-journey,
.ivpl-kanha-page .ivpl-kanha-best {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center
}

.ivpl-kanha-page .ivpl-kanha-benefit-grid>* {
  flex: 1 1 calc(16.666% - 14px);
  min-width: 150px;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box;
  align-items: center
}

.ivpl-kanha-page .ivpl-kanha-feature-card img {
  height: 128px;
  object-fit: cover
}

.ivpl-kanha-page .ivpl-kanha-feature-card .elementor-widget-icon {
  margin-top: -22px;
  z-index: 2
}

.ivpl-kanha-page .ivpl-kanha-feature-card .elementor-icon {
  border-radius: 50%;
  padding: 10px
}

.ivpl-kanha-page .ivpl-kanha-feature-card h4 {
  font-size: 18px !important;
  margin: 8px 0 4px
}

.ivpl-kanha-page .ivpl-kanha-feature-card p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  text-align: center
}

.ivpl-kanha-page .ivpl-kanha-stay-intro {
  min-height: 360px;
  max-width: 1200px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
  justify-content: center;
  align-items: flex-start !important;
  padding-left: 6vw !important
}

.ivpl-kanha-page .ivpl-kanha-stay-intro>* {
  max-width: 520px;
  text-align: left !important
}

.ivpl-kanha-page .ivpl-kanha-stay-intro h2 {
  text-align: left !important
}

.ivpl-kanha-page .ivpl-kanha-lodge-grid>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box
}

.ivpl-kanha-page .ivpl-kanha-choice {
  background: #06321f !important;
  color: #fff !important;
  border: 3px solid #c18a30 !important;
  align-items: center
}

.ivpl-kanha-page .ivpl-kanha-choice h2,
.ivpl-kanha-page .ivpl-kanha-choice p {
  color: #fff !important;
  text-align: center !important
}

.ivpl-kanha-page .ivpl-kanha-days>* {
  flex: 1;
  border-top: 2px dotted #bf782a;
  padding: 12px 8px;
  align-items: center
}

.ivpl-kanha-page .ivpl-kanha-day .elementor-icon {
  border-radius: 50%;
  padding: 10px
}

.ivpl-kanha-page .day-label p {
  color: #b86e25 !important;
  font-weight: 700;
  text-align: center
}

.ivpl-kanha-page .ivpl-kanha-note,
.ivpl-kanha-page .ivpl-kanha-recommendation {
  max-width: 1200px;
  margin: 16px auto;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #f5ecdf;
  padding: 14px 18px;
  align-items: center
}

.ivpl-kanha-page .ivpl-kanha-note p,
.ivpl-kanha-page .ivpl-kanha-recommendation p {
  margin: 0
}

.ivpl-kanha-page .ivpl-kanha-seasons>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #fffdf9;
  padding: 10px;
  box-sizing: border-box
}

.ivpl-kanha-page .ivpl-kanha-season img {
  height: 190px;
  object-fit: cover
}

.ivpl-kanha-page .ivpl-kanha-season .elementor-widget-icon {
  margin-top: -22px;
  z-index: 2
}

.ivpl-kanha-page .ivpl-kanha-season .elementor-icon {
  border-radius: 50%;
  padding: 10px
}

.ivpl-kanha-page .ivpl-kanha-recommendation .elementor-widget-image {
  max-width: 200px;
  margin-left: auto
}

.ivpl-kanha-page .ivpl-kanha-recommendation img {
  height: 90px;
  object-fit: contain
}

.ivpl-kanha-page .ivpl-kanha-faq>* {
  flex: 1;
  padding: 12px;
  box-sizing: border-box
}

.ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
  flex: 1.3
}

.ivpl-kanha-page .ivpl-kanha-faq img {
  height: 260px;
  object-fit: cover
}

.ivpl-kanha-page .ivpl-kanha-final {
  align-items: center;
  min-height: 170px
}

.ivpl-kanha-page .ivpl-kanha-final>.elementor-widget-image {
  max-width: 150px
}

.ivpl-kanha-page .ivpl-kanha-final img {
  height: 110px;
  object-fit: contain
}

@media(max-width:1024px) {
  .ivpl-kanha-page .ivpl-kanha-hero>.elementor-element {
    padding: 90px 30px
  }

  .ivpl-kanha-page .ivpl-kanha-benefit-grid>* {
    flex: 1 1 calc(33.333% - 14px)
  }

  .ivpl-kanha-page .ivpl-kanha-feature-card img {
    height: 150px
  }

  .ivpl-kanha-page .ivpl-kanha-story-grid,
  .ivpl-kanha-page .ivpl-kanha-lodge-grid {
    flex-wrap: wrap
  }

  .ivpl-kanha-page .ivpl-kanha-story-grid>* {
    flex-basis: calc(50% - 18px)
  }

  .ivpl-kanha-page .ivpl-kanha-quote {
    flex-basis: 100% !important
  }
}

@media(max-width:767px) {
  .ivpl-kanha-page>.elementor-element {
    padding: 24px 16px
  }

  .ivpl-kanha-page .ivpl-kanha-hero {
    min-height: 620px
  }

  .ivpl-kanha-page .ivpl-kanha-hero>.elementor-element {
    min-height: 620px;
    padding: 80px 22px 35px
  }

  .ivpl-kanha-page .hero-copy-wrap h1 {
    font-size: 43px !important
  }

  .ivpl-kanha-page .hero-copy-wrap .hero-subtitle p {
    font-size: 20px !important
  }

  .ivpl-kanha-page .ivpl-kanha-intro-grid,
  .ivpl-kanha-page .ivpl-kanha-story-grid,
  .ivpl-kanha-page .ivpl-kanha-lodge-grid,
  .ivpl-kanha-page .ivpl-kanha-faq,
  .ivpl-kanha-page .ivpl-kanha-final {
    flex-direction: column !important
  }

  .ivpl-kanha-page .ivpl-kanha-benefit-grid>* {
    flex: 1 1 100%;
    min-width: 0
  }

  .ivpl-kanha-page .ivpl-kanha-story-grid>* {
    flex-basis: auto
  }

  .ivpl-kanha-page .ivpl-kanha-days,
  .ivpl-kanha-page .ivpl-kanha-seasons {
    flex-direction: column !important
  }

  .ivpl-kanha-page .ivpl-kanha-season img {
    height: 220px
  }

  .ivpl-kanha-page .ivpl-kanha-recommendation {
    flex-direction: column !important;
    align-items: flex-start !important
  }

  .ivpl-kanha-page .ivpl-kanha-recommendation .elementor-widget-image {
    max-width: 100%;
    margin-left: 0
  }

  .ivpl-kanha-page .ivpl-kanha-final>.elementor-widget-image {
    max-width: 100%
  }
}

/* Kanha Elementor hero inherits its Elementor-managed page background */
.ivpl-kanha-page .ivpl-kanha-hero {
  ;
  background-position: 100% 50% !important;
  background-size: cover !important;
  background-repeat: no-repeat !important
}



/* Kanha Elementor layout corrections */
.ivpl-kanha-page .ivpl-kanha-benefit-grid {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: stretch !important
}

.ivpl-kanha-page .ivpl-kanha-benefit-grid>.ivpl-kanha-feature-card {
  flex: 1 1 calc(16.666% - 14px) !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important
}

.ivpl-kanha-page .ivpl-kanha-intro-grid>.intro-text {
  flex: 1.25 1 0% !important;
  width: auto !important;
  min-width: 0 !important
}

.ivpl-kanha-page .ivpl-kanha-intro-grid>.elementor-widget-image {
  flex: .75 1 0% !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important
}

.ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
  flex: 1.3 1 0% !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important
}

@media(max-width:1024px) {
  .ivpl-kanha-page .ivpl-kanha-benefit-grid>.ivpl-kanha-feature-card {
    flex: 1 1 calc(33.333% - 14px) !important
  }
}

@media(max-width:767px) {
  .ivpl-kanha-page .ivpl-kanha-benefit-grid>.ivpl-kanha-feature-card {
    flex: 1 1 100% !important
  }

  .ivpl-kanha-page .ivpl-kanha-intro-grid>.elementor-widget-image,
  .ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
    flex: 1 1 auto !important
  }
}



/* Kanha row sizing refinements */
.ivpl-kanha-page .ivpl-kanha-benefit-grid>.ivpl-kanha-feature-card {
  flex: 1 1 calc((100% - 100px)/6) !important;
  width: auto !important;
  min-width: 0 !important
}

.ivpl-kanha-page .ivpl-kanha-faq>.faq-list {
  flex: 2.6 1 0% !important;
  width: auto !important;
  min-width: 0 !important
}

.ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
  flex: 1.4 1 0% !important;
  width: auto !important;
  min-width: 0 !important
}

@media(max-width:1024px) {
  .ivpl-kanha-page .ivpl-kanha-benefit-grid>.ivpl-kanha-feature-card {
    flex: 1 1 calc((100% - 40px)/3) !important
  }

  .ivpl-kanha-page .ivpl-kanha-faq>.faq-list {
    flex: 1 1 0% !important
  }

  .ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
    flex: 1 1 0% !important
  }
}

@media(max-width:767px) {

  .ivpl-kanha-page .ivpl-kanha-faq>.faq-list,
  .ivpl-kanha-page .ivpl-kanha-faq>.elementor-widget-image {
    flex: 1 1 auto !important;
    width: 100% !important
  }
}



/* Preserve approved Kanha heading capitalization from Elementor text */
.ivpl-kanha-page h1,
.ivpl-kanha-page h2,
.ivpl-kanha-page h3,
.ivpl-kanha-page h4,
.ivpl-kanha-page h5,
.ivpl-kanha-page h6 {
  text-transform: none !important;
}

.ivpl-kanha-page .section-kicker,
.ivpl-kanha-page .day-label {
  text-transform: uppercase !important;
}



/* Kanha hero text contrast */
.ivpl-kanha-page .elementor-element-748be2ee p {
  color: #e0b55c !important;
  text-align: left !important
}

.ivpl-kanha-page .elementor-element-25283b6f .elementor-heading-title {
  color: #fff !important;
  text-align: left !important
}

.ivpl-kanha-page .elementor-element-cab5f9b p {
  color: #d99b2b !important;
  text-align: left !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 25px !important;
  line-height: 1.2 !important
}



/* Prevent off-canvas admin helper frames from creating page overflow */
body:has(.ivpl-kanha-page) {
  overflow-x: hidden !important
}



/* Keep the page canvas cream; hero owns its own Elementor background */
.ivpl-kanha-page {
  background-image: none !important;
  background-color: #fffaf4 !important
}

/* =====================================================
   PENCH TIGER SAFARI PAGE
===================================================== */
.ivpl-pench-page {
  background: #fffaf4;
  color: #26322e;
  overflow: hidden
}

.ivpl-pench-page>.elementor-element {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 34px 3vw;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-pench-hero,
.ivpl-pench-page .ivpl-kanha-hero {
  padding: 0;
  min-height: 620px;
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: cover;
  position: relative;
  color: #fff
}

.ivpl-pench-page .ivpl-pench-hero:before,
.ivpl-pench-page .ivpl-kanha-hero:before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 13, 16, .94), rgba(4, 13, 16, .58) 42%, rgba(4, 13, 16, .04) 79%);
  pointer-events: none
}

.ivpl-pench-page .ivpl-pench-hero>.elementor-element,
.ivpl-pench-page .ivpl-kanha-hero>.elementor-element {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
  min-height: 620px;
  justify-content: center;
  padding: 110px 0 50px;
  box-sizing: border-box
}

.ivpl-pench-page .hero-copy-wrap {
  max-width: 610px;
  align-items: flex-start !important
}

.ivpl-pench-page .hero-copy-wrap h1,
.ivpl-pench-page .hero-copy-wrap p {
  color: #fff !important;
  text-align: left !important
}

.ivpl-pench-page .hero-copy-wrap .hero-breadcrumb p {
  color: #e0b55c !important;
  font-size: 13px !important
}

.ivpl-pench-page .hero-copy-wrap .hero-subtitle p {
  color: #d99b2b !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 25px !important;
  line-height: 1.2 !important
}

.ivpl-pench-page .hero-copy-wrap .hero-copy p {
  font-size: 16px !important;
  max-width: 500px
}

.ivpl-pench-page .hero-copy-wrap h1 {
  font-size: 62px !important;
  line-height: 1.03 !important
}

.ivpl-pench-page .ivpl-kanha-buttons,
.ivpl-pench-page .ivpl-pench-buttons {
  align-items: flex-start !important
}

.ivpl-pench-page .ivpl-kanha-buttons .elementor-button,
.ivpl-pench-page .ivpl-pench-buttons .elementor-button {
  min-width: 190px;
  background: #b87524 !important;
  color: #fff !important;
  border-color: #d39a46 !important
}

.ivpl-pench-page .ivpl-kanha-intro-grid,
.ivpl-pench-page .ivpl-kanha-story-grid,
.ivpl-pench-page .ivpl-kanha-lodge-grid,
.ivpl-pench-page .ivpl-kanha-faq,
.ivpl-pench-page .ivpl-kanha-final {
  max-width: 1200px;
  margin: 0 auto;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #fffdf9
}

.ivpl-pench-page .intro-text {
  flex: 1.25;
  padding: 14px 10px
}

.ivpl-pench-page .ivpl-kanha-intro-grid>.elementor-widget-image {
  flex: .75
}

.ivpl-pench-page .ivpl-kanha-intro-grid img {
  height: 220px;
  object-fit: cover
}

.ivpl-pench-page .ivpl-kanha-story-grid>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 18px;
  background: #fffdf9;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-kanha-story-grid .ivpl-kanha-quote {
  background: #03284a;
  border-color: #03284a;
  color: #d79b2e
}

.ivpl-pench-page .ivpl-kanha-quote p,
.ivpl-pench-page .ivpl-kanha-quote h2 {
  color: #d79b2e !important
}

.ivpl-pench-page .quote-mark p {
  font-size: 58px !important;
  line-height: .65 !important
}

.ivpl-pench-page .section-kicker p {
  color: #b86e25 !important;
  font-size: 14px !important;
  letter-spacing: 1px;
  text-transform: uppercase;
  text-align: center
}

.ivpl-pench-page .ivpl-kanha-why,
.ivpl-pench-page .ivpl-kanha-journey,
.ivpl-pench-page .ivpl-kanha-best {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center
}

.ivpl-pench-page .ivpl-kanha-benefit-grid>* {
  flex: 1 1 calc(16.666% - 14px);
  min-width: 150px;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box;
  align-items: center
}

.ivpl-pench-page .ivpl-kanha-feature-card img {
  height: 128px;
  object-fit: cover
}

.ivpl-pench-page .ivpl-kanha-feature-card .elementor-widget-icon {
  margin-top: -22px;
  z-index: 2
}

.ivpl-pench-page .ivpl-kanha-feature-card .elementor-icon,
.ivpl-pench-page .ivpl-kanha-season .elementor-icon {
  border-radius: 50%;
  padding: 10px
}

.ivpl-pench-page .ivpl-kanha-feature-card h4 {
  font-size: 18px !important;
  margin: 8px 0 4px
}

.ivpl-pench-page .ivpl-kanha-feature-card p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  text-align: center
}

.ivpl-pench-page .ivpl-kanha-stay-intro {
  min-height: 360px;
  max-width: 1200px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
  justify-content: center;
  align-items: flex-start !important;
  padding-left: 6vw !important
}

.ivpl-pench-page .ivpl-kanha-stay-intro>* {
  max-width: 520px;
  text-align: left !important
}

.ivpl-pench-page .ivpl-kanha-stay-intro h2 {
  text-align: left !important
}

.ivpl-pench-page .ivpl-kanha-lodge-grid>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-kanha-choice {
  background: #06321f !important;
  color: #fff !important;
  border: 3px solid #c18a30 !important;
  align-items: center
}

.ivpl-pench-page .ivpl-kanha-choice h2,
.ivpl-pench-page .ivpl-kanha-choice p {
  color: #fff !important;
  text-align: center !important
}

.ivpl-pench-page .ivpl-kanha-days>* {
  flex: 1;
  border-top: 2px dotted #bf782a;
  padding: 12px 8px;
  align-items: center
}

.ivpl-pench-page .day-label p {
  color: #b86e25 !important;
  font-weight: 700;
  text-align: center
}

.ivpl-pench-page .ivpl-kanha-note,
.ivpl-pench-page .ivpl-kanha-recommendation {
  max-width: 1200px;
  margin: 16px auto;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #f5ecdf;
  padding: 14px 18px;
  align-items: center
}

.ivpl-pench-page .ivpl-kanha-note p,
.ivpl-pench-page .ivpl-kanha-recommendation p {
  margin: 0
}

.ivpl-pench-page .ivpl-kanha-seasons>* {
  flex: 1;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #fffdf9;
  padding: 10px;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-kanha-season img {
  height: 190px;
  object-fit: cover
}

.ivpl-pench-page .ivpl-kanha-season .elementor-widget-icon {
  margin-top: -22px;
  z-index: 2
}

.ivpl-pench-page .ivpl-kanha-recommendation .elementor-widget-image {
  max-width: 200px;
  margin-left: auto
}

.ivpl-pench-page .ivpl-kanha-recommendation img {
  height: 90px;
  object-fit: contain
}

.ivpl-pench-page .ivpl-kanha-faq>* {
  flex: 1;
  padding: 12px;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-kanha-faq>.elementor-widget-image {
  flex: 1.3
}

.ivpl-pench-page .ivpl-kanha-faq img {
  height: 260px;
  object-fit: cover
}

.ivpl-pench-page .ivpl-kanha-final {
  align-items: center;
  min-height: 170px
}

.ivpl-pench-page .ivpl-kanha-final>.elementor-widget-image {
  max-width: 150px
}

.ivpl-pench-page .ivpl-kanha-final img {
  height: 110px;
  object-fit: contain
}

@media(max-width:1024px) {

  .ivpl-pench-page .ivpl-pench-hero>.elementor-element,
  .ivpl-pench-page .ivpl-kanha-hero>.elementor-element {
    padding: 90px 30px
  }

  .ivpl-pench-page .ivpl-kanha-benefit-grid>* {
    flex: 1 1 calc(33.333% - 14px)
  }

  .ivpl-pench-page .ivpl-kanha-feature-card img {
    height: 150px
  }

  .ivpl-pench-page .ivpl-kanha-story-grid,
  .ivpl-pench-page .ivpl-kanha-lodge-grid {
    flex-wrap: wrap
  }

  .ivpl-pench-page .ivpl-kanha-story-grid>* {
    flex-basis: calc(50% - 18px)
  }

  .ivpl-pench-page .ivpl-kanha-quote {
    flex-basis: 100% !important
  }
}

@media(max-width:767px) {
  .ivpl-pench-page>.elementor-element {
    padding: 24px 16px
  }

  .ivpl-pench-page .ivpl-pench-hero,
  .ivpl-pench-page .ivpl-kanha-hero {
    min-height: 620px
  }

  .ivpl-pench-page .ivpl-pench-hero>.elementor-element,
  .ivpl-pench-page .ivpl-kanha-hero>.elementor-element {
    min-height: 620px;
    padding: 80px 22px 35px
  }

  .ivpl-pench-page .hero-copy-wrap h1 {
    font-size: 43px !important
  }

  .ivpl-pench-page .hero-copy-wrap .hero-subtitle p {
    font-size: 20px !important
  }

  .ivpl-pench-page .ivpl-kanha-intro-grid,
  .ivpl-pench-page .ivpl-kanha-story-grid,
  .ivpl-pench-page .ivpl-kanha-lodge-grid,
  .ivpl-pench-page .ivpl-kanha-faq,
  .ivpl-pench-page .ivpl-kanha-final {
    flex-direction: column !important
  }

  .ivpl-pench-page .ivpl-kanha-benefit-grid>* {
    flex: 1 1 100%;
    min-width: 0
  }

  .ivpl-pench-page .ivpl-kanha-story-grid>* {
    flex-basis: auto
  }

  .ivpl-pench-page .ivpl-kanha-days,
  .ivpl-pench-page .ivpl-kanha-seasons {
    flex-direction: column !important
  }

  .ivpl-pench-page .ivpl-kanha-season img {
    height: 220px
  }

  .ivpl-pench-page .ivpl-kanha-recommendation {
    flex-direction: column !important;
    align-items: flex-start !important
  }

  .ivpl-pench-page .ivpl-kanha-recommendation .elementor-widget-image {
    max-width: 100%;
    margin-left: 0
  }

  .ivpl-pench-page .ivpl-kanha-final>.elementor-widget-image {
    max-width: 100%
  }
}

body:has(.ivpl-pench-page) {
  overflow-x: hidden !important
}

/* Pench Elementor layout refinements */
.ivpl-pench-page .ivpl-pench-intro-grid,
.ivpl-pench-page .ivpl-pench-story-grid,
.ivpl-pench-page .ivpl-pench-lodge-grid,
.ivpl-pench-page .ivpl-pench-faq,
.ivpl-pench-page .ivpl-pench-final {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 18px !important;
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 3%;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-pench-intro-grid>.elementor-widget-image {
  flex: .75 1 0 !important;
  width: auto !important;
  max-width: none !important
}

.ivpl-pench-page .ivpl-pench-intro-grid>.intro-text {
  flex: 1.25 1 0 !important;
  width: auto !important
}

.ivpl-pench-page .ivpl-pench-intro-grid img {
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 8px
}

.ivpl-pench-page .ivpl-pench-story-grid>* {
  flex: 1 1 0 !important;
  width: auto !important;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 18px;
  background: #fffdf9;
  box-sizing: border-box;
  min-width: 0
}

.ivpl-pench-page .ivpl-pench-quote {
  background: #03284a !important;
  border-color: #03284a !important;
  color: #d79b2e !important
}

.ivpl-pench-page .ivpl-pench-quote p,
.ivpl-pench-page .ivpl-pench-quote h2 {
  color: #d79b2e !important
}

.ivpl-pench-page .ivpl-pench-why,
.ivpl-pench-page .ivpl-pench-journey,
.ivpl-pench-page .ivpl-pench-best {
  max-width: 1200px;
  margin: 0 auto;
  padding: 28px 3%;
  box-sizing: border-box;
  text-align: center
}

.ivpl-pench-page .ivpl-pench-benefit-grid {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 14px !important
}

.ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card {
  flex: 1 1 calc((100% - 70px)/6) !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box;
  align-items: center
}

.ivpl-pench-page .ivpl-pench-feature-card img {
  height: 128px !important;
  object-fit: cover !important;
  border-radius: 8px
}

.ivpl-pench-page .ivpl-pench-feature-card h4 {
  font-size: 18px !important;
  margin: 8px 0 4px
}

.ivpl-pench-page .ivpl-pench-feature-card p {
  font-size: 13px !important;
  line-height: 1.35 !important;
  text-align: center
}

.ivpl-pench-page .ivpl-pench-stay-intro {
  min-height: 360px;
  max-width: 1200px;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
  justify-content: center;
  align-items: flex-start !important;
  padding-left: 6vw !important
}

.ivpl-pench-page .ivpl-pench-stay-intro>* {
  max-width: 520px;
  text-align: left !important
}

.ivpl-pench-page .ivpl-pench-lodge-grid>* {
  flex: 1 1 0 !important;
  width: auto !important;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  padding: 10px;
  background: #fffdf9;
  box-sizing: border-box;
  min-width: 0
}

.ivpl-pench-page .ivpl-pench-choice {
  background: #06321f !important;
  color: #fff !important;
  border: 3px solid #c18a30 !important;
  align-items: center
}

.ivpl-pench-page .ivpl-pench-choice h2,
.ivpl-pench-page .ivpl-pench-choice p {
  color: #fff !important;
  text-align: center !important
}

.ivpl-pench-page .ivpl-pench-days {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 16px !important
}

.ivpl-pench-page .ivpl-pench-days>.ivpl-pench-day {
  flex: 1 1 0 !important;
  width: auto !important;
  border-top: 2px dotted #bf782a;
  padding: 12px 8px;
  align-items: center;
  min-width: 0
}

.ivpl-pench-page .ivpl-pench-note,
.ivpl-pench-page .ivpl-pench-recommendation {
  max-width: 1200px;
  margin: 16px auto;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #f5ecdf;
  padding: 14px 18px;
  align-items: center
}

.ivpl-pench-page .ivpl-pench-seasons {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 18px !important
}

.ivpl-pench-page .ivpl-pench-seasons>.ivpl-pench-season {
  flex: 1 1 0 !important;
  width: auto !important;
  border: 1px solid #ead8c6;
  border-radius: 9px;
  background: #fffdf9;
  padding: 10px;
  box-sizing: border-box;
  min-width: 0
}

.ivpl-pench-page .ivpl-pench-season img {
  height: 190px !important;
  object-fit: cover !important
}

.ivpl-pench-page .ivpl-pench-faq>* {
  flex: 1 1 0 !important;
  width: auto !important;
  padding: 12px;
  box-sizing: border-box;
  min-width: 0
}

.ivpl-pench-page .ivpl-pench-faq>.elementor-widget-image {
  flex: 1.3 1 0 !important
}

.ivpl-pench-page .ivpl-pench-faq img {
  height: 260px !important;
  object-fit: cover !important
}

.ivpl-pench-page .ivpl-pench-final {
  align-items: center;
  min-height: 170px
}

.ivpl-pench-page .ivpl-pench-final>.elementor-widget-image {
  max-width: 150px
}

.ivpl-pench-page .ivpl-pench-final img {
  height: 110px;
  object-fit: contain
}

.ivpl-pench-page .ivpl-pench-explore-grid {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 14px !important
}

.ivpl-pench-page .ivpl-pench-explore-card {
  flex: 1 1 calc((100% - 70px)/6) !important;
  min-width: 0 !important;
  background: #0b3a2a !important;
  color: #fff !important;
  border-radius: 8px;
  padding: 14px !important;
  min-height: 180px;
  box-sizing: border-box
}

.ivpl-pench-page .ivpl-pench-explore-card h4 {
  color: #fff !important
}

@media(max-width:1024px) {
  .ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card {
    flex-basis: calc((100% - 28px)/3) !important
  }

  .ivpl-pench-page .ivpl-pench-story-grid,
  .ivpl-pench-page .ivpl-pench-lodge-grid {
    flex-wrap: wrap !important
  }

  .ivpl-pench-page .ivpl-pench-story-grid>* {
    flex-basis: calc(50% - 9px) !important
  }

  .ivpl-pench-page .ivpl-pench-quote {
    flex-basis: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-lodge-grid>* {
    flex-basis: calc(50% - 9px) !important
  }

  .ivpl-pench-page .ivpl-pench-choice {
    flex-basis: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-days,
  .ivpl-pench-page .ivpl-pench-seasons {
    flex-wrap: wrap !important
  }

  .ivpl-pench-page .ivpl-pench-days>.ivpl-pench-day,
  .ivpl-pench-page .ivpl-pench-seasons>.ivpl-pench-season {
    flex-basis: calc(50% - 9px) !important
  }

  .ivpl-pench-page .ivpl-pench-explore-card {
    flex-basis: calc((100% - 28px)/3) !important
  }
}

@media(max-width:767px) {

  .ivpl-pench-page .ivpl-pench-intro-grid,
  .ivpl-pench-page .ivpl-pench-story-grid,
  .ivpl-pench-page .ivpl-pench-lodge-grid,
  .ivpl-pench-page .ivpl-pench-faq,
  .ivpl-pench-page .ivpl-pench-final {
    flex-direction: column !important;
    flex-wrap: nowrap !important
  }

  .ivpl-pench-page .ivpl-pench-intro-grid>.elementor-widget-image {
    width: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-story-grid>*,
  .ivpl-pench-page .ivpl-pench-lodge-grid>* {
    flex-basis: auto !important;
    width: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card {
    flex-basis: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-days,
  .ivpl-pench-page .ivpl-pench-seasons {
    flex-direction: column !important;
    flex-wrap: nowrap !important
  }

  .ivpl-pench-page .ivpl-pench-days>.ivpl-pench-day,
  .ivpl-pench-page .ivpl-pench-seasons>.ivpl-pench-season {
    flex-basis: auto !important;
    width: 100% !important
  }

  .ivpl-pench-page .ivpl-pench-explore-card {
    flex-basis: 100% !important
  }
}

/* Pench grid width correction */
.ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card {
  flex: 0 0 15.5% !important;
  flex-basis: 15.5% !important;
  width: 15.5% !important;
  max-width: 15.5% !important
}

.ivpl-pench-page .ivpl-pench-explore-grid>.ivpl-pench-explore-card {
  flex: 0 0 15.5% !important;
  flex-basis: 15.5% !important;
  width: 15.5% !important;
  max-width: 15.5% !important
}

@media(max-width:1024px) {
  .ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card {
    flex: 0 0 calc((100% - 28px)/3) !important;
    flex-basis: calc((100% - 28px)/3) !important;
    width: calc((100% - 28px)/3) !important;
    max-width: calc((100% - 28px)/3) !important
  }

  .ivpl-pench-page .ivpl-pench-explore-grid>.ivpl-pench-explore-card {
    flex: 0 0 calc((100% - 28px)/3) !important;
    flex-basis: calc((100% - 28px)/3) !important;
    width: calc((100% - 28px)/3) !important;
    max-width: calc((100% - 28px)/3) !important
  }
}

@media(max-width:767px) {

  .ivpl-pench-page .ivpl-pench-benefit-grid>.ivpl-pench-feature-card,
  .ivpl-pench-page .ivpl-pench-explore-grid>.ivpl-pench-explore-card {
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
    width: 100% !important;
    max-width: 100% !important
  }
}


/*----------------------------*/
/* Main widget */
.icon-b-flex .ekit-wid-con {
  width: 100%;
}

/* Link should take full width */
.icon-b-flex .ekit_global_links {
  display: block;
  width: 100%;
  color: inherit;
  text-decoration: none;
}

/* Main row */
.icon-b-flex .elementskit-infobox {
  display: grid !important;
  grid-template-columns: 48px 1fr;
  align-items: center;
  gap: 20px;

  width: 100%;
  padding: 18px 0;
  margin: 0;

  border-bottom: 1px solid rgba(181, 133, 59, 0.30);

  background: transparent;
}

/* Icon wrapper */
.icon-b-flex .elementskit-box-header {
  width: 48px;
  min-width: 48px;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

/* Icon */
.icon-b-flex .elementskit-info-box-icon {
  width: 36px;
  height: 36px;
  margin: 0 !important;
  padding: 0 !important;

  display: flex;
  align-items: center;
  justify-content: center;
}

/* SVG icon */
.icon-b-flex .elementskit-info-box-icon svg {
  width: 32px !important;
  height: 32px !important;
  display: block;
}

/* Title + Description area */
.icon-b-flex .box-body {
  display: grid !important;
  grid-template-columns: minmax(180px, 0.85fr) minmax(280px, 1.35fr);
  align-items: center;
  gap: 40px;

  width: 100%;
  padding: 0 !important;
  margin: 0 !important;
}

/* Title */
.icon-b-flex .elementskit-info-box-title {
  margin: 0 !important;
  padding: 0 !important;

  font-size: 16px;
  line-height: 1.35;
  font-weight: 600;
}

/* Description */
.icon-b-flex .box-body p {
  margin: 0 !important;
  padding: 0 !important;

  font-size: 16px;
  line-height: 1.45;
}

/* Remove default ElementsKit spacing */
.icon-b-flex .elementskit-infobox-icon-left-right-align {
  margin: 0 !important;
}

/* Tablet */
@media (max-width: 1024px) {
  .icon-b-flex .box-body {
    grid-template-columns: 0.9fr 1.1fr;
    gap: 25px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .icon-b-flex .elementskit-infobox {
    grid-template-columns: 40px 1fr;
    gap: 14px;
    padding: 16px 0;
  }

  .icon-b-flex .elementskit-box-header {
    width: 40px;
    min-width: 40px;
  }

  .icon-b-flex .elementskit-info-box-icon {
    width: 32px;
    height: 32px;
  }

  .icon-b-flex .elementskit-info-box-icon svg {
    width: 28px !important;
    height: 28px !important;
  }

  .icon-b-flex .box-body {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .icon-b-flex .elementskit-info-box-title {
    font-size: 15px;
  }

  .icon-b-flex .box-body p {
    font-size: 14px;
  }
}
