
  /*******************/
 /*   BASIC STUFF   */
/*******************/

:root {
  color-scheme: light;

  --arrow-primary: #FF4A62;
  --arrow-primary-shadow: #C75967;

  --arrow-secondary: #6579FF;
  --arrow-secondary-shadow: #5F6BB4;

  --arrow-tertiary: #635B52;
  --arrow-tertiary-shadow: #3F3A35;

  --foreground: #FFE3C4;
  --black:      #3F3A35;
  --blue:       #6479FF;
  --yellow:     #FFB938;
  --red:        #FF4A62;

  --text-boxes: #FFB938;

  --max-width: 160em;
  --font-body: "Comic Neue", cursive, bold;
  --font-heading: "Bangers", system-ui, sans-serif;
  --font-alt: "Sour Gummy", sans-serif;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}


html,
body {
  width: 100vw;
  height: 100vh;
  position: relative;
  background: #FFE3C4;
  font-family: var(--font-body);
  font-size: 10px;
  color:  var(--black);
  overflow-x: hidden;
}

body {
  scrollbar-gutter: stable;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading);
  line-height: 110%;
  white-space: normal;
  width: 100%;
}

p {
  font-size: 2em;
  line-height: 150%;
  white-space: normal;
  width: 100%;
}

a {
  color:inherit;
  text-decoration: none;
}

h2 {
  font-size: 5em;
}

ol, li {
  list-style: none;
}



  /*******************/
 /*    STRUCTURE    */
/*******************/

#siteContainer {
  width: calc(100vw - 16px);
  margin: 0;
  position: relative;
  padding-top: 5em;
  overflow-x: hidden;
}

#content {
  width: 100%;
  max-width: calc(100vw - 16px);
  margin: 0 auto;
  max-width: var(--max-width);
  margin-top: 37em;
  z-index: 30;
  position: relative;
}

.horizontalPads {
  display: flex;
  gap: 10em;
  width: 100%;
  justify-content: center;
  flex-wrap: nowrap;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 5em;



  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch; 
}
.horizontalPads::-webkit-scrollbar {
  display: none;
}


  /*******************/
 /*   BUTTONS BRO   */
/*******************/

button.primary {
  --arrow-color: var(--arrow-primary);
  --arrow-shadow-color: var(--arrow-primary-shadow);
}
button.secondary {
  --arrow-color: var(--arrow-secondary);
  --arrow-shadow-color: var(--arrow-secondary-shadow);
}
button.tertiary {
  --arrow-color: var(--arrow-tertiary);
  --arrow-shadow-color: var(--arrow-tertiary-shadow);
}

button {
  position: relative;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1;
  text-transform: uppercase;
  color: white;
  display: block;
  background: var(--arrow-color);
  border: none;
  height: 5.9em; 
  box-shadow: 0 8px 0 var(--arrow-shadow-color);
  cursor: pointer;
  width: max-content;
  z-index: 10;
  margin-bottom: 2em;
  margin-left: -2em;
}
button .arrowleft,
button .arrowhead {
  position: absolute;
  display: block;
  z-index: 2;
}
button .arrowhead {
  width: 4em;
  height: 8.7em;
  fill: var(--arrow-color);
  top: -1.4em;
  right: -3.7em;
}
button .arrowleft {
  width: 1.5em; 
  height: 5.9em;
  left:-0.9em;
  top: 0em;
  fill: var(--arrow-color);
}
button .arrowhead.shadow {
  fill: var(--arrow-shadow-color);
  top: -0.6em;
}
button .arrowleft.shadow {
  fill: var(--arrow-shadow-color);
  top: 0.8em;
}

button:active {
  bottom: -0.3em;
  box-shadow: 0 0.5em 0 var(--arrow-shadow-color);
}
button:active .arrowhead.shadow {
  top: -0.9em;
}
button:active .arrowleft.shadow {
  top: 0.5em;
}
button span {
  position: relative;
  display: inline-block;
  font-size: 4em;
  left: 0.3em;
  z-index: 3;
  transform: rotate(-1deg);
  paint-order: stroke fill;
  padding: 0 0.3em;
}

@keyframes ButtonDown {
  0%   { transform: scale(1); }
  20%  { transform: scale(1.03); }
  100% { transform: scale(1); }
}
@keyframes ButtonDown2 {
  0%   { transform: scale(1) rotate(-1deg); }
  20%  { transform: scale(1.06) rotate(0deg); }
  100% { transform: scale(1) rotate(-1deg); }
}
button:hover  {
  transform-origin: 30% 50%;
  animation-name: ButtonDown;
  animation-duration: 1s;
  animation-timing-function: ease-in;
  animation-iteration-count: infinite;
}
button:hover span {
  animation-name: ButtonDown2;
  animation-duration: 1s;
  animation-timing-function: ease-in;
  animation-iteration-count: infinite;
}

