/* ==========================================
   ANUP GROUP — COMPLETE WEBSITE STYLES
   Mobile-first, premium design
   ========================================== */

:root {
  --navy: #2C4A6E;
  --navy-dk: #1A304A;
  --navy-dp: #0F1F30;
  --navy-lt: #EBF0F7;
  --org: #F5941D;
  --org-dk: #D97A10;
  --org-gl: rgba(245,148,29,.15);
  --sky: #1AA8E2;
  --sky-lt: #72CCEF;
  --sand: #F7F5F0;
  --slate: #5A7A9F;
  --muted: #8B9EB5;
  --border: rgba(44,74,110,.10);
  --sh-sm: 0 2px 12px rgba(15,31,48,.08);
  --sh-md: 0 8px 32px rgba(15,31,48,.14);
  --sh-lg: 0 20px 60px rgba(15,31,48,.22);
  --r-xs: 8px; --r-sm: 12px; --r-md: 18px; --r-lg: 24px; --r-xl: 32px;
  --t: all .35s cubic-bezier(.25,.8,.25,1);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { font-size:16px; -webkit-text-size-adjust:100%; }
body { font-family:'Inter',-apple-system,sans-serif; color:var(--navy-dk); background:#fff; line-height:1.65; overflow-x:hidden; }
h1,h2,h3,h4,h5,h6 { font-family:'Poppins',sans-serif; line-height:1.2; }
a { text-decoration:none; color:inherit; transition:var(--t); }
ul { list-style:none; }
img { display:block; width:100%; height:100%; object-fit:cover; }
button { cursor:pointer; border:none; background:none; font-family:inherit; }
.con { max-width:1240px; margin:0 auto; padding:0 20px; }
@media(min-width:1024px){.con{padding:0 48px}}

/* SCROLL PROGRESS */
#sp { position:fixed; top:0; left:0; height:3px; width:0%; background:linear-gradient(90deg,var(--org),var(--sky)); z-index:9999; transition:width .1s linear; }

/* BUTTONS */
.btn { display:inline-flex; align-items:center; gap:8px; padding:13px 26px; border-radius:100px; font-family:'Poppins'; font-weight:600; font-size:14.5px; transition:var(--t); cursor:pointer; border:2px solid transparent; white-space:nowrap; }
.btn-pri { background:var(--org); color:#fff; box-shadow:0 6px 20px rgba(245,148,29,.28); }
.btn-pri:hover { background:var(--org-dk); transform:translateY(-3px); box-shadow:0 14px 36px rgba(245,148,29,.40); }
.btn-out { border-color:var(--navy); color:var(--navy); }
.btn-out:hover { background:var(--navy); color:#fff; transform:translateY(-2px); }
.btn-wh { background:rgba(255,255,255,.12); color:#fff; border-color:rgba(255,255,255,.55); backdrop-filter:blur(8px); }
.btn-wh:hover { background:rgba(255,255,255,.24); transform:translateY(-2px); }
.btn-sm { padding:9px 20px; font-size:13px; }

/* HEADER */
#hdr { position:fixed; top:0; left:0; right:0; z-index:1000; background:rgba(255,255,255,.97); backdrop-filter:blur(14px) saturate(180%); -webkit-backdrop-filter:blur(14px); border-bottom:1px solid var(--border); transition:box-shadow .3s; }
#hdr.sc { box-shadow:var(--sh-md); }
.nav-w { display:flex; align-items:center; justify-content:space-between; padding:14px 20px; max-width:1240px; margin:0 auto; gap:16px; }
@media(min-width:1024px){.nav-w{padding:16px 48px}}
.nav-logo { display:flex; align-items:center; gap:10px; flex-shrink:0; }
.nav-logo img { width:44px; height:44px; object-fit:contain; border-radius:50%; }
.nav-logo-t { font-family:'Poppins'; font-weight:700; font-size:16px; color:var(--navy); line-height:1.15; }
.nav-logo-t small { display:block; font-size:10px; font-weight:400; color:var(--slate); letter-spacing:.04em; }
.nav-links { display:none; align-items:center; gap:4px; flex:1; justify-content:center; }
@media(min-width:900px){.nav-links{display:flex}}
.nl { padding:7px 13px; border-radius:var(--r-xs); font-size:14px; font-weight:500; color:var(--navy-dk); transition:var(--t); }
.nl:hover, .nl.act { color:var(--org); background:var(--org-gl); }
.nav-act { display:flex; align-items:center; gap:8px; flex-shrink:0; }
.nav-ph { display:none; align-items:center; gap:6px; font-size:13px; font-weight:600; color:var(--navy); padding:7px 13px; border-radius:100px; border:1.5px solid var(--border); transition:var(--t); }
@media(min-width:900px){.nav-ph{display:flex}}
.nav-ph:hover { color:var(--org); border-color:var(--org); }
.nav-cta { display:none; }
@media(min-width:900px){.nav-cta{display:inline-flex}}
.hbg { display:flex; flex-direction:column; gap:5px; width:36px; height:36px; align-items:center; justify-content:center; border-radius:var(--r-xs); cursor:pointer; transition:var(--t); }
@media(min-width:900px){.hbg{display:none}}
.hbg:hover { background:var(--navy-lt); }
.hbg span { display:block; width:20px; height:2px; background:var(--navy-dk); border-radius:2px; transition:var(--t); }
.hbg.op span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.hbg.op span:nth-child(2) { opacity:0; transform:scaleX(0); }
.hbg.op span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }

/* MOBILE NAV */
#mnv { position:fixed; inset:0; z-index:999; pointer-events:none; }
.mnv-ov { position:absolute; inset:0; background:rgba(15,31,48,.55); opacity:0; transition:opacity .35s; backdrop-filter:blur(4px); }
.mnv-d { position:absolute; top:0; right:0; width:min(310px,88vw); height:100%; background:#fff; overflow-y:auto; transform:translateX(100%); transition:transform .38s cubic-bezier(.4,0,.2,1); padding:76px 24px 40px; display:flex; flex-direction:column; gap:4px; }
#mnv.op { pointer-events:all; }
#mnv.op .mnv-ov { opacity:1; }
#mnv.op .mnv-d { transform:translateX(0); }
.mnl { display:block; padding:13px 14px; border-radius:var(--r-sm); font-size:15.5px; font-weight:500; color:var(--navy-dk); transition:var(--t); border-bottom:1px solid rgba(44,74,110,.06); }
.mnl:hover { color:var(--org); background:var(--org-gl); border-color:transparent; }
.mn-cta { margin-top:20px; display:flex; flex-direction:column; gap:10px; }

/* HERO */
#hero { position:relative; min-height:100svh; min-height:100vh; display:flex; align-items:center; overflow:hidden; padding-top:72px; }
.h-bg { position:absolute; inset:0; z-index:0; }
.h-bg img { width:100%; height:100%; object-fit:cover; object-position:center; }
.h-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(15,31,48,.78) 0%,rgba(15,31,48,.42) 50%,rgba(26,48,74,.68) 100%); }
.h-cnt { position:relative; z-index:2; color:#fff; width:100%; padding:56px 0; }
.h-eye { display:inline-flex; align-items:center; gap:10px; font-size:12.5px; font-weight:600; letter-spacing:.10em; text-transform:uppercase; color:#FCD5AC; margin-bottom:18px; }
.h-eye::before { content:''; width:28px; height:2px; background:var(--org); border-radius:2px; flex-shrink:0; }
.h-tit { font-size:clamp(34px,6vw,70px); font-weight:700; line-height:1.08; margin-bottom:20px; text-shadow:0 2px 20px rgba(0,0,0,.3); }
.h-tit em { font-style:italic; color:var(--sky-lt); font-family:'Playfair Display'; }
.h-sub { font-size:clamp(15px,2vw,19px); font-weight:300; color:rgba(255,255,255,.88); margin-bottom:36px; max-width:540px; line-height:1.65; }
.h-btns { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:48px; }
.h-bgs { display:flex; flex-wrap:wrap; gap:10px; }
.h-bg2 { display:flex; align-items:center; gap:7px; background:rgba(255,255,255,.11); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.20); border-radius:100px; padding:7px 14px; font-size:12.5px; font-weight:500; color:#fff; }
.h-bg2 i { color:var(--org); font-size:13px; }
.scroll-hint { position:absolute; bottom:28px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:5px; color:rgba(255,255,255,.6); font-size:10.5px; letter-spacing:.08em; text-transform:uppercase; z-index:2; animation:bnc 2s infinite; }
.scroll-hint i { font-size:17px; color:var(--org); }
@keyframes bnc { 0%,100%{transform:translateX(-50%) translateY(0)} 50%{transform:translateX(-50%) translateY(-8px)} }

/* TRUSTED BAR */
.tb { background:var(--sand); border-top:1px solid var(--border); border-bottom:1px solid var(--border); padding:16px 0; overflow:hidden; }
.tb-i { display:flex; align-items:center; gap:36px; animation:mq 28s linear infinite; width:max-content; }
.tb-it { display:flex; align-items:center; gap:7px; white-space:nowrap; font-size:13px; font-weight:600; color:var(--slate); flex-shrink:0; }
.tb-it i { color:var(--org); font-size:15px; }
@keyframes mq { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }

/* SECTIONS */
.sec { padding:72px 0; }
.sec-alt { background:var(--sand); }
.sec-nav { background:var(--navy); }
.sec-dk { background:var(--navy-dp); }
.sec-hd { max-width:620px; margin:0 auto 48px; text-align:center; }
.sec-ey { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--org); margin-bottom:12px; }
.sec-hd h2 { font-size:clamp(26px,4vw,40px); font-weight:700; color:var(--navy-dk); margin-bottom:14px; line-height:1.18; }
.sec-hd p { color:var(--slate); font-size:16px; line-height:1.7; }

/* REVEAL */
.rv { opacity:0; transform:translateY(30px); transition:opacity .65s ease,transform .65s ease; }
.rv.vis { opacity:1; transform:translateY(0); }
.d1{transition-delay:.10s} .d2{transition-delay:.20s} .d3{transition-delay:.30s}

/* ABOUT */
.ab-g { display:grid; gap:40px; align-items:center; }
@media(min-width:900px){.ab-g{grid-template-columns:1fr 1fr;gap:64px}}
.ab-imgs { position:relative; height:400px; }
@media(min-width:600px){.ab-imgs{height:480px}}
.ab-m { position:absolute; top:0; left:0; width:78%; height:84%; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--sh-lg); }
.ab-a { position:absolute; bottom:0; right:0; width:48%; height:50%; border-radius:var(--r-md); overflow:hidden; border:5px solid #fff; box-shadow:var(--sh-lg); }
.ab-bdg { position:absolute; top:28px; right:-8px; z-index:5; background:var(--org); color:#fff; border-radius:var(--r-sm); padding:12px 16px; text-align:center; box-shadow:0 8px 24px rgba(245,148,29,.35); animation:fl 3s ease-in-out infinite; }
.ab-bdg strong { display:block; font-family:'Poppins'; font-size:26px; font-weight:800; line-height:1; }
.ab-bdg span { font-size:10.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; opacity:.9; }
@keyframes fl { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
.ab-txt .sec-ey { text-align:left; display:block; margin-bottom:8px; }
.ab-txt h2 { font-size:clamp(24px,3.5vw,36px); font-weight:700; color:var(--navy-dk); margin-bottom:16px; line-height:1.18; }
.ab-txt p { color:var(--slate); margin-bottom:18px; font-size:15.5px; line-height:1.75; }
.ab-fts { display:flex; flex-direction:column; gap:12px; margin-bottom:28px; }
.ab-ft { display:flex; align-items:flex-start; gap:12px; }
.ab-fi { width:36px; height:36px; border-radius:var(--r-xs); flex-shrink:0; background:var(--org-gl); display:flex; align-items:center; justify-content:center; color:var(--org); font-size:15px; }
.ab-ftx h5 { font-size:14.5px; font-weight:600; color:var(--navy-dk); margin-bottom:2px; }
.ab-ftx p { font-size:13.5px; color:var(--slate); margin:0; line-height:1.5; }
.ab-sts { display:flex; gap:28px; margin-top:28px; flex-wrap:wrap; }
.ab-st { border-left:3px solid var(--org); padding-left:14px; }
.ab-st strong { display:block; font-family:'Poppins'; font-size:28px; font-weight:700; color:var(--navy-dk); line-height:1.1; }
.ab-st span { font-size:12px; color:var(--slate); font-weight:500; }

/* DESTINATIONS */
.dest-g { display:grid; gap:12px; grid-template-columns:1fr 1fr; }
@media(min-width:600px){.dest-g{grid-template-columns:repeat(3,1fr)}}
@media(min-width:900px){.dest-g{grid-template-columns:repeat(4,1fr)}}
.dest-c { position:relative; border-radius:var(--r-md); overflow:hidden; cursor:pointer; aspect-ratio:3/4; background:var(--navy-dp); transition:var(--t); }
.dest-c:nth-child(1) { grid-row:span 2; aspect-ratio:auto; min-height:280px; }
.dest-c:nth-child(4) { grid-row:span 2; aspect-ratio:auto; min-height:280px; }
@media(max-width:599px){.dest-c:nth-child(1),.dest-c:nth-child(4){grid-row:span 1;aspect-ratio:3/4;min-height:auto}}
.dest-c img { transition:transform .65s ease; }
.dest-c:hover img { transform:scale(1.10); }
.dest-c::after { content:''; position:absolute; inset:0; background:linear-gradient(to top,rgba(15,31,48,.88) 0%,rgba(15,31,48,.18) 55%,transparent 100%); }
.dest-c:hover { transform:scale(1.015); box-shadow:var(--sh-lg); z-index:2; }
.dest-l { position:absolute; bottom:0; left:0; right:0; z-index:2; padding:16px 14px; }
.dest-l h4 { font-family:'Poppins'; font-size:17px; font-weight:700; color:#fff; margin-bottom:3px; }
.dest-l span { font-size:11.5px; color:rgba(255,255,255,.78); font-weight:500; }
.dest-tag { display:inline-block; margin-bottom:5px; background:var(--org); color:#fff; font-size:10px; font-weight:700; padding:3px 9px; border-radius:100px; letter-spacing:.06em; text-transform:uppercase; }

/* WHY CHOOSE */
.why-g { display:grid; gap:18px; grid-template-columns:1fr; }
@media(min-width:540px){.why-g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.why-g{grid-template-columns:repeat(4,1fr)}}
.why-c { background:#fff; border-radius:var(--r-md); padding:26px 22px; border:1px solid var(--border); transition:var(--t); position:relative; overflow:hidden; }
.why-c::before { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--org),var(--sky)); transform:scaleX(0); transition:var(--t); }
.why-c:hover { transform:translateY(-8px); box-shadow:var(--sh-lg); border-color:transparent; }
.why-c:hover::before { transform:scaleX(1); }
.why-i { width:52px; height:52px; border-radius:var(--r-sm); background:var(--org-gl); display:flex; align-items:center; justify-content:center; font-size:22px; color:var(--org); margin-bottom:18px; transition:var(--t); }
.why-c:hover .why-i { background:var(--org); color:#fff; }
.why-c h4 { font-family:'Poppins'; font-size:16px; font-weight:700; color:var(--navy-dk); margin-bottom:9px; }
.why-c p { font-size:14px; color:var(--slate); line-height:1.65; }
.stats-b { background:var(--navy); border-radius:var(--r-lg); padding:36px 40px; margin-top:52px; display:grid; gap:18px; grid-template-columns:repeat(2,1fr); }
@media(min-width:600px){.stats-b{grid-template-columns:repeat(4,1fr)}}
.stat-i { text-align:center; }
.stat-i strong { font-family:'Poppins'; font-size:34px; font-weight:800; color:var(--org); display:block; }
.stat-i span { font-size:12.5px; color:rgba(255,255,255,.68); font-weight:500; line-height:1.4; display:block; margin-top:4px; }

/* PACKAGES */
.pkg-g { display:grid; gap:22px; grid-template-columns:1fr; }
@media(min-width:600px){.pkg-g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.pkg-g{grid-template-columns:repeat(3,1fr)}}
.pkg-c { background:#fff; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--sh-sm); transition:var(--t); display:flex; flex-direction:column; }
.pkg-c:hover { transform:translateY(-10px); box-shadow:var(--sh-lg); }
.pkg-img { height:210px; position:relative; flex-shrink:0; background:var(--navy-dp); }
.pkg-bdg { position:absolute; top:13px; left:13px; background:var(--org); color:#fff; font-size:11px; font-weight:700; font-family:'Poppins'; padding:4px 12px; border-radius:100px; letter-spacing:.04em; text-transform:uppercase; }
.pkg-dur { position:absolute; top:13px; right:13px; background:rgba(15,31,48,.72); backdrop-filter:blur(6px); color:#fff; font-size:11.5px; font-weight:600; padding:4px 11px; border-radius:100px; }
.pkg-body { padding:20px; flex:1; display:flex; flex-direction:column; }
.pkg-tag { font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--org); margin-bottom:7px; }
.pkg-body h4 { font-family:'Poppins'; font-size:17.5px; font-weight:700; color:var(--navy-dk); margin-bottom:7px; line-height:1.25; }
.pkg-meta { display:flex; gap:14px; font-size:12.5px; color:var(--slate); margin-bottom:10px; flex-wrap:wrap; }
.pkg-meta span { display:flex; align-items:center; gap:5px; }
.pkg-meta i { color:var(--org); font-size:12px; }
.pkg-desc { font-size:13.5px; color:var(--muted); line-height:1.65; flex:1; }
.pkg-ft { display:flex; justify-content:space-between; align-items:center; margin-top:16px; padding-top:14px; border-top:1px solid var(--border); }
.pkg-pr strong { font-family:'Poppins'; font-size:21px; font-weight:700; color:var(--navy-dk); }
.pkg-pr span { font-size:11.5px; color:var(--muted); display:block; }

/* SERVICES */
.srv-g { display:grid; gap:18px; grid-template-columns:1fr; }
@media(min-width:600px){.srv-g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.srv-g{grid-template-columns:repeat(3,1fr)}}
.srv-c { border-radius:var(--r-md); overflow:hidden; position:relative; min-height:230px; cursor:pointer; background:var(--navy-dp); }
.srv-c img { transition:transform .65s ease; }
.srv-c:hover img { transform:scale(1.08); }
.srv-c::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(15,31,48,.72) 0%,rgba(15,31,48,.32) 100%); transition:var(--t); }
.srv-c:hover::after { background:linear-gradient(135deg,rgba(15,31,48,.85) 0%,rgba(26,168,226,.38) 100%); }
.srv-l { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:flex-end; padding:22px; }
.srv-ico { font-size:30px; color:var(--org); margin-bottom:8px; }
.srv-l h4 { font-family:'Poppins'; font-size:18px; font-weight:700; color:#fff; margin-bottom:5px; }
.srv-l p { font-size:13px; color:rgba(255,255,255,.80); line-height:1.55; }
.srv-arr { display:inline-flex; align-items:center; gap:6px; margin-top:10px; font-size:12.5px; font-weight:600; color:var(--org); opacity:0; transform:translateX(-6px); transition:var(--t); }
.srv-c:hover .srv-arr { opacity:1; transform:translateX(0); }

/* GALLERY */
.gal-g { display:grid; gap:10px; grid-template-columns:repeat(2,1fr); }
@media(min-width:600px){.gal-g{grid-template-columns:repeat(3,1fr)}}
@media(min-width:900px){.gal-g{grid-template-columns:repeat(4,1fr)}}
.gal-i { border-radius:var(--r-sm); overflow:hidden; aspect-ratio:1; background:var(--navy-dp); cursor:pointer; position:relative; }
.gal-i:nth-child(1) { grid-column:span 2; aspect-ratio:2; }
.gal-i:nth-child(5) { grid-column:span 2; aspect-ratio:2; }
@media(max-width:599px){.gal-i:nth-child(1),.gal-i:nth-child(5){grid-column:span 1;aspect-ratio:1}}
.gal-i img { transition:transform .55s ease; }
.gal-i:hover img { transform:scale(1.10); }
.gal-i::after { content:''; position:absolute; inset:0; background:rgba(15,31,48,0); transition:var(--t); }
.gal-i:hover::after { background:rgba(15,31,48,.25); }

/* TESTIMONIALS */
.tst-g { display:grid; gap:18px; grid-template-columns:1fr; }
@media(min-width:600px){.tst-g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.tst-g{grid-template-columns:repeat(3,1fr)}}
.tst-c { background:#fff; border-radius:var(--r-md); padding:26px 22px; border:1px solid var(--border); position:relative; transition:var(--t); }
.tst-c:hover { transform:translateY(-6px); box-shadow:var(--sh-md); }
.tst-q { position:absolute; top:16px; right:20px; font-size:56px; color:rgba(245,148,29,.10); font-family:'Playfair Display'; line-height:1; pointer-events:none; }
.tst-s { color:var(--org); font-size:14px; margin-bottom:10px; letter-spacing:2px; }
.tst-t { font-size:14.5px; color:var(--slate); line-height:1.75; margin-bottom:18px; font-style:italic; }
.tst-u { display:flex; align-items:center; gap:11px; }
.tst-av { width:42px; height:42px; border-radius:50%; flex-shrink:0; background:linear-gradient(135deg,var(--navy),var(--sky)); display:flex; align-items:center; justify-content:center; font-family:'Poppins'; font-weight:700; font-size:14px; color:#fff; }
.tst-in h5 { font-size:14px; font-weight:700; color:var(--navy-dk); }
.tst-in span { font-size:12px; color:var(--muted); }
.tst-bg { display:inline-flex; align-items:center; gap:4px; font-size:10.5px; font-weight:700; text-transform:uppercase; color:var(--org); letter-spacing:.05em; margin-top:3px; }

/* CTA BANNER */
.cta-b { position:relative; border-radius:var(--r-xl); overflow:hidden; min-height:380px; display:flex; align-items:center; justify-content:center; text-align:center; background:var(--navy-dp); }
.cta-b img { position:absolute; inset:0; }
.cta-b::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(26,48,74,.80) 0%,rgba(10,30,60,.72) 100%); }
.cta-c { position:relative; z-index:2; color:#fff; max-width:620px; padding:56px 20px; }
.cta-c h2 { font-size:clamp(24px,4vw,42px); font-weight:700; margin-bottom:14px; }
.cta-c p { font-size:16.5px; color:rgba(255,255,255,.82); margin-bottom:28px; line-height:1.65; }
.cta-btns { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }

/* CONTACT */
.con-g { display:grid; gap:40px; grid-template-columns:1fr; }
@media(min-width:900px){.con-g{grid-template-columns:1fr 1.25fr;gap:64px}}
.con-inf { color:#fff; }
.con-inf h2 { font-size:clamp(24px,3.5vw,38px); font-weight:700; margin-bottom:16px; }
.con-inf p { color:rgba(255,255,255,.70); font-size:15.5px; margin-bottom:28px; line-height:1.75; }
.con-its { display:flex; flex-direction:column; gap:16px; }
.con-it { display:flex; align-items:flex-start; gap:14px; }
.con-ico { width:42px; height:42px; border-radius:var(--r-sm); flex-shrink:0; background:rgba(245,148,29,.14); display:flex; align-items:center; justify-content:center; color:var(--org); font-size:17px; }
.con-itb h5 { font-size:13px; font-weight:700; color:rgba(255,255,255,.52); text-transform:uppercase; letter-spacing:.06em; margin-bottom:3px; }
.con-itb p { color:#fff; font-size:15px; font-weight:500; }
.con-itb a { color:#fff; }
.con-itb a:hover { color:var(--org); }
.soc { display:flex; gap:10px; margin-top:28px; }
.soc-btn { width:40px; height:40px; border-radius:50%; border:1.5px solid rgba(255,255,255,.22); display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.72); font-size:16px; transition:var(--t); }
.soc-btn:hover { background:var(--org); border-color:var(--org); color:#fff; transform:translateY(-3px); }
.con-form { background:#fff; border-radius:var(--r-lg); padding:32px 28px; box-shadow:var(--sh-lg); }
.con-form h3 { font-size:21px; font-weight:700; color:var(--navy-dk); margin-bottom:20px; }
.form-g { display:grid; gap:14px; }
.form-row { display:grid; gap:14px; }
@media(min-width:480px){.form-row{grid-template-columns:1fr 1fr}}
.form-grp { display:flex; flex-direction:column; gap:5px; }
.form-grp label { font-size:12.5px; font-weight:600; color:var(--navy-dk); letter-spacing:.03em; }
.form-grp input, .form-grp select, .form-grp textarea { padding:11px 14px; border:1.5px solid var(--border); border-radius:var(--r-sm); font-size:14px; color:var(--navy-dk); font-family:'Inter'; background:#fff; outline:none; transition:var(--t); width:100%; }
.form-grp input:focus, .form-grp select:focus, .form-grp textarea:focus { border-color:var(--org); box-shadow:0 0 0 3px var(--org-gl); }
.form-grp textarea { resize:vertical; min-height:100px; }
.form-sub { margin-top:6px; }
.form-sub .btn { width:100%; justify-content:center; }

/* FOOTER */
footer { background:var(--navy-dp); color:rgba(255,255,255,.70); padding:64px 0 0; }
.foot-g { display:grid; gap:36px; grid-template-columns:1fr; }
@media(min-width:600px){.foot-g{grid-template-columns:repeat(2,1fr)}}
@media(min-width:900px){.foot-g{grid-template-columns:2fr 1fr 1fr 1.5fr;gap:48px}}
.foot-logo { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.foot-logo img { width:38px; height:38px; object-fit:contain; border-radius:50%; }
.foot-logo-t { font-family:'Poppins'; font-weight:700; font-size:16px; color:#fff; line-height:1.15; }
.foot-logo-t small { display:block; font-size:9.5px; color:rgba(255,255,255,.50); font-weight:400; }
.foot-desc { font-size:13.5px; line-height:1.75; max-width:270px; margin-bottom:20px; }
.foot-bdgs { display:flex; flex-wrap:wrap; gap:7px; }
.foot-bd { background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.11); border-radius:100px; padding:4px 11px; font-size:11.5px; font-weight:600; color:rgba(255,255,255,.78); }
footer h5 { font-family:'Poppins'; color:#fff; font-size:13px; font-weight:700; margin-bottom:16px; text-transform:uppercase; letter-spacing:.08em; }
footer ul { display:flex; flex-direction:column; gap:9px; }
footer li { font-size:13.5px; }
footer a { color:rgba(255,255,255,.65); transition:var(--t); }
footer a:hover { color:var(--org); padding-left:4px; }
footer li i { color:var(--org); width:15px; margin-right:5px; }
.foot-pay { margin-top:20px; }
.foot-pay > span { font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.45); display:block; margin-bottom:9px; }
.pay-icons { display:flex; gap:7px; flex-wrap:wrap; }
.pay-ic { background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.13); border-radius:var(--r-xs); padding:4px 9px; font-size:11px; font-weight:700; color:#fff; }
.foot-bot { margin-top:48px; border-top:1px solid rgba(255,255,255,.07); padding:18px 0; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; font-size:12.5px; }
.foot-leg { display:flex; gap:18px; flex-wrap:wrap; }
.foot-leg a { color:rgba(255,255,255,.48); }
.foot-leg a:hover { color:var(--org); }

/* WHATSAPP FLOAT */
.wa-fl { position:fixed; bottom:84px; right:20px; z-index:900; width:54px; height:54px; border-radius:50%; background:#25D366; color:#fff; font-size:25px; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 24px rgba(37,211,102,.44); animation:pg 2.4s infinite; transition:var(--t); }
.wa-fl:hover { transform:scale(1.12); }
@keyframes pg { 0%,100%{box-shadow:0 8px 24px rgba(37,211,102,.44)} 50%{box-shadow:0 8px 36px rgba(37,211,102,.68),0 0 0 11px rgba(37,211,102,.11)} }

/* MOBILE STICKY BAR */
.mob-bar { position:fixed; bottom:0; left:0; right:0; z-index:800; background:#fff; border-top:1px solid var(--border); padding:9px 18px; display:flex; gap:9px; box-shadow:0 -4px 20px rgba(15,31,48,.10); }
@media(min-width:900px){.mob-bar{display:none}}
.mob-btn { flex:1; padding:10px 8px; border-radius:var(--r-sm); font-size:13px; font-weight:700; font-family:'Poppins'; text-align:center; transition:var(--t); display:block; color:#fff; }
.mob-btn-c { background:var(--navy); }
.mob-btn-w { background:#25D366; }
.mob-btn-b { background:var(--org); }
.mob-btn:hover { opacity:.88; }

/* UTILS */
.tc { text-align:center; }
.mt36 { margin-top:36px; }
@media(max-width:480px){ .sec{padding:52px 0} .stats-b{padding:26px 18px} .con-form{padding:24px 18px} }

/* ==========================================
   DETAIL PAGES & MULTI-PAGE UTILITIES
   ========================================== */
.det-hero { position:relative; height:45vh; min-height:320px; display:flex; align-items:center; color:#fff; overflow:hidden; padding-top:72px; }
.det-hero-bg { position:absolute; inset:0; z-index:0; }
.det-hero-bg img { width:100%; height:100%; object-fit:cover; }
.det-hero-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(15,31,48,.85) 0%,rgba(15,31,48,.50) 100%); }
.det-hero-c { position:relative; z-index:2; width:100%; }
.det-hero h1 { font-size:clamp(28px,5vw,46px); font-weight:700; margin-bottom:12px; text-shadow:0 2px 10px rgba(0,0,0,.3); }

/* BREADCRUMB */
.bc { display:flex; align-items:center; gap:8px; font-size:12.5px; font-weight:600; color:rgba(255,255,255,.75); margin-bottom:14px; text-transform:uppercase; letter-spacing:.05em; }
.bc a { color:#fff; }
.bc a:hover { color:var(--org); }
.bc i { font-size:10px; opacity:.7; }

/* BREADCRUMB DARK */
.bc.dark { color:var(--slate); margin-bottom:28px; }
.bc.dark a { color:var(--navy); }
.bc.dark a:hover { color:var(--org); }
.bc.dark i { color:var(--slate); }

/* LAYOUT GRIDS FOR DETAIL PAGES */
.det-grid { display:grid; gap:40px; margin-top:40px; }
@media(min-width:900px){ .det-grid { grid-template-columns:2fr 1fr; gap:48px; } }
.det-main { display:flex; flex-direction:column; gap:36px; }
.det-side { display:flex; flex-direction:column; gap:28px; }

/* SIDEBAR WIDGETS */
.side-widget { background:var(--sand); border-radius:var(--r-md); padding:26px; border:1px solid var(--border); }
.side-widget h4 { font-family:'Poppins'; font-size:18px; font-weight:700; color:var(--navy-dk); margin-bottom:16px; border-bottom:2px solid var(--org); padding-bottom:8px; display:inline-block; }
.side-list { display:flex; flex-direction:column; gap:12px; }
.side-item { display:flex; gap:12px; font-size:14px; }
.side-item i { color:var(--org); font-size:16px; margin-top:3px; }

/* TIMELINE (ITINERARY) */
.timeline { position:relative; padding-left:32px; margin-top:24px; }
.timeline::before { content:''; position:absolute; left:7px; top:8px; bottom:8px; width:2px; background:var(--border); }
.tl-item { position:relative; margin-bottom:28px; }
.tl-item:last-child { margin-bottom:0; }
.tl-dot { position:absolute; left:-32px; top:4px; width:16px; height:16px; border-radius:50%; background:var(--org); border:3px solid #fff; box-shadow:0 0 0 3px var(--org-gl); }
.tl-title { font-family:'Poppins'; font-size:16px; font-weight:700; color:var(--navy-dk); margin-bottom:6px; }
.tl-desc { font-size:14.5px; color:var(--slate); line-height:1.6; }

/* SPECIFICATION BOXES */
.spec-box { display:grid; gap:14px; grid-template-columns:1fr 1fr; background:var(--sand); border-radius:var(--r-sm); padding:18px; border:1px solid var(--border); margin-top:18px; }
.spec-item { font-size:13.5px; }
.spec-item strong { display:block; color:var(--slate); font-weight:500; font-size:11px; text-transform:uppercase; letter-spacing:.04em; margin-bottom:2px; }
.spec-item span { color:var(--navy-dk); font-weight:600; }

/* INCLUSIONS / EXCLUSIONS LIST */
.inc-ex { display:grid; gap:20px; }
@media(min-width:540px){ .inc-ex { grid-template-columns:1fr 1fr; } }
.inc-box, .ex-box { border-radius:var(--r-md); padding:20px; border:1px solid var(--border); }
.inc-box { background:rgba(22,163,74,.03); border-color:rgba(22,163,74,.10); }
.ex-box { background:rgba(239,68,68,.03); border-color:rgba(239,68,68,.10); }
.inc-box h5, .ex-box h5 { font-family:'Poppins'; font-size:15px; font-weight:700; margin-bottom:12px; }
.inc-box h5 { color:#16a34a; }
.ex-box h5 { color:#ef4444; }
.ie-list { display:flex; flex-direction:column; gap:8px; }
.ie-item { display:flex; gap:8px; font-size:13px; color:var(--slate); }
.inc-box .ie-item i { color:#16a34a; }
.ex-box .ie-item i { color:#ef4444; }

/* FAQ ACCORDION */
.faq-g { display:flex; flex-direction:column; gap:12px; margin-top:20px; }
.faq-c { border:1px solid var(--border); border-radius:var(--r-sm); overflow:hidden; background:#fff; }
.faq-q { padding:14px 18px; background:var(--sand); cursor:pointer; font-weight:600; font-size:14.5px; color:var(--navy-dk); display:flex; justify-content:space-between; align-items:center; transition:var(--t); }
.faq-q:hover { background:var(--navy-lt); }
.faq-a { padding:14px 18px; font-size:13.5px; color:var(--slate); line-height:1.6; border-top:1px solid var(--border); display:none; }
.faq-c.op .faq-a { display:block; }
.faq-q i { transition:transform .3s; }
.faq-c.op .faq-q i { transform:rotate(180deg); }

/* TABS / FILTERS FOR CATALOG PAGES */
.filter-bar { display:flex; gap:10px; margin-bottom:28px; flex-wrap:wrap; justify-content:center; }
.filter-btn { padding:8px 18px; border-radius:100px; border:1px solid var(--border); font-size:13.5px; font-weight:600; color:var(--slate); transition:var(--t); }
.filter-btn:hover, .filter-btn.ac { background:var(--navy); border-color:var(--navy); color:#fff; }

/* ==========================================
   ADMIN PANEL STYLES
   ========================================== */
.admin-login-overlay { position:fixed; inset:0; background:var(--navy-dp); display:flex; align-items:center; justify-content:center; z-index:9999; padding:20px; transition:opacity 0.4s, visibility 0.4s; }
.admin-login-overlay.hidden { opacity:0; visibility:hidden; pointer-events:none; }
.admin-login-box { background:#fff; border-radius:var(--r-lg); padding:36px 32px; width:100%; max-width:400px; box-shadow:var(--sh-lg); text-align:center; }
.admin-login-box img { width:64px; height:64px; margin:0 auto 18px; object-fit:contain; border-radius:50%; }
.admin-login-box h3 { font-size:22px; color:var(--navy-dk); margin-bottom:6px; }
.admin-login-box p { font-size:13.5px; color:var(--slate); margin-bottom:24px; }

.admin-dashboard { padding:108px 0 64px; background:var(--sand); min-height:100vh; }
.admin-header { display:flex; justify-content:between; align-items:center; margin-bottom:32px; flex-wrap:wrap; gap:16px; border-bottom:1px solid var(--border); padding-bottom:18px; }
.admin-header h2 { font-size:28px; color:var(--navy-dk); }
.admin-header .btn-out { font-size:13px; padding:8px 18px; }

.admin-nav { display:flex; gap:8px; margin-bottom:28px; overflow-x:auto; padding-bottom:6px; -webkit-overflow-scrolling:touch; }
.admin-nav-btn { padding:10px 20px; border-radius:var(--r-xs); font-size:14.5px; font-weight:600; color:var(--slate); background:rgba(44,74,110,.05); border:1px solid transparent; white-space:nowrap; transition:var(--t); cursor:pointer; }
.admin-nav-btn:hover { background:rgba(44,74,110,.10); }
.admin-nav-btn.ac { background:var(--navy); color:#fff; border-color:var(--navy); }

.admin-pane { display:none; }
.admin-pane.ac { display:block; }

.admin-card { background:#fff; border-radius:var(--r-md); padding:28px; border:1px solid var(--border); box-shadow:var(--sh-sm); margin-bottom:24px; }
.admin-card h3 { font-size:18px; color:var(--navy-dk); margin-bottom:20px; border-bottom:1px solid var(--border); padding-bottom:10px; display:flex; justify-content:space-between; align-items:center; }

.admin-form-grid { display:grid; gap:16px; }
.admin-form-grid-2 { display:grid; gap:16px; }
@media(min-width:600px){ .admin-form-grid-2 { grid-template-columns:1fr 1fr; } }

.admin-logo-upload { display:flex; align-items:center; gap:20px; background:var(--sand); padding:18px; border-radius:var(--r-sm); border:1.5px dashed var(--border); }
.admin-logo-preview { width:64px; height:64px; border-radius:50%; overflow:hidden; background:#fff; border:1px solid var(--border); flex-shrink:0; }
.admin-logo-preview img { width:100%; height:100%; object-fit:contain; }
.admin-upload-btn-label { background:var(--navy); color:#fff; padding:8px 16px; border-radius:var(--r-xs); font-size:13px; font-weight:600; cursor:pointer; transition:var(--t); }
.admin-upload-btn-label:hover { background:var(--navy-dk); }
.admin-logo-upload input[type="file"] { display:none; }

.admin-table-w { overflow-x:auto; border:1px solid var(--border); border-radius:var(--r-sm); }
.admin-table { width:100%; border-collapse:collapse; text-align:left; font-size:14px; }
.admin-table th { background:var(--sand); color:var(--navy-dk); font-weight:700; padding:12px 16px; border-bottom:2px solid var(--border); }
.admin-table td { padding:14px 16px; border-bottom:1px solid var(--border); color:var(--slate); vertical-align:middle; }
.admin-table tr:hover { background:rgba(44,74,110,.02); }

.admin-actions { display:flex; gap:6px; }
.admin-act-btn { width:32px; height:32px; border-radius:var(--r-xs); display:inline-flex; align-items:center; justify-content:center; font-size:13px; border:1px solid var(--border); color:var(--slate); transition:var(--t); cursor:pointer; }
.admin-act-btn-edit:hover { background:var(--org-gl); border-color:var(--org); color:var(--org); }
.admin-act-btn-del:hover { background:rgba(239,68,68,.08); border-color:#ef4444; color:#ef4444; }

.admin-modal { position:fixed; inset:0; background:rgba(15,31,48,.65); z-index:9998; display:flex; align-items:center; justify-content:center; padding:20px; transition:opacity 0.3s, visibility 0.3s; opacity:0; visibility:hidden; }
.admin-modal.open { opacity:1; visibility:visible; }
.admin-modal-box { background:#fff; border-radius:var(--r-lg); width:100%; max-width:680px; max-height:85vh; overflow-y:auto; box-shadow:var(--sh-lg); display:flex; flex-direction:column; }
.admin-modal-header { padding:20px 24px; border-bottom:1px solid var(--border); display:flex; justify-content:space-between; align-items:center; }
.admin-modal-header h3 { font-size:18px; color:var(--navy-dk); }
.admin-modal-body { padding:24px; overflow-y:auto; flex:1; }
.admin-modal-footer { padding:16px 24px; border-top:1px solid var(--border); display:flex; justify-content:flex-end; gap:10px; background:var(--sand); border-radius:0 0 var(--r-lg) var(--r-lg); }

.admin-status-toast { position:fixed; bottom:24px; right:24px; z-index:10000; background:var(--navy-dp); color:#fff; padding:12px 24px; border-radius:var(--r-sm); font-size:14px; font-weight:600; display:flex; align-items:center; gap:8px; box-shadow:var(--sh-lg); transition:opacity 0.3s, transform 0.3s; transform:translateY(20px); opacity:0; pointer-events:none; }
.admin-status-toast.show { transform:translateY(0); opacity:1; }
.admin-status-toast i { color:#16a34a; }
.admin-status-toast.error i { color:#ef4444; }


