/* Branding Block Section */
.branding__item--logo {
  width: var(--header-logo-width);
  margin-left: 0.5rem;
}

/* ==============================
   Header nav base
   ============================== */

.lgd-header__nav {
  display: none;
  width: 100%;
  margin-inline: var(--spacing);
}

.lgd-header__nav.lgd-header__nav--active {
  display: block;
}

/* ==============================
   Primary navigation
   ============================== */

.lgd-header__nav--primary {
  display: none;
}

.lgd-header__nav--primary.lgd-header__nav--active {
  display: flex;
  flex-direction: column-reverse;
  margin-top: 1rem;
}

/* Desktop: primary menu always visible */
@media screen and (min-width: 48rem) {
  .lgd-header__nav--primary {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: auto;
    margin-inline: 0px;  
  }
}

/* ==============================
   Secondary navigation (services)
   ============================== */

.lgd-header__nav--secondary {
  display: none;
}

/* ==============================
   Search navigation
   ============================== */

.lgd-header__nav--search {
  display: none;
}

.lgd-header__nav--search.lgd-header__nav--active {
  display: block;
}

/* Botón lupa - Font Awesome 5 */
.lgd-header__toggle--search .lgd-header__toggle-icon--search::before {
  content: "\f002"; /* fa-search */
  font-family: "Font Awesome 5 Free";
  font-weight: 900; /* Solid */
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
}

.lgd-header__toggle--search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #113555;
  border-radius: 4px;
  border: none;
}

.lgd-header__toggle--search:hover,
 .lgd-header__toggle--search:active {
  background: #1f5f86;
  color: #fff;
  border-radius: 50px;
  border: none;
}

/* ==================================================
   HEADER ICON TOGGLES (Font Awesome 5)
   ================================================== */

/* --- Base: ocultar chevrons en Menu y Search --- */
.lgd-header__toggle--primary .lgd-header__toggle-icon::after,
.lgd-header__toggle--search .lgd-header__toggle-icon::after {
  content: none;
}

/* --- Ocultar texto "Menu" --- */
.lgd-header__toggle--primary .lgd-header__toggle-text {
  display: none;
}

/* --- Icon base styles --- */
.lgd-header__toggle--primary .lgd-header__toggle-icon,
.lgd-header__toggle--search .lgd-header__toggle-icon {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-inline-start: 0px;
}

/* --- Font Awesome icon (default state) --- */
.lgd-header__toggle--primary .lgd-header__toggle-icon::before,
.lgd-header__toggle--search .lgd-header__toggle-icon::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 1.25rem;
  line-height: 1;
  display: inline-block;
  transition: all .2s ease-in-out;
}

/* ==================================================
   CLOSED STATE ICONS
   ================================================== */

/* Menu (bars) */
.lgd-header__toggle--primary .lgd-header__toggle-icon::before {
  content: "\f0c9"; /* fa-bars */
}

/* Search (lupa) */
.lgd-header__toggle--search .lgd-header__toggle-icon::before {
  content: "\f002"; /* fa-search */
}

/* ==================================================
   OPEN STATE ICONS (times)
   ================================================== */

.lgd-header__toggle--active.lgd-header__toggle--primary
  .lgd-header__toggle-icon::before,
.lgd-header__toggle--active.lgd-header__toggle--search
  .lgd-header__toggle-icon::before {
  content: "\f00d"; /* fa-times */
  transform: rotate(90deg);
}

/* ==================================================
   SUBTLE INSTITUTIONAL ANIMATION
   ================================================== */

.lgd-header__toggle {
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}

.lgd-header__toggle--active
  .lgd-header__toggle-icon::before {
  transform: rotate(90deg);
}

/* Focus visibility (accessibility) */
.lgd-header__toggle:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* ==========================================
   Remove underline from icon-only header buttons
   ========================================== */

.lgd-header__toggle--primary,
.lgd-header__toggle--search {
  text-decoration: none;
}

.lgd-header__toggle--primary:hover,
.lgd-header__toggle--primary:focus,
.lgd-header__toggle--primary:active,
.lgd-header__toggle--search:hover,
.lgd-header__toggle--search:focus,
.lgd-header__toggle--search:active {
  text-decoration: none;
}

.lgd-header__toggle--secondary {
  padding: 0.75rem;
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
  border-radius: 4px;
  border: none;
  padding: 0.75rem 1rem 0.85rem 1.2rem;
  transition: all 0.3s ease-in-out;
  font-weight: 600;
}

.lgd-header__toggle--secondary:hover,
.lgd-header__toggle--secondary:focus {
  padding: 0.75rem;
  background: #1f5f86;
  color: #fff;
  border-radius: 50px;
  border: none;
  padding: 0.75rem 1rem 0.85rem 1.2rem;
  text-decoration: none;
}

.lgd-header__toggle--primary {
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #113555;
  border-radius: 4px;
  border: none;
}

.lgd-header__toggle--primary:hover {
  background: #1f5f86;
  color: #fff;
  border-radius: 50px;
  border: none;
}

@media screen and (min-width: 48rem) {
  .lgd-header__toggles {
    margin-inline-end: 0.5rem;
}
}

@media screen and (min-width: 48rem) {
.region-secondary-menu {
    border-radius: 8px;
}
}

.lgd-region__inner--secondary-menu {
    border-radius: 8px;
}

.lgd-region--primary-menu {
    border-radius: 8px;
}

.lgd-region--search .form-submit {
    color: var(--header-search-button-color);
    background-color: rgba(255, 255, 255, 0.25);
    font-weight: 600;
    border-top: 15px rgba(255, 255, 255, 0.25);
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    transition: all 0.3s ease;
}

.lgd-region--search .form-submit:hover,
.lgd-region--search .form-submit:focus {
    background-color: #1f5f86;
    border-top: 15px #1f5f86;
    font-weight: 600;
    color: var(--header-search-button-color);
    text-decoration: none;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
}

.lgd-region--search .form-text {
    width: 100%;
    /* border: var(--header-search-input-border); */
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    margin-bottom: 1px;
}

.lgd-region--search .form-actions {
    margin-block-start: 1rem !important;
}