/* CSS is how you can add style to your website, such as colors, fonts, and positioning of your
   HTML content. To learn how to do something, just try searching Google for questions like
   "how to change link color." */

/*body {*/
/*  background-color: white;*/
/*  color: black;*/
/*  font-family: Verdana;*/
/*}*/


*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  background:#fff6e9;
  font-family:"Comic Sans MS", monospace;
  color:#4a3b2c;
  min-height:100vh;
  overflow-x:hidden;
}

/* stars */
#stars{
  position:fixed;
  inset:0;
  z-index:-1;
}

/* navbar */
.nav{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:20px 40px;
}

.nav a{
  margin-left:20px;
  text-decoration:none;
  color:#7a6a5a;
}

/* hero */
.hero{
  text-align:center;
  margin-top:90px;
}

.hero h1{
  font-size:42px;
  margin-bottom:16px;
}

.hero p{
  font-size:16px;
  line-height:1.6;
  margin-bottom:30px;
  min-height:24px;
}

/* buttons */
.buttons button{
  padding:12px 26px;
  border-radius:18px;
  font-size:14px;
  cursor:pointer;
  margin:0 10px;
}

.primary{
  background:#ff8c5a;
  color:#fff;
  border:none;
}

.secondary{
  background:#fff;
  color:#ff8c5a;
  border:2px solid #ff8c5a;
}

.nav,
.hero{
  position:relative;
  z-index:5;
}

#mascot{
  z-index:10;
}

.music-btn{
  z-index:10;
}


/* cats */
.cats{
  position:fixed;
  bottom:0;
  left:0;
  width:100%;
  z-index:1;              
  pointer-events:none;
  background:linear-gradient(
    to top,
    #fff6e9 70%,
    transparent
  );
}



.cats img{
  width:100%;
  height:auto;           
  display:inline;
}

/* portfolio*/

.portf{
  position: relative;
  z-index: 3;
  margin-top: 80px;
  text-align: center;
}

.portf img{
  width: 50px;
}



/* mascot */
#mascot{
  position:fixed;
  bottom:220px;
  right:20px;
  width:90px;
  cursor:pointer;
  animation:float 3s ease-in-out infinite;
  z-index:10;
}

#mascot img{
  width:100%;
  image-rendering:pixelated;
  transition:0.3s;
}

#mascot:hover img{
  transform:scale(1.08) rotate(-4deg);
}

@keyframes float{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-8px); }
}

/* speech bubble */
.bubble{
  position:absolute;
  bottom:100px;
  right:0;
  background:#fff;
  padding:6px 10px;
  border-radius:12px;
  font-size:12px;
  color:#ff69b4;
  box-shadow:0 6px 15px rgba(0,0,0,0.15);
  opacity:0;
  transform:translateY(6px);
  transition:0.3s;
  white-space:nowrap;
}

#mascot.show .bubble{
  opacity:1;
  transform:translateY(0);
}

/* music button */
.music-btn{
  position:fixed;
  bottom:20px;
  left:20px;
  background:#ffd1e8;
  border:none;
  padding:10px 16px;
  border-radius:20px;
  cursor:pointer;
}
#yt-player{
  position:fixed;
  width:1px;
  height:1px;
  bottom:-10px;
  left:-10px;
  overflow:hidden;
}

