@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Outfit:wght@100..900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css");
html {
    font-family:
        "Inter",
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        "Helvetica Neue",
        Arial,
        "Noto Sans",
        sans-serif,
        "Apple Color Emoji",
        "Segoe UI Emoji",
        "Segoe UI Symbol",
        "Noto Color Emoji";
}

::selection {
    background: #006e62;
    color: #fff;
    text-shadow: none;
}

.gap-2 {
    gap: 2rem;
}

.uk-navbar-item.logo > img {
    max-height: 2.5rem;
}

nav .locale-setter > .uk-button {
    background-color: #b0d52b;
    color: #464838;
    border-radius: 500px;
    border: none;
    font-size: 1.25rem;
    font-family: "Outfit", serif;
    font-weight: 700;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    padding: 0 1rem;
}

nav .locale-setter > .uk-navbar-dropdown {
    background-color: #b0d52b;
    color: #464838;
    font-size: 1.25rem;
    border-radius: 0.5rem;
}

nav .locale-setter .uk-navbar-dropdown-nav li > a {
    color: #464838;
    font-size: 1.25rem;
    font-family: inherit;
}

.cover-banner {
    height: 480px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cover-banner > div.statement {
    z-index: 999;
    text-align: center;
    padding: 0 1rem;
    font-family: "Outfit", serif;
}

.cover-banner > div.statement > h1 {
    font-family: inherit;
    font-weight: 700;
    color: #464838;
    line-height: 1;
    padding: 0.25rem 1rem;
    border-radius: 0.25rem;
    text-transform: capitalize;
    margin: 0;
    background-color: rgba(176, 213, 43, 0.8);
}

.cover-banner > div.statement > h2 {
    font-family: inherit;
    color: #f8f7f3;
    margin: 0.5rem 0 0;
}

main {
    padding-top: 5rem;
}

main > .notice {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    margin: -1rem 5rem 1rem;
    padding: 1rem;
    border-radius: 0.5rem;
    font-size: 2rem;
    font-weight: 700;
    background-color: #006b61;
    color: #f8f7f3;
}

main > .notice > p {
    margin: 0;
}

main > article {
    gap: 2rem;
    padding: 0 5rem;
}

main > article > h2 {
    font-weight: 700;
    font-family: "Outfit", serif;
    text-transform: capitalize;
    margin: 0;
}

main > article > h2::before {
    display: block;
    width: 3rem;
    height: 0.5rem;
    margin-bottom: 0.15rem;
    content: "";
    background-color: #006b61;
}

main > article p {
    color: #464838;
    font-size: 1.375rem;
    margin: 0 0 1rem;
}

main > article:not(:first-child) {
    margin-top: 4rem;
}

main .uk-card.capabilities {
    border-radius: 0.25rem;
    background-color: #faf9f7;
}

main .uk-card.capabilities .uk-text-meta {
    font-size: 1rem;
    font-weight: 600;
}

main .uk-card.capabilities > .uk-card-header img {
    width: 4rem;
    height: auto;
    background-color: #eff4cd;
}

main .uk-card.capabilities > .uk-card-header .uk-card-title,
h2.uk-modal-title {
    color: #006b61;
    font-family: "Outfit", serif;
    font-weight: 700;
    text-transform: capitalize;
}

main .uk-card.capabilities > .uk-card-body {
    padding: 30px 40px;
}

main .uk-card.capabilities > .uk-card-body p {
    font-family: "Outfit", serif;
    font-weight: 400;
    font-size: 1.175rem;
    color: #777;
}

main p.highlite {
    font-weight: 700 !important;
}

div.callout {
    background-color: #b0d52b;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 3rem 0 0;
    padding: 5rem;
    position: relative;
    font-family: "Outfit", serif;
}

div.callout > h1 {
    font-family: inherit;
    font-size: 3rem;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    margin: 3rem 0;
    color: black;
}

div.callout > h2 {
    font-family: inherit;
    color: #1c3a00;
    text-align: center;
    margin: 0;
}

div.callout > button {
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    font-weight: 700;
    background-color: #efeae1;
    color: #464838;
}

div.callout > button:hover {
    background-color: #f7fae6;
    border-color: inherit;
}

div.uk-modal-dialog {
    border-radius: 2rem;
}

form div.inputs {
    gap: 1rem;
}

form .uk-form-label {
    font-family: "Outfit", serif;
    font-size: 1.75rem;
    font-weight: 700;
    color: #649b92;
}

form .uk-input {
    border-radius: 0.5rem;
    font-size: 1.375rem;
    padding: 1.5rem 0.5rem;
}

form .uk-select {
    border-radius: 0.5rem;
    font-size: 1.375rem;
    min-height: calc(40px + 0.5rem);
}

form .uk-textarea {
    border-radius: 0.5rem;
    font-size: 1.375rem;
}

form p.error {
    font-size: 0.875rem;
    font-weight: 600;
    color: #b75e38;
    margin: 0 0.25rem 0;
    display: none;
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
    outline: 0;
    background-color: #fff;
    color: #444;
    border-color: #649b92;
}

.uk-form-danger {
    color: #b75e38;
    border-color: #b75e38;
}

.uk-form-danger ~ p.error {
    display: block;
}

form .uk-description {
    margin: 0;
    color: #aaad9b;
    margin-left: 0.25rem;
}

form label.location {
    font-size: 1.25rem;
}

div.actions {
    margin: 2rem 0;
    display: flex;
    flex-direction: row;
    justify-content: end;
    gap: 0.75rem;
}

div.actions > button {
    border-radius: 500px;
    font-weight: 500;
    font-family: "Outfit", serif;
    font-size: 1rem;
}

div.actions > button.submit {
    background-color: #006b61;
    color: #f9fbe8;
}

footer {
    font-family: "Outfit", serif;
    background-color: #006b61;
    color: #f2fedc;
    font-size: 1.25rem;
}

footer p.us {
    color: #aaad9b;
}

footer p.us span {
    background-image: url("/static/images/usflag.png");
    background-repeat: no-repeat;
    display: inline-block;
    width: 2rem;
    height: 1.85rem;
    background-size: contain;
    position: absolute;
    margin-left: 0.5rem;
}

footer img.logo {
    height: 3rem;
    width: auto;
}

footer .contacts {
    display: flex;
    flex-direction: column;
    align-items: start;
    text-align: left;
}

footer .contacts h3 {
    font-weight: 700;
    margin: 0;
    color: #f2fedc;
}

footer .contacts ul {
    font-size: 1.25rem;
    font-weight: 500;
    margin-top: 0.5rem;
    color: #efeae1;
}

footer .contacts ul > li i.bi {
    margin-right: 0.5rem;
}

@media screen and (max-width: 768px) {
    main {
        padding-top: 2rem;
    }
    main > .notice {
        margin: -1rem 1rem 1rem;
        padding: 1rem;
        font-size: 1.5rem;
    }
    main > .notice > h3.material-symbols-outlined {
        font-size: 2rem;
    }
    main > article {
        gap: 1rem;
        padding: 0 1.5rem;
    }
    main .uk-card.capabilities {
        margin: auto -1.5rem;
    }
    main .uk-card.capabilities > .uk-card-header img {
        width: 3rem;
    }
    main .uk-card.capabilities > .uk-card-body {
        padding: 15px 20px;
    }
    div.callout {
        margin: 1rem 0 0;
        padding: 1.5rem 1rem;
    }
    .uk-navbar-item.logo > img {
        max-height: 1.75rem;
    }
    .cover-banner {
        height: 360px;
    }
    .cover-banner > div.statement > h1 {
        font-size: 1.75rem;
        line-height: 1.25;
    }
    div.callout > button {
        line-height: 1.5rem;
        padding: 1rem;
    }
    footer .contacts {
        align-items: start;
        margin-top: 1rem;
    }
}
