@import url("https://fonts.googleapis.com/css2?family=Rajdhani:wght@300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200;300;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lobster&display=swap");

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

:root {
  /* ----------FONTS----------- */
  --font-logo: "Lobster", cursive;
  --font-nav: "Rajdhani", sans-serif;
  --font-body: "Oswald", sans-serif;

  /* ----------FONT COLORS----------- */

  /* ----------THEME COLORS----------- */
  --darker-blue: #071a52;
  --dark-blue: #142850;

  --darker-light-blue: #27496d;
  --dark-light-blue: #086972;
  --light-blue: #00909e;
  --neon-blue: #099fff;
  --lighter-light-blue: #00a8cc;

  --darker-light-green: #17b978;
  --dark-light-green: #1eb99b;
  --neon-green: #00ff33;
  --light-green: #6aff2e;

  --neon-purple: #9900ff;

  --white: #dae1e7;
  --gray: #252829;
  --black: #343a40;

  /* BOX SHADOw */
  --dark-box-shadow: 0 25.6px 57.6px 0 rgb(0 0 0 / 22%),
    0 4.8px 14.4px 0 rgb(0 0 0 / 18%);

  --dark-card-shadow: 0 25.6px 57.6px 0 rgb(0 0 0 / 22%),
    0 4.8px 14.4px 0 rgb(0 0 0 / 80%);

  --dark-box-inside: inset 1px 1px 40px 0 rgba(0, 0, 0, 0.45);

  /* ----------THEME GRADIENTS----------- */
  --dark-blue-gradient: linear-gradient(90deg,
      #36bfa6 0%,
      #086972 50%,
      #132263 100%);

  --dark-light-blue-gradient: linear-gradient(90deg,
      #132263 0%,
      #086972 50%,
      #36bfa6 100%);

  --black-glass-gradient: linear-gradient(147deg,
      #1c1c1c 0%,
      #1d1d1d 74%,
      #1c1c1c 100%);

  /* ----------SIZES----------- */
  /* MOBILE NAV */
  --size-logo-nav: clamp(2rem, 4vw + 0.25rem, 2.25rem);
  --size-nav: clamp(0.5rem, 4vw + 0.3rem, 1.5rem);

  /* MOBILE MODAL */
  --size-modal: clamp(0.3rem, 3vw + 0.3rem, 0.8rem);

  /* MOBILE ABOUT */
  --size-title: clamp(1rem, 3vh + 0.5rem, 3rem);
  --size-subtitle: clamp(0.8rem, 3vh + 0.5rem, 1.1rem);
  --size-header: clamp(0.6rem, 3vh + 0.5rem, 0.8rem);
  --size-subheader: clamp(0.6rem, 3vh + 0.5rem, 1rem);
  --size-cards: clamp(1rem, 3vw + 1rem, 1.2rem);

  /* MOBILE EXPERIENCE */
  --size-experience-header: clamp(1rem, 3vw + 1rem, 1.2rem);
  --size-experience-role: clamp(0.4rem, 2vw + 0.2rem, 1.2rem);
  --size-experience-place: clamp(0.4rem, 3vw + 0.2rem, 0.8rem);
  --size-experience-description: clamp(0.8rem, 1vw + 0.3rem, 1.5rem);

  /* MOBILE SKILLS */
  --size-skills-title: clamp(1rem, 3vw + 1rem, 1.4rem);
  --size-skills-header: clamp(0.6rem, 1vw + 0.6rem, 1rem);
  --size-skills-subheader: clamp(0.4rem, 3vw + 0.5rem, 0.8rem);
  --size-skills-icons: clamp(0.4rem, 1vh + 1rem, 1.5rem);
  --size-skills-png-icons: clamp(25px, 1vh + 10px, 150px);

  /* MOBILE PROJECTS */
  --size-projects-title: clamp(1rem, 3vw + 1rem, 1.4rem);
  --size-projects-header: clamp(0.7rem, 1vw + 0.5rem, 1rem);
  --size-projects-description: clamp(0.5rem, 3vw + 1rem, 1rem);
  --size-projects-links: clamp(0.4rem, 1vw + 0.5rem, 1rem);

  /* MOBILE RESOURCES */
  --size-resources-header: clamp(1rem, 3vw + 1rem, 1.4rem);
  --size-resources-tabs: clamp(0.5rem, 1vw + 0.5rem, 0.8rem);
  --size-resources-title: clamp(0.8rem, 1vw + 0.3rem, 1rem);
  --size-resources-description: clamp(0.7rem, 1vw + 0.3rem, 1rem);
  --size-resources-link: clamp(1rem, 3vw + 1rem, 2rem);

  /* MOBILE CONTACT */
  --size-contact-header: clamp(1rem, 3vw + 1rem, 1.4rem);
  --size-contact-muted: clamp(0.8rem, 1vh + 0.3rem, 1rem);

  --size-about-circle: clamp(2rem, 2vw + 4rem, 5rem);
  --size-about-icons: clamp(1rem, 4vw + 2rem, 4rem);

  --size-container: min(6rem, 6vh + 2rem);
  --size-about-me-cards: clamp(65px, 5vw + 50px, 25%);

  /* ----------NAV CONTAINERS COLORS----------- */

  /* ----------MIDDLE SECTION CONTAINERS COLORS----------- */

  /* ----------FOOTER CONTAINERS COLORS----------- */
}

@media only screen and (min-width: 768px) {
  :root {
    /* WEB NAV */
    --size-logo-nav: clamp(1rem, 2vw + 1rem, 5rem);
    --size-nav: clamp(0.5rem, 0.4vw + 1rem, 2rem);

    --size-social-icons-floating: clamp(1rem, 2vw + 1.2rem, 2rem);

    /* WEB MODAL */
    --size-modal: clamp(0.8rem, 3vw + 1rem, 1.2rem);

    /* WEB ABOUT */
    --size-title: clamp(2rem, 3vh + 2rem, 4rem);
    --size-subtitle: clamp(1.2rem, 2vh + 1rem, 1.5rem);
    --size-header: clamp(1rem, 3vh + 0.2rem, 1.2rem);
    --size-subheader: clamp(0.8rem, 1vh + 0.4rem, 1rem);
    --size-about-icons: clamp(2rem, 2vw + 1.5rem, 4rem);
    --size-about-icons-description: clamp(0.8rem, 1vh + 0.4rem, 1rem);
    --size-about-social-icons: clamp(0.8rem, 2vh + 0.3rem, 1.5rem);
    --size-about-sicla-icons-min-width: 3rem;


    /* WEB EXPERIENCE */
    --size-experience-header: clamp(0.8rem, 3vw + 0.3rem, 1.6rem);
    --size-experience-role: clamp(0.7rem, 1vw + 0.24rem, 1.5rem);
    --size-experience-place: clamp(0.3rem, 1vh + 0.5rem, 1.2rem);
    --size-experience-description: clamp(0.8rem, 1vw + 1rem, 1rem);
    --size-icons: clamp(1rem, 4vw + 2rem, 4rem);

    /* WEB SKILLS */
    --size-skills-title: clamp(0.8rem, 3vw + 1rem, 1.8rem);
    --size-skills-header: clamp(0.8rem, 3vw + 0.3rem, 1.2rem);
    --size-skills-subheader: clamp(1rem, 1vw + 1rem, 1.2rem);
    --size-skills-icons: clamp(0.8rem, 2vh + 1rem, 2rem);
    --size-skills-png-icons: clamp(15px, 1vh + 25px, 40px);

    /* WEB PROJECTS */
    --size-projects-title: clamp(0.8rem, 3vw + 1rem, 2rem);
    --size-projects-header: clamp(0.8rem, 3vw + 1rem, 1.2rem);
    --size-projects-description: clamp(1rem, 1vw + 1rem, 1.2rem);
    --size-projects-links: clamp(0.5rem, 1vw + 1rem, 1rem);

    /* WEB RESOURCES */
    --size-resources-header: clamp(0.8rem, 3vw + 1rem, 2rem);
    --size-resources-tabs: clamp(0.8rem, 3vw + 1rem, 1.2rem);
    --size-resources-title: clamp(1rem, 1vw + 1rem, 1.2rem);
    --size-resources-description: clamp(0.6rem, 1vw + 1rem, 1rem);
    --size-resources-link: clamp(1rem, 1vw + 1rem, 2rem);

    /*WEB CONTACT ME */
    --size-contact-header: clamp(0.8rem, 3vw + 1rem, 2rem);


    --size-container: min(15rem, 12vh + 6rem);
  }
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
  background-color: #252829;
  padding: 0;
  margin: 0;
  font-family: "Roboto", sans-serif;
  color: white;
  overflow: hidden;
  height: 100%;
  width: 100%;
}

#masterWrap {
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
}

#panelWrap {
  height: 100%;
}

section {
  justify-content: center;
  height: 100%;
  display: flex;
  align-content: center;
  flex-direction: column;
  align-items: center;
  position: relative;
  float: left;
}

.dot {
  width: 12px;
  height: 12px;
  border-radius: 100%;
  position: relative;
  background-color: #fff;
  margin: 12px 8px;
  cursor: pointer;
  box-shadow: var(--dark-box-shadow);
  float: left;
}

.dots {
  position: absolute;
  z-index: 100;
  left: 50%;
  bottom: 16px;
}

#leftArrow {
  left: 2px;
}

