@font-face {
  font-family: Oswald;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("oswald-regular.woff2") format("woff2");
}

:root {
  color-scheme: dark;
  --orange: #f18700;
  --ink: #071922;
  --white: #f6f7f5;
  --muted: #bdc8cc;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--white);
  background: #03151d;
}

* { box-sizing: border-box; }
body {
  margin: 0;
  min-width: 280px;
  min-height: 100vh;
  min-height: 100svh;
  background: #03151d url("topography.webp") center top / cover no-repeat;
}
a { color: inherit; text-decoration: none; -webkit-tap-highlight-color: transparent; }
a:focus-visible { outline: 3px solid var(--orange); outline-offset: 5px; }
svg { display: block; width: 24px; height: 24px; flex-shrink: 0; }
.page {
  width: min(100% - 40px, 416px);
  margin-inline: auto;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  padding-block: max(20px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-bottom));
}
.language-switcher { display: flex; justify-content: center; gap: 6px; }
.language-switcher a {
  display: grid;
  place-items: center;
  min-width: 52px;
  min-height: 44px;
  border-bottom: 2px solid transparent;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--muted);
}
.language-switcher a[aria-current="page"] { color: var(--orange); border-color: var(--orange); }
.language-switcher a:hover { color: var(--white); border-color: currentColor; }
main { padding-block: 34px 24px; margin-block: auto; }
.brand { text-align: center; }
.brand-link { display: inline-block; }
.brand img { display: block; width: 228px; max-width: 100%; height: auto; }
.region {
  margin: 18px 0 8px;
  color: var(--orange);
  font-size: 11px;
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
}
h1 {
  margin: 0;
  font: 400 clamp(20px, 5.5vw, 24px) / 1.4 Oswald, "Arial Narrow", sans-serif;
}
.main-links { display: grid; gap: 12px; margin-top: 30px; }
.main-link {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 60px;
  padding: 14px 18px;
  background: var(--white);
  color: var(--ink);
  border: 1px solid transparent;
  border-radius: 2px;
  transition: background-color .15s ease, border-color .15s ease;
}
.main-link span { flex: 1; font: 400 20px / 1.35 Oswald, "Arial Narrow", sans-serif; }
.main-link .arrow { width: 18px; height: 18px; }
.main-link.primary { background: var(--orange); }
.main-link:hover { background: #fff; border-color: var(--orange); }
.main-link.primary:hover { background: #ff9b1f; border-color: #ff9b1f; }
.social-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 23px; }
.social-links a { display: grid; place-items: center; width: 44px; min-height: 44px; }
.social-links a:hover { color: var(--orange); }
.social-links svg { width: 23px; height: 23px; }
.review { margin: 14px 0 0; text-align: center; }
.review a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--muted);
}
.review svg { width: 16px; height: 16px; color: var(--orange); }
.review a:hover { color: var(--white); text-decoration: underline; text-underline-offset: 4px; }
footer { padding-top: 12px; border-top: 1px solid #6e8c9940; }
.legal-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 24px; }
.legal-links a { display: flex; align-items: center; min-height: 44px; font-size: 12px; line-height: 1.5; color: var(--muted); }
.legal-links a:hover { color: var(--white); text-decoration: underline; text-underline-offset: 4px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 12px; top: 12px; z-index: 2; padding: 12px; color: var(--ink); background: var(--orange); transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
@media (max-height: 720px) { main { padding-top: 24px; } .brand img { width: 194px; } .main-links { margin-top: 24px; } }
@media (max-width: 350px) { .page { width: calc(100% - 32px); } .main-link { gap: 12px; padding-inline: 14px; } .social-links { gap: 8px; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition: none !important; } }
