/* =====================================================
   LAND OF LAMAS TRAVELS — Premium Website v2.0
   ===================================================== */

:root {
  --deep:        #050c07;
  --dark:        #0c1c11;
  --forest:      #142d1e;
  --forest-mid:  #1b4029;
  --moss:        #215738;
  --sage:        #2e7a50;
  --gold:        #d4a030;
  --gold-light:  #efbf50;
  --gold-pale:   #faecc0;
  --cream:       #f9f6ef;
  --cloud:       #ecf3ee;
  --snow:        #fdfcf8;
  --text:        #0a1a0e;
  --text-mid:    #254033;
  --text-muted:  #547866;
  --border:      rgba(0,0,0,.07);
  --max-w:       1200px;
  --section:     5.5rem;
  --r:           18px;
  --r-sm:        10px;
  --shadow-xs:   0 2px 8px  rgba(10,30,15,.06);
  --shadow-sm:   0 4px 16px rgba(10,30,15,.09);
  --shadow:      0 8px 32px rgba(10,30,15,.13);
  --shadow-lg:   0 20px 60px rgba(10,30,15,.19);
  --ease:        cubic-bezier(.4,0,.2,1);
}

/* ===== PRELOADER ===== */
.preloader{position:fixed;inset:0;z-index:99999;background:var(--deep);display:flex;align-items:center;justify-content:center;transition:opacity .65s var(--ease),visibility .65s var(--ease);}
.preloader.done{opacity:0;visibility:hidden;pointer-events:none;}
.preloader-inner{display:flex;flex-direction:column;align-items:center;gap:1.4rem;}
.preloader-logo-wrap{position:relative;width:110px;height:110px;display:flex;align-items:center;justify-content:center;}
.preloader-logo{width:78px;height:78px;border-radius:50%;object-fit:cover;animation:pre-pulse 1.6s ease-in-out infinite;}
.preloader-ring{position:absolute;inset:0;border-radius:50%;border:3px solid rgba(212,160,48,.18);border-top-color:var(--gold);animation:pre-spin 1s linear infinite;}
.preloader-text{color:var(--gold);font-family:'Playfair Display',serif;font-size:.9rem;letter-spacing:.18em;text-transform:uppercase;opacity:.9;margin:0;}
@keyframes pre-spin{to{transform:rotate(360deg)}}
@keyframes pre-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}

/* ---- RESET ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'DM Sans',system-ui,sans-serif;color:var(--text);background:var(--snow);-webkit-font-smoothing:antialiased;line-height:1.6}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:'Playfair Display',Georgia,serif;line-height:1.18}

/* ---- LAYOUT ---- */
.wrap{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}
section{padding:var(--section) 1.5rem}

