/* ESTILOS GENERALES CSNET */

:root {
    --principal: #638d2e;
    --principal-light: #65e000;
    --secundario: #30aab0;
    --negro: #1b1b1b;
    --blanco: #fefefe;
    --main-brown: #ebcfb2;
    --gris: #354f4e;
    --gris-light: #ccd7d7;
    --soft-grey: #eaeaea;
}

@font-face {
    font-family: "Roboto";
    src: url("/fuentes/Roboto/Roboto-Light.ttf");
    font-style: normal;
    font-weight: 300;
}

@font-face {
    font-family: "Roboto";
    src: url("/fuentes/Roboto/Roboto-Regular.ttf");
    font-style: normal;
    font-weight: 400;
}

@font-face {
    font-family: "Roboto";
    src: url("/fuentes/Roboto/Roboto-Bold.ttf");
    font-style: normal;
    font-weight: 700;
}

@font-face {
    font-family: "Urbanist";
    src: url("/fuentes/Urbanist/Urbanist-VariableFont_wght.ttf")
        format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Inter";
    src: url("/fuentes/Inter/Inter-VariableFont_opsz,wght.ttf")
        format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Playfair Display";
    src: url("/fuentes/Playfair_Display/PlayfairDisplay-VariableFont_wght.ttf/")
        format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Playfair Display";
    src: url("/fuentes/Playfair_Display/PlayfairDisplay-Italic-VariableFont_wght.ttf/")
        format("truetype");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

.fondo-principal {
    background-color: var(--principal);
}
.fondo-gris {
    background-color: var(--gris);
}
.fondo-gris-light {
    background-color: var(--gris-light);
}

.color-principal {
    color: var(--principal);
}
.color-gris {
    color: var(--gris);
}
.color-plata{
    color: #4C698D;
}

.fuente-urbanist{
    font-family: "Urbanist", "Inter", sans-serif;
}

.fuente-serif{
    font-family: "Playfair Display";
}

.boton-principal {
    color: white;
    background-color: var(--principal);
    border: 1px solid var(--principal);
}

.boton-principal:hover {
    color: white;
    background-color: var(--secundario);
    border: 1px solid var(--secundario);
}

.boton-outline-principal {
    color: var(--principal);
    border: 1px solid var(--principal);
}

.boton-outline-principal:hover {
    color: white;
    background-color: var(--principal);
}

body {
    font-family: "Inter", "Urbanist", sans-serif;
    background-color: white;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    font-size: 1rem;
    overflow-x: hidden;
}

main {
    flex-grow: 1;
}

.boton-clausula {
    width: fit-content;
    border: 1px solid rgb(190, 190, 190);
}

.boton-clausula:focus:not(:focus-visible),
.boton-clausula:not(.collapsed) {
    color: var(--negro);
    box-shadow: none;
    background-color: transparent;
    border: 1px solid rgb(190, 190, 190);
}

.boton-clausula:not(.collapsed)::after {
    background-image: url("/imagenes/iconos/chevron-down.svg"),
        url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.card-noticia {
    text-decoration: none;
    color: var(--negro);
    transition: all 0.2s;
}

.card-noticia:hover {
    color: var(--negro);
    opacity: 0.7;
}

.noticia a {
    color: var(--principal);
    text-decoration: none;
    transition: all 0.2s;
}

.noticia a:hover {
    opacity: 0.7;
}

ul.pagination {
    justify-content: center;
    margin-bottom: 3em;
}

.pagination .page-item.active .page-link {
    background-color: var(--verde1);
    border-color: var(--verde1);
}

.pagination .page-link {
    color: var(--verde1);
}

.pagination .page-link:focus {
    box-shadow: none;
}

.pagination .page-item:first-child .page-link,
.pagination .page-item:last-child .page-link {
    border-radius: 0;
}

/* PIE */

.pie a {
    text-decoration: none;
    transition: all 0.3s;
}

.pie a:hover {
    color: var(--blanco);
}

.pie {
    color: var(--blanco);
    background: linear-gradient(
            0deg,
            rgba(53, 79, 78, 0.85) 0%,
            rgba(53, 79, 78, 0.85) 100%
        ),
        url("/imagenes/bg-pie.jpg") lightgray 50% / cover no-repeat;
}

.pie-title {
    color: var(--blanco);
    text-align: center;
    font-family: Inter;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.subtitles-pie {
    color: #fff;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
}

/* Navbar */
.navbar.navbar-home {
    background: rgba(0, 0, 0, 0) !important;
    backdrop-filter: blur(0) !important;
    transition: background 0.4s ease, backdrop-filter 0.4s ease, box-shadow 0.4s ease;
}

.navbar.navbar-home.navbar-home-bg {
    background: rgba(0, 0, 0, 0.3) !important;
    backdrop-filter: blur(4px) !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

.imagen-logo {
    height: 80px;
    width: auto;
    display: block;
}

.navbar-home .nav-link {
    color: var(--blanco);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    font-family: "Urbanist", "Inter", sans-serif;
}
.navbar-light .nav-link {
    color: var(--blanco);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    font-family: "Urbanist", "Inter", sans-serif;
}

.navbar-home .nav-item {
    border-bottom: 2px solid transparent;
}
.navbar-home .nav-item:hover {
    border-bottom: 2px solid var(--blanco);
}

.navbar-home #idiomaDropdown:hover,
.navbar-home #idiomaDropdown:focus,
.navbar-home #serviciosDropdown:hover,
.navbar-home #serviciosDropdown:focus {
    color: var(--blanco);
}

.navbar-home .nav-item:hover .nav-link {
    color: var(--blanco);
}

#menuIdioma,
#menuServicios {
    background: rgba(0, 0, 0, 0.3) !important;
    backdrop-filter: blur(4px) !important;
    padding: 0 !important;
    border-radius: 0.25rem;
    overflow: hidden;
    margin-top: 0.5rem;
}

#menuIdioma .dropdown-item,
#menuServicios .dropdown-item {
    color: var(--blanco);
    transition: 0.2s;
    padding: 4px 8px;
    text-transform: uppercase;
}
#menuIdioma .dropdown-item:hover,
#menuServicios .dropdown-item:hover {
    color: var(--negro);
    background-color: var(--blanco);
}

/* CTA */
.btn-cta {
    display: inline-flex;
    padding: 16px 24px;
    align-items: center;
    border-radius: 6px;
    background: var(--soft-grey);
    transition: 0.3s;
    color: var(--gris);
    font-size: .85rem;
    font-weight: 400;
    line-height: normal;
    text-decoration: none;
    white-space: nowrap;
}

.btn-cta:hover {
    color: var(--blanco);
    background-color: var(--gris);
}

/* titulos */
.h2 {
    color: #000;
    text-align: center;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
