:root{--p:#1B4332;--pd:#0D2B20;--pl:#2D6A4F;--ac:#D4A017;--al:#F0C040;--w:#fff;--of:#F8F7F3;--td:#1A1A1A;--tm:#4A5568;--tl:#718096;--bd:#E2E8E4;--sh:0 4px 24px rgba(27,67,50,.10);--shl:0 12px 48px rgba(27,67,50,.16);--r:14px;--nh:76px}
*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{font-family:'DM Sans',sans-serif;color:var(--td);background:var(--w);font-size:16px;line-height:1.7;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{display:block;max-width:100%}
h1,h2,h3,h4{font-family:'Playfair Display',serif;line-height:1.2}

/* NAV */
.nb{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nh);background:rgba(13,43,32,.97);backdrop-filter:blur(12px);display:flex;align-items:center;padding:0 4%;box-shadow:0 2px 20px rgba(0,0,0,.18)}
.nl{display:flex;align-items:center;gap:9px;color:var(--w)}
.nl img{height:44px;border-radius:4px}
.nlt span:first-child{display:block;font-size:1rem;color:var(--w);font-weight:700;font-family:'Playfair Display',serif}
.nlt span:last-child{display:block;font-size:.63rem;color:var(--al);font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.nls{margin-left:auto;display:flex;align-items:center;gap:2px;list-style:none}
.nls li a{color:rgba(255,255,255,.85);font-size:.84rem;font-weight:500;padding:7px 10px;border-radius:6px;transition:all .2s}
.nls li a:hover,.nls li a.act{color:var(--al);background:rgba(255,255,255,.08)}
.nc{background:var(--ac)!important;color:var(--pd)!important;padding:7px 15px!important;border-radius:8px!important;font-weight:700!important}
.nc:hover{background:var(--al)!important}
.nh2{display:none;flex-direction:column;gap:5px;cursor:pointer;margin-left:12px}
.nh2 span{width:24px;height:2px;background:var(--w);border-radius:2px}
.mm{display:none;position:fixed;inset:0;z-index:999;background:var(--pd);padding:calc(var(--nh) + 18px) 5% 40px;flex-direction:column;gap:2px;overflow-y:auto}
.mm.open{display:flex}
.mm a{color:rgba(255,255,255,.85);font-size:.96rem;font-weight:500;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08)}

/* PAGE HERO */
.phero{background:linear-gradient(160deg,var(--pd) 0%,var(--p) 100%);padding:calc(var(--nh) + 44px) 5% 44px;text-align:center}
.phero-badge{display:inline-block;background:rgba(212,160,23,.2);color:var(--al);font-size:.75rem;font-weight:600;padding:4px 13px;border-radius:999px;border:1px solid rgba(212,160,23,.35);margin-bottom:12px}
.phero h1{color:var(--w);font-size:clamp(1.9rem,3.5vw,2.8rem);margin:8px 0 12px}
.phero p{color:rgba(255,255,255,.75);max-width:580px;margin:0 auto;font-size:.96rem}

/* SECTION */
section{padding:64px 5%}
.stag{display:inline-block;color:var(--pl);font-size:.73rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;padding:3px 12px;background:rgba(27,67,50,.07);border-radius:999px}
.sh{text-align:center;margin-bottom:36px}
.st{font-size:clamp(1.55rem,3vw,2.2rem);color:var(--td);margin-bottom:8px}
.ss{color:var(--tm);max-width:530px;margin:0 auto 30px;font-size:.93rem}
.bgof{background:var(--of)}

/* FILTER TABS */
.fb{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:32px}
.fb2{padding:8px 18px;border-radius:999px;border:1.5px solid var(--bd);background:var(--w);color:var(--tm);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .22s;font-family:'DM Sans',sans-serif}
.fb2:hover{border-color:var(--p);color:var(--p);background:#f0f7f3}
.fb2.act{background:var(--p);color:var(--w);border-color:var(--p);box-shadow:0 4px 14px rgba(27,67,50,.22)}

/* TOUR CARDS */
.tg{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:22px}
.tc{background:var(--w);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh);border:1px solid var(--bd);transition:all .3s}
.tc:hover{transform:translateY(-5px);box-shadow:var(--shl)}
.tci{height:200px;position:relative;overflow:hidden;background:#c8d8c0}
.tci img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.tc:hover .tci img{transform:scale(1.06)}
.tci-fb{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3.5rem;background:linear-gradient(135deg,var(--p),var(--pl))}
.tbadge{position:absolute;top:10px;left:10px;font-size:.68rem;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--ac);color:var(--pd)}
.tbadge.g{background:rgba(27,67,50,.88);color:var(--w)}.tbadge.r{background:rgba(192,57,43,.88);color:var(--w)}.tbadge.b{background:rgba(37,99,235,.88);color:var(--w)}
.tcb{padding:14px 17px 18px}
.tdest{font-size:.69rem;color:var(--pl);font-weight:600;text-transform:uppercase;letter-spacing:.07em}
.tname{font-size:1.02rem;font-weight:700;margin:3px 0 5px;font-family:'Playfair Display',serif;line-height:1.25}
.tmeta{color:var(--tl);font-size:.78rem;margin-bottom:8px;display:flex;gap:10px;flex-wrap:wrap}
.tdesc{font-size:.8rem;color:var(--tl);margin-bottom:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tfoot{display:flex;align-items:center;justify-content:space-between}
.tprice{font-size:.94rem;font-weight:700;color:var(--p)}
.tprice small{font-size:.7rem;font-weight:400;color:var(--tl);margin-left:2px}
.bsm{background:var(--p);color:var(--w);padding:7px 14px;border-radius:8px;font-size:.8rem;font-weight:600;border:none;cursor:pointer;font-family:'DM Sans',sans-serif;transition:all .2s}
.bsm:hover{background:var(--pl)}

/* BUTTONS */
.bp{background:var(--ac);color:var(--pd);padding:12px 26px;border-radius:10px;font-weight:700;font-size:.92rem;border:none;cursor:pointer;transition:all .2s;font-family:'DM Sans',sans-serif;display:inline-block}
.bp:hover{background:var(--al);transform:translateY(-2px);box-shadow:0 8px 24px rgba(212,160,23,.35)}
.bo{background:transparent;color:var(--w);padding:12px 26px;border-radius:10px;font-weight:600;font-size:.92rem;border:1.5px solid rgba(255,255,255,.4);cursor:pointer;transition:all .2s;font-family:'DM Sans',sans-serif}
.bo:hover{background:rgba(255,255,255,.1)}

/* WHY CARDS */
.wg{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:18px}
.wc{background:var(--w);border-radius:var(--r);padding:22px 18px;border:1px solid var(--bd);transition:all .3s}
.wc:hover{box-shadow:var(--sh);border-color:var(--pl)}
.wi{width:44px;height:44px;border-radius:12px;background:rgba(27,67,50,.08);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:12px}
.wt{font-size:.95rem;font-weight:700;margin-bottom:5px;font-family:'Playfair Display',serif}
.wx{color:var(--tm);font-size:.83rem;line-height:1.6}

/* TESTIMONIALS */
.tesg{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.tesc{background:var(--w);border-radius:var(--r);padding:20px 18px;border:1px solid var(--bd);box-shadow:var(--sh)}
.tstars{color:var(--ac);font-size:.88rem;margin-bottom:9px;letter-spacing:2px}
.ttext{color:var(--tm);font-size:.87rem;margin-bottom:14px;font-style:italic;line-height:1.6}
.tauth{display:flex;align-items:center;gap:9px}
.tav{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--p),var(--pl));display:flex;align-items:center;justify-content:center;color:var(--w);font-weight:700;font-size:.82rem;flex-shrink:0}

/* FAQ */
.fql{max-width:740px;margin:0 auto}
.fqi{border-bottom:1px solid var(--bd);padding:14px 0}
.fqq{display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:600;font-size:.91rem;gap:12px;transition:color .2s}
.fqq:hover{color:var(--p)}
.fqt{width:24px;height:24px;border-radius:50%;background:var(--of);border:1px solid var(--bd);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.95rem;transition:all .3s}
.fqi.open .fqt{background:var(--p);color:var(--w);transform:rotate(45deg)}
.fqa{color:var(--tm);font-size:.88rem;line-height:1.7;max-height:0;overflow:hidden;transition:max-height .4s ease,padding .3s}
.fqi.open .fqa{max-height:350px;padding-top:10px}

/* CARS */
.cg2{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
.cc{background:var(--w);border-radius:var(--r);padding:22px 16px 18px;border:1px solid var(--bd);box-shadow:var(--sh);text-align:center;transition:all .3s}
.cc:hover{transform:translateY(-4px);box-shadow:var(--shl);border-color:var(--pl)}

/* FORMS */
.fr{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-bottom:11px}
.fg{margin-bottom:11px}
.fg label{display:block;font-size:.78rem;font-weight:600;margin-bottom:4px;color:var(--td)}
.fg input,.fg select,.fg textarea{width:100%;padding:10px 12px;border:1.5px solid var(--bd);border-radius:8px;font-family:'DM Sans',sans-serif;font-size:.88rem;outline:none;transition:.2s;background:var(--w);color:var(--td)}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--p)}
.fg textarea{resize:vertical;min-height:88px}

