/* ═══════════════════════════════════════════
   Wanderlust Travel — Main Stylesheet
   cb- = carbooking namespace
   TOKENS & RESET
═══════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,100..900;1,9..144,100..900&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&display=swap');
:root {
  --cb-sand:    #f5efe6;
  --cb-sand2:   #ede4d5;
  --cb-cream:   #faf7f2;
  --cb-gold:    #c9a227;
  --cb-gold2:   #e8c44a;
  --cb-forest:  #1a2e1a;
  --cb-forest2: #243824;
  --cb-forest3: #2f4a2f;
  --cb-slate:   #1c2333;
  --cb-white:   #ffffff;
  --cb-muted:   #7a7060;
  --cb-text:    #2a2018;
   --light:     #e8e0d0;
   --green:     #1b3a2b;
  --green2:     #2e5e42;
  --green-mid:    #1a5c44;
  --green-light:  #2e7d5a;
  --mint-bg:      #ddf0ea;
  --mint-light:   #e8f7f2;
  --mint-pale:    #f0faf6;
  --orange:       #f05a28;
  --orange-hover: #d94d1e;
  --white:        #ffffff;
  --text-dark:    #0d3d2f;
  --text-body:    #3a4a47;
  --text-muted:   #6b7c7a;
  --border-light: rgba(13,61,47,.10);
  --radius-sm:    8px;
  --radius-md:    12px;
  --radius-lg:    16px;
  --radius-xl:    20px;
  --radius-pill:  999px;
  --shadow-card:  0 2px 14px rgba(13,61,47,.08);
  --shadow-hover: 0 10px 36px rgba(13,61,47,.15);
  --cb-font-display: 'Cormorant Garamond', serif;
  --cb-font-body:    'DM Sans', sans-serif;
  --font-serif:   "Fraunces", serif;
  --font-plus:"Plus Jakarta Sans", sans-serif;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; margin-top: 0px !important;}
body {
  font-family: var(--cb-font-body);
  background: var(--cb-cream);
  color: var(--cb-text);
  overflow-x: hidden;
  max-width: 100% !important;
  margin: 0px !important;
  padding: 0px !important;
  border: 0px !important;
}
a { text-decoration:none; color:inherit; }
img { display:block; max-width:100%; }
#error-page {
	margin-top: 0px !important;
}
body.page-template {
	margin-top: 68px !important;
}
h1,h2,h3,h4,h5{
  font-family: var(--cb-font-display);
  font-weight: 600;
}
/* ── Custom cursor — desktop only ── */
@media (pointer:fine) {
  body { cursor:none; }
  .cb-cursor {
    position:fixed; width:12px; height:12px;
    background:var(--cb-gold); border-radius:50%;
    pointer-events:none; z-index:9999;
    transform:translate(-50%,-50%);
    transition:width .25s, height .25s, background .25s;
    mix-blend-mode:multiply;
  }
  .cb-cursor-ring {
    position:fixed; width:40px; height:40px;
    border:1px solid var(--cb-gold); border-radius:50%;
    pointer-events:none; z-index:9998;
    transform:translate(-50%,-50%);
    transition:width .3s, height .3s, opacity .3s;
    opacity:.6;
  }
  body:has(a:hover) .cb-cursor { width:20px; height:20px; background:var(--cb-gold2); }
  body:has(a:hover) .cb-cursor-ring { width:60px; height:60px; opacity:.3; }
}
@media (pointer:coarse) {
  .cb-cursor, .cb-cursor-ring { display:none; }
}

/* ═══════════════════════════════════════════
   NAV
═══════════════════════════════════════════ */
/* All Other Pages & Posts */
body:not(.home) .cb-nav{
    background: rgba(250,247,242,.96);
    backdrop-filter: blur(12px);
    padding: 16px 60px;
    box-shadow: 0 2px 30px rgba(0,0,0,.08);
}
/* All Pages & Posts Menu Color */
body:not(.home) .cb-nav__links a{
    color: #111111;
}
/* Inner Pages Logo Color */

body:not(.home) .cb-nav__logo{
    color: var(--cb-forest);
}
body:not(.home) .cb-nav__hamburger span {
	background-color: #111;
}
.cb-nav {
  position:fixed; top:0; left:0; right:0; z-index:500;
  padding:24px 60px;
  display:flex; justify-content:space-between; align-items:center;
  transition:background .4s, padding .4s, box-shadow .4s;
}
.cb-nav.cb-nav--scrolled {
  background:rgba(250,247,242,.96);
  backdrop-filter:blur(12px);
  padding:16px 60px;
  box-shadow:0 2px 30px rgba(0,0,0,.08);
}

.cb-nav__logo {
  font-family:var(--font-serif);
  font-size:22px; font-weight:600; letter-spacing:2px;
  color:var(--cb-white); transition:color .4s;
}
.cb-nav--scrolled .cb-nav__logo { color:var(--cb-forest); }
.cb-nav__logo span { color:var(--cb-gold2); }

.cb-nav__links {
  display:flex; align-items:center; gap:36px;
}
.cb-nav__links a {
  font-size:13px; font-weight:500; letter-spacing:1.5px;
  text-transform:uppercase; color:rgba(255,255,255,.85);
  transition:color .2s; position:relative;
}
.cb-nav__links a::after {
  content:''; position:absolute; bottom:-4px; left:0; right:0;
  height:1px; background:var(--cb-gold2);
  transform:scaleX(0); transform-origin:left; transition:transform .3s;
}
.cb-nav__links a:hover { color:var(--cb-gold2); }
.cb-nav__links a:hover::after { transform:scaleX(1); }
.cb-nav--scrolled .cb-nav__links a { color:var(--cb-muted); }
.cb-nav--scrolled .cb-nav__links a:hover { color:var(--cb-forest); }

.cb-nav__cta {
    align-items: center;
    justify-content: center;
    gap: 7px;
    background: var(--cb-gold);
    color: #fff;
    border-radius: var(--radius-pill);
    padding: 10px 18px;
    font-size: 13.5px;
    font-weight: 500;
    transition: background .18s;
    white-space: nowrap;
    letter-spacing: 1px;
}
.cb-nav__cta:hover { background:var(--cb-gold2); transform:translateY(-1px); }

/* ── Hamburger — only on tablet/mobile ── */
.cb-nav__hamburger {
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer; padding:4px; z-index:600;
}
.cb-nav__hamburger span {
  display:block; width:26px; height:2px;
  background:var(--cb-white); border-radius:2px; transition:all .3s;
}
.cb-nav--scrolled .cb-nav__hamburger span { background:var(--cb-forest); }
.cb-nav__hamburger.cb-nav__hamburger--open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); background:var(--cb-forest)!important; }
.cb-nav__hamburger.cb-nav__hamburger--open span:nth-child(2) { opacity:0; }
.cb-nav__hamburger.cb-nav__hamburger--open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); background:var(--cb-forest)!important; }

@media (min-width:1025px) {
  .cb-nav__links    { display:flex !important; list-style: none;}
  .cb-nav__cta      { display:flex !important; }
  .cb-nav__hamburger{ display:none !important; }
}

/* ── Mobile drawer ── */
.cb-nav__drawer {
  position:fixed; top:0; right:-100%; width:min(320px,85vw);
  height:100vh; background:var(--cb-cream);
  z-index:550; padding:35px 35px 35px;
  box-shadow:-4px 0 40px rgba(0,0,0,.12);
  transition:right .35s cubic-bezier(.4,0,.2,1);
  display:flex; flex-direction:column;
  overflow-y: auto; list-style: none;
}
.cb-nav__drawer.cb-nav__drawer--open { right:0; }
.cb-nav__drawer a {
  display:block; padding:16px 0;
  font-family:var(--cb-font-display); font-size:20px; font-weight:400;
  color:var(--cb-text); border-bottom:1px solid var(--cb-sand2);
  transition:color .2s, padding-left .2s;
}
.cb-nav__drawer a:hover { color:var(--cb-gold); padding-left:8px; }
.cb-nav__drawer .cb-nav__drawer-cta {
  margin-top:24px; background:var(--cb-gold); color:var(--cb-forest);
  padding:14px 28px; border-radius:3px; text-align:center;
  font-size:13px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; border-bottom:none;
}
.cb-nav__overlay {
  position:fixed; inset:0; background:rgba(0,0,0,.5);
  z-index:540; opacity:0; pointer-events:none; transition:opacity .3s;
}
.cb-nav__overlay.cb-nav__overlay--open { opacity:1; pointer-events:all; }
.menu-close {
	width: 35px;
	height: 35px;
	background-color: red;
	border: 0;
	color: #fff;
	font-size: 23px;
	line-height: 15px;
	border-radius: 10px;
	position: absolute;
	top: 5px;
	right: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* ═══════════════════════════════════════════
   HERO
═══════════════════════════════════════════ */
.cb-hero {
  min-height:100vh; position:relative;
  display:flex; align-items:center; overflow:hidden;
}
.cb-hero__bg {
  position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(10,16,10,.85) 0%, rgba(10,16,10,.5) 55%, rgba(10,16,10,.2) 100%),
    url('https://images.unsplash.com/photo-1506905925346-21bda4d32df4?w=1800&q=80') center/cover no-repeat;
  transform:scale(1.05);
  animation:cb-heroZoom 20s ease-in-out infinite alternate;
}
@keyframes cb-heroZoom {
  from { transform:scale(1.05) translate(0,0); }
  to   { transform:scale(1.12) translate(-1%,-1%); }
}