button img {
  margin: -1rem 1rem 0 0;
  height: 3.8rem;
  top: 0.1em;
  position: relative;
}


  /*******************/
 /*    NAVIGATION   */
/*******************/

#top #navigation {
  display: block;
  position: static;
  top: 0;
  z-index: 5000;
}

#navigation img {
  width: 8.1em;
  right: 5em;
  position: fixed;
  z-index: 5000;
}


#navOverlay {
  width: calc(100vw - 16px);
  height: 120vh;
  position: fixed;
  background: var(--black);
  z-index: 4999;

  transform: translateY(-120vh);
  transition: transform 0.15s cubic-bezier(.34,1.56,.64,1);
  will-change: transform;
}
#navOverlay::before {
  content: " ";
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  height: 52px;
  background: url('images/menuoutline.svg') no-repeat;
  background-size: 100% 52px;
}

#navOverlay.show {
    transform: translateY(-25vh);
}

#navOverlay.hide {
    transform: translateY(-120vh);
}

.navContent {
  width: calc(100vw - 16px);
  height: 120vh;
  position: absolute;
  background: var(--blue);
  z-index: 5000;

  transform: translateY(-130vh);
  transition: transform 0.35s cubic-bezier(.34,1.56,.64,1);
  will-change: transform;
}
.navContent::before {
  content: " ";
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  height: 52px;
  background: url('images/menuoutline2.svg') no-repeat;
  background-size: 100% 52px;
}
#navOverlay.show .navContent {
    transform: translateY(-2vh);
}

#navOverlay.hide .navContent {
    transform: translateY(-130vh);
}

.navContent {
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.navContent ol {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 80vh;
  margin-bottom: 5vh;
  align-content: center;
  flex-wrap: wrap;
}

.navContent li {
  position: relative;
  display: flex;
  max-height: 20%;
  width: auto;
}
.navContent li img {
    max-width: 90vw;
    height: 100%;
}
.hoverImage2 {
  position: absolute;
  left: 50%;
  margin-left: -50%;
  top: 0;
  opacity: 0;
  object-fit: cover;
}
.navContent li:hover .hoverImage {
  opacity: 0;
}
.navContent li:hover .hoverImage2 {
  opacity: 1;
}


  /*******************/
 /*     SHADING     */
/*******************/

#bgTop, #bgBot {
  height: 35vh;
  left: 0;
  right: calc(0px + 16px);
  z-index: 1;
  position: fixed;
  background-size: 1em;
  opacity: 0.5;
  pointer-events: none;
}
#bgTop {
  top: 0;
  background-image: linear-gradient(0deg, #FFE3C4 0%, rgba(255, 227, 196, 0.00) 100%), url('stripepattern.png');
  opacity: 0.3;
}
#bgBot {
  bottom: 0;
  background-image: linear-gradient(180deg, #FFE3C4 0%, rgba(255, 227, 196, 0.00) 100%), url('dotted2.png');
}


.bigShadow::before {
      display: block;
      position: absolute;
      top: 12px;
      left: -14px;
      width: 16px;
      height: 100%;
      background-image: url('dotted2.png'); 
      background-size: 10px 10px;
      z-index: 0;
      content: " ";
    }
.bigShadow::after {
      display: block;
      position: absolute;
      bottom: -12px;
      left: 2px;
      right: 12px;
      height: 13px;
      background-image: url('dotted2.png'); 
      background-size: 10px 10px;
      z-index: 0;
      content: " ";
    }


  /*******************/
 /*       HERO      */
/*******************/

#logoContainer {
  position: relative;
  max-width: var(--max-width);
  margin: 0 auto;
  width: 100%;
  font-size: 0.8em;
  z-index: 20;
}
#logo img.logo {
  font-size: 0.1em;
  width: 1050em;
  height: 447em;
}
#logo img.issue {
  font-size: 0.1em;
  width: 360em;
  position: absolute;
  left: 30em;
  top: 365em;
}
#details {
  position: absolute;
  right: 0;
  top: 17em;
  width: 40em;

  font-family: var(--font-alt);
  font-style: italic;
}
#details dt {
  text-align: right;
  font-size: 2em;
  line-height: 60%;
  font-weight: normal;
}
#details dd {
  text-align: right;
  font-size: 2.8em;
  line-height: 100%;
  font-weight: bold;
  margin-bottom: .5em;
}