/* ---- TYPOGRAPHY ---- */
.section-tag{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--moss);background:linear-gradient(135deg,var(--cloud),#e0f0e6);padding:.3rem .85rem;border-radius:999px;border:1px solid rgba(33,87,56,.12);margin-bottom:1rem}
.section-title{font-size:clamp(1.7rem,3.5vw,2.5rem);line-height:1.14;margin-bottom:.75rem}
.section-sub{font-size:1.05rem;color:var(--text-muted);max-width:64ch;line-height:1.7}

/* ---- ACCENT BAR ---- */
body::before{content:'';position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--moss),var(--gold),var(--sage),var(--gold),var(--moss));background-size:300% 100%;animation:shimmer 8s ease infinite;z-index:9999}
@keyframes shimmer{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* ---- BUTTONS ---- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.6rem;border-radius:999px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:.93rem;border:none;cursor:pointer;transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s;white-space:nowrap;position:relative}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0)}
.btn.whatsapp{background:linear-gradient(135deg,#25d366,#1ebe5d);color:#fff;box-shadow:0 4px 20px rgba(37,211,102,.28)}
.btn.whatsapp:hover{box-shadow:0 8px 28px rgba(37,211,102,.48)}
.btn.call{background:linear-gradient(135deg,var(--gold),#e8aa38);color:#fff;box-shadow:0 4px 20px rgba(212,160,48,.3)}
.btn.call:hover{box-shadow:0 8px 28px rgba(212,160,48,.5)}
.btn.primary{background:linear-gradient(135deg,var(--forest-mid),var(--moss));color:#fff;box-shadow:0 4px 20px rgba(27,64,41,.28)}
.btn.primary:hover{box-shadow:0 8px 28px rgba(27,64,41,.45)}
.btn.outline-white{background:rgba(255,255,255,.1);color:#fff;border:1.5px solid rgba(255,255,255,.4);backdrop-filter:blur(8px)}
.btn.outline-white:hover{background:#fff;color:var(--forest);border-color:#fff}

/* ---- NAVBAR ---- */
header{position:fixed;top:3px;left:0;right:0;z-index:1000}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2rem;max-width:var(--max-w);margin:0 auto;transition:all .4s var(--ease)}
.nav.transparent{color:#fff}
.nav.scrolled{background:rgba(253,252,248,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:var(--text);box-shadow:0 4px 28px rgba(10,30,15,.08);border-bottom:1px solid var(--border);border-radius:0 0 22px 22px;margin:0 1rem;max-width:calc(var(--max-w) - 2rem)}
.brand{display:flex;align-items:center;gap:.65rem;font-family:'Playfair Display',serif;font-size:1.08rem;font-weight:700}
.brand .logo{font-size:1.5rem}
nav ul{display:flex;gap:1.5rem;align-items:center;list-style:none}
nav a{font-size:.9rem;font-weight:500;padding:.25rem 0;position:relative;transition:opacity .2s}
nav a::after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:2px;background:var(--gold);border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
nav a:hover::after,nav a.active::after{transform:scaleX(1)}
.cta-book{padding:.55rem 1.25rem!important;border-radius:999px!important;font-weight:700!important;font-size:.88rem;transition:all .22s var(--ease)!important}
.nav.transparent .cta-book{background:rgba(255,255,255,.12)!important;border:1.5px solid rgba(255,255,255,.3);color:#fff!important}
.nav.scrolled .cta-book{background:linear-gradient(135deg,var(--forest-mid),var(--moss))!important;color:#fff!important;box-shadow:0 4px 16px rgba(27,64,41,.3)}
.cta-book::after{display:none!important}
.cta-book:hover{transform:translateY(-1px)!important;opacity:.9}
.hamburger{display:none;background:none;border:0;color:inherit;font-size:1.5rem;cursor:pointer;padding:.3rem}

/* ---- MOBILE OVERLAY ---- */
#mobileOverlay{display:none;position:fixed;inset:0;background:linear-gradient(160deg,#080f09,#16302a);z-index:1100;padding:5rem 2rem 2rem}
.mob-brand{font-family:'Playfair Display',serif;color:rgba(255,255,255,.35);font-size:.9rem;margin-bottom:2.5rem}
.mob-nav a{display:block;color:#fff;font-size:1.5rem;font-family:'Playfair Display',serif;padding:.95rem 0;border-bottom:1px solid rgba(255,255,255,.06);transition:color .2s}
.mob-nav a:hover{color:var(--gold-light)}
.mob-book{margin-top:2rem}
#closeMobile{position:absolute;right:1.5rem;top:1.5rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#fff;width:44px;height:44px;border-radius:50%;font-size:1.1rem;cursor:pointer;display:grid;place-items:center;transition:background .2s}
#closeMobile:hover{background:rgba(255,255,255,.14)}

/* ---- HERO ---- */
main{margin-top:0}
.hero-slider{position:relative;height:100vh;min-height:640px;overflow:hidden}
.slider{position:absolute;inset:0}
.slide{position:absolute;inset:0;display:flex;align-items:center;overflow:hidden}
.slide-bg{position:absolute;inset:-8%;background-size:cover;background-position:center}
.slide.is-active .slide-bg{animation:kenBurns 14s ease-in-out forwards}
@keyframes kenBurns{0%{transform:scale(1.08) translate(0,0)}100%{transform:scale(1.18) translate(-2%,1.5%)}}
.slide-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(5,12,7,.78) 0%,rgba(5,12,7,.45) 50%,rgba(5,12,7,.12) 100%)}
.slide-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2.5rem;padding:2rem;width:100%;max-width:var(--max-w);margin:0 auto}
.badge{display:inline-flex;align-items:center;gap:.45rem;background:rgba(212,160,48,.12);border:1px solid rgba(212,160,48,.35);backdrop-filter:blur(10px);color:var(--gold-pale);padding:.4rem 1rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.25rem}
.slide h1{color:#fff;font-size:clamp(2.4rem,6vw,4.5rem);line-height:1.06;margin-bottom:1.1rem;text-shadow:0 2px 20px rgba(0,0,0,.2)}
.slide h1 em{color:var(--gold-light);font-style:italic}
.slide .subtitle{color:rgba(255,255,255,.85);font-size:1.1rem;max-width:52ch;line-height:1.7;margin-bottom:2rem}
.hero-ctas{display:flex;gap:.75rem;flex-wrap:wrap}
.stats-panel{display:flex;flex-direction:column;background:rgba(255,255,255,.07);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);overflow:hidden;min-width:180px;flex-shrink:0}
.stat{padding:1.5rem 1.75rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.06);transition:background .2s}
.stat:last-child{border-bottom:none}
.stat:hover{background:rgba(255,255,255,.04)}
.stat-num{display:block;font-family:'Playfair Display',serif;font-size:2.5rem;font-weight:700;color:var(--gold-light);line-height:1;margin-bottom:.3rem}
.stat-label{font-size:.8rem;color:rgba(255,255,255,.65);letter-spacing:.04em}
.slider-controls{position:absolute;bottom:2rem;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:1rem;z-index:5}
.slide-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff;width:42px;height:42px;border-radius:50%;font-size:1.1rem;cursor:pointer;transition:background .2s;display:grid;place-items:center}
.slide-btn:hover{background:rgba(255,255,255,.2)}
.dots{display:flex;gap:.5rem;align-items:center}
.dots button{width:28px;height:3px;border-radius:2px;border:none;background:rgba(255,255,255,.3);cursor:pointer;transition:all .3s var(--ease);padding:0}
.dots button.active{width:54px;background:var(--gold-light)}
.scroll-hint{position:absolute;bottom:2rem;right:2.5rem;color:rgba(255,255,255,.45);font-size:.75rem;font-weight:500;letter-spacing:.08em;display:flex;flex-direction:column;align-items:center;gap:.6rem;z-index:5;animation:floatDown 2.5s ease-in-out infinite}
.scroll-hint::after{content:'';width:1px;height:36px;background:linear-gradient(to bottom,rgba(255,255,255,.45),transparent)}
@keyframes floatDown{0%,100%{transform:translateY(0);opacity:.45}50%{transform:translateY(6px);opacity:.7}}

/* ---- DESTINATIONS ---- */
#destinations{background:var(--snow)}
.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.card{position:relative;border-radius:var(--r);overflow:hidden;min-height:240px;color:#fff;cursor:pointer;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}
.card-bg{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s var(--ease)}
.card:hover .card-bg{transform:scale(1.06)}
.card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,8,.9) 20%,rgba(5,12,8,.2) 65%,transparent 100%);transition:background .3s}
.card:hover .card-overlay{background:linear-gradient(0deg,rgba(5,12,8,.88) 30%,rgba(5,12,8,.35) 72%,transparent 100%)}
.card-content{position:relative;z-index:2;padding:1.5rem;height:100%;display:flex;flex-direction:column;justify-content:flex-end}
.season-badge{position:absolute;top:1rem;right:1rem;background:rgba(212,160,48,.85);backdrop-filter:blur(6px);color:#fff;padding:.25rem .65rem;border-radius:999px;font-size:.72rem;font-weight:700;z-index:3}
.card h3{font-size:1.25rem;color:#fff;margin-bottom:.4rem}
.card p{font-size:.87rem;color:rgba(255,255,255,.78);line-height:1.55;margin-bottom:.45rem}
.card small{font-size:.75rem;color:rgba(255,255,255,.48);display:block;margin-bottom:.8rem;line-height:1.4}
.explore-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--gold-light);font-weight:700;font-size:.85rem;transition:gap .2s}
.explore-link:hover{gap:.6rem}
.card.featured{grid-column:span 2;min-height:340px}
.card.featured .card-content{padding:2rem 2.25rem}
.card.featured h3{font-size:1.75rem}
.card.featured p{font-size:.97rem;max-width:54ch}

/* ---- SERVICES ---- */
#services{background:var(--cream)}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:2.5rem}
.service{background:#fff;border-radius:var(--r);padding:1.75rem 1.5rem;border:1px solid var(--border);position:relative;overflow:hidden;transition:transform .28s var(--ease),box-shadow .28s var(--ease)}
.service::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--forest-mid),var(--sage));transform:scaleX(0);transform-origin:left;transition:transform .32s ease}
.service:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.service:hover::after{transform:scaleX(1)}
.service-num{position:absolute;top:1.25rem;right:1.25rem;font-family:'Playfair Display',serif;font-size:1.8rem;font-weight:700;color:var(--cloud);line-height:1}
.service-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;margin-bottom:1.1rem}
.service h4{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:.5rem;font-family:'DM Sans',sans-serif;line-height:1.35}
.service p{font-size:.88rem;color:var(--text-muted);line-height:1.7}

/* ---- PROCESS ---- */
.process{background:#fff}
.process-grid{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:1rem;margin-top:2.5rem}
.process-step{background:var(--snow);border-radius:var(--r);padding:2rem 1.5rem;border:1px solid var(--border);text-align:center;transition:all .28s var(--ease)}
.process-step:hover{box-shadow:var(--shadow);transform:translateY(-4px);border-color:rgba(33,87,56,.2)}
.step-num{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;background:linear-gradient(135deg,var(--forest-mid),var(--moss));color:#fff;font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;border-radius:50%;margin:0 auto 1.25rem}
.process-step h4{font-size:1.05rem;color:var(--text);margin-bottom:.5rem;font-family:'DM Sans',sans-serif;font-weight:700}
.process-step p{font-size:.88rem;color:var(--text-muted);line-height:1.65}
.process-arrow{font-size:1.8rem;color:var(--gold);opacity:.4;text-align:center}

/* ---- ABOUT ---- */
#about{background:var(--snow)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;margin-top:2.5rem}
.about-visual{background:linear-gradient(145deg,var(--moss),var(--dark));border-radius:var(--r);padding:2.5rem;color:#fff;position:relative;overflow:hidden;min-height:400px;display:flex;flex-direction:column;justify-content:space-between}
.about-visual::before{content:'';position:absolute;top:-40px;right:-40px;width:200px;height:200px;background:radial-gradient(circle,rgba(212,160,48,.2),transparent 70%);border-radius:50%}
.about-visual::after{content:"🏔️";position:absolute;right:-2rem;bottom:-2rem;font-size:10rem;opacity:.07;pointer-events:none}
.about-lead{font-size:1.2rem;font-family:'Playfair Display',serif;color:var(--gold-light);margin-bottom:1.25rem;line-height:1.45;font-style:italic}
.about-visual p{color:rgba(255,255,255,.8);line-height:1.75;font-size:.97rem}
.about-visual p+p{margin-top:.85rem}
.about-badge{display:inline-block;background:var(--gold);color:var(--forest);padding:.4rem .9rem;border-radius:6px;font-weight:700;font-size:.82rem;margin-top:1.75rem;letter-spacing:.03em}
.about-content p{color:var(--text-mid);line-height:1.8;font-size:1rem;margin-bottom:1rem}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin:1.25rem 0 1.75rem}
.feature{background:var(--cloud);padding:.75rem 1rem;border-radius:var(--r-sm);font-size:.88rem;font-weight:500;color:var(--text-mid);border:1px solid rgba(0,0,0,.04);display:flex;align-items:center;gap:.4rem}

/* ---- WHY ---- */
.why{background:var(--deep);position:relative;overflow:hidden}
.why::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 15% 60%,rgba(212,160,48,.07) 0%,transparent 55%),radial-gradient(ellipse at 85% 20%,rgba(33,87,56,.18) 0%,transparent 50%)}
.why .wrap{position:relative}
.why .section-tag{color:var(--gold-light);background:rgba(212,160,48,.08);border-color:rgba(212,160,48,.15)}
.why .section-title{color:#fff}
.why .section-sub{color:rgba(255,255,255,.55)}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:2.5rem}
.why-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);padding:2rem 1.5rem;border-radius:var(--r);transition:all .3s var(--ease);position:relative;overflow:hidden}
.why-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:scaleX(0);transform-origin:left;transition:transform .3s ease}
.why-card:hover{background:rgba(255,255,255,.06);border-color:rgba(212,160,48,.25);transform:translateY(-5px)}
.why-card:hover::before{transform:scaleX(1)}
.why-icon{font-size:1.75rem;margin-bottom:1rem}
.why-card h4{font-size:1.02rem;color:#fff;margin-bottom:.6rem;font-family:'DM Sans',sans-serif;font-weight:700}
.why-card p{font-size:.87rem;color:rgba(255,255,255,.55);line-height:1.7}

/* ---- TESTIMONIALS ---- */
#testimonials{background:var(--cream)}
.test-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.test{background:#fff;padding:2rem;border-radius:var(--r);border:1px solid var(--border);position:relative;overflow:hidden;transition:all .28s var(--ease);display:flex;flex-direction:column}
.test:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.test-mark{position:absolute;top:1rem;right:1.75rem;font-family:'Playfair Display',serif;font-size:5rem;color:var(--cloud);line-height:1;font-style:italic;pointer-events:none}
.test-stars{color:var(--gold);font-size:.9rem;letter-spacing:.12em;margin-bottom:1rem}
.test p{font-size:.92rem;color:var(--text-mid);line-height:1.75;flex:1;margin-bottom:1.5rem}
.test-avatar{display:flex;align-items:center;gap:.75rem}
.avatar-circle{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--moss),var(--forest-mid));color:#fff;display:grid;place-items:center;font-weight:700;font-size:.95rem;flex-shrink:0}
.test-author strong{font-size:.9rem;color:var(--text);display:block}
.test-author span{font-size:.78rem;color:var(--text-muted);margin-top:.1rem;display:block}

/* ---- CTA ---- */
.cta-section{background:var(--snow)}
.cta-banner{background:linear-gradient(130deg,var(--forest) 0%,var(--moss) 55%,var(--sage) 100%);color:#fff;padding:3.5rem 3rem;border-radius:var(--r);display:flex;justify-content:space-between;align-items:center;gap:2rem;position:relative;overflow:hidden}
.cta-banner::before{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E")}
.cta-banner::after{content:'🏔️';position:absolute;right:-2rem;top:50%;transform:translateY(-50%);font-size:9rem;opacity:.06;pointer-events:none}
.cta-text{position:relative}
.cta-banner h3{font-size:1.8rem;color:#fff;margin-bottom:.4rem}
.cta-banner p{color:rgba(255,255,255,.78);font-size:1.02rem}
.cta-btns{display:flex;gap:.75rem;flex-shrink:0;position:relative}

/* ---- CONTACT ---- */
#contact{background:var(--cream)}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:2.5rem;margin-top:2.5rem}
.info-stack{display:flex;flex-direction:column;gap:.85rem}
.info-card{background:#fff;padding:1.1rem 1.25rem;border-radius:var(--r-sm);display:flex;align-items:flex-start;gap:1rem;border:1px solid var(--border);transition:all .22s var(--ease)}
.info-card:hover{box-shadow:var(--shadow-sm);transform:translateX(4px)}
.info-icon-wrap{width:40px;height:40px;background:linear-gradient(135deg,var(--forest-mid),var(--moss));color:#fff;border-radius:10px;display:grid;place-items:center;font-size:1rem;flex-shrink:0}
.info-card-text strong{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:.25rem}
.info-card-text div,.info-card-text a{font-size:.92rem;color:var(--text-mid)}
.info-card-text a{color:var(--moss);font-weight:500}
.info-card-text a:hover{color:var(--forest)}
.reply-note{font-size:.78rem;color:var(--text-muted);margin-top:.2rem}
.form-card{background:#fff;border-radius:var(--r);padding:2.25rem;border:1px solid var(--border);box-shadow:var(--shadow-xs)}
.form-title{font-size:1.15rem;font-weight:700;color:var(--text);margin-bottom:1.5rem;font-family:'DM Sans',sans-serif}
.form-row{display:flex;gap:.75rem;margin-bottom:.75rem}
.form-group{flex:1;margin-bottom:.75rem}
.form-group:last-child{margin-bottom:0}
form input,form select,form textarea{width:100%;padding:.8rem 1.05rem;border-radius:var(--r-sm);border:1.5px solid #e0e9e4;font-family:'DM Sans',sans-serif;font-size:.93rem;color:var(--text);background:var(--snow);transition:border-color .2s,box-shadow .2s;-webkit-appearance:none}
form input::placeholder,form textarea::placeholder{color:var(--text-muted)}
form input:focus,form select:focus,form textarea:focus{outline:none;border-color:var(--moss);box-shadow:0 0 0 3px rgba(33,87,56,.1);background:#fff}
form textarea{resize:vertical}
.btn-submit{width:100%;padding:.9rem;background:linear-gradient(135deg,var(--forest-mid),var(--moss));color:#fff;border:none;border-radius:999px;font-size:1rem;font-weight:700;font-family:'DM Sans',sans-serif;cursor:pointer;transition:all .25s var(--ease);box-shadow:0 4px 20px rgba(27,64,41,.28);letter-spacing:.02em;margin-top:.25rem}
.btn-submit:hover{box-shadow:0 8px 28px rgba(27,64,41,.45);transform:translateY(-2px)}

/* ---- FOOTER ---- */
footer{background:var(--deep);color:#fff;padding:4rem 1.5rem 1.75rem}
.footer-inner{max-width:var(--max-w);margin:0 auto}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid rgba(255,255,255,.05)}
.footer-brand{font-family:'Playfair Display',serif;font-size:1.15rem;display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}
.footer-desc{color:rgba(255,255,255,.45);font-size:.88rem;line-height:1.7;max-width:28ch;margin-bottom:1.25rem}
footer h4{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.35);margin-bottom:1.1rem;font-family:'DM Sans',sans-serif}
footer ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}
footer ul a{color:rgba(255,255,255,.6);font-size:.88rem;transition:color .2s}
footer ul a:hover{color:var(--gold-light)}
.footer-contact{display:flex;flex-direction:column;gap:.55rem}
.footer-contact-item{color:rgba(255,255,255,.6);font-size:.85rem;display:flex;align-items:baseline;gap:.4rem}
.footer-contact-item a{color:rgba(255,255,255,.6);transition:color .2s}
.footer-contact-item a:hover{color:var(--gold-light)}
.socials{display:flex;gap:.6rem}
.social-link{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.07);color:rgba(255,255,255,.6);font-size:.78rem;font-weight:600;transition:all .2s}
.social-link:hover{background:var(--gold);color:var(--forest);border-color:transparent}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:1.5rem;font-size:.82rem;color:rgba(255,255,255,.28);flex-wrap:wrap;gap:1rem}
.footer-bottom a{color:var(--gold-light)}

/* ---- FLOATING ---- */
.float-whatsapp{position:fixed;right:1.5rem;bottom:1.5rem;width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,#25d366,#1db954);display:grid;place-items:center;color:#fff;font-size:1.85rem;z-index:998;box-shadow:0 6px 24px rgba(37,211,102,.35);transition:transform .25s var(--ease),box-shadow .25s var(--ease),background .25s var(--ease);animation:waPulse 2.8s ease-in-out infinite;text-decoration:none}
.float-whatsapp:hover{transform:scale(1.12);box-shadow:0 12px 36px rgba(37,211,102,.6);animation:none}
@keyframes waPulse{0%,100%{box-shadow:0 6px 24px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,.25)}60%{box-shadow:0 8px 32px rgba(37,211,102,.55),0 0 0 12px rgba(37,211,102,.0)}}
.wa-label{position:absolute;right:74px;background:#075e54;color:#fff;padding:.4rem .85rem;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap;opacity:0;transform:translateX(6px);transition:opacity .2s,transform .2s;pointer-events:none;box-shadow:0 4px 14px rgba(0,0,0,.18)}
.float-whatsapp:hover .wa-label{opacity:1;transform:translateX(0)}
.back-top{position:fixed;right:1.5rem;bottom:5.75rem;width:46px;height:46px;border-radius:50%;background:var(--forest-mid);color:#fff;border:none;display:none;place-items:center;font-size:1.1rem;cursor:pointer;z-index:997;box-shadow:var(--shadow-sm);transition:all .22s var(--ease)}
.back-top:hover{background:var(--moss);transform:translateY(-2px)}

/* ---- REVEAL ANIMATIONS ---- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.reveal-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .55s ease,transform .55s ease}
.reveal-stagger.visible>*:nth-child(1){opacity:1;transform:none;transition-delay:0s}
.reveal-stagger.visible>*:nth-child(2){opacity:1;transform:none;transition-delay:.1s}
.reveal-stagger.visible>*:nth-child(3){opacity:1;transform:none;transition-delay:.2s}
.reveal-stagger.visible>*:nth-child(4){opacity:1;transform:none;transition-delay:.3s}
.reveal-stagger.visible>*:nth-child(5){opacity:1;transform:none;transition-delay:.4s}
.reveal-stagger.visible>*:nth-child(6){opacity:1;transform:none;transition-delay:.5s}
.reveal-stagger.visible>*:nth-child(7){opacity:1;transform:none;transition-delay:.6s}

/* ---- RESPONSIVE ---- */
@media(max-width:1024px){
  .dest-grid{grid-template-columns:repeat(2,1fr)}
  .card.featured{grid-column:span 2}
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .why-grid{grid-template-columns:repeat(2,1fr)}
  .test-grid{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .process-grid{grid-template-columns:1fr;gap:0}
  .process-arrow{transform:rotate(90deg);text-align:center;padding:.5rem 0;font-size:1.4rem}
  .nav.scrolled{margin:0 .75rem}
}
@media(max-width:768px){
  :root{--section:3.75rem}
  .nav{padding:.85rem 1.25rem}
  nav ul{display:none}
  .hamburger{display:block}
  .slide-inner{grid-template-columns:1fr}
  .stats-panel{flex-direction:row;flex-wrap:wrap;align-self:flex-start;min-width:unset}
  .stat{flex:1;min-width:90px;border-bottom:none;border-right:1px solid rgba(255,255,255,.06)}
  .stat:last-child{border-right:none}
  .about-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .cta-banner{flex-direction:column;text-align:center;padding:2.5rem 1.75rem}
  .cta-btns{justify-content:center;flex-wrap:wrap}
  .scroll-hint{display:none}
  .nav.scrolled{margin:0;border-radius:0}
}
@media(max-width:640px){
  .dest-grid{grid-template-columns:1fr}
  .card.featured{grid-column:auto;min-height:280px}
  .services-grid{grid-template-columns:1fr 1fr}
  .why-grid{grid-template-columns:1fr 1fr}
  .test-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .slide h1{font-size:2.1rem}
  .form-row{flex-direction:column;gap:0}
}
@media(max-width:480px){
  .services-grid{grid-template-columns:1fr}
  .why-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
  .cta-btns .btn{width:100%;max-width:280px}
}

/* =====================================================
   GALLERY SECTION
   ===================================================== */
.gallery-section{background:var(--deep);padding:var(--section) 1.5rem;position:relative;overflow:hidden}
.gallery-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(212,160,48,.06) 0%,transparent 55%),radial-gradient(ellipse at 80% 20%,rgba(33,87,56,.14) 0%,transparent 50%)}
.gallery-section .wrap{position:relative}
.gallery-section .section-tag{color:var(--gold-light);background:rgba(212,160,48,.08);border-color:rgba(212,160,48,.15)}
.gallery-section .section-title{color:#fff}
.gallery-section .section-sub{color:rgba(255,255,255,.55)}

.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:10px;margin-top:2.5rem}
.gallery-item{position:relative;overflow:hidden;border-radius:12px;cursor:pointer;background:var(--forest)}
.gallery-item.wide{grid-column:span 2}
.gallery-item.tall{grid-row:span 2}
.gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.gallery-item:hover img{transform:scale(1.09)}
.gallery-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,7,.82) 0%,rgba(5,12,7,.15) 55%,transparent 100%);opacity:0;transition:opacity .35s ease;display:flex;align-items:flex-end;padding:1.25rem}
.gallery-item:hover .gallery-overlay{opacity:1}
.gallery-caption{color:#fff;font-size:.85rem;font-weight:700;letter-spacing:.04em;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.gallery-view-all{text-align:center;margin-top:2rem}

@media(max-width:1024px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}}
@media(max-width:400px){.gallery-grid{grid-template-columns:1fr;grid-auto-rows:200px}}

/* =====================================================
   PAGE HERO  (inner pages: about / destinations / etc)
   ===================================================== */
.page-hero{position:relative;height:440px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding-top:3px}
.page-hero-bg{position:absolute;inset:-8%;background-size:cover;background-position:center;animation:kenBurns 14s ease-in-out forwards}
.page-hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(5,12,7,.82) 0%,rgba(5,12,7,.52) 55%,rgba(5,12,7,.18) 100%)}
.page-hero-content{position:relative;z-index:2;text-align:center;color:#fff;padding:2rem 1.5rem;max-width:760px}
.page-hero-content .badge{display:inline-flex;align-items:center;gap:.45rem;background:rgba(212,160,48,.12);border:1px solid rgba(212,160,48,.35);backdrop-filter:blur(10px);color:var(--gold-pale);padding:.4rem 1rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.25rem}
.page-hero-content h1{font-size:clamp(2rem,5vw,3.6rem);line-height:1.1;color:#fff;margin-bottom:.85rem;text-shadow:0 2px 20px rgba(0,0,0,.25)}
.page-hero-content h1 em{color:var(--gold-light);font-style:italic}
.page-hero-content p{font-size:1.07rem;color:rgba(255,255,255,.82);max-width:52ch;margin:0 auto;line-height:1.7}

@media(max-width:768px){.page-hero{height:320px}}

/* =====================================================
   ABOUT PAGE SPECIFICS
   ===================================================== */
.about-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin:2.5rem 0}
.about-stat{background:var(--cloud);border-radius:var(--r);padding:2rem 1.5rem;text-align:center;border:1px solid var(--border);transition:all .28s var(--ease)}
.about-stat:hover{box-shadow:var(--shadow);transform:translateY(-5px)}
.about-stat-num{display:block;font-family:'Playfair Display',serif;font-size:2.6rem;font-weight:700;color:var(--moss);line-height:1;margin-bottom:.4rem}
.about-stat-label{font-size:.82rem;color:var(--text-muted);font-weight:500;letter-spacing:.03em}

.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:center;margin-top:2.5rem}
.story-img{position:relative;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-lg)}
.story-img img{width:100%;height:480px;object-fit:cover;display:block}
.story-img-badge{position:absolute;bottom:1.5rem;left:1.5rem;background:rgba(5,12,7,.75);backdrop-filter:blur(12px);border:1px solid rgba(212,160,48,.3);color:var(--gold-light);padding:.5rem 1rem;border-radius:999px;font-size:.82rem;font-weight:700}
.story-text h3{font-size:clamp(1.5rem,2.5vw,2rem);margin-bottom:1rem}
.story-text p{color:var(--text-mid);line-height:1.8;font-size:1rem;margin-bottom:1rem}
.story-text .feature-grid{margin:1.5rem 0 2rem}

.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:2.5rem}
.value-card{background:#fff;border-radius:var(--r);padding:2rem 1.5rem;border:1px solid var(--border);text-align:center;transition:all .28s var(--ease)}
.value-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}
.value-icon{font-size:2.2rem;margin-bottom:1rem}
.value-card h4{font-size:1.05rem;font-weight:700;color:var(--text);margin-bottom:.5rem;font-family:'DM Sans',sans-serif}
.value-card p{font-size:.88rem;color:var(--text-muted);line-height:1.7}

