:root {
  color-scheme: dark;
  --navy: #122941;
  --ink: #142c48;
  --cream: #fff7dc;
  --gold: #ffcf65;
  --pale-blue: #c5daf6;
  --line: #89adc4;
  font: 100%/1.7 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--navy);
  color: var(--cream);
}
* { box-sizing: border-box; }
body { margin: 0; }
a { color: inherit; text-underline-offset: .22em; }
a:hover { text-decoration-thickness: 2px; }
a:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid var(--gold); outline-offset: 5px; }
.wrap { width: min(100% - 3rem, 69rem); margin-inline: auto; }
.header { display: flex; align-items: center; flex-wrap: wrap; gap: 1.5rem; padding-block: 1.75rem; border-block-end: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: .85rem; font-size: 1.3rem; font-weight: 750; text-decoration: none; }
.mark { display: grid; grid-template-columns: repeat(3, 7px); grid-template-rows: repeat(2, 7px); gap: 3px; flex-shrink: 0; }
.mark i { background: var(--gold); }
.mark i:nth-child(2), .mark i:nth-child(6) { background: var(--pale-blue); }
nav { display: flex; flex-wrap: wrap; gap: 1.4rem; margin-inline-start: auto; }
nav a, .footer a { padding-block: .35rem; }
nav a[aria-current="page"] { color: var(--gold); text-decoration-thickness: 2px; }
.language { display: flex; flex-direction: column; gap: .2rem; font-size: .75rem; color: var(--pale-blue); }
select { max-width: 100%; font: inherit; font-size: .9rem; color: var(--cream); background: var(--ink); border: 1px solid var(--line); border-radius: 3px; padding: .4rem .65rem; min-height: 44px; }
.skip { position: absolute; inset-inline-start: 1rem; inset-block-start: -8rem; z-index: 2; padding: .7rem 1rem; color: var(--ink); background: var(--gold); }
.skip:focus { inset-block-start: 1rem; }
.draft { margin-block: 1.5rem 0; padding: 1rem 1.2rem; border-inline-start: 4px solid var(--gold); background: #1b3853; }
.draft p { margin: 0; font-size: .95rem; }
.draft p + p { margin-block-start: .25rem; }
main { padding-block: 3.5rem 1rem; }
h1, h2, p { margin-block-start: 0; }
h1 { max-width: 20ch; font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.18; letter-spacing: -.025em; margin-block-end: 1.2rem; overflow-wrap: anywhere; }
h2 { font-size: 1.35rem; line-height: 1.4; margin-block-end: .7rem; }
p { max-width: 72ch; }
.intro { color: var(--pale-blue); max-width: 62ch; font-size: 1.1rem; margin-block-end: 2rem; }
.home { max-width: 53rem; padding-block: .5rem 1.5rem; }
.home h1 { max-width: 21ch; }
.choices { display: flex; flex-wrap: wrap; gap: .9rem; margin-block: 2rem; }
.choices a { padding: .7rem 1.2rem; border: 2px solid var(--gold); border-radius: 3px; text-decoration: none; font-weight: 650; }
.choices a:first-child { color: var(--ink); background: var(--gold); }
.paper { color-scheme: light; background: var(--cream); color: var(--ink); padding: clamp(1.3rem, 4vw, 3rem); border-radius: 3px; max-width: 58rem; }
.policy p { margin-block-end: 1.7rem; font-size: 1.06rem; }
.policy p:last-child { margin-block-end: 0; }
.faq-languages { display: flex; flex-wrap: wrap; gap: .7rem; margin-block-end: 1.3rem; }
.faq-languages a { display: inline-flex; align-items: center; min-height: 44px; padding: .35rem .8rem; border: 1px solid var(--line); border-radius: 3px; }
.faq-languages a[aria-current="true"] { background: var(--gold); color: var(--ink); border-color: var(--gold); }
details { border-block-end: 1px solid var(--line); padding-block: 1.05rem; }
details:first-child { padding-block-start: 0; }
details:last-child { border-block-end: 0; padding-block-end: 0; }
summary { cursor: pointer; font-size: 1.08rem; font-weight: 700; min-height: 44px; }
details p { margin-block: .8rem 0; }
.paper a:focus-visible, .paper summary:focus-visible { outline-color: var(--ink); }
.contact { max-width: 58rem; border-block-start: 1px solid var(--line); margin-block: 2.5rem 0; padding-block: 1.75rem; }
.contact p { color: var(--pale-blue); }
.email { display: inline-block; color: var(--gold); font-size: 1.1rem; overflow-wrap: anywhere; min-height: 44px; }
.footer { display: flex; align-items: center; flex-wrap: wrap; gap: 1.25rem; border-block-start: 1px solid var(--line); padding-block: 1.5rem 2rem; color: var(--pale-blue); font-size: .9rem; }
.footer span { margin-inline-end: auto; }
@media (max-width: 45rem) {
  .wrap { width: min(100% - 2rem, 69rem); }
  .header { gap: 1rem; padding-block: 1.2rem; }
  .brand { font-size: 1.15rem; }
  .language { margin-inline-start: auto; max-width: 48%; }
  nav { order: 3; width: 100%; margin-inline-start: 0; gap: 1rem; }
  main { padding-block-start: 2.5rem; }
  .choices { flex-direction: column; align-items: flex-start; }
}
