:root{
  --ink:#06121e;--ink2:#0a1c2e;--ink3:#0f2438;--ink4:#162f47;
  --teal:#007a8a;--teal2:#009eb0;--teal3:#00c4d8;--teal-lt:rgba(0,158,176,0.12);
  --coral:#e8502a;--coral2:#ff6b45;--sand:#f5ede0;--sand2:#fdf8f2;
  --flamingo:#e8406a;--white:#ffffff;--mist:#8fa8bc;--dim:#4a6478;
  --border:rgba(0,158,176,0.18);--radius:16px;--trans:0.22s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'DM Sans',sans-serif;background:#f0f4f7;color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.6;}


/* ── TOP STRIP ── */
.top-strip{background:linear-gradient(135deg,rgba(0,122,138,0.12),rgba(0,196,216,0.06));border-bottom:1px solid var(--border);padding:9px 52px;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:72px;}
.top-strip-text{font-size:11.5px;color:rgba(6,18,30,0.65);line-height:1.5;text-align:center;}
.top-strip-text strong{font-weight:700;color:var(--teal);}

/* ── PAGE HERO ── */
.page-hero{background:linear-gradient(135deg,var(--ink) 0%,var(--ink2) 50%,var(--ink3) 100%);color:#fff;padding:60px 52px 56px;position:relative;overflow:hidden;}
.page-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 0%,rgba(0,196,216,0.12),transparent 45%),radial-gradient(circle at 88% 90%,rgba(232,80,42,0.1),transparent 50%);pointer-events:none;}
.page-hero::after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--teal),var(--teal3),var(--coral2),transparent);}
.hero-inner{max-width:1100px;margin:0 auto;position:relative;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--teal3);background:rgba(0,196,216,0.08);border:1px solid var(--border);border-radius:100px;padding:6px 14px;margin-bottom:20px;}
.hero-eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--teal3);animation:pulse2 2s ease-in-out infinite;}
.hero h1{font-family:'Playfair Display',serif;font-size:clamp(30px,4.5vw,52px);font-weight:900;line-height:1.1;margin-bottom:16px;letter-spacing:-0.5px;}
.hero h1 em{color:var(--teal3);font-style:italic;}
.hero-sub{font-size:16px;font-weight:300;color:rgba(255,255,255,0.72);max-width:680px;margin-bottom:32px;line-height:1.7;}

/* ── SEARCH BAR ── */
.search-bar{background:rgba(255,255,255,0.07);backdrop-filter:blur(14px);border:1px solid rgba(0,196,216,0.22);border-radius:20px;padding:22px 24px;}
.search-tabs{display:flex;gap:6px;margin-bottom:18px;}
.stab{padding:8px 18px;border-radius:100px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid rgba(255,255,255,0.14);color:rgba(255,255,255,0.6);background:transparent;transition:all var(--trans);font-family:'DM Sans',sans-serif;}
.stab.active{background:var(--teal);color:#fff;border-color:var(--teal);}
.stab:hover:not(.active){color:#fff;border-color:rgba(255,255,255,0.3);}
.search-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:12px;align-items:end;}
.sf{display:flex;flex-direction:column;gap:5px;}
.sf label{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--teal3);}
.sf input,.sf select{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.14);border-radius:10px;padding:11px 14px;color:#fff;font-family:'DM Sans',sans-serif;font-size:14px;outline:none;transition:all var(--trans);}
.sf input::placeholder{color:rgba(255,255,255,0.36);}
.sf input:focus,.sf select:focus{border-color:var(--teal3);background:rgba(0,196,216,0.08);}
.sf select option{background:var(--ink2);color:#fff;}
.search-btn{background:linear-gradient(135deg,var(--coral),var(--coral2));color:#fff;border:none;border-radius:12px;padding:0 28px;height:48px;font-family:'DM Sans',sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:all var(--trans);white-space:nowrap;box-shadow:0 6px 20px rgba(232,80,42,0.38);}
.search-btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(232,80,42,0.52);}

/* ── STATS ── */
.stats-bar{background:var(--ink2);border-bottom:1px solid rgba(0,196,216,0.1);padding:20px 52px;}
.stats-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center;}
.stat-num{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--teal3);}
.stat-lbl{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-top:4px;font-weight:600;}

