/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/



/* Mantén tu hover */
.bricks-nav-menu > li { position: relative; }
.bricks-nav-menu > li::after {
  content: "";
  position: absolute;
  left: 0; bottom: -4px;
  width: 0; height: 1.5px;
  background-color: var(--color-acento);
  transition: width 0.3s ease;
  
  
}
.bricks-nav-menu > li:hover::after { width: 100%; 

}


.bricks-nav-menu > li.active-section::after { width: 100%; }


.bricks-nav-menu > li.current-menu-item::after,
.bricks-nav-menu > li.current_page_item::after,
.bricks-nav-menu > li.current-menu-parent::after {
  width: 100%;
}


.Header_Section__container {
  position: fixed;
  left: 0;
  right: 0;
  top: 120px; 
  transition: background-color .2s ease, transform .4s ease;
  z-index: 998;
  max-width: var(--container-max-wide);
  margin: 0 auto;
  width: 100%;
  will-change: transform;
}

.Header_Section__container.is-scrolled {

  transform: translateY(calc(-100% - 24px));
}



@media (max-width: 767px) {
.Header_Section__container {
  position: fixed;
  left: 0;
  right: 0;
  top: 0; 
  transition: background-color .2s ease, transform .4s ease;
  z-index: 998;
  max-width: var(--container-max-wide);
  margin: 0 auto;
  width: 100%;
  will-change: transform;
}

.Header_Section__container.is-scrolled {
  
  transform: none;
}

.brx-offcanvas-inner {
  display: flex;
  flex-direction: column;
  padding: 24px 20px;
  gap: 4px;
}


.mobile-nav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 8px;
}

.mobile-nav .brxe-text-link {
  padding: 12px 8px;
  font-size: 16px;
  font-weight: 500;
  color: #1a1a1a;
  text-decoration: none;
  border-radius: 6px;
  transition: background-color 0.2s ease;
}

.mobile-nav .brxe-text-link:hover {
  background-color: rgba(0, 82, 136, 0.06);
  color: #005288;
}


.brx-offcanvas-inner > .brxe-divider.horizontal {
  margin: 12px 0 16px;
}

.brx-offcanvas-inner > .brxe-divider.horizontal .line {
  border-top: 1px solid #e5e5e5;
}


.contact-header-banner {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 20px;
}

.contact-header-body-banner {
  display: flex;
  align-items: center;
  gap: 10px;
}

.contact-header-body-banner .brxe-icon {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

.contact-header-body-banner .brxe-text-basic {
  font-size: 14px;
  color: #4a4a4a;
  line-height: 1.3;
}

.contact-header-body-banner a.brxe-text-basic {
  color: #4a4a4a;
  text-decoration: none;
}


.contact-header-banner .brxe-divider.horizontal {
  margin: 0;
}

.contact-header-banner .brxe-divider.horizontal .line {
  border-top: 1px solid #eeeeee;
}


.Footer_Section__social-container {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 4px;
}

.body_icons_footer {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: #005288;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
}

.body_icons_footer:hover {
  opacity: 0.85;
}

.body_icons_footer .social-icon {
  color: #ffffff;
  font-size: 14px;
}


}



@media (max-width: 520px) {

.Header_Section__container {
  position: fixed;
  left: 0;
  right: 0;
  top: 0; 
  transition: background-color .2s ease, transform .4s ease;
  z-index: 998;
  max-width: var(--container-max-wide);
  margin: 0 auto;
  width: 100%;
  will-change: transform;
}

.Header_Section__container.is-scrolled {
 
  transform: none;
}


}