/* =========================================================
   My Jungle Trip — clone rebuilt from the live myjungletrip.in
   bundle (fonts, colours, layout & copy taken from source).
   Build: Digiworld Infotech & Technologies
   ========================================================= */

:root{
  /* Tailwind amber scale (site's brand ramp) */
  --amber-50:#fffbeb;  --amber-100:#fef3c7; --amber-200:#fde68a; --amber-300:#fcd34d;
  --amber-400:#fbbf24; --amber-500:#f59e0b; --amber-600:#d97706; --amber-700:#b45309;
  --amber-800:#92400e; --amber-900:#78350f;
  --orange-500:#f97316; --orange-600:#ea580c;
  --slate-600:#475569; --slate-50:#f8fafc;
  --gray-50:#f9fafb; --gray-100:#f3f4f6; --gray-200:#e5e7eb; --gray-300:#d1d5db;
  --gray-600:#4b5563; --gray-700:#374151; --gray-800:#1f2937; --gray-900:#111827;
  --green:#14ff72;             /* hero accent (with alpha) */
  --lightbrown:#f7f1dd;
  --brown:#3d3931;
  --red-600:#dc2626;

  --font-inter:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --font-rancho:'Rancho','Segoe Print',cursive;
  --font-roadrage:'Road Rage','Arial Black',sans-serif;
  --font-tangerine:'Tangerine','Segoe Script',cursive;
  --font-dmserif:'DM Serif Text','Georgia',serif;

  --maxw:1280px;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:var(--font-inter);color:var(--brown);background:#fff;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{margin:0;font-weight:600;line-height:1.2;color:var(--gray-800)}
h1,h2,h3,h4,p,li,span{overflow-wrap:break-word}
p{margin:0}
button{font-family:inherit}
[hidden]{display:none!important}
::selection{background:var(--amber-600);color:#fff}

.font-inter{font-family:var(--font-inter)}
.font-rancho{font-family:var(--font-rancho)}
.font-roadRage{font-family:var(--font-roadrage)}
.font-tangerine{font-family:var(--font-tangerine)}
.font-serif{font-family:var(--font-dmserif)}

.container{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* =========================================================
   HEADER  (fixed nav + fixed hanging logo)
   ========================================================= */
/* logo: fixed left-5 sm:left-9 md:left-14 lg:left-20, w-[80px] sm:w-[90px] md:w-[100px] lg:w-[120px] */
.mjt-logo{position:fixed;left:20px;top:0;z-index:50}
.mjt-logo img{width:80px;height:auto;display:block}
@media(min-width:640px){.mjt-logo{left:36px}.mjt-logo img{width:90px}}
@media(min-width:768px){.mjt-logo{left:56px}.mjt-logo img{width:100px}}
@media(min-width:1024px){.mjt-logo{left:80px}.mjt-logo img{width:120px}}

.hdr{position:fixed;left:0;right:0;top:0;z-index:40;width:100%}
/* nav row: relative flex items-center border-b border-gray-200 justify-between bg-white px-4 md:px-8 lg:px-12 py-3 shadow-sm */
.nav{
  position:relative;display:flex;align-items:center;z-index:30;justify-content:space-between;
  border-bottom:1px solid var(--gray-200);background:#fff;padding:12px 16px;
  box-shadow:0 1px 2px rgba(0,0,0,.05);transition:background .3s;
}
@media(min-width:768px){.nav{padding-left:32px;padding-right:32px}}
@media(min-width:1024px){.nav{padding-left:48px;padding-right:48px}}
.hdr.scrolled .nav{background:rgba(255,255,255,.85);backdrop-filter:blur(10px)}

/* invisible w-40 spacer that reserves room for the fixed logo */
.nav__spacer{visibility:hidden;width:160px;flex:none}

/* hidden md:flex md:items-center ms-auto font-inter */
.nav__links{display:none;align-items:center;margin-left:auto;gap:0;font-family:var(--font-inter)}
@media(min-width:768px){.nav__links{display:flex}}

.nav a,.nav .safari-btn{
  font-size:.875rem;line-height:1.25rem;color:var(--gray-600);padding:8px 12px;border-radius:8px;white-space:nowrap;
  transition:color .2s,background .2s;display:inline-flex;align-items:center;gap:4px;background:none;border:0;cursor:pointer;
}
.nav a:hover,.nav .safari-btn:hover{color:var(--amber-600)}
.nav a.active{color:#fff;font-weight:600;background:var(--amber-800)}
.nav__safari{position:relative}
.nav__safari .caret{width:16px;height:16px;margin-left:4px}
.nav__drop{
  position:absolute;top:calc(100% + 8px);left:0;width:200px;background:#fff;border:1px solid var(--gray-200);
  border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.12);overflow:hidden;
  opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s;
}
.nav__safari:hover .nav__drop,.nav__safari:focus-within .nav__drop{opacity:1;visibility:visible;transform:none}
.nav__drop a{display:block;padding:8px 16px;border-radius:0;font-size:.875rem;color:var(--gray-700)}
.nav__drop a:hover{background:var(--amber-50);color:var(--amber-600)}
.nav__divider{display:none;width:1px;height:24px;background:var(--gray-300);margin:0 12px;flex:none}
@media(min-width:768px){.nav__divider{display:block}}
.nav__cta{display:none;align-items:center;gap:12px}
@media(min-width:768px){.nav__cta{display:flex}}
/* border border-amber-800 rounded-full p-2 pl-3 pr-3 text-sm font-semibold */
.btn-reserve{
  display:inline-flex;align-items:center;gap:4px;border:1px solid var(--amber-800);color:var(--amber-800);
  border-radius:9999px;padding:8px 12px;font-size:.875rem;line-height:1.25rem;font-weight:600;background:#fff;cursor:pointer;transition:.2s;
}
.btn-reserve:hover{background:var(--amber-50)}
.btn-reserve svg{width:16px;height:16px}
/* rounded-full bg-amber-800 px-3.5 py-2.5 text-sm font-semibold */
.btn-phone{
  display:inline-flex;align-items:center;background:var(--amber-800);color:#fff;font-weight:600;font-size:.875rem;line-height:1.25rem;
  border-radius:9999px;padding:10px 14px;white-space:nowrap;transition:background .2s;
}
.btn-phone:hover{background:var(--amber-500)}
.nav .nav__m-reserve{display:none}
@media(max-width:767px){.nav .nav__m-reserve{display:block}}
/* md:hidden inline-flex items-center justify-center size-9 rounded-lg border border-neutral-200 */
.nav__toggle{
  display:flex;align-items:center;justify-content:center;background:none;
  width:36px;height:36px;border:1px solid #e5e5e5;border-radius:8px;padding:0;cursor:pointer;flex:none;
}
@media(min-width:768px){.nav__toggle{display:none}}
.nav__toggle span{display:block;width:16px;height:2px;background:var(--gray-600);border-radius:2px;transition:.25s}
.nav__toggle span+span{margin-top:3px}
.nav.open .nav__toggle span:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav.open .nav__toggle span:nth-child(2){opacity:0}
.nav.open .nav__toggle span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

@media(max-width:767px){
  .nav__links{
    position:absolute;left:16px;right:16px;top:calc(100% + 8px);flex-direction:column;align-items:stretch;gap:2px;
    background:#fff;padding:10px 14px 18px;box-shadow:0 14px 30px rgba(0,0,0,.14);border-radius:12px;
    transform:translateY(-8px);opacity:0;visibility:hidden;transition:transform .25s,opacity .25s;max-height:calc(100vh - 100px);overflow-y:auto;
  }
  .nav.open .nav__links{display:flex;transform:none;opacity:1;visibility:visible}
  .nav__links a,.nav__links .safari-btn{padding:12px 10px;border-bottom:1px solid #f1efe6;border-radius:0;font-size:1rem}
  .nav__drop{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;width:100%;padding-left:14px}
}

/* the fixed header overlays content everywhere (incl. the 100vh hero) — each
   inner page supplies its own top clearance below, matching the live site;
   no global offset here. */
.page-body{padding-top:0}

/* =========================================================
   HERO  (CSS carousel — from source app.css)
   ========================================================= */
.hero-outer{overflow:hidden;position:relative}
.carousel{width:100%;height:100vh;overflow:hidden;position:relative;z-index:10}
.hero-container{padding-top:2rem;position:relative;z-index:10}
.carousel .list{width:100%;height:100%;position:relative;display:flex}
.carousel .list .item{
  width:120px;height:180px;position:absolute;top:90%;transform:translateY(-70%);left:70%;
  border-radius:15px;box-shadow:0 15px 30px #0000004d;background-position:50% 50%;background-size:cover;z-index:100;transition:1s;
}
.carousel .list .item:nth-child(1),.carousel .list .item:nth-child(2){top:0;left:0;transform:translate(0);border-radius:0;width:100%;height:100%}
.carousel .list .item:nth-child(3){left:67%}
.carousel .list .item:nth-child(4){left:calc(67% + 140px)}
.carousel .list .item:nth-child(n+5){display:none}
.list .item .content{position:absolute;top:50%;left:100px;transform:translateY(-50%);width:440px;max-width:80vw;text-align:left;color:#fff;display:none;z-index:2}
.list .item:nth-child(2) .content{display:block}
.content .title{font-family:var(--font-tangerine);font-size:clamp(2.4rem,4.5vw,4rem);color:#14ff72cb;font-weight:700;line-height:1;opacity:0;animation:hAnim 1s ease-in-out .3s 1 forwards}
.content .name{font-family:var(--font-roadrage);font-size:clamp(3rem,6vw,5rem);text-transform:uppercase;font-weight:400;line-height:1;opacity:0;animation:hAnim 1s ease-in-out .6s 1 forwards}
.content .des{margin-top:10px;margin-bottom:20px;font-size:clamp(.9rem,1.5vw,1.125rem);margin-left:5px;opacity:0;animation:hAnim 1s ease-in-out .9s 1 forwards}
.content .btn{margin-left:5px;opacity:0;animation:hAnim 1s ease-in-out 1.2s 1 forwards}
.content .btn button{padding:clamp(.5rem,1vw,.75rem) clamp(1rem,2vw,1.4rem);font-size:clamp(.8rem,1.25vw,1rem);border:2px solid #fff;border-radius:8px;cursor:pointer;background:transparent;color:#fff;font-weight:600;transition:all .3s}
.content .btn button:hover{background:#fff;color:#000}
@keyframes hAnim{0%{opacity:0;transform:translateY(100px);filter:blur(33px)}to{opacity:1;transform:translate(0);filter:blur(0)}}
.hero-arrows{position:absolute;top:80%;left:7%;z-index:100;display:flex;gap:10px;align-items:center}
.hero-arrows button{width:clamp(34px,3vw,48px);height:clamp(34px,3vw,48px);border-radius:50%;background:#14ff72cb;color:#fff;border:0;font-size:clamp(14px,1.5vw,16px);font-weight:700;transition:.4s;cursor:pointer}
.hero-arrows button:hover{background:#fff;color:#000}
.carousel .timeRunning{position:absolute;z-index:1000;width:0;height:4px;background:#14ff72cb;left:0;top:0;animation:runningTime 7s linear 1 forwards}
@keyframes runningTime{0%{width:0}to{width:100%}}
@media(max-width:1200px){.list .item .content{left:80px;width:360px}}
@media(max-width:992px){.list .item .content{left:60px;width:300px}}
@media(max-width:768px){
  .carousel{height:86vh}
  .list .item .content{left:34px;width:80vw}
  .carousel .list .item{width:96px;height:140px}
  .carousel .list .item:nth-child(3){left:60%}
  .carousel .list .item:nth-child(4){left:calc(60% + 108px)}
  .hero-arrows{top:auto;bottom:26px;left:34px}
}

/* =========================================================
   SECTION HEADINGS (flank lines + rancho)
   ========================================================= */
.sec-flank{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:8px}
.sec-flank::before,.sec-flank::after{content:"";height:1px;background:var(--amber-400);flex:0 0 100px;max-width:100px}
@media(max-width:640px){.sec-flank::before,.sec-flank::after{display:none}}
.sec-flank h1,.sec-flank h2{font-family:var(--font-rancho);font-weight:400;color:var(--amber-800);font-size:clamp(1.9rem,4vw,2.4rem);text-align:center}
.sec-sub{color:var(--slate-600);font-size:clamp(.9rem,2vw,1.05rem);text-align:center;max-width:960px;margin:8px auto 0}
.grow-line{height:2px;background:var(--amber-800);border-radius:9999px;width:0;margin:12px auto 0;animation:growLine 1.2s ease forwards}
@keyframes growLine{to{width:120px}}
.reveal:not(.in) .grow-line{animation:none}

/* =========================================================
   HOME · ABOUT US
   ========================================================= */
.about-sec{position:relative;padding:64px 0;background-size:cover;background-position:center}
.about-grid{display:flex;flex-wrap:wrap;align-items:center;gap:32px}
.about-grid>*{flex:1 1 380px;min-width:0}
.about-photo{background:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px;max-width:560px;margin:0 auto}
.about-photo img{width:100%;max-height:400px;object-fit:cover;border-radius:6px}
.about-h{font-family:var(--font-rancho);font-weight:400;font-size:clamp(1.9rem,3.6vw,2.4rem);margin-bottom:8px}
.about-h .a{color:var(--gray-900)}.about-h .b{color:var(--amber-800)}
.about-text{color:var(--brown);font-size:.9rem;line-height:1.75}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
@media(max-width:900px){.feat-grid{grid-template-columns:repeat(2,1fr)}}
.feat{background:#f4ede0;border:1px solid var(--gray-200);border-radius:12px;padding:14px 10px;text-align:center;transition:transform .2s}
.feat:hover{transform:translateY(-5px)}
.feat__ic{width:40px;height:40px;border-radius:9999px;background:rgba(251,191,36,.32);display:grid;place-items:center;margin:0 auto 8px}
.feat__ic svg{width:22px;height:22px;color:var(--amber-800)}
.feat h3{font-family:var(--font-inter);font-weight:700;color:var(--amber-900);font-size:.8rem;line-height:1.3}

/* =========================================================
   HOME · REASONS TO CHOOSE
   ========================================================= */
.reasons-wrap{background:#fff;padding:64px 16px}
.reasons-head{text-align:center;margin-bottom:36px}
.reasons-head p{font-family:var(--font-rancho);color:var(--amber-800);font-size:1.1rem;letter-spacing:.14em;text-transform:uppercase}
.reasons-head h2{font-family:var(--font-rancho);font-weight:400;color:var(--gray-800);font-size:clamp(2.2rem,5vw,3rem)}
.reasons-grid{display:grid;grid-template-columns:repeat(4,1fr);max-width:1120px;margin:0 auto;overflow:hidden}
@media(max-width:900px){.reasons-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.reasons-grid{grid-template-columns:1fr}}
.reason{padding:24px}
.reason:nth-child(1){background:var(--amber-50)}
.reason:nth-child(2){background:var(--amber-100)}
.reason:nth-child(3){background:var(--amber-200)}
.reason:nth-child(4){background:var(--amber-300)}
.reason svg{width:24px;height:24px;color:var(--amber-800);margin-bottom:14px}
.reason h3{font-size:1.125rem;font-weight:600;color:var(--gray-800);margin-bottom:8px}
.reason p{font-size:.875rem;color:var(--gray-700)}

/* =========================================================
   HOME · EXPLORE
   ========================================================= */
.explore-sec{position:relative;padding:60px 0;background-size:cover;background-position:center;background-repeat:no-repeat}
.explore-sec h2{font-family:var(--font-rancho);font-weight:400;color:var(--gray-800);font-size:clamp(2rem,5vw,3rem);text-align:center;margin-bottom:8px}
.explore-sec p{color:var(--slate-600);font-size:clamp(.9rem,2vw,1.125rem);text-align:center;max-width:900px;margin:20px auto 0}

/* =========================================================
   HOME · GLIMPSE (bg-lightbrown, drag carousel)
   ========================================================= */
.glimpse-sec{padding:48px 0;background:var(--lightbrown)}
.carousel-row{position:relative}
.carousel-row .track{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 40px}
.carousel-row .track::-webkit-scrollbar{display:none}
.carousel-row .track>div{flex:0 0 25%;padding:0 8px;scroll-snap-align:center}
@media(max-width:1024px){.carousel-row .track>div{flex:0 0 50%}}
@media(max-width:768px){.carousel-row .track>div{flex:0 0 100%}}
.carousel-row .card{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.08);height:16rem;cursor:pointer}
.carousel-row .card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.carousel-row .card:hover img{transform:scale(1.05)}
.c-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:9999px;background:#fff;border:0;box-shadow:0 6px 16px rgba(0,0,0,.14);cursor:pointer;display:grid;place-items:center;color:var(--gray-700);z-index:10}
.c-arrow.prev{left:0}.c-arrow.next{right:0}
.c-dots{display:flex;gap:8px;justify-content:center;margin-top:24px}
.c-dots i{width:8px;height:8px;border-radius:9999px;background:#d8cba7}
.c-dots i.on{background:var(--amber-700);width:22px;border-radius:9999px}

/* =========================================================
   HOME · RELAX
   ========================================================= */
.relax-sec{padding:56px 0;background-size:cover;background-position:center}
.relax-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:1152px;margin:0 auto;align-items:center}
@media(max-width:1024px){.relax-grid{grid-template-columns:1fr}}
.relax-grid h3{font-family:var(--font-rancho);font-weight:400;color:var(--amber-800);font-size:clamp(2.2rem,5vw,3.5rem);margin-bottom:14px;line-height:1.05}
.relax-grid p{color:var(--brown);font-size:.9rem;line-height:1.7}
.relax-grid hr{border:0;border-top:1px solid var(--amber-300);margin:18px 0 10px}
.link-arrow{display:inline-flex;align-items:center;gap:8px;color:var(--amber-700);font-weight:500;font-size:1.05rem;transition:color .2s;background:none;border:0;cursor:pointer;padding:0;font-family:var(--font-inter)}
.link-arrow:hover{color:var(--amber-600)}
.link-arrow svg{width:20px;height:20px;transition:transform .2s}
.link-arrow:hover svg{transform:translateX(4px)}

/* image carousel with caption on amber card (about page + relax) */
.cap-carousel{background:var(--amber-800);border-radius:8px;padding:8px;color:#fff}
.cap-carousel .frame{position:relative;overflow:hidden;border-radius:8px;height:350px;border:2px solid var(--amber-600)}
.cap-carousel .frame img{width:100%;height:100%;object-fit:cover}
.cap-carousel .frame button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.3);color:#fff;border:0;border-radius:9999px;width:34px;height:34px;cursor:pointer;font-size:1rem}
.cap-carousel .frame button.prev{left:8px}
.cap-carousel .frame button.next{right:8px}
.cap-carousel .cap{text-align:center;font-size:.9rem;padding:10px 6px 4px;min-height:44px}
@media(max-width:640px){.cap-carousel .frame{height:220px}}

/* =========================================================
   HOME · YOUTUBE
   ========================================================= */
.yt-sec{padding:40px 16px;display:flex;flex-direction:column;align-items:center}
.yt-sec .lbl{color:var(--red-600);font-weight:500;margin-bottom:8px}
.yt-frame{width:100%;max-width:56rem;background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:4px;transition:box-shadow .3s}
.yt-frame:hover{box-shadow:0 20px 40px rgba(0,0,0,.12)}
.yt-frame .ratio{position:relative;width:100%;padding-top:56.25%}
.yt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:12px}

/* =========================================================
   HOME · FEEDBACK
   ========================================================= */
.fb-sec{padding:64px 0;background-size:cover;background-position:center}
.fb-sec h2{font-family:var(--font-rancho);font-weight:400;color:var(--gray-800);font-size:clamp(2.2rem,5vw,3rem);text-align:center;margin-bottom:28px}
.fb-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:960px;margin:0 auto}
@media(max-width:820px){.fb-grid{grid-template-columns:1fr}}
.fb{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:26px 28px;box-shadow:0 4px 16px rgba(0,0,0,.05);text-align:center}
.fb__who{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:6px}
.fb__ava{width:38px;height:38px;border-radius:9999px;background:#eef2f7;color:#9aa6b2;display:grid;place-items:center}
.fb__ava svg{width:20px;height:20px}
.fb__who b{color:var(--gray-900);font-weight:600}
.fb__stars{color:#f5b301;letter-spacing:2px;margin:4px 0 12px}
.fb p{font-family:var(--font-dmserif);font-style:italic;color:#5b6472;font-size:.95rem;margin-bottom:12px}
.fb__g{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--gray-700)}
.fb__g svg{width:18px;height:18px}

/* =========================================================
   FOOTER
   ========================================================= */
.ftr{background:#2e2a1c;background-size:cover;background-position:center;color:#d1d5db;font-family:var(--font-inter)}
.ftr__top{padding:48px 0}
.ftr__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
@media(max-width:768px){.ftr__grid{grid-template-columns:1fr 1fr;text-align:center}}
@media(max-width:480px){.ftr__grid{grid-template-columns:1fr}}
.ftr__logo img{width:120px;height:80px;object-fit:contain;margin:0 auto}
@media(min-width:769px){.ftr__logo img{margin:0}}
.ftr__social{display:flex;gap:16px;margin-top:16px;justify-content:center}
@media(min-width:769px){.ftr__social{justify-content:flex-start}}
.ftr__social a{color:#d1d5db;transition:color .2s}
.ftr__social a:hover{color:#ef4444}
.ftr__social svg{width:20px;height:20px}
.ftr h4{color:#fff;font-size:1.125rem;font-weight:600;margin-bottom:16px}
.ftr ul{list-style:none;margin:0;padding:0}
.ftr li{margin-bottom:10px}
.ftr a{color:#d1d5db;transition:color .2s}
.ftr a:hover{color:#ef4444}
.ftr__contact a{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.ftr__contact svg{width:16px;height:16px;flex:none}
.ftr__bar{border-top:1px solid rgba(255,255,255,.12);padding:14px 0;font-size:.85rem}
.ftr__bar .container{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}
.ftr__bar a{color:var(--amber-400);font-weight:600}
.ftr__bar a:hover{text-decoration:underline;color:var(--amber-400)}
@media(max-width:600px){.ftr__bar .container{justify-content:center;text-align:center}}

/* =========================================================
   FLOATING BUTTONS
   ========================================================= */
.floats{position:fixed;bottom:20px;right:20px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.floats a{padding:8px;transition:transform .2s}
.floats a:hover{transform:scale(1.06)}
.floats img{width:40px;height:40px}

/* =========================================================
   MODAL (Book Your Adventure)
   ========================================================= */
.modal{position:fixed;inset:0;z-index:60;display:none;padding:20px;overflow-y:auto;background:rgba(0,0,0,.5)}
.modal.open{display:block}
.modal__box{background:#fff;max-width:640px;margin:24px auto;border-radius:12px;box-shadow:0 24px 60px rgba(0,0,0,.3);padding:20px;position:relative}
.modal__x{position:absolute;right:12px;top:12px;width:30px;height:30px;border:0;background:rgba(255,255,255,.8);border-radius:9999px;font-size:1.25rem;color:var(--gray-600);cursor:pointer;line-height:1}
.modal__box h2{text-align:center;font-size:1.125rem;font-weight:700;color:var(--amber-800);margin-bottom:12px}
.modal__box .rule{border:0;border-top:1px solid var(--gray-200);margin-bottom:20px}

/* =========================================================
   FORMS  (contact + modal)
   ========================================================= */
form.lead{display:flex;flex-direction:column;gap:12px}
form.lead.wide{gap:16px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
form.lead.wide .row2{gap:16px}
@media(max-width:640px){.row2{grid-template-columns:1fr}}
.fld{display:flex;flex-direction:column}
.fld label{font-size:.75rem;font-weight:500;color:var(--gray-800);margin-bottom:4px;font-family:var(--font-inter)}
.fld label .req{color:#ef4444}
.fld input,.fld select,.fld textarea{
  width:100%;font-family:var(--font-inter);font-size:.8rem;color:var(--gray-900);
  padding:8px;border:1px solid var(--gray-300);border-radius:6px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.04);
  transition:border-color .15s,box-shadow .15s;
}
form.lead.wide .fld input,form.lead.wide .fld select,form.lead.wide .fld textarea{font-size:.85rem;padding:9px 10px}
.fld textarea{resize:vertical;min-height:52px}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:0;border-color:var(--orange-500);box-shadow:0 0 0 2px rgba(249,115,22,.25)}
.modal .fld input:focus,.modal .fld select:focus,.modal .fld textarea:focus{border-color:var(--amber-500);box-shadow:0 0 0 2px rgba(245,158,11,.3)}
.fld input.bad,.fld select.bad,.fld textarea.bad{border-color:#ef4444;box-shadow:0 0 0 2px rgba(239,68,68,.2)}
.fld .msg{display:none;color:var(--red-600);font-size:.72rem;margin-top:3px}
.fld.show .msg{display:block}
.numbtns{display:flex;flex-wrap:wrap;gap:4px}
.numbtns button{padding:5px 10px;font-size:.75rem;border-radius:6px;border:0;background:var(--gray-100);color:var(--gray-700);cursor:pointer;transition:.15s}
.numbtns button.on{background:var(--orange-500);color:#fff}
.consent{display:flex;align-items:flex-start;gap:8px;font-size:.8rem;color:var(--gray-700)}
.consent input{width:15px;height:15px;margin-top:3px;accent-color:var(--amber-600);flex:none}
.consent a{color:var(--amber-700);font-weight:600;text-decoration:underline}
.form-actions{display:flex;gap:10px;justify-content:flex-end}
.form-actions button{border-radius:6px;padding:9px 18px;font-size:.85rem;font-weight:600;border:0;cursor:pointer}
.btn-clear{background:var(--gray-100);color:var(--gray-700)}
.btn-clear:hover{background:var(--gray-200)}
.btn-submit{background:var(--amber-600);color:#fff}
.btn-submit:hover{background:var(--amber-700)}
.form-status{margin-top:6px;padding:10px 12px;border-radius:8px;font-size:.85rem;display:none}
.form-status.ok{display:block;background:#ecfdf3;border:1px solid #b6e8c8;color:#166534}
.form-status.err{display:block;background:#fef2f2;border:1px solid #f3c9c9;color:#991b1b}
.form-note{font-size:.72rem;color:#9ca3af}

/* =========================================================
   CONTACT PAGE
   ========================================================= */
/* live: bg-gray-50 py-8 (32px) wrapping a div with mt-20 (80px) → 112px top */
.contact-page{background:var(--gray-50);padding:32px 0}
.contact-page .contact-wrap{margin-top:80px}
.contact-wrap{display:flex;flex-wrap:wrap;gap:24px;max-width:1152px;margin:0 auto;padding:0 16px;align-items:flex-start}
.contact-info{flex:1 1 320px;background:#fff;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.06);overflow:hidden}
.contact-info>img{width:100%;height:200px;object-fit:cover}
.contact-info__body{padding:20px}
.contact-info h3{font-size:1.1rem;font-weight:700;color:var(--gray-900);margin-bottom:14px}
.ci-row{display:flex;gap:10px;padding:10px 0;border-bottom:1px dashed var(--gray-200)}
.ci-row:last-of-type{border-bottom:0}
.ci-row .ic{flex:none;width:32px;height:32px;border-radius:9999px;background:#ffedd5;color:#ea580c;display:grid;place-items:center}
.ci-row .ic svg{width:16px;height:16px}
.ci-row small{display:block;font-size:.7rem;color:#6b7280}
.ci-row>div{min-width:0}
.ci-row .nm{font-size:.85rem;color:var(--gray-900)}
.ci-row .ad{font-size:.72rem;color:#6b7280}
.ci-row a{font-size:.85rem;color:var(--gray-900)}
.ci-row a:hover{color:#ea580c}
.why-us{padding-top:18px}
.why-us h4{font-size:1rem;font-weight:600;color:var(--gray-900);margin-bottom:6px}
.why-us ul{list-style:none;margin:0;padding:0}
.why-us li{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--gray-600);padding:3px 0}
.why-us li svg{width:12px;height:12px;color:#22c55e;flex:none}
.contact-form-card{flex:1 1 480px;background:#fff;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.06);overflow:hidden}
.contact-form-card>div{padding:20px 24px}
.contact-form-card h3{font-size:1.1rem;font-weight:600;color:var(--gray-900);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--gray-200)}

/* =========================================================
   INTERIOR PAGES (about / pench / tadoba / gallery / testimonials)
   ========================================================= */
/* about / pench / tadoba: bg-white py-2 sm:py-16 lg:py-2, heading mt-[100px] */
.page-head{text-align:center;padding:8px 0 20px;margin-top:100px}
@media(min-width:640px){.page-head{padding-top:64px}}
@media(min-width:1024px){.page-head{padding-top:8px}}
.page-head .sec-flank{margin-top:0}
.page-head p{color:var(--slate-600);font-size:clamp(.9rem,2vw,1.05rem);max-width:960px;margin:14px auto 0;padding:0 16px}

/* gallery: max-w-6xl mx-auto px-4 py-8, heading mt-[30px] */
.gal-head{text-align:center;padding:32px 16px 20px;margin-top:30px;max-width:1152px;margin-left:auto;margin-right:auto}
.gal-head p{color:var(--slate-600);font-size:clamp(.9rem,2vw,1.05rem);max-width:960px;margin:14px auto 0}

/* testimonials: outer mt-10 mb-10, heading mt-[50px] */
.tst-head{text-align:center;margin-top:90px;padding:0 16px 20px}
.tst-head p{color:var(--slate-600);font-size:clamp(.9rem,2vw,1.05rem);max-width:960px;margin:14px auto 0}

.panel-cream{max-width:1216px;margin:32px auto 48px;background:var(--lightbrown);border-radius:12px;overflow:hidden}
.panel-cream .split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
@media(max-width:1024px){.panel-cream .split{grid-template-columns:1fr}}
.panel-cream .txt{padding:32px}
.panel-cream .txt h1,.panel-cream .txt h2.head{font-family:var(--font-rancho);font-weight:400;color:var(--amber-800);font-size:clamp(1.9rem,4vw,2.3rem);margin-bottom:20px;text-align:center}
@media(min-width:641px){.panel-cream .txt h1,.panel-cream .txt h2.head{text-align:left}}
.panel-cream .txt p{color:var(--gray-600);font-size:.85rem;line-height:1.7;margin-bottom:14px}
.panel-cream .media{position:relative;min-height:320px}
.panel-cream .media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(max-width:1024px){.panel-cream .media{order:-1;min-height:260px}}
.vm-grid{gap:0}
@media(max-width:700px){.vm-grid{grid-template-columns:1fr!important}}
.jse-grid{align-items:start}
@media(max-width:900px){.jse-grid{grid-template-columns:1fr!important}}
.check-rows{margin:16px 0;display:flex;flex-direction:column;gap:8px;font-weight:600;font-family:var(--font-inter)}
.check-rows div{display:flex;align-items:flex-start;gap:8px}
.check-rows svg{width:20px;height:20px;color:var(--amber-600);flex:none;margin-top:2px}
.check-rows span{color:var(--gray-700)}
.offer-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:560px){.offer-2{grid-template-columns:1fr}}
.offer-2 .o{display:flex;gap:14px}
.offer-2 .o svg{width:22px;height:22px;color:var(--amber-600);flex:none;margin-top:2px}
.offer-2 .o h3{font-size:1rem;font-weight:600;color:var(--gray-800);margin-bottom:3px}
.offer-2 .o p{font-size:.75rem;color:#6b7280;margin:0}
.cream-rule{border:0;border-top:1px solid var(--amber-300);margin:18px 0}

/* white bordered panel (why-choose) */
.panel-white{max-width:1216px;margin:48px auto;border:1px solid var(--amber-100);border-radius:12px;padding:24px;background:var(--gray-50)}
.panel-white.plain{border-color:var(--gray-200)}
.panel-white .split{display:flex;flex-wrap:wrap;gap:32px}
.panel-white .split>*{flex:1 1 360px;min-width:0}
.panel-white h2{font-family:var(--font-inter);font-weight:600;color:var(--amber-800);font-size:1.5rem;margin-bottom:12px}
.panel-white p{color:var(--slate-600);font-size:.8rem;line-height:1.7;margin-bottom:12px}
.reserve-list{background:var(--amber-50);border:1px solid var(--amber-200);border-radius:8px;padding:16px;margin-top:16px}
.reserve-list h4{color:var(--amber-700);font-weight:500;margin-bottom:10px;font-size:.9rem}
.reserve-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.reserve-list li{display:flex;align-items:flex-start;font-size:.75rem;color:var(--gray-600)}
.reserve-list li .n{flex:none;width:20px;height:20px;border-radius:9999px;background:var(--amber-100);color:var(--amber-800);font-size:.7rem;display:grid;place-items:center;margin-right:8px}
.reserve-list li strong{color:var(--gray-800)}
.map-img{width:100%;border-radius:8px;object-fit:contain;background:#fff}

.rsv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:1216px;margin:0 auto;padding:0 16px}
@media(max-width:980px){.rsv-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.rsv-grid{grid-template-columns:1fr}}
.rsv{background:#fff;border:1px solid var(--amber-200);border-radius:8px;box-shadow:0 4px 10px rgba(0,0,0,.06);overflow:hidden;transition:box-shadow .3s}
.rsv:hover{box-shadow:0 12px 26px rgba(0,0,0,.1)}
.rsv .in{padding:24px}
.rsv .tp{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:10px}
.rsv h3{font-size:1rem;font-weight:600;color:var(--amber-800);margin-bottom:4px}
.rsv .meta{color:#6b7280;font-size:.85rem}
.rsv .meta strong{font-weight:500;color:#4b5563}
.rsv .tag{background:var(--amber-100);color:var(--amber-800);font-size:.72rem;padding:4px 12px;border-radius:9999px;font-weight:500;white-space:nowrap}
.rsv .hl{margin-top:16px;padding-top:16px;border-top:1px solid var(--amber-100)}
.rsv .hl h4{color:var(--amber-700);font-weight:500;margin-bottom:8px;font-size:.95rem}
.rsv .hl ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.rsv .hl li{display:flex;align-items:flex-start;font-size:.85rem;color:#4b5563}
.rsv .hl li svg{width:16px;height:16px;margin-top:2px;margin-right:8px;color:var(--amber-500);flex:none}
.rsv .book{display:block;margin-top:24px;width:100%;background:var(--amber-600);color:#fff;padding:10px;border-radius:6px;text-align:center;font-size:.85rem;font-weight:500;transition:background .3s}
.rsv .book:hover{background:var(--amber-700)}

.more-info{max-width:1216px;margin:56px auto 48px;padding:0 16px}
.more-info .flex{display:flex;flex-wrap:wrap;gap:32px}
.more-info .flex>*{flex:1 1 360px;min-width:0}
.more-info h2{font-family:var(--font-inter);font-weight:600;color:var(--amber-800);font-size:1.75rem;margin-bottom:16px}
.more-info p{color:var(--slate-600);font-size:.85rem;line-height:1.7;margin-bottom:14px}
.more-info .map-embed{border:1px solid var(--gray-200);border-radius:8px;overflow:hidden;background:#eef4ee;min-height:340px}
.more-info .map-embed iframe{display:block;width:100%;height:100%;min-height:340px;border:0}

/* gallery */
.gallery-block{max-width:1120px;margin:0 auto;padding:0 16px}
.gallery-main{position:relative;border-radius:12px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.14)}
.gallery-main img{width:100%;height:clamp(300px,46vw,480px);object-fit:cover;display:block}
.gallery-main .progress-rail{position:absolute;top:0;left:0;right:0;height:4px;background:var(--gray-200);z-index:3;overflow:hidden}
.gallery-main .progress-fill{height:100%;width:0;background:var(--amber-200);animation:slideProgress 4000ms linear infinite}
@keyframes slideProgress{from{width:0}to{width:100%}}
.gallery-thumbs{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:14px}
@media(max-width:700px){.gallery-thumbs{grid-template-columns:repeat(3,1fr)}}
.gallery-thumbs button{padding:0;border:3px solid transparent;border-radius:8px;overflow:hidden;background:none;cursor:pointer;aspect-ratio:16/10}
.gallery-thumbs button.on{border-color:var(--amber-500)}
.gallery-thumbs img{width:100%;height:100%;object-fit:cover}

/* testimonials */
.tst-page{max-width:56rem;margin:0 auto;padding:0 16px;display:flex;flex-direction:column;gap:64px}
.tst-page .yt-frame{max-width:100%}

/* legal prose */
.prose{max-width:820px;margin:0 auto;padding:0 16px}
.prose h2{margin-top:2rem;font-size:1.4rem;color:var(--gray-800)}
.prose h3{margin-top:1.4rem;font-size:1.1rem;color:var(--gray-700)}
.prose p,.prose li{color:var(--slate-600);font-size:.95rem}
.prose ul{padding-left:20px}
.prose a{color:var(--amber-700);text-decoration:underline}
.prose .updated{font-style:italic;color:#9ca3af;font-size:.9rem}
