/*************************************
 *         IMPORTACIÓN DE FUENTE
 *************************************/
 @import url("https://fonts.googleapis.com/css2?family=Catamaran:wght@300;400;600;700&display=swap");

 /*************************************
  *         ESTILOS GLOBALES
  *************************************/
 :root {
   --Background: #fff;
   --Surface: #0f172a;
   --Primary: #fff;
   --Secondary: #fff;
   --OnColor: #121212;
   --OnBackground: #fff;
 }
 
 html, body {
   margin: 0;
   padding: 0;
   height: 100%;
 }
 
 body {
   font-family: "Catamaran", sans-serif; /* Se aplica la fuente Catamaran */
   background-color: var(--Background);
   color: #f0ffff;
 }
 
 /*************************************
  *           MENÚ LATERAL
  *************************************/
 #BackgroundMenu {
   position: fixed;
   height: 100vh;
   width: 100%;
   z-index: 1000;
   top: 0;
   display: flex;
   flex-direction: column;
   justify-content: center;
   pointer-events: none;
   transition: all 0.6s ease;
 }
 
 #AsideMenu {
   position: absolute;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   background-color: var(--Surface);
   width: 40px;
   height: 90vh;
   margin: 0;
   padding: 0;
   z-index: 1100;
   overflow: hidden;
   pointer-events: auto;
   transition: all 0.6s ease;
   left: 0;
   border-radius: 0 5px 5px 0;
 }
 
 #AsideMenuIcon {
   position: absolute;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   width: 40px;
   height: 40px;
   top: 0;
   left: 0;
   overflow: hidden;
   border-radius: 0 5px 0 0;
   transition: all 0.6s ease;
 }
 
 #AsideMenuIcon i {
   color: var(--OnBackground);
   font-size: 20px;
   font-weight: 900;
 }
 
 #AsideList,
 #AsideList ul {
   list-style: none;
   margin: 0;
   padding: 0;
 }
 
 #AsideList {
   display: flex;
   flex-direction: column;
   row-gap: 20px;
   opacity: 0;
   transition: all 0.6s ease;
 }
 
 #AsideMenu:hover {
   width: 350px;
   transition: all 0.6s ease;
 }
 
 #AsideMenu:hover #AsideMenuIcon {
   opacity: 0;
   width: 350px;
   transition: all 0.6s ease;
 }
 
 #AsideMenu:hover #AsideList {
   opacity: 1;
   transition: all 0.6s ease;
 }
 
 #BackgroundMenu:hover {
   background-color: #0f172a;
   transition: all 0.6s ease;
 }
 
 /* Submenús */
 .submenu {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.4s ease;
 }
 
 .has-submenu > a::after {
   content: "▶";
   float: right;
   margin-right: 10px;
   transition: transform 0.3s;
 }
 .has-submenu.expanded > a::after {
   content: "▼";
   transform: rotate(90deg);
 }
 
 .AsideItem a {
   color: #fff;
   text-decoration: none;
 }
 .AsideItem a:hover {
   color: #ccc;
   text-decoration: none;
 }
 .AsideItem.indent a {
   padding-left: 30px;
 }
 
 /*************************************
  *         VIDEO SHOWCASE
  *************************************/
 .showcase {
   position: relative;
   height: 100vh;
   width: 100%;
   overflow: hidden;
 }
 
 .video-container {
   position: absolute;
   top: 0;
   left: 0;
   min-width: 100%;
   min-height: 100%;
   z-index: -1;
 }
 
 video {
   width: 100%;
   height: auto;
   object-fit: cover; /* Para asegurar que cubra toda el área */
 }
 
 .content {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   text-align: center;
   color: #fff;
 }
 
 /* Ajusta los tamaños o pesos de la fuente según desees */
 .content h1 {
   font-size: 3em;
   font-weight: 600;
   margin: 0;
 }
 
 .content h3 {
   font-size: 1.5em;
   margin: 10px 0 0;
   font-weight: 300;
 }
 /* Burbujas de redes sociales:
   - .social-bubbles: es el contenedor que se posiciona de forma fija en la esquina inferior derecha de la pantalla.
   - display: flex; flex-direction: column; gap: 10px; organiza los íconos en una columna con espacio entre ellos.
   - .social-bubbles a: define cada burbuja como un círculo de 50x50 píxeles, con fondo #222 (mismo color que el menú), íconos blancos y una sombra sutil.
   - La transición y el hover permiten un efecto de escalado al pasar el cursor.
*/
.social-bubbles {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.social-bubbles a {
  width: 50px;
  height: 50px;
  background-color: #0f172a; /* mismo color que el menú */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s;
  text-decoration: none;
  color: white; /* íconos en blanco */
}

.social-bubbles a:hover {
  transform: scale(1.1);
}

.social-bubbles a i {
  font-size: 24px;
}