#rightArrow {
  right: 2px;
}

.arrow {
  position: absolute;
  z-index: 100;
  top: 50%;
  cursor: pointer;
  opacity: 0.75;
  width: 25px;
  height: 25px;
  stroke-width: 8px;
  stroke: var(--neon-green);
  border: 3px solid var(--neon-green);
  border-radius: 50%;
  fill: transparent;
}

.titleWrap {
  height: 30px;
  position: absolute;
  z-index: 20;
  bottom: 50px;
  left: 50%;
  overflow-y: hidden;
}

.title {
  font-family: 'Courier New', Courier, monospace;
  font-size: var();
  height: 30px;
  line-height: 30px;
  text-align: center;
}

.hideMe {
  opacity: 0;
}

.icon svg {
  width: 50px;
  height: 50px;
  margin: 6px 0;
  overflow: visible;
}

.hidden {
  display: none;
}

/* ************************* MODAL SECTION ******************* */
#myModal {
  height: 100%;
  font-family: var(--font-family-monospace);
  font-weight: 100;
}

.modal-dialog {
  height: 100%;
}

.modal-content {
  -webkit-box-shadow: inset 0px 0px 0px 2px var(--neon-green);
  -moz-box-shadow: inset 0px 0px 0px 2px var(--neon-green);
  box-shadow: inset 0px 0px 0px 2px var(--neon-green);
  color: var(--white);
  height: auto;
  background: var(--black-glass-gradient) !important;
}

