/* Hero Section Styles */
/* Archivo creado para la nueva implementación de la sección hero */

.hero {
  width: 100%;
  height: 100vh;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  position: relative;
  overflow: hidden;
  background: none;


}

/* Sidebar - Primera columna */
.sidebar {
  background: #ffffff;
  border-right: 1px solid #dee2e6;
  padding: 10px;
  overflow-y: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  /* --- Propiedades añadidas --- */
  z-index: 10; /* Para que se ponga por encima del body */
  transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.35s ease; /* Animación más suave */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  border-radius: 20px;
}

/* Estado inicial del texto de las categorías - Solo para Desktop/Tablet */
@media (min-width: 768px) and (max-width: 1199px) {
  .sidebar .home,
  .sidebar .tecnologia-trigger,
  .sidebar .grafica,
  .sidebar .pie,
  .sidebar .instal,
  .sidebar .categorias .text1 {
    opacity: 0;
    pointer-events: none; /* Evita que se pueda hacer clic en el texto invisible */
    transition: opacity 0.3s ease-in-out;
  }
}

/* Partes del sidebar */
.part1 {

  border-radius: 8px;
  flex: 0.5;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  font-weight: 600;
  color: #666462;
}

.categorias {

  border-radius: 6px;
  font-weight: 600;
  text-align: center;
  width: 100%;
  min-height: 60px;
  display: flex;
  align-items: center;
}

.categorias .icon {
  width: 60px;
  height: 60px;
  flex: 0 0 auto;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;

  cursor: pointer;
  padding: 0;
  margin: 0;
  border: none;
}

.categorias .icon i {
  font-size: 32px;
}

.icon1 i,
.icon2 i,
.icon3 i,
.icon4 i,
.icon5 i {
  font-size: 24px;
  color: #666666;
}

.icon1 i {
  color: #ffffff;
}

.icon2 i {
  color: #ffffff;
}

.icon3 i {
  color: #ffffff;
}

.icon4 i {
  color: #ffffff;
}

.icon5 i {
  color: #ffffff;
}

.icon1,
.icon2,
.icon3,
.icon4,
.icon5 {
  width: 60px;
  height: 60px;
  flex: 0 0 auto;
  border: none;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: white;
  cursor: pointer;
  padding: 0;
  margin: 0 0 0 -4px; /* Mueve los botones icon 3px hacia la izquierda */
}

