/* ==========================================================================
   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:90px 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:15px 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{ background: var(--gold); color: var(--maroon-dark); }
.btn-gold:hover{ background: var(--gold-light); }
.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 .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.85rem;}

/* ==========================================================================
   Hero
   ========================================================================== */
.hero{
  position:relative;
  min-height:87vh;
  color:#fff;
  overflow:hidden;
  padding-bottom: 100px;
}
.hero-slider{ position:absolute; inset:0;  }
.hero-slider .slick-list, .hero-slider .slick-track{ height:100%; }
.hero-slider .slick-slide{ height:inherit !important; }
.hero-slider .slick-slide > div{ height:100%; }
.hero-slide{
  position:relative;
  height:100%;
  display:flex !important;
  align-items:center;
  overflow-y:auto;
  background-size:cover;
  background-position:center 30%;
  background-repeat:no-repeat;
}
.hero-slide-inner{ position:relative; z-index:2; padding-top:110px; padding-bottom:100px; }
.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:26px 0 34px; color: rgba(255,255,255,.82); font-size:1rem; }

.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; }
@media (max-width: 992px){
  .hero-arrow{ display:none; }
  
}

.hero-features{
  /* position:absolute; left:0; right:0; bottom:36px; z-index:6; */
  max-width:680px; margin:0px; padding:20px 0px;
  display:flex; gap:0px; flex-wrap:wrap; margin-top: 30px; border-radius: 10px;
  background: linear-gradient(135deg, #170001 0%, #35020C 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:26px; top:50%; transform:translateY(-50%) rotate(90deg);
  transform-origin:center; white-space:nowrap;
  font-family: var(--font-script); font-size:1.6rem; color: var(--gold-light);
  z-index:6; letter-spacing:.02em;
}

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


.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%;  }
.about-image img{
  border-radius: 47% 47% 3% 3%;
  width:100%; height:450px; 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; }
.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; }

.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.jpg") 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: -90px;
  padding: 120px 60px 140px 60px;
}
.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;
  font-size:clamp(11px,1.02vw,16px);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-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:16px; }
.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(30,6,12,.92), rgba(74,15,30,.88)), url('https://thumb.wikimedia.org/wikipedia/commons/thumb/1/10/Samode_Palace_courtyard_arcades_-_panoramio.jpg/1920px-Samode_Palace_courtyard_arcades_-_panoramio.jpg') center/cover fixed;
  color:#fff;
}
.featured-venue .container { padding: 0px; }
.venue-grid{ display:grid; grid-template-columns:1.1fr 1fr .9fr; gap:40px; align-items:center; }
.venue-photo img{ border-radius: var(--radius); height:440px; width:100%; object-fit:cover; }
.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; gap:18px; }
.venue-features li{ display:flex; align-items:center; gap:14px; font-size:1rem; padding-bottom:16px; border-bottom:1px solid rgba(243,230,208,.15); }
.venue-features li:last-child{ border-bottom:none; }
.venue-features i{ color:var(--gold-light); font-size:1rem; width:22px; text-align:center; }

/* ==========================================================================
   Services
   ========================================================================== */
.services { background: url(../images/services-bg.png) 100% -10px no-repeat; }
.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 .8fr; gap:24px; align-items:start; }
.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:50px; height:50px; 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::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: 420px;
  object-fit: cover;
  border: 10px solid #fff;
  box-shadow: 0 20px 45px rgba(74, 15, 30, .18);
  max-width: 400px;
  margin: 0 auto; }

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

.experience .container { padding: 0px;}
.experience-grid{ display:grid; grid-template-columns:1fr 1fr .7fr; gap:44px; align-items:center; }
.experience-photo img{ border-radius: var(--radius); height:420px; width:100%; object-fit:cover; }
.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:18px; }
.experience-list li{ display:flex; align-items:center; gap:14px; font-size:16px; padding-bottom:16px; border-bottom:1px solid rgba(243,230,208,.15); max-width: 380px; }
.experience-list li:last-child{ border-bottom:none; padding-bottom:0; }
.experience-list i{ color:var(--gold-light); font-size:1rem; width:20px; }

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

/* ==========================================================================
   Gallery
   ========================================================================== */
.gallery-layout{ display:grid; grid-template-columns:300px 1fr; gap:36px; align-items:center; }
.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:220px; 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); }

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

.testimonials { position:relative; background: #fdf5e5; padding-top:20px; overflow: hidden; }

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

.testimonials-layout{ display:grid; grid-template-columns:300px 1fr; gap:36px; align-items:center; }
.testimonials-slider{ min-width:0; }
.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%;
}
.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; }

/* 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:50px; 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; }

/* ==========================================================================
   Footer
   ========================================================================== */
.site-footer{ background: var(--maroon-dark); color: rgba(243,230,208,.7); }
.footer-top{ padding:50px 0 40px; position:relative; }
.footer-grid{ display:grid; grid-template-columns:1.5fr 1fr 1fr 1.1fr 1.1fr 2fr; gap:30px; }
.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-end;
  margin-bottom: -40px;
  /* 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:1.5rem; line-height:1.3; color: var(--gold-light); padding:0 14px; }
.footer-bottom{
  border-top:1px solid rgba(243,230,208,.12);
  padding:22px 0;
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  font-size:1rem;
}
.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; }



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

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


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

   }

  }


@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; }
  .dest-grid{ grid-template-columns:repeat(3,1fr); }
  .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; }
}
@media (max-width: 860px){
  .topbar-taglines{ display:none; }
  /* .dest-border{ display:none; } */
  .destinations .container{ padding-left:24px; }
  .hero-slide-inner{ padding-bottom:190px; }
  .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; }
  .dest-grid{ grid-template-columns:repeat(2,1fr); }
  .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; } 

}
@media (max-width: 560px){
  .section-pad{ padding:60px 0; }
  .hero{ min-height:700px; }
  .hero-slide{ min-height:640px; }
  .hero-slide-inner{ padding-top:40px; padding-bottom:120px; }
  .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-grid{ grid-template-columns:1fr 1fr; }
  .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;}
  
}
