/*-> Global variables and fonts*/
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;1,100;1,200;1,300;1,400;1,500;1,600;1,700&display=swap');

:root {
  /*~ Fonts */
  --main-font: 'IBM Plex Sans', sans-serif;
  --secondary-font: 'IBM Plex Mono', monospace;
  /*~ colors */
  --color-bg-clippath: #0000ec;
}

/*-> Mobile first + General styles + Normalize*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'IBM Plex Sans', sans-serif;
}
html {
  scroll-behavior: smooth;
}
body {
  width: 100vw;
  overflow-x: hidden;
}
.content-wrapper {
  width: 90%;
  max-width: 1440px;
  margin: 0 auto;
  overflow: hidden;
}
.clip-path-background {
  position: absolute;
  width: 100vw;
  height: 100%;
  background-color: blue;
}
span.dot {
  color: blue;
  animation: textheartbeat 1s infinite;
}
h1 {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 2.2rem;
  color: #060a24;
  font-weight: normal;
}
p {
  font-family: 'IBM Plex Mono', monospace;
  font-size: 0.85rem;
  color: #060a24;
  line-height: 22px;
}

/*->320px Navbar styles */
nav {
  /*~ position */
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1;
  /*~ background */
  background-color: white;
}
nav > div {
  /*~ position & dimensions*/
  position: relative;
  top: 0;
  /*~ flex properties */
  display: flex;
  align-items: center;
  justify-content: space-between;
  /*~ dimensions */
  padding: 25px 0;
  height: 6vh;
  /*~ colors */
  transition: all 0.3s ease-out;
  width: 90%;
  max-width: 1600px;
  margin: 0 auto;
}

/* Mouse efect when mouse is over the logo icon */
nav div a img:hover {
  transform: scale(1.1);
  transition: all 0.3s ease-in;
}
.menu-desplazable {
  position: fixed;
  z-index: 10;
  right: 0;
  width: 100%;
  top: 8vh;
  background-color: var(--color-bg-clippath);
  cursor: pointer;
  transform: translate(100%);
  transition: all 0.4s ease;
}
.menu-desplazable ul {
  display: flex;
  flex-direction: column;
  width: 100%;
  list-style: none;
}
.menu-desplazable ul li a {
  position: relative;
  display: flex;
  height: 100%;
  padding: 6% 5%;
  color: white;
  text-decoration: none;
}
.menu-desplazable ul li a:hover {
  text-decoration: line-through;
  font-weight: 500;
}
.menu-desplazable ul li a:active {
  text-decoration: line-through;
  color: rgba(6, 10, 36, 0.56);
}
.menu-desplazable ul li a:visited {
  /* see https://developer.mozilla.org/en-US/docs/Web/CSS/Privacy_and_the_:visited_selector */
  /* text-decoration: line-through; */
  color: palevioletred;
}
/* Deslizable menu animation */
/*see  https://stackoverflow.com/questions/26449590/make-css-pseudoelement-before-same-height-as-main-element*/
.menu-desplazable ul li a:before {
  position: absolute;
  content: '';
  top: 0;
  bottom: 0;
  right: 0;
  width: 0%;
  background-color: rgba(255, 255, 255, 0);
  transition: all 0.3s ease-out;
}
.menu-desplazable ul li a:hover:before {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.4);
  transition: all 0.3s ease-in;
}

/*->320px Main container styles*/
/* main { */

/* } */

/*->320px Header styles */
/* header{

} */
header div.content-wrapper {
  padding: 24px 0;
}
header h1 {
  max-width: 80%;
}
header p {
  visibility: visible;
  margin-top: 1rem;
  max-width: 100%;
}
header p:before {
  visibility: hidden;
  content: 'El portal de podcasts que explora el mundo de la programación y la tecnología. Nuevos episodios, todos los jueves cada 15 días.';
  position: absolute;
}
.button-position {
  margin: 36px auto 0;
}

/*->320px Episodes section styles */
section.episodes {
  position: relative;
}
section.episodes .clip-path-background {
  clip-path: polygon(0% 3%, 100% 0, 100% 97%, 0% 100%);
}
section.episodes .content-wrapper {
  position: relative;
  padding-top: 20%;
}
section.episodes .content-wrapper h1 {
  color: white;
  margin: 0 0 20px;
}
section.episodes .episodes-container {
  /* ~position */
  position: relative;
  /* ~Display and flex */
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  /* ~Margin and padding */
  width: 90%;
  margin: 0 auto;
  max-width: 1600px;
  padding-bottom: 30%;
}
.episode-iframe {
  /* visibility: hidden; */
  width: 100%;
  margin: 2% 0;
}

