/* Root system START */

:root {
  --color-light: #F7FFF7;
  --color-neutral: #4ECDC4;
  --color-bright: #9163cb;
  --color-littledark: #4C5C68;
  --color-dark: #292F36;

  --ff-primary: 'Yanone Kaffeesatz', sans-serif;
  --ff-body: var(--ff-primary);

  --fw-light: 200;
  --fw-regular: 400;
  --fw-semibold: 500;
  --fw-bold: 700;

  --fs-300: .85rem;
  --fs-400: 1rem;
  /* 16px / body */
  --fs-450: 1.25rem;
  --fs-500: 1.5rem;
  --fs-600: 2rem;
  --fs-700: 2.5rem;
  --fs-800: 3.5rem;
  --fs-900: 4.5rem;

  --fs-button: var(--fs-300);
  --fs-body: var(--fs-400);
  --fs-nav: var(--fs-500);
  --fs-secondary-heading: var(--fs-700);
  --fs-primary-heading: var(--fs-800);

  --space-100: .25em;
  --space-200: .5em;
  --space-300: .75em;
  --space-400: 1em;
  --space-500: 1.25em;
  --space-600: 1.5em;
  --space-700: 2em;
  --space-800: 2.5em;
  --space-900: 3em;

  --max-width: 100vw;
  --max-height: 100vh;
}

/* big screen */

@media (min-width: 50em)

/* em is consistent across all browsers */
  {
  :root {
    --fs-300: .85rem;
    --fs-400: 1.25rem;
    --fs-500: 1.5rem;
    --fs-600: 2rem;
    --fs-700: 2.5rem;
    --fs-800: 3.5rem;
    --fs-900: 5rem;

    --fs-body: var(--fs-500);
    --fs-nav: var(--fs-500);
    --fs-primary-hero: var(--fs-900);
    --fs-secondary-hero: var(--fs-800);
  }
}

/* Root system END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* CSS reset START */

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

* {
  margin: 0;
  padding: 0;
  font: inherit;
}

html,
body {
  height: 100%;
  /* allows % heights in the application */
}

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