.cb-hero__particles { position:absolute; inset:0; pointer-events:none; }
.cb-hero__particle {
  position:absolute; border-radius:50%;
  background:rgba(201,162,39,.3);
  animation:cb-floatParticle linear infinite;
}
@keyframes cb-floatParticle {
  0%   { transform:translateY(100vh) scale(0); opacity:0; }
  10%  { opacity:1; }
  90%  { opacity:.6; }
  100% { transform:translateY(-20vh) scale(1); opacity:0; }
}

.cb-hero__content {
  position:relative; z-index:1;
  max-width:1200px; margin:0 auto;
  padding:100px 60px 0 0;
}
.cb-hero__tag {
  display:inline-flex; align-items:center; gap:12px;
  color:var(--cb-gold2); font-size:12px; font-weight:500;
  letter-spacing:4px; text-transform:uppercase; margin-bottom:28px;
  animation:cb-fadeSlideUp .8s .2s ease both;
}
.cb-hero__tag::before { content:''; width:40px; height:1px; background:var(--cb-gold2); }

.cb-hero__title {
  font-family:var(--cb-font-display);
  font-size: clamp(52px,8vw,78px);
  font-weight:600; color:#fff; line-height:1; margin-bottom:25px;
  animation:cb-fadeSlideUp .9s .35s ease both;
}
.cb-hero__title em { font-style:italic; color:var(--cb-gold2); font-weight:600; }

.cb-hero__subtitle {
  font-family:var(--cb-font-display); font-size: clamp(18px,3vw,30px);
  font-weight:300; color:rgba(255,255,255,.9);letter-spacing:3px; text-transform:uppercase; margin-bottom: 20px;
  animation:cb-fadeSlideUp .9s .5s ease both;
}
.cb-hero__desc {
  font-size:16px; color:rgba(255,255,255,9);
  line-height:1.85; max-width:520px; margin-bottom:52px;
  animation:cb-fadeSlideUp .9s .65s ease both;
}
.cb-hero__btns {
  display:flex; gap:18px; flex-wrap:wrap;
  animation:cb-fadeSlideUp .9s .8s ease both;
}
.cb-hero__btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    border-radius: var(--radius-pill);
    padding: 13px 28px;
    font-size: 14.5px;
    font-weight: 600;
    transition: background .18s, transform .14s;
    background: var(--cb-gold);
    letter-spacing: 1px;
    text-transform: unset;

}
.cb-hero__btn-primary:hover { background:var(--cb-gold2); border-color:var(--cb-gold2); transform:translateY(-2px); }
.cb-hero__btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .15);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .4);
    border-radius: var(--radius-pill);
    backdrop-filter: blur(8px);
    padding: 13px 28px;
    font-size: 14.5px;
    font-weight: 400;
    transition: background .18s;
}
.cb-hero__btn-outline:hover { border-color:#fff; background:rgba(255,255,255,.08); }

.cb-hero__scroll {
  position:absolute; bottom:40px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:10px;
  color:rgba(255,255,255,.6); font-size:11px; letter-spacing:3px; text-transform:uppercase;
  animation:cb-fadeSlideUp .9s 1.2s ease both;
}
.cb-hero__scroll-line {
  width:1px; height:50px;
  background:linear-gradient(to bottom, var(--cb-gold2), transparent);
  animation:cb-scrollPulse 2s ease-in-out infinite;
}
@keyframes cb-scrollPulse {
  0%,100% { transform:scaleY(1); opacity:.6; }
  50%      { transform:scaleY(.6); opacity:.3; }
}
.cb-hero__stats {
  position:absolute; bottom:0; right:0;
  display:flex; background:rgba(26,46,26,.92); backdrop-filter:blur(12px);
  animation:cb-fadeSlideUp .9s 1s ease both;
  max-width: 50%;
  width: 100%;
}
.cb-hero__stat {
  padding:28px 15px; border-left:1px solid rgba(255,255,255,.1); text-align:center;width: 25%;
}
.cb-hero__stat:first-child { border-left:none; }
.cb-hero__stat-num {
  font-family:var(--cb-font-display);
  font-size:34px; font-weight:700; color:var(--cb-gold2); line-height:1;
}
.cb-hero__stat-lbl { font-size:11px; color:rgba(255,255,255,1); letter-spacing:1.8px; margin-top:10px; }

@keyframes cb-fadeSlideUp {
  from { opacity:0; transform:translateY(30px); }
  to   { opacity:1; transform:translateY(0); }
}

/* ═══════════════════════════════════════════
   SHARED SECTION / CONTAINER
═══════════════════════════════════════════ */
.cb-section { padding:100px 0; overflow: hidden;}
.cb-section--dark   { background:var(--cb-forest); color:#fff; }
.cb-section--sand   { background:var(--cb-sand); }
.cb-section--cream  { background:var(--cb-cream); }

.cb-container { max-width:1200px; margin:0 auto; padding:0 15px; }

.cb-sec-tag {
  display:inline-flex; align-items:center; gap:14px;
  font-size:11px; letter-spacing:4px; text-transform:uppercase;
  color:var(--cb-gold); font-weight:500; margin-bottom:18px;
}
.cb-sec-tag::before { content:''; width:30px; height:1px; background:var(--cb-gold); }
.cb-sec-tag--light { color:var(--cb-gold2); }
.cb-sec-tag--light::before { background:var(--cb-gold2); }
.cb-sec-tag--center { justify-content:center; }

.cb-sec-title {
  font-family:var(--cb-font-display);
  font-size:clamp(34px,4.5vw,68px);
  font-weight:600; line-height:1.12; color:var(--cb-text); margin-bottom:20px;
}
.cb-sec-title--light { color:#fff; }
.cb-sec-title--center { text-align:center; }
.cb-sec-title em { font-style:italic; color:var(--cb-gold); }
.cb-sec-title--light em { color:var(--cb-gold2); }

.cb-sec-line { width:60px; height:1px; background:var(--cb-gold); margin:20px 0 30px; }
.cb-sec-line--center { margin:20px auto 30px; }
.cb-sec-line--light  { background:var(--cb-gold2); }

.cb-sec-desc { font-size:16px; color:var(--cb-muted); line-height:1.85; max-width:600px; }
.cb-sec-desc--light  { color:rgba(255,255,255,.65); }
.cb-sec-desc--center { margin:0 auto; text-align:center; }

/* ═══════════════════════════════════════════
   MARQUEE
═══════════════════════════════════════════ */
.cb-marquee { background:var(--cb-gold); padding:14px 0; overflow:hidden; }
.cb-marquee__inner {
  display:flex; gap:60px; width:max-content;
  animation:cb-marquee 30s linear infinite;
}
@keyframes cb-marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.cb-marquee__item {
  display:flex; align-items:center; gap:16px;
  font-family:var(--cb-font-display); font-size:18px;
  font-weight:600; letter-spacing:2px; color:var(--cb-forest); white-space:nowrap;
}
.cb-marquee__dot { width:6px; height:6px; border-radius:50%; background:var(--cb-forest); opacity:.5; }

/* ═══════════════════════════════════════════
   DESTINATIONS
═══════════════════════════════════════════ */
.cb-dest__header {
  display:flex; justify-content:space-between; align-items:flex-end;
  margin-bottom:56px; flex-wrap:wrap; gap:16px;
}
.cb-dest__view-all {
  font-size:13px; letter-spacing:2px; text-transform:uppercase;
  color:var(--cb-gold); font-weight:600;
  border-bottom:1px solid var(--cb-gold); padding-bottom:4px;
}
.cb-dest__grid {
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr;
  grid-template-rows:300px 280px;
  gap:16px;
}
.cb-dest__card {
  position:relative; overflow:hidden; border-radius:4px; cursor:pointer;
}
.cb-dest__card:first-child { grid-row:1/3; }
.cb-dest__card-img {
  width:100%; height:100%; object-fit:cover; transition:transform .7s ease;
}
.cb-dest__card:hover .cb-dest__card-img { transform:scale(1.07); }
.cb-dest__overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top, rgba(10,16,10,.85) 0%, transparent 55%);
  transition:background .4s;
}
.cb-dest__card:hover .cb-dest__overlay {
  background:linear-gradient(to top, rgba(10,16,10,.92) 0%, rgba(10,16,10,.2) 100%);
}
.cb-dest__info { position:absolute; bottom:0; left:0; right:0; padding:28px 24px; }
.cb-dest__region {
  font-size:10px; letter-spacing:3px; text-transform:uppercase;
  color:var(--cb-gold2); font-weight:500; margin-bottom:6px;
}
.cb-dest__name {
  font-family:var(--cb-font-display); font-size:28px;
  font-weight:600; color:#fff; line-height:1.1; margin-bottom:10px;
}
.cb-dest__card:first-child .cb-dest__name { font-size:42px; }
.cb-dest__meta { display:flex; gap:16px; font-size:12px; color:rgba(255,255,255,.7); }
.cb-dest__btn {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--cb-gold); color:var(--cb-forest);
  padding:8px 20px; border-radius:2px;
  font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  margin-top:16px; opacity:0; transform:translateY(10px); transition:all .3s;
}
.cb-dest__card:hover .cb-dest__btn { opacity:1; transform:translateY(0); }

