/* The apex site's whole palette. Nothing below names a colour of its own. */
:root {
  --enamel: #F5F2EA;
  --ink: #26221C;
  --red: #D42B26;
}

* { box-sizing: border-box; }

html {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  padding: 3rem 1.5rem 4rem;
  background: var(--enamel);
  color: var(--ink);
  font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 17px;
  line-height: 1.6;
}

.sheet {
  max-width: 40em;
  margin: 0 auto;
}

.mark {
  display: block;
  width: 96px;
  height: auto;
}

h1 {
  font-size: 1.9rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  margin: 1.5rem 0 0.25rem;
}

h2 {
  font-size: 1.1rem;
  font-weight: 700;
  margin: 2.25rem 0 0.5rem;
}

p { margin: 0 0 1rem; }

ul {
  margin: 0 0 1rem;
  padding-left: 1.25em;
}

li { margin-bottom: 0.35rem; }

.lede {
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 2rem;
}

.dateline,
.note {
  font-size: 0.85rem;
  opacity: 0.75;
}

a { color: var(--red); }

a:focus-visible,
.press:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 3px;
}

/* One press style. Painted red enamel; the inert form is printed, not lit. */
.press {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  margin: 0 0.5rem 0.75rem 0;
  border: 2px solid var(--red);
  border-radius: 10px;
  background: var(--red);
  color: var(--enamel);
  font: inherit;
  font-weight: 700;
  text-decoration: none;
}

.press[aria-disabled="true"] {
  background: var(--enamel);
  color: var(--red);
  cursor: default;
}

footer {
  margin-top: 3rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--ink);
  font-size: 0.9rem;
}

/* The omiyage door's two states. Before the script runs, neither is printed. */
.when-ready,
.when-no-token { display: none; }

body[data-state="ready"] .when-ready { display: block; }
body[data-state="no-token"] .when-no-token { display: block; }