@media(max-width:1024px){.about-stats-row{grid-template-columns:repeat(2,1fr)}.values-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.story-grid{grid-template-columns:1fr}.story-img img{height:320px}}
@media(max-width:480px){.about-stats-row{grid-template-columns:repeat(2,1fr)}}

/* =====================================================
   DESTINATIONS PAGE SPECIFICS
   ===================================================== */
.dest-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.dest-card{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);transition:all .32s var(--ease);display:flex;flex-direction:column}
.dest-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}
.dest-card-img{position:relative;height:260px;overflow:hidden}
.dest-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .55s var(--ease)}
.dest-card:hover .dest-card-img img{transform:scale(1.07)}
.dest-card-season{position:absolute;top:.9rem;right:.9rem;background:rgba(212,160,48,.88);backdrop-filter:blur(6px);color:#fff;padding:.22rem .65rem;border-radius:999px;font-size:.72rem;font-weight:700}
.dest-card-body{padding:1.5rem;flex:1;display:flex;flex-direction:column}
.dest-card-body h3{font-size:1.2rem;color:var(--text);margin-bottom:.5rem}
.dest-card-body p{font-size:.9rem;color:var(--text-mid);line-height:1.65;flex:1;margin-bottom:.75rem}
.dest-card-body small{font-size:.78rem;color:var(--text-muted);display:block;margin-bottom:1rem;line-height:1.5}
.dest-card-body .explore-link{color:var(--moss);font-weight:700;font-size:.88rem;display:inline-flex;align-items:center;gap:.3rem;transition:gap .2s}
.dest-card-body .explore-link:hover{gap:.6rem}

@media(max-width:1024px){.dest-detail-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.dest-detail-grid{grid-template-columns:1fr}}

/* =====================================================
   SERVICES PAGE SPECIFICS
   ===================================================== */
.services-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.75rem;margin-top:2.5rem}
.service-detail-card{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--border);transition:all .28s var(--ease);display:flex;flex-direction:column}
.service-detail-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}
.service-detail-img{height:220px;overflow:hidden}
.service-detail-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.service-detail-card:hover .service-detail-img img{transform:scale(1.06)}
.service-detail-body{padding:1.75rem;flex:1}
.service-detail-num{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--cloud);float:right;line-height:1;margin-left:.5rem}
.service-detail-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;margin-bottom:1rem}
.service-detail-body h3{font-size:1.15rem;font-weight:700;color:var(--text);margin-bottom:.6rem;font-family:'DM Sans',sans-serif}
.service-detail-body p{font-size:.9rem;color:var(--text-muted);line-height:1.75}
.service-detail-body ul{margin-top:.75rem;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:.4rem}
.service-detail-body ul li{font-size:.87rem;color:var(--text-mid);display:flex;align-items:flex-start;gap:.5rem}
.service-detail-body ul li::before{content:'✓';color:var(--moss);font-weight:700;flex-shrink:0;margin-top:.05em}

