/* ═══════════════════════════════════════════════
   AMISHI TRAVELS & TOURS — MASTER STYLESHEET 2026
   ═══════════════════════════════════════════════ */

/* ── RESET & ROOT ── */
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --terra:#C4714A;--terra-light:#E8C5AD;--terra-pale:#F9F0E8;
  --gold:#B8986A;--gold-light:#E8D9BF;
  --deep:#2C1810;--dark:#1A0F09;
  --cream:#FAF6F0;--white:#FFFFFF;
  --text:#3D2314;--muted:#7A5C48;
  --nav-h:72px;
  --radius:0px;
  --shadow:0 8px 40px rgba(44,24,16,0.12);
  --transition:0.35s cubic-bezier(0.4,0,0.2,1);
}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Jost',sans-serif;background:var(--cream);color:var(--text);overflow-x:hidden;padding-top:var(--nav-h)}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
button{font-family:'Jost',sans-serif;cursor:pointer}
::selection{background:var(--terra);color:#fff}
::-webkit-scrollbar{width:4px}
::-webkit-scrollbar-track{background:var(--dark)}
::-webkit-scrollbar-thumb{background:var(--terra);border-radius:2px}

/* ── TYPOGRAPHY ── */
.font-serif{font-family:'Cormorant Garamond',serif}
h1,h2,h3,.serif{font-family:'Cormorant Garamond',serif}

/* ── NAV ── */
nav{position:fixed;top:0;left:0;right:0;z-index:500;height:var(--nav-h);display:flex;align-items:center;padding:0 3rem;justify-content:space-between;background:rgba(26,15,9,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(184,152,106,0.15);transition:background var(--transition)}
nav.scrolled{background:rgba(26,15,9,0.99);box-shadow:0 2px 30px rgba(0,0,0,0.5)}
.nav-logo{font-family:'Cormorant Garamond',serif;color:var(--gold-light);font-size:1.35rem;font-weight:300;letter-spacing:0.12em;white-space:nowrap;display:flex;align-items:center;gap:0.5rem}
.nav-logo span{color:var(--terra-light);font-style:italic}
.nav-logo-img{height:42px !important;width:auto !important;max-width:none;mix-blend-mode:screen;flex-shrink:0;display:block}
.nav-logo-text{display:flex;flex-direction:column;line-height:1.1}
.nav-center{display:flex;align-items:center;gap:0}
.nav-links{display:flex;gap:0;list-style:none}
.nav-links > li{position:relative}
.nav-links > li > a{display:flex;align-items:center;gap:0.3rem;color:rgba(255,255,255,0.65);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;padding:0 1.1rem;height:var(--nav-h);transition:color var(--transition)}
.nav-links > li > a:hover,.nav-links > li > a.active{color:var(--gold-light)}
.nav-links > li > a.active::after{content:'';position:absolute;bottom:0;left:1.1rem;right:1.1rem;height:2px;background:var(--terra)}
.nav-links > li > a .nav-arrow{font-size:0.55rem;opacity:0.5;transition:transform var(--transition)}
.nav-links > li:hover > a .nav-arrow{transform:rotate(180deg)}

/* MEGA MENU */
.mega-menu{position:absolute;top:var(--nav-h);left:50%;transform:translateX(-50%) translateY(10px);width:640px;background:rgba(20,12,6,0.98);border:1px solid rgba(196,113,74,0.18);padding:2rem;opacity:0;visibility:hidden;transition:all 0.3s ease;pointer-events:none;backdrop-filter:blur(20px)}
.nav-links > li:hover .mega-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);pointer-events:all}
.mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem}
.mega-item{display:flex;align-items:flex-start;gap:0.8rem;padding:0.85rem;transition:background 0.2s;border:1px solid transparent}
.mega-item:hover{background:rgba(196,113,74,0.07);border-color:rgba(196,113,74,0.15)}
.mega-icon{width:32px;height:32px;background:rgba(196,113,74,0.1);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0;margin-top:0.1rem}
.mega-name{font-size:0.78rem;color:rgba(255,255,255,0.8);font-weight:500;margin-bottom:0.15rem}
.mega-days{font-size:0.62rem;color:var(--terra-light);letter-spacing:0.1em}
.mega-price{font-size:0.65rem;color:rgba(255,255,255,0.35)}

.nav-right{display:flex;gap:0.8rem;align-items:center}
.nav-ai-btn{background:transparent;color:var(--terra-light);border:1px solid rgba(196,113,74,0.38);padding:0.4rem 1rem;font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;transition:all var(--transition)}
.nav-ai-btn:hover{background:rgba(196,113,74,0.12)}
.nav-cta{background:var(--terra);color:white;padding:0.45rem 1.3rem;border:none;font-size:0.7rem;letter-spacing:0.14em;text-transform:uppercase;transition:background var(--transition)}
.nav-cta:hover{background:#a85e3a}

/* MOBILE NAV */
.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:4px;cursor:pointer}
.nav-hamburger span{width:22px;height:1.5px;background:rgba(255,255,255,0.7);display:block;transition:all 0.3s}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(4px,4.5px)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(4px,-4.5px)}
.mobile-menu{position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:rgba(20,12,6,0.99);z-index:490;display:flex;flex-direction:column;padding:2rem;overflow-y:auto;transform:translateX(100%);transition:transform 0.4s ease}
.mobile-menu.open{transform:translateX(0)}
.mob-link{display:block;color:rgba(255,255,255,0.7);font-size:1rem;letter-spacing:0.12em;text-transform:uppercase;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,0.06);transition:color 0.2s}
.mob-link:hover{color:var(--gold-light)}
.mob-sub{padding-left:1rem;margin-top:0.4rem;display:flex;flex-direction:column;gap:0.3rem}
.mob-sub a{color:rgba(255,255,255,0.45);font-size:0.78rem;padding:0.4rem 0;letter-spacing:0.1em;text-transform:uppercase}
.mob-sub a:hover{color:var(--terra-light)}

