@charset "UTF-8";
:root{--navy:#071a35;--navy2:#0c2a4b;--coral:#ff7f59;--coral2:#ff9b7a;--ink:#10213d;--muted:#647691;--line:#dfe7f0;--soft:#f5f8fc;--white:#fff;--shadow:0 20px 55px rgba(7,26,53,.11);--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.55}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:fixed;z-index:100;inset:0 0 auto;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(220,228,239,.9);box-shadow:0 4px 18px rgba(7,26,53,.04)}.nav-wrap{height:78px;display:flex;align-items:center;gap:30px}.brand img{width:150px;height:auto;object-fit:contain}.desktop-nav{display:flex;gap:26px;margin-left:auto}.desktop-nav a{font-size:13px;font-weight:700;color:#334766}.desktop-nav a:hover{color:var(--coral)}.nav-wa{background:var(--navy);color:#fff;padding:11px 18px;border-radius:999px;font-size:13px;font-weight:800}.menu-btn{display:none;border:0;background:transparent;font-size:27px}.mobile-menu{display:none;padding:0 20px 16px}.mobile-menu a{display:block;padding:10px 0;font-weight:700}.hero{min-height:720px;position:relative;overflow:hidden;background:var(--navy);display:flex;align-items:center}.hero-slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transition:opacity .7s ease}.hero-slide.active{opacity:1}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,18,38,.82),rgba(3,18,38,.38) 58%,rgba(3,18,38,.12))}.hero-content{position:relative;z-index:2;color:#fff;padding-top:70px}.eyebrow{display:flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:800;color:#fff}.eyebrow span{width:26px;height:2px;background:var(--coral);display:inline-block}.eyebrow.dark{color:#60728e}.hero h1{font-size:clamp(48px,7vw,86px);line-height:.98;letter-spacing:-4px;max-width:780px;margin:22px 0}.hero h1 em,.section-head h2 em,.why-copy h2 em,.service-hero h1 em{font-style:normal;color:var(--coral2)}.hero p{max-width:650px;color:#d8e1ee;font-size:17px}.hero-actions{display:flex;gap:12px;margin:28px 0}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:14px 20px;font-weight:800;font-size:13px;cursor:pointer}.btn-primary{background:var(--coral);color:#fff}.btn-ghost{border:1px solid rgba(255,255,255,.55);color:#fff}.hero-trust{display:flex;gap:22px;color:#dbe4ef;font-size:12px}.slider-controls{position:absolute;z-index:3;bottom:28px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;color:#fff}.dots{display:flex;gap:8px}.dot{width:28px;height:3px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer}.dot.active{background:var(--coral)}.counter{font-size:12px;letter-spacing:2px}.quick-strip{background:var(--navy);color:#fff;border-top:1px solid rgba(255,255,255,.1)}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr)}.quick-grid>div{display:flex;align-items:center;gap:12px;padding:18px 12px;border-right:1px solid rgba(255,255,255,.1)}.quick-grid>div:last-child{border-right:0}.quick-grid b{font-size:20px;color:var(--coral2)}.quick-grid strong,.quick-grid small{display:block}.quick-grid small{font-size:11px;color:#9db0c9}.section{padding:105px 0}.section-head{display:grid;grid-template-columns:1fr .75fr;gap:60px;align-items:end;margin-bottom:48px}.section-head h2,.why-copy h2{font-size:58px;line-height:.98;letter-spacing:-3px;margin:15px 0 0}.section-head p,.why-copy>p{color:var(--muted);font-size:15px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{position:relative;border:1px solid var(--line);border-radius:25px;padding:30px;min-height:285px;transition:.25s;overflow:hidden;background:#fff}.service-card:after{content:"";position:absolute;inset:auto 0 0;height:4px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#cbd7e5}.service-card:hover:after{transform:scaleX(1)}.service-card .icon{font-size:25px}.service-card .number{position:absolute;right:24px;top:24px;color:#9aabc0;font-size:11px}.service-card h3{font-size:21px;margin:48px 0 9px}.service-card p{color:var(--muted);font-size:13px;max-width:330px}.service-card a{display:inline-block;color:var(--coral);font-weight:800;font-size:12px;margin-top:18px}.about{background:var(--soft)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-image{height:560px;border-radius:30px;overflow:hidden;position:relative}.about-image img{width:100%;height:100%;object-fit:cover}.about-badge{position:absolute;left:24px;bottom:24px;background:#fff;padding:18px 20px;border-radius:18px;box-shadow:var(--shadow)}.about-badge b{display:block;font-size:28px;color:var(--coral)}.about-badge span{font-size:11px;color:var(--muted)}.about-copy h2{font-size:56px;line-height:1;letter-spacing:-3px;margin:15px 0}.about-copy h2 em{font-style:normal;color:var(--coral)}.about-copy p{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}.stat{background:#fff;border:1px solid var(--line);padding:20px;border-radius:18px}.stat b{font-size:27px;display:block}.stat span{font-size:11px;color:var(--muted)}.dark-section{background:var(--navy);color:#fff;padding:100px 0}.section-head.light p{color:#aebed2}.section-head.light h2{color:#fff}.destination-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;gap:14px}.destination{height:390px;border-radius:25px;overflow:hidden;position:relative}.destination.large{height:500px}.destination img{width:100%;height:100%;object-fit:cover;transition:.5s}.destination:hover img{transform:scale(1.04)}.destination:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.72))}.destination span{position:absolute;z-index:2;left:25px;bottom:25px;color:#fff}.destination small,.gallery-card small{display:block;color:#ffad93;font-size:10px;letter-spacing:2px;font-weight:800}.destination strong{display:block;font-size:28px;margin-top:5px}.gallery{padding:105px 0}.gallery-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,32%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-track::-webkit-scrollbar{display:none}.gallery-card{height:430px;border-radius:24px;overflow:hidden;position:relative;scroll-snap-align:start}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-card:hover img{transform:scale(1.04)}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.78))}.gallery-card span{position:absolute;z-index:2;left:22px;bottom:22px;color:#fff}.gallery-card b{font-size:23px;display:block;margin-top:4px}.gallery-controls{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}.gallery-controls button{border:1px solid var(--line);background:#fff;border-radius:50%;width:42px;height:42px;cursor:pointer}.contact-section{background:#f7f9fc;padding:95px 0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:start}.contact-copy h2{font-size:55px;line-height:1;letter-spacing:-3px;margin:15px 0}.contact-copy p{color:var(--muted)}.contact-details{margin-top:28px}.contact-details a,.contact-details span{display:block;margin:10px 0;font-size:14px}.contact-form{background:#fff;border:1px solid var(--line);border-radius:25px;padding:30px;box-shadow:0 18px 50px rgba(7,26,53,.06)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field{display:block}.field.full{grid-column:1/-1}.field>span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;margin:0 0 7px;color:#51647f}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:12px;padding:12px 13px;outline:0;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px rgba(255,127,89,.1)}textarea{min-height:105px;resize:vertical}.form-message{display:none;margin-top:12px;background:#eef9f2;color:#23663d;padding:12px;border-radius:12px;font-size:12px}.form-message.show{display:block}.service-hero{padding:150px 0 70px;background:linear-gradient(135deg,#f4f8fc,#fff)}.service-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;align-items:center}.service-hero h1{font-size:70px;line-height:.96;letter-spacing:-4px;margin:20px 0}.service-hero p{color:var(--muted);max-width:560px}.service-hero-img{height:470px;border-radius:30px;overflow:hidden;position:relative;box-shadow:var(--shadow)}.service-hero-img:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgba(7,26,53,.2),transparent)}.service-hero-img img{width:100%;height:100%;object-fit:cover}.service-page{padding:20px 0 100px}.service-content{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;align-items:start}.service-intro{position:sticky;top:105px}.service-intro h2{font-size:38px;line-height:1.05;letter-spacing:-2px}.service-intro p{color:var(--muted)}.info-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:25px}.info-card{background:#f5f8fc;border:1px solid var(--line);border-radius:18px;padding:17px}.info-card b{display:block;font-size:13px}.info-card span{display:block;font-size:11px;color:var(--muted);margin-top:3px}.service-form{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.airport-wrap{position:relative}.airport-results{position:absolute;z-index:20;left:0;right:0;top:100%;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);max-height:280px;overflow:auto}.airport-results button{display:block;width:100%;text-align:left;background:#fff;border:0;border-bottom:1px solid #eef2f6;padding:12px 13px;cursor:pointer}.airport-results button:hover{background:#f7f9fc}.airport-results strong,.airport-results small{display:block}.airport-results small{color:var(--muted);font-size:11px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice label{display:block;border:1px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;height:100%}.choice input:checked+label{border-color:var(--coral);background:#fff5f1}.choice b,.choice small{display:block}.choice b{font-size:13px}.choice small{font-size:11px;color:var(--muted);margin-top:3px}.destination-row{padding:14px;border:1px solid #e8eef5;border-radius:18px;margin-bottom:10px;background:#fbfcfe}.row-actions{display:flex;justify-content:flex-end;margin:2px 0 12px}.add-btn,.remove-btn{border:1px dashed #b8c7d8;background:#f7f9fc;border-radius:10px;padding:8px 11px;font-size:12px;font-weight:800;cursor:pointer}.remove-btn{border:0;background:transparent;color:#c15d4c}.age-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px;margin-bottom:14px}.age-box{border:1px solid var(--line);border-radius:13px;padding:10px}.age-box b{display:block;font-size:11px;margin-bottom:6px}.form-note{font-size:11px;color:var(--muted);margin:12px 0 0}.package-intro{background:var(--navy);color:#fff;padding:70px 0}.package-intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:end}.package-intro h1{font-size:65px;line-height:.96;letter-spacing:-4px;margin:15px 0}.package-intro p{color:#bdcadb}.thumb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}.thumb{height:180px;border-radius:20px;overflow:hidden;position:relative;cursor:pointer}.thumb img{width:100%;height:100%;object-fit:cover}.thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,0,0,.7))}.thumb span{position:absolute;z-index:2;left:15px;bottom:13px;color:#fff;font-weight:800;font-size:15px}.footer-main{background:#06172f;color:#c4cfdd;padding:60px max(20px,calc((100% - 1180px)/2));display:grid;grid-template-columns:1.3fr 1fr 1.2fr 1fr;gap:35px}.footer-main h4{color:#fff;margin:0 0 14px}.footer-main a,.footer-main span,.footer-main p{display:block;color:#aebbd0;font-size:12px;margin:7px 0}.footer-main a:hover{color:var(--coral2)}.footer-logo{width:150px;background:#fff0;padding:0}.footer-main small{display:block;color:#ff9b7a;margin-top:18px}.footer-wa{color:#fff!important;font-weight:800!important}.footer-bottom{background:#06172f;color:#8292aa;border-top:1px solid rgba(255,255,255,.1);padding:18px max(20px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;font-size:10px}.floating-wa{position:fixed;right:20px;bottom:20px;z-index:90;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#18a957;color:#fff;font-size:24px;box-shadow:0 12px 35px rgba(0,0,0,.2)}
@media(max-width:900px){.desktop-nav,.nav-wa{display:none}.menu-btn{display:block;margin-left:auto}.mobile-menu.open{display:block}.section-head,.about-grid,.contact-grid,.service-hero-grid,.service-content,.package-intro-grid{grid-template-columns:1fr;gap:30px}.service-intro{position:static}.service-grid{grid-template-columns:repeat(2,1fr)}.destination-grid{grid-template-columns:1fr 1fr}.destination.large{grid-column:1/-1;height:380px}.footer-main{grid-template-columns:1fr 1fr}.choice-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.container{width:calc(100% - 28px)}.nav-wrap{height:68px}.brand img{width:132px}.hero{min-height:680px}.hero h1{font-size:50px;letter-spacing:-2.8px}.hero p{font-size:14px}.hero-trust{display:grid;gap:6px}.quick-grid{grid-template-columns:1fr 1fr}.quick-grid>div{padding:14px 6px}.section,.gallery,.contact-section,.service-page{padding:72px 0}.section-head h2,.about-copy h2,.contact-copy h2{font-size:43px}.service-grid{grid-template-columns:1fr}.destination-grid{grid-template-columns:1fr}.destination.large{grid-column:auto;height:320px}.destination{height:260px}.gallery-track{grid-auto-columns:84vw}.gallery-card{height:370px}.about-image{height:420px}.form-grid,.info-cards,.age-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.service-hero{padding:115px 0 45px}.service-hero h1,.package-intro h1{font-size:50px}.service-hero-img{height:300px}.package-intro{padding:120px 0 60px}.thumb-grid{grid-template-columns:1fr 1fr}.thumb{height:145px}.footer-main{grid-template-columns:1fr;padding-top:45px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:4px 0}.slider-controls{bottom:18px}}
/* ---- v4 improvements ---- */
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.skip-link{position:fixed;left:12px;top:-60px;z-index:200;background:var(--navy);color:#fff;padding:10px 16px;border-radius:10px;font-weight:800;font-size:13px}.skip-link:focus{top:10px}
:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
.choice input:focus-visible+label{outline:3px solid var(--coral);outline-offset:2px}
.eyebrow.dark{color:#4c5f7b}
.hero p{font-size:18px}
.nav-wrap{height:78px}.mobile-menu{background:#fff;border-top:1px solid var(--line);box-shadow:0 12px 24px rgba(7,26,53,.08)}
.menu-btn{width:44px;height:44px;cursor:pointer;color:var(--ink)}
.btn{min-height:46px;transition:.2s}.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}.btn:disabled{opacity:.6;cursor:not-allowed}
.how{background:#fff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step{border:1px solid var(--line);border-radius:25px;padding:28px;background:var(--soft)}.step b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--coral);color:#fff;font-size:18px}.step h3{margin:18px 0 6px;font-size:20px}.step p{margin:0;color:var(--muted);font-size:14px}
.package-intro h2{font-size:65px;line-height:.96;letter-spacing:-4px;margin:15px 0}.package-intro h2 em{font-style:normal;color:var(--coral2)}
.thumb{display:block}
.field>label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;margin:0 0 7px;color:#51647f}
.field[hidden]{display:none}
.trip-grid{grid-template-columns:repeat(2,1fr)}
.field input:invalid:not(:placeholder-shown):not(:focus){border-color:#d9534f}
.field input:disabled{background:#f2f5f9}
.airport-results button{min-height:52px}.airport-results button.hl,.airport-results button:focus-visible{background:#fff5f1;outline:0}
.airport-results .no-result{padding:14px;font-size:13px;color:var(--muted)}
.form-message p{margin:0 0 10px}
.msg-link{display:inline-block;margin:0 8px 6px 0;padding:9px 14px;border-radius:999px;background:#23663d;color:#fff;font-weight:800;font-size:12px}.msg-link.alt{background:#fff;color:#23663d;border:1px solid #23663d}
.floating-wa{transition:.2s}.floating-wa:hover{transform:scale(1.07)}
.gallery-controls button{font-size:18px;transition:.2s}.gallery-controls button:hover{border-color:var(--coral);color:var(--coral)}
@media(max-width:900px){.steps{grid-template-columns:1fr}}
@media(max-width:620px){.package-intro h2{font-size:50px}.hero-actions{flex-wrap:wrap}.floating-wa{width:54px;height:54px;right:14px;bottom:14px}.trip-grid{grid-template-columns:1fr 1fr}.form-grid{gap:12px}.service-form,.contact-form{padding:22px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* ---- v5 fixes ---- */
/* Footer: full-width dark band, content aligned to the site container */
footer{background:#06172f}
.footer-main{background:transparent;padding:64px 0 48px;gap:40px;grid-template-columns:1.4fr 1fr 1.3fr 1fr;align-items:start}
.footer-main>div{min-width:0}
.footer-main h4{font-size:15px;margin:0 0 16px}
.footer-main a,.footer-main span,.footer-main p{font-size:13px;line-height:1.6;margin:8px 0;overflow-wrap:anywhere}
.footer-main p{max-width:260px}
.footer-logo{width:150px;height:auto;background:#fff;padding:8px 12px;border-radius:12px;margin-bottom:12px}
.footer-bottom{background:transparent;padding:20px 0;gap:16px;flex-wrap:wrap;font-size:12px}
@media(max-width:900px){.footer-main{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:620px){.footer-main{grid-template-columns:1fr;padding:44px 0 32px}.footer-main p{max-width:none}}

/* Destination grid: one large + four equal tiles, all same ratio */
.destination-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:repeat(2,260px);gap:16px}
.destination,.destination.large{height:auto;min-height:0}
.destination.large{grid-row:1/3}
.destination-grid.three{grid-template-columns:1.4fr 1fr;}
.destination img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.destination span{right:20px}
.destination strong{font-size:24px;line-height:1.15}
.destination.large strong{font-size:32px}
@media(max-width:900px){.destination-grid,.destination-grid.three{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:220px}.destination.large{grid-column:1/-1;grid-row:auto;height:auto}.destination-grid .destination.large{grid-auto-rows:auto;min-height:300px}}
@media(max-width:620px){.destination-grid,.destination-grid.three{grid-template-columns:1fr;grid-auto-rows:230px}.destination.large{min-height:280px}.destination-grid .destination.large{height:280px}}

/* Home gallery: uniform cards */
.gallery-track{grid-auto-columns:minmax(260px,calc((100% - 32px)/3))}
.gallery-card{height:440px;display:block;background:#dfe7f0}
.gallery-card img{position:absolute;inset:0}
.gallery-card:after{pointer-events:none}
@media(max-width:900px){.gallery-track{grid-auto-columns:minmax(240px,46%)}}
@media(max-width:620px){.gallery-track{grid-auto-columns:80vw}.gallery-card{height:400px}}

/* Holiday packages: neat inspiration gallery */
.package-intro{padding:80px 0}
.package-head{display:grid;grid-template-columns:1fr .7fr;gap:50px;align-items:end;margin-bottom:34px}
.package-head p{color:#bdcadb;margin:0}
.pk-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.pk-card{position:relative;display:block;padding:0;border:0;background:#0c2a4b;border-radius:22px;overflow:hidden;aspect-ratio:4/5;cursor:zoom-in;text-align:left;color:#fff}
.pk-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pk-card:hover img{transform:scale(1.05)}
.pk-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.75))}
.pk-card span{position:absolute;z-index:2;left:18px;right:18px;bottom:18px}
.pk-card b{display:block;font-size:20px}.pk-card small{display:block;color:#ffad93;font-size:12px;margin-top:3px}
@media(max-width:900px){.package-head{grid-template-columns:1fr;gap:16px}.pk-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.package-intro{padding:60px 0}.pk-card b{font-size:17px}.pk-card span{left:12px;right:12px;bottom:12px}}

/* Service hero image consistent */
.service-hero-img img{display:block}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:300;background:rgba(3,12,26,.92);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:20px}
.lightbox[hidden]{display:none}
.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0}
.lightbox img{max-width:100%;max-height:72vh;border-radius:16px;object-fit:contain;background:#0c2a4b}
.lightbox figcaption{color:#fff;font-weight:700;text-align:center}
.lb-close,.lb-nav{border:0;background:rgba(255,255,255,.14);color:#fff;width:46px;height:46px;border-radius:50%;font-size:20px;cursor:pointer}
.lb-close{position:absolute;top:16px;right:16px}
.lb-nav:hover,.lb-close:hover{background:var(--coral)}
@media(max-width:620px){.lightbox{grid-template-columns:1fr;grid-template-rows:1fr auto;padding:14px}.lb-nav{position:absolute;bottom:18px}.lb-nav.prev{left:18px}.lb-nav.next{right:18px}.lightbox figure{margin-bottom:56px}}
.footer-bottom span{display:inline}
.footer-bottom>span{display:block}
.footer-bottom{padding-right:76px}
@media(max-width:620px){.footer-bottom{display:block;padding:20px 76px 28px 0}.footer-bottom>span{margin:4px 0}}

/* ================= v7: visa services, WhatsApp icons, fixed fares ================= */
/* WhatsApp mini icon / button */
.wa-mini{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;height:44px;padding:0 13px;line-height:1.2;text-align:left;border-radius:999px;background:#18a957;color:#fff;font-weight:800;font-size:13px;transition:.2s;flex:none}
.wa-mini:hover{background:#12904a;transform:translateY(-1px)}
.wa-mini span{padding-right:4px}
.wa-big{height:auto;min-height:46px;padding:12px 20px;align-self:flex-start;width:auto}
.btn.wa-big{background:#18a957;color:#fff}
.btn-share{background:#e7f7ee;color:#127a3f;border:1px solid #b9e6cb}
.btn-share:hover{background:#d5f0e0}
.btn-ghost-dark{background:transparent;color:var(--ink);border:1px solid #c5d1e0}
.btn-ghost-dark:hover{border-color:var(--coral);color:var(--coral)}
.check{display:flex;gap:11px;align-items:flex-start;font-size:13px;color:#51647f;cursor:pointer}
.check input{width:18px;height:18px;margin-top:2px;accent-color:var(--coral);flex:none}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:9px 16px;font-weight:700;font-size:13px;cursor:pointer;transition:.2s}
.chip:hover{border-color:var(--coral);color:var(--coral)}
.chip.active{background:var(--navy);border-color:var(--navy);color:#fff}

/* Home: 4-column services and visa CTA card */
@media(min-width:1101px){.service-grid{grid-template-columns:repeat(4,1fr)}.service-card{padding:26px}}
.service-card.visa-cta{background:var(--navy);border-color:var(--navy);color:#fff;min-height:0}
.service-card.visa-cta h3{margin:0 0 6px;font-size:22px}
.service-card.visa-cta p{color:#b9c7da;margin:0 0 16px}
.cta-chips{display:flex;flex-wrap:wrap;gap:8px}
.cta-chips a{margin:0;display:inline-block;padding:8px 13px;border-radius:999px;border:1px solid rgba(255,255,255,.28);color:#fff;font-size:12px;font-weight:700}
.cta-chips a:hover{background:var(--coral);border-color:var(--coral);color:#fff}

/* Visa tool */
.visa-tool{background:var(--soft);padding:80px 0}
.visa-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:34px;align-items:start}
.visa-picker{position:sticky;top:104px;background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}
.visa-picker h2{font-size:34px;line-height:1.05;letter-spacing:-1.8px;margin:14px 0 20px}
.visa-picker h2 em{font-style:normal;color:var(--coral)}
.visa-picker select{font-size:15px;padding:14px}
.vp-trust{list-style:none;padding:0;margin:20px 0;display:grid;gap:10px}
.vp-trust li{position:relative;padding-left:26px;font-size:13px;color:#51647f}
.vp-trust li:before{content:"✓";position:absolute;left:0;top:0;color:#18a957;font-weight:900}
.visa-panel{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow);min-height:420px}
.vp-empty{text-align:center;padding:30px 10px}
.vp-empty-icon{font-size:46px}
.vp-empty h2{font-size:30px;letter-spacing:-1.4px;margin:10px 0}
.vp-empty p{color:var(--muted);max-width:430px;margin:0 auto 22px}
.vp-empty .chips{justify-content:center}
.vp-head{display:flex;align-items:center;gap:16px;margin-bottom:22px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.vp-flag{font-size:44px;line-height:1}
.vp-head h2{margin:0;font-size:32px;letter-spacing:-1.6px;line-height:1.1}
.vp-updated{margin:4px 0 0;color:var(--muted);font-size:12px;font-weight:700}
.vp-draft{background:#fff6e5;border:1px solid #f3d9a4;color:#8a5a00;border-radius:12px;padding:11px 14px;font-size:12px;font-weight:700;margin-bottom:18px}
.vp-pending{background:var(--soft);border:1px dashed #c5d1e0;border-radius:20px;padding:26px}
.vp-pending h3{margin:0 0 8px;font-size:20px}
.vp-pending p{color:var(--muted);margin:0 0 18px}
.vp-types{display:grid;gap:12px}
.vt-card{border:1px solid var(--line);border-radius:18px;padding:18px;background:var(--soft)}
.vt-card h3{margin:0 0 12px;font-size:17px}
.vt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.vt-cell small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);font-weight:800}
.vt-cell b{font-size:14px}
.vp-sub{margin:28px 0 12px;font-size:18px}
.vp-docs,.vp-notes{margin:0;padding:0;list-style:none;display:grid;gap:9px}
.vp-docs li,.vp-notes li{position:relative;padding:12px 14px 12px 44px;border:1px solid var(--line);border-radius:14px;font-size:14px}
.vp-docs li:before{content:"";position:absolute;left:15px;top:14px;width:16px;height:16px;border:2px solid #b9c7da;border-radius:5px}
.vp-notes li{background:#fffaf0;border-color:#f3e3bf;padding-left:40px}
.vp-notes li:before{content:"i";position:absolute;left:14px;top:12px;width:18px;height:18px;border-radius:50%;background:var(--coral);color:#fff;font-size:11px;font-weight:900;text-align:center;line-height:18px}
.vp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:26px}
.vp-disclaimer{margin:18px 0 0;font-size:12px;color:var(--muted)}
.doc-note{background:#f5f8fc;border:1px solid var(--line);border-radius:14px;padding:12px 14px;font-size:13px;margin-top:20px}

/* Fixed fares */
.fares{background:#fff;padding-bottom:70px}
.fares .chips{margin-bottom:24px}
.fare-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fare-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;transition:.25s}
.fare-card[hidden]{display:none}
.fare-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.fare-photo{position:relative;aspect-ratio:3/2;background:#dfe7f0}
.fare-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fare-tag,.fare-draft{position:absolute;top:12px;left:12px;background:var(--navy);color:#fff;font-size:10px;font-weight:800;letter-spacing:1.5px;padding:5px 10px;border-radius:999px}
.fare-draft{left:auto;right:12px;background:#f5a623;color:#3a2600}
.fare-body{display:flex;flex-direction:column;gap:6px;padding:18px;flex:1}
.fare-body h3{margin:0;font-size:17px;line-height:1.25}
.fare-route{margin:0;color:var(--muted);font-size:13px}
.fare-meta{margin:0;font-size:12px;font-weight:700;color:#51647f}
.fare-inc{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-wrap:wrap;gap:6px}
.fare-inc li{font-size:11px;background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:4px 9px;color:#51647f}
.fare-foot{margin-top:auto;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.fare-price b{display:block;font-size:22px;letter-spacing:-.8px;line-height:1}
.fare-price small{color:var(--muted);font-size:11px}
.fare-actions{display:flex;align-items:center;gap:8px}
.fare-actions .btn{padding:11px 14px}
.fare-empty{text-align:center;background:var(--soft);border:1px dashed #c5d1e0;border-radius:24px;padding:42px 20px}
.fare-empty h3{margin:0 0 8px;font-size:22px}
.fare-empty p{color:var(--muted);margin:0 auto 20px;max-width:480px}
.fare-empty .wa-big{display:inline-flex;gap:8px;align-self:center}

/* Booking dialog */
.book-dialog{border:0;border-radius:28px;padding:0;width:min(640px,calc(100% - 24px));max-height:calc(100vh - 24px);background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.35)}
.book-dialog::backdrop{background:rgba(3,12,26,.7)}
.book-dialog .service-form{border:0;box-shadow:none;margin:0;border-radius:0}
.dlg-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:0;border-radius:50%;background:var(--soft);cursor:pointer;font-size:16px;z-index:2}
.dlg-close:hover{background:var(--coral);color:#fff}
.bk-summary{background:var(--navy);color:#fff;border-radius:20px;padding:20px 22px;margin-bottom:20px}
.bk-summary small{color:var(--coral2);font-weight:800;letter-spacing:2px;font-size:10px}
.bk-summary h3{margin:6px 0 4px;font-size:22px;padding-right:30px}
.bk-summary p{margin:0;color:#b9c7da;font-size:13px}
.bk-summary .bk-price b{color:#fff;font-size:20px}
.bk-note{font-size:12px;color:var(--muted);margin:14px 0}

@media(max-width:1100px){.fare-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.visa-layout{grid-template-columns:1fr}.visa-picker{position:static}.visa-panel{padding:24px}}
@media(max-width:620px){.fare-grid{grid-template-columns:1fr}.vt-grid{grid-template-columns:1fr 1fr}.vp-head h2{font-size:25px}.vp-actions .btn{flex:1 1 100%}.visa-tool{padding:56px 0}.visa-picker{padding:22px}.book-dialog .service-form{padding:20px}}
.fare-foot{flex-direction:column;align-items:stretch;gap:12px}
.fare-price{display:flex;align-items:baseline;gap:8px}
.fare-actions{width:100%}
.fare-actions .btn{flex:1;white-space:nowrap}

/* ================= v8: trip request, terms, quote cards ================= */
.fare-ex{margin:0;font-size:11.5px;color:#8a5a3c}
.fare-ex b{color:#6e3f22}
.fare-price.is-quote b{font-size:19px;color:var(--coral)}
.fare-actions .btn.is-added{background:#e7f7ee;color:#127a3f;border:1px solid #b9e6cb}
.fare-terms{margin:22px 0 0;font-size:12.5px;color:var(--muted)}
.fare-terms a,.check a{color:var(--coral);font-weight:700;text-decoration:underline}
/* sticky trip bar */
.trip-bar{position:fixed;z-index:95;left:50%;bottom:18px;transform:translateX(-50%);display:flex;align-items:center;gap:18px;background:var(--navy);color:#fff;padding:10px 12px 10px 22px;border-radius:999px;box-shadow:0 18px 50px rgba(3,12,26,.4);max-width:calc(100% - 100px)}
.trip-bar[hidden]{display:none}
.trip-bar.pulse{animation:tbPulse .5s}
@keyframes tbPulse{0%{transform:translateX(-50%) scale(1)}40%{transform:translateX(-50%) scale(1.06)}100%{transform:translateX(-50%) scale(1)}}
.tb-text{font-size:13px;line-height:1.3}
.tb-text b{font-size:17px;color:var(--coral2)}
.tb-text small{display:block;color:#b9c7da;font-size:11.5px}
.trip-bar .btn{white-space:nowrap}
/* trip dialog */
.trip-dialog{width:min(820px,calc(100% - 24px))}
.bk-rid{margin-top:8px!important;font-size:12px!important}
.bk-rid b{color:#fff;letter-spacing:1px}
.trip-line{border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:14px;background:var(--soft)}
.tl-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.tl-n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--coral);color:#fff;font-weight:800;font-size:13px;flex:none}
.tl-title{flex:1;min-width:0}
.tl-title b{display:block;font-size:15px;line-height:1.25}
.tl-title small{color:var(--muted);font-size:12px}
.tl-btns{display:flex;gap:6px;flex:none}
.tl-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 11px;font-size:11.5px;font-weight:800;cursor:pointer;color:var(--ink)}
.tl-btn:hover{border-color:var(--coral);color:var(--coral)}
.tl-rm:hover{border-color:#d9534f;color:#d9534f}
.trip-line .field input,.trip-line .field textarea{background:#fff}
.trip-sub{margin:26px 0 12px;font-size:17px}
.trip-empty{text-align:center;color:var(--muted);padding:20px}
.trip-total{margin:18px 0;background:var(--navy);color:#fff;border-radius:18px;padding:16px 20px;display:grid;gap:4px}
.trip-total[hidden]{display:none}
.trip-total span{font-size:12px;color:#b9c7da}
.trip-total b{font-size:26px;letter-spacing:-1px}
.trip-total .tt-q{color:var(--coral2);font-weight:700}
.trip-total small{color:#8fa3bd;font-size:11.5px;margin-top:4px}
.trip-actions{display:flex;flex-wrap:wrap;gap:10px}
.msg-link{border:0;cursor:pointer;font:inherit}
.msg-link{font-size:12px}
/* legal page */
.legal-hero{padding:150px 0 40px;background:var(--soft)}
.legal-hero h1{font-size:54px;letter-spacing:-3px;margin:14px 0 10px;line-height:1}
.legal-hero p{color:var(--muted);max-width:640px;margin:0}
.legal{padding:50px 0 100px}
.legal-grid{display:grid;grid-template-columns:230px 1fr;gap:50px;align-items:start}
.legal-nav{position:sticky;top:104px;display:grid;gap:4px}
.legal-nav a{padding:9px 14px;border-radius:12px;font-size:13px;font-weight:700;color:#51647f}
.legal-nav a:hover{background:var(--soft);color:var(--coral)}
.legal-text{max-width:760px}
.legal-text h2{font-size:22px;margin:34px 0 10px;letter-spacing:-.5px;scroll-margin-top:100px}
.legal-text h2:first-child{margin-top:0}
.legal-text p,.legal-text li{color:#3d516e;font-size:15px}
.legal-text ul{padding-left:20px;display:grid;gap:6px}
.legal-contact{margin-top:36px;background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.footer-terms{margin-left:auto;font-size:12px;color:#b9c7da;text-decoration:underline}
@media(max-width:900px){.legal-grid{grid-template-columns:1fr;gap:20px}.legal-nav{position:static;display:flex;flex-wrap:wrap}.legal-hero h1{font-size:40px}}
@media(max-width:620px){.trip-bar{left:12px;right:84px;max-width:none;transform:none;border-radius:20px;padding:10px 10px 10px 16px;gap:10px}.trip-bar.pulse{animation:none}.trip-bar .btn{padding:12px 14px}.tl-head{flex-wrap:wrap}.tl-btns{width:100%}.tl-btn{flex:1}.trip-actions .btn{flex:1 1 100%}.footer-terms{margin-left:0}}

/* v8.1: consent line + spacing */
.form-grid .check.full{grid-column:1/-1;width:100%;margin-top:6px}
.check span{flex:1;min-width:0;line-height:1.55}
.service-form .form-grid+.btn,.service-form .form-grid+.bk-note,.service-form .check+.btn{margin-top:22px}
.vp-sub+.vp-docs{margin-bottom:0}

/* ===== v8.2: country badges, tiles, search, equal action buttons ===== */
.cbadge{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:hsl(var(--hue,212) 80% 94%);border:1px solid hsl(var(--hue,212) 60% 86%);color:hsl(var(--hue,212) 62% 30%);font-weight:900;font-size:13px;letter-spacing:.6px;flex:none;line-height:1}
.cbadge.lg{width:60px;height:60px;border-radius:19px;font-size:18px}
.vp-head{gap:18px}
.vp-empty{padding:26px 6px 10px}
.vp-empty-icon svg{display:block;margin:0 auto 6px}
.vp-empty h2{margin:12px 0 8px}
.csearch{display:flex;align-items:center;gap:10px;max-width:440px;height:50px;margin:0 auto 24px;padding:0 18px;border:1px solid var(--line);border-radius:999px;background:var(--soft);transition:.2s;text-align:left}
.csearch:focus-within{border-color:var(--coral);background:#fff;box-shadow:0 0 0 4px rgba(255,127,89,.14)}
.csearch .cs-ic{display:grid;color:var(--muted)}
.csearch input{border:0;background:transparent;outline:0;width:100%;font:inherit;font-size:15px;color:var(--ink);padding:0;margin:0}
.ctiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:12px;text-align:left}
.ctiles[hidden]{display:none}
.ctile{display:flex;align-items:center;gap:14px;min-height:78px;padding:14px 16px;border:1px solid var(--line);border-radius:20px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:.22s}
.ctile[hidden]{display:none}
.ctile:hover,.ctile:focus-visible{border-color:var(--coral);box-shadow:0 12px 30px rgba(7,26,53,.1);transform:translateY(-2px)}
.ct-text{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}
.ct-text b{font-size:14.5px;line-height:1.25}
.ct-text small{color:var(--muted);font-size:11.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ct-go{color:#b9c7da;font-size:19px;transition:.22s;flex:none}
.ctile:hover .ct-go{color:var(--coral);transform:translateX(3px)}
.ct-none{text-align:center;padding:24px 10px}
.ct-none[hidden]{display:none}
.ct-none p{color:var(--muted);margin:0 0 14px}
.ct-none .wa-big{display:inline-flex}
/* all action buttons the same size and look */
.vp-actions .btn,.vp-actions .wa-mini{min-height:48px;height:auto;padding:12px 22px;font-size:13px;font-weight:800;border-radius:999px;gap:8px;justify-content:center}
.vp-actions .btn svg{flex:none}
.floating-wa{color:#fff}
.floating-wa svg{display:block}
@media(max-width:620px){
  .vp-actions{gap:10px}
  .vp-actions .btn,.vp-actions .wa-mini{flex:1 1 100%;width:100%;max-width:none}
  .ctiles{grid-template-columns:1fr}
  .csearch{max-width:none}
}

.footer-social{display:flex!important;flex-wrap:wrap;gap:10px;margin:4px 0 0}
.footer-main .footer-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.09);display:grid;place-items:center;margin:0;color:#fff;transition:.2s}
.footer-main .footer-social a:hover{background:var(--coral);color:#fff}
.footer-bottom .tech-partner a{color:#ff9b7a;font-weight:700}
.footer-bottom .tech-partner a:hover{text-decoration:underline}
