:root {
  --cream: #f7ead8;
  --cream-deep: #edd5b5;
  --ink: #1b1714;
  --coffee: #4b2e21;
  --tomato: #e84b38;
  --cheese: #f6bf32;
  --pickle: #6ea845;
  --white: #fffaf2;
  --shadow: 0 20px 50px rgba(54, 32, 22, 0.18);
  --radius: 8px;
  --section-pad: clamp(72px, 10vw, 140px);
  --display-font: "Cooper Black", Impact, "Arial Black", sans-serif;
  --accent-font: "Arial Narrow", Impact, sans-serif;
  --body-font: Arial, Helvetica, sans-serif;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: auto;
}

body {
  margin: 0;
  background:
    repeating-linear-gradient(
      -8deg,
      rgba(75, 46, 33, 0.035) 0 1px,
      transparent 1px 24px
    ),
    var(--cream);
  color: var(--ink);
  font-family: var(--body-font);
  overflow-x: hidden;
}

body.no-js .loader,
body.gsap-missing .loader {
  display: none;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  color: inherit;
  font: inherit;
}

::selection {
  background: var(--tomato);
  color: var(--white);
}

.section-panel {
  min-height: 100vh;
  padding: var(--section-pad) clamp(20px, 5vw, 72px);
  position: relative;
}

.eyebrow {
  margin: 0 0 18px;
  color: var(--tomato);
  font-family: var(--accent-font);
  font-size: clamp(24px, 3vw, 40px);
  letter-spacing: 0;
  text-transform: uppercase;
}

.display-title,
.section-title,
.footer-title {
  margin: 0;
  font-family: var(--display-font);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 0.86;
  text-transform: uppercase;
}

.display-title {
  max-width: 680px;
  font-size: clamp(70px, 8.2vw, 126px);
  color: var(--tomato);
  -webkit-text-stroke: 2px var(--ink);
  text-shadow: 0 10px 0 var(--cheese);
}

.section-title {
  max-width: 980px;
  font-size: clamp(62px, 12vw, 160px);
}

.body-copy {
  max-width: 700px;
  margin: 28px 0 0;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 700;
  line-height: 1.35;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}
