@import url('https://fonts.googleapis.com/css2?family=Lovers+Quarrel&display=swap');

body {
    font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
}

h1,
h2,
h3 {
    font-family: "Lovers Quarrel", cursive;
    font-weight: 400;
}

h1 {
    font-size: clamp(3.2rem, 5.5vw, 4.2rem);
}

p {
    font-size: 1.05rem;
    line-height: 1.75;
}

.Bloqueador {
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 1062;
    background-color: rgba(255, 255, 255, 0.9);
    display: none;
}

.BloqueadorLogo {
    position: absolute;
    width: 200px;
    height: 200px;
    top: 50%;
    left: 50%;
    margin-left: -100px;
    margin-top: -150px;
}

.BloqueadorLogo img {
    position: absolute;
    width: 150px;
    height: 150px;
    top: 50%;
    left: 50%;
    margin-top: -75px;
    margin-left: -75px;
}

.text-leyendas {
    color: #327e87;
}

.btn-leyendas {
    background-color: #327e87;
    color: #ffffff;
    border: none;
    padding: 0.6rem 1.5rem;
    font-weight: 500;
    border-radius: 0.5rem;
    transition: background-color 0.25s ease, box-shadow 0.25s ease, transform 0.15s ease;
}

.btn-leyendas:hover,
.btn-leyendas:focus {
    background-color: #1e9aa3;
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(35, 176, 186, 0.35);
    transform: translateY(-1px);
}

.btn-leyendas:active {
    background-color: #198a92;
    transform: translateY(0);
}

.btn-leyendas:focus-visible {
    outline: 3px solid rgba(35, 176, 186, 0.4);
    outline-offset: 2px;
}

.bg-doctor-pecho {
    background-image: url(../assets/images/doctor-pecho.webp);
    background-size: cover;
    background-position: 50%;
    min-height: 50vh;
}

.bg-doctor-digital {
    background-image: url(../assets/images/doctor-digital.webp);
    background-size: cover;
    background-position: 50%;
    min-height: 50vh;
}

.btn-leyendas-white {
    background-color: #ffffff;
    color: #327e87;
    border: 2px solid #ffffff;
    padding: 0.6rem 1.5rem;
    font-weight: 500;
    border-radius: 0.5rem;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, transform 0.15s ease;
}

.btn-leyendas-white:hover,
.btn-leyendas-white:focus {
    background-color: transparent;
    color: #ffffff;
    border-color: #ffffff;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}

.btn-leyendas-white:active {
    transform: translateY(0);
}

.btn-leyendas-white:focus-visible {
    outline: 3px solid rgba(255, 255, 255, 0.5);
    outline-offset: 2px;
}

footer a {
    color: #6c757d;
    /* text-muted */
    transition: color 0.2s ease;
}

footer a:hover,
footer a:focus {
    color: #327e87 !important;
    text-decoration: none !important;
}



/*ANIMACIONES*/

.logo-animado {
    max-width: 370px;
    opacity: 0;
    transform: translateY(-50px);
    animation: fadeDown 1.5s ease-out forwards;
}

.bg-color-leyendas {
    background-color: #327e87;
    animation: cambioColorFondo 5s ease-out forwards;
}

@keyframes cambioColorFondo {
  from {
    background-color: #1a252f;
  }
  to {
    background-color: #327e87;
  }
}

@keyframes fadeDown {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.slogan-animado {
    opacity: 0;
    transform: translatex(-15px);
    animation: fadeRight 1.5s ease-out forwards;
}

@keyframes fadeRight {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* MEDIA QUERIES */

@media (min-width: 576px) {

    .container,
    .container-sm {
        max-width: 720px;
    }
}


/* MD — ≥768px */
@media (min-width: 768px) {

    .container,
    .container-md,
    .container-sm {
        max-width: 920px;
    }
}


/* LG — ≥992px */
@media (min-width: 992px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 1120px;
    }
}


/* XL — ≥1200px */
@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1280px;
    }
}


/* XXL — ≥1400px */
@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1380px;
    }
}