.icon1 {
  background: linear-gradient(-45deg, #fc566a, #fe4250);
}

.icon2 {
  background: linear-gradient(-45deg, #fe6845, #f46245);
}

.icon3 {
  background: linear-gradient(-45deg, #ffa046, #fe9249);
}

.icon4 {
  background: linear-gradient(-45deg, #9dcb45, #8dbd3d);
}

.icon5 {
  background: linear-gradient(-45deg, #746add, #695cd2);
}

.icon1:hover,
.icon2:hover,
.icon3:hover,
.icon4:hover,
.icon5:hover {
  transform: scale(1.05);
  transition: transform 0.2s ease;
}






.icon1:hover i,
.icon2:hover i,
.icon3:hover i,
.icon4:hover i,
.icon5:hover i {
  color: #ffffff;
}

.icon1:active {
  background: linear-gradient(-45deg, #ff6b7a, #ff4a5a);
}

.icon2:active {
  background: linear-gradient(-45deg, #ff7a55, #ff5a35);
}

.icon3:active {
  background: linear-gradient(-45deg, #ffb056, #ffa259);
}

.icon4:active {
  background: linear-gradient(-45deg, #addb55, #9dcb4d);
}

.icon5:active {
  background: linear-gradient(-45deg, #847aed, #7565e2);
}

/* Estados activos cuando la sección está desplegada */
.icon2.active {
  background: linear-gradient(-45deg, #ff7a55, #ff5a35);
}

.icon3.active {
  background: linear-gradient(-45deg, #ffb056, #ffa259);
}

.icon4.active {
  background: linear-gradient(-45deg, #addb55, #9dcb4d);
}

.icon5.active {
  background: linear-gradient(-45deg, #847aed, #7565e2);
}

.tecnologia-trigger.active {
  background: linear-gradient(-45deg, #ff7a55, #ff5a35);
}

/* Reducir saturación de otros botones cuando tecnologia-trigger está desplegado */
.part2.tecnologia-desplegado .icon1,
.part2.tecnologia-desplegado .icon3,
.part2.tecnologia-desplegado .icon4,
.part2.tecnologia-desplegado .icon5,
.part2.tecnologia-desplegado .home,
.part2.tecnologia-desplegado .grafica,
.part2.tecnologia-desplegado .pie,
.part2.tecnologia-desplegado .instal {
  filter: saturate(0.7);
  opacity: 0.85;
}

/* Estado bloqueado para botones sin productos */
.icon3.bloqueado,
.icon4.bloqueado,
.icon5.bloqueado,
.grafica.bloqueado,
.pie.bloqueado,
.instal.bloqueado {
  filter: saturate(0.5);
  cursor: not-allowed;
  pointer-events: none;
}

/* Deshabilitar completamente hover y active para botones bloqueados */
.icon3.bloqueado:hover,
.icon4.bloqueado:hover,
.icon5.bloqueado:hover,
.grafica.bloqueado:hover,
.pie.bloqueado:hover,
.instal.bloqueado:hover,
.icon3.bloqueado:active,
.icon4.bloqueado:active,
.icon5.bloqueado:active,
.grafica.bloqueado:active,
.pie.bloqueado:active,
.instal.bloqueado:active,
.icon3.bloqueado:focus,
.icon4.bloqueado:focus,
.icon5.bloqueado:focus,
.grafica.bloqueado:focus,
.pie.bloqueado:focus,
.instal.bloqueado:focus {
  transform: none !important;
  transition: none !important;
  background: inherit !important;
  box-shadow: none !important;
  outline: none !important;
  border: none !important;
  filter: saturate(0.5) !important;
}



/* Estilo para iconos de candado en botones bloqueados */
.grafica.bloqueado i,
.pie.bloqueado i,
.instal.bloqueado i {
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
}




.grafica.active {
  background: linear-gradient(-45deg, #ffb056, #ffa259);
}

.pie.active {
  background: linear-gradient(-45deg, #addb55, #9dcb4d);
}

.instal.active {
  background: linear-gradient(-45deg, #847aed, #7565e2);
}

.tecnologia-btn1.active {
  background: linear-gradient(-45deg, #bdeb65, #addb5d);
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
  text-align: right;
  padding-left: calc(50% + 20px);
  padding-right: 20px;
  color: transparent;
}

.tecnologia-btn2.active {
  background: linear-gradient(-45deg, #ffc066, #ffb269);
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
  text-align: right;
  padding-left: calc(50% + 20px);
  padding-right: 20px;
  color: transparent;
}

.tecnologia-btn3.active {
  background: linear-gradient(-45deg, #948afd, #8575f2);
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
  text-align: right;
  padding-left: calc(50% + 20px);
  padding-right: 20px;
  color: transparent;
}

/* Líneas activas cuando la sección está desplegada */
.tecnologia-trigger.active::after {
  width: 80px;
  opacity: 1;
}

.grafica.active::after {
  width: 50px;
  opacity: 1;
}

.pie.active::after {
  width: 30px;
  opacity: 1;
}

.instal.active::after {
  width: 70px;
  opacity: 1;
}

/* Animación de meneo para íconos cuando están activos */
.icon2.active i,
.icon3.active i,
.icon4.active i,
.icon5.active i {
  animation: wiggle 3s ease-in-out infinite;
}

@keyframes wiggle {
  0%, 100% {
    transform: rotate(0deg);
  }
  20% {
    transform: rotate(-6deg);
  }
  40% {
    transform: rotate(6deg);
  }
  60% {
    transform: rotate(-4deg);
  }
  80% {
    transform: rotate(4deg);
  }
}






.icon1:active i,
.icon2:active i,
.icon3:active i,
.icon4:active i,
.icon5:active i {
  color: #ffffff;
}

.categorias .text1 {
  width: 60px;
  height: 60px;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  margin-left: 5px;
  font-family: 'museo-sans', sans-serif;
  font-size: 28px;
  font-weight: bold;
  background: transparent;
  color: #666462;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.home,
.tecnologia,
.grafica,
.pie,
.instal {
  width: 60px;
  height: 60px;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: none;
  border-radius: 30px;
  margin-left: 5px;
  padding-left: 10px;
  font-family: 'museo-sans', sans-serif;
  background: white;
  cursor: pointer;
  padding: 0 0 0 30px;
  margin: 0 0 0 5px;
  color: #666666;
  font-weight: 600;
  font-size: 16px;
}

.home {
  background: linear-gradient(-45deg, #fc566a, #fe4250);
  color: #ffffff;
  position: relative;
  overflow: hidden;
}


.grafica {
  background: linear-gradient(-45deg, #ffa046, #fe9249);
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

.pie {
  background: linear-gradient(-45deg, #9dcb45, #8dbd3d);
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

.instal {
  background: linear-gradient(-45deg, #746add, #695cd2);
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

.home:hover,
.tecnologia:hover,
.grafica:hover,
.pie:hover,
.instal:hover {
  transform: scale(1.02);
  transition: transform 0.2s ease;
}





.home:active {
  background: linear-gradient(-45deg, #ff6b7a, #ff4a5a);
  color: #ffffff;
}



.grafica:active {
  background: linear-gradient(-45deg, #ffb056, #ffa259);
  color: #ffffff;
}

.pie:active {
  background: linear-gradient(-45deg, #addb55, #9dcb4d);
  color: #ffffff;
}

.instal:active {
  background: linear-gradient(-45deg, #847aed, #7565e2);
  color: #ffffff;
}

.tecnologia:active {
  background: #191919;
  color: #ffffff;
}





.tecnologia-accordion {
  width: 60px;
  flex: 1;
  display: flex;
  flex-direction: column;
}

.tecnologia-trigger {
  width: calc(100% - 5px);
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: none;
  border-radius: 30px;
  margin-left: 5px;
  padding-left: 10px;
  font-family: 'museo-sans', sans-serif;
  background: linear-gradient(-45deg, #fe6845, #f46245);
  cursor: pointer;
  padding: 0 20px 0 20px;
  margin: 0 0 0 5px;
  color: #ffffff;
  font-weight: 600;
  font-size: 16px;
  position: relative;
  overflow: hidden;
}


.tecnologia-trigger::after {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 20px;
  width: 0;
  height: 2px;
  background: #ffffff;
  opacity: 0;
  transition: width 0.4s ease, opacity 0.3s ease;
}

.grafica::after {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 30px;
  width: 0;
  height: 2px;
  background: #ffffff;
  opacity: 0;
  transition: width 0.4s ease, opacity 0.3s ease;
}

.pie::after {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 30px;
  width: 0;
  height: 2px;
  background: #ffffff;
  opacity: 0;
  transition: width 0.4s ease, opacity 0.3s ease;
}

.instal::after {
  content: '';
  position: absolute;
  bottom: 16px;
  left: 30px;
  width: 0;
  height: 2px;
  background: #ffffff;
  opacity: 0;
  transition: width 0.4s ease, opacity 0.3s ease;
}

.tecnologia-trigger:hover {
  transform: scale(1.02);
  transition: transform 0.2s ease;
}

.tecnologia-trigger:hover .tecnologia-arrow {
  color: #f46245;
  background: #ffffff;
}


.tecnologia-trigger:active::after {
  width: 80px;
  opacity: 1;
}

.grafica:active::after {
  width: 50px;
  opacity: 1;
}

.pie:active::after {
  width: 30px;
  opacity: 1;
}

.instal:active::after {
  width: 70px;
  opacity: 1;
}

.tecnologia-trigger:active {
  background: linear-gradient(-45deg, #ff7a55, #ff5a35);
}

.tecnologia-trigger:active .tecnologia-arrow {
  color: #f46245;
  background: #ffffff;
}

.tecnologia-arrow {
  font-size: 18px;
  transition: transform 0.3s ease, background-color 0.3s ease;
  color: #fe6845;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: #ffffff;
  border-radius: 50%;
}

.tecnologia-accordion.show .tecnologia-arrow {
  transform: rotate(180deg);
  background: #ffffff;
  color: #fe6845;
}

.tecnologia-collapse {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
  opacity: 0;
}

.tecnologia-collapse.show {
  max-height: 300px;
  opacity: 1;
  transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.tecnologia-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 5px 5px 5px 10px;
  margin-left: 5px;
}

.tecnologia-btn1,
.tecnologia-btn2,
.tecnologia-btn3 {
  width: calc(100% - 5px);
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border: none;
  border-radius: 30px;
  margin-left: 5px;
  padding-left: 10px;
  font-family: 'museo-sans', sans-serif;
  background: white;
  cursor: pointer;
  padding: 0 20px 0 60px;
  margin: 0 0 0 5px;
  text-align: left;
  color: #666666;
  font-weight: 600;
  position: relative;
  overflow: hidden;
}

.tecnologia-btn1 {
  background: linear-gradient(-45deg, #8dbd3d, #9dcb45);
  color: #ffffff;
}

.tecnologia-btn2 {
  background: linear-gradient(-45deg, #fe9249, #ffa046);
  color: #ffffff;
}

.tecnologia-btn3 {
  background: linear-gradient(-45deg, #746add, #695cd2);
  color: #ffffff;
}

.tecnologia-btn1:hover,
.tecnologia-btn2:hover,
.tecnologia-btn3:hover {
  transform: scale(1.02);
  transition: transform 0.2s ease;
}




.tecnologia-btn1:hover .tecnologia-icon,
.tecnologia-btn2:hover .tecnologia-icon,
.tecnologia-btn3:hover .tecnologia-icon {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.tecnologia-btn1:active {
  background: linear-gradient(-45deg, #bdeb65, #addb5d);
  color: #191919;
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
}

.tecnologia-btn2:active {
  background: linear-gradient(-45deg, #ffc066, #ffb269);
  color: #191919;
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
}

.tecnologia-btn3:active {
  background: linear-gradient(-45deg, #948afd, #8575f2);
  color: #191919;
  justify-content: center;
  padding-left: 20px;
  padding-right: 20px;
}




.tecnologia-btn1:active .tecnologia-icon,
.tecnologia-btn2:active .tecnologia-icon,
.tecnologia-btn3:active .tecnologia-icon {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
  left: 50%;
  transform: translate(-50%, -50%) scale(1.4);
}

.tecnologia-btn1:active,
.tecnologia-btn2:active,
.tecnologia-btn3:active {
  text-align: right;
  padding-left: calc(50% + 20px);
  padding-right: 20px;
  color: transparent;
}

.tecnologia-btn1:active::after,
.tecnologia-btn2:active::after,
.tecnologia-btn3:active::after {
  content: attr(data-text);
  position: absolute;
  left: calc(50% + 20px);
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  white-space: nowrap;
  color: #191919;
}





.tecnologia-btn1.active .tecnologia-icon,
.tecnologia-btn2.active .tecnologia-icon,
.tecnologia-btn3.active .tecnologia-icon {
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
  left: 50%;
  transform: translate(-50%, -50%) scale(1.4);
}

.tecnologia-btn1.active::after,
.tecnologia-btn2.active::after,
.tecnologia-btn3.active::after {
  content: attr(data-text);
  position: absolute;
  left: calc(50% + 20px);
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  white-space: nowrap;
  color: #191919;
}


.tecnologia-btn2 {
  font-size: 11px;
}

.tecnologia-text {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
  transition: all 0.3s ease;
}

.tecnologia-icon {
  width: 24px;
  height: 24px;
  margin-right: 8px;
  flex-shrink: 0;
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}

.tecnologia-btn1,
.tecnologia-btn2,
.tecnologia-btn3 {
  transition: all 0.3s ease;
}



.part2 {

  border-radius: 8px;
  flex: 2.5;
  display: flex;
  flex-direction: column;
  gap: 15px;
  font-weight: 600;

  overflow: visible;
  padding: 5px;
}

.part2 .cont1,
.part2 .cont2,
.part2 .cont3,
.part2 .cont4,
.part2 .cont5 {

  border-radius: 6px;
  min-height: 60px;
  height: auto;
  width: 100%;
  overflow: visible;
  display: flex;
  align-items: flex-start;
  padding: 3px;
}

.part2 .cont2 {
  align-items: stretch;
}




/* Body - Segunda columna */
.body {
  background: #f6f1ed;
  padding: 20px;
  overflow-y: auto;
  border-radius: 20px;
  border: 5px solid #ffffff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

/* Responsive */
/* Large Desktop */
@media (min-width: 1200px) {
  .hero {
    height: 100vh;
    grid-template-columns: 300px 1fr;
    gap: 30px;
    padding: 40px;
  }

  /* Comportamiento restaurado para Desktop Grande */
  .sidebar .home,
  .sidebar .tecnologia-trigger,
  .sidebar .grafica,
  .sidebar .pie,
  .sidebar .instal,
  .sidebar .categorias .text1 {
    opacity: 1;
    pointer-events: auto;
  }

  /* Comportamiento normal del acordeón en Desktop Grande */
  .tecnologia-collapse {
    max-height: 0;
    opacity: 0;
  }

  .tecnologia-collapse.show {
    max-height: 300px;
    opacity: 1;
  }

  /* Estilo del botón ícono en Desktop Grande */
  .categorias .icon {
    background: transparent;
  }

  .categorias .icon i {
    color: #418eff;
  }

  /* Ocultar elementos móviles en Large Desktop */
  .mobile-menu-button,
  .sidebar-overlay {
    display: none;
  }
}

/* Desktop y Tablet */
@media (min-width: 768px) and (max-width: 1199px) {
  .hero {
    height: 100vh;
    grid-template-columns: 80px 1fr; /* La grilla se queda fija */
    gap: 15px;
    padding: 30px;
    /* Se eliminó la transición */
  }

  .sidebar.active {
    grid-column: 1;
  }

  /* Nueva regla para cuando el sidebar está activo */
  .hero.sidebar-active .sidebar {
    width: 300px;
    box-shadow: 5px 0 15px rgba(0, 0, 0, 0.1); /* Sombra para dar profundidad */
  }

  /* Estado del texto cuando el sidebar está activo - Solo para Desktop/Tablet */
  .hero.sidebar-active .sidebar .home,
  .hero.sidebar-active .sidebar .tecnologia-trigger,
  .hero.sidebar-active .sidebar .grafica,
  .hero.sidebar-active .sidebar .pie,
  .hero.sidebar-active .sidebar .instal,
  .hero.sidebar-active .sidebar .categorias .text1 {
    opacity: 1;
    pointer-events: auto;
    transition-delay: 0.1s; /* Retraso optimizado para mejor sincronización */
  }

  /* Comportamiento del acordeón en Desktop/Tablet */
  .tecnologia-collapse {
    max-height: 0;
    opacity: 0;
  }

  .tecnologia-accordion {
    display: none; /* Ocultar acordeón por defecto en Desktop/Tablet */
  }

  .hero.sidebar-active .tecnologia-accordion {
    display: flex; /* Mostrar acordeón solo cuando sidebar está expandido */
  }


  .categorias .icon {
    background: linear-gradient(-45deg, #418eff, #4882e0);
  }

  .categorias .icon i {
    color: #ffffff;
  }

  .categorias .icon.active {
    background: #da130f;
  }

  .categorias .icon.active i {
    color: #ffffff;
  }



  /* Ocultar elementos móviles en Desktop y Tablet */
  .mobile-menu-button,
  .sidebar-overlay {
    display: none;
  }
}

/* Formato Móvil */
@media (max-width: 767px) {
  .hero {
    min-height: 100vh;
    height: auto;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 20px;
    position: relative;
  }

  .sidebar {
    position: fixed;
    top: 0;
    left: -100%;
    width: 80%;
    height: 100vh;
    background: #f8f9fa;
    border-radius: 0 8px 8px 0;
    padding: 20px;
    transition: left 0.3s ease;
    z-index: 1000;
    overflow-y: auto;
  }

  .hero.sidebar-active .sidebar {
    left: 0;
  }

  .part1 {
    height: 150px;
    flex: none;
  }

  .categorias {
    min-height: 150px;
    height: 100%;
  }

  .categorias {
    flex-direction: row;
    align-items: flex-start;
    gap: 10px;
    justify-content: flex-start;
  }

  .categorias .text1 {
    opacity: 1;
    order: 2;
    flex: 1;
    width: auto;
    min-width: 120px;
    height: 60px;
    font-size: 20px;
    margin-left: 0;
  }

  .categorias .icon {
    order: 1;
    background: linear-gradient(-45deg, #418eff, #4882e0);
    flex: none;
  }

  .categorias .icon i {
    color: #ffffff;
  }

  /* Botón fijo para abrir menú */
  .mobile-menu-button {
    position: fixed;
    top: 20px;
    left: 20px;
    width: 60px;
    height: 60px;
    background: linear-gradient(-45deg, #418eff, #4882e0);
    border: none;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 1001;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
  }

  .mobile-menu-button i {
    font-size: 32px;
    color: #ffffff;
  }

  /* Overlay para cerrar menú */
  .sidebar-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.5);
    z-index: 999;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
  }

  .hero.sidebar-active .sidebar-overlay {
    opacity: 1;
    visibility: visible;
  }

  .body {
    width: 100%;
    min-height: calc(100vh - 40px);
    height: auto;
  }
}
