* {
    box-sizing: border-box;
}

* {
    list-style: none;
    padding: 0;
    margin: 0;
}

h1 {

    text-align: center;
    font-weight: 700;
    margin-bottom: .5em;
    text-transform: uppercase;
    font-size: 2.3em;
}

h2 {
    color: #481f46;
    margin-top: 1em;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 2em;
}

h3 {
    color: #481f46;
    margin-bottom: 3em;
    text-align: center;
    font-weight: 700;
    font-size: 1em;
}

body {
    font-family: "Roboto", sans-serif;
    background-color: #eeddfa;
    margin: 0%;
}

/* HEADER --------------------------- */

header{
    background-color: #481f46;
    color: white;
    height: 5rem;
    box-shadow: 0 4px 2px hsla(297, 91%, 71%, 0.25);
    position: sticky;
    top: 0;
    z-index: 8000;
  }
/* ----
   menu
   ---- */
   .menu-btn {
    background: #481f46;
    border-radius: 50%;
    box-shadow: -5px 5px 5px hsla(290, 95%, 17%, 0.2);
    padding: .75rem;
    width: 3rem;
    aspect-ratio: 1;
    cursor: pointer;
    transition: all 0.3s ease-out;
    position: fixed;
    top: 1em;
    right: 1em;
    z-index: 9000;
  }
  
  .menu-btn .btn-linea {
    width: 25px;
    height: 3px;
    margin: 4px 0 4px 0;
    background: hsl(0 0% 90%);
    transition: all 0.3s ease-out;
    position: relative;  
  }
  /* cada barra, transformacion para formar la "X" */
  .menuVisible .menu-btn .btn-linea {
    transform: rotate(180deg);
  }
  /* Las tres barras para formar la "X" */
  .menuVisible .menu-btn .btn-linea:nth-child(1) {
    transform: rotate(45deg) translate(4px, 6px);
  }
  .menuVisible .menu-btn .btn-linea:nth-child(2) {
    opacity: 0;
  }
  .menuVisible .menu-btn .btn-linea:nth-child(3) {
    transform: rotate(-45deg) translate(4px, -6px);
  }
  
  /* menú propiamente dicho */
  nav ul {
    background-color: #481f46;
    display: grid;
    place-items: center;
    place-content: center;
    position: fixed;
    inset: 0;
    z-index: 8000;
    translate: 100%;
    transition: all .6s ease;
  }
  
  /* el menu cuando "nav" tiene la clase "menuVisible" */
  .menuVisible ul {
    background-color: #764a7e;
    transition: all .4s ease;
    translate: 0;
  }
  
  /* cada vínculo del menu */
  nav ul li a {
    border-bottom: solid;
    border-color: #5c1f7d;
    color: #debade;
    font-weight: 700;
    font-size: em;
    display: block;
    font-size: 1.5rem;
    margin-block-end: .5rem;
    width: min(70vw, 20rem);
    text-align: center;
    padding: .5rem;
    text-decoration: none;
  }

  nav ul li{
    margin-bottom: 2rem;
  }
  
  nav ul li a:hover {
    border-bottom: solid 3px hsla(301, 72%, 87%, 0.5);
    transition: all .3s;
  }

  .contenedora {
    display: flex;           
    align-items: center;   
    justify-content: space-between; 
    padding: 0 1em;          
  }
  
  #logo {
    display: flex;
    align-items: center;     
  }
  
  #logo img {
    max-width: 80px;       
    height: auto;
  }
  
  /* --------------------------
     media queries,
     para cambiar la apariencia
     en la medida en que el
     navegador se ensancha
     (mobile first)
     -------------------------- */
  
  @media(min-width: 992px) {
  
    header nav {
      position: relative; 
    }

      
    .menu-btn {
      display: none;
    }
  
    /* menu visible */
    header nav ul,
    header .menuVisible ul {
      display: flex;
      gap: 2em;
      justify-content: flex-end;
      margin-right: 3em;
      position: relative; 
      translate: 0;
      background-color: #481f46;
    }
      
    header nav ul li {
      min-width: 4em; 
    }
  
    header nav ul li a {
      background-color: #241932;
      border-radius: 3em ;
      color: white;
      font-size: 1rem;
      width: auto;
      padding: .25em 1em;
      text-align: center;
      display: block; 
      margin-top: 1.3em;
      margin-block-end: unset;
      border-block-end: unset;
    }
    
    header nav ul li a:hover {
      background-color: #e9b1f3;
      color: #481f46;
      border-block-end: unset;
    }
    
    .textos h3 {
      padding: 1em;
    }

    .contenedora { 
        padding: 0 1em;          
      }
      
      
      
      #logo {
        display: flex;
        align-items: center; 
        
      }
      
      #logo img {
        max-width: 100px;        
        height: auto;
      } 
  }

