/* Shared foundation for every module, including authentication and offline pages. */
@font-face{font-family:FlyInter;src:url('/fonts/inter-variable.ttf') format('truetype');font-weight:100 900;font-style:normal;font-display:swap}
html body{font-family:FlyInter,Arial,sans-serif;line-height:1.55}
body :where(button,input,select,textarea){font-family:FlyInter,Arial,sans-serif}
body :where(h1,h2,h3,h4){font-family:FlyInter,Arial,sans-serif;line-height:1.2;letter-spacing:-.02em}
body :where(button,.button){font-weight:600}
body :where(input,select,textarea){font-size:max(1rem,16px);line-height:1.45}
body .fly-language-header{flex-wrap:wrap;height:auto;min-height:64px;gap:12px;overflow:visible}
body .fly-language-header>.fly-language,body [data-fly-language-toolbar]>.fly-language{margin:0;display:flex;align-items:center;gap:8px;max-width:170px;min-height:44px;flex:0 0 auto;padding:0 10px;border:1px solid #c4d2e4;border-radius:10px;background:#fff;color:#153657}
body .fly-language select{font-family:FlyInter,Arial,sans-serif;font-size:14px;font-weight:500;min-height:42px;max-width:125px;width:auto;border:0;background:transparent;color:inherit}
body [data-fly-language-toolbar]{display:flex;justify-content:flex-end;align-items:center;padding:8px 16px;gap:8px;background:transparent;border:0}
body .fly-language:focus-within{outline:2px solid #2868b2;outline-offset:3px}
body .fly-language-header>.fly-language{margin-inline-start:auto}
body .fly-language-header>nav{display:flex}
body .fly-language-header>nav{position:static;inset:auto;transform:none}
body .hero{height:auto;max-height:none}
body .fly-language-header>nav a:not([hidden]){display:inline-flex;align-items:center;min-height:44px}
body .fly-language-header>nav button:not([hidden]){min-height:44px}
body [data-fly-language-toolbar]{box-sizing:border-box;max-width:100%;width:100%;grid-column:1/-1}
body .fly-language select{box-sizing:border-box}
body .form-wrap>.auth-language.fly-language{margin:0 0 16px auto;max-width:160px;min-height:36px;padding:0 8px;border-radius:10px}
body .form-wrap>.auth-language.fly-language select{min-height:36px;font-size:13px}
body #account-dialog .fly-language{margin:12px 0 18px;width:100%;max-width:100%;box-sizing:border-box;justify-content:space-between;padding:8px 12px}
body #account-dialog .fly-language>span.sr-only{position:static;width:auto;height:auto;margin:0;overflow:visible;clip-path:none;white-space:normal}
body .life-topbar>.fly-language{margin:0;max-width:160px;padding:0 8px;min-height:40px}
body .hero-dots button{min-width:28px;min-height:28px}
body .hero-dots{position:relative!important;left:auto;bottom:auto;grid-column:1/-1;display:flex;justify-content:flex-start;gap:4px;margin-top:14px}
body .hero-dots button{width:28px;height:28px;padding:8px;border:0;background:transparent;box-shadow:none;font-size:0;display:grid;place-items:center}
body .hero-dots button::after{content:"";width:7px;height:7px;border-radius:50%;background:#cbd9e9}
body .hero-dots button:is(.active,.is-active){width:28px;background:transparent}
body .hero-dots button:is(.active,.is-active)::after{width:18px;border-radius:5px;background:#f4624e}
body .fly-language>span:not(.fly-language-icon){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:800px){body .fly-language-header{max-width:100%;height:auto;flex-wrap:wrap}body .fly-language-header>nav{max-width:100%;min-width:0;overflow-x:auto;flex-wrap:nowrap;order:5;flex-basis:100%}body .fly-language-header>nav>*{flex-shrink:0}body .fly-language-header>.fly-language{max-width:160px}body .fly-language-header :where(.brand,.logo){min-width:0;max-width:100%}}