@media(max-width:768px){.services-detail-grid{grid-template-columns:1fr}}

/* =====================================================
   TOPBAR
   ===================================================== */
.topbar{background:var(--forest);color:rgba(255,255,255,.65);font-size:.8rem;border-bottom:1px solid rgba(255,255,255,.06)}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;padding:.5rem 2rem;max-width:var(--max-w);margin:0 auto;gap:1rem}
.topbar-contacts{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}
.topbar-contacts a{color:rgba(255,255,255,.65);display:flex;align-items:center;gap:.35rem;transition:color .2s}
.topbar-contacts a:hover{color:var(--gold-light)}
.topbar-socials{display:flex;gap:.5rem;align-items:center}
.topbar-socials a{color:rgba(255,255,255,.5);font-size:.78rem;font-weight:700;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.12);transition:all .2s}
.topbar-socials a:hover{color:#fff;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.08)}
@media(max-width:768px){.topbar{display:none}}

/* =====================================================
   TOUR PACKAGES
   ===================================================== */
.pkg-section{background:var(--cream)}
.pkg-grid{display:flex;flex-direction:column;gap:1.5rem;margin-top:2.5rem}
.pkg-card{background:#fff;border-radius:var(--r);overflow:hidden;display:grid;grid-template-columns:300px 1fr;border:1px solid var(--border);box-shadow:var(--shadow-xs);transition:all .32s var(--ease)}
.pkg-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.pkg-img{position:relative;overflow:hidden;min-height:230px}
.pkg-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s var(--ease)}
.pkg-card:hover .pkg-img img{transform:scale(1.06)}
.pkg-duration-badge{position:absolute;bottom:1rem;left:1rem;background:var(--gold);color:#fff;padding:.35rem .85rem;border-radius:999px;font-size:.75rem;font-weight:700;letter-spacing:.03em}
.pkg-tag{position:absolute;top:1rem;left:1rem;background:var(--moss);color:#fff;padding:.22rem .65rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.pkg-body{padding:1.75rem 2rem;display:flex;flex-direction:column;gap:.9rem}
.pkg-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.pkg-title{font-size:1.22rem;font-weight:700;color:var(--text);font-family:'Playfair Display',serif;line-height:1.2}
.pkg-stars{color:var(--gold);font-size:.85rem;margin-top:.2rem}
.pkg-price{text-align:right;flex-shrink:0}
.pkg-price .price-label{font-size:.7rem;color:var(--text-muted);display:block;margin-bottom:.15rem;letter-spacing:.05em;text-transform:uppercase}
.pkg-price .price-val{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;color:var(--moss);line-height:1}
.pkg-route{font-size:.87rem;color:var(--text-mid);line-height:1.5}
.pkg-route strong{color:var(--text);font-weight:700;margin-right:.3rem}
.pkg-amenities{display:flex;gap:.85rem;flex-wrap:wrap}
.pkg-amenity{display:flex;align-items:center;gap:.3rem;font-size:.82rem;color:var(--text-mid);font-weight:500}
.pkg-amenity::before{content:'✓';color:var(--moss);font-weight:700}
.pkg-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:auto;padding-top:.25rem;border-top:1px solid var(--border)}
.pkg-btn-view{padding:.6rem 1.4rem;border-radius:999px;font-size:.88rem;font-weight:700;background:transparent;border:2px solid var(--moss);color:var(--moss);cursor:pointer;transition:all .22s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem}
.pkg-btn-view:hover{background:var(--moss);color:#fff}
.pkg-btn-quote{padding:.6rem 1.4rem;border-radius:999px;font-size:.88rem;font-weight:700;background:linear-gradient(135deg,#25d366,#1ebe5d);color:#fff;border:none;cursor:pointer;transition:all .22s;font-family:'DM Sans',sans-serif;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;box-shadow:0 4px 16px rgba(37,211,102,.25)}
.pkg-btn-quote:hover{box-shadow:0 6px 24px rgba(37,211,102,.4);transform:translateY(-1px)}
@media(max-width:900px){.pkg-card{grid-template-columns:240px 1fr}}
@media(max-width:680px){.pkg-card{grid-template-columns:1fr}.pkg-img{min-height:200px}.pkg-body{padding:1.25rem}.pkg-header{flex-direction:column;gap:.5rem}}

/* =====================================================
   THEMES / ACTIVITIES
   ===================================================== */
.themes-section{background:var(--snow)}
.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-top:2.5rem}
.theme-card{position:relative;border-radius:var(--r);overflow:hidden;height:320px;cursor:pointer;display:flex;align-items:flex-end}
.theme-card-bg{position:absolute;inset:-5%;background-size:cover;background-position:center;transition:transform .5s var(--ease)}
.theme-card:hover .theme-card-bg{transform:scale(1.09)}
.theme-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,7,.9) 0%,rgba(5,12,7,.2) 55%,transparent 100%)}
.theme-card-content{position:relative;z-index:2;padding:1.5rem;width:100%}
.theme-icon{font-size:1.8rem;display:block;margin-bottom:.5rem}
.theme-card-content h3{font-size:1.12rem;color:#fff;margin-bottom:.3rem}
.theme-card-content p{font-size:.82rem;color:rgba(255,255,255,.7);line-height:1.5;margin-bottom:.75rem}
.theme-link{display:inline-flex;align-items:center;gap:.3rem;color:var(--gold-light);font-weight:700;font-size:.82rem;transition:gap .2s}
.theme-link:hover{gap:.6rem}
@media(max-width:1024px){.theme-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.theme-grid{grid-template-columns:1fr}.theme-card{height:240px}}

/* =====================================================
   TRUST / STATS STRIP
   ===================================================== */
.trust-section{background:var(--forest);padding:0}
.trust-strip{display:grid;grid-template-columns:repeat(5,1fr);margin-top:0}
.trust-item{text-align:center;padding:2.25rem 1.5rem;border-right:1px solid rgba(255,255,255,.07);transition:background .25s var(--ease)}
.trust-item:last-child{border-right:none}
.trust-item:hover{background:rgba(255,255,255,.04)}
.trust-icon{font-size:2rem;display:block;margin-bottom:.7rem}
.trust-num{display:block;font-family:'Playfair Display',serif;font-size:2.1rem;font-weight:700;color:var(--gold-light);line-height:1;margin-bottom:.3rem}
.trust-label{font-size:.8rem;color:rgba(255,255,255,.5);font-weight:500;letter-spacing:.03em}
@media(max-width:1024px){.trust-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.trust-strip{grid-template-columns:repeat(2,1fr)}.trust-item{border-bottom:1px solid rgba(255,255,255,.07)}}

/* =====================================================
   TESTIMONIAL CAROUSEL
   ===================================================== */
.testi-carousel-outer{overflow:hidden;margin-top:2.5rem}
.testi-track{display:flex;transition:transform .5s var(--ease)}
.testi-slide{flex-shrink:0;width:100%;padding:0 .5rem;box-sizing:border-box}
.testi-inner{max-width:740px;margin:0 auto;background:#fff;border-radius:var(--r);padding:2.5rem;border:1px solid var(--border);box-shadow:var(--shadow-xs);text-align:center}
.testi-inner .test-mark{font-family:'Playfair Display',serif;font-size:5rem;color:var(--cloud);line-height:.7;display:block;margin-bottom:.5rem}
.testi-inner .test-stars{color:var(--gold);font-size:1rem;letter-spacing:.12em;display:block;margin-bottom:1.25rem}
.testi-inner p{font-size:1rem;color:var(--text-mid);line-height:1.8;font-style:italic;margin-bottom:1.5rem}
.testi-inner .test-avatar{display:flex;align-items:center;justify-content:center;gap:.75rem}
.testi-inner .avatar-circle{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--moss),var(--forest-mid));color:#fff;display:grid;place-items:center;font-weight:700;font-size:1rem;flex-shrink:0}
.testi-inner .test-author strong{display:block;font-size:.95rem;color:var(--text)}
.testi-inner .test-author span{font-size:.8rem;color:var(--text-muted);display:block;margin-top:.1rem}
.testi-nav{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.75rem}
.testi-btn{width:42px;height:42px;border-radius:50%;border:2px solid var(--border);background:#fff;color:var(--text);font-size:1.1rem;cursor:pointer;display:grid;place-items:center;transition:all .22s}
.testi-btn:hover{border-color:var(--moss);color:var(--moss);background:var(--cloud)}
.testi-dots{display:flex;gap:.5rem}
.testi-dot{width:28px;height:3px;border-radius:2px;background:var(--border);cursor:pointer;transition:all .3s var(--ease);border:none;padding:0}
.testi-dot.active{width:54px;background:var(--gold)}

/* =====================================================
   ✨ FABULOUS VISUAL UPGRADE — Premium Edition
   ===================================================== */

/* ---- Custom Scrollbar ---- */
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-track{background:var(--snow)}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--moss),var(--gold));border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--forest-mid),var(--gold-light))}

