/*
 Theme Name: Hello Elementor Child
 Template: hello-elementor
 Version: 1.0.0
*/

/* Ocultar título nativo - Hello Elementor (selector correcto) */
.page-header {
    display: none !important;
    padding: 0 !important;
    margin: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

/* ============================================
   HUBSPOT FORMS — ESTILOS GLOBALES
   ============================================ */
.hs-button {
    border-radius: 30px !important;
    background-color: #26D0B2 !important;
    margin-top: 25px !important;
}
div.actions > .hs-button {
    border-radius: 20px !important;
}
.hs-email,
.hs-firstname,
.hs-lastname {
    font-family: Montserrat;
    color: #3b3b3b;
    margin-top: 20px !important;
}
.hs-form {
    margin: auto !important;
    font-family: Montserrat !important;
}
.hs-form * {
    font-family: Montserrat !important;
}
.hs-input {
    border-radius: 20px;
}
.hs-form-required {
    color: black !important;
}
.hs-error-msgs > * label {
    color: #26CBAD !important;
}
.hs-error-msgs > * {
    list-style: none !important;
    margin-left: -1.9em;
}
.hs-fieldtype-radio {
    padding-top: 1rem !important;
}
.hs-fieldtype-radio ul {
    list-style-type: none;
}


/* Apagar animaciones/transiciones únicamente en contenedores */
.e-con,
.e-con:where(:not(.e-div-block-base)) {
  animation: none !important;
  transition: none !important;
}


/* BLUR OVERLAY */
#bp-mega-overlay {
  position: fixed;
  left: 0;
  width: 100%;
  z-index: 9100;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.4);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  opacity: 0;
  transition: opacity 0.35s ease;
}
#bp-mega-overlay.is-active {
  opacity: 1;
}

/* Oculta el header viejo cuando el nuevo #26625 esta activo */
html.bp-has-new-header .elementor-location-header:not(.bp-header-new) {
  display: none !important;
}

/* EDITOR DE ELEMENTOR - desactiva el fixed para no tapar el canvas */
body.elementor-editor-active .bp-header-new {
  position: relative !important;
  z-index: 1 !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Transparenta el container externo del header */
.elementor-26625 > .e-con,
.elementor-26625 > div > .e-con,
.elementor-26625 .e-con.e-parent,
.elementor-26625 .elementor-section.elementor-top-section {
  background: transparent !important;
  background-color: transparent !important;
}
body.elementor-editor-active .elementor-26625 > .e-con,
body.elementor-editor-active .elementor-26625 > div > .e-con,
body.elementor-editor-active .elementor-26625 .e-con.e-parent {
  background: #0a0b0e !important;
}

/* HEADER #26625 - SOLIDO NEGRO */
.bp-header-new {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  background: #0a0b0e !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.4) !important;
  transition: box-shadow .35s !important;
  overflow: visible !important;
}
.bp-header-new.bp-scrolled {
  background: #0a0b0e !important;
  box-shadow: 0 2px 28px rgba(0,0,0,0.6) !important;
}

/* ADMIN BAR */
body.admin-bar .bp-header-new {
  top: 32px !important;
}
@media screen and (max-width: 782px) {
  body.admin-bar .bp-header-new {
    top: 46px !important;
  }
}

/* OCULTAR item "Hire top talent" del nav menu en live (visible en editor) */
body:not(.elementor-editor-active) .elementor-26625 .menu-cta-mobile {
  display: none !important;
}

/* COLOR ACTIVO - reset del item activo de Elementor (ej. About Us) */
.elementor-26625 .e-n-menu-item a.elementor-item-active,
.elementor-26625 a[aria-current="page"],
.elementor-26625 .current-menu-item > a,
.elementor-26625 .current-menu-ancestor > a {
  color: #ffffff !important;
}

/* MEGA MENU DROPDOWN - negro solido */
.elementor-26625 .e-n-menu-content {
  top: 100% !important;
  background: #0a0b0e !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: none !important;
  border-radius: 0 0 14px 14px !important;
  box-shadow: 0 20px 60px rgba(0,0,0,0.6) !important;
}

/* Container interno del mega menu - transparente en live */
body:not(.elementor-editor-active) .elementor-26625 .e-n-menu-content .e-con-boxed,
body:not(.elementor-editor-active) .elementor-26625 .e-n-menu-content .e-con {
  background: transparent !important;
  background-color: transparent !important;
}

/* HIRE TOP TALENT - boton widget desktop */
.elementor-26625 .nav-cta > a {
  background: #26CBAD !important;
  color: #ffffff !important;
  border-radius: 6px !important;
  padding: 10px 22px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.elementor-26625 .nav-cta > a:hover {
  background: #1fb99b !important;
}

/* FIND A JOB - muted */
.elementor-26625 .nav-muted > a {
  color: #8A8F9E !important;
}

/* MOBILE + TABLET ONLY */
@media (max-width: 1024px) {
  .elementor-26625 .elementor-nav-menu--dropdown {
    background: #0a0b0e !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-top: none !important;
    box-sizing: border-box !important;
  }
  .elementor-26625 .elementor-nav-menu--dropdown li,
  .elementor-26625 .elementor-nav-menu--dropdown li a {
    background: #0a0b0e !important;
  }
  .elementor-26625 .elementor-nav-menu--dropdown li a {
    color: #ffffff !important;
    text-align: left !important;
    padding: 14px 20px !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    display: block !important;
  }
  .elementor-26625 .elementor-nav-menu--dropdown li a:hover {
    color: #26CBAD !important;
    background: rgba(38,203,173,0.06) !important;
  }
  /* En mobile el item "Hire top talent" se muestra como boton en el menu desplegable */
  body:not(.elementor-editor-active) .elementor-26625 .menu-cta-mobile {
    display: block !important;
  }
  body:not(.elementor-editor-active) .elementor-26625 .menu-cta-mobile > a {
    background: #26CBAD !important;
    color: #ffffff !important;
    margin: 12px 16px 4px 16px !important;
    border-radius: 6px !important;
    text-align: center !important;
    font-weight: 600 !important;
    border-bottom: none !important;
    padding: 14px 20px !important;
    display: block !important;
  }
  .elementor-26625 .e-n-menu-content {
    top: auto !important;
    position: relative !important;
    width: 100% !important;
    background: #0a0b0e !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  .elementor-26625 .e-n-menu-content .e-con-boxed,
  .elementor-26625 .e-n-menu-content .e-con {
    background: #0a0b0e !important;
  }
  .bp-arch-grid,
  .bp-eng-grid {
    grid-template-columns: 1fr !important;
    padding: 8px 16px !important;
  }
}


/* Forzar un padding superior manual en el primer contenedor de todas las páginas */
#main .elementor-section:first-of-type,
#main .e-con.e-parent:first-of-type,
.elementor-inner > .elementor-section:first-child,
.elementor-inner > .e-con.e-parent:first-child {
    padding-top: 40px !important; /* Cambia 40px por el espacio que desees tener realmente */
}