/* HEADER --------------------------- */

.botonesnav {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
   
    justify-content: flex-end;
    font-weight: 700;
}

.main {
    margin: 0%;
}
/* est --------------------------- */
.estilosec {
    background-color: #806696;
    color: #441c48;
 padding-top: 1em;
 padding-bottom: 1em;
 
}


.estilosec div figure {
    display: flex;
    justify-content: center;
  
}

.estilosec ul li figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 100%;
    align-items: center;
}

.estilosec li div figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 50%;
    width: 10em;
}

.estilosec ul {
    display: flex; 
    overflow-x: auto; 
    padding: 0;
    gap: 2rem;
    margin: 4rem;
    align-content: center;
}


.estilosec ul li div p{
    font-weight: 700;
    font-size: 1.5em;
    display: grid;
grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    align-items: center;
}

.estilosec ul li div p span{
    font-weight: 700;
    font-size: 1.8em;
    color: #3a1c48;

}

.estilosec article ul li a{
    text-decoration: none;
}

.estilosec3 article div{
    display: flex;
    justify-content: flex-end;
margin-right: 2rem;
}


.estilosec p{
margin-bottom: 4rem;
margin-left: 3rem;
margin-right: 3rem;
}

.estilosec article p{
    margin-bottom: 2rem;
    margin-left: 3rem;
        margin-right: 3rem;
    }

.estilosec h2{
    border-left: solid .2rem;
    border-color: #7b25d1;
    margin-left: 3rem;
margin-right: 3rem;
font-size: 1.6em;
text-align: left;
padding-left: 1.5em;
margin-bottom: 2rem;
}

.estilosec h3{
    border-bottom: solid .2rem;
    border-color: #7e25d1;
    font-size: 1.2em;
margin-left: 5rem;
margin-right: 5rem;
margin-bottom: 1.5rem;
padding-bottom: 1em;
}
.estilosec span {
    font-size: 1em;
    color: #7225d1;
    margin-bottom: 2rem;
}
/* est1 --------------------------- */

.estilosec1 {
    padding: 0;
    color: #f7e7ff;
    background-image: url('../img/poster2.png');
    background-size: cover; 
    background-repeat: no-repeat; 
    background-position: center; 
    width: 100%;
    height: 20em;
    display: flex;
    justify-content: center; 
    align-items: center;
    text-align: center; 
    flex-direction: column;
}

.estilosec1 p {
    font-size: 1em;
}

/* est2 --------------------------- */

.estilosec2 {
    background-color: #faddf1;
    color: #441c48;
 padding-top: 1em;
 padding-bottom: 1em;
 
}


.estilosec2 div figure {
    display: flex;
    justify-content: center;
  
}

.estilosec2 ul li figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 100%;
    align-items: center;
}

.estilosec2 li div figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 50%;
    width: 10em;
}

.estilosec2 ul {
    display: flex; 
    overflow-x: auto; 
    padding: 0;
    gap: 2rem;
    margin: 4rem;
    align-content: center;
}


.estilosec2 ul li div p{
    font-weight: 700;
    font-size: 1.5em;
    display: grid;
grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    align-items: center;
}

.estilosec2 ul li div p span{
    font-weight: 700;
    font-size: 1.8em;
    color: #3a1c48;

}

.estilosec2 article ul li a{
    text-decoration: none;
}

.estilosec2 article div{
    display: flex;
    justify-content: flex-end;
margin-right: 2rem;
}


.estilosec2 p{
margin-bottom: 4rem;
margin-left: 3rem;
margin-right: 3rem;
}

.estilosec2 article p{
    margin-bottom: 2rem;
    margin-left: 3rem;
        margin-right: 3rem;
    }

.estilosec2 h2{
    border-left: solid .2rem;
    border-color: #7b25d1;
    margin-left: 3rem;
margin-right: 3rem;
font-size: 1.6em;
text-align: left;
padding-left: 1.5em;
margin-bottom: 2rem;
}

