:root {
    --color-primary: #034732;
    --color-secondary: #008148;
    --color-accent: #c6c013;
    --color-warning: #ef8a17;
    --color-danger: #ef2917;
    --color-white: #f9f9f9;
    --color-black: #1a1a1a;
}

* {
    box-sizing: inherit;
    accent-color: var(--color-warning);
}

html {
    box-sizing: border-box;
    margin: auto;
    font-size: 1.25rem;
    background-color: var(--color-black);
    color: var(--color-white)
    line-height: 1.4;
    scroll-behavior: smooth;
    text-align: center;
    font-family: sans-serif;
    &::selection {
        background-color: var(--color-accent);
    }
}

body {
    container-type: inline-size;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    > * {
      flex: 0 1 100%;
    }
}

/** page header **/
header {
    margin: 0;
    padding: 0.25rem 0.5rem;
    width: 100%;
    height: auto;
    min-height: 5vw;
    background-color: var(--color-black);
    color: var(--color-white)
    display: flex;
    align-items: center;
    justify-content: center;
}

/** page footer **/
footer {
    margin: 0;
    padding: 0.25rem 0.5rem;
    width: 100%;
    height: auto;
    background-color: var(--color-black);
    color: var(--color-white);
}

/** page main **/
main { 
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: auto;
  min-height: 33vh;
  padding-inline: 2rem;
  margin-inline: auto;
  font-size: clamp(0.9rem, 1.2vw, 1.5rem);
  background-color: var(--color-white);
  color: var(--color-black)
}
@container (min-width: 70ch) {
    main {
        padding-inline: 0;
        width: 70ch;
    }
}

/** link **/
a:link {
    text-decoration: none;
    color: var(--color-accent);
}
a:hover {
    text-decoration: underline;
    color: var(--color-warning);
}

/** img **/
img {
  aspect-ratio: 16:9;
}