/* ── PAGE HERO (inner pages) ── */
.page-hero{height:52vh;min-height:340px;position:relative;display:flex;align-items:flex-end;overflow:hidden}
.page-hero-bg{position:absolute;inset:0;background:linear-gradient(160deg,var(--dark) 0%,var(--deep) 60%,#3D2B1A 100%)}
.page-hero-img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0.35;transition:opacity 0.8s}
.page-hero-pattern{position:absolute;inset:0;opacity:0.04;background-image:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 0 L80 40 L40 80 L0 40Z' fill='none' stroke='%23C4714A' stroke-width='0.5'/%3E%3Ccircle cx='40' cy='40' r='15' fill='none' stroke='%23B8986A' stroke-width='0.5'/%3E%3C/svg%3E");background-size:80px 80px}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,15,9,0.85) 0%,transparent 60%)}
.page-hero-content{position:relative;z-index:2;padding:0 4rem 3.5rem;max-width:900px}
.page-hero-eyebrow{font-size:0.66rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--terra-light);margin-bottom:0.8rem;display:flex;align-items:center;gap:1rem}
.page-hero-eyebrow::before{content:'';width:35px;height:1px;background:rgba(196,113,74,0.5)}
.page-hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,5vw,4rem);font-weight:300;color:var(--cream);line-height:1.1}
.page-hero-title em{color:var(--terra-light);font-style:italic}
.page-breadcrumb{position:absolute;bottom:1.2rem;right:4rem;z-index:2;display:flex;align-items:center;gap:0.6rem;font-size:0.62rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.3)}
.page-breadcrumb a{color:rgba(255,255,255,0.3);transition:color 0.2s}
.page-breadcrumb a:hover{color:var(--terra-light)}
.page-breadcrumb span{color:var(--terra-light)}

/* ── SECTION COMMONS ── */
.section-eyebrow{font-size:0.66rem;letter-spacing:0.32em;text-transform:uppercase;color:var(--terra);margin-bottom:0.8rem}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,3vw,3rem);font-weight:300;line-height:1.15;color:var(--deep);margin-bottom:1.2rem}
.section-title em{color:var(--terra);font-style:italic}
.section-body{font-size:0.88rem;line-height:1.9;color:var(--muted);font-weight:300}
.divider{width:55px;height:1px;background:var(--terra);margin:1rem 0 1.5rem}
.center{text-align:center}
.center .divider{margin:1rem auto 1.5rem}
.container{max-width:1200px;margin:0 auto;padding:0 4rem}
.section-pad{padding:8rem 0}
.section-pad-sm{padding:5rem 0}

/* ── BUTTONS ── */
.btn{display:inline-flex;align-items:center;gap:0.5rem;font-family:'Jost',sans-serif;font-size:0.75rem;letter-spacing:0.2em;text-transform:uppercase;padding:0.9rem 2.2rem;border:none;cursor:pointer;transition:all var(--transition)}
.btn-primary{background:var(--terra);color:white}
.btn-primary:hover{background:#a85e3a;transform:translateY(-2px)}
.btn-outline{background:transparent;color:var(--terra);border:1px solid rgba(196,113,74,0.4)}
.btn-outline:hover{border-color:var(--terra);background:rgba(196,113,74,0.06);transform:translateY(-2px)}
.btn-outline-white{background:transparent;color:var(--gold-light);border:1px solid rgba(184,152,106,0.35)}
.btn-outline-white:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.btn-white{background:white;color:var(--terra)}
.btn-white:hover{background:var(--cream)}
.btn-sm{padding:0.5rem 1.2rem;font-size:0.68rem}
.btn-icon{width:42px;height:42px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%}

/* ── HERO (homepage) ── */
.hero{height:100vh;min-height:700px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-top:calc(-1 * var(--nav-h))}
.hero-bg{position:absolute;inset:0;background:linear-gradient(160deg,#1A0F09 0%,#2C1810 35%,#3D2B1A 60%,#1A0F09 100%)}
.hero-img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0.3}
.hero-pattern{position:absolute;inset:0;opacity:0.05;background-image:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M40 0 L80 40 L40 80 L0 40Z' fill='none' stroke='%23C4714A' stroke-width='0.5'/%3E%3Ccircle cx='40' cy='40' r='15' fill='none' stroke='%23B8986A' stroke-width='0.5'/%3E%3C/svg%3E");background-size:80px 80px}
.hero-orb{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:700px;height:700px;border:1px solid rgba(196,113,74,0.1);border-radius:50%;pointer-events:none}
.hero-orb::before{content:'';position:absolute;inset:50px;border:1px solid rgba(184,152,106,0.07);border-radius:50%}
.hero-orb::after{content:'';position:absolute;inset:120px;border:1px solid rgba(196,113,74,0.05);border-radius:50%}
.hero-content{position:relative;z-index:2;text-align:center;max-width:820px;padding:0 2rem}
.hero-eyebrow{font-size:0.7rem;letter-spacing:0.38em;text-transform:uppercase;color:var(--terra-light);margin-bottom:1.8rem;display:flex;align-items:center;justify-content:center;gap:1.2rem}
.hero-eyebrow::before,.hero-eyebrow::after{content:'';width:50px;height:1px;background:rgba(196,113,74,0.4)}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,6.5vw,6rem);font-weight:300;color:var(--cream);line-height:1.05;margin-bottom:1.2rem}
.hero-title em{color:var(--terra-light);font-style:italic}
.hero-subtitle{font-size:0.92rem;color:rgba(255,255,255,0.5);letter-spacing:0.06em;margin-bottom:3rem;line-height:1.9;font-weight:300;max-width:580px;margin-left:auto;margin-right:auto}
.hero-btns{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem}
.hero-stats{display:flex;gap:3rem;justify-content:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,0.07)}
.h-stat-num{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:300;color:var(--terra-light)}
.h-stat-label{font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-top:0.1rem}
.hero-scroll{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0.4rem;color:rgba(255,255,255,0.3);font-size:0.6rem;letter-spacing:0.22em;text-transform:uppercase;z-index:2}
.scroll-line{width:1px;height:45px;background:linear-gradient(to bottom,transparent,rgba(196,113,74,0.5));animation:scrollPulse 2s ease-in-out infinite}

