@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-ExtraLight.woff2')
    format('woff2');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-ExtraLightItalic.woff2')
    format('woff2');
  font-weight: 200;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-Light.woff2')
    format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-LightItalic.woff2')
    format('woff2');
  font-weight: 300;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-Regular.woff2')
    format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-RegularItalic.woff2')
    format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-Medium.woff2')
    format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-MediumItalic.woff2')
    format('woff2');
  font-weight: 500;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-SemiBold.woff2')
    format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-SemiBoldItalic.woff2')
    format('woff2');
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-Bold.woff2')
    format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-BoldItalic.woff2')
    format('woff2');
  font-weight: 700;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-ExtraBold.woff2')
    format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Atkinson Hyperlegible Mono';
  src: url('/fonts/atkinson-hyperlegible-mono/AtkinsonHyperlegibleMono-ExtraBoldItalic.woff2')
    format('woff2');
  font-weight: 800;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'IBM Conv';
  src: url('/fonts/web437-ibm-conv.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-mono:
    monospace, 'Atkinson Hyperlegible Mono', ui-monospace, SFMono-Regular,
    Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
  --page-max: 100%;
  --page-gutter: clamp(1rem, 4vw, 2rem);
  --grid-gap: clamp(1rem, 2vw, 1.5rem);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  background-color: #187f36;
  background-color: lightblue;
  background-color: #afeeee;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%2300ced1' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
}

img,
picture,
svg:not(.filter),
canvas {
  max-inline-size: 100%;
  block-size: auto;
  vertical-align: middle;
  font-style: italic;
  background-repeat: no-repeat;
  background-size: cover;
  shape-margin: 0.75rem;
}

body {
  background-color: #187f36;
  background-color: lightblue;
  background-color: #afeeee;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%2300ced1' fill-opacity='0.4' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");
  filter: url('#distort');
  font-family: var(--font-mono);
  font-family: 'Infini';
  line-height: 1.5;
  color: black;
  font-size: 1.75em;
  margin: 0;
  padding: 0;
}

.page-grid {
  display: grid;
  grid-template-columns:
    [full-start] minmax(var(--page-gutter), 1fr)
    [content-start] repeat(12, minmax(0, calc(var(--page-max) / 12)))
    [content-end]
    minmax(var(--page-gutter), 1fr)
    [full-end];
  column-gap: var(--grid-gap);
}

.page-grid > .full {
  grid-column: full-start / full-end;
}

.page-grid > .narrow {
  grid-column: 4 / span 6;
}

.page-grid > .wide {
  grid-column: 2 / span 10;
}

.page-grid > * {
  /* outline: 1px solid color-mix(in srgb, currentColor 25%, transparent); */
}

code,
pre,
kbd,
samp {
  font-family: var(--font-mono);
}

.home-arrow {
  position: absolute;
  font-size: 10em;
  line-height: 0.5;
  color: rgba(0, 0, 0, 0.5);
}

.home-arrow--down {
  /* ⤵ */
  margin-block-start: -20px;
}

.home-arrow--right {
  /* ↝ */
  font-size: 15em;
  margin-block-start: -20px;
}

.home-arrow--right2 {
  /* ➬ */
  font-size: 10em;
  margin-block-start: -10px;
  margin-inline-start: 30px;
}

.home-menu {
  list-style-type: '✴';
  list-style-type: '✳';
  list-style-position: inside;
}