/* ═══════════════════════════════════════════
   BOOKING WIDGET
═══════════════════════════════════════════ */
.cb-booking {
  background:var(--cb-forest);padding: 80px 15px 100px;
  position:relative; overflow:hidden;
}
.cb-booking::before {
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 60% 80% at 10% 50%, rgba(201,162,39,.08) 0%, transparent 60%),
    radial-gradient(ellipse 40% 60% at 90% 50%, rgba(201,162,39,.05) 0%, transparent 60%);
  pointer-events:none;
}
.cb-booking__inner { position:relative; z-index:1; }
.cb-booking__title {
  font-family:var(--cb-font-display); font-size:clamp(32px,4vw,58px);
  font-weight:600; color:#fff; margin-bottom:10px; text-align:center;
}
.cb-booking__sub {
  font-size:14px; color:rgba(255,255,255,.55); text-align:center;
  letter-spacing:1px; margin-bottom:44px;
}
.cb-booking__form {
  display:grid; grid-template-columns:repeat(4,1fr) auto;
  background:#fff; border-radius:4px; overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.cb-booking__field {
  padding:20px 24px; border-right:1px solid #e8e2d8; display:flex; flex-direction:column; gap:6px;
}
.carbooking_form .wpforms-field-label {
	font-size: 12px !important;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--cb-muted) !important;
	font-weight: 600 !important;
	margin-bottom: 0px !important;
}
.carbooking_form .wpforms-field {
  border-right:1px solid #ddd;
}
.carbooking_form .wpforms-field select,
.carbooking_form .wpforms-field input {
  font-family:var(--cb-font-body); font-size:15px; font-weight:500;
  color:var(--cb-text); border:none; outline:none; background:transparent; cursor:pointer;
  appearance:none; -webkit-appearance:none;padding:0px; outline:none;
}
.carbooking_form select::placeholder,
.carbooking_form input::placeholder {
  color:var(--cb-text) !important;
  opacity: 1 !important;
}
.carbooking_form .wpforms-submit {
    background-color: var(--cb-gold) !important;
    border: none !important;
    padding: 10px 20px !important;
    cursor: pointer !important;
    font-family: var(--cb-font-body) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 2px;
    white-space: nowrap;
    transition: background .2s !important;
    height: 48px !important;
    outline: unset;
    border-radius: 99px !important;
    color: #fff !important;
}
.wpforms-error {
	margin-top: 0px !important;
}
div.wpforms-container-full input[type="submit"]:focus::after, div.wpforms-container-full button[type="submit"]:focus::after, div.wpforms-container-full .wpforms-page-button:focus::after {
	border: 0px;
}
div.wpforms-container-full input[type="date"]:focus, div.wpforms-container-full input[type="datetime"]:focus, div.wpforms-container-full input[type="datetime-local"]:focus, div.wpforms-container-full input[type="email"]:focus, div.wpforms-container-full input[type="month"]:focus, div.wpforms-container-full input[type="number"]:focus, div.wpforms-container-full input[type="password"]:focus, div.wpforms-container-full input[type="range"]:focus, div.wpforms-container-full input[type="search"]:focus, div.wpforms-container-full input[type="tel"]:focus, div.wpforms-container-full input[type="text"]:focus, div.wpforms-container-full input[type="time"]:focus, div.wpforms-container-full input[type="url"]:focus, div.wpforms-container-full input[type="week"]:focus, div.wpforms-container-full select:focus, div.wpforms-container-full textarea:focus {
	border: 1px solid var(--wpforms-button-background-color);
	box-shadow: unset;
	outline: none;
}
.carbooking_form .wpforms-submit:hover { background:var(--cb-gold2); }
.carbooking_form .wpforms-submit-container {
	margin: 0px !important;
  padding-right: 10px;
}
.carbooking_form input{
  padding:0px !important;
}
div.wpforms-container-full input[type="text"]:focus, div.wpforms-container-full select:focus, div.wpforms-container-full button[type="submit"]:focus::after{
  border:0px !important;
  box-shadow: unset !important;
}
.carbooking_form {
	background-color: #fff;
	border-radius: 5px;
	box-shadow: 1px -8px 18px #222;
}
.wpforms-field-container {
	display: flex;
	gap: 15px;
  flex-wrap: wrap;
}
.carbooking_form .wpforms-form {
	display: flex;
	gap: 12px;
	align-items: center;
	justify-content: space-evenly;
  padding: 10px 10px;
}
.carbooking_form .wpforms-container {
	margin: 0;
}
.carbooking_form .wpforms-field {
width: 31%;
  padding: 10px 20px 5px !important;
}
.carbooking_form .wpforms-field select, .carbooking_form .wpforms-field input {
	border: 0 !important;
}