/* ── PACKAGE CARDS ── */
.pkg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}
.pkg-card{background:white;border:1px solid rgba(196,113,74,0.1);transition:all var(--transition);overflow:hidden;display:flex;flex-direction:column}
.pkg-card:hover{border-color:rgba(196,113,74,0.4);transform:translateY(-6px);box-shadow:0 20px 60px rgba(44,24,16,0.14)}
.pkg-card-img{height:220px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pkg-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s ease}
.pkg-card:hover .pkg-card-img img{transform:scale(1.06)}
.pkg-card-img.no-photo{display:flex;align-items:center;justify-content:center}
.pkg-card-img.cultural{background:linear-gradient(135deg,#2C1A10,#5C3020)}
.pkg-card-img.beach{background:linear-gradient(135deg,#0C2840,#1A5878)}
.pkg-card-img.wildlife{background:linear-gradient(135deg,#142010,#2A4818)}
.pkg-card-img.wellness{background:linear-gradient(135deg,#200C30,#4A2060)}
.pkg-card-img.combo{background:linear-gradient(135deg,#1A1520,#3C2840)}
.pkg-card-img.honeymoon{background:linear-gradient(135deg,#3A0F1A,#6E2438 45%,#8C3A4A 100%)}
.pkg-card-img.hills{background:linear-gradient(135deg,#2A1808,#6A3818)}
.pkg-icon-lg{font-size:3.5rem;opacity:0.4}
.pkg-badge{position:absolute;top:1rem;left:1rem;background:var(--terra);color:white;font-size:0.58rem;letter-spacing:0.16em;text-transform:uppercase;padding:0.28rem 0.75rem;z-index:1}
.pkg-body{padding:1.6rem;display:flex;flex-direction:column;flex:1}
.pkg-days{font-size:0.62rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--terra);margin-bottom:0.4rem}
.pkg-name{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:300;color:var(--deep);margin-bottom:0.6rem;line-height:1.2}
.pkg-desc{font-size:0.78rem;color:var(--muted);line-height:1.75;margin-bottom:1.2rem;font-weight:300;flex:1}
.pkg-tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:1.3rem}
.pkg-tag{font-size:0.6rem;letter-spacing:0.1em;padding:0.22rem 0.65rem;border:1px solid rgba(196,113,74,0.25);color:var(--muted);text-transform:uppercase}
.pkg-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(196,113,74,0.1);padding-top:1.1rem;margin-top:auto}
.pkg-price{font-family:'Cormorant Garamond',serif;font-size:1.7rem;font-weight:300;color:var(--terra)}
.pkg-price-label{font-family:'Jost',sans-serif;font-size:0.58rem;color:var(--muted);display:block;margin-bottom:0.1rem;letter-spacing:0.1em;text-transform:uppercase}
.pkg-btn{background:transparent;border:1px solid rgba(196,113,74,0.35);color:var(--terra);padding:0.45rem 1rem;font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;transition:all var(--transition)}
.pkg-btn:hover{background:var(--terra);color:white;border-color:var(--terra)}

/* Dark variant (for dark bg sections) */
.pkg-card.dark{background:rgba(255,255,255,0.03);border-color:rgba(196,113,74,0.1)}
.pkg-card.dark:hover{background:rgba(255,255,255,0.06);border-color:rgba(196,113,74,0.4)}
.pkg-card.dark .pkg-name{color:var(--cream)}
.pkg-card.dark .pkg-desc{color:rgba(255,255,255,0.4)}
.pkg-card.dark .pkg-tag{color:rgba(255,255,255,0.38);border-color:rgba(196,113,74,0.2)}
.pkg-card.dark .pkg-price{color:var(--terra-light)}
.pkg-card.dark .pkg-price-label{color:rgba(255,255,255,0.28)}
.pkg-card.dark .pkg-footer{border-top-color:rgba(255,255,255,0.05)}
.pkg-card.dark .pkg-btn{color:var(--terra-light);border-color:rgba(196,113,74,0.35)}
.pkg-card.dark .pkg-btn:hover{background:var(--terra);color:white}

/* ── PACKAGE FILTER TABS ── */
.pkg-tabs{display:flex;justify-content:center;margin-bottom:3rem;flex-wrap:wrap;gap:0.3rem}
.pkg-tab{padding:0.6rem 1.4rem;font-size:0.68rem;letter-spacing:0.16em;text-transform:uppercase;background:transparent;color:var(--muted);border:1px solid rgba(196,113,74,0.2);cursor:pointer;transition:all var(--transition)}
.pkg-tab.active,.pkg-tab:hover{background:var(--terra);color:white;border-color:var(--terra)}

/* Dark tab variant */
.pkg-tabs.dark .pkg-tab{color:rgba(255,255,255,0.4);border-color:rgba(196,113,74,0.18)}
.pkg-tabs.dark .pkg-tab.active,.pkg-tabs.dark .pkg-tab:hover{background:var(--terra);color:white}

/* ── PACKAGE DETAIL PAGE ── */
.pkg-detail-layout{display:grid;grid-template-columns:1fr 360px;gap:3rem;align-items:start}
.pkg-detail-main{}
.pkg-detail-sidebar{position:sticky;top:calc(var(--nav-h) + 2rem)}
.pkg-quote-card{background:var(--dark);border:1px solid rgba(196,113,74,0.18);padding:2rem}
.pkg-quote-price{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:var(--terra-light);line-height:1}
.pkg-quote-per{font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.35);margin-bottom:1.5rem}
.pkg-quote-includes{display:flex;flex-direction:column;gap:0.6rem;margin-bottom:1.8rem}
.pkg-quote-includes li{display:flex;align-items:flex-start;gap:0.6rem;font-size:0.78rem;color:rgba(255,255,255,0.55);list-style:none}
.pkg-quote-includes li::before{content:'✓';color:var(--terra);font-size:0.7rem;margin-top:0.1rem;flex-shrink:0}
.pkg-inclusions-section{margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid rgba(196,113,74,0.1)}
.incl-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.6rem;margin-top:1.2rem}
.incl-item{display:flex;align-items:flex-start;gap:0.6rem;padding:0.8rem;background:rgba(196,113,74,0.03);border:1px solid rgba(196,113,74,0.08)}
.incl-icon{font-size:0.8rem;margin-top:0.1rem;flex-shrink:0}
.incl-text{font-size:0.76rem;color:var(--muted);line-height:1.5}
.excl-list{display:flex;flex-direction:column;gap:0.5rem;margin-top:1rem}
.excl-item{display:flex;align-items:flex-start;gap:0.6rem;font-size:0.78rem;color:var(--muted)}
.excl-item::before{content:'✗';color:#C47474;flex-shrink:0;margin-top:0.05rem}
.entrance-table{width:100%;border-collapse:collapse;margin-top:1rem}
.entrance-table th{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--terra);padding:0.6rem 0.8rem;text-align:left;border-bottom:1px solid rgba(196,113,74,0.2);background:rgba(196,113,74,0.04)}
.entrance-table td{font-size:0.78rem;color:var(--muted);padding:0.7rem 0.8rem;border-bottom:1px solid rgba(196,113,74,0.07)}
.entrance-table tr:hover td{background:rgba(196,113,74,0.03)}
.cancel-policy{display:flex;flex-direction:column;gap:0.6rem;margin-top:1rem}
.cancel-item{display:flex;justify-content:space-between;align-items:center;padding:0.8rem 1rem;background:rgba(196,113,74,0.03);border:1px solid rgba(196,113,74,0.08)}
.cancel-days{font-size:0.72rem;color:var(--text)}
.cancel-pct{font-size:0.78rem;font-weight:500;color:var(--terra)}
.hotel-table{width:100%;border-collapse:collapse;margin-top:1rem}
.hotel-table th{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--terra);padding:0.7rem 0.8rem;text-align:left;border-bottom:2px solid rgba(196,113,74,0.2);background:rgba(196,113,74,0.04)}
.hotel-table td{font-size:0.78rem;color:var(--muted);padding:0.75rem 0.8rem;border-bottom:1px solid rgba(196,113,74,0.08);vertical-align:middle}
.hotel-name{color:var(--deep);font-weight:500}
.hotel-stars{color:var(--gold);font-size:0.65rem}
.drive-table{width:100%;border-collapse:collapse;margin-top:1rem}
.drive-table th{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--terra);padding:0.6rem 0.8rem;text-align:left;border-bottom:1px solid rgba(196,113,74,0.2);background:rgba(196,113,74,0.04)}
.drive-table td{font-size:0.78rem;color:var(--muted);padding:0.65rem 0.8rem;border-bottom:1px solid rgba(196,113,74,0.07)}

/* ── ITINERARY TIMELINE ── */
.itin-timeline{display:flex;flex-direction:column}
.itin-day{display:flex;gap:1.5rem;padding-bottom:1.8rem;position:relative}
.itin-day:not(:last-child)::before{content:'';position:absolute;left:20px;top:42px;bottom:0;width:1px;background:rgba(196,113,74,0.18)}
.itin-dot{width:40px;height:40px;border:1px solid rgba(196,113,74,0.38);display:flex;align-items:center;justify-content:center;font-size:0.6rem;font-weight:500;color:var(--terra);flex-shrink:0;background:var(--cream)}
.itin-content{flex:1;padding-bottom:0.5rem}
.itin-day-label{font-size:0.6rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--terra);margin-bottom:0.2rem}
.itin-day-title{font-family:'Cormorant Garamond',serif;font-size:1.15rem;color:var(--deep);margin-bottom:0.4rem}
.itin-day-desc{font-size:0.79rem;color:var(--muted);line-height:1.8;font-weight:300}
.itin-day-stops{display:flex;gap:0.4rem;flex-wrap:wrap;margin-top:0.7rem}
.itin-stop{font-size:0.6rem;padding:0.22rem 0.65rem;background:rgba(196,113,74,0.06);color:var(--terra);border:1px solid rgba(196,113,74,0.18)}
.itin-hotel{font-size:0.65rem;color:var(--gold);margin-top:0.5rem;display:flex;align-items:center;gap:0.4rem}
.itin-hotel::before{content:'🏨';font-size:0.7rem}

/* ── DESTINATIONS ── */
.dest-grid-main{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.dest-card{position:relative;overflow:hidden;cursor:pointer;height:320px;display:flex;align-items:flex-end}
.dest-card:hover .dest-bg{transform:scale(1.08)}
.dest-bg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:4.5rem;transition:transform 0.6s ease;background-size:cover;background-position:center}
.dest-bg img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s ease}
.dest-bg.no-photo{display:flex;align-items:center;justify-content:center}
.dest-bg.kandy{background:linear-gradient(145deg,#2C1A10,#5C3020)}
.dest-bg.ella{background:linear-gradient(145deg,#142010,#2A4818)}
.dest-bg.galle{background:linear-gradient(145deg,#0C2840,#1A5878)}
.dest-bg.yala{background:linear-gradient(145deg,#1A2010,#3A4820)}
.dest-bg.sigiriya{background:linear-gradient(145deg,#2C1A10,#6A3010)}
.dest-bg.nuwara{background:linear-gradient(145deg,#101428,#2A3060)}
.dest-bg.mirissa{background:linear-gradient(145deg,#0C2030,#0A4060)}
.dest-bg.colombo{background:linear-gradient(145deg,#1A1420,#3A2840)}
.dest-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.75) 0%,transparent 55%)}
.dest-info{position:relative;z-index:1;padding:1.4rem;width:100%}
.dest-name{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:300;color:white;margin-bottom:0.2rem}
.dest-tag{font-size:0.62rem;letter-spacing:0.16em;color:rgba(255,255,255,0.5);text-transform:uppercase}
.dest-card-lg{height:420px}

/* ── GALLERY ── */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.75rem}
.gallery-item{position:relative;overflow:hidden;cursor:pointer;height:260px;background:#1A0F09}
.gallery-item img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 0.55s ease}
.gallery-item:hover img{transform:scale(1.07)}
.gallery-item-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,15,9,0.7) 0%,rgba(196,113,74,0.15) 100%);opacity:0;display:flex;align-items:center;justify-content:center;transition:opacity 0.35s}
.gallery-item:hover .gallery-item-overlay{opacity:1}
.gallery-item-icon{color:var(--gold-light);font-size:2rem;transform:scale(0.7);transition:transform 0.35s}
.gallery-item:hover .gallery-item-icon{transform:scale(1)}
.gallery-item-caption{position:absolute;bottom:0;left:0;right:0;padding:0.7rem 0.9rem;color:rgba(255,255,255,0.85);font-size:0.65rem;letter-spacing:0.14em;text-transform:uppercase;transform:translateY(100%);transition:transform 0.35s}
.gallery-item:hover .gallery-item-caption{transform:translateY(0)}
.gallery-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#2C1A10,#3D2314);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:0.5rem}
.gallery-placeholder span{color:rgba(196,113,74,0.25);font-size:2.5rem}
.gallery-placeholder p{color:rgba(184,152,106,0.3);font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;text-align:center;padding:0 1rem}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,0.95);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all 0.3s}
.lightbox.active{opacity:1;visibility:visible}
.lightbox img{max-width:90vw;max-height:88vh;object-fit:contain}
.lightbox-close{position:absolute;top:1.5rem;right:2rem;color:rgba(255,255,255,0.6);font-size:1.8rem;cursor:pointer;transition:color 0.2s;background:none;border:none}
.lightbox-close:hover{color:white}

/* ── AI CHAT ── */
.ai-chat-widget{background:rgba(255,255,255,0.04);border:1px solid rgba(196,113,74,0.18);display:flex;flex-direction:column;height:580px}
.ai-chat-header{padding:1.2rem 1.5rem;border-bottom:1px solid rgba(196,113,74,0.12);display:flex;align-items:center;gap:0.8rem}
.ai-chat-avatar{width:38px;height:38px;background:var(--terra);display:flex;align-items:center;justify-content:center;font-size:1.1rem;border-radius:50%;flex-shrink:0}
.ai-chat-name{font-size:0.82rem;font-weight:500;color:var(--cream)}
.ai-chat-status{font-size:0.65rem;color:rgba(255,255,255,0.35);display:flex;align-items:center;gap:0.3rem}
.status-dot{width:6px;height:6px;background:#4CAF50;border-radius:50%;display:inline-block;animation:pulse 2s infinite}
.ai-chat-messages{flex:1;overflow-y:auto;padding:1.2rem;display:flex;flex-direction:column;gap:0.8rem;scroll-behavior:smooth}
.ai-chat-messages::-webkit-scrollbar{width:3px}
.ai-chat-messages::-webkit-scrollbar-thumb{background:rgba(196,113,74,0.3);border-radius:2px}
.msg{max-width:85%;animation:msgIn 0.3s ease}
.msg.bot{align-self:flex-start}
.msg.user{align-self:flex-end}
.msg-bubble{padding:0.85rem 1.1rem;font-size:0.79rem;line-height:1.7;font-weight:300}
.msg.bot .msg-bubble{background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.8);border:1px solid rgba(255,255,255,0.06);border-radius:0 8px 8px 8px}
.msg.user .msg-bubble{background:var(--terra);color:white;border-radius:8px 0 8px 8px}
.msg-time{font-size:0.58rem;color:rgba(255,255,255,0.2);margin-top:0.3rem;padding:0 0.3rem}
.msg.user .msg-time{text-align:right}
.typing-indicator{display:none;align-self:flex-start}
.typing-indicator.visible{display:flex}
.typing-bubble{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.06);padding:0.85rem 1.1rem;border-radius:0 8px 8px 8px;display:flex;gap:0.3rem;align-items:center}
.typing-dot{width:6px;height:6px;background:rgba(255,255,255,0.4);border-radius:50%;animation:typingPulse 1.2s infinite}
.typing-dot:nth-child(2){animation-delay:0.2s}
.typing-dot:nth-child(3){animation-delay:0.4s}
.ai-quick-btns{padding:0.8rem 1.2rem;border-top:1px solid rgba(196,113,74,0.1);display:flex;gap:0.4rem;flex-wrap:wrap}
.quick-btn{font-size:0.62rem;padding:0.3rem 0.7rem;border:1px solid rgba(196,113,74,0.25);color:rgba(255,255,255,0.45);background:transparent;cursor:pointer;letter-spacing:0.06em;transition:all 0.3s;font-family:'Jost',sans-serif;white-space:nowrap}
.quick-btn:hover{border-color:var(--terra);color:var(--terra-light);background:rgba(196,113,74,0.08)}
.ai-input-area{padding:1rem 1.2rem;border-top:1px solid rgba(196,113,74,0.1);display:flex;gap:0.6rem;align-items:flex-end}
.ai-input{flex:1;background:rgba(255,255,255,0.05);border:1px solid rgba(196,113,74,0.18);color:rgba(255,255,255,0.85);padding:0.72rem 1rem;font-family:'Jost',sans-serif;font-size:0.8rem;outline:none;resize:none;max-height:100px;min-height:40px;line-height:1.4;transition:border-color var(--transition)}
.ai-input:focus{border-color:rgba(196,113,74,0.5)}
.ai-input::placeholder{color:rgba(255,255,255,0.22)}
.ai-send-btn{background:var(--terra);border:none;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition);flex-shrink:0;font-size:1rem;color:white}
.ai-send-btn:hover{background:#a85e3a}
.ai-send-btn:disabled{background:rgba(196,113,74,0.3);cursor:not-allowed}

/* ── CALCULATOR ── */
.calc-card{background:white;border:1px solid rgba(196,113,74,0.15);padding:2.5rem;box-shadow:var(--shadow)}
.calc-title{font-family:'Cormorant Garamond',serif;font-size:1.8rem;color:var(--deep);margin-bottom:0.3rem}
.calc-subtitle{font-size:0.78rem;color:var(--muted);margin-bottom:2rem}
.calc-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}
.calc-field label{font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--terra);display:block;margin-bottom:0.4rem}
.calc-field select,.calc-field input{width:100%;padding:0.8rem 1rem;border:1px solid rgba(196,113,74,0.2);background:var(--cream);font-family:'Jost',sans-serif;font-size:0.85rem;color:var(--text);outline:none;transition:border-color var(--transition);-webkit-appearance:none}
.calc-field select:focus,.calc-field input:focus{border-color:var(--terra)}
.calc-result{margin-top:1.5rem;padding:1.5rem;background:var(--dark);border:1px solid rgba(196,113,74,0.18);display:none}
.calc-result.visible{display:block}
.calc-price-total{font-family:'Cormorant Garamond',serif;font-size:2.4rem;font-weight:300;color:var(--terra-light)}
.calc-price-break{font-size:0.72rem;color:rgba(255,255,255,0.4);margin-top:0.3rem}
.calc-note{font-size:0.68rem;color:rgba(255,255,255,0.28);margin-top:0.8rem;font-style:italic}

/* ── CONTACT ── */
.contact-card{background:white;border:1px solid rgba(196,113,74,0.12);padding:2.5rem}
.contact-detail{display:flex;gap:1rem;margin-bottom:1.6rem;align-items:flex-start}
.contact-icon{width:40px;height:40px;background:rgba(196,113,74,0.08);border:1px solid rgba(196,113,74,0.18);display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0}
.contact-label{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--terra);margin-bottom:0.2rem}
.contact-val{font-size:0.85rem;color:var(--muted);font-weight:300}
.form-group{margin-bottom:0.9rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0.9rem}
.form-label{font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--terra);display:block;margin-bottom:0.4rem}
.form-input,.form-select,.form-textarea{width:100%;padding:0.85rem 1rem;border:1px solid rgba(196,113,74,0.2);background:var(--cream);font-family:'Jost',sans-serif;font-size:0.82rem;color:var(--text);outline:none;transition:border-color var(--transition);-webkit-appearance:none}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--terra)}
.form-textarea{resize:vertical;min-height:120px;line-height:1.6}
.form-submit{width:100%;background:var(--terra);color:white;padding:1rem;border:none;font-family:'Jost',sans-serif;font-size:0.75rem;letter-spacing:0.2em;text-transform:uppercase;cursor:pointer;transition:background var(--transition);margin-top:0.5rem}
.form-submit:hover{background:#a85e3a}
.form-note{font-size:0.68rem;color:var(--muted);text-align:center;margin-top:0.6rem}

/* ── WHY US ── */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.8rem}
.why-item{border-left:1px solid rgba(255,255,255,0.18);padding-left:1.3rem}
.why-icon{font-size:1.4rem;margin-bottom:0.6rem}
.why-title{font-size:0.82rem;font-weight:500;color:white;letter-spacing:0.04em;margin-bottom:0.4rem}
.why-desc{font-size:0.76rem;color:rgba(255,255,255,0.58);line-height:1.7;font-weight:300}

/* ── TESTIMONIALS ── */
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.test-card{background:white;padding:2.2rem;transition:transform var(--transition);border:1px solid transparent}
.test-card:hover{transform:translateY(-4px);border-color:rgba(196,113,74,0.15);box-shadow:0 12px 40px rgba(44,24,16,0.1)}
.test-q{font-family:'Cormorant Garamond',serif;font-size:3.5rem;color:var(--terra-light);line-height:0.5;margin-bottom:1rem;display:block}
.test-text{font-size:0.82rem;line-height:1.85;color:var(--muted);font-style:italic;margin-bottom:1.5rem;font-weight:300}
.test-author{display:flex;align-items:center;gap:0.8rem}
.test-avatar{width:38px;height:38px;border-radius:50%;background:var(--terra);display:flex;align-items:center;justify-content:center;font-size:0.68rem;font-weight:500;color:white;flex-shrink:0}
.test-name{font-size:0.78rem;font-weight:500;color:var(--deep)}
.test-origin{font-size:0.65rem;color:var(--muted)}
.stars{color:var(--gold);font-size:0.78rem;margin-bottom:1rem;letter-spacing:0.1em}

/* ── ABOUT ── */
.about-img{width:100%;height:500px;object-fit:cover;display:block}
.about-img-placeholder{width:100%;height:500px;background:linear-gradient(145deg,#2C1A10 0%,#4A2C18 50%,#3D2314 100%);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;position:relative;overflow:hidden}
.about-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(196,113,74,0.15)}
.about-stat{padding:2.5rem 2rem;border-right:1px solid rgba(196,113,74,0.15);text-align:center}
.about-stat:last-child{border-right:none}
.about-stat-num{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:300;color:var(--terra);display:block}
.about-stat-label{font-size:0.62rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted)}
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.team-card{text-align:center}
.team-photo{width:100%;height:280px;background:linear-gradient(145deg,#2C1A10,#4A2C18);display:flex;align-items:center;justify-content:center;font-size:4rem;margin-bottom:1.2rem;overflow:hidden}
.team-photo img{width:100%;height:100%;object-fit:cover}
.team-name{font-family:'Cormorant Garamond',serif;font-size:1.3rem;color:var(--deep);margin-bottom:0.2rem}
.team-role{font-size:0.65rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--terra)}

/* ── BLOG ── */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.blog-card{overflow:hidden;border:1px solid rgba(196,113,74,0.1);transition:all var(--transition)}
.blog-card:hover{border-color:rgba(196,113,74,0.35);transform:translateY(-5px);box-shadow:0 16px 50px rgba(44,24,16,0.12)}
.blog-img{height:200px;overflow:hidden;background:linear-gradient(135deg,#2C1A10,#4A2C18);display:flex;align-items:center;justify-content:center;font-size:3rem}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s}
.blog-card:hover .blog-img img{transform:scale(1.06)}
.blog-body{padding:1.5rem}
.blog-category{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--terra);margin-bottom:0.6rem}
.blog-title{font-family:'Cormorant Garamond',serif;font-size:1.25rem;color:var(--deep);margin-bottom:0.6rem;line-height:1.25}
.blog-excerpt{font-size:0.76rem;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:1rem}
.blog-meta{font-size:0.62rem;color:var(--muted);display:flex;gap:1rem}
.blog-read{font-size:0.65rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--terra);display:flex;align-items:center;gap:0.3rem}

/* ── FOOTER ── */
footer{background:var(--dark);padding:5rem 0 2rem;border-top:1px solid rgba(184,152,106,0.1)}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(255,255,255,0.06);margin-bottom:2rem}
.footer-logo{font-family:'Cormorant Garamond',serif;color:var(--gold-light);font-size:1.35rem;font-weight:300;letter-spacing:0.12em;display:flex;align-items:center;gap:0.7rem;margin-bottom:1rem}
.footer-logo span{color:var(--terra-light);font-style:italic}
.footer-logo-img{height:60px !important;width:auto !important;max-width:none;mix-blend-mode:screen;flex-shrink:0;display:block}
.footer-tagline{font-size:0.78rem;color:rgba(255,255,255,0.3);line-height:1.7;font-weight:300;max-width:240px;margin-bottom:1.5rem}
.footer-col-title{font-size:0.62rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--terra-light);margin-bottom:1.2rem}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:0.7rem}
.footer-links a{color:rgba(255,255,255,0.3);font-size:0.78rem;transition:color 0.2s;font-weight:300}
.footer-links a:hover{color:var(--terra-light)}
.footer-bottom{display:flex;align-items:center;justify-content:space-between}
.footer-copy{font-size:0.65rem;color:rgba(255,255,255,0.2);letter-spacing:0.08em}
.footer-social{display:flex;gap:0.7rem}
.social-link{width:34px;height:34px;border:1px solid rgba(255,255,255,0.12);display:flex;align-items:center;justify-content:center;font-size:0.75rem;color:rgba(255,255,255,0.3);transition:all var(--transition)}
.social-link:hover{border-color:var(--terra);color:var(--terra-light)}

/* ── WHATSAPP FLOAT ── */
.whatsapp-float{position:fixed;bottom:2rem;right:2rem;z-index:400;display:flex;flex-direction:column;align-items:flex-end;gap:0.6rem}
.whatsapp-btn{width:56px;height:56px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,0.4);transition:transform var(--transition);cursor:pointer;text-decoration:none}
.whatsapp-btn:hover{transform:scale(1.12)}
.whatsapp-btn svg{width:28px;height:28px;fill:white}
.whatsapp-label{background:var(--dark);color:rgba(255,255,255,0.8);font-size:0.68rem;letter-spacing:0.1em;padding:0.35rem 0.9rem;border:1px solid rgba(255,255,255,0.1);white-space:nowrap;opacity:0;transform:translateX(8px);transition:all 0.3s;pointer-events:none}
.whatsapp-float:hover .whatsapp-label{opacity:1;transform:translateX(0)}

/* ── NOTICE / ALERT ── */
.notice{padding:0.85rem 1.4rem;font-size:0.78rem;display:flex;align-items:center;gap:0.8rem;margin-bottom:1.5rem}
.notice.info{background:rgba(184,152,106,0.08);border-left:3px solid var(--gold);color:var(--muted)}
.notice.success{background:rgba(76,175,80,0.06);border-left:3px solid #4CAF50;color:#4A7C59}

/* ── REVEAL ANIMATIONS ── */
/* Reveal animations — JS adds .visible when element enters viewport.
   Elements without JS (or with explicit opacity:1) are always shown. */
.reveal{opacity:0;transform:translateY(24px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal-left.visible{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(30px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal-right.visible{opacity:1;transform:translateX(0)}
/* Fallback: if JS hasn't run, show after 1.5s anyway */
@keyframes revealFallback{to{opacity:1;transform:none}}
.reveal,.reveal-left,.reveal-right{animation:revealFallback 0s 1.5s forwards}

/* ── ANIMATIONS ── */
@keyframes fadeUp{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes scrollPulse{0%,100%{opacity:0.3;transform:scaleY(0.8)}50%{opacity:1;transform:scaleY(1)}}
@keyframes typingPulse{0%,60%,100%{transform:translateY(0);opacity:0.4}30%{transform:translateY(-5px);opacity:1}}
@keyframes msgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .pkg-detail-layout{grid-template-columns:1fr}
  .pkg-detail-sidebar{position:static}
  .dest-grid-main{grid-template-columns:repeat(2,1fr)}
  .footer-top{grid-template-columns:1fr 1fr;gap:2rem}
}
@media(max-width:900px){
  :root{--nav-h:62px}
  nav{padding:0 1.5rem}
  .nav-center,.nav-right .nav-ai-btn{display:none}
  .nav-hamburger{display:flex}
  .container{padding:0 1.5rem}
  .section-pad{padding:5rem 0}
  .page-hero-content{padding:0 1.5rem 2.5rem}
  .test-grid,.blog-grid{grid-template-columns:1fr 1fr}
  .incl-grid,.calc-row,.form-row{grid-template-columns:1fr}
  .about-stat-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr 1fr}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:1fr}
  footer{padding:3rem 0 1.5rem}
  .footer-bottom{flex-direction:column;gap:1rem;text-align:center}
}
@media(max-width:600px){
  .pkg-grid{grid-template-columns:1fr}
  .dest-grid-main{grid-template-columns:1fr}
  .test-grid,.blog-grid,.team-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item{height:200px}
  .hero-stats{gap:1.5rem;flex-wrap:wrap}
  .about-stat-grid{grid-template-columns:1fr 1fr}
  .footer-top{grid-template-columns:1fr}
  .pkg-tabs{gap:0.2rem}
  .pkg-tab{padding:0.5rem 0.9rem;font-size:0.62rem}
  .page-breadcrumb{display:none}
}
