:root {
    /* Color styles */
    --black: #000000;
    --white: #FFFFFF;
    --text: #202427;
    --gray: #677385;
    --color-primary-1: #4DC1F0;
    --color-primary-2: #86D0ED;
    --color-primary-3: #C0E5F4;
    --color-primary-4: #E4F5FC;
    --color-primary-5: #F3F4F6;
    --color-secondary-1: #505558;
    --color-secondary-2: #D8DCDD;
    --complement: #005277;

    /* Text-size styles */
    /* base size: base (16px) */
    --nav-link: 1.25rem;
    --base: 1rem;
    --text--subtitle: 1.5rem;
    --text--text: 1.25rem;
    --title--big: 4.06rem;
    --title--title-primary: 2.62rem;
    --title--title-secondary: 2rem;

    /* Effect styles */
    --sombra:  -5px 4px 30.299999237060547px rgba(35, 55, 94, 0.19);

}
html, body {
    padding: 0;
    margin: 0;
    font-family: 'Reddit Sans', 'Roboto', 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
    font-style: normal;
    font-optical-sizing: auto;
    font-weight: 400;
    font-size: 16px;
    color: var(--text);
    background-color: var(--white);
}
html {
    scroll-behavior: smooth;
}
.color__primary-1 {
    color: var(--color-primary-1);
}
.color__secondary-2 {
    color: var(--color-primary-2);
}
.color__secondary-3 {
    color: var(--color-primary-3);
}
.color__complement {
    color: var(--complement);
}

.title__primary {
    font-size: clamp(2rem, 1.3386rem + 1.0678vw, 2.62rem);
    font-weight: 400;
    line-height: 130%;
}
.title__secondary {
    font-size: clamp(1.75rem, 1.4833rem + 0.4306vw, 2rem);
}
.subtitle {
    font-size: clamp(1.25rem, 0.9833rem + 0.4306vw, 1.5rem);
}
p, li {
    font-size: clamp(1rem, 0.4666rem + 0.8611vw, 1.5rem);
}
.btn {
    font-size: clamp(1rem, 0.7333rem + 0.4306vw, 1.25rem);
    font-weight: 500;
    padding: .94rem 2.81rem;
    border-radius: 1.5625rem;
}
.btn__white {
    color: var(--black);
    background-color: var(--white);
}
.btn__primary-1 {
    color: var(--white)!important;
    background-color: var(--color-primary-1);
}
.btn__black {
    color: var(--white)!important;
    background-color: var(--black);
}
/* ---------------------------------------
--------------------------------------- */
.navbar {
    padding: 3rem 0;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1000;
}
.navbar .navbar-brand img {
    max-width: 15rem;
    width: 100%;
    height: auto;
}
.navbar-nav {
    flex-direction: row;
}
.navbar-nav .nav-item {
    margin: 0 15px;
}
.navbar-nav:first-of-type {
    margin-right: auto;
}
.navbar-nav:last-of-type {
    margin-left: auto;
}
.navbar-toggler {
    margin-left: auto;
}
.navbar .nav-link {
    font-size: clamp(1rem, 0.7333rem + 0.4306vw, 1.25rem);
    font-weight: 500;
    padding: .9rem .5rem;
    border-radius: 1.56rem;
}
.navbar .nav-link.btn__white {
    color: var(--gray)!important;
    padding: .9rem 1.5rem;
}
.navbar .nav-link.btn__gray {
    color: var(--white)!important;
    background-color: var(--gray);
    padding: .9rem 1.5rem;
}