/* ═══════════════════════════════════════════
   TOURS
═══════════════════════════════════════════ */
.cb-tours__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:56px; }
.cb-tour__card {
  background:#fff; border-radius:6px; overflow:hidden;
  box-shadow:0 4px 20px rgba(0,0,0,.07); transition:transform .35s, box-shadow .35s;
}
.cb-tour__card:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(0,0,0,.13); }
.cb-tour__img-wrap { position:relative; aspect-ratio:4/3; overflow:hidden; }
.cb-tour__img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.cb-tour__card:hover .cb-tour__img { transform:scale(1.06); }
.cb-tour__badge {
  position:absolute; top:16px; left:16px;
  background:var(--cb-gold); color:var(--cb-forest);
  font-size:10px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  padding:5px 12px; border-radius:2px;
}
.cb-tour__badge--hot { background:#e84242; color:#fff; }
.cb-tour__badge--new { background:var(--cb-forest); color:#fff; }
.cb-tour__wishlist {
  position:absolute; top:16px; right:16px;
  background:rgba(255,255,255,.9); border:none; border-radius:50%;
  width:36px; height:36px; font-size:16px; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s; backdrop-filter:blur(4px);
}
.cb-tour__wishlist:hover { background:#fff; transform:scale(1.1); }
.cb-tour__body { padding:22px 22px 20px; text-align:center;}
.cb-tour__location { font-size:11px; color:var(--cb-muted); letter-spacing:1px; margin-bottom:6px; }
.cb-tour__name {
  font-family:var(--font-serif); font-size:20px; font-weight:600;
  color:var(--cb-text); line-height:1.25; margin-bottom:14px;
}
.cb-tour__info { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:18px; }
.cb-tour__info-item { font-size:12px; color:var(--cb-muted); }
.cb-tour__footer {
  display:flex; justify-content: center; align-items:flex-end;
  padding-top:16px; border-top:1px solid var(--cb-sand2);
}
.cb-tour__price-from { font-size:10px; color:var(--cb-muted); letter-spacing:1px; }
.cb-tour__price-num {
  font-family:var(--cb-font-display); font-size:26px; font-weight:700;
  color:var(--cb-forest); line-height:1.1;
}
.cb-tour__price-per { font-size:11px; color:var(--cb-muted); }
.cb-tour__btn {
  background:var(--cb-forest); color:#fff;
  padding:10px 22px; border-radius:3px;
  font-size:11px; font-weight:700; letter-spacing:1.5px; text-transform:uppercase;
  transition:all .2s;
}
.cb-tour__btn:hover { background:var(--cb-gold); color:var(--cb-forest); }

/* ═══════════════════════════════════════════
   EXPERIENCES
═══════════════════════════════════════════ */
.cb-exp__grid  { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.cb-exp__cards { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.cb-exp__card {
  border-radius:4px; overflow:hidden; position:relative; aspect-ratio:1; cursor:pointer;
}
.cb-exp__card:nth-child(2) { margin-top:32px; }
.cb-exp__card:nth-child(4) { margin-top:-32px; }
.cb-exp__card-img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.cb-exp__card:hover .cb-exp__card-img { transform:scale(1.08); }
.cb-exp__card-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top, rgba(0,0,0,.75) 0%, transparent 50%);
}
.cb-exp__card-label {
  position:absolute; bottom:16px; left:16px; right:16px;
  font-family:var(--cb-font-display); font-size:18px; font-weight:600; color:#fff;
}
.cb-exp__list { margin-top:36px; display:flex; flex-direction:column; gap:20px; }
.cb-exp__item {
  display:flex; gap:20px; align-items:flex-start; padding:20px; border-radius:4px;
  border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.04);
  transition:background .2s, border-color .2s;
}
.cb-exp__item:hover { background:rgba(255,255,255,.08); border-color:rgba(201,162,39,.3); }
.cb-exp__num {
  font-family:var(--cb-font-display); font-size:36px; font-weight:700;
  color:var(--cb-gold2); line-height:1; flex-shrink:0; width:50px;
}
.cb-exp__item h3 { font-size:16px; font-weight:600; color:#fff; margin-bottom:6px; }
.cb-exp__item p  { font-size:13.5px; color:rgba(255,255,255,.6); line-height:1.7; }

/* ═══════════════════════════════════════════
   ABOUT
═══════════════════════════════════════════ */
.cb-about__grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.cb-about__img-wrap { position:relative; }
.cb-about__img-main { width:100%; aspect-ratio:4/5; object-fit:cover; border-radius:2px; }
.cb-about__img-accent {
  position:absolute; bottom:-40px; right:-40px; width:55%; aspect-ratio:1;
  object-fit:cover; border-radius:2px;
  border:6px solid var(--cb-cream); box-shadow:0 20px 60px rgba(0,0,0,.15);
}
.cb-about__badge {
  position:absolute; top:30px; left:-30px;
  background:var(--cb-gold); width:100px; height:100px; border-radius:50%;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  font-family:var(--cb-font-display); font-weight:700; color:var(--cb-forest);
  box-shadow:0 10px 30px rgba(201,162,39,.4);
}
.cb-about__badge-num { font-size:32px; line-height:1; }
.cb-about__badge-txt { font-size:10px; letter-spacing:1px; text-align:center; }
.cb-about__text { padding-left:20px; }
.cb-about__features { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:40px; }
.cb-about__feat { display:flex; gap:14px; align-items:flex-start; }
.cb-about__feat-icon {
  width:44px; height:44px; border-radius:8px; flex-shrink:0;
  background:linear-gradient(135deg, var(--cb-sand), var(--cb-sand2));
  display:flex; align-items:center; justify-content:center;
  font-size:20px; border:1px solid rgba(139,105,20,.15);
}
.cb-about__feat h4 { font-size:14px; font-weight:600; margin-bottom:4px; }
.cb-about__feat p  { font-size:12.5px; color:var(--cb-muted); line-height:1.6; }

/* ═══════════════════════════════════════════
   TESTIMONIALS
═══════════════════════════════════════════ */
.cb-testi__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:52px; }
.cb-testi__card {
  background:#fff; border-radius:4px; padding:36px 30px;
  box-shadow:0 4px 30px rgba(0,0,0,.05);
  border:1px solid var(--cb-sand2);
  transition:transform .3s, box-shadow .3s;
}
.cb-testi__card:hover { transform:translateY(-6px); box-shadow:0 20px 60px rgba(0,0,0,.1); }
.cb-testi__quote {
  font-family:var(--cb-font-display); font-size:80px;
  color:var(--cb-sand2); line-height:0.6; margin-bottom:20px; font-style:italic;
}
.cb-testi__text p{
  font-family:var(--cb-font-display); font-size:18px;
  font-weight:600; color:var(--cb-text); line-height:1.65;
  font-style:italic; margin-bottom:28px;
}
.cb-testi__person { display:flex; align-items:center; gap:14px; }
.cb-testi__avatar {
  width:48px; height:48px; border-radius:50%;
  object-fit:cover; border:2px solid var(--cb-gold);
}
.cb-testi__name  { font-size:14px; font-weight:600; color:var(--cb-text); }
.cb-testi__trip  { font-size:12px; color:var(--cb-muted); margin-top:2px; }
.cb-testi__stars { color:var(--cb-gold); font-size:13px; margin-top:2px; }

/* ═══════════════════════════════════════════
   NEWSLETTER
═══════════════════════════════════════════ */
.cb-newsletter {
  background:var(--cb-gold); padding:80px 0; text-align:center;
  position:relative; overflow:hidden;
}
.cb-newsletter::before {
  content:''; position:absolute; top:-100px; left:-100px;
  width:400px; height:400px; border-radius:50%;
  background:rgba(255,255,255,.1); pointer-events:none;
}
.cb-newsletter::after {
  content:''; position:absolute; bottom:-80px; right:-80px;
  width:300px; height:300px; border-radius:50%;
  background:rgba(255,255,255,.1); pointer-events:none;
}
.cb-newsletter__inner { position:relative; z-index:1; }
.cb-newsletter__title {
  font-family:var(--cb-font-display); font-size:clamp(28px,4vw,56px);
  font-weight:400; color:var(--cb-forest); margin-bottom:14px;
}
.cb-newsletter__title em { font-style:italic; }
.cb-newsletter__desc { font-size:15px; color:rgba(26,46,26,.7); margin-bottom:36px; }
.cb-newsletter__form {
  display:flex; max-width:520px; margin:0 auto;
  border-radius:3px; overflow:hidden; box-shadow:0 8px 30px rgba(0,0,0,.15);
}
.cb-newsletter__input {
  flex:1; padding:16px 24px; border:none; outline:none;
  font-family:var(--cb-font-body); font-size:14px; background:#fff; min-width:0;
}
.cb-newsletter__btn {
  background:var(--cb-forest); color:#fff; border:none;
  padding:16px 32px; cursor:pointer;
  font-family:var(--cb-font-body); font-size:12px;
  font-weight:700; letter-spacing:2px; text-transform:uppercase;
  white-space:nowrap; transition:background .2s;
}
.cb-newsletter__btn:hover { background:var(--cb-forest2); }

/* ═══════════════════════════════════════════
   FOOTER
═══════════════════════════════════════════ */
.cb-footer {
  background:var(--cb-slate); color:rgba(255,255,255,.75);
  padding:80px 0 40px;
}
.cb-footer__grid {
  display:grid; grid-template-columns:1.8fr 1fr 1fr 1fr;
  gap:60px; margin-bottom:60px;
}
.cb-footer__logo {
  font-family:var(--font-serif); font-size:22px;
  font-weight:600; color:#fff; letter-spacing:2px; margin-bottom:16px;
}
.cb-footer__logo span { color:var(--cb-gold2); }
.cb-footer__brand-desc {
  font-size:14px; line-height:1.8; color:rgba(255,255,255,.85); margin-bottom:24px;
}
.cb-footer__socials { display:flex; gap:12px; }
.cb-footer__social {
  width:38px; height:38px; border-radius:50%;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12);
  display:flex; align-items:center; justify-content:center;
  font-size:15px; transition:all .2s;
}
.cb-footer__social:hover { background:var(--cb-gold); border-color:var(--cb-gold); }
.cb-footer__col h3 {
  font-size:15px; letter-spacing:2px; text-transform:uppercase;
  color:var(--cb-gold2); font-weight:400; margin-bottom:20px; font-family: var(--font-serif);
}
.cb-footer__col ul {
	margin-left: 15px;
}
.cb_foo_content ul {
	list-style: none;
	margin-left: 0;
}
.cb_foo_content ul li {
	padding-left: 20px;
  position: relative;
  font-size: 13.5px;
    color: rgba(255, 255, 255, .85);
    transition: color .15s;
}
.cb_foo_content ul i {
	position: absolute;
	left: 0;
    top: 4px;
    font-size: 13px;
}
.cb-footer__col ul { display:flex; flex-direction:column; gap:11px; }
.cb-footer__col ul li a {
  font-size:13.5px; color:rgba(255,255,255,.85); transition:color .15s;
}
.cb-footer__col ul li a:hover { color:var(--cb-gold2); }
.cb-footer__bottom {
  padding-top:30px; border-top:1px solid rgba(255,255,255,.08);
  display:flex; justify-content:space-between; align-items:center;
  flex-wrap:wrap; gap:12px;
}
.cb-footer__copy { font-size:12.5px; color:rgba(255,255,255,.35); }
.cb-footer__bottom-links {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	font-size: 12.5px;
	color: rgba(255,255,255,.6);
	transition: color .15s;
}
.cb-footer__bottom-links a { font-size:12.5px; color:rgba(255,255,255,.35); transition:color .15s; }
.cb-footer__bottom-links a:hover { color:var(--cb-gold2); }

/* ═══════════════════════════════════════════
   SCROLL REVEAL
═══════════════════════════════════════════ */
.cb-reveal {
  opacity:0; transform:translateY(40px);
  transition:opacity .8s ease, transform .8s ease;
}
.cb-reveal.cb-reveal--visible { opacity:1; transform:translateY(0); }
.cb-reveal-left {
  opacity:0; transform:translateX(-40px);
  transition:opacity .9s ease, transform .9s ease;
}
.cb-reveal-left.cb-reveal--visible { opacity:1; transform:translateX(0); }
.cb-reveal-right {
  opacity:0; transform:translateX(40px);
  transition:opacity .9s ease, transform .9s ease;
}
.cb-reveal-right.cb-reveal--visible { opacity:1; transform:translateX(0); }

.cb-d1{transition-delay:.1s;} .cb-d2{transition-delay:.2s;} .cb-d3{transition-delay:.3s;}
.cb-d4{transition-delay:.4s;} .cb-d5{transition-delay:.5s;}

/* WordPress core compatibility */
.wp-block-image img { max-width:100%; height:auto; }
.aligncenter { display:block; margin-left:auto; margin-right:auto; }
.alignleft { float:left; margin-right:1em; }
.alignright { float:right; margin-left:1em; }
.screen-reader-text {
  clip: rect(1px,1px,1px,1px); position:absolute; white-space:nowrap;
  height:1px; width:1px; overflow:hidden;
}
/* Our Fleets section  */
.carbooking-wrapper{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:20px;
    margin-top: 40px;
}
.carbooking-card{
    background:#fff;
    border-radius:5px;
    overflow:hidden;
    box-shadow:0 5px 20px rgba(0,0,0,0.1);
    transition: transform .35s, box-shadow .35s;
}
.carbooking-card:hover{
    transform:translateY(-6px);
}
.carbooking-image img{
    width:100%;
    height:300px;
    object-fit:cover;
}
.carbooking-content{
    padding:20px;
    text-align: center;
    border-top: 1px solid #ddd;
}
.carbooking-content h3{
  font-family: var(--font-serif);
  font-size: 20px;
  font-weight: 600;
  color: var(--cb-text);
  line-height: 1.25;
  margin-bottom: 15px;
}
.carbooking-content .cb-booking-btn {
	margin-bottom: 15px;
}
.carbooking-content p{
  line-height: 1.6;
  font-size: 14px;
  color: var(--cb-muted);
  margin-bottom: 20px;
}
.carbooking-btn{
    display:inline-block;
    margin-top:15px;
    padding:12px 24px;
    background:#000;
    color:#fff;
    text-decoration:none;
    border-radius:6px;
    transition:0.3s;
}
.carbooking-btn:hover{
    background:#333;
}
/* Thank you page style */
.cb-thankyou, .cb-error-page{
    padding:80px 20px 80px;
    background:#f8f8f8 !important;
    overflow:hidden;
}

.cb-thankyou__inner, .cb-error-page__inner {
    max-width:700px;
    margin:auto;
    background:#ffffff !important;
    padding:60px 40px;
    border-radius:24px;
    text-align:center;
    box-shadow:0 10px 40px rgba(0,0,0,0.08);
}

.cb-thankyou__title{
    font-size:35px;
    font-weight:700;
    margin-bottom:15px;
    color: var(--cb-gold2);
}
.cb-thankyou__icon img {
	width: 75px;
	margin: 0 auto;
	padding-bottom: 20px;
}
.cb-thankyou__sub{
    font-size:18px;
    color:#666666 !important;
    line-height:1.7;
    margin-bottom:35px;
}
.cb-thankyou__btn.reveal.delay-3 {
	margin-top: 20px;
}
.cb-btn{
    display:inline-block;
    padding:14px 32px;
    background:#000000 !important;
    color:#ffffff !important;
    text-decoration:none;
    border-radius:8px;
    transition:0.3s ease;
}
.cb-btn:hover{
    background:#222222 !important;
    color:#ffffff !important;
}
.cb-error-page__code{
    font-size:120px;
    line-height:1;
    font-weight:700;
    color:red;
    margin-bottom:20px;
}
.himachal-tour-package-faq {
	background: linear-gradient(rgba(248,246,241,0.94), rgba(248,246,241,0.94)), url('https://images.unsplash.com/photo-1477959858617-67f85cf4f1df?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat fixed;
}
/* ═══════════════════════════════════════════
Shimla tour package page style
═══════════════════════════════════════════ */
.cardestination {
	margin-top: 60px;
}
.himachal-tour-package-hero h1 {
	color: #fff;
	font-size: clamp(2.2rem,5vw,3.5rem);
	line-height: 1.15;
	font-weight: 600;
	max-width: 680px;
	margin: 0 auto 1.5rem;
}
.himachal-tour-package-hero h1 em {
	color: var(--cb-gold);
	font-style: italic;
}
#himachal-tour-package-hero-eyebrow {
	display: inline-block;
	color: var(--cb-gold);
	font-size: .75rem;
	letter-spacing: .2em;
	text-transform: uppercase;
	font-weight: 500;
	margin-bottom: 1.5rem;
}
#himachal-tour-package-hero-desc {
	color: rgba(255,255,255,.9);
	font-size: 1rem;
	font-weight: 300;
	line-height: 1.8;
	max-width: 620px;
	margin: 0 auto 0rem;
	text-align: center;
}
.himachal-tour-package-hero-pills {
	display: flex;
	gap: .75rem;
	justify-content: center;
	flex-wrap: wrap;
}
.himachal-tour-package-pill {
	background: rgba(255,255,255,.08);
	border: 1px solid rgba(255,255,255,.18);
	color: rgba(255,255,255,.8);
	font-size: .8rem;
	padding: .4rem 1rem;
	border-radius: 20px;
}
.elementor-element.elementor-element-cc67fbd.e-con-full.e-flex.e-con.e-child {
	gap: 10px;
}
.himachal-tour-package-intro {
	background: linear-gradient(to right, rgba(248,246,241,0.97) 55%, rgba(220,210,190,0.75) 100%);
}
.himachal-tour-package-sights-list {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 1px;
	border-radius: 4px;
	overflow: hidden;
}
.himachal-tour-package-sight {
	background: rgba(255,254,251,0.92);
	padding: 1.3rem 1.5rem;
	display: flex;
	align-items: flex-start;
	gap: .9rem;
	transition: background .2s;
  	border: 1px solid var(--light);
}
.himachal-tour-package-sight:hover {
	background: rgba(240,235,224,0.98);
}
.himachal-tour-package-sight-num {
	font-size: 1.4rem;
	color: var(--cb-gold);
	font-weight: 600;
	line-height: 1;
	flex-shrink: 0;
	padding-top: .1rem;
  font-family: "Cormorant Garamond", serif;
}
.himachal-tour-package-sight-name {
	font-size: .95rem;
	font-weight: 500;
	color: var(--green);
	margin-bottom: .2rem;
}
.himachal-tour-package-sight-desc {
	font-size: .82rem;
	color: var(--muted);
	font-weight: 300;
	line-height: 1.55;
}
.himachal-tour-package-sec-title {
	font-family: "Cormorant Garamond", serif;
	font-size: clamp(1.8rem,3.5vw,2.4rem);
	color: var(--green);
	line-height: 1.2;
}
.himachal-tour-package-sec-title em {
	font-style: italic;
	color: var(--cb-gold);
}
.himachal-tour-package-sights {
	background: linear-gradient(rgba(245,240,230,0.93), rgba(245,240,230,0.93)), url('https://images.unsplash.com/photo-1558618666-fcd25c85cd64?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat fixed;
}
.himachal-tour-package-includes {
	background: linear-gradient(to left, rgba(255,254,251,0.96) 50%, rgba(230,222,205,0.80) 100%), url('https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat fixed;
}
.himachal-tour-package-includes-list {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: .75rem;
}
.himachal-tour-package-inc {
	display: flex;
	align-items: flex-start;
	gap: .9rem;
	background-color: rgba(248,246,241,1);
	border-radius: 3px;
	padding: 1rem 1.2rem;
	border-left: 3px solid var(--green2);
}
.himachal-tour-package-inc-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--cb-gold);
	flex-shrink: 0;
	margin-top: .35rem;
}
.himachal-tour-package-inc-text {
	font-size: .9rem;
	color: var(--text);
	font-weight: 400;
	line-height: 1.4;
}
.himachal-tour-package-season {
	background: linear-gradient(rgba(10,30,18,0.78), rgba(10,30,18,0.78)), url('https://images.unsplash.com/photo-1536431311719-398b6704d4cc?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat fixed;
}
.himachal-tour-package-season-card{
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 4px;
	padding: 30px 30px;
	background: rgba(255,255,255,0.06);
	backdrop-filter: blur(4px);
  gap: 10px;
}
.himachal-tour-package-season .himachal-tour-package-sec-title, .himachal-tour-package-season p {
	color: #ffff;
}
.himachal-tour-package-season-card p {
	color: rgba(255,255,255,.6);
	font-size: .86rem;
	line-height: 1.7;
	font-weight: 300;
}
.himachal-tour-package-season-card h3 {
	color: #fff;
	font-size: 1.25rem;
	margin-bottom: .6rem;
}
.himachal-tour-package-season-card p {
	color: rgba(255,255,255,.6);
	font-size: .86rem;
	line-height: 1.7;
	font-weight: 300;
}
.himachal-tour-package-season .himachal-tour-package-season-card {
	padding: 20px 30px;
	line-height: 10px;
}
#about-subheading, #sight_subheading, #go_subheading, #included_subheading {
	margin-bottom: -15px;
  width: 100%;
}
.himachal_rental_cab_section .himachal_rental_cab_row {
	max-width: 1000px;
	margin: 0 auto;
	
}
.himachal_rental_cab_section  h1 {
	color: #fff;
	font-size: clamp(2.2rem,5vw,3.5rem);
	line-height: 1.15;
	font-weight: 600;
	max-width: 100%;
  text-align: center;
}
.himachal_rental_cab_section p{
  text-align: center;
}

