:root {
    --color-first: 67 95 127;
    --color-second: 176 70 69;
    --color-third: 204 236 255;
    --color-fourth: 67 95 127;
    --color-white: 242 242 242;
    --color-black: 0 0 0;
}

h1 {
    font-family: "KoHo", sans-serif;
    font-size: 6em;
    font-weight: 600;
    text-transform: uppercase;
}
.h1-dos {
    text-transform: none;
    font-size: 4em;
    line-height: 100%;
}

h2 {
    font-family: "Raleway", sans-serif;
    color: rgba(var(--color-second) / 100%);
    margin: 0 0 20px;
    font-size: 2.2em;
    font-weight: 600;
}
h3 {
    font-family: "Raleway", sans-serif;
    font-size: 2em;
    margin: 0;
    padding: 40px 30px;
    display: block;
    text-align: center;
}
h4 {
    font-family: "Raleway", sans-serif;
    text-transform: uppercase;
    font-size: 1em;
    font-weight: 800;
}
.cards h4 {
    margin: 15px 0 10px;
    font-size: 1.1em;
}


.nav-two {
    background-color: #D9D9D9
}

.nav-top-left {
    display: flex;
    align-items: center
}
.nav-phone {
    margin: 0 0 0 20px;
    padding: 0 0 0 15px;
    border-left: 1px solid;
    color: #999999;
}
.mb-4 {
    margin-bottom: 0!important;
}
.nav-one .material-symbols-outlined {
    border: 1px solid #aaaaaa;
    padding: 7px;
    border-radius: 100%;
    color: rgba(var(--color-second) / 100%);
    font-size: 1.3em;
}
.nav-one input[type=search] {
    border: 1px solid #aaaaaa;
    border-radius: 20px;
    font-size: .75em;
}
.nav-one .mb-3 {
    margin-bottom: 0rem!important;
}
.nav-one .col-12 {
    width: auto;
}
.nav-two .nav {
    gap: 15px;
}
.nav-two .nav-link {
    text-transform: uppercase;
    font-size: .85em;
    font-weight: 600;
}
.nav-two .nav-item {
    position: relative;
}
:is(.nav-item-dropdown:hover, .nav-item-dropdown:focus, .dropdown-toggle) .dropdown-menu {
    display: block;
}
.dropdown-toggle::after {
    margin-left: 8px;
}
.dropdown-menu[data-bs-popper] {
    top: 90%;
}
.dropdown-menu h4 {
    padding: 15px 15px 0;
}


.carousel-item {
    min-height: 400px; 
    height: 60vh;
    position: relative;
}
.carousel-item-bg {
    background: #000000;
    background-image: url(../images/header-julia-zyablova-unsplash.jpg); 
    background-repeat: no-repeat; 
    background-position: center center; 
    -webkit-background-size: cover; 
    -moz-background-size: cover; 
    -o-background-size: cover; 
    background-size: cover;
    color: #ffffff;
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
}
.carousel-second {
    background-image: url(../images/header-marcelo-leal-unsplash.jpg); 
}
.carousel-third {
    background-image: url(../images/header-spencer-davis-unsplash.jpg); 
}
.carousel-item-bg::before {
    content: '';
    z-index: -1;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(var(--color-first) / 50%);
}
.carousel-item-bg::after {
    content: '';
    z-index: -1;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: linear-gradient(0deg, rgba(var(--color-third) / 80%) 0%, rgba(var(--color-first) / 80%));
}
.carousel-caption {
    height: calc(100% - (20px * 2)); 
    display: flex; 
    flex-direction: column; 
    justify-content: center;
    align-items: center;
}
.btn {
    background-color: transparent;
    border: 3px solid rgba(var(--color-third) / 100%);
    margin: 10px 0;
    border-radius: 50px;
    padding: 10px 20px;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 1em;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
}
.btn:hover, .btn:focus {
    background-color: rgba(var(--color-second) / 100%);
    border-color: rgba(var(--color-second) / 100%);
}

.featurette {
    border: 1px solid rgba(var(--color-black) / 20%);
    padding: 2rem;
    margin: 40px 0;
    gap: 30px 0;
    border-radius: var(--bs-border-radius)!important;
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important;
    box-shadow: var(--bs-box-shadow-sm)!important;
}
.featurette .btn {
    color: #000000;
}
.featurette :is(.btn:hover, .btn:focus) {
    color: #ffffff;
}


article + article {
    border-top: 1px solid rgba(var(--color-black) / 20%);
    padding: 1rem 0 0;
}
article h4 + p {
    margin: 0 0 5px;
}
article .btn {
    border: 0;
    padding: 0;
    display: inline;
    text-decoration: underline;
    font-size: .74em;
    margin: 0;
    letter-spacing: .5px;
    color: rgba(var(--color-second) / 100%)!important;
    border-radius: 0;
}
article :is(.btn:hover, .btn:focus) {
    background-color: transparent;
    color: rgba(var(--color-first) / 100%);
    border: 0;
}