/* ── SECTIONS ── */
.section{padding:64px 52px;}
.sec-inner{max-width:1100px;margin:0 auto;}
.eyebrow-line{display:flex;align-items:center;gap:10px;margin-bottom:10px;}
.eyebrow-line span{display:block;width:28px;height:2px;border-radius:2px;}
.eyebrow-text{font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;}
.section-title{font-family:'Playfair Display',serif;font-size:clamp(24px,3.2vw,38px);font-weight:900;margin-bottom:12px;letter-spacing:-0.4px;}
.section-title em{font-style:italic;}
.section-sub{font-size:14.5px;color:var(--dim);max-width:660px;margin-bottom:40px;line-height:1.7;}

/* ── ROUTE CARDS ── */
.routes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;}
.route-card{background:#fff;border:1px solid #dde8f0;border-radius:14px;padding:20px;cursor:pointer;transition:all var(--trans);position:relative;overflow:hidden;}
.route-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--coral2));opacity:0;transition:opacity var(--trans);}
.route-card:hover{transform:translateY(-3px);border-color:var(--border);box-shadow:0 10px 28px rgba(0,122,138,0.1);}
.route-card:hover::before{opacity:1;}
.route-path{display:flex;align-items:center;gap:8px;margin-bottom:5px;}
.route-city{font-weight:700;font-size:15px;color:var(--ink);}
.route-arrow{color:var(--teal);font-size:14px;}
.route-codes{font-size:11px;color:var(--mist);letter-spacing:1.5px;font-weight:600;margin-bottom:8px;}
.route-cabin{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--teal);background:var(--teal-lt);border:1px solid var(--border);border-radius:100px;padding:3px 10px;margin-bottom:8px;}
.route-note{font-size:12px;color:var(--dim);margin-bottom:14px;line-height:1.5;}
.route-btn{width:100%;padding:9px;background:var(--ink);color:#fff;border:none;border-radius:8px;font-family:'DM Sans',sans-serif;font-size:12px;font-weight:600;cursor:pointer;transition:background var(--trans);}
.route-btn:hover{background:var(--ink4);}

/* ── PHONE CTA BAND ── */
.cta-band{background:linear-gradient(135deg,var(--ink),var(--ink2) 55%,var(--ink3));color:#fff;padding:52px;position:relative;overflow:hidden;}
.cta-band::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 10% 50%,rgba(0,196,216,0.12),transparent 50%),radial-gradient(ellipse at 90% 50%,rgba(232,80,42,0.09),transparent 50%);pointer-events:none;}
.cta-band::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--teal3),var(--coral2));}
.cta-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;position:relative;}
.cta-left h2{font-family:'Playfair Display',serif;font-size:clamp(22px,2.8vw,32px);font-weight:900;margin-bottom:8px;letter-spacing:-0.3px;}
.cta-left h2 em{color:var(--teal3);font-style:italic;}
.cta-left p{font-size:14px;color:rgba(255,255,255,0.68);max-width:560px;line-height:1.7;}
.cta-tag{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--teal3);background:rgba(0,196,216,0.1);border:1px solid rgba(0,196,216,0.2);border-radius:100px;padding:5px 12px;margin-bottom:12px;}
.cta-dot{width:6px;height:6px;border-radius:50%;background:var(--teal3);animation:ctaPulse 2s ease-in-out infinite;}
@keyframes ctaPulse{0%,100%{opacity:.5;}50%{opacity:1;}}
.cta-right{flex-shrink:0;}
.cta-btn{display:inline-flex;align-items:center;gap:12px;background:linear-gradient(135deg,var(--teal),var(--teal2));color:#fff;padding:16px 28px;border-radius:100px;text-decoration:none;font-weight:700;font-size:15px;box-shadow:0 8px 24px rgba(0,158,176,0.4);transition:all var(--trans);}
.cta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(0,158,176,0.55);}
.cta-btn-icon{font-size:18px;}
.cta-meta{font-size:11px;color:rgba(255,255,255,0.45);text-align:center;margin-top:8px;}

