:root {
    --green: #344E41;
    --darkGreen: #1A2B1D;
    --secondaryHover: #243426;
    --navyBlue: #495561;
    --navyBlueHover: #3e4c57;
    --grey: #E5E1DC;
    --darkGrey: #777777;
    --menuHeight: 126px;
}

body {
    padding-top: var(--menuHeight);
    font-family: 'Montserrat', sans-serif;
    background-color: var(--grey);
    margin: 0;
    position: relative;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Raleway', sans-serif;
}

.text-raleway {
    font-family: 'Raleway', sans-serif;
}

.text-montserrat {
    font-family: 'Montserrat', sans-serif;
}

.logo {
    width: 100px;
}

.logo-social {
    width: 20px;
}

.bg-green {
    background-color: var(--green) !important;
}

.bg-darkGreen {
    background-color: var(--darkGreen) !important;
}

.bg-navyBlue {
    background-color: var(--navyBlue) !important;
}

.text-grey {
    color: var(--grey);
}

#lista {
    scroll-margin-top: calc(var(--menuHeight) + 20px);
}

.welcome {
    width: 100%;
    min-height: calc(100vh - var(--menuHeight));
}

.welcome-text {
    min-height: auto;
}

.home-photo {
    width: 100%;
    border-radius: 1000px 1000px 0 0;
}

.home-photo-container {
    min-height: calc(100vh - var(--menuHeight));
}

.btn-link-white {
    color: #ffffff;
    text-decoration: none;
    font-family: Raleway, sans-serif;
}

.btn-link-white:hover, .btn-link-white:focus, .btn-link-white:active {
    color: #ffffff;
    text-decoration: underline;
    border: none;
}

.knowledge-icon {
    width: 30%;
}

.text-justify {
    text-align: justify;
}

.sticky-section {
    position: sticky;
    align-self: flex-start;
    top: calc(var(--menuHeight) + 20px);
}

.faq-container {
    margin-top: 200px;
}

.faq-number {
    width: 40px;
    height: 40px;
    color: #fff;
    border-radius: 1000px;
    font-family: 'Raleway', sans-serif;
    background-color: var(--navyBlue);
    display: flex;
    justify-content: center;
    align-items: center;
}

.faq:not(:first-child) {
    margin-top: 50px;
}

.faq-header {
    font-family: 'Raleway', sans-serif;
    color: #000000;
    font-size: 1.2rem;
    font-weight: bold;
}

.text-small {
    font-size: 0.8rem;
}

.footer-header {
    font-family: 'Raleway', sans-serif;
    color: #ffffff;
    font-size: 1.1rem;
    font-weight: bold;
}

.footer-text {
    font-family: 'Montserrat', sans-serif;
    color: #ffffff;
    font-size: 0.9rem;
}

.footer-link {
    color: #ffffff;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
}

.footer-link:hover {
    color: #ffffff;
    text-decoration: underline;
}

.footer-contact-link {
    color: #ffffff;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.9rem;
}

.btn-link-dark {
    color: var(--darkGreen);
    text-decoration: none;
    font-family: 'Raleway', sans-serif;
}

.btn-link-dark:hover {
    color: var(--darkGreen);
    text-decoration: underline;
    border: none;
}

.google-privacy {
    font-family: 'Montserrat', sans-serif;
    color: #000000;
    font-size: 0.8rem;
}

.grecaptcha-badge {
    visibility: hidden !important;
}

.btn-tertiary {
    background-color: var(--darkGreen) !important;
    border-color: var(--darkGreen) !important;
    border-radius: 500px;
    color: #ffffff;
}

.btn-tertiary:hover, .btn-tertiary:focus, .btn-tertiary:active, .btn-tertiary:focus-visible {
    background-color: var(--secondaryHover) !important;
    border-color: var(--secondaryHover) !important;
    coloR: #ffffff;
}

.btn-grey {
    background-color: var(--grey) !important;
    border-color: var(--grey) !important;
    border-radius: 500px;
    color: #000000;
}

.btn-grey:hover, .btn-grey:focus, .btn-grey:active, .btn-grey:focus-visible {
    background-color: #ffffff !important;
    border-color: #ffffff !important;
    color: #000000;
}

.wrap-img {
    width: 40%;
}

.cookie-banner {
    z-index: 100000;
    position: fixed;
    bottom: 0;
    width: 100%;
    background-color: var(--grey);
    border-top: var(--darkGreen) 2px solid;
    padding: 20px;
    box-sizing: border-box;
}

.ue-found-img {
    max-width: 820px;
    width: 100%;
}

.ue-found-text {
    font-size: 0.9rem;
    text-align: justify;
}

@media screen and (max-width: 992px) {
    .sticky-section {
        position: relative;
        top: 0;
        align-self: flex-start;
    }

    .faq-container {
        margin-top: 300px;
    }

    .welcome-text {
        min-height: calc(100vh - var(--menuHeight));
    }
}

@media screen and (max-width: 768px) {
    .home-photo-container {
        min-height: auto;
    }

    .faq-container {
        margin-top: 50px;
    }

    .copy {
        margin-top: 5px;
    }

    .wrap-img {
        width: 100%;
    }

    .ue-found-text {
        font-size: 0.7rem;
    }
}
