
  /*********** color palette ***********/
  
  :root {
    --choco:#8C533F;
    --cocoa:#C6A99F;
    --cream:#E3D5D0;
    --peach:#ffb6b0;
    --mango:#ffba23;
    --mint:#4ed3bd;
  }

  /*********** animations ***********/

  @keyframes fadeIn{
    0%{opacity:0;}
    100%{opacity:100;}
  }

  @keyframes color1{
    0%{color:var(--peach);}
    33%{color:var(--mint);}
    66%{color:var(--mango);}
    100%{color:var(--peach);}
  }

  @keyframes color2{
    0%{color:var(--mango);}
    33%{color:var(--peach);}
    66%{color:var(--mint);}
    100%{color:var(--mango);}
  }

  @keyframes color3{
    0%{color:var(--mint);}
    33%{color:var(--mango);}
    66%{color:var(--peach);}
    100%{color:var(--mint);}
  }
  
  /*********** base elements ***********/

  body{
    display:flex;
    flex-direction:column;
    gap:25px;
    justify-content:center;
    align-items:center;
    background-color:white;
    font-family: 'Futura';
    color:var(--choco);
    font-size:20px;
    word-spacing:-.15em;
    min-height:100vh;
    overflow-x:hidden;
    animation:fadeIn .5s linear;
  }
  
  a{
    display:inline-block;
    color:var(--choco);
    text-decoration:none;
  }

  ::selection {
    background-color:var(--cream);
  }
  
  h1{
    font-size:27.5px;
    font-weight:normal;
    line-height:normal;
    text-decoration:none;
    margin:0px 0px 20px 0px;
  }

  .title{
    margin:0px;
    text-align:center;
  }
  
  p{
    line-height:normal;
    margin:0px;
  }
  
  hr{
    color:var(--choco);
    border:none;
    border-top:2px dashed var(--cocoa);
    margin:10px 0px 0px 0px;
  }

  img{
    user-select:none;
    display:block;
    border-radius:20px;
  }

  textarea{
    font-family:"Courier New";
    font-size:13.5px; 
  }

  iframe{
    aspect-ratio:4/3;
    border:none;
    border-radius:20px;
  }
  
  /*********** main layout ***********/

  #container{
    display:flex;
    flex-direction:column;
    gap:25px;
    width:100%;
    max-width:600px;
    padding:25px;
    margin:25px 0px;
    box-sizing:border-box;
  }

  #main{
    display:flex;
    flex-direction:column;
    gap:25px;
    text-align:left;
    margin:25px 0px;
  }

  #header{    
    text-align:center;
  }

  #header h1{
    font-size:35px;
    margin:0px;
  }

  #header span:nth-child(3n + 1){
    color:var(--peach);
    animation:color1 5s steps(1) infinite;
  }

  #header span:nth-child(3n + 2){
    color:var(--mango);
    animation:color2 5s steps(1) infinite;
  }

  #header span:nth-child(3n){
    color:var(--mint);
    animation:color3 5s steps(1) infinite;
  }

  #footer{
    text-align:center;
  }

  /*********** navbar ***********/

  #navbar{
    display:flex;
    justify-content:space-evenly;
    padding:0px 25px;
    box-sizing:border-box;
  }

  #navbar a{
    transition:transform .25s ease;
  }

  #navbar a:hover, .link:hover{
    text-decoration:wavy underline;
    transform:scale(1.125);
  }

  #navbar .inactive{
    color:var(--cocoa);
    font-style:italic;
    text-decoration:wavy underline;
  }

  #navbar a:nth-child(3n + 1):hover, .link:hover{
    color:var(--peach);
  }

  #navbar .inactive:nth-child(3n + 1){
    color:var(--peach);
  }

  #navbar a:nth-child(3n + 2):hover{
    color:var(--mango);
  }

  #navbar .inactive:nth-child(3n + 2){
    color:var(--mango);
  }

  #navbar a:nth-child(3n):hover{
    color:var(--mint);
  }

  #navbar .inactive:nth-child(3n){
    color:var(--mint);
  }
  
  /*********** homepage ***********/

  #home{
    display:flex;
    gap:25px;
  }

  .banner{
    flex:1 1 50%;
  }

  .banner img{
    width:100%;
    height:auto;
  }

  .textbox{
    flex:1 1 50%;
    padding:0px 15px 0px 0px;
    box-sizing:border-box;
  }

  #home-extras{
    display:flex;
    gap:25px;
    justify-content:center;
    align-items:center;
  }

  #home-extras span{
    color:var(--peach);
    text-decoration:wavy underline;
  }

  @media screen and (max-width: 600px){
    #container{
      padding:25px 35px;
    }

    #navbar{
      padding:0px;
    }

    #home{
      flex-direction:column;
    }

    .textbox{
      padding:0px;
    }
  }

  /*********** about ***********/

  .links{
    display:flex;
    gap:15px;
  }

  .links a{
    height:1.5em;
    width:auto;
    transition:transform .25s ease;
  }

  .links a:hover{
    transform:scale(1.125);
  }

  .links img{
    height:100%;
    width:100%;
    aspect-ratio:1/1;
    border-radius:0px;    
  }

  #mybutton{
    display:flex;
  }

  #mybutton img{
    border-radius:0px;
  }

  /*********** art/gallery ***********/

  #gallery{
    display:flex;
    flex-direction:column;
    gap:15px;
  }

  .grid{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
  }

  .grid a{
    position:relative;
    flex:0 1 calc(25% - 5px);
    border-radius:20px;
    outline:5px solid transparent;
    outline-offset:-5px;
    transition:outline .25s ease;
  }
  
  .grid a::after{
    content:'';
    position:absolute;
    display:block;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    background-color:black;
    border-radius:10px;
    opacity:0.025;
    transition:opacity .2s ease;
  }

  .grid a:nth-child(3n + 1):hover{
    outline:5px solid var(--peach);
  }

  .grid a:nth-child(3n + 2):hover{
    outline:5px solid var(--mango);
  }

  .grid a:nth-child(3n):hover{
    outline:5px solid var(--mint);
  }

  .grid img{
    width:100%;
    height:auto;
    aspect-ratio:1/1;
    object-fit:cover;
    display:block;
  }

  /*********** videos ***********/

  #videos{
    display:flex;
    flex-direction:column;
    gap:25px;
  }

  .video-wrapper{
    display:flex;
    flex-direction:column;
    gap:10px;
  }

  .desc{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0px 10px;
  }
  
  /*********** misc ***********/

  .sub{
    color:var(--cocoa);
    font-size:15px;
  }

  .inactive{
    pointer-events:none;
    cursor:default;
  }

  .link{
    color:var(--choco);
    text-decoration:wavy underline var(--peach);;
    transition:transform .25s ease;
  }

  #spooky{
    background-color:black;
    color:white;
    text-align:center;
  }

  #boo{
    display:flex;
    flex-direction:column;
    gap:25px;
    text-align:center;
  }

  #boo a{
    color:white;
  }