input,
button,
textarea,
select {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* CSS reset END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* Utility classes START */

.text-light {
  color: var(--color-light);
}

.text-neutral {
  color: var(--color-neutral);
}

.text-bright {
  color: var(--color-bright);
}

.text-littledark {
  color: var(--color-littledark);
}

.text-dark {
  color: var(--color-dark);
}

.bg-primary {
  background-color: var(--color-dark);
}

.bg-secondary {
  background-color: var(--color-light);
}

.bg-littledark {
  background-color: var(--color-littledark);
}

.bg-neutral {
  background-color: var(--color-neutral);
}

.bg-bright {
  background-color: var(--color-bright);
}

.fw-light {
  font-weight: var(--fw-light);
}

.fw-regular {
  font-weight: var(--fw-regular);
}

.fw-semibold {
  font-weight: var(--fw-semibold);
}

.fw-bold {
  font-weight: var(--fw-bold);
}

.fs-300 {
  font-size: var(--fs-300);
}

.fs-400 {
  font-size: var(--fs-400);
}

.fs-500 {
  font-size: var(--fs-500);
}

.fs-600 {
  font-size: var(--fs-600);
}

.fs-700 {
  font-size: var(--fs-700);
}

.fs-800 {
  font-size: var(--fs-800);
}

.fs-900 {
  font-size: var(--fs-900);
}

.fs-button {
  font-size: var(--fs-button);
}

.fs-body {
  font-size: var(--fs-body);
}

.fs-nav {
  font-size: var(--fs-nav);
}

.fs-secondary-heading {
  font-size: var(--fs-secondary-heading);
}

.fs-primary-heading {
  font-size: var(--fs-primary-heading);
}

.flex {
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
}

/* Utility classes END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* general styling START*/

body {
  max-width: 100vw;
  max-height: 100%;
  height: 100%;
  font-family: var(--ff-primary);
  font-size: var(--fs-body);
  font-weight: var(--fw-regular);
  background: var(--color-littledark);
  color: var(--color-light);
  overflow-x: hidden;
}

.container {
  --max-width: 100vw;
  --max-height: 100vh;

  width: min(var(--max-width), 100%);
  height: min(var(--max-height), 100%);
  /* chooses the smaller option -- 100% - 2 padding (*2) */
  margin-inline: auto;
  /* margin left-right */
}

a {
  text-decoration: 0;
  list-style-type: none;
  color: var(--color-light);
}

/* scrollbar START*/

::-webkit-scrollbar {
  width: .75em;
  height: .75em;
}

::-webkit-scrollbar-thumb {
  background: var(--color-littledark);
  border: 1px solid var(--color-dark);
}

::-webkit-scrollbar-track,
::-webkit-scrollbar-corner {
  background: var(--color-dark);
  border: 1px solid var(--color-littledark);
}

::-webkit-scrollbar-button:decrement {
  height: 1em;
  background-image: url("images/scrollbar-up.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--color-bright);
  border-bottom: 3px solid var(--color-neutral);
}

::-webkit-scrollbar-button:increment {
  height: 1em;
  background-image: url("images/scrollbar-down.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--color-neutral);
  border-top: 3px solid var(--color-bright);
}

/* scrollbar END*/
/* footer START */

.footer-wrapper {
  padding: 1em;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}

.footer-logo-wrapper {
  padding: .25em;
  text-align: center;
  font-size: var(--fs-900);

  border-left: 1px solid var(--color-light);
  border-right: 1px solid var(--color-light);
}

.footer-logo-wrapper:focus,
.footer-logo-wrapper:hover,
.footer-logo-wrapper:active {
  background-image: url("images/rondy-stickers-flying-rocket.gif");
  background-repeat: no-repeat;
  background-size: 1em;
  animation: footerRocket 2s ease infinite;
}

@keyframes footerRocket {
  0% {
    background-position: 0% 100%;
  }

  100% {
    background-position: 120% top;
  }
}

.footer-logo:focus,
.footer-logo:hover,
.footer-logo:active {
  background-image: linear-gradient(to right, var(--color-neutral), var(--color-light));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.footer-social-links,
.footer-nav-links {
  padding: .25em;
  display: grid;
  grid-template-columns: repeat(2, 2fr);
  grid-template-areas:
    "one one"
    "two three"
    "four five";

  text-align: center;
  text-transform: uppercase;
  letter-spacing: .2em;
  cursor: pointer;
}

.footer-item-1 {
  grid-area: one;
}

.footer-item-2 {
  grid-area: two;
}

.footer-item-3 {
  grid-area: three;
}

.footer-item-4 {
  grid-area: four;
}

.footer-item-5 {
  grid-area: five;
}

.footer-item-nav-title,
.footer-item-social-title {
  margin-left: 2em;
  margin-bottom: -1.5em;
  width: 80%;
  height: 6vh;
  border-bottom: 1px solid var(--color-bright);
}

.footer-item-social-title {
  border-bottom: 1px solid var(--color-neutral);
}

.footer-item {
  padding: .25em;
}

.footer-item-wrapper {
  position: relative;
  transform-style: preserve-3d;
  /* without it it will just mirror the frontside after rotation */
  transition: .5s;
}

.footer-item-wrapper:focus,
.footer-item-wrapper:hover,
.footer-item-wrapper:active {
  transform: rotateY(.5turn);
  /* rotate on hover */
}

.footer-item-word,
.footer-item-icon,
.footer-item-back {
  width: 100%;
  text-align: center;
  position: absolute;
}

.footer-item-word {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* will keep side hidden after rotation */
  transform: rotateY(0);
}

.footer-item-icon {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* will keep side hidden after rotation */
  transform: rotateY(.5turn);
  color: var(--color-bright);
}

.footer-item-back {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* will keep side hidden after rotation */
  transform: rotateY(.5turn);
  color: var(--color-neutral);
}

@media screen and (min-width: 80em) {
  .footer-social-links {
    grid-template-areas:
      "one one"
      "two three"
      "four five";
  }
}

@media screen and (min-width: 50em) and (max-width: 79.9em) {
  .footer-social-links {
    grid-template-areas:
      "one one"
      "two three"
      "four five";
  }
}

@media screen and (min-width: 30em) and (max-width: 49.9em) {
  .footer-social-links {
    grid-template-areas:
      "one one"
      "two three"
      "four five";
  }

  .footer-wrapper {
    display: flex;
    flex-direction: column;
  }

  .footer-social-links,
  .footer-nav-links {
    height: 20vh;
  }

  .footer-logo-wrapper {
    font-size: var(--fs-700);
    order: 3;

    border-inline: none;
    border-top: 1px solid var(--color-light);
    border-bottom: 1px solid var(--color-light);
  }

}

@media screen and (max-width: 29.9em) {
  .footer-social-links {
    grid-template-areas:
      "one one"
      "two three"
      "four five";
  }

  .footer-wrapper {
    display: flex;
    flex-direction: column;
  }

  .footer-social-links,
  .footer-nav-links {
    height: 20vh;
  }

  .footer-logo-wrapper {
    order: 3;

    border-inline: none;
    border-top: 1px solid var(--color-light);
    border-bottom: 1px solid var(--color-light);
  }
}

/* footer END */
/* general styling END*/
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* header navbar START */

.header-nav {
  min-width: 100%;
  position: fixed;
  /* fixed and top0 allows navbar to always be visible */
  top: 0;
  letter-spacing: 2px;
  z-index: 1;
}

.logo {
  margin: var(--space-100);
  font-size: var(--fs-600);
  font-weight: var(--fw-bold);
}

.logo:focus,
.logo:hover,
.logo:active {
  background-image: linear-gradient(to right, var(--color-neutral), var(--color-light));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.fromLeft {
  display: inline-block;
  margin: 0;
  text-transform: uppercase;
}

.fromLeft::after {
  display: block;
  content: '';
  border-top: 5px solid;
  border-image: linear-gradient(to right, var(--color-neutral) 60%, var(--color-light))1;
  transform: scaleX(0);
  /* will hide border until hover */
  transform-origin: 0% 20%;
  transition: transform 200ms ease-in-out;
}

.fromLeft:hover::after {
  transform: scaleX(1);
  /* border will fill word's length */
}

.mobile-nav-toggle {
  display: none;
}

.navbar {
  padding: .75rem;
  justify-content: space-between;
}

.list-header-nav {
  list-style-type: none;
}

.header-nav,
.list-header-nav {
  gap: var(--space-500);
}


/* mobile nav START*/
@media (max-width: 35em) {
  .list-header-nav {
    gap: var(--space-400);
    z-index: 9;
    position: fixed;
    inset: 0 0 0 30%;
    padding: min(20vh, 10rem) 2rem;
    /* will choose the smallest */
    flex-direction: column;
    background: var(--color-dark);
    opacity: 75%;

    transform: translateX(100%);
    /* will hide menu until toggle */
    transition: transform 400ms ease-out;
  }

  .list-header-nav[data-visible="true"] {
    transform: translateX(0);
    /* will slide menu with JS */
  }

  .mobile-nav-toggle {
    display: block;
    position: absolute;
    z-index: 10;
    width: 2rem;
    aspect-ratio: 1;
    top: 1rem;
    right: 2rem;
    background: none;
    border: none;
    cursor: pointer;
  }

  .burger-menu-top,
  .burger-menu-middle,
  .burger-menu-bottom {
    width: 1.5rem;
    height: .12rem;
    background: #fff;
  }

  .burger-menu-top {
    margin-bottom: .5rem;
  }

  .burger-menu-bottom {
    margin-top: .5rem;
  }
}

/* mobile END */
/* header navbar END */
/* ------------------------------------------ */
/* hero section home START */

.home-main {
  display: block;
}

.bg-gradient-animation {
  min-width: 100%;
  height: 100vh;
  flex-direction: column;
  background-image: linear-gradient(to right,
      var(--color-dark),
      var(--color-littledark),
      var(--color-neutral),
      var(--color-light));
  background-size: 500% 500%;
  animation: bgChange 10s ease infinite;
}

@keyframes bgChange {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 50% 100%;
  }

  100% {
    background-position: 0% 100%;
  }
}

.title {
  font-family: var(--ff-primary);
  text-transform: uppercase;
  letter-spacing: .15em;
  text-shadow:
    -3px 2px 1px var(--color-littledark),
    3px 2px 1px var(--color-neutral);
}

.subtitle {
  font-family: var(--ff-primary);
  letter-spacing: .2em;
}

.hero-decoration {
  position: fixed;
  padding: 2em;
  border-top: 10px solid var(--color-neutral);
  border-right: 10px solid var(--color-dark);
  border-bottom: 10px solid var(--color-dark);
  border-left: 10px solid var(--color-neutral);
  box-shadow:
    6px 6px 10px var(--color-neutral),
    -6px -6px 10px var(--color-dark);
}

.hero-decoration:hover {
  background-image: url("images/rondy-stickers-flying-rocket.gif");
  background-repeat: no-repeat;
  background-size: 4em;
  animation: footerRocket 2s ease infinite;
}

@media screen and (min-width: 50em) and (max-width: 79.9em) {

  .hero-decoration>h1 {
    font-size: var(--fs-800);
  }

  .hero-decoration>h2 {
    font-size: var(--fs-600);
  }
}

@media screen and (min-width: 30em) and (max-width: 49.9em) {

  .hero-decoration>h1 {
    font-size: var(--fs-600);
  }

  .hero-decoration>h2 {
    font-size: var(--fs-500);
  }

}

@media screen and (max-width: 29.9em) {

  .hero-decoration {
    margin: 2em;
    text-align: center;
  }

  .hero-decoration>h1 {
    font-size: var(--fs-600);
  }

  .hero-decoration>h2 {
    font-size: var(--fs-500);
  }

}

/* hero section home END */
/* ------------------------------------------ */
/* text section home START*/

/*.text-one {
  background: url(images/aurora-borealis.jpg);
  background-size: cover;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
          background-clip: text;
  font-family: var(--ff-primary);
  font-size: var(--fs-900);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
}

.text-content {
  height: 100vh;
  margin: var(--space-700) var(--space-900);
  font-family: var(--ff-primary);
  line-height: 2;
  letter-spacing: .5px;
}

.top-text,
.bottom-text {
  height: 50vh;
}

.top-text {
  justify-content: left;
}

.bottom-text {
  justify-content: right;
}

.text-left,
.text-right {
  width: 33.5%;
  height: 40vh;
}

.text-left {
  padding: var(--space-500);
  justify-content: left;
}
*/

/* text section home END */
/* ------------------------------------------ */

/* HOME PAGE END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* PROJECTS PAGE START*/

.hero-project {
  margin: 5em 1em;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5em;
}

.grid-column-2 {
  grid-column: span 2;
  /* grid-column: short hand for grid-column-start and -end */
}

.grid-row-2 {
  grid-column: 4;
  grid-row-start: 1;
  grid-row-end: span 2;
}

.hero-item {
  padding: 1em;
  border-radius: 10px;
}

.hero-item-1 {
  grid-area: one;
}

.hero-item-2 {
  grid-area: two;
}

.hero-item-3 {
  grid-area: three;
}

.hero-item-4 {
  grid-area: four;
}

.hero-item-5 {
  grid-area: five;
}

.hero-item>h3 {
  margin-bottom: .5em;
  border-bottom: 2px solid;
  text-align: center;
  font-size: var(--fs-secondary-heading);
  font-weight: var(--fw-bold);
}

.hero-inner-item>img {
  max-height: 10em;
  margin: .5em auto;
  display: block;
  border-radius: 10px;
}

.hero-item {
  letter-spacing: .15em;
  line-height: 1.5em;
  font-weight: var(--fw-body);
  text-align: justify;
}

.hero-inner-4-imgs {
  margin: .5em auto;

  display: grid;
  grid-template-columns: 1fr 1fr;
  place-items: center;
  gap: 3em;
}

.hero-inner-4-imgs>img {
  border-radius: 10px;
}

.hero-inner-item>p>a {
  color: var(--color-bright);
  transition: color .3s ease-in-out, box-shadow .3s ease-in-out;
}

.hero-inner-item>p>a:focus,
.hero-inner-item>p>a:hover,
.hero-inner-item>p>a:active {
  box-shadow: inset 15em 0 0 0 var(--color-bright);
  color: var(--color-light);
  cursor: pointer;
}


@media screen and (min-width: 80em) {

  .hero-project {
    grid-template-areas:
      "one two two three"
      "four four five three";
  }

}

@media screen and (min-width: 50em) and (max-width: 79.9em) {

  .hero-project {
    margin: 6em 1em;
    font-size: var(--fs-400);

    grid-template-areas:
      "one one two two"
      "three three three three"
      "four four five five";
  }

}

@media screen and (min-width: 30em) and (max-width: 49.9em) {

  .hero-project {
    margin: 6em 1em;
    grid-template-areas:
      "one one one one"
      "two two two two"
      "three three three three"
      "four four four four"
      "five five five five";
  }

}

@media screen and (max-width: 29.9em) {

  .hero-project {
    margin: 6em 1em;
    grid-template-areas:
      "one one one one"
      "two two two two"
      "three three three three"
      "four four four four"
      "five five five five";
  }

}

/* more projects section START */

.more-projects-header {
  margin-inline: 5em;
  padding: 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  border-top: .2em solid white;
  font-size: var(--fs-600);
  text-transform: uppercase;
  text-align: center;
  letter-spacing: .2em;
}

.more-projects-header-thisway {
  width: 3em;
  height: 3em;
  background-image: url("images/rondy-stickers-sticker-this-way.gif");
  background-size: contain;
  background-repeat: no-repeat;
  transform: rotate(45deg);
}

.more-projects-wrapper {
  padding: 2em;
  display: grid;
  gap: 1.5em;
  grid-template-columns: repeat(3, 2fr);
  grid-template-areas:
    "one two three"
    "four five six";
}

.project-card {
  width: 15em;
  height: 12em;
  margin: auto;
  padding: 1em;
  position: relative;
  border-radius: 10px;
  letter-spacing: .2em;
}

.project-card:focus,
.project-card:hover,
.project-card:active {
  transform: translateY(-.75em);
  transition: transform .5s ease-in-out;
}

.project-card>h3 {
  margin-bottom: .5em;
  font-weight: var(--fw-bold);
  text-align: center;
  border-bottom: 2px solid;
}

.project-card>p {
  padding: 1em;
  font-size: var(--fs-450);
  text-align: justify;
}

.project-link {
  padding: 5em;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -100;
  background: var(--color-light);
  color: var(--color-dark);
  opacity: 0;
  border-radius: 10px;
  text-align: center;
  cursor: pointer;
}

.project-link:focus,
.project-link:hover,
.project-link:active {
  opacity: .75;
  z-index: 100;
}

.project-card-1 {
  grid-area: one;
}

.project-card-2 {
  grid-area: two;
}

.project-card-3 {
  grid-area: three;
}

.project-card-4 {
  grid-area: four;
}

.project-card-5 {
  grid-area: five;
}

.project-card-6 {
  grid-area: six;
}

@media screen and (min-width: 50em) and (max-width: 79.9em) {

  .more-projects-wrapper {
    padding: 2em;
    display: grid;
    gap: 1.5em;
    grid-template-columns: repeat(2, 3fr);
    grid-template-areas:
      "one three"
      "four two"
      "six five";
  }

}

@media screen and (min-width: 30em) and (max-width: 49.9em) {

  .more-projects-wrapper {
    padding: 2em;
    display: grid;
    gap: 1.5em;
    grid-template-columns: repeat(1, 1fr);
    grid-template-areas:
      "one"
      "two"
      "three"
      "four"
      "five"
      "six";
  }

  .more-projects-header {
    margin-inline: 2.5em;
    font-size: var(--fs-500);
    border-top: .1em solid;
  }

  .project-card {
    width: 100%;
  }

  .project-card>h3 {
    font-size: var(--fs-450);
  }

  .project-card>p {
    font-size: var(--fs-400);
  }

}

@media screen and (max-width: 29.9em) {

  .more-projects-wrapper {
    padding: 1em;
    display: grid;
    gap: 1.5em;
    grid-template-columns: repeat(1, 1fr);
    grid-template-areas:
      "one"
      "two"
      "three"
      "four"
      "five"
      "six";
  }

  .more-projects-header {
    margin-inline: 2.5em;
    font-size: var(--fs-450);
    border-top: .1em solid;
  }

  .project-card {
    width: 100%;
  }

  .project-card>h3 {
    margin-bottom: 0;
    font-size: var(--fs-450);
  }

  .project-card>p {
    font-size: var(--fs-400);
  }

}

/* more projects section END */
/* ************************* */
/* ************************* */
/* ************************* */
/* ************************* */
/* ************************* */
/* ************************* */
/* carousel START 

.carousel-content {
  margin: 0 auto;
  width: 100%;
  height: 50vh;
  position: relative;
  /* to add position: aboslute to btns 
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.carousel-items {
  width: 25%;
  display: flex;
  gap: 100%;
  transform: translateX(0);
  /* used in JS to slide images 
  transition: transform .5s ease;
}

.carousel-item {
  min-width: 6em;
  height: 6em;
  display: block;
  border-radius: 10px;
  cursor: pointer;
  box-shadow:
    5px 5px 15px var(--color-dark),
    -5px -5px 15px var(--color-dark),
    5px -5px 15px var(--color-dark),
    -5px 5px 15px var(--color-dark);
}

.carousel-item-1 {
  display: relative;
  background-image: url("images/responsive-design-img.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.carousel-item>span {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: .5em;
  font-size: var(--fs-500);
  color: var(--color-dark);
  text-align: center;
  z-index: 10;
  opacity: 0;
  transition: transform 0.8s ease-in-out;
}

.carousel-item:focus span,
.carousel-item:hover span,
.carousel-item:active span {
  /* text will appear on hover over img 
  opacity: 1;
}

.carousel-item-2 {
  background-image: url("images/modal-img.jpg");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.carousel-item-3 {
  background-image: url("images/responsive-design-img.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.carousel-item-4 {
  background-image: url("images/responsive-design-img.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.carousel-btn {
  position: absolute;
  z-index: 2;
  top: 50%;
  transform: translateY(-50%);
  /* death center 
  width: 1em;
  height: 2em;
  background: var(--color-dark);
  opacity: .9;
  color: var(--color-bright);
  font-weight: var(--fw-bold);
  font-size: var(--fs-800);
  border: none;
  cursor: pointer;
}

.carousel-btn-previous {
  left: 3rem;
  /* position on the left 
}

.carousel-btn-next {
  right: 3rem;
  /* position on the right 
}

.carousel-item:focus,
.carousel-item:hover,
.carousel-item:active {
  transform: scale(1.2);
  transition: transform .75s ease;
}

 carousel END */


/* PROJECTS PAGE END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ABOUT ME PAGE START*/

.about-me-main {
  margin: 5em 2em;
  padding: 1em;
  display: grid;
  grid-template-columns: 2fr 2fr;
  gap: 3rem;
  /*background-image: linear-gradient(
    to left,
    var(--color-neutral),
    var(--color-bright));
    background-size: 300% 300%;
    animation: bgChange 3s ease infinite; */
}

.card-container {
  width: 100%;
  height: 16em;
  position: relative;
  transform-style: preserve-3d;
  /* without it it will just mirror the frontside after rotation */
  transition: .8s;
}

.card-container:focus,
.card-container:hover,
.card-container:active {
  transform: rotateY(.5turn);
  /* rotate on hover */
}

.card-front,
.card-back {
  width: 100%;
  height: 15em;
  padding: .5em;
  text-align: center;
  position: absolute;
  background: var(--color-dark);
}

.card-front {
  border: 10px solid var(--color-dark);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* will keep side hidden after rotation */
  transform: rotateX(0);
}

.card-back {
  overflow: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* will keep side hidden after rotation */
  transform: rotateY(.5turn);
  /* sends card to the back */
}

.card-back>h3 {
  border-bottom: 1px solid var(--color-bright);
  color: var(--color-neutral);
  font-size: var(--fs-secondary-heading);
  font-weight: var(--fw-bold);
  letter-spacing: .2em;
}

.card-back>p {
  padding-top: 1em;
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
}

.card-back>p>a {
  color: var(--color-neutral);
}

.card-back>p>a:focus,
.card-back>p>a:hover,
.card-back>p>a:active {
  border-bottom: 2px solid var(--color-neutral);
}

.card-front-1 {
  background-image: url("images/ale-profile2.png");
}

.card-front-2 {
  background-image: url("images/ale-childhood.jpg");
}

.card-front-3 {
  background-image: url("images/alex-bball.jpeg");
}

.card-front-4 {
  background-image: url("images/with-pups.jpg");
}

.exp-wrapper {
  margin: 2em auto;
  padding: 3em;
  width: 90%;
  display: grid;
  place-items: center;
  grid-template-columns: repeat(4, 1fr);
  grid-template-areas:
    "one two three four";
  gap: 1em;
  border-top: .25em solid var(--color-neutral);
}

.exp-item-wrapper {
  width: 100%;
  padding: .5em;
  display: grid;
  place-items: center;
  text-align: center;
}

.exp-item-title {
  padding-bottom: .5em;
  letter-spacing: .25em;
  font-size: var(--fs-500);
  font-weight: var(--fw-bold);
  color: var(--color-dark);
  text-shadow: 1px 1px 2px var(--color-bright),
    -1px -1px 2px var(--color-neutral);
}

.exp-item-wrapper>p {
  letter-spacing: .15em;
  padding: .5em;
  text-align: center;
}

.exp-item:focus,
.exp-item:hover,
.exp-item:active {
  animation: bounce 2s ease infinite;
}

@keyframes bounce {
  /* animation for about me icons */

  0% {
    transform: translateY(0%);
  }

  10% {
    transform: translateY(-10%);
  }

  20% {
    transform: translateY(0%);
  }

  30% {
    transform: translateY(-20%);
  }

  40% {
    transform: translateY(0%);
  }

  50% {
    transform: translateY(-10%);
  }

  60% {
    transform: translateY(0%);
  }

  70% {
    transform: translateY(-20%);
  }

  80% {
    transform: translateY(0%);
  }

  90% {
    transform: translateY(-10%);
  }

  100% {
    transform: translateY(0%);
  }

}

.exp-item {
  object-fit: contain;
  background-repeat: no-repeat;
}

.exp-item-1 {
  grid-area: one;
}

.exp-item-2 {
  grid-area: two;
}

.exp-item-3 {
  grid-area: three;
}

.exp-item-4 {
  border-left: 2px solid var(--color-neutral);

  grid-area: four;
}

@media screen and (min-width: 80em) {
  .about-me-main {
    margin: 5em 2em;
    display: grid;
    grid-template-columns: 4fr 4fr 4fr 4fr;
    gap: 2rem;
  }

  .exp-wrapper {
    grid-template-areas:
      "one two three four";
  }

}

@media screen and (min-width: 50em) and (max-width: 79.9em) {
  .about-me-main {
    margin: 5.5em 2em;
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 2rem;
  }

  .exp-item-4 {
    font-size: var(--fs-400);
  }

}

@media screen and (min-width: 30em) and (max-width: 49.9em) {
  .about-me-main {
    margin: 6em 2em;
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .card-back>p {
    padding-top: 1em;
    font-size: var(--fs-500);
    font-weight: var(--fw-light);
  }

  .exp-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    grid-template-areas:
      "one"
      "two"
      "three"
      "four";
  }

  .exp-item-4 {
    border-top: 2px solid var(--color-neutral);
    border-left: none;
  }

}

@media screen and (max-width: 29.9em) {
  .about-me-main {
    margin: 6em 1em;
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .card-back>h3 {
    font-size: var(--fs-450);
  }

  .card-back>p {
    padding-top: 1em;
    font-size: var(--fs-400);
    font-weight: var(--fw-light);
  }

  .exp-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    grid-template-areas:
      "one"
      "two"
      "three"
      "four";
  }

  .exp-item-4 {
    border-top: 2px solid var(--color-neutral);
    border-left: none;
  }

}

/* ABOUT ME PAGE END */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* ------------------------------------------ */
/* CONTACT ME PAGE START*/

.form-container {
  margin: 5em auto;
  padding: 1em;
  width: 50%;
  overflow: auto;
  flex-direction: column;
  background: var(--color-dark);
  text-transform: uppercase;
  letter-spacing: 2px;
}

.form-contact {
  width: 65%;
  margin-bottom: .5em;
  border: none;
}

input[type=text],
input[type=email],
textarea {
  padding: .25em .5em;
}

textarea {
  height: 20vh;
  resize: none;
}

.form-btn {
  height: 7vh;
  border: none;
  text-transform: uppercase;
  letter-spacing: 2px;
  cursor: pointer;
}

.form-btn:focus,
.form-btn:hover,
.form-btn:active {
  background: var(--color-bright);
  color: var(--color-light);
  transform: scale(1.05);
  transition: transform 750ms ease-in-out;
}

hr {
  width: 85%;
  margin-top: .25em;
}

.contact-socials li {
  margin: 1em 1em -1em;
  font-size: var(--fs-400);
  list-style-type: none;
  letter-spacing: 5px;
}

@media screen and (min-width: 50em) and (max-width: 79.9em) {

  .form-container {
    margin: 4em auto;
    width: 70%;
    height: 80%;
  }

  .form-contact {
    width: 50%;
  }

  .contact-socials li {
    margin: 1em 1em -.75em;
    font-size: var(--fs-400);
  }

}

@media screen and (min-width: 30em) and (max-width: 49.9em) {

  .form-container {
    margin: 6em auto;
    width: 95%;
  }

  .form-contact {
    width: 80%;
  }

  .form-btn {
    height: 2em;
  }

  .contact-socials li {
    margin: 1em .5em -.5em;
    font-size: var(--fs-400);
  }

}

@media screen and (max-width: 29.9em) {

  .form-container {
    margin: 6em auto;
    width: 85%;
  }

  .form-contact {
    width: 70%;
  }

  .contact-socials li {
    margin: .5em .25em -.25em;
    font-size: var(--fs-300);
  }

  .contact-socials {
    display: grid;
    gap: 1em;
    grid-template-areas:
      "one two"
      "three four";
  }

  .contact-socials-1 {
    grid-area: one;
  }

  .contact-socials-2 {
    grid-area: two;
  }

  .contact-socials-3 {
    grid-area: three
  }

  .contact-socials-4 {
    grid-area: four;
  }

}

/* CONTACT ME PAGE END*/