/* ── SERVICES ── */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;}
.svc-card{background:#fff;border:1px solid #dde8f0;border-radius:14px;padding:22px 20px;transition:all var(--trans);position:relative;overflow:hidden;}
.svc-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--coral2));opacity:0;transition:opacity var(--trans);}
.svc-card:hover{transform:translateY(-3px);border-color:var(--border);box-shadow:0 8px 24px rgba(0,122,138,0.08);}
.svc-card:hover::before{opacity:1;}
.svc-icon{width:42px;height:42px;border-radius:12px;background:var(--teal-lt);display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:12px;}
.svc-title{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:7px;}
.svc-body{font-size:13px;color:var(--dim);line-height:1.7;}

/* ── HOW IT WORKS ── */
.how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;counter-reset:step;}
.how-step{background:rgba(255,255,255,0.04);border:1px solid rgba(0,196,216,0.14);border-radius:14px;padding:28px 20px 22px;position:relative;}
.how-step::before{counter-increment:step;content:counter(step);position:absolute;top:-18px;left:20px;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--teal),var(--teal3));color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:17px;font-weight:700;box-shadow:0 4px 14px rgba(0,158,176,0.35);}
.how-title{font-size:14px;font-weight:700;color:#fff;margin-bottom:8px;}
.how-body{font-size:13px;color:rgba(255,255,255,0.6);line-height:1.65;}

/* ── TRUST STRIP ── */
.trust-strip-sec{background:#fff;border-top:1px solid #dde8f0;border-bottom:1px solid #dde8f0;padding:24px 52px;}
.trust-strip-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;}
.trust-item{display:flex;align-items:center;gap:12px;}
.trust-icon{width:40px;height:40px;border-radius:10px;background:var(--teal-lt);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;}
.trust-text strong{display:block;color:var(--ink);font-weight:700;font-size:13px;margin-bottom:2px;}
.trust-text span{color:var(--mist);font-size:12px;}

/* ── BROWSE CHIPS ── */
.chips-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:10px;margin-top:24px;}
.chip{background:#fff;border:1px solid #dde8f0;border-radius:10px;padding:12px 14px;display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;transition:all var(--trans);}
.chip:hover{border-color:var(--border);background:var(--teal-lt);transform:translateY(-2px);}
.chip.current{border-color:var(--teal);background:var(--teal-lt);}
.chip-code{width:36px;height:36px;border-radius:8px;background:var(--ink);color:var(--teal3);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex-shrink:0;letter-spacing:.5px;}
.chip-name{font-size:12.5px;font-weight:600;color:var(--ink);line-height:1.3;}

/* ── FAQ ── */
.faq-list{max-width:800px;margin:0 auto;}
.faq-item{background:#fff;border:1px solid #dde8f0;border-radius:12px;margin-bottom:10px;overflow:hidden;transition:all var(--trans);}
.faq-item.open{border-color:var(--border);box-shadow:0 4px 16px rgba(0,122,138,0.07);}
.faq-q{padding:18px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:600;font-size:14px;color:var(--ink);transition:background var(--trans);}
.faq-q:hover{background:#f6fbfc;}
.faq-chev{font-size:12px;color:var(--teal);transition:transform var(--trans);}
.faq-item.open .faq-chev{transform:rotate(180deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;}
.faq-item.open .faq-a{max-height:400px;}
.faq-a-inner{padding:0 20px 18px;font-size:13.5px;color:var(--dim);line-height:1.75;}

/* ── CONTACT CARDS ── */
.contact-section{background:linear-gradient(135deg,var(--ink),var(--ink2));color:#fff;padding:64px 52px;position:relative;overflow:hidden;}
.contact-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 20%,rgba(0,196,216,0.1),transparent 45%);pointer-events:none;}
.contact-section::after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--teal),var(--teal3),var(--coral2));}
.contact-inner{max-width:960px;margin:0 auto;position:relative;text-align:center;}
.contact-inner h2{font-family:'Playfair Display',serif;font-size:clamp(24px,3.2vw,36px);font-weight:900;margin-bottom:12px;}
.contact-inner h2 em{color:var(--teal3);font-style:italic;}
.contact-inner>p{font-size:15px;color:rgba(255,255,255,0.7);max-width:620px;margin:0 auto 36px;line-height:1.7;}
.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;text-align:left;margin-bottom:20px;}
.contact-card{display:flex;align-items:center;gap:14px;background:rgba(255,255,255,0.06);border:1px solid rgba(0,196,216,0.2);border-radius:16px;padding:18px 16px;text-decoration:none;color:#fff;transition:all var(--trans);}
.contact-card:hover{border-color:rgba(0,196,216,0.45);transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,0,0,.3);}
.contact-card--primary{border-color:rgba(0,158,176,0.45);background:linear-gradient(135deg,rgba(0,158,176,0.18),rgba(0,158,176,0.06));}
.contact-card--primary:hover{border-color:var(--teal3);}
.contact-card--whatsapp{border-color:rgba(37,211,102,0.3);background:rgba(37,211,102,0.06);}
.contact-card--email{border-color:rgba(0,196,216,0.2);}
.contact-card--chat{border-color:rgba(96,165,250,0.3);background:rgba(96,165,250,0.05);}
.cc-icon{font-size:26px;flex-shrink:0;width:44px;height:44px;border-radius:12px;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;}
.cc-body{flex:1;min-width:0;}
.cc-label{font-size:9.5px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.5);margin-bottom:4px;}
.cc-value{font-size:15px;font-weight:700;color:#fff;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.cc-sub{font-size:11px;color:rgba(255,255,255,0.45);}
.cc-arrow{font-size:18px;color:rgba(255,255,255,0.28);flex-shrink:0;transition:transform var(--trans);}
.contact-card:hover .cc-arrow{transform:translateX(4px);color:rgba(255,255,255,0.7);}
.contact-note{font-size:11.5px;color:rgba(255,255,255,0.35);line-height:1.7;border-top:1px solid rgba(255,255,255,0.07);padding-top:18px;}


/* Responsive */
@media(max-width:1400px){.nav-hide-xl{display:none!important;}}
@media(max-width:1200px){.navbar{padding:0 28px;}.nav-links{gap:18px;}.nav-hide-lg{display:none!important;}.top-strip{padding:9px 28px;}.section{padding:52px 28px;}.cta-band{padding:48px 28px;}.trust-strip-sec{padding:24px 28px;}.contact-section{padding:52px 28px;}.mega-footer{padding:56px 28px 0;}.footer-grid{grid-template-columns:1fr 1fr 1fr;}}
@media(max-width:900px){.search-row{grid-template-columns:1fr 1fr;gap:10px;}.search-btn{height:48px;width:100%;grid-column:1/-1;}.stats-inner{grid-template-columns:repeat(2,1fr);}.cta-inner{flex-direction:column;align-items:flex-start;}.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.navbar{padding:0 16px;}.nav-links{display:none;}.nav-hamburger{display:flex;}.top-strip{padding:9px 16px;}.page-hero{padding:48px 16px 44px;}.search-bar{padding:16px;}.search-row{grid-template-columns:1fr;}.section{padding:44px 16px;}.cta-band{padding:44px 16px;}.routes-grid{grid-template-columns:1fr;}.trust-strip-sec{padding:20px 16px;}.contact-section{padding:44px 16px;}.contact-cards{grid-template-columns:1fr;}.mega-footer{padding:48px 16px 0;}.footer-grid{grid-template-columns:1fr;}.float-call{display:flex;}body{padding-bottom:76px;}.badge-divider{display:none;}.trust-badges-strip{flex-wrap:wrap;}}