.cards {
    background: rgba(var(--color-second) / 100%);
    color: #ffffff;
}
.cards p {
    font-weight: 200;
}
.cards h3 {
    color: #ffffff;
}
.row-cards {
    padding: 0 0 50px;
    gap: 30px;
    margin: auto;
}
.col-lg-4 {
    display: flex;
    align-items: center;
    flex-direction: column;
}
@media (min-width: 992px) {
    .col-lg-4 {
        flex: 1;
    }
}
.cards .col-lg-4 > .material-symbols-outlined {
    background-color: #ffffff;
    border-radius: 100%;
    padding: 15px;
    font-size: 3em;
    color: rgba(var(--color-fourth) / 100%);
}
.cards .btn {
    border-color: rgba(var(--color-white) / 40%);
    color: #ffffff;
    margin: 10px 0;
    border-radius: 50px;
    font-size: .75em;
    padding: 7px 12px;
}
.cards .btn .material-symbols-outlined {
    font-size: 1.5em;
}
.cards :is(.btn:hover, .btn:focus) {
    background-color: rgba(var(--color-first) / 100%);
    border-color: rgba(var(--color-first) / 100%);

}

.news {
    margin: 0 auto 40px;
}
.news-article-con {
    width: 100%;
    margin: 0 0 20px!important;
}
.news-article-img {
    width: 30%;
    height: 100%;
    position: relative;
    z-index: 0;
}
.news-article-img::before {
    content: '';
    z-index: 1;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    background: rgba(var(--color-second) / 30%);
}
.news img {
    width: 100%;
    height: 100%;
    position: absolute;
    object-fit: cover;
    z-index: -1;
}
.news h4 {
    display: block;
    margin: 0 0 15px!important;
    font-size: 1.5em;
}
.article-author, .article-date {
    text-transform: uppercase;
    font-size: .75em;
    color: #aaaaaa;
}
.article-author {
    margin: 15px 0 0;
}
.news .btn {
    margin: 15px 0 0;
    width: fit-content;
    color: rgba(var(--color-second) / 100%);
    font-size: .7em;
    border-color: #cccccc;
    padding: 7px 12px;
}
.news .btn .material-symbols-outlined {
    font-size: 1.5em;
}
.news .btn:hover {
    background-color: rgba(var(--color-first) / 100%);
    border-color: rgba(var(--color-first) / 100%);
    color: #ffffff;
}


.news-pagination {
    display: flex;
    justify-content: center;
    margin: 50px 0 0;
}
.page-item:first-child .page-link {
    border-top-left-radius: 30px;
    border-bottom-left-radius: 30px;
}
.page-item:last-child .page-link {
    border-top-right-radius: 30px;
    border-bottom-right-radius: 30px;
}
.page-link {
    color: rgba(var(--color-second) / 100%);
    padding: 15px 20px;
}
.page-link:hover {
    color: rgba(var(--color-first) / 100%)
}



.footer {
    background: rgba(var(--color-fourth) / 100%);
    color: #ffffff;
}
.py-5 {
    padding-top: 1em!important;
    padding-bottom: 1em!important;
}
.footer-top {
    padding-bottom: 0px!important;
    margin-bottom: 0px!important;
}
.footer .text-body-secondary {
    color: #ffffff!important;
    font-weight: 300;
}
.footer .mb-2 {
    margin-bottom: 0rem!important;
}
.footer-list-uno .mb-2 {
    margin-bottom: .5rem!important;
}
.footer h2 {
    color: rgba(var(--color-third) / 100%);
}
.footer h4 {
    margin-bottom: 1.5em;
    font-size: 1.2em;
}
.footer .nav-item p {
    opacity: .4;
    font-size: .9em;
}
.footer-bottom .list-unstyled {
    gap: 1em;
    justify-content: flex-end;
}
.fa-brands {
    color: #ffffff;
    font-size: 1.5em;
}
.footer-bottom-menu {
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 15px;
    margin: 0 0 15px;
}
.footer-bottom-menu .text-body-secondary {
    text-transform: uppercase;
    color: rgba(var(--color-third) / 100%)!important;
    font-weight: 600;
}
.footer-bottom-menu .footer-phone {
    padding: 0 15px 0 0!important;
    border-right: 1px solid;
    color: #ffffff!important;
    opacity: .5;
    font-weight: 400;
}

.ms-3 {
    margin: 0!important;
}


@media screen and (max-width: 767px) {
    .footer-bottom .list-unstyled {
        justify-content: flex-start;
    }
}

