/* Consistent readable typography for the Village, Mobility and Media interfaces. */
@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;font-size:16px;line-height:1.55;font-weight:400}
body button,body input,body select,body textarea{font-family:FlyInter,Arial,sans-serif;font-size:14px;line-height:1.45;font-weight:500}
body button,body .button{font-weight:600}
body label{font-family:inherit;font-size:14px;font-weight:600;line-height:1.5}
body h1,body h2,body h3{font-family:inherit;font-weight:700;letter-spacing:-.025em;line-height:1.2;text-wrap:balance}
body .brand b{font-size:20px;font-weight:700;letter-spacing:.035em;line-height:1.3}
body .brand small{font-size:12px;font-weight:400;letter-spacing:0;line-height:1.45}
body .brand{gap:12px;min-width:0;flex-shrink:0}
body .brand img{width:46px;height:46px;object-fit:contain;border-radius:0}
body header nav button,body header nav a{font-family:inherit;font-size:14px;font-weight:600;white-space:nowrap}
body .eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em}
body .meta,body .village-card p,body .media-card p{font-size:14px;line-height:1.65}
body .hero{height:auto;min-height:360px}
body .hero h1{font-size:clamp(30px,3.4vw,50px);line-height:1.14}
body .hero-dots{position:relative!important;left:auto;bottom:auto;grid-column:1/-1;align-self:end;justify-content:flex-start;margin:14px 0 0;gap:4px}
body .hero-dots button{width:28px;min-width:28px;height:28px;min-height:28px;padding:8px;background:transparent;border:0;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,body .hero-dots button.active{width:28px;background:transparent}
body .hero-dots button.is-active::after,body .hero-dots button.active::after{background:#f4624e;width:18px;border-radius:5px}
body .fly-language-header{display:flex;flex-wrap:wrap;height:auto;min-height:76px;gap:12px;padding:16px 3vw;align-items:center}
body .fly-language-header nav{margin-left:auto;min-width:0;gap:8px}
body .fly-language-header nav a:not(:last-child){display:inline-flex}
body .fly-language-header nav a{align-items:center;padding:8px}
body .hero{max-height:none}
@media(max-width:1180px){body .fly-language-header nav{display:flex;order:3;width:100%;overflow-x:auto;margin:0;gap:8px}body .fly-language-header nav>*{flex-shrink:0;min-height:44px}body .fly-language-header>.header-action,body .fly-language-header>.primary{margin-left:auto}}
@media(max-width:600px){body .brand b{font-size:16px}body .brand small{display:none}body .brand img{width:38px;height:38px}body .fly-language-header{padding:12px 14px;gap:8px}body .hero{padding:28px 22px}body .hero h1{font-size:32px}body .fly-language-header>.primary,body .fly-language-header>.header-action{order:4;font-size:14px;width:auto;min-width:0}body .header-action:after{display:none}}
