/* The home page: travellers first (hero with the visa search, destinations, steps, perks), then the partner band. */

/* ───── Hero ───── */
.lx-hero{position:relative;overflow:hidden;isolation:isolate;color:var(--white);background:radial-gradient(120% 90% at 85% 0%,#1E4FA8 0,#0E2A63 45%,#08183A 100%);padding-block:clamp(40px,6vw,76px) clamp(36px,5vw,56px)}
.lx-hero-bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.lx-hero-bg>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22;mix-blend-mode:luminosity;mask-image:linear-gradient(to bottom,#000 30%,transparent 95%);-webkit-mask-image:linear-gradient(to bottom,#000 30%,transparent 95%)}
.lx-hero-bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.09) 1px,transparent 1.5px);background-size:22px 22px;mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent);-webkit-mask-image:radial-gradient(70% 60% at 50% 30%,#000,transparent)}
.lx-orb{position:absolute;border-radius:50%;filter:blur(70px)}
.lx-orb-a{width:420px;height:420px;background:rgba(244,180,26,.28);top:-140px;inset-inline-start:-120px}
.lx-orb-b{width:520px;height:520px;background:rgba(63,176,234,.25);bottom:-260px;inset-inline-end:-160px}
.lx-route{position:absolute;inset:0;width:100%;height:100%}
.lx-route path{fill:none;stroke:var(--gold);stroke-opacity:.45;stroke-width:1.6;stroke-dasharray:3 12;stroke-linecap:round;animation:lx-dash 30s linear infinite}
@keyframes lx-dash{to{stroke-dashoffset:-600}}

.lx-hero-inner{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(24px,5vw,64px);align-items:center}
.lx-kicker{display:inline-flex;align-items:center;gap:10px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(6px);font-size:14px;font-weight:700;color:#E3ECFA}
.lx-kicker i{width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(244,180,26,.2)}
.lx-hero h1{margin-top:18px;font-size:clamp(34px,5.4vw,66px);font-weight:800;line-height:1.12;letter-spacing:-.01em;text-wrap:balance}
.lx-hero h1 em{display:block;font-style:normal;background:linear-gradient(90deg,#FFD873,#F4B41A 55%,#FFE6A3);-webkit-background-clip:text;background-clip:text;color:transparent}
.lx-hero-copy>p{margin-top:16px;max-width:56ch;font-size:clamp(16px,1.6vw,19px);line-height:1.75;color:#C9D8F0}

/* The boarding pass */
.lx-pass{justify-self:end;width:min(100%,330px);background:var(--white);color:var(--ink);border-radius:22px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.4);transform:rotate(-3deg);animation:lx-float 7s ease-in-out infinite}
[dir="ltr"] .lx-pass{transform:rotate(3deg)}
@keyframes lx-float{50%{translate:0 -10px}}
.lx-pass-photo{position:relative;height:150px}
.lx-pass-photo img{width:100%;height:100%;object-fit:cover}
.lx-pass-stamp{position:absolute;top:12px;inset-inline-end:12px;padding:5px 12px;border-radius:999px;background:#E7F7EF;color:#067647;font-size:13px;font-weight:800;box-shadow:0 6px 16px -6px rgba(0,0,0,.35)}
.lx-pass-body{padding:16px 18px 18px;position:relative}
.lx-pass-body::before,.lx-pass-body::after{content:"";position:absolute;top:-11px;width:22px;height:22px;border-radius:50%;background:#0E2A63}
.lx-pass-body::before{inset-inline-start:-11px}.lx-pass-body::after{inset-inline-end:-11px}
.lx-pass-route{display:flex;align-items:center;justify-content:space-between;gap:10px}
.lx-pass-route span{display:grid}
.lx-pass-route span:last-child{text-align:end}
.lx-pass-route small,.lx-pass-meta small{font-size:11.5px;color:var(--muted);font-weight:500}
.lx-pass-route b{font-size:20px;font-weight:800}
.lx-pass-route svg{width:26px;height:26px;fill:var(--blue);flex-shrink:0}
[dir="rtl"] .lx-pass-route svg{transform:scaleX(-1)}
.lx-pass-meta{display:flex;justify-content:space-between;gap:8px;margin-top:14px;padding-top:14px;border-top:1.5px dashed var(--line)}
.lx-pass-meta span{display:grid;gap:2px}
.lx-pass-meta b{font-size:14px;font-weight:800}
.lx-ok{color:var(--ok)}
.lx-pass-code{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;font-family:var(--f-mono);font-size:11.5px;color:var(--muted)}
.lx-pass-code i{flex:1;max-width:120px;height:28px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 4px,var(--ink) 4px 5px,transparent 5px 8px,var(--ink) 8px 11px,transparent 11px 13px)}

/* The search sits in the hero, full width */
.lx-search{margin-top:clamp(28px,4vw,44px)}
.lx-search .vs-box{max-width:none;border-radius:20px;box-shadow:0 40px 80px -36px rgba(0,0,0,.65),0 0 0 6px rgba(255,255,255,.07)}
.lx-trust{list-style:none;margin:58px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;color:#C9D8F0;font-size:14px;font-weight:600}
.lx-trust li{display:inline-flex;align-items:center;gap:8px}
.lx-trust svg{width:18px;height:18px;fill:none;stroke:var(--gold);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

/* ───── Sections ───── */
.lx-section{padding-block:clamp(56px,8vw,96px)}
.lx-tint{background:linear-gradient(180deg,var(--paper),#fff)}
.lx-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:clamp(24px,3vw,36px)}
.lx-head-center{justify-content:center;text-align:center}
.lx-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:800;color:var(--blue);letter-spacing:.02em}
.lx-eyebrow::before{content:"";width:22px;height:2px;border-radius:2px;background:var(--gold)}
.lx-head h2,.lx-why-copy h2,.lx-end-title{margin-top:8px;font-size:clamp(26px,3.4vw,42px);font-weight:800;line-height:1.2;text-wrap:balance}
.lx-more{display:inline-flex;align-items:center;gap:6px;font-weight:800;color:var(--blue);white-space:nowrap}
.lx-more svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.lx-more:hover svg{transform:translateX(-4px)}
[dir="ltr"] .lx-more:hover svg{transform:translateX(4px)}

/* Destinations: a bento grid of photos */
.lx-dests{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(170px,17vw,230px);gap:14px}
.lx-dest{position:relative;overflow:hidden;border-radius:20px;background:#173D71;color:var(--white);isolation:isolate}
.lx-dest:first-child{grid-column:span 2;grid-row:span 2}
.lx-dest>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.lx-dest::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(5,16,40,.85) 0,rgba(5,16,40,.15) 55%,transparent)}
.lx-dest:hover>img{transform:scale(1.07)}
.lx-dest-info{position:absolute;inset-inline:18px;bottom:16px;display:grid;gap:4px}
.lx-dest-info b{display:flex;align-items:center;gap:8px;font-size:clamp(17px,1.6vw,21px);font-weight:800}
.lx-dest:first-child .lx-dest-info b{font-size:clamp(22px,2.4vw,30px)}
.lx-dest-info b img{border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.4)}
.lx-dest-info small{font-size:14px;color:#DCE7F7}
.lx-dest-info small span{font-weight:800;color:var(--gold)}

/* Steps */
.lx-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2.5vw,28px);position:relative}
.lx-steps::before{content:"";position:absolute;top:36px;inset-inline:12%;height:2px;background:repeating-linear-gradient(90deg,#B9CCEA 0 8px,transparent 8px 16px)}
.lx-steps li{position:relative;text-align:center;padding:0 6px}
.lx-step-icon{position:relative;display:grid;place-items:center;width:72px;height:72px;margin:0 auto 18px;border-radius:22px;background:var(--white);border:1px solid var(--line);box-shadow:0 18px 30px -20px rgba(23,61,113,.5)}
.lx-step-icon svg{width:30px;height:30px;fill:none;stroke:var(--blue);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lx-step-icon i{position:absolute;top:-8px;inset-inline-end:-8px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--ink);font-style:normal;font-size:13px;font-weight:800;box-shadow:0 0 0 4px var(--paper)}
.lx-steps h3{font-size:20px;font-weight:800}
.lx-steps p{margin-top:6px;color:var(--muted);font-size:15px;line-height:1.7}

/* Why us */
.lx-why{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,64px);align-items:center}
.lx-why-copy p{margin:14px 0 24px;color:var(--ink-2);font-size:17px;line-height:1.8}
.lx-perks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) 1fr;gap:14px}
.lx-perks li{padding:22px;border-radius:20px;background:var(--white);border:1px solid var(--line);transition:transform .25s,box-shadow .25s}
.lx-perks li:hover{transform:translateY(-4px);box-shadow:0 24px 40px -28px rgba(23,61,113,.45)}
.lx-perks li:nth-child(2),.lx-perks li:nth-child(4){translate:0 22px}
.lx-perk-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,#EAF1FD,#F7FAFF);margin-bottom:14px}
.lx-perk-icon svg{width:24px;height:24px;fill:none;stroke:var(--blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lx-perks h3{font-size:17px;font-weight:800}
.lx-perks p{margin-top:6px;color:var(--muted);font-size:14.5px;line-height:1.7}

/* ───── The partner band ───── */
.lx-b2b{padding-block:clamp(8px,2vw,24px) clamp(56px,8vw,96px)}
.lx-b2b-card{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(28px,5vw,64px);border-radius:32px;color:var(--white);background:linear-gradient(135deg,#0A1A3E 0,#123A8A 60%,#1E4FA8 100%)}
.lx-b2b-card::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(80% 80% at 80% 50%,#000,transparent);-webkit-mask-image:radial-gradient(80% 80% at 80% 50%,#000,transparent)}
.lx-b2b-card::after{content:"";position:absolute;z-index:-1;width:380px;height:380px;border-radius:50%;background:rgba(244,180,26,.22);filter:blur(80px);bottom:-160px;inset-inline-start:-100px}
.lx-b2b-tag{display:inline-block;padding:6px 14px;border-radius:999px;background:rgba(244,180,26,.16);color:var(--gold);border:1px solid rgba(244,180,26,.35);font-size:13.5px;font-weight:800}
.lx-b2b h2{margin-top:16px;font-size:clamp(26px,3.4vw,42px);font-weight:800;line-height:1.2;text-wrap:balance}
.lx-b2b h2 em{display:block;font-style:normal;color:var(--gold)}
.lx-b2b-copy>p{margin-top:14px;color:#C9D8F0;font-size:16.5px;line-height:1.8;max-width:54ch}
.lx-b2b-perks{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr) 1fr;gap:14px 22px}
.lx-b2b-perks li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:#B9CAE6;line-height:1.6}
.lx-b2b-perks b{display:block;color:var(--white);font-size:15.5px;margin-bottom:2px}
.lx-b2b-perks svg{flex-shrink:0;width:22px;height:22px;padding:3px;border-radius:50%;background:rgba(244,180,26,.18);fill:none;stroke:var(--gold);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.lx-b2b-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.lx-btn-line{background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.35)}
.lx-btn-line:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.6)}
.lx-b2b-supplier{margin-top:16px;font-size:14px;color:#A9BCDC}
.lx-b2b-supplier a{color:var(--white);font-weight:800;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(244,180,26,.7)}

/* A glimpse of the partner dashboard */
.lx-board{padding:18px;border-radius:22px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px);box-shadow:0 40px 70px -40px rgba(0,0,0,.7);transform:perspective(1000px) rotateY(-6deg) rotateX(3deg)}
[dir="ltr"] .lx-board{transform:perspective(1000px) rotateY(6deg) rotateX(3deg)}
.lx-board-top{display:flex;align-items:center;gap:6px;font-size:13px;color:#A9BCDC;margin-bottom:14px}
.lx-board-top i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.25)}
.lx-board-top i:first-child{background:#F97066}.lx-board-top i:nth-child(2){background:var(--gold)}.lx-board-top i:nth-child(3){background:#32D583}
.lx-board-top span{margin-inline-start:8px;font-weight:700}
.lx-board-stats{display:grid;grid-template-columns:minmax(0,1fr) 1fr;gap:10px}
.lx-board-stats span{display:grid;gap:4px;padding:14px;border-radius:14px;background:rgba(255,255,255,.08)}
.lx-board-stats small{font-size:12.5px;color:#A9BCDC}
.lx-board-stats b{font-size:22px;font-weight:800}
.lx-board-rows{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.lx-board-rows li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;background:var(--white);color:var(--ink)}
.lx-board-rows span{display:grid}
.lx-board-rows b{font-size:14px}
.lx-board-rows small{font-size:12.5px;color:var(--muted)}
.lx-board-rows em{font-style:normal;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;white-space:nowrap}
.lx-board-rows .ok{background:#ECFDF3;color:#067647}
.lx-board-rows .run{background:#EEF4FF;color:#3538CD}
.lx-board-rows .wait{background:#FFFAEB;color:#B54708}

/* ───── FAQ and the office ───── */
.lx-end{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(28px,5vw,56px);align-items:start}
.lx-faq{margin-top:22px}
.lx-office{border-radius:24px;overflow:hidden;background:var(--white);border:1px solid var(--line);box-shadow:0 24px 50px -36px rgba(23,61,113,.5);position:sticky;top:96px}
.lx-office iframe{display:block;width:100%;height:240px;border:0;filter:saturate(.85)}
.lx-office-body{padding:20px 22px 22px}
.lx-office-body h3{font-size:20px;font-weight:800}
.lx-office-body p{margin-top:6px;color:var(--muted);font-size:15px}
.lx-office-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}

/* ───── Responsive ───── */
@media (max-width:980px){
    .lx-hero-inner,.lx-why,.lx-b2b-card,.lx-end{grid-template-columns:minmax(0,1fr)}
    .lx-pass{justify-self:center;transform:none}
    .lx-dests{grid-template-columns:repeat(2,1fr)}
    .lx-steps{grid-template-columns:minmax(0,1fr) 1fr;row-gap:36px}
    .lx-steps::before{display:none}
    .lx-perks li:nth-child(2),.lx-perks li:nth-child(4){translate:none}
    .lx-board{transform:none}
    .lx-office{position:static}
}
@media (max-width:640px){
    .lx-pass{display:none}
    .lx-hero h1 em{display:inline}
    .lx-head{flex-direction:column;align-items:start}
    .lx-dests{grid-auto-rows:170px;gap:10px}
    .lx-steps,.lx-perks,.lx-b2b-perks{grid-template-columns:minmax(0,1fr)}
    .lx-b2b-card{border-radius:24px}
    .lx-trust{justify-content:flex-start;gap:10px 18px;font-size:13px}
}
@media (prefers-reduced-motion:reduce){
    .lx-pass,.lx-route path{animation:none}
    .lx-dest>img,.lx-perks li{transition:none}
}

/* Shown once after signing up. */
.lx-welcome{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px;padding:8px 14px;border-radius:999px;background:rgba(50,213,131,.16);border:1px solid rgba(50,213,131,.4);color:#D1FADF;font-size:14px;font-weight:700}
.lx-welcome svg{width:18px;height:18px;fill:none;stroke:#32D583;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.lx-welcome a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