.estilosec2 h3{
    border-bottom: solid .2rem;
    border-color: #7e25d1;
    font-size: 1.2em;
margin-left: 5rem;
margin-right: 5rem;
margin-bottom: 1.5rem;
padding-bottom: 1em;
}

.estilosec2 span {
    font-size: 1em;
    color: #7225d1;
    margin-bottom: 2rem;
}
/* est3 --------------------------- */
.estilosec3 {
    background-color: #806696;
    color: #441c48;
 padding-top: 1em;
 padding-bottom: 1em;
 
}


.estilosec3 div figure {
    display: flex;
    justify-content: center;
  
}

.estilosec3 ul li figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 100%;
    align-items: center;
}

.estilosec3 li div figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 50%;
    width: 10em;
}

.estilosec3 ul {
    display: flex; 
    overflow-x: auto; 
    padding: 0;
    gap: 2rem;
    margin: 4rem;
    align-content: center;
}


.estilosec3 ul li div p{
    font-weight: 700;
    font-size: 1.5em;
    display: grid;
grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    align-items: center;
}

.estilosec3 ul li div p span{
    font-weight: 700;
    font-size: 1.8em;
    color: #3a1c48;

}

.estilosec3 article ul li a{
    text-decoration: none;
}

.estilosec3 article div{
    display: flex;
    justify-content: flex-end;
margin-right: 2rem;
}


.estilosec3 p{
margin-bottom: 4rem;
margin-left: 3rem;
margin-right: 3rem;
}

.estilosec3 article p{
    margin-bottom: 2rem;
    margin-left: 3rem;
        margin-right: 3rem;
    }

.estilosec3 h2{
    border-left: solid .2rem;
    border-color: #7b25d1;
    margin-left: 3rem;
margin-right: 3rem;
font-size: 1.6em;
text-align: left;
padding-left: 1.5em;
margin-bottom: 2rem;
}

.estilosec3 h3{
    border-bottom: solid .2rem;
    border-color: #7e25d1;
    font-size: 1.2em;
margin-left: 5rem;
margin-right: 5rem;
margin-bottom: 1.5rem;
padding-bottom: 1em;
}

.estilosec3 span {
    font-size: 1em;
    color: #7225d1;
    margin-bottom: 2rem;
}

/* est4 --------------------------- */

.estilosec4 {
    background-color: #faddf1;
    color: #441c48;
 padding-top: 1em;
 padding-bottom: 1em;
 
}


.estilosec4 div figure {
    display: flex;
    justify-content: center;
  
}

.estilosec4 ul li figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 100%;
    align-items: center;
}

.estilosec4 li div figure img {
    display: block;
    margin: 0;
    padding: 0;
    max-width: 50%;
    width: 10em;
}

.estilosec4 ul {
    display: flex; 
    overflow-x: auto; 
    padding: 0;
    gap: 2rem;
    margin: 4rem;
    align-content: center;
}


.estilosec4 ul li div p{
    font-weight: 700;
    font-size: 1.5em;
    display: grid;
grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    align-items: center;
}

.estilosec4 ul li div p span{
    font-weight: 700;
    font-size: 1.8em;
    color: #3a1c48;

}

.estilosec4 article ul li a{
    text-decoration: none;
}

.estilosec4 article div{
    display: flex;
    justify-content: flex-end;
margin-right: 2rem;
}


.estilosec4 p{
margin-bottom: 4rem;
margin-left: 3rem;
margin-right: 3rem;
}

.estilosec4 article p{
    margin-bottom: 2rem;
    margin-left: 3rem;
        margin-right: 3rem;
    }

.estilosec4 h2{
    border-left: solid .2rem;
    border-color: #7b25d1;
    margin-left: 3rem;
margin-right: 3rem;
font-size: 1.6em;
text-align: left;
padding-left: 1.5em;
margin-bottom: 2rem;
}

.estilosec4 h3{
    border-bottom: solid .2rem;
    border-color: #7e25d1;
    font-size: 1.2em;
margin-left: 5rem;
margin-right: 5rem;
margin-bottom: 1.5rem;
padding-bottom: 1em;
}
.estilosec4 span {
    font-size: 1em;
    color: #7225d1;
    margin-bottom: 2rem;
}

iframe {
width: 100vw;
height: auto;
aspect-ratio: 16/9;
}