/*->320px History section styles */
section.history {
  margin-bottom: 54px;
}
section.history img {
  /* ~position & dimensions*/
  position: relative;
  width: 320px;
  /* display*/
  display: block;
  /* ~Margin & Padding */
  margin: -80px auto 0;
}
section.history p {
  text-align: justify;
}

/*->320px Stellar guests section styles */
/* section.stellar-guests {
} */
section.stellar-guests .images-container {
  position: relative;
  /* ~Display & Flex */
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  /* ~Margin & Padding */
  margin: 20px 0 50px;
  /* ~Background */
  /* background-color: blanchedalmond; */
}
section.stellar-guests .images-container img {
  width: 100%;
}

/*->320px  Our topics section styles */
/*~ section.our-topics {
}*/
.cards-container {
  display: flex;
  flex-flow: wrap column;
  align-content: center;
}
.card-wrapper {
  display: inline-block;
  text-align: center;
  width: 250px;
  margin: 30px 0;
}
.card-image {
  transform: scale(1);
  transition: all 0.3s ease-in-out;
}
.card-image:hover {
  transform: scale(1.05);
  transition: all 0.2s ease-in-out;
}
.card-text {
  display: block;
  font-weight: 600;
  font-size: 24px;
  color: #060a24;
  letter-spacing: 0;
  text-align: center;
}

/*->320px Last novelties styles */
section.last-novelties {
  position: relative;
}
section.last-novelties .clip-path-background {
  clip-path: polygon(0% 10%, 100% 0, 100% 100%, 0% 100%);
}
section.last-novelties .content-wrapper {
  position: relative;
  padding: 20% 0 20% 0;
}
section.last-novelties h1 {
  text-align: center;
  color: white;
  margin: 0 5% 20px;
}

/*->320px Footer styles */
footer {
  display: flex;
  flex-direction: column;
  justify-content: space-between;

  padding: 8% 8%;
  text-align: center;

  width: 90%;
  margin: 0 auto;
  max-width: 1600px;
}
footer p {
  font-size: 12px;
  color: #060a24;
  letter-spacing: 1.2px;
  line-height: 3rem;
}
footer div.icons {
  display: flex;
  justify-content: space-between;
}
footer div.icons a {
  color: black;
  transition: all 0.5s ease-out;
  transform: scale(1);
}
footer div.icons a:hover {
  color: blue;
  transition: all 0.2s ease-in;
  transform: scale(1.2);
}

/*-> MEDIA QUERIES START FROM HERE */
/*see https://getflywheel.com/layout/css-breakpoints-responsive-design-how-to/ */
/*see https://dev.to/rstacruz/what-media-query-breakpoints-should-i-use-292c */

/*-- smartphones, portrait iPhone, portrait 480x320 phones (Android) */
/*-- @media (min-width: 320px) {} */

/*->480px: smartphones, Android phones, landscape iPhone */
@media (min-width: 480px) {
  /*->480px Navbar */
  .menu-icon-container {
    display: none;
  }
  .menu-desplazable {
    position: relative;
    top: 0vh;
    transform: translate(0%);
    background-color: transparent;
  }
  .menu-desplazable ul {
    flex-direction: row;
  }
  .menu-desplazable ul li a {
    margin-left: 10px;
    padding: 0;
    color: #060a24;
  }
  .menu-desplazable ul li a:before {
    display: none;
  }
  /*->480px Header */
  header {
    padding: 24px 0;
  }
  header h1 {
    max-width: 100%;
  }
  /*->480px Episodes section*/
  /* section.episodes .episodes-container {
    padding-bottom: 30%;
  }
  section.episodes .content-wrapper {
    padding-top: 20%;
  } */
  /*->480px Our topics*/
  .cards-container {
    display: flex;
    flex-flow: wrap row;
    justify-content: space-evenly;
  }
  .card-wrapper {
    width: 200px;
  }

  /*->480px Footer*/
  footer p {
    font-size: 16px;
    letter-spacing: 1.2px;
    line-height: 3rem;
  }
  footer div.icons {
    font-size: 20px;
  }
}