.modal-open .modal {
  overflow-y: hidden !important;
}

.modal-header {
  max-height: 36rem;
  font-size: var(--size-modal);
  display: inline-block !important;
}

.modal-header .float-left {
  width: 50% !important;
}

.modal-header+div {
  width: 100%;
}

.modal-header img {
  width: 95%;
  border-radius: 15px 35px;
}

.modal-header.modal-title {}

.modal-body {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
  flex-direction: row;
  align-content: flex-end;
}

.modal-body>p {
  flex: 0 1 50%;
}

#myModal .close {
  color: var(--white);
  font-size: 45px;
}

#myModal .close:hover {
  color: var(--neon-green);
}

.modal-body>a {
  text-transform: uppercase;
  color: var(--neon-green) !important;
}

.modal-body>a:hover {
  text-decoration: none;
}

.modal-body>a {
  -webkit-appearance: none;
  display: inline-block;
  outline: 0;
  border: 0;
  cursor: pointer;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
  will-change: box-shadow, transform;
  background: transparent;
  box-shadow: 0px 2px 4px rgb(45 35 66 / 40%), 0px 7px 13px -3px rgb(45 35 66 / 30%), inset 0px -3px 0px #d6d6e7;
  height: 35px;
  padding: 0 15px;
  font-size: 18px;
  border-radius: 6px;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.modal-body>a:hover {
  box-shadow: 0px 4px 8px rgb(45 35 66 / 40%), 0px 7px 13px -3px rgb(45 35 66 / 30%), inset 0px -3px 0px var(--neon-green);
  transform: translateY(-2px);
}

.modal-body>a:active {
  box-shadow: inset 0px 3px 7px #d6d6e7;
  transform: translateY(2px);
}

@media only screen and (min-width: 786px) {
  .modal-content {}

  .modal-dialog {
    max-width: 56rem !important;
  }

  .modal-header .float-left {
    max-width: 28% !important;
  }

  #myModal .close {
    color: var(--white);
    font-size: 50px;
  }
}


/* ************************* END MODAL SECTION ******************* */

/* ************************* START SOCIAL ICONS FLOATING MAIN SECTION ******************* */
.social-icons-floating {
  opacity: 0;
  position: absolute;
  z-index: 99;
  right: 0;
  bottom: 0;
  transition: all 0.2s ease-in-out;
}

#floating-button {
  width: 1.5rem;
  height: 3.5rem;
  opacity: 1;
  border: 3px solid var(--neon-green);
  background-color: var(--black) !important;
  padding: 12px 6px;
  transition: all 0.2s ease-in-out;
  list-style-type: none;
  color: var(--neon-green);
}

#floating-button+.dropdown-menu {
  background-color: transparent;
  transition: all 0.2s ease-in-out;
}

#floating-button+.dropdown-menu.show {
  display: inline-flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  /* padding: 1%; */
  height: 100%;
  margin: 0px 8px !important;
  transition: all 0.2s ease-in-out;
  transform: none !important;
}

#floating-button+.dropdown-menu .dropdown-item {
  color: var(--white);
  padding: 5px 9px;
  background-color: #343a40;
  /* height: 100%; */
}

#floating-button+.dropdown-menu .dropdown-item:hover {
  border: 2px solid var(--neon-green);
}

#floating-button+.dropdown-menu .dropdown-item i {
  margin-top: 1rem;
}

.social-icons-floating .social-icon:hover {
  background-color: var(--neon-green);
}

.social-icons-floating>.row {
  flex-direction: row;
}

/* ************************* START SOCIAL ICONS FLOATING MEDIA SECTION ******************* */

@media only screen and (min-width: 768px) {
  .section-main-content {
    /* height: clamp(70%, 75%, 85%); */
  }

  .social-icons-floating {
    right: -0.6%;
    bottom: -4%;
  }

  #floating-button {
    width: 2rem;
    height: 5rem;
  }

  #floating-button+.dropdown-menu .dropdown-item {
    padding: 18px 9px;
  }


  #panels-container>div>div>a>i {
    font-size: var(--size-social-icons-floating);
  }
}

/* ************************* END SOCIAL ICONS FLOATING MEDIA SECTION ******************* */
/* ************************* END SOCIAL ICONS FLOATING MAIN SECTION ******************* */