/****** reset ******/

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

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Remove default margin in favour of better control in authored CSS */
body, h1, h2, h3, h4, p,
figure, blockquote, dl, dd {
  margin-block-end: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role='list'],
ol[role='list'] {
  list-style: none;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  line-height: 1.5;
}

/* Set shorter line heights on headings and interactive elements */
h1, h2, h3, h4,
button, input, label {
  line-height: 1.1;
}

/* Balance text wrapping on headings */
h1, h2,
h3, h4 {
  text-wrap: balance;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
  color: currentColor;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

/* Inherit fonts for inputs and buttons */
input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}

/* Make sure textareas without a rows attribute are not tiny */
textarea:not([rows]) {
  min-height: 10em;
}

/* Anything that has been anchored to should have extra scroll margin */
:target {
  scroll-margin-block: 5ex;
}

/****** application ******/

html, body{
  height: 100%;
  margin: 0;
  padding: 0;
  background-color: #efefef;
}

#bg{
  position: fixed;
  left: 0%;
  right: -100%;
  bottom: -100%;
  top: -100%;
  margin-top: 122vh;
  transform: rotate(-8deg);
  background-color: #efefef;
  z-index: 1;
  display: none;
}

#fg{
  position: relative;
  z-index: 2;
}

#copyright{
  text-align: center;
}

main > *{
  flex: 1 1 300px;
}

#tagline, #subtagline {
  font-size: calc((1vw + 1vh) / 2 * var(--multiplier, 6)); /* Adjust the multiplier as needed */
  color: #535380;
  line-height: 1em;
  text-align: center;
  font-family: system-ui;
  font-weight: lighter;
  margin-bottom: 1vh;
  margin-top: 1vh;
}

#tagline .values{
  font-size: calc((1vw + 1vh) / 2 * var(--multiplier, 3)); /* Adjust the multiplier as needed */
  display: inline-block;
  font-style: italic;
  line-height: .5em;
}

#tagline .waste{
  display: block;
  font-weight: normal;
}

#tagline .tagline{
  display: block;
  margin: .4em 0 0em 0;
  position: relative;
  top: .15em;
}

#tagline .skip-it{
  font-weight: bold;
}

#subtagline{
  font-size: calc((1vw + 1vh) / 2 * var(--multiplier, 2.5)); /* Adjust the multiplier as needed */
  font-style: normal;
  display: inline-block;
  background-color: #535380;
  color: white;
  padding: .6em;
  margin: 1em auto -1em auto;
}

#banner{
  padding: 1vw;
  text-align: center;
  padding-top: 2vw;
}

#callouts{
  text-align: center;
  display: block;
  margin: auto;
  margin-bottom: 5em;
}

#callouts a{
  text-decoration: none;
  padding: 1vh 2vh;
  display: inline-block;
}

#callouts h2{
  font-size: calc((1vw + 1vh) / 2 * var(--multiplier, 4));
  text-align: center;
  background-color: white;
  display: inline-block;
  font-family: system-ui;
}

#callouts h2:hover{
  background-color: #ddd;
}

img#logo{
  width: 75%;
  max-width: 600px;
  margin: 10% auto 0% auto;
}

#logo-container {
  display: flex;             /* Make the container a flex container */
  justify-content: center;   /* Center items horizontally */
  align-items: center;       /* Center items vertically */
  height: 60vh;             /* Make container take full viewport height */
  width: 100vw;              /* Make container take full viewport width */
  /* Or if .center-container is inside another element, set its height/width to 100% */
}

img#logo {
  height: auto;
  width: 90%;
  max-width: 800px;
}
