@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');


:root {
    --P1: #249BD3;
    --P2: #FFFFFF;
    --P3: #0A192F;
    --S1: #E91E63;
    --S2: #22B159;
    --S3: #FBBF24;
}

html {
    font-size: 62.5%;
    font-family: "Work Sans", sans-serif;
    font-weight: 300;
    font-style: normal;
    box-sizing: border-box;
    scroll-behavior: smooth;
}

body {
    line-height: 1.8;
}

body,
h1,
h2,
h3 {
  text-align: start;
}
*,
button {
  font-family: "Work Sans", sans-serif;
  padding: 0;
  margin: 0;
}
*,
button,
h1,
h2,
h3 {
  margin: 0;
}

h1,
h2,
h3 {
    font-weight: 900;
}

h1 {
  font-size: 9.6rem;
  line-height: 11.3rem;
  text-transform: uppercase;
}

h2 {
  font-size: 4.8rem;
  line-height: 4.8rem;
}

h3 {
  font-size: 2.4rem;
  line-height: 3.2rem;
}

a {
    font-size: 1.2rem;
    line-height: 1.6rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--P2);
}


p {
    font-size: 2rem;
    line-height: 2.8rem;
}

button {
  background: 0 0;
  border: none;
  outline: 0;
  cursor: pointer;
  display: inline-block;

  font-weight: 900;
  font-size: 2rem;
  line-height: 2.8rem;
  letter-spacing: 2px;
}

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

ul {
  list-style: none;
}

picture,
picture source {
  display: contents;
}

img {
  display: block;
}

a,
h1,
h2,
h3,
p,
span {
  max-width: 100%;
  word-wrap: break-word;
}

/* UTILIDADES */

.contenedor {
  width: 90%;
  height: 100%;
  max-height: 100%;
  max-width: 190rem;
  margin: 0 auto;
}

.spacing {
  margin-top: 8rem;
}




/* HEADER 1 */

.header {
  position: relative;

  background-color: var(--P2);
  height: 90px;
  padding: 1.5rem 0;
}

.header_contenedor {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}

.header_c-logo img{
  width: 140px;
  height: auto;
}

.header_c-login a {
  font-size: 1.4rem;
  line-height: 2rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: -0.35px;
  color: #136DEC;
}

.search-box {
  display: flex;
  align-items: center;
  background: rgba(231, 236, 243, 0.5);
  border-radius: 10px;
  padding: 10px 16px;
  width: 100%;
  max-width: 510px;
}

.search-box .icon {
  margin-right: 10px;
}

.search-box input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-family: 'Work Sans';
  font-weight: 400;
  font-size: 14px;
  line-height: 16px;
  color: #6B7280;
}

.search-box input::placeholder {
  color: #6B7280;
}

.burger {
  display: none;
}

.header_contenedor > div:nth-child(2) {
  display: contents;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}

/* Lapto - IPAD */
@media (max-width: 960px) {
  .header .header_c-login span {
    display: none;
  }
}

/* TABLET */
@media (max-width: 780px) {
}

/* CELULAR */
@media (max-width: 550px) {
  .header {
    height: 80px;
  }
  .header_c-logo img{
    width: 125px;
  }
  .burger svg {
    width: 22px;
    height: 16px;
  }


  .header_contenedor > div:nth-child(2) input,
  .header_contenedor > div:nth-child(2) input::placeholder {
    color: var(--P2);
  }
  .header_contenedor > div:nth-child(2) svg path{
    fill: var(--P2);
  }

  .header_contenedor > div:nth-child(2) {
    display: none;
  }

  .header_contenedor.activo > div:nth-child(2) {
    position: absolute;
    width: 100%;
    background: var(--P3);
    height: 100%;
    bottom: -100%;
    left: 0;
    z-index: 999;
    padding: 0 1rem;
  }

  .header_contenedor.activo > div:nth-child(2) {
    display: flex;
  }
  
  .header_contenedor.activo .search-box {
    display: flex;
  }

  .search-box {
    display: none;
  }

  .burger {
    display: block;
  }
}


/* HEADER 2 */

