@font-face { font-family:Barlow;src:url('homepage/barlow-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap }
@font-face { font-family:Manrope;src:url('homepage/manrope-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap }
@font-face { font-family:Manrope;src:url('homepage/manrope-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap }
body.homepage { color-scheme:dark;--navy:#0b2340;--surface:#112d50;--surface-raised:#17385c;--yellow:#ffd631;--white:#f7f8fa;--muted:#b8c7d9;--line:#35506e;--radius:12px;--radius-sm:6px;--hp-font-body:Manrope,Arial,sans-serif;--hp-font-display:Barlow,'Arial Narrow',sans-serif }
.homepage :where(.hp-shell) * { box-sizing:border-box }
body.homepage { scroll-behavior:smooth;scroll-padding-top:30px }
body.homepage { margin:0;background:var(--navy);color:var(--white);font:600 15px/1.7 var(--hp-font-body);-webkit-font-smoothing:antialiased }
.homepage :where(.hp-shell) a { color:inherit;text-decoration:none }
.homepage :where(.hp-shell) button { font:inherit }
.homepage :where(.hp-shell) img { display:block;max-width:100% }
.homepage :where(.hp-shell) p,
.homepage :where(.hp-shell) h1,
.homepage :where(.hp-shell) h2,
.homepage :where(.hp-shell) h3,
.homepage :where(.hp-shell) figure { margin:0 }
.homepage :where(.hp-shell) button,
.homepage :where(.hp-shell) a,
.homepage :where(.hp-shell) summary { -webkit-tap-highlight-color:transparent }
.homepage :where(.hp-shell) a:focus-visible,
.homepage :where(.hp-shell) button:focus-visible,
.homepage :where(.hp-shell) summary:focus-visible { outline:3px solid var(--yellow);outline-offset:6px;border-radius:3px }
.homepage .hp-wrap { width:calc(100% - 112px);max-width:1280px;margin-inline:auto }
.homepage .hp-skip { position:fixed;z-index:10;left:12px;top:12px;background:var(--yellow);color:var(--navy);padding:12px 20px;transform:translateY(-180%) }
.homepage .hp-skip:focus { transform:none }
.homepage .hp-site-header { border-bottom:1px solid rgba(184,199,217,.14) }
.homepage .hp-navigation { height:80px;display:flex;align-items:center;gap:32px }
.homepage .hp-brand { font-size:25px;font-weight:700;letter-spacing:-1.1px;display:inline-flex;gap:10px;align-items:center;white-space:nowrap }
.homepage .hp-brand img { flex-shrink:0 }
.homepage .hp-desktop-nav { display:flex;gap:24px;margin-left:auto;font-size:13px;align-items:center;white-space:nowrap }
.homepage .hp-desktop-nav a,
.homepage .hp-login,
.homepage .hp-footer a { transition:color .2s }
.homepage .hp-desktop-nav a:hover,
.homepage .hp-login:hover,
.homepage .hp-footer a:hover { color:var(--yellow) }
.homepage .hp-nav-actions { display:flex;gap:24px;align-items:center;font-size:13px }
.homepage .hp-button { display:inline-flex;justify-content:center;align-items:center;gap:40px;min-height:58px;padding:15px 26px;border-radius:var(--radius-sm);background:var(--yellow);color:var(--navy);font-size:16px;font-weight:700;white-space:nowrap;transition:background .2s,transform .2s;line-height:1.4;border:1px solid transparent }
.homepage .hp-button>span { font-size:23px;line-height:1 }
.homepage .hp-button:hover { background:#ffe367;transform:translateY(-2px) }
.homepage .hp-button:active { transform:translateY(1px) }
.homepage .hp-button.hp-compact { min-height:44px;font-size:13px;padding:10px 17px;gap:22px }
.homepage .hp-button.hp-compact>span { font-size:18px }
.homepage .hp-button.hp-secondary { background:transparent;color:var(--white);border-color:var(--line) }
.homepage .hp-button.hp-secondary:hover { background:var(--surface-raised);border-color:var(--muted) }
.homepage .hp-text-link { display:inline-flex;align-items:center;gap:20px;font-weight:700;font-size:14px;line-height:1.6;white-space:nowrap }
.homepage .hp-text-link>span { font-size:22px;color:var(--yellow);transition:transform .2s }
.homepage .hp-text-link:hover>span { transform:translate(2px,-2px) }
.homepage .hp-menu-toggle,
.homepage .hp-mobile-menu { display:none }
.homepage .hp-hero { display:grid;grid-template-columns:1.18fr 1fr;gap:42px;align-items:center;padding-top:48px;padding-bottom:44px;min-height:606px }
.homepage .hp-hero-copy { padding-bottom:4px;position:relative;z-index:1 }
.homepage .hp-eyebrow { color:var(--muted);font-size:12px;margin-bottom:23px;letter-spacing:.055em }
.homepage .hp-hero h1 { font:700 clamp(64px,6.25vw,90px)/.99 var(--hp-font-display);letter-spacing:-.016em;white-space:nowrap;margin-left:-2px }
.homepage .hp-hero h1 span { color:var(--yellow) }
.homepage .hp-hero-lead { color:var(--muted);font-size:17px;line-height:1.8;max-width:43ch;margin-top:28px }
.homepage .hp-hero-actions { display:flex;align-items:center;gap:31px;margin-top:31px }
.homepage .hp-hero-visual { height:488px;position:relative;margin-left:12px }
.homepage .hp-hero-photo { position:absolute;inset:0 62px 25px 0;border-radius:110px 12px 12px 12px;overflow:hidden }
.homepage .hp-photo { width:100%;height:100%;object-fit:cover }
.homepage .hp-hero-photo img { object-position:64% 45% }
.homepage .hp-small-photo { position:absolute;width:172px;height:230px;bottom:0;right:-1px;border:8px solid var(--navy);border-radius:20px;overflow:hidden;transform:rotate(6deg);box-shadow:0 20px 35px #071a3240 }
.homepage .hp-small-photo img { object-position:center }
.homepage .hp-visual-plane { position:absolute;top:27px;right:10px;transform:rotate(12deg) }
.homepage .hp-hero-visual:before { content:'';position:absolute;border:1px solid #57718d;border-radius:50%;width:150px;height:150px;right:-14px;top:4px;opacity:.4 }
.homepage .hp-promise-strip { border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px;gap:24px }
.homepage .hp-promise-strip>span { display:flex;align-items:center;gap:11px }
.homepage .hp-tick { color:var(--yellow);font-size:17px }
.homepage .hp-section { padding-block:92px }
.homepage .hp-section h2,
.homepage .hp-how-intro h2,
.homepage .hp-closing h2 { font:700 clamp(44px,4.3vw,60px)/1.02 var(--hp-font-display);letter-spacing:-.013em;text-wrap:balance }
.homepage .hp-section-title { display:flex;align-items:flex-end;justify-content:space-between;gap:32px }
.homepage .hp-section-title>.hp-text-link { margin-bottom:5px }
.homepage .hp-section-intro { color:var(--muted);font-size:15px;max-width:66ch;margin-top:21px }
.homepage .hp-snapshot { font-size:11px;color:var(--muted);margin-top:10px }
.homepage .hp-deals-layout { display:grid;grid-template-columns:.76fr 1.5fr;gap:32px;margin-top:32px }
.homepage .hp-deal-photo { position:relative;height:484px;min-height:0;border-radius:var(--radius);overflow:hidden }
.homepage .hp-deal-photo:after { content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#0b2340dc) }
.homepage .hp-deal-photo img { object-position:50% 52% }
.homepage .hp-deal-photo figcaption { position:absolute;z-index:1;bottom:30px;left:30px;right:35px;font:700 37px/1.12 var(--hp-font-display);max-width:11ch;text-wrap:balance }
.homepage .hp-flight-list { display:grid;grid-template-rows:repeat(4,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;padding-inline:28px }
.homepage .hp-flight { display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:121px;padding-block:19px }
.homepage .hp-flight+.hp-flight { border-top:1px solid var(--line) }
.homepage .hp-route { color:var(--muted);font-size:11px;line-height:1.5 }
.homepage .hp-route span { margin-left:6px }
.homepage .hp-flight h3 { font-size:25px;letter-spacing:-.65px;line-height:1.4;margin-top:2px }
.homepage .hp-flight h3>span { color:var(--muted);font-size:12px;letter-spacing:0;margin-left:8px;font-weight:600 }
.homepage .hp-flight-detail { color:var(--muted);font-size:11px;margin-top:3px }
.homepage .hp-flight-detail>span { padding-inline:5px }
.homepage .hp-fare { min-width:94px;text-align:right;font-variant-numeric:tabular-nums }
.homepage .hp-fare>span { display:block;text-transform:uppercase;letter-spacing:.12em;font-size:9px;color:var(--muted) }
.homepage .hp-fare strong { font:700 44px/1.1 var(--hp-font-display);color:var(--yellow);white-space:nowrap }
.homepage .hp-fare small { font-size:27px }
.homepage .hp-fineprint { font-size:11px;line-height:1.8;color:var(--muted);margin-top:18px;max-width:102ch }
.homepage .hp-how-section { background:var(--surface);padding-block:76px;border-block:1px solid #1a3858 }
.homepage .hp-how-layout { display:grid;grid-template-columns:.9fr 1.1fr;gap:90px }
.homepage .hp-how-intro h2 { font-size:65px }
.homepage .hp-how-intro>p { max-width:32ch;color:var(--muted);margin-top:23px;font-size:15px }
.homepage .hp-how-intro>.hp-text-link { margin-top:27px }
.homepage .hp-steps { margin:0;padding:0;list-style:none }
.homepage .hp-steps li { display:grid;grid-template-columns:44px 1fr;gap:22px;padding:0 0 28px }
.homepage .hp-steps li+li { padding-top:25px;border-top:1px solid var(--line) }
.homepage .hp-steps li:last-child { padding-bottom:0 }
.homepage .hp-step-number { font:700 34px/1.2 var(--hp-font-display);color:var(--yellow) }
.homepage .hp-steps h3 { font-size:20px;line-height:1.4;letter-spacing:-.4px }
.homepage .hp-steps p { color:var(--muted);font-size:13px;line-height:1.8;margin-top:8px;max-width:49ch }
.homepage .hp-example { font-size:11px;display:inline-block;margin-top:13px;color:var(--white) }
.homepage .hp-plans { display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px }
.homepage .hp-plan { border:1px solid var(--line);border-radius:var(--radius);padding:32px 34px;display:flex;flex-direction:column;align-items:flex-start;background:var(--surface) }
.homepage .hp-plan.hp-free { border-color:#9c8b3f }
.homepage .hp-plan-top { display:flex;justify-content:space-between;width:100%;align-items:flex-start;gap:20px }
.homepage .hp-plan-name { font-size:14px;border-left:3px solid var(--yellow);padding-left:12px;line-height:1.25;margin-top:4px }
.homepage .hp-paid .hp-plan-name { border-color:var(--muted) }
.homepage .hp-price { font:700 49px/.96 var(--hp-font-display);text-align:right;font-variant-numeric:tabular-nums }
.homepage .hp-price>span { display:block;font:600 10px/1.6 var(--hp-font-body);margin-top:9px;color:var(--muted) }
.homepage .hp-plan h3 { font-size:24px;line-height:1.3;letter-spacing:-.7px;margin-top:33px }
.homepage .hp-plan ul { list-style:none;padding:0;margin:23px 0 28px;color:var(--muted);font-size:13px;line-height:1.7 }
.homepage .hp-plan li { position:relative;padding-left:22px;margin-bottom:10px }
.homepage .hp-plan li:before { content:'✓';position:absolute;left:0;color:var(--yellow) }
.homepage .hp-plan .hp-button { margin-top:auto;min-height:50px;font-size:13px;gap:32px }
.homepage .hp-plan .hp-button>span { font-size:20px }
.homepage .hp-articles { padding-top:4px }
.homepage .hp-article-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:44px;margin-top:32px }
.homepage .hp-article-feature { padding:30px 34px;min-height:344px;background:var(--surface-raised);border-radius:var(--radius);position:relative;display:flex;flex-direction:column;overflow:hidden }
.homepage .hp-article-feature:after { content:'';width:200px;height:200px;border:1px solid #4b6782;position:absolute;right:-75px;top:-78px;border-radius:50%;pointer-events:none }
.homepage .hp-article-tag { color:var(--muted);font-size:11px }
.homepage .hp-article-feature h3 { font:700 46px/1.08 var(--hp-font-display);letter-spacing:-.5px;margin-top:20px }
.homepage .hp-article-bottom { display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;color:var(--muted);margin-top:25px }
.homepage .hp-article-bottom>span { color:var(--yellow);font-size:28px }
.homepage .hp-article-feature:hover { background:#1b4169 }
.homepage .hp-article-list { display:flex;flex-direction:column;justify-content:space-between }
.homepage .hp-article-list>a { padding-block:1px 23px;display:block }
.homepage .hp-article-list>a+a { padding-top:24px;border-top:1px solid var(--line) }
.homepage .hp-article-list h3 { font-size:23px;letter-spacing:-.6px;line-height:1.45;max-width:25ch;margin-top:9px }
.homepage .hp-article-more { display:flex;align-items:center;gap:20px;color:var(--muted);font-size:11px;margin-top:15px }
.homepage .hp-article-more>span { color:var(--yellow);font-size:22px }
.homepage .hp-article-list a:hover h3 { color:var(--yellow) }
.homepage .hp-faq { display:grid;grid-template-columns:.65fr 1.35fr;gap:90px;padding-top:0 }
.homepage .hp-faq-intro>.hp-text-link { margin-top:26px }
.homepage .hp-faq-list { border-top:1px solid var(--line) }
.homepage .hp-faq details { border-bottom:1px solid var(--line);padding-block:23px }
.homepage .hp-faq summary { list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:16px;font-weight:700 }
.homepage .hp-faq summary::-webkit-details-marker { display:none }
.homepage .hp-faq summary>span { color:var(--yellow);font-size:22px;line-height:1 }
.homepage .hp-faq details[open] summary>span { transform:rotate(45deg) }
.homepage .hp-faq details p { color:var(--muted);font-size:13px;line-height:1.9;max-width:60ch;margin-top:14px;padding-right:25px }
.homepage .hp-closing { position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:51px 58px;display:flex;justify-content:space-between;align-items:center;gap:44px }
.homepage .hp-closing h2 { font-size:58px }
.homepage .hp-closing p { color:var(--muted);font-size:13px;margin-top:17px }
.homepage .hp-closing .hp-button { flex-shrink:0 }
.homepage .hp-footer { padding-block:42px 26px }
.homepage .hp-footer-top { display:flex;align-items:center;justify-content:space-between;gap:28px }
.homepage .hp-footer .hp-brand { font-size:22px }
.homepage .hp-footer nav { display:flex;gap:24px;flex-wrap:wrap;font-size:11px;color:var(--muted) }
.homepage .hp-footer-bottom { display:flex;justify-content:space-between;gap:25px;font-size:10px;color:var(--muted);margin-top:28px }
.homepage .hp-photo-credit { font-size:9px;color:var(--muted);margin-top:14px;opacity:.9 }
@media(min-width:1536px) {
.homepage .hp-hero { min-height:650px }
.homepage .hp-hero-visual { height:530px }
.homepage .hp-hero h1 { font-size:96px }
}
@media(max-width:1279px) {
.homepage .hp-wrap { width:calc(100% - 72px) }
.homepage .hp-desktop-nav { gap:17px;font-size:11px }
.homepage .hp-navigation { gap:24px }
.homepage .hp-nav-actions { gap:17px }
.homepage .hp-brand { font-size:23px }
.homepage .hp-hero { gap:26px;min-height:570px }
.homepage .hp-hero h1 { font-size:clamp(60px,6.7vw,84px) }
.homepage .hp-hero-visual { height:445px;margin-left:0 }
.homepage .hp-hero-photo { right:43px }
.homepage .hp-small-photo { width:150px;height:210px }
.homepage .hp-visual-plane { right:-2px }
.homepage .hp-hero-lead { font-size:15px }
.homepage .hp-how-layout,
.homepage .hp-faq { gap:55px }
.homepage .hp-how-intro h2 { font-size:60px }
.homepage .hp-plan h3 { font-size:22px }
.homepage .hp-promise-strip { font-size:11px }
.homepage .hp-flight-list { padding-inline:22px }
.homepage .hp-flight-detail { font-size:10px }
}
@media(max-width:1023px) {
.homepage .hp-navigation { height:72px }
.homepage .hp-desktop-nav,
.homepage .hp-nav-actions .hp-login { display:none }
.homepage .hp-nav-actions { margin-left:auto }
.homepage .hp-menu-toggle { display:flex;align-items:center;gap:12px;border:1px solid var(--line);color:var(--white);background:transparent;border-radius:var(--radius-sm);padding:10px 13px;font-size:12px;cursor:pointer }
.homepage .hp-menu-toggle>span { font-size:16px }
.homepage .hp-mobile-menu:not([hidden]) { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:24px 36px;border-top:1px solid var(--line);font-size:13px }
.homepage .hp-hero { grid-template-columns:1.2fr 1fr;gap:10px;min-height:516px;padding-top:36px }
.homepage .hp-hero h1 { font-size:clamp(50px,6.7vw,68px) }
.homepage .hp-eyebrow { font-size:10px;letter-spacing:0 }
.homepage .hp-hero-lead { font-size:14px;margin-top:23px;max-width:36ch }
.homepage .hp-hero-actions { gap:23px;margin-top:25px }
.homepage .hp-button { font-size:14px;min-height:54px;padding-inline:21px;gap:25px }
.homepage .hp-hero-actions .hp-text-link { font-size:12px;gap:11px }
.homepage .hp-hero-visual { height:375px }
.homepage .hp-hero-photo { right:20px;border-top-left-radius:80px }
.homepage .hp-small-photo { height:177px;width:128px;right:-5px;bottom:-4px;border-width:6px }
.homepage .hp-visual-plane { right:-3px;top:19px;width:61px }
.homepage .hp-hero-visual:before { width:120px;height:120px;right:-13px }
.homepage .hp-promise-strip { gap:13px;font-size:10px;padding-block:21px }
.homepage .hp-promise-strip>span { gap:7px }
.homepage .hp-section { padding-block:68px }
.homepage .hp-deals-layout { grid-template-columns:.7fr 1.5fr;gap:24px }
.homepage .hp-deal-photo { height:452px;min-height:0 }
.homepage .hp-deal-photo figcaption { left:23px;font-size:29px }
.homepage .hp-flight { min-height:113px }
.homepage .hp-flight-list { padding-inline:18px }
.homepage .hp-flight h3 { font-size:22px }
.homepage .hp-flight h3>span { font-size:10px }
.homepage .hp-fare { min-width:70px }
.homepage .hp-fare strong { font-size:39px }
.homepage .hp-fare small { font-size:23px }
.homepage .hp-flight-detail>span { padding-inline:2px }
.homepage .hp-how-layout { gap:45px }
.homepage .hp-how-intro h2 { font-size:51px }
.homepage .hp-steps h3 { font-size:18px }
.homepage .hp-steps p { font-size:12px }
.homepage .hp-steps li { grid-template-columns:35px 1fr;gap:16px }
.homepage .hp-plan { padding:26px }
.homepage .hp-plan h3 { font-size:20px }
.homepage .hp-plan ul { font-size:11px }
.homepage .hp-price { font-size:43px }
.homepage .hp-articles { padding-top:0 }
.homepage .hp-article-grid { gap:30px }
.homepage .hp-article-feature { padding:25px;min-height:330px }
.homepage .hp-article-feature h3 { font-size:40px }
.homepage .hp-article-list h3 { font-size:20px }
.homepage .hp-faq { padding-top:0;gap:45px }
.homepage .hp-faq summary { font-size:14px }
.homepage .hp-closing h2 { font-size:49px }
.homepage .hp-footer-top { align-items:flex-start }
.homepage .hp-footer nav { gap:15px;justify-content:flex-end;max-width:360px }
}
@media(max-width:767px) {
.homepage .hp-wrap { width:calc(100% - 40px) }
.homepage .hp-navigation { height:70px;gap:18px }
.homepage .hp-brand { font-size:23px;gap:8px }
.homepage .hp-brand img { width:30px;height:27px }
.homepage .hp-nav-actions { display:none }
.homepage .hp-menu-toggle { margin-left:auto;min-height:42px }
.homepage .hp-mobile-menu:not([hidden]) { grid-template-columns:1fr 1fr;gap:20px;padding:23px 20px }
.homepage .hp-hero { display:flex;flex-direction:column;align-items:stretch;padding-top:34px;padding-bottom:33px;min-height:0;gap:31px }
.homepage .hp-hero-copy { padding-bottom:0 }
.homepage .hp-eyebrow { font-size:10px;margin-bottom:18px;letter-spacing:.025em }
.homepage .hp-hero h1 { font-size:clamp(48px,12.9vw,83px);line-height:1.01;margin-left:-1px }
.homepage .hp-hero-lead { font-size:14px;line-height:1.8;margin-top:22px;max-width:40ch }
.homepage .hp-hero-actions { margin-top:23px;gap:25px }
.homepage .hp-hero-actions .hp-button { min-height:53px;font-size:14px;padding-inline:21px;gap:32px }
.homepage .hp-hero-actions .hp-text-link { font-size:12px;gap:14px }
.homepage .hp-hero-visual { height:250px;width:100%;max-width:500px;align-self:center;margin:0 0 1px }
.homepage .hp-hero-photo { inset:0 36px 0 0;border-radius:65px 10px 10px 10px }
.homepage .hp-hero-photo img { object-position:50% 57% }
.homepage .hp-small-photo { width:119px;height:158px;right:2px;bottom:-12px;border-width:6px;border-radius:15px;transform:rotate(6deg) }
.homepage .hp-visual-plane { right:9px;top:12px;width:54px }
.homepage .hp-hero-visual:before { width:100px;height:100px;right:0;top:0 }
.homepage .hp-promise-strip { display:grid;grid-template-columns:1fr;gap:10px;padding:20px 0;font-size:11px;line-height:1.5 }
.homepage .hp-promise-strip>span { gap:11px }
.homepage .hp-tick { font-size:15px }
.homepage .hp-section { padding-block:57px }
.homepage .hp-section h2,
.homepage .hp-how-intro h2,
.homepage .hp-closing h2 { font-size:44px;line-height:1.04 }
.homepage .hp-section-title { display:block }
.homepage .hp-section-title>.hp-text-link { margin-top:19px;margin-bottom:0;font-size:12px;gap:16px }
.homepage .hp-section-intro { font-size:13px;line-height:1.8;margin-top:18px }
.homepage .hp-snapshot { font-size:10px;line-height:1.7;margin-top:12px }
.homepage .hp-deals-layout { display:flex;flex-direction:column;gap:22px;margin-top:23px }
.homepage .hp-deal-photo { height:213px;min-height:0;order:2 }
.homepage .hp-deal-photo img { object-position:50% 45% }
.homepage .hp-deal-photo figcaption { font-size:31px;bottom:24px;left:24px;max-width:11ch;right:140px }
.homepage .hp-flight-list { padding-inline:17px }
.homepage .hp-flight { min-height:121px;padding-block:17px;gap:12px }
.homepage .hp-flight h3 { font-size:22px;line-height:1.4 }
.homepage .hp-flight h3>span { font-size:10px;margin-left:5px }
.homepage .hp-route { font-size:10px }
.homepage .hp-flight-detail { font-size:9px;margin-top:5px }
.homepage .hp-fare { min-width:66px }
.homepage .hp-fare strong { font-size:39px }
.homepage .hp-fare small { font-size:22px }
.homepage .hp-fare>span { font-size:8px }
.homepage .hp-fineprint { font-size:10px;line-height:1.85;margin-top:17px }
.homepage .hp-how-section { padding-block:52px }
.homepage .hp-how-layout { display:block }
.homepage .hp-how-intro>p { font-size:13px;margin-top:19px }
.homepage .hp-how-intro>.hp-text-link { font-size:12px;margin-top:21px }
.homepage .hp-steps { margin-top:35px }
.homepage .hp-steps li { grid-template-columns:36px 1fr;gap:17px;padding-bottom:25px }
.homepage .hp-steps li+li { padding-top:25px }
.homepage .hp-step-number { font-size:32px }
.homepage .hp-steps h3 { font-size:19px }
.homepage .hp-steps p { font-size:12px }
.homepage .hp-example { font-size:10px;margin-top:12px }
.homepage .hp-plans { grid-template-columns:1fr;gap:19px;margin-top:27px }
.homepage .hp-plan { padding:26px 25px }
.homepage .hp-plan-name { font-size:13px }
.homepage .hp-price { font-size:48px }
.homepage .hp-plan h3 { font-size:23px;margin-top:29px }
.homepage .hp-plan ul { font-size:12px;margin-top:22px;margin-bottom:22px }
.homepage .hp-plan li { margin-bottom:10px }
.homepage .hp-plan .hp-button { font-size:13px;min-height:49px }
.homepage .hp-articles { padding-top:0 }
.homepage .hp-article-grid { grid-template-columns:1fr;gap:29px;margin-top:25px }
.homepage .hp-article-feature { min-height:327px;padding:27px }
.homepage .hp-article-feature h3 { font-size:44px }
.homepage .hp-article-bottom { font-size:10px;margin-top:25px }
.homepage .hp-article-list>a { padding-bottom:24px }
.homepage .hp-article-list>a+a { padding-top:23px }
.homepage .hp-article-list h3 { font-size:21px;max-width:27ch }
.homepage .hp-article-list>a:last-child { padding-bottom:0 }
.homepage .hp-faq { display:block;padding-top:0 }
.homepage .hp-faq-intro h2 br { display:none }
.homepage .hp-faq-intro>.hp-text-link { font-size:12px;margin-top:18px }
.homepage .hp-faq-list { margin-top:28px }
.homepage .hp-faq details { padding-block:20px }
.homepage .hp-faq summary { font-size:13px;line-height:1.65;gap:18px }
.homepage .hp-faq details p { font-size:12px;line-height:1.9;padding-right:14px }
.homepage .hp-closing { padding-block:39px 43px;display:block }
.homepage .hp-closing h2 { font-size:42px }
.homepage .hp-closing p { font-size:12px;line-height:1.8;max-width:33ch;margin-top:18px }
.homepage .hp-closing>.hp-button { margin-top:26px;font-size:14px }
.homepage .hp-footer { padding-block:34px 25px }
.homepage .hp-footer-top { display:block }
.homepage .hp-footer nav { font-size:10px;justify-content:flex-start;gap:15px;margin-top:25px;max-width:100% }
.homepage .hp-footer-bottom { display:block;font-size:9px;line-height:1.9;margin-top:23px }
.homepage .hp-footer-bottom>p+p { margin-top:12px }
.homepage .hp-photo-credit { font-size:8px;line-height:1.9;margin-top:16px }
}
@media(max-width:359px) {
.homepage .hp-wrap { width:calc(100% - 32px) }
.homepage .hp-brand { font-size:21px }
.homepage .hp-menu-toggle { font-size:11px;padding-inline:10px;gap:8px }
.homepage .hp-hero h1 { font-size:12.7vw }
.homepage .hp-hero-actions { gap:20px }
.homepage .hp-hero-actions .hp-button { gap:24px;padding-inline:17px }
.homepage .hp-hero-actions .hp-text-link { font-size:11px;gap:8px }
.homepage .hp-flight h3>span { display:block;margin-left:0 }
.homepage .hp-flight-detail { max-width:160px;font-size:8px }
.homepage .hp-plan h3 { font-size:21px }
.homepage .hp-plan { padding:24px 22px }
}
@media(prefers-reduced-motion:reduce) {
body.homepage { scroll-behavior:auto }
.homepage :where(.hp-shell) *,
.homepage :where(.hp-shell) *:before,
.homepage :where(.hp-shell) *:after { animation:none!important;transition:none!important;scroll-behavior:auto!important }
}
.homepage .hp-button>span,
.homepage .hp-text-link>span,
.homepage .hp-article-more>span,
.homepage .hp-article-bottom>span { font-family:Arial,sans-serif;font-variant-emoji:text }
/* Revision: clear Dutch headings, without decorative slogans. */
.homepage #deals-title { max-width:19ch }
.homepage .hp-faq-intro h2 { font-size:52px }
.homepage .hp-article-feature h3 { max-width:16ch }
.homepage .hp-article-list h3 { max-width:29ch }
.homepage .hp-article-feature { justify-content:flex-start }
.homepage .hp-article-feature .hp-article-bottom { margin-top:auto;padding-top:30px }
@media(max-width:1023px) {
.homepage .hp-faq-intro h2 { font-size:44px }
.homepage .hp-hero h1 { font-size:6.45vw }
.homepage .hp-plan h3 { font-size:19px }
}
@media(max-width:767px) {
.homepage .hp-faq-intro h2 { font-size:44px }
.homepage .hp-faq-intro h2 br { display:initial }
.homepage .hp-hero h1 { font-size:12.3vw }
.homepage .hp-plan h3 { font-size:22px }
.homepage .hp-how-intro>p { max-width:38ch }
.homepage .hp-article-feature { min-height:285px }
}
/* European photography: preserve the coastal village and the street detail at both crops. */
.homepage .hp-hero-photo img { object-position:48% 50% }
.homepage .hp-small-photo img { object-position:50% 46% }
@media(max-width:767px) {
.homepage .hp-hero-photo img { object-position:49% 53% }
.homepage .hp-small-photo img { object-position:51% 43% }
}
.homepage .hp-deal-photo:after { display:none }
.homepage .hp-deal-photo img { object-position:50% 60% }
@media(max-width:767px) {
.homepage .hp-deal-photo img { object-position:50% 55% }
}


/* Integration overrides: content stays scoped; shared overlay and ads retain their own theme. */
.homepage :where(.hp-shell) :is(h1,h2,h3) { color: inherit; font-family: var(--hp-font-body); font-weight: 700; }
.homepage :where(.hp-shell) a:hover { text-decoration: none; }
.homepage .hp-hero h1 { font-family: var(--hp-font-display); text-transform: uppercase; }
.homepage .hp-section h2, .homepage .hp-how-intro h2, .homepage .hp-closing h2, .homepage .hp-article-feature h3 { font-family: var(--hp-font-display); }
.homepage .hp-flight-main { min-width: 0; }
.homepage .hp-flight { color: var(--white); transition: background .2s; }
.homepage .hp-flight:hover { background: var(--surface-raised); }
.homepage .hp-flight:focus-visible { outline-offset: -3px; }
.homepage .hp-flight-list { grid-template-rows: none; grid-auto-rows: minmax(121px, auto); }
.homepage .hp-flight h3 { overflow-wrap: anywhere; }
.homepage .hp-fare strong { font-size: 40px; }
.homepage .hp-flight-link { margin-top: 6px; color: var(--yellow); font-size: 10px; letter-spacing: 0; text-transform: none; }
.homepage .hp-empty-deals { padding: 32px 0; align-self: center; }
.homepage .hp-empty-deals h3 { font-size: 24px; }
.homepage .hp-empty-deals p { margin: 16px 0 24px; color: var(--muted); font-size: 14px; }
.homepage .hp-logout { border: 0; background: none; color: inherit; padding: 0; cursor: pointer; }
.homepage .hp-footer-top { align-items: flex-start; }
.homepage .hp-footer nav { max-width: 690px; justify-content: flex-end; gap: 14px 24px; }
.homepage .hp-social-links { display: flex; flex-wrap: wrap; gap: 14px; }
.homepage .vo { color: var(--color-body); font: 400 16px/1.6 var(--font-body); color-scheme: light; }
.homepage .tv-banner { color: var(--muted); }
.homepage .tv-banner .affiliate-label, .homepage .tv-banner .affiliate-disclosure { color: var(--muted); }
.homepage .hp-site-header [hidden] { display: none; }
@media (max-width: 767px) {
 .homepage .hp-fare strong { font-size: 36px; }
 .homepage .hp-footer nav { justify-content: flex-start; }
 .homepage .hp-flight-detail { font-size: 10px; }
 .homepage .hp-flight { gap: 10px; }
}
@media (prefers-reduced-motion: reduce) {
 .homepage *, .homepage *::before, .homepage *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Admin-edited headlines must remain readable even when longer than the approved default. */
.homepage .hp-hero h1.hp-custom-title { white-space: normal; overflow-wrap: anywhere; }

/* German labels can wrap while retaining the existing homepage layout. */
.homepage:lang(de) .hp-hero h1 { white-space:normal;overflow-wrap:break-word }
.homepage .hp-hero-actions { flex-wrap:wrap;row-gap:16px }
.homepage:lang(de) .hp-text-link,
.homepage:lang(de) .hp-button { white-space:normal }
.homepage .hp-fare { flex-shrink: 0; width: max-content; }

/* Scroll motion is progressive enhancement: no hidden content and no scroll interception. */
.homepage.hp-motion-enabled .hp-hero-photo { transform:translate3d(0,calc(var(--hp-flight-progress,0) * 48px),0) }
.homepage.hp-motion-enabled .hp-small-photo { transform:translate3d(0,calc(var(--hp-flight-progress,0) * -44px),0) rotate(6deg) }
.homepage.hp-motion-enabled .hp-visual-plane { transform:translate3d(calc(var(--hp-flight-progress,0) * -168px),calc(var(--hp-flight-progress,0) * 96px),0) rotate(calc(12deg - var(--hp-flight-progress,0) * 48deg)) }
.homepage.hp-motion-enabled .hp-deal-photo { transform:translate3d(0,calc(var(--hp-photo-progress,0) * -56px),0) }
.homepage .hp-is-revealing { animation:hp-arrive .65s cubic-bezier(.2,.65,.3,1) both }
@keyframes hp-arrive { from { opacity:.45;translate:0 20px } to { opacity:1;translate:0 0 } }
@media(max-width:767px) {
 .homepage.hp-motion-enabled .hp-hero-photo { transform:translate3d(0,calc(var(--hp-flight-progress,0) * 18px),0) }
 .homepage.hp-motion-enabled .hp-small-photo { transform:translate3d(0,calc(var(--hp-flight-progress,0) * -20px),0) rotate(6deg) }
 .homepage.hp-motion-enabled .hp-visual-plane { transform:translate3d(calc(var(--hp-flight-progress,0) * -80px),calc(var(--hp-flight-progress,0) * 56px),0) rotate(calc(12deg - var(--hp-flight-progress,0) * 38deg)) }
 .homepage.hp-motion-enabled .hp-deal-photo { transform:translate3d(0,calc(var(--hp-photo-progress,0) * -28px),0) }
}
@media(prefers-reduced-motion:reduce) {
 .homepage.hp-motion-enabled .hp-hero-photo,
 .homepage.hp-motion-enabled .hp-deal-photo { transform:none }
 .homepage.hp-motion-enabled .hp-small-photo { transform:rotate(6deg) }
 .homepage.hp-motion-enabled .hp-visual-plane { transform:rotate(12deg) }
 .homepage .hp-is-revealing { opacity:1;translate:none }
}

/* Self-hosted explainer: reserve the video frame before any media is downloaded. */
.homepage .hp-explainer { display:grid;grid-template-columns:.65fr 1.35fr;gap:56px;align-items:center;margin-top:64px;padding-top:56px;border-top:1px solid var(--line) }
.homepage .hp-video-eyebrow { color:var(--yellow);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:15px }
.homepage .hp-explainer-copy h3 { font:700 clamp(32px,3.5vw,46px)/1.06 var(--hp-font-display);letter-spacing:-.013em }
.homepage .hp-explainer-copy>p:last-child { color:var(--muted);font-size:13px;margin-top:20px;max-width:38ch }
.homepage .hp-explainer-player { min-width:0 }
.homepage .hp-explainer-player video { display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--navy);border:1px solid var(--line);border-radius:var(--radius) }
.homepage .hp-explainer-player video:focus-visible { outline:3px solid var(--yellow);outline-offset:5px }
.homepage .hp-explainer-player figcaption { color:var(--muted);font-size:10px;line-height:1.8;margin-top:12px }
@media(max-width:1023px) { .homepage .hp-explainer { gap:32px;grid-template-columns:.75fr 1.25fr } }
@media(max-width:767px) {
 .homepage .hp-explainer { grid-template-columns:1fr;gap:26px;margin-top:38px;padding-top:34px }
 .homepage .hp-explainer-copy h3 { font-size:36px }
 .homepage .hp-explainer-copy h3 br { display:none }
 .homepage .hp-explainer-copy>p:last-child { margin-top:15px;max-width:44ch }
}
.homepage .hp-video-transcript { color:var(--muted);font-size:12px;margin-top:14px }
.homepage .hp-video-transcript summary { display:list-item;cursor:pointer;color:var(--white);width:fit-content }
.homepage .hp-video-transcript p { margin-top:14px;line-height:1.9 }
/* Keep native caption controls/positioning; readable even in the small mobile frame. */
.homepage .hp-explainer-player video::cue { font-size:clamp(14px,2.2vw,28px);line-height:1.45 }