/*-- portrait tablets, portrait iPad, e-readers (Nook/Kindle), landscape 800x480 phones (Android) */
/*-- @media (min-width: 640px) {} */

/*->768px: tablet, landscape iPad, lo-res laptops ands desktops */
@media (min-width: 768px) {
  /*->768px Header */
  header {
    padding: 100px 0 16px 0;
  }
  header h1 {
    font-size: 2.8rem;
  }
  header p {
    visibility: hidden;
  }
  header p:before {
    visibility: visible;
    max-width: 68%;
  }
  header .custom-button {
    margin: 36px 0;
  }
  /*->768px Navbar*/
  .menu-desplazable ul li a {
    margin-left: 48px;
  }
  /*->768px Episodes section styles */
  section.episodes .content-wrapper {
    padding-top: 20%;
  }
  section.episodes .episodes-container {
    padding-bottom: 20%;
  }
  section.episodes .clip-path-background {
    clip-path: polygon(0% 10%, 100% 0, 100% 90%, 0% 100%);
  }
  .episode-iframe {
    width: 47%;
    margin: 1% 0;
  }
  /*->768px History*/
  section.history {
    padding: 100px 0;
    margin-top: -100px;
  }

  section.history .content-wrapper {
    display: inline-block;
    position: relative;
    width: 35%;
    left: 50%;
  }
  section.history img {
    position: absolute;
    left: 7%;
  }

  /*->768px Stellar guests*/
  section.stellar-guests .images-container img {
    width: 50%;
  }
  /*->768px Our topics*/
  .card-wrapper {
    width: 250px;
  }
  /*->768px Last novelties*/
  section.last-novelties .content-wrapper {
    padding: 20% 0 15% 0;
  }
  section.last-novelties .clip-path-background {
    clip-path: polygon(0% 25%, 100% 0, 100% 100%, 0% 100%);
  }
  /*->768px Footer*/
  footer {
    flex-direction: row;
    align-items: center;

    padding: 4% 4%;
  }
  footer p {
    font-size: 18px;
    letter-spacing: 1.2px;
    line-height: 3rem;
  }
  footer div.icons {
    width: 30%;
    font-size: 20px;
  }
}

/*->1024px(992 is also used): big landscape tablets, laptops, and desktops */
@media (min-width: 1024px) {
  /*->1024px General*/
  .content-wrapper {
    width: 80%;
  }
  /*->1024px Navbar*/

  /*->1024px Navbar */
  .menu-desplazable ul li a {
    margin-left: 48px;
  }
  /*->1024px Header */
  header {
    /* padding: 130px 0 16px 0; */
  }
  header h1 {
    font-size: 3.5rem;
  }
  header p {
    visibility: hidden;
  }
  header p:before {
    visibility: visible;
    max-width: 52%;
  }
  header .custom-button {
    margin: 72px 0;
  }
  /*->1024px Episodes section styles */
  section.episodes .content-wrapper {
    padding-top: 10%;
  }
  section.episodes .episodes-container {
    padding-bottom: 10%;
  }
  .episodes-container h1 {
    margin: 0 10% 20px;
  }
  /* section.episodes .clip-path-background {
    clip-path: polygon(0% 12%, 100% 0, 100% 88%, 0% 100%);
  } */
  /*->1024px History*/
  section.history img {
    left: 20%;
  }

  /*->1024px Stellar guests*/
  section.stellar-guests {
    margin-top: 140px;
  }
  section.stellar-guests .images-container img {
    width: 33%;
  }
  /*->1024px Our topics*/
  .card-wrapper {
    width: 200px;
  }
  /*->1024px Last novelties*/
  section.last-novelties .content-wrapper {
    padding: 15% 0 10% 0;
  }
  /* section.novelties .clip-path-background {
    clip-path: polygon(0% 10%, 100% 0, 100% 0, 0% 100%);
  } */
}

/*->1366px hi-res laptops and desktops */
@media (min-width: 1440px) {
  /*->1366px Episodes section styles */
  header p:before {
    visibility: visible;
    max-width: 36%;
  }
}

/*->1440px hi-res laptops and desktops */
@media (min-width: 1440px) {
  /*->1440px Episodes section styles */
}