/* ---- Selection Color ---- */
::selection{background:var(--gold);color:#fff}

/* ---- Section Title Gold Underline Accent ---- */
.section-title{position:relative;display:inline-block}
.section-title::after{content:'';display:block;width:60px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));border-radius:999px;margin-top:.6rem}

/* ---- Enhanced Topbar ---- */
.topbar{background:linear-gradient(90deg,var(--deep) 0%,var(--forest) 40%,var(--forest-mid) 100%);border-bottom:1px solid rgba(212,160,48,.15);position:relative;overflow:hidden}
.topbar::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(212,160,48,.04) 100%);pointer-events:none}

/* ---- Accent Bar Upgrade ---- */
body::before{height:4px;background:linear-gradient(90deg,var(--forest-mid),var(--gold),var(--gold-light),var(--gold),var(--moss));background-size:400% 100%;animation:shimmer 5s linear infinite}

/* ---- Glowing Badges ---- */
.badge{box-shadow:0 0 18px rgba(212,160,48,.15);letter-spacing:.1em}

/* ---- Hero Text Glow ---- */
.slide h1{text-shadow:0 2px 40px rgba(0,0,0,.45),0 0 80px rgba(212,160,48,.08)}
.slide h1 em{text-shadow:0 0 30px rgba(239,191,80,.3)}
.page-hero-content h1{text-shadow:0 2px 40px rgba(0,0,0,.55),0 0 60px rgba(212,160,48,.1)}