.section__footer {
    padding: 3rem clamp(0rem, -3.2002rem + 5.1668vw, 3rem) 0;
}
.section__footer .foot {
    padding: clamp(2rem, -0.1335rem + 3.4446vw, 4rem) 0 3rem 0;
    background-color: var(--black);
    border-top-left-radius: 1.5rem;
    border-top-right-radius: 1.5rem;
}
footer p, footer li {
    font-size: clamp(1rem, 0.7333rem + 0.4306vw, 1.25rem);
}
footer p {
    max-width: 27rem;
    width: 100%;
}
footer .list-unstyled.d-flex {
    gap: 1.5rem;
}
footer .list-unstyled.d-flex li a {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    height: 4rem;
    width: 4rem;
    font-size: 2rem;
    border: 1px solid var(--white);
    border-radius: 50%;
}
footer .ql li:not(:last-child) {
    margin-bottom: .5rem;
}
/* ---------------------------------------
--------------------------------------- */
.section__header {
    position: relative;
    height: 100vh;
    overflow: hidden;
}
.section__header::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto 0 0em 0;
    height: 3rem;
    background-color: var(--white);
    border-top-left-radius: 5rem;
    border-top-right-radius: 5rem;
}
.section__header-carousel {
    height: 100%;
    width: 100%;
    display: flex;
    transition: transform 0.5s ease-in-out;
}
.carousel-slide {
    min-width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.section__header-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    width: 100%;
}
.section__header-content h1 {
    font-size: clamp(2.85rem, 1.5566rem + 2.0883vw, 4.0625rem);
    font-weight: 300;
    color: var(--white);
}
.section__header-content h1 span {
    font-weight: 700;
}
.section__header-content .btn {
    margin-top: 20px;
}
.section__header-dots {
    position: absolute;
    left: 8vw;
    bottom: calc(50px + 3rem);
    display: flex;
    flex-direction: row;
    gap: 0.625rem;
    z-index: 10;
    padding: 0.9375rem 2.1875rem;
    border-radius: 3.125rem;
    background: rgba(255, 255, 255, 0.50);
}
.dot {
    background-color: var(--white);
    border-radius: 50%;
    width: 10px;
    height: 10px;
    opacity: 0.7;
    cursor: pointer;
}
.dot.active {
    opacity: 1;
    background-color: var(--black);
}
/* ----- */
.section__about-us {
    padding: 2.15rem 0;
    background-image: url('../img/bg_vector-1.svg');
    background-repeat: no-repeat;
    background-position: 120% 80%;
}
.section__about-us .title__secondary {
    line-height: 165%;
}
.section__about-us p {
    /* font-size: clamp(1.15rem, 0.3766rem + 1.2487vw, 1.875rem); */
    font-size: clamp(1.15rem, 1.025rem + 0.4vw, 1.25rem);
    line-height: 130%;
    color: var(--gray);
    text-align: left;
    max-width: 54rem;
    width: 100%;
}
.list-inline {
    display: flex;
    gap: 1.25rem;
}
.list-inline li {
    font-size: 1.15rem;
}
/* .list-inline li:nth-child(even) {
    display: none;
} */
.section__about-us img {
    display: block;
    max-width: 34rem;
    width: 100%;
    margin: 0 0 auto;
}
/* ----- */
.section__discover-treatments {
    padding: clamp(4rem, 0.5331rem + 5.5974vw, 7.25rem) 0;
    background-image: url('../img/circle.svg');
    background-repeat: no-repeat;
    background-position: 50% 0%;
    background-size: 15vw auto;
}
.section__discover-treatments h2 {
    font-weight: 400;
}
.section__discover-treatments h2 + p {
    color: var(--gray);
    margin: 0 auto;
    max-width: 43rem;
    width: 100%;
}
.treatments {
    padding: 25rem 1.15rem 3rem;
    border-radius: 1rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
}
.treatments .text__secondary {
    font-weight: 400;
    line-height: 165%;
}
.treatments p {
    font-size: clamp(1rem, 0.7867rem + 0.3445vw, 1.2rem);
    text-align: justify;
    line-height: 165%;
}
.treatments-1 {
    background-image: url('../img/service_1.jpg');
}
.treatments-2 {
    background-position: left;
    background-image: url('../img/service_2.jpg');
}
/* ----- */
.section__services {
    padding: 0 clamp(1rem, -4.3337rem + 8.6114vw, 6rem);
}
.section__servicesbox {
    padding: clamp(4rem, -1.3337rem + 8.6114vw, 9rem) clamp(1rem, -2.2002rem + 5.1668vw, 4rem);
    background-image: url('../img/bg-3.png'), url('../img/bg_vector-2.svg');
    background-size: cover, auto 80%;
    background-repeat: no-repeat;
    background-position: center, -15% 50%;
    border-radius: 1.5rem;
}
.section__services p {
    color: var(--gray);
}
.section__services .card {
    background-color: transparent;
    border: 0;
    border-radius: 0;
}
.section__services .card-header {
    background-color: transparent;
    padding: 1rem 0 1rem 0;
    border: 0;
}
.section__services .card-body {
    padding-left: 0;
    color: var(--gray);
}
.section__services .card:not(:last-child) .card-header {
    border-bottom: 1px solid rgba(80, 85, 88, 0.25);
}
.section__services .card-link {
    display: block;
    font-size: clamp(1.25rem, 0.9833rem + 0.4306vw, 1.5rem);
    font-weight: 400;
    color: var(--text);
    text-align: left;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center right;
    background-size: auto 2rem;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.5' d='M15.3824 9.39621C15.1376 9.64998 15 9.99411 15 10.3529C15 10.7118 15.1376 11.0559 15.3824 11.3097L21.8474 18.0082L15.3824 24.7067C15.1445 24.9619 15.0128 25.3037 15.0158 25.6585C15.0188 26.0133 15.1562 26.3527 15.3983 26.6036C15.6405 26.8545 15.968 26.9969 16.3105 26.9999C16.6529 27.003 16.9829 26.8666 17.2292 26.6201L24.6176 18.9649C24.8625 18.7111 25 18.367 25 18.0082C25 17.6493 24.8625 17.3052 24.6176 17.0514L17.2292 9.39621C16.9843 9.14252 16.6521 9 16.3058 9C15.9595 9 15.6273 9.14252 15.3824 9.39621Z' fill='%23505558'/%3E%3C/svg%3E%0A");
}
.section__services .card-link[aria-expanded="true"] {
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.5' d='M9.39621 24.6176C9.64998 24.8624 9.99411 25 10.3529 25C10.7118 25 11.0559 24.8624 11.3097 24.6176L18.0082 18.1526L24.7067 24.6176C24.9619 24.8555 25.3037 24.9872 25.6585 24.9842C26.0133 24.9812 26.3527 24.8438 26.6036 24.6017C26.8545 24.3595 26.9969 24.032 26.9999 23.6895C27.003 23.3471 26.8666 23.0171 26.6201 22.7708L18.9649 15.3824C18.7111 15.1375 18.367 15 18.0082 15C17.6493 15 17.3052 15.1375 17.0514 15.3824L9.39621 22.7708C9.14252 23.0157 9 23.3479 9 23.6942C9 24.0405 9.14252 24.3727 9.39621 24.6176Z' fill='%23505558'/%3E%3C/svg%3E%0A");
}
/* ----- */
.section__consultation-banner {
    padding: clamp(4rem, 0.7998rem + 5.1668vw, 7rem) clamp(1rem, -4.3337rem + 8.6114vw, 6rem);
}
.section__consultation-bannerbox {
    padding: clamp(4rem, -1.3337rem + 8.6114vw, 9rem) clamp(1rem, -0.0667rem + 1.7223vw, 2rem);
    background-image: url('../img/bg.jpg');
    background-size: cover, auto 80%;
    background-repeat: no-repeat;
    background-position: center, -15% 50%;
    border-radius: 1.5rem;
}
.section__consultation-bannerbox .container {
    max-width: 100%;
}
.section__consultation-banner p a {
    display: table;
    font-size: clamp(1.5rem, 0.9666rem + 0.8611vw, 2rem);
}
/* ----- */
.section__cases-reviews {
    padding: 0 0 clamp(4rem, 0.2664rem + 6.028vw, 7.5rem);
}
.section__cases-reviews h2 + p {
    color: var(--gray);
    max-width: 31rem;
    width: 100%;
    margin: 0 auto;
}
.section__cases-reviews .cases-reviews__grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    /* grid-template-rows: repeat(4, 1fr); */
    /* grid-template-rows: 1fr 1fr 1fr 150px; */
    grid-template-rows: 1fr 150px;
    gap: 1.5rem;
}
.section__cases-reviews .grid-item {
    position: relative;
}
@media (min-width: 991px) {
    .grid-item:nth-child(1) { grid-area: 1 / 2 / 2 / 4; }
    .grid-item:nth-child(2) { grid-area: 1 / 4 / 2 / 5; }
    .grid-item:nth-child(3) { grid-area: 1 / 5 / 3 / 8; }
    .grid-item:nth-child(4) { grid-area: 2 / 1 / 3 / 3; }
    .grid-item:nth-child(5) { grid-area: 2 / 3 / 3 / 5; }
    .grid-item:nth-child(6) { grid-area: 3 / 2 / 4 / 3; }
    .grid-item:nth-child(7) { grid-area: 3 / 3 / 5 / 5; }
    .grid-item:nth-child(8) { grid-area: 3 / 5 / 4 / 7; }
}
.section__cases-reviews .grid-item.card {
    width: 100%;
    border: 0;
}
.section__cases-reviews .grid-item.card.v2 {
    background-color: var(--color-secondary-2);
}
.section__cases-reviews .image img {
    max-width: 12rem;
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 10px;
}
.section__cases-reviews .media img {
    max-width: 5rem;
    width: 100%;
    height: auto;
    border-radius: .31rem;
}
.section__cases-reviews .image:nth-child(1) {
    margin-left: auto;
}
.section__cases-reviews .image:nth-child(1) img,
.section__cases-reviews .image:nth-child(2) img {
    max-width: 20rem;
    height: 100%;
}
.section__cases-reviews .image:nth-child(3) img {
    max-width: 32rem;
    /* height: 32rem; */
    height: 100%;
}
.section__cases-reviews .image.img5 img {
    max-width: 22.3444rem;
    height: 22.3444rem;
}
.section__cases-reviews .card-content {
    border-radius: 10px;
    padding: 20px;
    text-align: left;
    border: 0;
}
.grid-item .media {
    align-items: center;
    margin-bottom: 1rem;
}
.grid-item p {
    font-size: clamp(1rem, 0.7333rem + 0.4306vw, 1.25rem);
    color: var(--gray);
}
.section__cases-reviews .grid-item.card .card-content {
    background-color: var(--color-primary-4);
}
.section__cases-reviews .grid-item.card.v2 .card-content {
    background-color: var(--color-secondary-2);
}
@media (max-width: 991px) {
    .section__cases-reviews .cases-reviews__grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }
    .section__cases-reviews .image img {
        max-width: 100%!important;
    }
}
/* ----- */
.section__contact {
    background-color: #ebf0f3;
    padding: clamp(4rem, 0.2664rem + 6.028vw, 7.5rem) 0 0;
}
.section__contact p, .section__contact li {
    color: var(--gray);
}
.section__contact img.img-fluid {
    display: block;
    max-width: 45.5rem;
    width: 100%;
}
.list-unstyled img {
    vertical-align: sub;
}
label {
    font-size: clamp(1rem, 0.7333rem + 0.4306vw, 1.25rem);
    color: var(--text);
}
.form-control {
    height: 4rem;
    border-radius: 1rem;
}
/* ----- */
.section__faq {
    padding: clamp(4rem, 0.2664rem + 6.028vw, 7.5rem) 0;
}
.section__faq .bg {
    background-image: url('../img/bg-2.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding: clamp(3rem, 1.9333rem + 1.7223vw, 4rem) clamp(1rem, -1.1335rem + 3.4446vw, 3rem);
    border-radius: 1.5rem;
}
.section__faq .card {
    background-color: transparent;
    border: 0;
    border-radius: 0;
}
.section__faq .card-header {
    background-color: transparent;
    padding: 1rem 0 1rem 0;
    border: 0;
}
.section__faq .card-body {
    padding-left: 0;
    color: var(--white);
}
.section__faq .card:not(:last-child) .card-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
.section__faq .card-link {
    display: block;
    font-size: clamp(1.25rem, 0.9833rem + 0.4306vw, 1.5rem);
    font-weight: 400;
    color: var(--white);
    text-align: left;
    padding-right: 1.5rem;
    width: 100%;
    background-repeat: no-repeat;
    background-position: center right;
    background-size: auto 2rem;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.5' d='M15.3824 9.39621C15.1376 9.64998 15 9.99411 15 10.3529C15 10.7118 15.1376 11.0559 15.3824 11.3097L21.8474 18.0082L15.3824 24.7067C15.1445 24.9619 15.0128 25.3037 15.0158 25.6585C15.0188 26.0133 15.1562 26.3527 15.3983 26.6036C15.6405 26.8545 15.968 26.9969 16.3105 26.9999C16.6529 27.003 16.9829 26.8666 17.2292 26.6201L24.6176 18.9649C24.8625 18.7111 25 18.367 25 18.0082C25 17.6493 24.8625 17.3052 24.6176 17.0514L17.2292 9.39621C16.9843 9.14252 16.6521 9 16.3058 9C15.9595 9 15.6273 9.14252 15.3824 9.39621Z' fill='%23fff'/%3E%3C/svg%3E%0A");
}
.section__faq .card-link[aria-expanded="true"] {
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='36' viewBox='0 0 36 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.5' d='M9.39621 24.6176C9.64998 24.8624 9.99411 25 10.3529 25C10.7118 25 11.0559 24.8624 11.3097 24.6176L18.0082 18.1526L24.7067 24.6176C24.9619 24.8555 25.3037 24.9872 25.6585 24.9842C26.0133 24.9812 26.3527 24.8438 26.6036 24.6017C26.8545 24.3595 26.9969 24.032 26.9999 23.6895C27.003 23.3471 26.8666 23.0171 26.6201 22.7708L18.9649 15.3824C18.7111 15.1375 18.367 15 18.0082 15C17.6493 15 17.3052 15.1375 17.0514 15.3824L9.39621 22.7708C9.14252 23.0157 9 23.3479 9 23.6942C9 24.0405 9.14252 24.3727 9.39621 24.6176Z' fill='%23fff'/%3E%3C/svg%3E%0A");
}
/* ----- */
.section__find-us {
    
}
.section__find-us p {
    color: var(--gray);
}
.section__find-us iframe {
    max-width: 41rem;
    width: 100%;
    border-radius: 1rem;
}












/* ---------------------------------------
@@@@ media-queries
--------------------------------------- */
@media (min-width:1360px) {
    .container {
        max-width: 85%;
    }
}
@media (max-width:1216px) {}
@media (min-width:992px) {
    .navbar .navbar-brand {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
    .navbar-light .navbar-nav .nav-link {
        color: var(--white);
    }
}
@media (max-width: 991px) {
    .navbar {
        padding: 1rem 1rem;
        backdrop-filter: blur(2px) saturate(100%);
    }
    .navbar .navbar-brand img {
        max-width: 10rem;
    }
    .navbar-collapse {
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
        background-color: rgba(255, 255, 255, .75);
        border-radius: 5px;
        top: 15px;
    }
    .navbar-nav {
        flex-direction: column;
        margin-top: 1rem;
        width: 100%;
        padding: 0 1rem;
    }
    .navbar-nav .nav-item {
        margin: 10px 0;
    }
    .navbar-brand {
        position: relative;
        transform: none;
        margin: 0 auto 0 0!important;
    }
    .navbar-nav:last-of-type {
        margin-right: auto;
        margin-left: 0;
    }
    .navbar-light .navbar-toggler-icon {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
    }
    .navbar-toggler {
        background-color: var(--gray);
    }
    .section__header-dots {
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 140px;
    }
    .section__about-us {
        background-size: auto 100%;
    }
    .list-inline {
        flex-direction: column;
    }
    .section__discover-treatments .row .col-lg-6 {
        padding: 0;
    }
    .treatments {
        padding-top: 15rem;
    }
}

@media (min-width: 768px) {}
@media (max-width: 767px) {
    
}
@media (max-width: 575px) {}
@media (max-width: 360px) {
}
