html,
body {
  overflow-x: hidden;
}

:root {
  --bs-nav-link-font-size: .9rem;
}

.title {
  padding-bottom: .5rem;
}

/**
 * @file
 * Subtheme specific CSS.
 */
p {
  font-family: var(--bs-body-font-family);
}

.path-administraciones-modal h1.title {
    display: none;
}

.navbar-brand img {
  padding-left: 10px;
  max-height: 90px;
  width: auto;
}

.region-header-form img {
  padding-right: 10px;
  max-height: 100px;
  width: auto;
}

#navbar-logo {
  border-bottom: 3px solid #007b6d;
}

@media (max-width: 767.98px) {
  #navbar-top .container {
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px;
  }

  #navbar-top .ms-auto {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #navbar-top .justify-content-start {
    justify-content: center !important;
  }

  #navbar-top .content span {
    font-size: 0.875rem !important;
  }

  #navbar-top .content i {
    font-size: 0.9rem !important;
  }
}



#navbar-logo .navbar-toggler {
  font-size: inherit;
  border-width: 0;
  padding: 0;
}

#navbar-logo .mx-2 {
  margin-right: 0 !important;
}

#navbar-logo .navbar-toggler:focus,
#navbar-logo .navbar-toggler:active {
  outline: none !important;
  box-shadow: none !important;
}

#navbar-logo .navbar-toggler:focus-visible {
  outline: 2px solid #000000;
}

@media (max-width: 767.98px) {

  #navbar-logo .container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
  }

  #navbar-logo .navbar-brand {
    max-width: 65% !important;
    margin-right: 0 !important;
  }

  #navbar-logo .navbar-brand img {
    max-height: 50px !important;
    width: auto !important;
    object-fit: contain;
    padding-left: 0px;
  }
}


/* ======================================================
   BREADCRUMB – Sin subrayado
   ====================================================== */

.breadcrumb {
  --bs-breadcrumb-divider: "›";
  font-size: .95rem;
  margin-bottom: 1rem;
}

.breadcrumb-item+.breadcrumb-item::before {
  color: #6c757d;
  font-weight: 600;
}

.breadcrumb-item a {
  color: #007b6d;
  text-decoration: none !important;
}

.breadcrumb-item a:hover {
  text-decoration: underline;
}

.breadcrumb-item.active {
  color: #495057;
  /*font-weight: 600;*/
}

/* ==========================================
   Breadcrumb - Animación del subrayado
========================================== */

.breadcrumb-item a {
  position: relative;
  display: inline-block;
  color: #007b6d;
  text-decoration: none;
  transition: color .3s ease;
}

.breadcrumb-item a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -3px;
  width: 0;
  height: 2px;
  background: #007b6d;
  transition: all .3s ease;
  transform: translateX(-50%);
}

.breadcrumb-item a:hover::after,
.breadcrumb-item a:focus::after {
  width: 100%;
}

.breadcrumb-item a:hover,
.breadcrumb-item a:focus {
  color: #005f55;
}

/* ======================================================
   CONTENIDO DE LOS NODOS
   Enlaces con animación institucional CPS
   ====================================================== */

/* Enlaces dentro del contenido */

.node__content a,
.field--type-text-with-summary a,
.field--type-text-long a,
.text-formatted a {

  position: relative;
  display: inline-block;

  color: var(--bs-primary);
  font-weight: 500;
  text-decoration: none;

  transition: color .25s ease;
}

/* Línea inferior */

.node__content a::after,
.field--type-text-with-summary a::after,
.field--type-text-long a::after,
.text-formatted a::after {

  content: "";

  position: absolute;

  left: 50%;
  bottom: -2px;

  width: 100%;
  height: 2px;

  background: var(--bs-primary);

  transform: translateX(-50%) scaleX(0);
  transform-origin: center;

  transition: transform .25s ease;
}

/* Hover */

.node__content a:hover,
.field--type-text-with-summary a:hover,
.field--type-text-long a:hover,
.text-formatted a:hover {

  color: var(--bs-primary);
}

/* Animación */

.node__content a:hover::after,
.field--type-text-with-summary a:hover::after,
.field--type-text-long a:hover::after,
.text-formatted a:hover::after {

  transform: translateX(-50%) scaleX(1);
}


/* =====================================================
   ACCORDION INSTITUCIONAL
===================================================== */
.accordion-item {
    border: 1px solid #d9e4e2;
    border-radius: .5rem;
    overflow: hidden;
    margin-bottom: .75rem;
}

.accordion-item:not(:first-of-type) {
  border: 1px solid #d9e4e2 !important;
}

.accordion-button {
    background: #ffffff;
    color: #006f63;
    font-weight: 600;
    box-shadow: none;
}

.accordion-button:not(.collapsed) {
    background: #006f63;
    color: #ffffff;
    box-shadow: none;
}

.accordion-button:focus {
    border-color: transparent;
    box-shadow: 0 0 0 .2rem rgba(0,111,99,.15);
}

/* Flecha */
.accordion-button::after {
    filter: hue-rotate(130deg);
}

.accordion-button:not(.collapsed)::after {
    filter: brightness(0) invert(1);
}

.accordion-body {
    background: #ffffff;
}

.accordion-body .list-group-item {  
  padding: var(--bs-list-group-item-padding-y) 0 !important;
}