/* ---- Hero Overlay Upgrade ---- */
.slide-overlay{background:linear-gradient(135deg,rgba(5,12,7,.82) 0%,rgba(5,12,7,.5) 50%,rgba(10,30,15,.15) 100%)}
.page-hero-overlay{background:linear-gradient(150deg,rgba(5,12,7,.88) 0%,rgba(5,12,7,.6) 45%,rgba(5,12,7,.2) 100%)}

/* ---- Stats Panel Glass Upgrade ---- */
.stats-panel{background:rgba(5,12,7,.35);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(212,160,48,.18);box-shadow:0 8px 40px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.06)}
.stat-num{background:linear-gradient(135deg,var(--gold-light),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ---- Destination Cards Upgrade ---- */
.card{box-shadow:var(--shadow-sm)}
.card::before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,12,7,.95) 0%,transparent 55%);z-index:1;opacity:0;transition:opacity .35s ease}
.card:hover::before{opacity:.35}
.card:hover{box-shadow:0 24px 64px rgba(10,30,15,.3),0 0 0 1px rgba(212,160,48,.15)}
.season-badge{box-shadow:0 2px 12px rgba(212,160,48,.35)}

/* ---- Services Cards Upgrade ---- */
.service{box-shadow:var(--shadow-xs)}
.service:hover{box-shadow:0 16px 48px rgba(10,30,15,.16),0 0 0 1px rgba(33,87,56,.1)}
.service::after{background:linear-gradient(90deg,var(--gold),var(--moss),var(--gold-light))}

/* ---- Process Steps Upgrade ---- */
.step-num{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--forest);box-shadow:0 4px 16px rgba(212,160,48,.35);font-weight:800}
.process-step{border:1px solid transparent;background:linear-gradient(var(--snow),var(--snow)) padding-box,linear-gradient(135deg,var(--border),rgba(212,160,48,.12)) border-box}
.process-step:hover{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,rgba(33,87,56,.3),rgba(212,160,48,.3)) border-box;box-shadow:0 12px 40px rgba(10,30,15,.14)}
.process-arrow{opacity:.6;font-size:2rem}

/* ---- About Section Upgrade ---- */
.about-visual{background:linear-gradient(145deg,var(--forest) 0%,var(--moss) 50%,var(--forest-mid) 100%);box-shadow:0 20px 60px rgba(10,30,15,.3)}
.about-visual::before{width:280px;height:280px;background:radial-gradient(circle,rgba(212,160,48,.25),transparent 65%)}
.about-stat{background:linear-gradient(145deg,#fff,var(--cloud));border:1px solid rgba(33,87,56,.1)}
.about-stat:hover{box-shadow:0 16px 40px rgba(10,30,15,.14),0 0 0 1px rgba(212,160,48,.2)}
.about-stat-num{background:linear-gradient(135deg,var(--moss),var(--sage));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ---- Story Image Upgrade ---- */
.story-img{box-shadow:0 24px 60px rgba(10,30,15,.22)}
.story-img::before{content:'';position:absolute;inset:-4px;background:linear-gradient(135deg,rgba(212,160,48,.3),rgba(33,87,56,.2));border-radius:calc(var(--r) + 4px);z-index:-1}

/* ---- Values Grid Upgrade ---- */
.value-card{border-top:3px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,rgba(212,160,48,.15),rgba(33,87,56,.1)) border-box}
.value-card:hover{border-top:3px solid var(--gold);background:#fff;box-shadow:0 16px 48px rgba(10,30,15,.14)}
.value-icon{font-size:2.4rem;filter:drop-shadow(0 4px 12px rgba(0,0,0,.1))}

/* ---- Package Cards Upgrade ---- */
.pkg-card{border-top:3px solid var(--gold);box-shadow:var(--shadow-sm)}
.pkg-card:hover{box-shadow:0 24px 64px rgba(10,30,15,.22),0 0 0 1px rgba(212,160,48,.18)}
.pkg-price .price-val{background:linear-gradient(135deg,var(--moss),var(--sage));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:1.6rem}
.pkg-duration-badge{box-shadow:0 4px 14px rgba(212,160,48,.4)}
.pkg-title{background:linear-gradient(135deg,var(--text),var(--forest-mid));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* ---- Theme Cards Upgrade ---- */
.theme-card{box-shadow:var(--shadow-sm)}
.theme-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light));transform:scaleX(0);transform-origin:left;transition:transform .35s ease;z-index:3}
.theme-card:hover::after{transform:scaleX(1)}
.theme-card:hover{box-shadow:0 20px 60px rgba(10,30,15,.35)}
.theme-icon{filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}

/* ---- Why Section Upgrade ---- */
.why{background:linear-gradient(160deg,var(--deep) 0%,#0a1810 50%,var(--dark) 100%)}
.why-icon{width:56px;height:56px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(212,160,48,.12),rgba(33,87,56,.1));border:1px solid rgba(212,160,48,.2);border-radius:14px;font-size:1.5rem;margin-bottom:1rem;transition:all .28s var(--ease)}
.why-card:hover .why-icon{background:linear-gradient(135deg,rgba(212,160,48,.22),rgba(33,87,56,.18));transform:scale(1.08)}
.why-card{border-radius:var(--r);background:rgba(255,255,255,.02);backdrop-filter:blur(4px)}
.why-card:hover{background:rgba(255,255,255,.05);box-shadow:0 16px 48px rgba(0,0,0,.3)}

/* ---- Trust Strip Upgrade ---- */
.trust-section{background:linear-gradient(90deg,var(--deep) 0%,var(--forest) 50%,var(--deep) 100%);position:relative;overflow:hidden}
.trust-section::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 100%,rgba(212,160,48,.08),transparent 60%)}
.trust-num{background:linear-gradient(135deg,var(--gold-light),var(--gold));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.trust-icon{filter:drop-shadow(0 4px 8px rgba(212,160,48,.2))}
.trust-item{border-right:1px solid rgba(212,160,48,.08)}

/* ---- Testimonial Carousel Upgrade ---- */
.testi-inner{border:1px solid rgba(212,160,48,.1);box-shadow:0 12px 48px rgba(10,30,15,.1);position:relative;overflow:hidden}
.testi-inner::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-light),var(--gold));opacity:.7}
.testi-inner .test-mark{color:rgba(212,160,48,.15)}
.testi-btn{box-shadow:var(--shadow-xs)}
.testi-btn:hover{box-shadow:var(--shadow-sm)}