#bg {
  font-size: .05em;

  width: 2918em;
  height: 2003em;
  margin-left: -1459em;

  position: absolute;
  left: 50%;
  top: 750em;


  z-index: 10;
}
#bg img {
  position: absolute;
  top: 1em;
  left: 1em;
  z-index: 10;

  will-change: transform; 
  transition: transform 0.1s ease-out; 
}
#bg img:nth-child(1) {  left: 1105em;   top: 251em;   width: 596em;   height: 505em;   }
#bg img:nth-child(2) {  left: 582em;    top: 422em;   width: 717em;   height: 479em;   }
#bg img:nth-child(3) {  left: 368em;    top: 710em;   width: 245em;   height: 216em;   }
#bg img:nth-child(4) {  left: 2313em;   top: 678em;   width: 567em;   height: 360em;   }
#bg img:nth-child(5) {  left: 976em;    top: 0em;     width: 1669em;  height: 1240em;  }
#bg img:nth-child(6) {  left: 2286em;   top: 969em;   width: 454em;   height: 184em;   }
#bg img:nth-child(7) {  left: 1986em;   top: 1150em;  width: 228em;   height: 208em;   }
#bg img:nth-child(8) {  left: 2283em;   top: 1121em;  width: 634em;   height: 243em;   }
#bg img:nth-child(9) {  left: 0em;      top: 914em;   width: 1236em;  height: 657em;   }
#bg img:nth-child(10) {  left: 1458em;  top: 1347em;  width: 1325em;  height: 656em;   }
#bg img:nth-child(11) {  left: 281em;   top: 1114em;  width: 599em;   height: 111em;   }
/*
        <img src="images/books.png" />        
        <img src="images/headphones.png" />        
        <img src="images/snes.png" />        
        <img src="images/xbox.png" />        
        <img src="images/laptop.png" />        
        <img src="images/pens.png" />        
        <img src="images/pencil-1.png" />        
        <img src="images/phone.png" />        
        <img src="images/wacom.png" />        
        <img src="images/ipad.png" />        
        <img src="images/pencil.png" />  /*


  /*******************/
 /*     CONTENT     */
/*******************/

.card1 {
  flex: 0 0 32em;
  display: flex;
/*  justify-content: center;*/
  flex-direction: column;

  width: 32em;
  padding: 2em 2em 4em;
  position: relative;

  gap: 1.5em;

  rotate: 2.4deg;

  background: url('card1.svg');
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.card1.cardBio {
  flex: 0 0 40em;
  width: 40em;
}
.card1 > * {
  z-index: 101;
  text-align: center;
  position: relative;
}
.card1.cardBio p {
  text-align:  left;
}
.card1.cardBio li {
  text-align:  left;
}
.card1.cardBio img.bioImage {
  width: calc(100% + 3.3em);
  margin-left: -1.7em;
  margin-right: -1.7em;
  margin-top: -1.7em;
  mix-blend-mode: multiply;
}
.card1 ul li {
  margin-left: 1.5em;
  list-style: disc;
  font-size: 2em;
  line-height: 150%;
}
.spacer {
  background: url('line.svg');
  background-repeat: no-repeat;
  background-size: 100% 100%;
  width: 100%;
  height: .3em;
}

#bgCards {
      position: absolute;
      z-index: 1000;
      top: 43em;
      left: 55%;
      width: 60em;
      margin-left: -30em;
}

#bgCards .card2:nth-child(1) { left: 0; top: 0; }
#bgCards .card2:nth-child(2) { left: 6em; top: 3em; }
#bgCards .card2:nth-child(3) { left: 12em; top: 6em; }

.card2 {
      background-image: url('borderyellow.svg');
      background-repeat: no-repeat;
      background-size: 100% 100%;
      position: absolute;
      width: auto;
      height: auto;
      padding: .5em .75em;
      margin: 0;
      text-align: center;
      font-size: 1.8em;
      font-weight: bold;
      z-index: 1000;
}




  /*******************/
 /*    SECTIONS     */
/*******************/

.sectionHeader {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width:  calc(100vw - 16px);
  text-align: center;
  margin: 10em 5em 5em;
  padding-top: 10em;
  font-family: var(--font-alt);
}
.sectionHeader p {
  font-size: 2.7rem;
  max-width: 78rem;
}
.sectionHeader img.headingImage {
  max-width: 94vw;
  margin-bottom: 3em;
}


  /*************************************/
 /*     RANDOM POSITIONING STUFF      */
/*************************************/

