@font-face{font-family:"Cormorant Garamond";src:url("assets/cormorant-garamond-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("assets/cormorant-garamond-latin-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("assets/cormorant-garamond-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/montserrat-latin-400-normal.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/montserrat-latin-500-normal.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Montserrat";src:url("assets/montserrat-latin-600-normal.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root { --ink:#192019; --forest:#1d2c22; --deep:#101a14; --cream:#f2ede3; --paper:#e9e4d9; --gold:#c5a268; --line:rgba(25,32,25,.22); --font-display:"Cormorant Garamond",Georgia,serif; --font-sans:"Montserrat",Arial,sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans); font-weight:400; }
a { color:inherit; text-decoration:none; }
.hero { min-height:100svh; display:grid; grid-template-columns:minmax(0,1.56fr) minmax(440px,.84fr); background:#ebe4d7; overflow:hidden; }
.hero-visual { min-height:100svh; position:relative; overflow:hidden; }
.hero-photo { position:absolute; inset:0; background:url('assets/palash-kothi-aerial.jpg') 50% center/cover no-repeat; animation:heroDrift 18s ease-in-out infinite alternate; }
.hero-photo:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,13,9,.48),transparent 32%); }
.photo-caption { position:absolute; z-index:1; left:38px; right:38px; bottom:27px; margin:0; display:flex; justify-content:space-between; color:white; font-size:8px; text-transform:uppercase; letter-spacing:.22em; }
.hero-panel { min-height:100svh; display:flex; flex-direction:column; position:relative; z-index:2; color:var(--ink); border-left:1px solid rgba(25,32,25,.18); }
.site-header { min-height:120px; padding:25px clamp(28px,3.5vw,56px); display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(25,32,25,.18); }
.jci-logo img { display:block; width:110px; height:auto; }
nav { display:flex; gap:25px; align-items:center; text-transform:uppercase; font-size:8px; letter-spacing:.2em; }
nav a { padding:9px 0; border-bottom:1px solid transparent; transition:.25s; }
nav a:hover,nav a:focus-visible { border-color:currentColor; }
.nav-book { padding:10px 13px; border:1px solid currentColor; }
.nav-book:hover,.nav-book:focus-visible { background:var(--forest); color:white; border-color:var(--forest); }
.hero-copy-block { width:100%; margin:auto 0; padding:55px clamp(32px,4.4vw,72px) 42px; animation:rise .85s ease-out both; }
.status { width:max-content; margin:0 0 42px; padding:9px 13px; border:1px solid rgba(25,32,25,.28); background:rgba(255,255,255,.23); font-size:8px; text-transform:uppercase; letter-spacing:.2em; }
.status i { display:inline-block; width:6px; height:6px; margin-right:10px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 5px rgba(197,162,104,.15); }
.eyebrow { margin:0 0 23px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.3em; }
.eyebrow.ink { color:#7f6845; }
h1,h2 { margin:0; font-family:var(--font-display); font-weight:500; letter-spacing:-.035em; }
h1 { font-size:clamp(42px,4vw,64px); line-height:.94; }
h1 span { display:block; margin-top:18px; font:600 9px/1 var(--font-sans); letter-spacing:.31em; text-transform:uppercase; color:#756d5f; }
.hero-tagline { margin:34px 0 0; font:500 clamp(22px,1.75vw,29px)/1.12 var(--font-display); color:#314235; }
.hero-intro { max-width:420px; margin:24px 0 32px; font-size:14px; line-height:1.7; color:#5a6158; }
.hero-actions { display:flex; align-items:center; gap:32px; }
.button { min-height:57px; display:inline-flex; align-items:center; justify-content:space-between; gap:28px; padding:0 26px; border:1px solid currentColor; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.2em; transition:.25s; }
.button:hover,.button:focus-visible { transform:translateY(-2px); }
.button-primary { background:var(--forest); color:white; border-color:var(--forest); }
.button-primary:hover,.button-primary:focus-visible { background:#314a39; border-color:#314a39; }
.text-link { padding:12px 0; border-bottom:1px solid rgba(25,32,25,.35); font-size:9px; text-transform:uppercase; letter-spacing:.17em; }
.text-link span { margin-left:15px; }
.hero-foot { padding:22px clamp(28px,3.5vw,56px); display:flex; justify-content:space-between; border-top:1px solid rgba(25,32,25,.18); color:#716d63; font-size:8px; text-transform:uppercase; letter-spacing:.19em; }
.introduction { padding:clamp(80px,9vw,130px) clamp(22px,7vw,118px); display:grid; grid-template-columns:.35fr 1fr .88fr; gap:5vw; align-items:start; }
.section-number { margin:9px 0 0; font-size:9px; text-transform:uppercase; letter-spacing:.23em; color:#756f64; }
h2 { font-size:clamp(36px,4.3vw,64px); line-height:1; }
.intro-copy { padding-top:39px; color:#50584f; font-size:15px; line-height:1.8; }
.intro-copy .lead { margin-top:0; font:500 27px/1.38 var(--font-display); color:var(--ink); }
.location { padding:clamp(80px,8vw,120px) clamp(22px,7vw,118px); background:var(--forest); color:var(--cream); display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; }
.section-number.light { color:#9aa298; margin-bottom:52px; }
.facts { border-top:1px solid rgba(242,237,227,.25); }
.facts article { padding:28px 0; border-bottom:1px solid rgba(242,237,227,.25); display:grid; grid-template-columns:.55fr 1fr; gap:35px; align-items:baseline; }
.facts strong { font:500 clamp(30px,3vw,46px)/1 var(--font-display); }
.facts p { margin:0; color:#bfc5bc; line-height:1.7; }
.experience { min-height:700px; display:grid; grid-template-columns:minmax(0,1.38fr) minmax(430px,.72fr); background:#152119; color:var(--cream); }
.experience-image { min-height:700px; background:url('assets/palash-kothi-safari-breakfast.jpg') 54% center/cover no-repeat; }
.experience-copy { padding:clamp(75px,9vw,135px) clamp(34px,5vw,80px); display:flex; flex-direction:column; justify-content:center; border-left:1px solid rgba(242,237,227,.16); }
.experience-copy .section-number { margin:0 0 auto; }
.experience-copy .eyebrow { margin-top:70px; color:#c6a66d; }
.experience-copy h2 { margin-bottom:32px; }
.experience-lead { margin:0 0 22px; font:500 25px/1.38 var(--font-display); color:#ddd8cc; }
.experience-copy>p:not(.section-number):not(.eyebrow):not(.experience-lead) { margin:0; max-width:460px; color:#aeb7ad; line-height:1.75; }
.experience-link { width:max-content; margin-top:42px; padding:12px 0; border-bottom:1px solid rgba(242,237,227,.45); font-size:9px; text-transform:uppercase; letter-spacing:.19em; }
.experience-link span { margin-left:20px; }
.contact { padding:clamp(80px,8vw,120px) clamp(22px,7vw,118px); background:#f0ece3; display:grid; grid-template-columns:.8fr 1.2fr; gap:9vw; }
.contact-heading .section-number { margin:0 0 70px; }
.contact-heading>p:last-child { max-width:440px; margin:30px 0 0; color:#555d54; line-height:1.7; }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); }
.contact-card { padding:30px 28px 33px 0; border-bottom:1px solid var(--line); }
.address-card { grid-column:1/-1; padding-right:0; }
.address-card address { max-width:660px; margin:0; color:#3f493f; font:500 clamp(20px,1.7vw,27px)/1.45 var(--font-display); font-style:normal; }
.booking-button { width:max-content; margin-top:28px; }
.contact-card:nth-child(3) { padding-left:28px; border-left:1px solid var(--line); }
.contact-label { margin:0 0 24px; font-size:9px; text-transform:uppercase; letter-spacing:.24em; color:#777266; }
.contact-card a:not(.button) { display:flex; justify-content:space-between; gap:15px; padding:10px 0; font:500 clamp(18px,1.45vw,23px)/1.22 var(--font-display); border-bottom:1px solid transparent; }
.contact-card a:not(.button):hover,.contact-card a:not(.button):focus-visible { border-color:var(--ink); }
.phone-list { display:grid; grid-template-columns:1fr; }
.whatsapp-card { grid-column:1/-1; padding-right:0; }
.whatsapp-card>p:nth-child(2) { color:#555d54; }
.whatsapp-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.whatsapp { background:#24643c; border-color:#24643c; color:white; }
.whatsapp:hover,.whatsapp:focus-visible { background:#194d2d; }
.whatsapp.secondary { background:transparent; color:#24643c; }
.whatsapp.secondary:hover,.whatsapp.secondary:focus-visible { background:#24643c; color:white; }
footer { background:var(--deep); color:#dcd8cd; padding:54px clamp(22px,5.3vw,88px); display:grid; grid-template-columns:1.2fr 1fr 1fr auto; align-items:end; gap:35px; font-size:9px; text-transform:uppercase; letter-spacing:.17em; }
.footer-jci-logo img { width:125px; filter:invert(1) grayscale(1) brightness(2); }
footer p { margin:0; color:#90998f; line-height:1.7; }
footer>a:not(.brand) { justify-self:center; }
.copyright { text-align:right; }
@keyframes heroDrift { to { transform:scale(1.025); } }
@keyframes rise { from { opacity:0; transform:translateY(16px); } }
@media (max-width:850px) {
  .hero { grid-template-columns:1fr; }
  .hero-visual { min-height:58vh; order:1; }
  .hero-panel { min-height:auto; order:2; }
  .hero-copy-block { padding-top:70px; padding-bottom:70px; }
  .introduction { grid-template-columns:1fr; gap:25px; }
  .intro-copy { padding-top:5px; }
  .location,.contact { grid-template-columns:1fr; gap:60px; }
  .experience { min-height:auto; grid-template-columns:1fr; }
  .experience-image { min-height:65vh; }
  .experience-copy { min-height:680px; border-left:0; border-top:1px solid rgba(242,237,227,.16); }
  footer { grid-template-columns:1fr 1fr; align-items:start; }
  footer>a:not(.brand) { justify-self:start; }
  .copyright { text-align:left; }
}
@media (max-width:580px) {
  .hero-visual { min-height:48vh; }
  .hero-photo { background-position:center; }
  .site-header { min-height:94px; }
  .jci-logo img { width:92px; }
  nav { gap:13px; }
  nav>a:not(.nav-book) { display:none; }
  h1 { font-size:42px; }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:18px; }
  .hero-foot span:last-child { display:none; }
  .facts article { grid-template-columns:1fr; gap:12px; }
  .experience-image { min-height:52vh; background-position:58% center; }
  .experience-copy { min-height:auto; padding-top:80px; padding-bottom:90px; }
  .experience-copy .section-number { margin-bottom:75px; }
  .contact-grid { grid-template-columns:1fr; }
  .contact-card:nth-child(3) { padding-left:0; border-left:0; }
  .whatsapp-card { grid-column:auto; }
  .whatsapp-actions { flex-direction:column; }
  .button.whatsapp { width:100%; }
  footer { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { animation:none!important; transition:none!important; } }