/* ---- Gallery Section Upgrade ---- */
.gallery-section{background:linear-gradient(160deg,var(--deep) 0%,#050f08 50%,var(--dark) 100%)}
.gallery-item{box-shadow:0 4px 16px rgba(0,0,0,.2)}
.gallery-item:hover{box-shadow:0 12px 40px rgba(0,0,0,.4)}
.gallery-item:hover img{transform:scale(1.1)}

/* ---- CTA Banner Upgrade ---- */
.cta-banner{background:linear-gradient(130deg,var(--deep) 0%,var(--forest) 35%,var(--moss) 70%,var(--sage) 100%);box-shadow:0 20px 60px rgba(10,30,15,.25)}
.cta-banner::before{background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/svg%3E")}

/* ---- Buttons Upgrade ---- */
.btn.whatsapp{box-shadow:0 6px 24px rgba(37,211,102,.3);letter-spacing:.02em}
.btn.whatsapp:hover{box-shadow:0 10px 36px rgba(37,211,102,.52),0 0 0 4px rgba(37,211,102,.08)}
.btn.call{box-shadow:0 6px 24px rgba(212,160,48,.35);letter-spacing:.02em}
.btn.call:hover{box-shadow:0 10px 36px rgba(212,160,48,.55),0 0 0 4px rgba(212,160,48,.1)}
.btn-submit{background:linear-gradient(135deg,var(--forest-mid),var(--moss),var(--sage));box-shadow:0 6px 24px rgba(27,64,41,.35);letter-spacing:.03em}
.btn-submit:hover{box-shadow:0 10px 36px rgba(27,64,41,.5),0 0 0 4px rgba(33,87,56,.08)}

/* ---- Nav Upgrade ---- */
.nav.scrolled{box-shadow:0 8px 40px rgba(10,30,15,.12),0 2px 8px rgba(10,30,15,.06)}
.nav.scrolled .cta-book{box-shadow:0 4px 20px rgba(27,64,41,.35)}
nav a.active{color:var(--moss);font-weight:700}

/* ---- Info Cards Upgrade ---- */
.info-card{border-left:3px solid transparent;transition:all .25s var(--ease)}
.info-card:hover{border-left-color:var(--gold);transform:translateX(6px);box-shadow:0 8px 28px rgba(10,30,15,.1)}
.info-icon-wrap{background:linear-gradient(135deg,var(--moss),var(--forest-mid));box-shadow:0 4px 14px rgba(33,87,56,.3)}

/* ---- Form Upgrade ---- */
.form-card{box-shadow:0 12px 40px rgba(10,30,15,.1);border:1px solid rgba(212,160,48,.1)}
form input:focus,form select:focus,form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(212,160,48,.1)}

/* ---- Dest Detail Cards Upgrade ---- */
.dest-card{border-top:3px solid transparent;transition:all .32s var(--ease)}
.dest-card:hover{border-top-color:var(--gold);box-shadow:0 20px 56px rgba(10,30,15,.18)}
.dest-card-season{box-shadow:0 2px 10px rgba(212,160,48,.35)}

/* ---- Service Detail Cards Upgrade ---- */
.service-detail-card{border-top:3px solid transparent}
.service-detail-card:hover{border-top-color:var(--gold);box-shadow:0 16px 48px rgba(10,30,15,.16)}

/* ---- Floating WhatsApp Upgrade ---- */
.float-whatsapp{background:linear-gradient(145deg,#25d366 0%,#1db954 55%,#17a344 100%)}
.float-whatsapp:hover{background:linear-gradient(145deg,#2de070 0%,#25d366 55%,#1db954 100%)}

/* ---- Footer Upgrade ---- */
footer{background:linear-gradient(160deg,#030807 0%,var(--deep) 40%,#040b07 100%);position:relative;overflow:hidden}
footer::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 15% 80%,rgba(212,160,48,.05),transparent 50%),radial-gradient(ellipse at 85% 10%,rgba(33,87,56,.1),transparent 45%);pointer-events:none}
.footer-inner{position:relative}
.footer-brand{font-size:1.25rem;letter-spacing:.02em}
.social-link:hover{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--forest);box-shadow:0 4px 16px rgba(212,160,48,.4)}

/* ---- Back to Top Upgrade ---- */
.back-top{background:linear-gradient(135deg,var(--forest-mid),var(--moss));box-shadow:0 4px 16px rgba(33,87,56,.35)}
.back-top:hover{background:linear-gradient(135deg,var(--moss),var(--sage));box-shadow:0 8px 24px rgba(33,87,56,.5);transform:translateY(-4px)}

/* ---- Section Background Textures ---- */
#destinations,#about,.themes-section{position:relative;overflow:hidden}
#destinations::before{content:'';position:absolute;top:-80px;right:-80px;width:400px;height:400px;background:radial-gradient(circle,rgba(212,160,48,.04),transparent 60%);pointer-events:none}
#services::before{content:'';position:absolute;bottom:-80px;left:-40px;width:350px;height:350px;background:radial-gradient(circle,rgba(33,87,56,.05),transparent 60%);pointer-events:none}

/* ---- Image Hover Overlays ---- */
.dest-card-img::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(212,160,48,.15),transparent);opacity:0;transition:opacity .35s ease}
.dest-card:hover .dest-card-img::after{opacity:1}

/* ---- Mobile Overlay Upgrade ---- */
#mobileOverlay{background:linear-gradient(160deg,#050c07 0%,#0a1810 50%,#060e09 100%)}
.mob-nav a{font-weight:600;letter-spacing:.01em}
.mob-nav a.active{color:var(--gold-light)}

/* ---- Contact Page Specifics ---- */
.contact-grid .form-card{border-top:3px solid var(--gold)}

/* ---- FAQ / Process Steps on Contact Page ---- */
section .process-step h4{color:var(--moss);font-size:1rem}
section .process-step p{font-size:.92rem}

/* ---- Page-level Section Alternation Enhancements ---- */
main > section:nth-child(even){background:var(--snow)}

/* ---- Explore Links Upgrade ---- */
.explore-link{text-shadow:none;padding:.2rem 0;border-bottom:1px solid rgba(212,160,48,.3);transition:gap .2s,border-color .2s,color .2s}
.explore-link:hover{border-bottom-color:var(--gold-light);color:var(--gold-light)}

/* ---- Premium Responsive Additions ---- */
@media(max-width:768px){
  .pkg-card{border-top:3px solid var(--gold);border-left:none}
  .section-title::after{margin-top:.5rem}
  .stats-panel{background:rgba(5,12,7,.45)}
}
@media(max-width:480px){
  .section-title{font-size:1.55rem}
  .cta-banner h3{font-size:1.5rem}
  .testi-inner{padding:1.75rem 1.25rem}
}

/* =====================================================
   BEAUTIFUL HEADER & FOOTER v3.0
   ===================================================== */

/* ---- Nav Logo Image ---- */
.logo-img{width:42px;height:42px;border-radius:11px;object-fit:contain;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.nav.transparent .logo-img{background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.2);padding:5px}
.nav.scrolled .logo-img{background:rgba(14,45,30,.07);border:1.5px solid rgba(33,87,56,.18);padding:4px;box-shadow:0 2px 10px rgba(10,30,15,.12)}
.brand:hover .logo-img{transform:scale(1.06) rotate(-2deg)}

/* ---- Brand Name Wrap + Tagline ---- */
.brand-name-wrap{display:flex;flex-direction:column;line-height:1.15;gap:0}
.brand-tagline{font-size:.6rem;font-family:'DM Sans',sans-serif;font-weight:500;letter-spacing:.1em;text-transform:uppercase;margin-top:.1rem;opacity:.5;transition:opacity .2s}
.brand:hover .brand-tagline{opacity:.75}
.nav.scrolled .brand-tagline{color:var(--text-muted)}

/* ---- Mobile Brand Logo ---- */
.mob-brand-img{width:32px;height:32px;border-radius:8px;object-fit:contain;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:3px;vertical-align:middle;margin-right:.4rem}

/* ---- Topbar FA Icons ---- */
.topbar-socials a{font-size:.95rem;width:30px;height:30px;border-radius:7px}
.topbar-socials a i{font-size:.88rem;line-height:1}
.topbar-contacts a i{margin-right:.3rem;color:var(--gold-light);opacity:.8;font-size:.8rem}

/* ---- Footer Mountain Wave ---- */
footer{padding-top:0}
.footer-mountain-wrap{display:block;line-height:0;pointer-events:none}
.footer-mountain-wrap svg{width:100%;display:block;height:72px}

/* ---- Footer Top Gold Accent ---- */
.footer-top-accent{height:3px;background:linear-gradient(90deg,transparent,var(--gold) 20%,var(--gold-light) 50%,var(--gold) 80%,transparent)}
.footer-inner{padding-top:3.5rem}

/* ---- Footer Logo Image ---- */
.footer-logo-img{width:50px;height:50px;border-radius:13px;object-fit:contain;background:rgba(255,255,255,.06);padding:7px;border:1px solid rgba(255,255,255,.1);transition:all .3s var(--ease);flex-shrink:0}
.footer-logo-img:hover{background:rgba(255,255,255,.11);border-color:rgba(212,160,48,.3);box-shadow:0 4px 16px rgba(0,0,0,.25)}
.footer-brand{align-items:center;gap:.8rem;font-size:1.28rem;letter-spacing:.01em;margin-bottom:1rem}

/* ---- Footer Social Links — Brand Hover Colors ---- */
.social-link{width:44px;height:44px;border-radius:12px;font-size:1rem;border:1px solid rgba(255,255,255,.1);transition:all .28s var(--ease)}
.social-link i{font-size:1rem}
.social-link.fb:hover{background:#1877f2;border-color:#1877f2;color:#fff;box-shadow:0 6px 22px rgba(24,119,242,.45);transform:translateY(-3px)}
.social-link.ig:hover{background:linear-gradient(45deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);border-color:transparent;color:#fff;box-shadow:0 6px 22px rgba(220,39,67,.45);transform:translateY(-3px)}
.social-link.yt:hover{background:#ff0000;border-color:#ff0000;color:#fff;box-shadow:0 6px 22px rgba(255,0,0,.45);transform:translateY(-3px)}
.social-link.wa:hover{background:#25d366;border-color:#25d366;color:#fff;box-shadow:0 6px 22px rgba(37,211,102,.45);transform:translateY(-3px)}
.socials{gap:.7rem;margin-top:.25rem}

/* ---- Footer Contact Icon Boxes ---- */
.footer-contact-item{gap:.65rem;align-items:center}
.footer-ci{width:30px;height:30px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:8px;display:grid;place-items:center;font-size:.78rem;flex-shrink:0;color:var(--gold-light);transition:all .22s var(--ease)}
.footer-contact-item:hover .footer-ci{background:rgba(212,160,48,.12);border-color:rgba(212,160,48,.25)}

/* ---- Footer Newsletter Band ---- */
.footer-newsletter{background:linear-gradient(135deg,rgba(255,255,255,.025),rgba(212,160,48,.04));border:1px solid rgba(212,160,48,.1);border-radius:var(--r);padding:1.75rem 2.25rem;margin-bottom:2.5rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;position:relative;overflow:hidden}
.footer-newsletter::before{content:'';position:absolute;top:-40px;right:-40px;width:180px;height:180px;background:radial-gradient(circle,rgba(212,160,48,.08),transparent 65%);pointer-events:none}
.footer-nl-text h3{font-size:1.05rem;color:#fff;margin-bottom:.3rem;font-family:'Playfair Display',serif}
.footer-nl-text p{font-size:.83rem;color:rgba(255,255,255,.4)}
.footer-nl-form{display:flex;gap:.55rem;flex:1;min-width:220px;max-width:340px}
.footer-nl-form input{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);color:#fff;padding:.62rem 1rem;border-radius:999px;font-size:.86rem;font-family:'DM Sans',sans-serif;outline:none;transition:border-color .2s,background .2s}
.footer-nl-form input::placeholder{color:rgba(255,255,255,.3)}
.footer-nl-form input:focus{border-color:rgba(212,160,48,.45);background:rgba(255,255,255,.09)}
.footer-nl-btn{background:linear-gradient(135deg,var(--gold),var(--gold-light));color:var(--forest);border:none;padding:.62rem 1.25rem;border-radius:999px;font-weight:700;font-size:.86rem;cursor:pointer;white-space:nowrap;transition:all .25s var(--ease);font-family:'DM Sans',sans-serif;letter-spacing:.02em}
.footer-nl-btn:hover{box-shadow:0 6px 22px rgba(212,160,48,.45);transform:translateY(-2px)}

/* ---- Footer Bottom Layout ---- */
.footer-bottom{flex-direction:column;align-items:flex-start;padding-top:1.75rem;gap:.9rem}
.footer-bottom-row{display:flex;justify-content:space-between;align-items:center;width:100%;flex-wrap:wrap;gap:.75rem;font-size:.82rem;color:rgba(255,255,255,.28)}
.footer-bottom-row a{color:var(--gold-light)}

/* ---- Footer Badges ---- */
.footer-badges{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}
.footer-badge{display:inline-flex;align-items:center;gap:.35rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.3rem .8rem;font-size:.73rem;color:rgba(255,255,255,.42);transition:all .2s var(--ease)}
.footer-badge:hover{background:rgba(255,255,255,.07);border-color:rgba(212,160,48,.2);color:rgba(255,255,255,.6)}
.footer-badge i{color:var(--gold);font-size:.72rem}

/* ---- Header + Topbar Stacking — No Overlap ---- */
@media(min-width:769px){
  .topbar{position:fixed;top:4px;left:0;right:0;z-index:1001}
  header{top:50px}
}

/* ---- Responsive Adjustments ---- */
@media(max-width:768px){
  .footer-newsletter{flex-direction:column;align-items:flex-start;padding:1.5rem 1.5rem}
  .footer-nl-form{max-width:100%;width:100%}
  .footer-mountain-wrap svg{height:50px}
  .footer-inner{padding-top:2.5rem}
}
@media(max-width:480px){
  .footer-newsletter{padding:1.25rem}
  .footer-bottom{align-items:center}
  .footer-badges{justify-content:center}
  .footer-bottom-row{flex-direction:column;text-align:center;align-items:center}
  .footer-mountain-wrap svg{height:36px}
}


/* ============================================================
   QUICK ENQUIRY WIDGET
   ============================================================ */

/* --- FAB trigger button (bottom-left) --- */
.eq-fab {
  position: fixed;
  bottom: 1.6rem;
  left: 1.5rem;
  z-index: 900;
  background: var(--forest);
  color: #fff;
  border: none;
  border-radius: 999px;
  padding: .78rem 1.35rem;
  display: flex;
  align-items: center;
  gap: .55rem;
  font-family: inherit;
  font-size: .84rem;
  font-weight: 700;
  letter-spacing: .01em;
  cursor: pointer;
  box-shadow: 0 4px 22px rgba(0,0,0,.28);
  transition: background .2s, transform .2s, box-shadow .2s;
}
.eq-fab i { font-size: 1rem; }
.eq-fab:hover { background: var(--gold); transform: translateY(-3px); box-shadow: 0 8px 30px rgba(0,0,0,.32); }
.eq-fab.active { background: #444; }

/* --- Backdrop overlay --- */
.eq-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  z-index: 950;
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}
.eq-overlay.open { display: block; }

/* --- Slide-in panel --- */
.eq-panel {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -48%) scale(.96);
  z-index: 960;
  background: #fff;
  border-radius: 18px;
  width: min(500px, 95vw);
  max-height: 92vh;
  overflow-y: auto;
  box-shadow: 0 28px 70px rgba(0,0,0,.35);
  opacity: 0;
  pointer-events: none;
  transition: opacity .28s ease, transform .28s ease;
  scrollbar-width: thin;
}
.eq-panel.open { opacity: 1; pointer-events: all; transform: translate(-50%, -50%) scale(1); }

/* Top green accent bar */
.eq-panel::before {
  content: '';
  display: block;
  height: 5px;
  background: linear-gradient(90deg, #25d366 0%, var(--gold) 100%);
  border-radius: 18px 18px 0 0;
}

/* --- Panel header --- */
.eq-panel-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1.3rem 1.5rem .2rem;
  gap: .75rem;
}
.eq-panel-title-wrap { flex: 1; }
.eq-panel-title {
  font-size: 1.18rem;
  font-weight: 700;
  color: var(--forest);
  display: flex;
  align-items: center;
  gap: .45rem;
  margin-bottom: .15rem;
}
.eq-panel-title .wa-icon { color: #25d366; font-size: 1.3rem; }
.eq-panel-badge {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  font-size: .72rem;
  font-weight: 600;
  color: var(--gold);
  background: #fff9ed;
  border: 1px solid #f5dea0;
  border-radius: 999px;
  padding: .15rem .6rem;
}
.eq-close {
  background: #f4f4f4;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 1.1rem;
  line-height: 1;
  color: #666;
  cursor: pointer;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  transition: background .15s, color .15s;
}
.eq-close:hover { background: #ffe0e0; color: #c00; }

.eq-panel-sub {
  padding: .25rem 1.5rem 1rem;
  font-size: .83rem;
  color: var(--stone);
  border-bottom: 1px solid var(--border);
}

/* --- Form body --- */
.eq-panel-body {
  padding: 1.2rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  gap: .9rem;
}
.eq-field { display: flex; flex-direction: column; gap: .32rem; }
.eq-field label {
  font-size: .73rem;
  font-weight: 700;
  color: var(--forest);
  text-transform: uppercase;
  letter-spacing: .07em;
}
.eq-field input,
.eq-field select,
.eq-field textarea {
  padding: .68rem 1rem;
  border: 1.5px solid var(--border);
  border-radius: 9px;
  font-family: inherit;
  font-size: .9rem;
  color: var(--ink);
  background: var(--snow);
  transition: border-color .2s, box-shadow .2s;
  outline: none;
  width: 100%;
  box-sizing: border-box;
}
.eq-field input:focus,
.eq-field select:focus,
.eq-field textarea:focus {
  border-color: var(--gold);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(200,160,60,.12);
}
.eq-field textarea { resize: none; }

.eq-row { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; }

/* --- Submit button --- */
.eq-submit {
  width: 100%;
  padding: .95rem;
  background: #25d366;
  color: #fff;
  border: none;
  border-radius: 11px;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  margin-top: .2rem;
  transition: background .2s, transform .15s, box-shadow .2s;
  box-shadow: 0 4px 18px rgba(37,211,102,.35);
}
.eq-submit i { font-size: 1.2rem; }
.eq-submit:hover { background: #1db954; transform: translateY(-2px); box-shadow: 0 8px 24px rgba(37,211,102,.45); }
.eq-submit:active { transform: translateY(0); }

/* --- Trust note --- */
.eq-note {
  text-align: center;
  font-size: .74rem;
  color: var(--stone);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .35rem;
}
.eq-note i { color: var(--gold); }

/* --- Mobile --- */
@media(max-width: 520px) {
  .eq-row { grid-template-columns: 1fr; }
  .eq-fab span { display: none; }
  .eq-fab { padding: .9rem 1.05rem; left: 1rem; bottom: 1.2rem; border-radius: 50%; }
}