#contact button {
  margin-top: 5rem;
}
.socialPads {
  width: 100%;
  display: flex;
  position: relative;
  flex-direction: row;
  z-index: 1;
  justify-content: center;
}
.socialPads > a {
  padding-top: 10em;
  display: flex;
  position: relative;
  justify-content: center;
  width: 26em;
  margin: 3em;
}
img.rounder {
  position: absolute;
  width: 20em;
  left: 50%;
  margin-left: -10em;
  top: 0;
}


  /*******************/
 /*    ANIMATION    */
/*******************/



@keyframes floating {
  0%   { translate: .2em   0     }
  50%  { translate: 0     .6em   }
  100% { translate: .2em   0     }
}
@keyframes floating2 {
  0%   { translate: 0     .2em   }
  25%  { translate: .6em   0     }   
  50%  { translate: .3em   .2em   }     
  75%  { translate: .6em   0     }
  100% { translate: 0     .2em   }
}

.floatThis {
  animation-name: floating;
  animation-duration: 5s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}
.floatThis2 {
  animation-name: floating2;
  animation-duration: 12s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

.floatThis:nth-child(1) { animation-delay: -1s; }
.floatThis:nth-child(2) { animation-delay: -3s; }
.floatThis:nth-child(3) { animation-delay: -2s; }





  /*******************/
 /*  Media Queries  */
/*******************/


@media (min-width: 1980px) {

  body { font-size: 12.5px; }

  .horizontalPads {
    gap: 6em;
  }
}
@media (max-width: 1500px) {

  body { font-size: 9px; }

  .horizontalPads {
    gap: 4em;
  }
}
@media (max-width: 1200px) {
  #logoContainer {
    margin: 0 3em;
  }

  #logoContainer #details {
    position: absolute;
    left: 46em;
    top: 40em;
    width: 50em;
  }
  #details dd, #details dt {
    text-align: left;
    font-size: 3.8em;
  }
  #bg { top: 1100em; }
  #bgCards { top: 65em; }
  #content { margin-top: 90em; }

}
@media screen and (max-width: 800px) {

  .horizontalPads {
      gap: 3em;
      font-size: inherit;
      justify-content: flex-start;
  }

  #logo, #details { font-size: 0.75em; }
  #bg { font-size: .04em; }
  #bgCards { top: 50em; }

  #bgCards .card2:nth-child(1) { left: 0; }
  #bgCards .card2:nth-child(2) { left: 5em; }
  #bgCards .card2:nth-child(3) { left: 10em;  }
  #content { margin-top: 70em; }
}
@media screen and (max-width: 690px) {
  #logoContainer { font-size: 0.7em }
  #bg { font-size: 0.035em; }
  #bgCards { top: 46em; }
  #bgCards .card2:nth-child(1) { left: 0; }
  #bgCards .card2:nth-child(2) { left: 4em; }
  #bgCards .card2:nth-child(3) { left: 8em;  }
  #content { margin-top: 60em; }
  #top #navigation { right: 3em; }
  #top #navigation img { font-size: 0.8em; }
}
@media screen and (max-width: 550px) {
  #logoContainer { font-size: 0.6em }
  #bg { font-size: 0.03em; }
  #bgCards { top: 42em; }
  #bgCards .card2:nth-child(1) { left: 1em; }
  #bgCards .card2:nth-child(2) { left: 3em; }
  #bgCards .card2:nth-child(3) { left: 5em;  }
  #content { margin-top: 52em; }
  #top #navigation { right: 2em; }
  #top #navigation img { font-size: 0.6em; }
}

@media screen and (max-width: 460px) {
  #logoContainer { font-size: 0.54em }
  #details dt, #details dd { font-size: 5em; }
  #bg { font-size: 0.02em; }
  #bg { top: 1640em; }
  #bgCards { top: 44em; font-size: 0.8em; left: 45%; }
  #bgCards .card2:nth-child(1) { left: 4em; }
  #bgCards .card2:nth-child(2) { left: 5em; }
  #bgCards .card2:nth-child(3) { left: 6em;  }
  #content { margin-top: 34em; }
}





/************** TEMP TEMP TEMP ********************/


.footer {
  position: relative;
  display: flex;
  width: 100%;
  padding: 7em 2em;
  background: var(--black);
  z-index: 2000;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-top: 20em;
}

.footer > * {
  display: flex;
  position: relative;
  max-width: 600px;
  z-index: 6000;
  color: var(--foreground);
  justify-content: center;
  text-align: center;
  margin-top: 1em;
}

.hideThis {
  display: none;
}