/* CONTACT */
.cog{display:grid;grid-template-columns:1fr 1.4fr;gap:38px}
.coi{display:flex;flex-direction:column;gap:16px}
.cocd{background:var(--w);border-radius:var(--r);padding:18px 16px;border:1px solid var(--bd);box-shadow:var(--sh);display:flex;gap:11px;align-items:flex-start}
.coic{width:40px;height:40px;border-radius:11px;background:rgba(27,67,50,.08);display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.cofb{background:var(--w);border-radius:var(--r);padding:28px 24px;border:1px solid var(--bd);box-shadow:var(--shl)}

/* ABOUT */
.ag{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.aib{background:linear-gradient(135deg,var(--pd),var(--pl));border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:11px}
.asb{background:rgba(255,255,255,.1);border-radius:10px;padding:13px 16px;color:var(--w);border:1px solid rgba(255,255,255,.15)}
.asb .n{font-size:1.85rem;font-weight:700;font-family:'Playfair Display',serif;color:var(--al);display:block}
.asb .l{font-size:.78rem;color:rgba(255,255,255,.7)}
.asr{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.apl{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:8px}
.apl li{display:flex;align-items:flex-start;gap:9px;font-size:.88rem;color:var(--tm)}
.apl li::before{content:'✓';width:19px;height:19px;border-radius:50%;background:rgba(27,67,50,.1);color:var(--p);font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}

/* BOOKING FORM */
.bfb{max-width:680px;margin:0 auto;background:var(--w);border-radius:var(--r);padding:34px 30px;border:1px solid var(--bd);box-shadow:var(--shl)}
.bta{display:flex;gap:6px;margin-bottom:22px;flex-wrap:wrap}
.btab{flex:1;padding:10px;border-radius:9px;text-align:center;border:1.5px solid var(--bd);cursor:pointer;font-weight:600;font-size:.82rem;transition:all .2s;background:var(--w);color:var(--tm);min-width:100px}
.btab.act{background:var(--p);color:var(--w);border-color:var(--p)}
.bsec{display:none}.bsec.act{display:block}
.fsucc{display:none;text-align:center;padding:20px;color:var(--p);font-weight:600}

/* MARQUEE */
.mw{overflow:hidden;padding:20px 0;background:var(--pd)}
.mtrack{display:flex;gap:30px;width:max-content;animation:scroll 40s linear infinite}
.mtrack:hover{animation-play-state:paused}
.mitem{color:rgba(255,255,255,.5);font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;white-space:nowrap;user-select:none}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* CTA BANNER */
.cta-banner{background:linear-gradient(135deg,var(--pd) 0%,var(--pl) 100%);padding:52px 5%;text-align:center}

/* FOOTER */
footer{background:var(--pd);color:rgba(255,255,255,.75);padding:48px 5% 0}
.fg2{display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr;gap:32px;margin-bottom:36px}
.fb3 .lw{font-family:'Playfair Display',serif;font-size:1.1rem;color:var(--w);margin-bottom:10px;display:flex;align-items:center;gap:8px}
.fb3 .lw img{height:34px}
.fb3 p{font-size:.81rem;line-height:1.7;max-width:250px;color:rgba(255,255,255,.6)}
.fsc{display:flex;gap:7px;margin-top:13px}
.sb{width:32px;height:32px;border-radius:9px;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);font-size:.84rem;transition:all .2s;text-decoration:none;font-weight:700}
.sb:hover{background:var(--ac);color:var(--pd)}
.fc h4{color:var(--w);font-size:.81rem;font-weight:700;margin-bottom:12px;letter-spacing:.04em;text-transform:uppercase}
.fc ul{list-style:none;display:flex;flex-direction:column;gap:6px}
.fc ul li a{color:rgba(255,255,255,.55);font-size:.79rem;transition:color .2s}
.fc ul li a:hover{color:var(--al)}
.fbot{border-top:1px solid rgba(255,255,255,.1);padding:14px 0;display:flex;justify-content:space-between;align-items:center;font-size:.75rem;color:rgba(255,255,255,.4);flex-wrap:wrap;gap:6px}

/* WA FLOAT */
.waf{position:fixed;bottom:24px;right:24px;z-index:999;width:52px;height:52px;border-radius:50%;background:#25D366;color:var(--w);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 24px rgba(37,211,102,.5);text-decoration:none;animation:wap 3s infinite}
.waf:hover{transform:scale(1.1)}
@keyframes wap{0%,100%{box-shadow:0 6px 24px rgba(37,211,102,.5)}50%{box-shadow:0 6px 36px rgba(37,211,102,.8)}}

/* PCNT */
.pcnt{background:#FEF9EE;color:var(--p);font-size:.76rem;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid rgba(212,160,23,.3)}

/* RESPONSIVE */
@media(max-width:1024px){.fg2{grid-template-columns:1fr 1fr}.ag{grid-template-columns:1fr}.cog{grid-template-columns:1fr}}
@media(max-width:768px){.nls{display:none}.nh2{display:flex}.fg2{grid-template-columns:1fr 1fr}.bfb{padding:22px 16px}.fr{grid-template-columns:1fr}.cofb{padding:20px 14px}}
@media(max-width:480px){.hbts{flex-direction:column}.fg2{grid-template-columns:1fr}}
