@font-face {
  font-family: "Montserrat";
  src: url('../webfonts/Montserrat-VariableFont_wght.ttf') format("truetype");
  font-weight: 100 900;
  font-style: normal;
}

:root {
  --primary-color: #FFB300;
  --secondary-color: #333333;
  --gray-dark-color: #808080;
  --gray-light-color: #E6E6E6;
  --font-family: 'Montserrat', Arial, sans-serif;
  --font-size-base: 0.8rem;
  --line-height-base: 1.5;
  --border-radius: 4px;
  --box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  --bs-primary: var(--primary-color);
}

body {
  font-family: var(--font-family);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  color: var(--secondary-color);
  margin: 0;
  padding: 0;
  background-color: #FFFFFF;
}

a{
  color: var(--gray-dark-color);
  text-decoration: none;  
}

a:hover {
  color: var(--primary-color);
  text-decoration: none;
}

a i {
  color: var(--primary-color);
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 800;
  color: var(--secondary-color);
}

hr{
  margin: 2rem 0;
}

.background-primary {
  background-color: var(--primary-color);
}
.background-secondary {
  background-color: var(--secondary-color);
}
.background-gray-light {
  background-color: var(--gray-light-color);
}
.background-gray-dark {
  background-color: var(--gray-dark-color);
}

.logo-dark{
  width: 120px;
}

.logo-light {
  width: 150px;
}

.dropdown-item {
  font-weight: 500;
}

.dropdown-toggle::after {
  font-family: "Font Awesome 6 Free";
  content: "\f0d7";
  margin-left: 0.2rem;
  vertical-align: -1px;
  color: var(--primary-color);
}

.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--secondary-color);
  background-color: var(--primary-color);
  font-weight: 700;
}

.nav-link:focus,
.nav-link:hover {
  color: var(--primary-color);
}

.navbar-stick {
  border-bottom: 1px solid var(--gray-light-color);
}

.black-gradient{
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.8) 100%);
}

.progress-wrap:after{
  color: var(--primary-color);
}

.flip-card {
  perspective: 1000px;
}

.flip-card-inner {
  position: relative;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
  transform: rotateY(180deg);
  /* Gira al pasar el mouse */
}

.flip-card-front,
.flip-card-back {
  backface-visibility: hidden;
}

/* Reverso */
.flip-card-back {
  position: absolute;
  transform: rotateY(180deg);
  height: 100%;
  width: 100%;
  top: 0;
  overflow-y: auto;
  overflow-x: hidden;
}

.alineacion-vertical {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.bt-banner{
  cursor: pointer;
  font-size: 1.3rem;
  font-weight: 900;
  background-color: var(--secondary-color);
  padding: 20px 10px;
  color: #fff
}

.bt-banner > a{
  text-decoration: none;
  color: #fff
}

.bt-banner:hover{
  background-color: var(--primary-color);
  color: var(--secondary-color);
  text-decoration: none;
}

.news-description{
  cursor: pointer;
  background-color: var(--gray-light-color);
  padding: 10px;
  text-align: center;
}

.news-description:hover{
  background-color: var(--primary-color);
  text-decoration: none;
}

.news-description>a {
  text-decoration: none;
  color: var(--secondary-color);
}

.botonera {
  position: fixed;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 10px;
  background-color: var(--primary-color);
  padding: 5px;
}

.botonera a i {
  background-color: var(--secondary-color);
  color: var(--gray-light-color);
  font-size: .6rem;
  padding: 5px;
  border-radius: 50%;
  text-align: center;
  transition: all ease-in-out 0.6s;
}

.botonera:hover a i {
  font-size: 1.3rem;
  transition: all ease-in-out 0.4s;
}

.item-crop-carrusel {
  aspect-ratio: 16 / 9;
  /* mantiene proporción */
  width: 100%;
  overflow: hidden;
}

.item-crop-carrusel img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  padding: 8px;
}

.item-crop-noticia {
  width: 200px;
  height: 200px;
  flex: 0 0 auto;
  overflow: hidden;
}

@media (max-width: 767px) {
  .item-crop-noticia {
    width: 100%;
    margin-bottom: 10px;
  }
}

.item-crop-noticia a img {
  width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.texto-mapa{
  font-size: 1.2rem;
  /* text-align: end; */
  font-weight: 500;
}

.accordion-wrapper .card {
  background-color: var(--gray-dark-color);
}

.accordion-wrapper .card-header button.collapsed {
  color: #fff;
}

.accordion-item .card-body {
  color: #fff;
}

.accordion-item .card-body h3,
.accordion-item .card-body h4 {
  color: var(--gray-light-color);
}

.accordion-wrapper .card-header button:before {
  left: 1.0rem;
  font-size: 1.5rem;
  margin-top: -0.2rem;
  margin-left: -.3rem;
}

.accordion-wrapper .card-header button {
  font-size: 1.1rem;
}

.contenedor-mapa iframe {
  border-radius: var(--border-radius);
  box-shadow: var(--box-shadow);
  border: 4px solid var(--primary-color) !important;
}

.sombra{
  box-shadow: 5px 3px 10px #c5c5c5
}

.contenedor-info {
  color: var(--gray-light-color);
}

.contenedor-info h3{
  color: var(--gray-light-color);
  font-weight: 300;
  font-size: 2rem;
}

.contenedor-info i {
  font-size: 2rem;
}

.numeral850{
  font-size: 3.2rem;
  font-weight: 800;
  color: var(--gray-light-color);
  text-align: center;
  border-bottom: var(--gray-light-color) 4px solid;
}

@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .dropdown-menu .dropdown-toggle:after {
    right: .6rem;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg.navbar-light .dropdown:not(.dropdown-submenu)>.dropdown-toggle:after {
    color: var(--primary-color);
  }
}