.himachal_rental_cab_section  h1 em, .cab_rental_drivers .section-title em, .cab_rental_pricing_sec .section-title em, .our_vehicles_section .section-title em {
	font-style: italic;
	color: var(--cb-gold);
}
.cab_rental_drivers .our_drivers_row {
	background-color: #053D33;
	padding: 50px 50px;
	border-radius: 10px;
}
.cab_rental_drivers .section-title{
	font-size: clamp(1.8rem, 3vw, 2.4rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.2;
}
.drivers-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
	margin-top: 1rem;
}
.drivers-grid .d-item {
	display: flex;
	align-items: center;
	gap: 12px;
	background-color: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.5);
	padding: 1rem 1.25rem;
}
.drivers-grid .d-icon {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	flex-shrink: 0;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.drivers-grid .d-text {
	font-size: 13.5px;
	color: #fff;
	line-height: 1.55;
}
#about_shimla_img {
	max-height: 500px;
	width: 100%;
	object-fit: cover;
	object-position: center;
	max-width: 470px;
}
.himachal-tour-package-season-grid {
	padding: 10px 0px;
}
/* ── ROUTES / PRICING ── */
  .pricing-bg {
    background-color: #fff;
    border: 1px solid rgba(0,0,0,.05);
    overflow: hidden;
    border-radius: 20px;
  }
  table.pricing {
    width: 100%; border-collapse: collapse;
  }
  table.pricing thead {
    background-color: #04342c;
  }
  .cab_rental_pricing_sec .section-title, .our_vehicles_section .section-title  {
    font-size: clamp(34px,4.5vw,42px);
    font-weight: 900;
    line-height: 1.12;
    color: var(--cb-text);
  }
  .route-days i {
    color: #04342c;
    font-size: 11px;
    margin-right: 5px;
  }
  table.pricing thead th {
    font-size: 15px; font-weight: 500; letter-spacing: 0.08em;
    text-transform: uppercase; color: rgba(255,255,255,0.9);
    padding: 20px 15px; text-align: left;
  }
  table.pricing thead th:not(:first-child) { text-align: right; }
  table.pricing tbody tr {
    border-bottom: 1px solid var(--border);
    transition: background 0.15s;
  }
  table.pricing tbody tr:hover { background: #FAF8F3; }
  table.pricing tbody tr:last-child { border-bottom: none; }
  table.pricing td { padding: 1.1rem 1.5rem; vertical-align: middle; }
  table.pricing td:not(:first-child) { text-align: right; }
  .route-name { font-weight: 500; font-size: 15px; color: #1a1a18;}
  .route-days { font-size: 12px; color: var(--cb-muted); margin-top: 2px; }
  .price-val { font-weight: 500; font-size: 15px; color: var(--cb-forest3); }
  .price-na { color: var(--cb-muted); font-size: 13px; }
  .pricing-note {
    background: var(--amber-light);
    border-top: 1px solid rgba(239,159,39,0.25);
    padding: 1rem 1.5rem;
    display: flex; align-items: flex-start; gap: 12px;
  }
  .pricing-note i { font-size: 20px; color: var(--amber); flex-shrink: 0; margin-top: 1px; }
  .pricing-note p { font-size: 13.5px; color: #633806; line-height: 1.6; }
  .carbooking-image img {
    max-height: 280px;
    min-height: 280px;
  }
  .our_vehicles_section  .carbooking-wrapper {
    margin-top: 20px;
  }
  .carbooking-d-card {
    background: #fff;
    border: 0.5px solid #ddd;
    border-radius: 10px;
    padding: 20px 22px;
    display: flex;
    gap: 16px;
    min-height: 150px;
    justify-content: center;
    align-items: center !important;
  }
  .carbooking-d-card  .icon-teal {
    background: #E1F5EE;
    color: #0F6E56;
  }
  .carbooking-d-card  .d-icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
  }
  .carbooking-d-card .d-label {
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    margin-bottom: 8px;
  }
  .carbooking-d-card .label-teal {
    color: #0F6E56;
  }
  .carbooking-d-card .d-name {
    font-size: 16px;
    font-weight: 500;
    color: var(--cb-slate);
    line-height: 1.4;
    margin-bottom: 4px;
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .carbooking-d-card .d-desc {
    font-size: 14px;
    color: var(--cb-slate);
    line-height: 1.5;
  }
  .label-blue {
    color: #185FA5;
  }
  .stars-d {
    color: #BA7517;
    font-size: 13px;
    letter-spacing: 1px;
  }
  .icon-amber {
    background: #FAEEDA;
    color: #854F0B;
  }
  .label-amber {
    color: #854F0B;
  }
  .label-purple {
    color: #534AB7;
  }
  .icon-purple {
    background: #EEEDFE;
    color: #534AB7;
  }
  .badge-row {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 6px;
  }
  .badge {
    font-size: 12px;
    padding: 3px 8px;
    border-radius: 20px;
    font-weight: 500;
  }
  .b-teal {
	background-color: #E1F5EE;
	color: #085041;
}
.b-blue {
	background-color: #E6F1FB;
	color: #0C447C;
}
.b-purple {
	background-color: #EEEDFE;
	color: #3C3489;
}
.icon-blue {
	background: #E6F1FB;
	color: #185FA5;
}

body .contact_page_form {
	background-color: #fff;
	padding: 30px;
	border-radius: 5px;
	max-width: 500px !important;
	margin: 0 auto;
	border-radius: 10px;
}
body .contact_page_form .wpforms-container {
	margin: 0px !important;
}
body .contact_page_form .wpforms-field {
	width: 100% !important;
	padding: 0;
}
body .contact_page_form .wpforms-field input, body .contact_page_form .wpforms-field select, body .contact_page_form .wpforms-field textarea{
	border:1px solid #ddd !important;
}
body .contact_page_form .wpforms-field input:focus, body .contact_page_form .wpforms-field select:focus{
	box-shadow: 0 0 0 1px var(--wpforms-button-background-color),0px 1px 2px rgba(0,0,0,0.15) !important;
}
body .contact_page_form .wpforms-field textarea {
	height: 160px !important;
}
body .contact_page_form .wpforms-submit {
	width: 100% !important;
	background-color: #c9a227 !important;
	margin-top: 10px;
}
.contact_quick_link_lists {
	border: dashed;
	border-width: 1px;
	list-style: none;
	border-radius: 5px;
}
.contact_quick_link_lists li:not(:last-child){
	border-bottom: dashed;
	border-bottom-width: 1px;
}
.contact_quick_link_lists li {
	padding: 13px 15px;
	font-size: 18px;
	position: relative;
  font-family:var(--cb-font-body);
  padding-left: 44px;
}
.contact_quick_link_lists li {
  	color: var(--green-light);
}
.contact_quick_link_lists li:hover, .contact_quick_link_lists.cl_orange li {
  color:var(--orange);
}
.contact_quick_link_lists.cl_orange li:hover{
  color: var(--green-light);
}
.contact_quick_link_lists li i{
  position:absolute;
  left: 15px;
  top: 16px;
}
.cb-booking__inner .cb-sec-title {
    color: #fff;
}
.cb-booking__inner p.cb-sec-desc {
    margin: 0 auto;
}
/* ═══════════════════════════════════════════
   RESPONSIVE — MOBILE ≤1200px
═══════════════════════════════════════════ */
@media (max-width:1199px) {
  .cb-nav.cb-nav--scrolled, .cb-nav {
    padding: 16px 15px;
  }
  .cb-nav__logo {
    font-size: 23px;
  }
  .cb-nav__cta {
    padding: 10px 16px;
  }
}
/* ═══════════════════════════════════════════
   RESPONSIVE — TABLET ≤1299px
═══════════════════════════════════════════ */
@media (max-width:1299px) {
  .cb-hero__stats {
    max-width: 350px;
    flex-wrap: wrap;
  }
  .cb-hero__stat-num {
    font-size: 24px;
  }
  .cb-hero__stat-lbl {
    font-size: 10px;
    letter-spacing: 1px;
  }
  .cb-hero__stat {
    padding: 25px 15px;
    width: 48%;
  }
  .cb-hero__content {
    padding: 100px 60px 0 70px;
  }
  .cb-hero__title {
    font-size: clamp(52px,8vw,58px);
  }
}

/* ═══════════════════════════════════════════
   RESPONSIVE — TABLET ≤1024px
═══════════════════════════════════════════ */
@media (max-width:1024px) {
  .cb-nav__links     { display:none; }
  .cb-nav__cta       { display:none; }
  .cb-nav__hamburger { display:flex; }

  .cb-nav, .cb-nav.cb-nav--scrolled { padding:20px 40px; }
  .cb-nav--scrolled  { padding:20px 40px; }
  .cb-container      { padding:0 40px; }

  .cb-dest__grid {
    grid-template-columns:1fr 1fr; grid-template-rows:auto;
  }
  .cb-dest__card:first-child { grid-row:auto; grid-column:1/3; height:300px; }
  .cb-dest__card { height:220px; }

  .cb-tours__grid    { grid-template-columns:repeat(2,1fr); }
  .cb-footer__grid   { grid-template-columns:1fr 1fr; gap:40px; }
  .carbooking_form .wpforms-field-label {	font-size: 11px !important;letter-spacing: 1.5px;}
}

/* ═══════════════════════════════════════════
   RESPONSIVE — TABLET SMALL ≤900px
═══════════════════════════════════════════ */
@media (max-width:900px) {
  .cb-hero {
    flex-wrap: wrap;
    gap:30px;
  }
  .cb-hero__stats {
    max-width: 100%;
  }
  .cb-hero__stat {
    width: 100%;
  }
  .carbooking_form .wpforms-field {	padding: 10px 10px 5px !important;}
  .carbooking_form .wpforms-submit {	padding: 12px 13px !important;}
  .cb-nav            { padding:18px 24px; }
  .cb-nav--scrolled  { padding:14px 24px; }
  .cb-container      { padding:0 24px; }
  .cb-section        { padding:70px 0; }

  .cb-hero__content  { padding:90px 24px 0; }
  .cb-hero__stats    { position:static; display:grid; grid-template-columns:repeat(2,1fr); width:100%; }
  .cb-hero__scroll   { display:none; }

  .cb-dest__header   { flex-direction:column; align-items:flex-start; }

  .cb-about__grid    { grid-template-columns:1fr; gap:60px; }
  .cb-about__text    { padding-left:0; }
  .cb-about__img-accent { right:-20px; bottom:-20px; }
  .cb-about__badge   { left:-16px; }

  .cb-exp__grid      { grid-template-columns:1fr; gap:48px; }
  .cb-exp__cards     { order:2; }
  .cb-exp__text      { order:1; }
  .cb-exp__card:nth-child(2) { margin-top:24px; }
  .cb-exp__card:nth-child(4) { margin-top:-24px; }

  .cb-booking__form  { grid-template-columns:1fr 1fr; }
  .cb-booking__field { border-right:none; border-bottom:1px solid #e8e2d8; }
  .cb-booking__field:nth-child(1),
  .cb-booking__field:nth-child(3) { border-right:1px solid #e8e2d8; }
  .cb-booking__submit { grid-column:1/3; margin:6px; }

  .cb-testi__grid    { grid-template-columns:1fr; }

  .cb-newsletter__form { flex-direction:column; max-width:90%; border-radius:6px; }
  .cb-newsletter__input  { border-radius:4px 4px 0 0; }
  .cb-newsletter__btn    { border-radius:0 0 4px 4px; padding:16px; }
  .carbooking_form .wpforms-field-label {	font-size: 11px !important;}
}
/* ═══════════════════════════════════════════
   RESPONSIVE — MOBILE ≤767px
═══════════════════════════════════════════ */
@media(max-width:767px){

  body:not(.home) .cb-nav {
    padding: 16px 20px;
  }
  .himachal-tour-package-sights-list, .himachal-tour-package-includes-list {
    grid-template-columns: repeat(1,1fr);
  }
  .carbooking_form .wpforms-form {
    flex-wrap: wrap;
    padding: 20px 10px 25px;
  }
  
   .carbooking_form .wpforms-field-container {
    flex-wrap: wrap;
  }
  .carbooking_form .wpforms-field {
    width: 48%;
    padding: 20px 20px 5px !important;
  }
   .carbooking_form .wpforms-submit-container{
      text-align: center;
  }
  .carbooking_form .wpforms-submit {
    height: 45px !important;
    width: 100%;
    max-width: 80%;
  }
  .wpforms-submit-container {
    width: 100% !important;
  }
  .carbooking_form .wpforms-field:nth-child(2), .carbooking_form .wpforms-field:nth-child(4), .carbooking_form .wpforms-field:nth-child(6) {
    border-right: 0px;
  }
  .carbooking_form .wpforms-submit-container {
  padding-right: 0px;
}
.carbooking-wrapper {
	grid-template-columns: 1fr 1fr;
}
.carbooking-wrapper {
	grid-template-columns: 1fr;
}
.pricing-bg {
	overflow-x: auto;
	overflow-y: hidden;
}
table.pricing thead th {
	font-size: 14px;
	padding: 0.8rem 0.5rem;
	text-align: center;
}
.cab_rental_drivers .our_drivers_row {
	padding: 25px 15px;
}
body.page-template {
	margin-top: 45px !important;
}
  .elementor .e-e54ff25-f364270 {
    text-align: center;
  }
  body .contact_page_form {
    padding: 20px;
  }
}
/* ═══════════════════════════════════════════
   RESPONSIVE — MOBILE ≤600px
═══════════════════════════════════════════ */
@media (max-width:600px) {
  .cb-hero__title      { font-size:clamp(30px,12vw,40px); line-height: 1.2; }
  .cb-hero__subtitle   { letter-spacing:1.5px; margin-bottom: 20px; }
  .cb-hero__desc       { font-size:15px; margin-bottom: 20px; }
  .cb-hero__btns       { flex-direction:column; margin-bottom: 30px;}
  .cb-hero__btn-primary,
  .cb-hero__btn-outline { text-align:center; padding:14px 28px; }
  .cb-hero__stat       { padding:18px 12px; }
  .cb-hero__stat-num   { font-size:30px; }

  .cb-section          { padding:56px 0; }
  .cb-container        { padding:0 18px; }

  .cb-dest__grid       { grid-template-columns:1fr; }
  .cb-dest__card       { height:220px; }
  .cb-dest__card:first-child { grid-column:1; height:260px; }
  .cb-dest__card:first-child .cb-dest__name { font-size:32px; }

  .cb-tours__grid      { grid-template-columns:1fr; }

  .cb-booking__form    { grid-template-columns:1fr; }
  .cb-booking__field   { border-right:none; border-bottom:1px solid #e8e2d8; }
  .cb-booking__field:nth-child(1) { border-right:none; }
  .cb-booking__submit  { grid-column:1; }

  .cb-about__features  { grid-template-columns:1fr 1fr; }
  .cb-about__img-accent { display:none; }
  .cb-about__badge     { width:80px; height:80px; left:-10px; }
  .cb-about__badge-num { font-size:24px; }
  .cb-exp__card:nth-child(2) { margin-top:20px; }
  .cb-exp__card:nth-child(4) { margin-top:-20px; }
  .cb-testi__text      { font-size:16px; }
  .cb-footer__grid     { grid-template-columns:1fr; gap:36px; margin-bottom: 30px;}
  .cb-footer__bottom   { flex-direction:column; align-items:flex-start; }
  .cb-footer__bottom-links { gap:16px; }
  .cb-newsletter       { padding:56px 0; }
  .cb-hero {flex-wrap: wrap;}
 .cb-hero__tag {
	margin-bottom: 20px;
	font-size: 10px;
	letter-spacing: 1px;
}
  .cb-testi__quote {	font-size: 55px;	line-height: 30px;}
  .cb-footer {	padding: 40px 0 20px;}
  .cb-dest__header {
    align-items: center;
  }
  .cb-hero__content, .cb-reveal-right.cb-reveal--visible {
    text-align: center;
  }
  .cb-sec-line {
    margin: 0 auto 15px;
  }
  .cb-exp__item, .cb-about__feat {
    text-align: left;
  }
  .cb-nav.cb-nav--scrolled {
    padding: 16px 20px;
  }
  .cb-nav__logo, .cb-footer__logo {
    font-size: 22px;
  }
  .carbooking_form .wpforms-field {
    width: 47%;
  }
  .carbooking_form .wpforms-field-container {
    padding-top: 10px !important;
  }
  .cb-error-page__code {
    font-size: 60px;
  }
  .cb-thankyou__inner, .cb-error-page__inner {
    padding: 40px 40px;
  }
  .cb-thankyou, .cb-error-page {
    padding: 100px 20px 50px;
  }
  .drivers-grid {
    grid-template-columns: repeat(1, 1fr);
  }
}

/* ═══════════════════════════════════════════
   RESPONSIVE — TINY MOBILE ≤400px
═══════════════════════════════════════════ */
@media (max-width:400px) {
  .cb-nav              { padding:16px 16px; }
  .cb-nav__logo        { font-size:16px; letter-spacing: 1px; }
  .cb-container        { padding:0 14px; }
  .cb-hero__title      { font-size:32px; }
  .cb-hero__stat       { padding:14px 8px; }
  .cb-hero__stat-num   { font-size:26px; }
  .cb-exp__cards       { grid-template-columns:1fr; }
  .cb-exp__card:nth-child(2),
  .cb-exp__card:nth-child(4) { margin-top:0; }
}

/* New manali home page style  */
.manali_hero_section .hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: linear-gradient(135deg,#0b1d278c,#0b1d2740);
  border: 1px solid oklch(100% 0 0/.15);
	border-radius: var(--radius-pill);
	padding: 6px 16px;
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  margin-bottom: 10px;
}
.manali_hero_section .hero__title {
	font-family: var(--font-serif);
	font-size: clamp(2.4rem,5.5vw,4.2rem);
	font-weight: 700;
	color: #fff;
	line-height: 1.1;
	margin-bottom: 20px;
}
.manali_hero_section .hero__title span {
	color: #fbdecc;
	font-style: italic;
}
.manali_hero_section .hero__subtitle {
	font-size: 16px;
	font-weight: 300;
	color: rgba(255,255,255,.85);
	line-height: 1.6;
	margin-bottom: 36px;
	max-width: 520px;
	margin-left: auto;
	margin-right: auto;
}
.manali_hero_section .hero__actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
.manali_hero_section .hero__btn-primary {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--orange);
	color: #fff;
	border-radius: var(--radius-pill);
padding: 15px 28px;
  font-size: 19.5px;
	font-weight: 500;
	transition: background .18s,transform .14s;
}
.manali_hero_section .hero__btn-primary:hover {
	background: var(--orange-hover);
	transform: translateY(-1px);
}
.manali_hero_section .hero__btn-secondary {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #fff;
	border-radius: var(--radius-pill);
	backdrop-filter: blur(8px);
  padding: 15px 28px;
  font-size: 19.5px;
	font-weight: 400;
	transition: background .18s;
  background: linear-gradient(135deg,#0b1d278c,#0b1d2740);
  border: 1px solid oklch(100% 0 0/.15);
}
.manali_hero_section .hero__btn-secondary:hover {
	background: rgba(255,255,255,.25);
}
.manali_hero_section .hero__trust {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
}
.manali_hero_section .hero__trust-pill {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	backdrop-filter: blur(8px);
	border-radius: var(--radius-pill);
	padding: 14px 30px;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	animation: 6s ease-in-out infinite float-up;
	background: linear-gradient(135deg,#0b1d278c,#0b1d2740);
	border: 1px solid oklch(100% 0 0/.15);
}
.manali_hero_section svg {
	width: 19px;
  fill:#fff;
}
.manali_hero_section .hero__subtitle {
	max-width: 520px !important;
	margin: 0 auto;
	padding-bottom: 15px;
}
.manali_hero_section  .fa-solid.fa-circle-check {
	color: #f98942;
	font-size: 20px;
}
.manali_packages_section .section-title {
	font-family: "Fraunces", serif;
	font-size: clamp(1.9rem,3.5vw,2.8rem);
	font-weight: 700;
	color: var(--text-dark);
	line-height: 1.18;
	margin-bottom: 14px;
}
.manali_packages_section .section-eyebrow {
	display: inline-block;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--text-dark);
	border: 1px solid var(--border-light);
	border-radius: var(--radius-pill);
	padding: 5px 19px;
	margin-bottom: 0px;
	background-color: color-mix(in oklab,var(--green-light) 10%,transparent);
}
.manali_packages_section {
	background: linear-gradient( 180deg, #d8edf6 0%, #d3eaf3 45%, #cfe7f1 100% );
}
body .packages__header{
	padding: 0;
}
.pkg-card {
	background: var(--white);
	border-radius: var(--radius-lg);
	border: 1px solid var(--border-light);
	box-shadow: var(--shadow-card);
	overflow: hidden;
	transition: transform .22s ease,box-shadow .22s ease;
  min-height: 380px;
	height: 100%;
}
body .pkg_card_outerbox {
	padding: 5px;
}
.pkg-card__img-wrap img {
	transition: transform .35s ease;
	object-fit: cover;
	object-position: center;
	width: 100%;
	max-height: 240px;
}
.pkg-card__img-wrap {
	position: relative;
	overflow: hidden;
}
.pkg-card__badges {
	position: absolute;
	top: 12px;
	left: 12px;
	right: 12px;
	display: flex;
	align-items: center;
	justify-content: space-between;
  font-size: 14px;
  color: #000;
}
.pkg-card__body {
	padding: 18px 20px 20px;
}
.pkg-card__name {
	font-family: var(--font-serif);
	font-size: 1.25rem;
	font-weight: 600;
	color: var(--text-dark);
	margin-bottom: 10px;
}
.pkg-card__price-label {
	font-size: 11px;
	color: var(--text-muted);
	font-weight: 400;
	display: block;
	margin-bottom: 2px;
}
.pkg-card__footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}
.pkg-card__style-tag {
	background-color: rgba(255,255,255,0.5);
	border-radius: 50px;
	padding: 5px 16px;
}
.pkg-card__duration {
	position: absolute;
	bottom: 15px;
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	color: #fff;
	width: 100%;
	left: 15px;
}
.pkg-card__btn {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background-color: var(--green-mid);
	color: #fff;
	border-radius: var(--radius-pill);
	padding: 12px 18px;
	font-size: 12.5px;
	font-weight: 500;
	border: none;
	cursor: pointer;
	transition: background .18s,transform .14s;
	white-space: nowrap;
}
.pkg-card__price {
	font-family: var(--font-plus);
	font-size: 1.35rem;
	font-weight: 700;
	color: var(--text-dark);
}
.pkg-card__price span {
	font-family: var(--font-plus);
	font-size: 11.5px;
	font-weight: 400;
	color: var(--text-body);
	margin-left: 1px;
}
.pkg-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--shadow-hover);
}
.pkg-card:hover .pkg-card__img-wrap img {
	transform: scale(1.09);
}
body .pkg-card--custom {
	border: 1.5px dashed rgba(13,61,47,.25);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 40px 28px;
	background: transparent;
	box-shadow: none;
}
.pkg-card__custom-icon {
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: var(--orange);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 16px;
	padding: 10px;
}
.pkg-card__custom-icon svg{
  fill:#fff;
}
.pkg-card__custom-title {
	font-family: var(--font-serif);
	font-size: 1.35rem;
	font-weight: 600;
	color: var(--text-dark);
	margin-bottom: 0px;
	line-height: 25px;
}
.pkg-card__custom-desc {
	font-size: 16px;
	color: var(--text-muted);
	font-weight: 300;
	margin-bottom: 0;
	line-height: 25px;
}
.pkg-card__custom-link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13.5px;
	font-weight: 500;
	color: var(--green-mid);
	transition: gap .18s;
}
.section-desc p {
	max-width: 500px;
	margin: 0 auto;
}