/* ==========================================================================
   Rajwada Events — Destination Wedding Planner
   ========================================================================== */

:root{
  --maroon-dark: #33060f;
  --maroon: #4a0f1e;
  --maroon-light: #5c1526;
  --gold: #c9a15a;
  --gold-light: #e2c58a;
  --cream: #f7efe0;
  --cream-light: #fbf6ec;
  --text-dark: #2b1810;
  --text-muted: #6b5849;
  --text-light: #f3e6d0;
  --font-heading: 'Playfair Display', serif;
  --font-script: 'Alex Brush', cursive;
  --font-body: 'Jost', sans-serif;
  --radius: 4px;
  --transition: .3s ease;
}

*,*::before,*::after{ box-sizing: border-box; }
html{ scroll-behavior: smooth; }
body{
  margin:0;
  font-family: var(--font-body);
  color: var(--text-dark);
  background: var(--cream-light);
  font-size: 1rem;

}
img{ max-width:100%; display:block; }
a{ text-decoration:none; color:inherit; }
ul{ list-style:none; margin:0; padding:0; }
h1,h2,h3,h4{ font-family: var(--font-heading); margin:0; font-weight:600; }
p{ margin:0; line-height:1.7; color: #000; }
button{ font-family: var(--font-body); cursor:pointer; }


.container{
  width:100%;
  max-width:100%;
  margin:0 auto;
  padding:0 80px;
}
.section-pad{ padding:50px 0; }
.eyebrow{
  display:inline-block;
  font-size:1rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color: var(--gold);
  font-weight:600;
  margin-bottom:14px;
  position:relative;
  padding-left:34px;
}
.eyebrow::before{
  content:"";
  position:absolute;
  left:0; top:50%;
  width:24px; height:1px;
  background: var(--gold);
}
.section-head{ max-width:640px; margin-bottom:44px; }
.section-head.center{ margin-left:auto; margin-right:auto; text-align:center; }
.section-head h2{ font-size:2.4rem; color:var(--maroon-dark); margin-bottom:16px; line-height:1.2; }
.on-dark .eyebrow{ color: var(--gold-light); }
.on-dark .section-head h2{ color: var(--cream); }
.on-dark p{ color: rgba(243,230,208,.75); }

/* Buttons */
.btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 30px;
  border-radius:30px;
  font-size:1rem;
  letter-spacing:.05em;
  text-transform:uppercase;
  font-weight:600;
  border:1px solid transparent;
  transition: var(--transition);
  white-space:nowrap;
}
.btn i, .btn svg{ font-size:1em; transition: transform var(--transition); }
.btn:hover i{ transform: translateX(4px); }
.btn-primary{ background: var(--maroon); color:#fff; }
.btn-primary:hover{ background: var(--gold); color: var(--maroon-dark); }
.btn-outline{ border-color: var(--gold); color: var(--maroon-dark); background:transparent; }
.btn-outline:hover{ background: var(--maroon); color:#fff; border-color:var(--maroon); }
.btn-gold{ border:var(--gold-light) solid 1px; color: var(--gold-light); background: none; }
.btn-gold:hover{ background: var(--gold-light); color: var(--maroon-dark); }
.btn-light-outline{ border-color: rgba(243,230,208,.5); color: var(--cream); background:transparent; }
.btn-light-outline:hover{ background: var(--gold); border-color: var(--gold); color: var(--maroon-dark); }
.btn-block{ width:100%; justify-content:center; }

/* ==========================================================================
   Header
   ========================================================================== */
.site-header{ position:sticky; top:0; z-index:1000; background:#fff; box-shadow:0 2px 18px rgba(43,24,16,.08); }

.topbar{ background: var(--maroon-dark);color: rgba(243,230,208,.85); font-size:.78rem;}
.topbar .container{ display:flex; align-items:center; justify-content:space-between; padding-top:9px; padding-bottom:9px; gap:20px;}
.topbar-taglines{ display:flex; gap:18px; letter-spacing:.03em; }
.topbar-taglines span{ position:relative; }
.topbar-taglines span + span::before{ content:"•"; color:var(--gold); position:absolute; left:-13px; }
.topbar-right{ display:flex; align-items:center; gap:22px; }
.topbar-contact{ display:flex; align-items:center; gap:18px; }
.topbar-contact a{ display:flex; align-items:center; gap:7px; transition: color var(--transition); }
.topbar-contact a:hover{ color: var(--gold-light); }
.topbar-social{ display:flex; align-items:center; gap:12px; }
.topbar-social a{
  width:26px; height:26px; border-radius:50%;
  border:1px solid rgba(243,230,208,.3);
  display:flex; align-items:center; justify-content:center;
  font-size:.75rem;
  transition: var(--transition);
}
.topbar-social a:hover{ background: var(--gold); border-color:var(--gold); color:var(--maroon-dark); }
.btn-login{
  border:1px solid rgba(243,230,208,.4);
  padding:6px 16px;
  border-radius:20px;
  font-size:.75rem;
  letter-spacing:.05em;
  transition: var(--transition);
}
.btn-login:hover{ background: var(--gold); border-color:var(--gold); color:var(--maroon-dark); }

.main-nav{ background: var(--maroon-dark); border-top: #523803 solid 1px; }
.main-nav .container{ display:flex; align-items:center; justify-content:space-between;
   padding-top:10px; padding-bottom:10px; 
  }
.logo{ display:flex; align-items:center; gap:12px; }

.logo img { height: 80px; }

.logo .crest{
  width:48px; height:48px; border-radius:50%;
  background: linear-gradient(135deg,var(--maroon),var(--maroon-dark));
  color: var(--gold-light);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-heading); font-size:1.3rem; font-weight:700;
  border:1px solid var(--gold);
}
.logo-text{ line-height:1.1; }
.logo-text .name{ font-family:var(--font-heading); font-size:1.3rem; font-weight:700; color:var(--maroon-dark); letter-spacing:.04em; }
.logo-text .sub{ font-size:.62rem; letter-spacing:.32em; color:var(--gold); text-transform:uppercase; }

.nav-menu{ display:flex; align-items:center; gap:36px; }
.nav-menu a{
  font-size:16px; font-weight:500; color:#fff;
  position:relative; padding:6px 0;
  transition: color var(--transition);
}
.nav-menu a::after{
  content:""; position:absolute; left:0; bottom:0; width:0; height:2px;
  background: var(--gold); transition: width var(--transition);
}
.nav-menu a:hover, .nav-menu a.active{ color: var(--gold); }
.nav-menu a:hover::after, .nav-menu a.active::after{ width:100%; }

.nav-actions{ display:flex; align-items:center; gap:18px; }
.nav-menu-cta{ display:none; width:100%; margin-top:6px; }
.nav-toggle{
  display:none; flex-direction:column; gap:5px; background:none; border:none; padding:4px;
}
.nav-toggle span{ width:26px; height:2px; background:var(--maroon-dark); transition: var(--transition); }

.nav-actions .btn-primary { font-size: 0.80rem; padding: 10px 20px; background:none; border:var(--gold-light) solid 1px; color: var(--gold-light); }

/* ==========================================================================
   Hero
   ========================================================================== */
.hero{
  position:relative;
  color:#fff;
  overflow:hidden;
}
.hero-slider{ position:relative; width:100%;background: #33060f; }
.hero-slider .slick-slide { padding-bottom: 60px; }
.hero-slide{
  position:relative;
  display:flex !important;
  align-items:center;
  background-size:cover;
  background-position:center 30%;
  background-repeat:no-repeat;
}
.hero-slide-inner{ position:relative; z-index:2; padding-top:60px; padding-bottom:30px; }
.hero-tagline{ color: var(--gold-light); letter-spacing:.22em; text-transform:uppercase; font-size:.78rem; font-weight:600; margin-bottom:18px; }
.hero h1{
  font-size:3.6rem; line-height:1.12; max-width:760px; color:#fff;
}
.hero h1 .script{
  display:block;
  font-family: var(--font-script);
  font-weight:400;
  font-size:1.25em;
  color: var(--gold-light);
  line-height:1.4;
  margin-top:10px;
  white-space:nowrap;
}
.hero p{ max-width:520px; margin:10px 0 34px; color: rgba(255,255,255,.82); font-size:1rem; }

.hero .btn-primary {  background:none; border:var(--gold-light) solid 1px; color:var(--gold-light); }
.hero .btn-primary:hover { background: var(--gold-light); color: var(--maroon-dark);}

.hero-slider .slick-dots{ position:absolute; bottom:30px; left:50%; transform:translateX(-50%); z-index:6; width:auto; margin:0; list-style: none; }
.hero-slider .slick-dots li button{ background: rgba(255,255,255,.35); }
.slick-dots li button:before { display: none;}
.hero-slider .slick-dots li.slick-active button{ background: var(--gold-light); }
.hero-arrow{
  position:absolute; top:50%; transform:translateY(-50%); z-index:6;
  width:46px; height:46px; border-radius:50%; border:1px solid rgba(255,255,255,.4);
  background: rgba(30,6,12,.35); color:#fff; display:flex; align-items:center; justify-content:center;
  transition: var(--transition); font-size:1rem;
}
.hero-arrow:hover{ background: var(--gold); color:var(--maroon-dark); border-color:var(--gold); }
.hero-arrow-prev{ left:18px; }
.hero-arrow-next{ right:18px; }

.slick-dotted.slick-slider { margin-bottom: 0px !important;}


.slick-track { display: flex; }
.slick-slide { height: auto;}


@media (max-width: 992px){
  .hero-arrow{ display:none; }

  .hero-side { display: none;}

  .hero-slider .slick-dots { bottom: 14px; }
  
}

.hero-features{
  /* position:absolute; left:0; right:0; bottom:36px; z-index:6; */
  max-width:680px; margin:0px; padding:15px 0px;
  display:flex; gap:0px; flex-wrap:wrap; margin-top: 30px; border-radius: 10px;
  /* background: linear-gradient(135deg, #33060f  0%, #33060f 100%); */
}
.hero-feature{  align-items:center; gap:14px; max-width:170px; text-align: center; padding: 0 30px; border-right:#56292f solid 1px ; }
.hero-feature i{ font-size:1.5rem; color: var(--gold-light); display: block; padding-bottom: 6px; }
.hero-feature span{ font-size:1rem; line-height:1.35; color:rgba(255,255,255,.9); }
.hero-feature:last-child { border: none;}
.hero-side{
  position:absolute; right:0px; top:auto; 
  font-family: var(--font-script); font-size:1.5rem; color: var(--gold-light);
  z-index:6; letter-spacing:.02em;
  background: #33060f; 
  width: 200px;
  bottom: 0px;
  padding: 15px;
  text-align: center;
  border-radius: 15px 0px 0 0;
}

.hero-feature img { width: 44px; margin: 0 auto; padding: 0 0 3px 0;}

/* ==========================================================================
   About
   ========================================================================== */
.about { background: var(--cream-light) url(../images/about-bg2.png) 100% 0 no-repeat; background-size: cover; position: relative; overflow: hidden; }

.about::before { content: "";
  position: absolute;
  top: -10px;
  left: -38px;
  width: 45%;
  height: 100%;
  background:url(../images/destinations-piler.png) 0 0 no-repeat; opacity: 0.8; background-size:110px auto; }

.about .container{
  display:grid; grid-template-columns:.85fr 1.15fr .8fr; gap:50px; 
  /* align-items:center; */
}
.about-image { background:url(../images/about-frame.png) 0 0 no-repeat; position:relative; background-size: contain; padding: 70px 55px 25px 55px; background-size: 100% 100%; width: 500px; height: 600px;  }
.about-image img{
  /* border-radius: 47% 47% 3% 3%; */
  width:100%; height:500px; object-fit:cover;
  /* border: 10px solid #fff; */
  /* box-shadow: 0 20px 45px rgba(74,15,30,.18); */
  max-width: 400px;
  margin: 0 auto;
}
.about-content .eyebrow{ padding-left:0; }
.about-content .eyebrow::before{ display:none; }
.about-content h2{ font-size:2.3rem; color:var(--maroon-dark); margin-bottom:18px; line-height:1.25; }
.about-content p{ margin-bottom:18px; line-height: 1.4; }
.about-content .link-arrow{ color:var(--maroon); font-weight:600; font-size:1rem; display:inline-flex; align-items:center; gap:8px; border-bottom:1px solid var(--gold); padding-bottom:4px; }
.about-content .link-arrow i{ transition: transform var(--transition); }
.about-content .link-arrow:hover i{ transform:translateX(5px); }

.stats-row{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-top:38px; }
.stat{ text-align:center; border-left:1px solid var(--gold); padding-left:14px; }
.stat-icon{ display:block; font-size:1.8rem; color:var(--maroon); margin-bottom:10px; }
.stat .num{ font-family:var(--font-heading); font-size:1.7rem; color:var(--maroon-dark); font-weight:700; display:block; align-items:center; gap:4px;  }
.stat .num i{ font-size:1rem; color:var(--gold); }
.stat .label{ font-size:1rem; color:#000; margin-top:2px; }

.stat img { width: 54px; height: auto; margin: 0 auto;}

.about-quote{
  /* background: linear-gradient(150deg,var(--maroon),var(--maroon-dark));
  color: var(--text-light); */
  /* padding:44px 30px;
  border-radius: var(--radius);
  position:relative;
  border:1px solid var(--gold); */
}
/* .about-quote::before{ content:"\201C"; font-family:var(--font-heading); font-size:4rem; color:var(--gold); position:absolute; top:10px; left:20px; line-height:1; opacity:.6; } */
.about-quote p{ font-family:var(--font-heading); font-style:italic; font-size:1.6rem; color:var(--text-light); line-height:1.5; position:relative; z-index:1; }
.about-quote .quote-brand{ margin-top:24px; display:flex; align-items:center; gap:10px; }
.about-quote .quote-brand .crest{ width:34px; height:34px; border-radius:50%; border:1px solid var(--gold); display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); color:var(--gold-light); font-size:.9rem; }
.about-quote .quote-brand span{ font-size:.75rem; letter-spacing:.15em; text-transform:uppercase; color:var(--gold-light); }


.about__panel{
  position:relative;color:var(--cream);text-align:center;
  padding:clamp(24px,2.8vw,38px) clamp(18px,2.2vw,32px) clamp(64px,8vw,64px);
  background:url("../images/texture-maroon.png") center/cover;
 
  /* pointed pennant foot */
  clip-path:polygon(0 0,100% 0,100% calc(100% - 62px),50% 100%,0 calc(100% - 62px));
  box-shadow:0 16px 44px rgba(0,0,0,.32); 
  margin-top: 0px;
  padding: 120px 60px 120px 60px;
  border-radius: 15px 15px 0 0;
}
.about__panel .ornament{margin-top:0;width:clamp(130px,14vw,180px);}
.about__panel h2{margin-top:8px;font-family:var(--font-serif);font-weight:600;
  font-size:clamp(26px,3.2vw,45px);letter-spacing:.03em;text-transform:uppercase;}
.about__copy{margin-top:clamp(14px,1.8vw,22px);display:grid;
line-height:1.55;font-weight:400;color:#f3e6d2;}
.about__copy strong{font-weight:600;letter-spacing:.02em;}
.about__panel .btn-frame{margin-top:clamp(18px,2.4vw,30px);}

.about-btn { padding:10px 0px 20px 0;}
.about-icon { padding: 20px 0 0 0;}
.about-icon img { margin: 0 auto;}

/* framed "{ label }" button from the design */
.btn-frame{
  position:relative;display:inline-block;padding:11px 26px;
  color:var(--cream);background:transparent;border:1px solid rgba(232,207,148,.85);
  font-size:clamp(12px,1.15vw,15px);font-weight:500;letter-spacing:.09em;
  text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s;
}

.btn-frame::before,.btn-frame::after { content:"";position:absolute; top:0px;bottom:0px;width:30px; }

.btn-frame::before{ background:url(../images/button-L-R.svg) 0 0 no-repeat; left:-13px; border-right:0; border-radius:14px 0 0 14px;}
.btn-frame::after{ background:url(../images/button-L-R.svg) 0 0 no-repeat; right:-13px; border-left:0; border-radius:0 14px 14px 0;transform: scaleX(-1);   }

.btn-frame span { display: block; }
.btn-frame span::before,.btn-frame span::after { content:"";position:absolute; top:0px;bottom:0px; width:75px; 
    transform: translate(-50%, 0%); left: 50%; }
.btn-frame span::before { background:url(../images/button-T-B.svg) 0 0 no-repeat; top:-13px; border-right:0; border-radius:14px 0 0 14px;}
.btn-frame span::after { background:url(../images/button-T-B.svg) 0 0 no-repeat; bottom:-0px; border-left:0; border-radius:0 14px 14px 0;  transform: translate(-50%, 13px) scaleY(-1);    }

.btn-frame:hover,.btn-frame:focus-visible{background:rgba(232,207,148,.16);color:#fff;}

/* ==========================================================================
   Destinations
   ========================================================================== */
.destinations{
  position:relative;
  background: url(../images/destinations-bg.png) 0 100% no-repeat;
  background-size:cover;
  overflow:hidden;
}



.dest-layout{ display:grid; grid-template-columns:500px 1fr; gap:40px; align-items:center; }
.dest-content .eyebrow{ padding-left:0; }
.dest-content .eyebrow::before{ display:none; }
.dest-content h2{ font-size:1.9rem; color:var(--maroon-dark); margin-bottom:16px; line-height:1.25; }
.dest-content p{ margin-bottom:24px; font-size:1rem; }
.dest-caravan{ margin-top:34px; color: var(--gold); opacity:.85; }
.dest-caravan svg{ width:100%; height:auto; max-width:210px; }

.dest-slider-wrap{ display:flex; align-items:center; gap:14px; min-width:0; }
.dest-slider{ flex:1; min-width:0; margin:0 -10px; }
.dest-slider .dest-card{ padding:0 10px; }
.dest-nav-arrow{
  width:44px; height:44px; border-radius:50%; flex-shrink:0;
  border:1px solid rgba(74,15,30,.25); background:#fff; color:var(--maroon-dark);
  display:flex; align-items:center; justify-content:center; transition: var(--transition); font-size:.95rem;
}
.dest-nav-arrow:hover{ background:var(--maroon); color:#fff; border-color:var(--maroon); }
.dest-card{ display:block; text-decoration:none; }
.dest-photo{
  position:relative; display:block; height:300px; border-radius: 120px 120px 6px 6px; overflow:hidden;
  box-shadow: 0 14px 28px rgba(74,15,30,.18);
  transition: transform var(--transition), box-shadow var(--transition);
}
.dest-card:hover .dest-photo{ transform:translateY(-6px); box-shadow: 0 20px 36px rgba(74,15,30,.28); }
.dest-photo img{
  width:100%; height:100%; object-fit:cover; transition: transform .5s ease;
  filter: saturate(1.4) sepia(.3) hue-rotate(-10deg) brightness(.94) contrast(1.1);
}
.dest-card:hover .dest-photo img{ transform:scale(1.08); }
.dest-photo::before{
  content:""; position:absolute; inset:0; z-index:1;
  background: linear-gradient(160deg, rgba(150,75,15,.32), rgba(90,35,10,.12) 55%, rgba(40,12,6,.22));
  mix-blend-mode: multiply;
}
.dest-info{ display:block; padding-top:14px; }
.dest-info strong{ display:block; font-family:var(--font-heading); font-size:18px; color:var(--maroon-dark); font-weight:700; }
.dest-info em{ display:block; font-style:normal; font-size:1rem; color:#000; letter-spacing:.03em; margin-top:2px; }
.dest-arrow{
  position:absolute; top:14px; right:14px; z-index:2;
  width:34px; height:34px; border-radius:50%;
  background: rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.4);
  display:flex; align-items:center; justify-content:center; color:#fff;
  transition: var(--transition); flex-shrink:0;
}
.dest-card:hover .dest-arrow{ background: var(--gold); border-color:var(--gold); color:var(--maroon-dark); transform:rotate(45deg); }

/* ==========================================================================
   Featured Venue
   ========================================================================== */
.featured-venue {
  background: linear-gradient(120deg, rgba(51,6,15,.92), rgba(51,6,15,.88)), url('../images/bg-gallery.png') center/cover fixed;
  color:#fff;
}
.featured-venue .container { padding: 0px; }
.venue-grid{ display:grid; grid-template-columns:1.1fr 1fr .85fr; gap:40px; align-items:center; }
.venue-photo img{ border-radius: var(--radius); height:500px; width:100%; object-fit:cover; object-position: bottom; }
.venue-content .eyebrow{ padding-left:0; }
.venue-content .eyebrow::before{ display:none; }
.venue-content h2{ font-size:2.1rem; color:#fff; margin-bottom:8px; }
.venue-content .script-line{ font-family:var(--font-script); color:var(--gold-light); font-size:1.5rem; margin-bottom:18px; display:block; }
.venue-content p{ margin-bottom:26px; }
.venue-features{ display:flex; flex-direction:column;  }
.venue-features li{ display:flex; align-items:center; gap:14px; font-size:1rem;  border-bottom:1px solid rgba(243,230,208,.15); max-width: 380px; padding: 15px 0px; }
.venue-features li:last-child{ border-bottom:none; }
.venue-features i{ color:var(--gold-light); font-size:1.2rem; width:22px; text-align:center; }

.venue-features li img { width: 36px; height: auto; }


/* ==========================================================================
   Services
   ========================================================================== */
.services { background: url(../images/services-bg.png) 0 0px no-repeat; background-size: cover; padding: 0px;   }

.services .container { padding-right: 0px;}

.services-top{ max-width:640px; margin-bottom:36px; }
.services-top .eyebrow{ padding-left:0; }
.services-top .eyebrow::before{ display:none; }
.services-top h2{ font-size:2.1rem; color:var(--maroon-dark); margin-bottom:14px; }
.services-top p{ margin-bottom:24px; }
.services-body{ display:grid; grid-template-columns:1.7fr .7fr; gap:24px; align-items:center; }
.services-grid{ display:flex; flex-wrap:wrap; gap:22px 8px; justify-content:flex-start; align-content:flex-start; }
.service-card{
  background:transparent; border:none; border-radius:0;
  padding:0; text-align:center; transition: var(--transition);
  width:calc(100%/7 - 7px);
  min-width:76px;
}
.service-card:hover{ transform:translateY(-4px); }
.service-card:hover .icon{ background: var(--maroon); border-color:var(--maroon); color:var(--gold-light); }

.service-card .icon{
  position:relative;
  width:68px; height:68px; border-radius:50%; margin:0 auto 12px;
  background: transparent; border:1.5px solid var(--gold);
  display:flex; align-items:center; justify-content:center; color:var(--maroon); font-size:1rem;
  transition: var(--transition);
}

.service-card .icon img { width:42px; height: auto;}

.service-card .icon::before{
  content:""; position:absolute; inset:-7px; border-radius:50%;
  border:1px solid rgba(201,161,90,.4);
}
.service-card span{ font-size:1rem; font-weight:500; color:var(--text-dark); line-height:1.3; }
.services-image img{
  /* border-radius: 47% 47% 3% 3%; */
  width: 100%;
  height: auto;
  object-fit: cover;
  /* border: 10px solid #fff; */
  /* box-shadow: 0 20px 45px rgba(74, 15, 30, .18); */
  /* max-width: 400px; */
  margin: 0 auto; }

.services-left { padding: 30px 0px;}


/* ==========================================================================
   Experience
   ========================================================================== */
.experience{
  background: linear-gradient(120deg, rgba(51, 6, 15, .92), rgba(51, 6, 15, .88)), url('../images/experience-bg.png') center/contain fixed;
  color:#fff;
}

.experience .container { padding: 0px;}
.experience-grid{ display:grid; grid-template-columns:1fr 1fr .8fr; gap:44px; align-items:center; }
.experience-photo img{ border-radius: var(--radius); height:420px; width:100%; object-fit:cover; }

.experience-photo, .venue-photo { position: relative;}

.experience-photo::after,.venue-photo::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 20%;
  height: 100%;
  background: linear-gradient(
    to right,
    transparent 0%,
    rgba(51, 6, 15, 0.15) 15%,
    rgba(51, 6, 15, 0.55) 45%,
    #33060f 100%
  );
  pointer-events: none;
}

.experience-content .eyebrow{ padding-left:0; }
.experience-content .eyebrow::before{ display:none; }
.experience-content h2{ font-size:2.1rem; color:#fff; margin-bottom:18px; }
.experience-content h2 .script{ font-family:var(--font-script); color:var(--gold-light); font-size:1em; font-weight:400; display:block; }
.experience-content p{ margin-bottom:30px; max-width:420px; }
.experience-list{ display:flex; flex-direction:column; gap:0px; }
.experience-list li{ display:flex; align-items:center; gap:14px; font-size:16px; padding-bottom:0px; border-bottom:1px solid rgba(243,230,208,.15); max-width: 380px; padding: 12px 0px; }
.experience-list li:last-child{ border-bottom:none; padding-bottom:0; }
.experience-list i{ color:var(--gold-light); font-size:1.2rem; width:20px; }

.experience-list li img { width: 36px; height: auto; }



.gallery-testimonials-bg {background-image: linear-gradient(rgba(255,255,255,0.5), rgba(255,238,204,0.76)), url(../images/gallery-testimonials-bg.png); background-position: center; }

/* ==========================================================================
   Gallery + Testimonials shared warm background
   ========================================================================== */
.gallery {
  position:relative;
  /* background:url(../images/plan-texture.png) 100% 100% no-repeat; */
  /* background: url(../images/gallery-bg.png) 100% 100% / cover no-repeat; */
  padding-bottom:50px;
  background-size: cover;
}

/* ==========================================================================
   Gallery
   ========================================================================== */
.gallery-layout{ display:grid; grid-template-columns:300px 1fr; gap:36px; align-items:flex-start; }
.gallery-content .eyebrow{ padding-left:0; }
.gallery-content .eyebrow::before{ display:none; }
.gallery-content h2{ font-size:1.9rem; color:var(--maroon-dark); margin-bottom:14px; line-height:1.25; }
.gallery-content p{ margin-bottom:24px; font-size:1rem; }
.gallery-slider-wrap{ display:flex; align-items:center; gap:14px; min-width:0; }
.gallery-slider{ flex:1; min-width:0; margin:0 -10px; }
.gallery-slider .slide{ padding:0 10px; }
.gallery-slider .slide img{ height:280px; width:100%; object-fit:cover; border-radius: var(--radius); }
.gallery-arrow { flex-shrink:0; width:42px; height:42px; border-radius:50%; border:1px solid var(--gold);  display:flex; align-items:center; justify-content:center; color:var(--maroon-dark);  background:transparent; transition: var(--transition);}
.gallery-arrow:hover{ background:var(--maroon); color:#fff; border-color:var(--maroon); }
.gallery .slick-dots {margin-top:0px; }

/* ==========================================================================
   Testimonials
   ========================================================================== */

.testimonials { position:relative;  padding-top:30px; overflow: hidden; padding-bottom:50px; 
  /* background: url(../images/plan-texture.png) 100% 100% no-repeat; background-size: cover; border-top: #f5e0b4 solid 2px;  */
}

/* .testimonials::before { background: url(../images/testimonials-img.png) 95% 100% no-repeat; width:100%; height:100%; content:""; position:absolute; top:10px; left:0px; display: block; background-size: 180px auto;   }  */

.testimonials-layout{ display:grid; grid-template-columns:300px 1fr; gap:36px;align-items:flex-start; }
.testimonials-slider{ min-width:0; }
.testimonials-content { position: relative; z-index: 99;}
.testimonials-content .eyebrow{ padding-left:0; }
.testimonials-content .eyebrow::before{ display:none; }
.testimonials-content h2{ font-size:1.9rem; color:var(--maroon-dark); margin-bottom:14px; line-height:1.25; }
.testimonials-content p{ margin-bottom:24px; font-size:1rem; }
.testimonial-card{
  background:#fff; border:1px solid rgba(74,15,30,.08); border-radius: var(--radius);
  padding:26px 22px; margin:0 10px; height:100%;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
}
.testimonial-card .quote-icon{ color:var(--gold); font-size:1.4rem; margin-bottom:10px; }
.testimonial-card p.text{  color:var(--text-dark); margin-bottom:16px; font-size:1rem; line-height:1.6; }
.testimonial-foot{ display:flex; align-items:center; justify-content:space-between; }
.testimonial-foot .name{ font-family:var(--font-heading); font-weight:700; color:var(--maroon-dark); font-size:1.1rem; }
.testimonial-foot .loc{ font-size:1rem; color:var(--text-muted); }
.testimonial-foot .stars{ color:var(--gold); font-size:.72rem; }

.testimonials .slick-dots { bottom: 0px; }

.testimonials-slider .slick-track { padding:10px 0px;}

/* Slick dots shared */
.slick-dots{ position:relative; margin-top:26px; text-align:center; }
.slick-dots li{ display:inline-block; margin:0 4px; }
.slick-dots li button{ font-size:0; width:9px; height:9px; border-radius:50%; border:none; background: rgba(74,15,30,.25); padding:0; margin: 0 auto; }
.slick-dots li.slick-active button{ background: var(--gold); width:22px; border-radius:5px; transition: var(--transition); }
.on-dark .slick-dots li button{ background: rgba(243,230,208,.3); }
.on-dark .slick-dots li.slick-active button{ background: var(--gold-light); }

/* ==========================================================================
   Contact CTA
   ========================================================================== */
.contact-cta{
  /* background: linear-gradient(120deg, var(--maroon-dark), var(--maroon)) ; */
  background: linear-gradient(120deg, rgba(30, 6, 12, .75), rgba(74, 15, 30, .75)), url(../images/bg-gallery.png) center / contain fixed;
  color:#fff;
}
.contact-cta .container { max-width: 1600px;}
.contact-grid{ display:grid; grid-template-columns:.8fr 1.2fr; gap:120px; align-items:center; }
.contact-image { position:relative; }
.contact-image img{
  border-radius: 48% 48% 3% 3%;
  height:620px; width:100%; object-fit:cover; 
  /* border:8px solid rgba(255,255,255,.15); */
}
.contact-form-wrap .eyebrow{ padding-left:0; }
.contact-form-wrap .eyebrow::before{ display:none; }
.contact-form-wrap h2{ font-size:2.1rem; color:#fff; margin-bottom:10px; }
.contact-form-wrap > p{ margin-bottom:30px; color:rgba(243,230,208,.75); }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }
.form-group{ display:flex; flex-direction:column; gap:6px; }
.form-group label{ font-size:1rem; color: var(--gold-light); letter-spacing:.03em; }
.form-group input, .form-group select, .form-group textarea{
  background: rgba(255,255,255,.08);
  border:1px solid rgba(243,230,208,.25);
  border-radius: var(--radius);
  padding:13px 14px;
  color:#fff;
  font-family: var(--font-body);
  font-size:1rem;
  outline:none;
  transition: var(--transition);
}
.form-group select option{ color:var(--text-dark); }
.form-group input::placeholder, .form-group textarea::placeholder{ color:rgba(243,230,208,.45); }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus{ border-color: var(--gold); background: rgba(255,255,255,.13); }
.form-actions{ margin-top:6px; }
.form-note{ font-size:1rem; color: rgba(243,230,208,.55); margin-top:14px; }
.form-success{ display:none; align-items:center; gap:10px; background: rgba(201,161,90,.15); border:1px solid var(--gold);
  padding:14px 18px; border-radius: var(--radius); margin-top:18px; font-size:1rem; color:var(--gold-light);}
.form-success.show{ display:flex; }



/* ==========================================================================
   blog css
   ========================================================================== */

.blog-section { width: 100%;  background:#f6f0e3 url(../images/blog-bg.png) 0 0 no-repeat; background-size: cover;   }
.blog-container { max-width: 1430px; margin: 0 auto; }
.blog-top  { text-align: center; padding: 0 0 60px 0;}
.blog-top p { max-width: 800px; text-align: center; margin: 0 auto; font-size: 16px; }
.blog-top .eyebrow { color: #856a3a; }
.blog-top .eyebrow::before{ display:none; }
.blog-top h2 { font-size:2.3rem; color:var(--maroon-dark); margin-bottom:18px; line-height:1.25; }

.heading-decoration { display: flex; justify-content: center; align-items: center; gap: 12px; margin-bottom: 20px; color: #d39b27; }
.heading-decoration .line { display: block; width: 125px; height: 1px; position: relative; background: linear-gradient(to right, transparent, #d39b27, #d39b27, transparent); }
.heading-decoration .diamond { font-size: 25px; line-height: 1; color: #d39b27; }
.section-heading p { max-width: 820px; margin: auto; font-size: 16px; line-height: 1.55; font-weight: 400; color: #171310; }
.blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.blog-card { overflow: hidden; border-radius: 14px; background: #fbf1df; border: 1px solid #dcb66b; transition: transform 0.3s ease, box-shadow 0.3s ease; background: linear-gradient(180deg, #FDF3E0 0%, #FDF8EF 100%); }
.blog-card:hover {  box-shadow: 0 14px 35px rgba(66, 30, 17, 0.12); }
.blog-image { width: 100%; height: 250px; overflow: hidden; }
.blog-image img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform 0.5s ease; }
/* .blog-card:hover .blog-image img { transform: scale(1.04); } */
.blog-content { min-height: 192px; padding: 20px 23px 25px; }
.blog-content h3 { color: var(--maroon); font-size: 20px; font-weight: 600; line-height: 1.35; margin-bottom: 17px; }
.blog-content > p { font-size: 15px; line-height: 1.5; color: #201913; margin-bottom: 18px; }

.blog-content .btn-primary { border: var(--maroon) solid 1px; color: var(--maroon); background: none; }
.blog-card:hover .blog-content .btn-primary { background: var(--maroon); color: #fff; }

.more-btn-wrapper { display: flex; justify-content: center; margin-top: 40px; }



/* ==========================================================================
   Footer
   ========================================================================== */
.site-footer{ background: var(--maroon-dark); color: rgba(243,230,208,.7); }
.footer-top{ padding:50px 0 40px; position:relative; background:url(../images/footer-bg.png) 100% 100% no-repeat; background-size: cover; }
.footer-grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.1fr 2fr; gap:30px; padding-right: 0px; }
.footer-brand .logo-text .name{ color:#fff; }
.footer-brand p{ margin:16px 0 20px; font-size:1rem; color: rgba(243,230,208,.6); }
.footer-social{ display:flex; gap:10px; }
.footer-social a{
  width:34px; height:34px; border-radius:50%; border:1px solid rgba(243,230,208,.25);
  display:flex; align-items:center; justify-content:center; transition: var(--transition);
}
.footer-social a:hover{ background:var(--gold); border-color:var(--gold); color:var(--maroon-dark); }
.footer-col h4{ color:#fff; font-size:1rem; margin-bottom:20px; letter-spacing:.03em; }
.footer-col ul li{ margin-bottom:11px; }
.footer-col ul li a{ font-size:1rem; transition: color var(--transition); }
.footer-col ul li a:hover{ color: var(--gold-light); }
.footer-contact li{ display:flex; align-items:flex-start; gap:10px; font-size:1rem; margin-bottom:14px; }
.footer-contact i{ color: var(--gold); margin-top:3px; }
.footer-tagline{
  position:relative;
  min-height:170px;
  border-radius: var(--radius);
  overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  text-align:center;
  align-self: flex-start;


  /* background:
    linear-gradient(180deg, rgba(30,6,12,.55), rgba(30,6,12,.8)),
    url('https://thumb.wikimedia.org/wikipedia/commons/thumb/6/65/Mehrangarh_fort_at_night_%28illuminated%29.jpg/1280px-Mehrangarh_fort_at_night_%28illuminated%29.jpg') center/cover no-repeat;
  border:1px solid rgba(201,161,90,.3); */
}
.footer-tagline img { opacity: 0.5;}
.footer-script{ font-family:var(--font-script); font-size:3rem; line-height:1; color: var(--gold-light); padding:0 14px; transform: rotate(-14deg); }

.footer-bottom{
  border-top:1px solid rgba(243,230,208,.12);
  padding:22px 80px 50px 80px;
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  font-size:1rem; background: url(../images/footer-botton-bg.png) 0 100% repeat-x; background-size:auto 65px;
}
.footer-bottom-links{ display:flex; gap:22px; }
.footer-bottom-links a:hover{ color: var(--gold-light); }

/* ==========================================================================
   Modal (Plan Your Wedding quick enquiry)
   ========================================================================== */
.modal-overlay{
  position:fixed; inset:0; background: rgba(30,6,12,.72);
  display:flex; align-items:center; justify-content:center;
  z-index:2000; opacity:0; visibility:hidden; transition: var(--transition);
  padding:20px;
}
.modal-overlay.open{ opacity:1; visibility:visible; }
.modal-box{
  background: linear-gradient(150deg,var(--maroon),var(--maroon-dark));
  border:1px solid var(--gold);
  border-radius: var(--radius);
  max-width:560px; width:100%;
  padding:44px 36px;
  position:relative;
  color:#fff;
  transform: translateY(20px); transition: var(--transition);
  max-height:92vh; overflow-y:auto;
}
.modal-overlay.open .modal-box{ transform:translateY(0); }
.modal-close{
  position:absolute; top:16px; right:16px; width:34px; height:34px; border-radius:50%;
  border:1px solid rgba(243,230,208,.3); background:transparent; color:#fff; font-size:1rem;
  display:flex; align-items:center; justify-content:center; transition: var(--transition);
}
.modal-close:hover{ background:var(--gold); color:var(--maroon-dark); border-color:var(--gold); }
.modal-box h3{ font-size:1.6rem; color:#fff; margin-bottom:6px; }
.modal-box .eyebrow{ padding-left:0; }
.modal-box .eyebrow::before{ display:none; }
.modal-box > p{ color: rgba(243,230,208,.7); margin-bottom:26px; font-size:1rem; }

/* ==========================================================================
   Back to top
   ========================================================================== */
.back-to-top{
  position:fixed; right:24px; bottom:24px; width:46px; height:46px; border-radius:50%;
  background: var(--maroon); color:#fff; border:1px solid var(--gold);
  display:flex; align-items:center; justify-content:center; font-size:1rem;
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition: var(--transition); z-index:900;
}
.back-to-top.show{ opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover{ background: var(--gold); color:var(--maroon-dark); }


.destinations .eyebrow, .about .eyebrow, .services .eyebrow, .gallery .eyebrow, .testimonials .eyebrow { color: #856a3a; }


.dest-arrow { display: none;}


/* ==========================================================================
   Responsive
   ========================================================================== */

   @media (max-width: 1600px){ 



   }

   @media (max-width: 1400px){
    
    .container{ padding:0 50px;}
    .footer-bottom{ padding: 22px 40px 50px 40px; }

    .contact-image img{  border-radius: 50% 50% 3% 3% / 30% 30% 3% 3%;  }


    .about-image { width: 370px;  height: 450px; }

    .about-image img {  max-height: 330px; }

    .dest-photo { height: 220px;}

    .about .container {     gap:20px; }

    /* .services-image img { max-width: 360px; } */

    .footer-bottom-links { padding: 0 50px 0 0;}

    

  }


@media (max-width: 1100px){
  .about .container{ grid-template-columns:1fr 1fr; }
  .about-quote{ grid-column:1 / -1; }
  .dest-layout{ grid-template-columns:1fr; gap:28px; }
  .dest-content{ max-width:640px; margin-bottom:8px; }
  .venue-grid{ grid-template-columns:1fr 1fr; }
  .venue-features{ grid-column:1 / -1; flex-direction:row; flex-wrap:wrap; }
  .venue-features li{ width:calc(33.33% - 14px); border-bottom:none; }
  .services-body{ grid-template-columns:1fr; }
  .services-image{ margin-top:28px; }
  /* .services-image img{ height:300px; } */
  .experience-grid{ grid-template-columns:1fr; }
  .gallery-layout{ grid-template-columns:1fr; gap:24px; }
  .gallery-content{ max-width:640px; }
  .testimonials-layout{ grid-template-columns:1fr; gap:24px; }
  .testimonials-content{ max-width:640px; }
  .footer-grid{ grid-template-columns:1fr 1fr 1fr; }

  .blog-container { max-width: 900px; }
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
  .section-heading h2 { font-size: 48px; }
}





@media (max-width: 860px){
  .topbar-taglines{ display:none; }
  /* .dest-border{ display:none; } */
  .destinations .container{ padding-left:24px; }
  .hero-slide-inner{ padding-bottom:60px; }
  .hero-features{ bottom:22px; gap:14px 0px; }
  /* .hero-slider .slick-dots{ bottom:150px; } */
  .nav-menu{
    position:fixed; top:0; right:0; height:100vh; width:280px; background:#fff;
    flex-direction:column; align-items:flex-start; padding:100px 30px 30px; gap:26px;
    box-shadow:-10px 0 30px rgba(0,0,0,.15);
    transform: translateX(100%); transition: transform var(--transition);
    z-index:1500;
  }
  .nav-menu.open{ transform:translateX(0); }
  .nav-toggle{ display:flex; }
  .nav-actions > .btn-primary{ display:none; }
  .nav-menu-cta{ display:block; }
  .hero h1{ font-size:2.5rem; }
  .hero h1 .script{ white-space:normal; }
  .about .container{ grid-template-columns:1fr; }
  .about-image img{ height:300px; }
  .venue-grid{ grid-template-columns:1fr; }
  .venue-photo img{ height:280px; }
  .venue-features li{ width:calc(50% - 10px); }
  .stats-row{ grid-template-columns:1fr 1fr; }
  .service-card{ width:calc(33.33% - 10px); }
  .experience-list{ grid-template-columns:1fr; }
  .contact-grid{ grid-template-columns:1fr; }
  .contact-image{ display:none; }
  .form-row{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .footer-tagline{ grid-column:1/-1; min-height:130px; }
  .container{ padding:0 15px;}
  .experience .container, .featured-venue .container { padding: 60px 15px;}

  .hero-feature {max-width: 50%;  width: 50%; padding: 0 35px; } 

  .blog-section { padding: 45px 15px 55px; }
  .section-heading { margin-bottom: 40px; }
  .section-heading h2 { font-size: 36px; }
  .heading-decoration .line { width: 75px; }
  .section-heading p { font-size: 14px; }
  .blog-grid { grid-template-columns: 1fr; gap: 24px; }
  .blog-image { height: 230px; }
  .blog-content h3 { min-height: auto; font-size: 19px; }

}
@media (max-width: 560px){
  .section-pad{ padding:40px 0; }
  .hero-slide-inner{ padding-top:40px; padding-bottom:60px; }
  .hero h1{ font-size:2rem; }
  .hero-side{ display:none; }
  .hero-features{ bottom:20px; gap:20px 0px; }
  .hero-slider .slick-dots{ bottom:12px; }
  .hero-arrow{ display:none; }
  .dest-photo{ height:260px; }
  .stats-row{ grid-template-columns:1fr 1fr; }
  .service-card{ width:calc(50% - 7px); }
  .services-image img{ height:220px; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .footer-bottom{ flex-direction:column; text-align:center; }
  .topbar .container{ flex-wrap:wrap; row-gap:6px; }
  .topbar-contact span.divider{ display:none; }
  .modal-box{ padding:34px 22px; }

  .topbar { display: none;}

  .section-heading h2 { font-size: 31px;}

  .heading-decoration .line { width: 55px;}
  .blog-image {  height: 210px;}
  .blog-content { padding: 18px 18px 22px;}
  
}