.navegacion {
  background-color: var(--P1);
  height: 52px;
}

.navegacion_contenedor {
  height: 100%;
  width: 60rem;
  display: flex;
  margin: 0 auto;
  gap: 6rem;
  justify-content: center;
}

.navegacion_contenedor a {
  text-transform: uppercase;
  letter-spacing: 1.2px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.navegacion_contenedor .activo::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 80px;
  height: 3px;
  background: white;
}

@media (max-width: 690px) {
  .navegacion_flow-m {
    overflow: auto;
  }

  .navegacion_contenedor {
    max-width: 50rem;
    justify-content: space-between;
    gap: 0;
  }
}
@media (max-width: 570px) {
  .navegacion_contenedor {
    max-width: 45rem;
  }
}
@media (max-width: 490px) {
  .navegacion_contenedor {
    max-width: 42rem;
  }
}


/* FOOTER */
.footer {
  background: var(--P1);
  color: var(--P2);
  padding: 8rem 0;
}

.footer_container {
  display: flex;
  justify-content: space-between;
  gap: 50px;
}

.footer_col {
  flex: 1;
}  

.footer_logo {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.footer_logo img {
  max-width: 150px;
}

.footer_title {
  letter-spacing: 1.8px;
  font-size: 1.8rem;
  line-height: 2.8rem;
  margin-bottom: 20px;
}

.footer_description {
  font-size: 1.6rem;
  line-height: 2.6rem;
  margin-bottom: 20px;
  max-width: 280px;
}

.footer_links {
  list-style: none;
  padding: 0;
}

.footer_links li {
  font-size: 1.6rem;
  line-height: 2.4rem;
  margin-bottom: 10px;
  cursor: pointer;

  display: flex;
}

.footer_links li::before {
  content: "▪";
  font-size: 3rem;
  margin-right: 8px;
}

.footer_contact_item {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 2rem;
}

.footer_contact_item p{
  font-size: 1.6rem;
  line-height: 2rem;
}

.footer_social_text {
  font-size: 1.6rem;
  line-height: 2rem;
  margin-bottom: 20px;
}

.footer_social_icons {
  display: flex;
  gap: 15px;
}

.footer_social_icons a {
  width: 48px;
  height: 48px;
  background: rgba(255,255,255,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  cursor: pointer;
  transition: 0.3s;
}

.footer_social_icons a:hover {
  background: rgba(228, 228, 228, 0.4);
}

.footer_bottom {
  border-top: 1px solid rgba(255,255,255,0.3);
  margin-top: 50px;
  padding-top: 50px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.footer_bottom p {
  font-weight: bold;
  line-height: 1.6rem;
  font-size: 1.2rem;
  letter-spacing: 1.2px;
}

.footer_bottom_links {
  display: flex;
  gap: 4rem;
}

.footer_bottom_links a {
  font-weight: bold;
  line-height: 1.6rem;
  font-size: 1.2rem;
  letter-spacing: 1.2px;
}

@media(max-width: 950px) {
  .footer_container {
    display: flex;
    flex-wrap: wrap; /* Permite que los elementos salten de línea */
    gap: 3rem;       /* El espacio entre cuadros */
    justify-content: space-between;
  }

/* Las dos primeras columnas ocuparán casi el 50% cada una */
  .footer_col:nth-child(1),
  .footer_col:nth-child(2) {
    flex: 1 1 calc(50% - 2rem); 
    min-width: 280px; /* Para que no se vean muy apretadas */
  }

/* La última columna ocupará el 100% para bajar */
  .footer_col:nth-child(3) {
    flex: 1 1 100%;
    margin-top: 2rem; /* Espacio extra opcional */
  }
}

@media(max-width: 762px) {
  .footer_bottom {
    gap: 6rem;
    align-items: start;
  }

  .footer_bottom_links {
    gap: 2rem;
  }
}

@media(max-width: 680px) {
  .footer {
    padding: 6rem 0;
    padding-bottom: 4rem;
  }

  .footer_bottom {
    flex-direction: column;
    align-items: center;
    gap: 4rem;
  }

  .footer_bottom p {
    text-align: center;
  }
}