html {
    font-size: 16px
}

@media screen and (min-width: 768px) {
    html {
        font-size: 18px
    }
}

@font-face {
    font-family: "URWDIN";
    src: url('../fonts/URWDIN-Light.ttf');
}

body {
    font-family: "URWDIN", sans-serif;
    color: #0f0f0f;
    font-size: 1rem
}

h1,
h2,
h3 {
    /* font-family: "Jura", sans-serif */
    font-family: "URWDIN",sans-serif;
}

.text-white {
    color: #fcfcfc !important
}

.bg-white {
    background-color: #fcfcfc !important
}

.text-black {
    color: #0f0f0f !important
}

.bg-black {
    background-color: #0f0f0f !important
}

.text-eco {
    color: #629544 !important
}

.bg-eco {
    background-color: #282c3f !important
}

form .form-control {
    border-radius: 0
}

.btn {
    --bs-btn-padding-x: 1.5rem;
    --bs-btn-padding-y: 0.6rem;
    --bs-btn-font-size: 1.3rem;
    --bs-btn-font-family: "URWDIN",sans-serif;
    --bs-btn-font-weight: 500;
    --bs-btn-line-height: 1.5;
    --bs-btn-bg: transparent;
    --bs-btn-border-width: 2px;
    --bs-btn-border-radius: 0;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), 0.5);
    text-transform: capitalize
}

@media screen and (min-width: 768px) {
    .btn {
        --bs-btn-padding-x: 2.2rem;
        --bs-btn-padding-y: 1rem;
        --bs-btn-font-size: 1.5rem
    }
}

.btn.btn-outline-white {
    --bs-btn-color: #fcfcfc;
    --bs-btn-border-color: #fcfcfc;
    --bs-btn-hover-border-color: #fcfcfc;
    --bs-btn-hover-bg: #fcfcfc;
    --bs-btn-hover-color: #0f0f0f
}

.btn.btn-outline-black {
    --bs-btn-color: #0f0f0f;
    --bs-btn-border-color: #0f0f0f;
    --bs-btn-hover-border-color: #0f0f0f;
    --bs-btn-hover-bg: #0f0f0f;
    --bs-btn-hover-color: #fcfcfc
}

.text-link span {
    text-decoration: underline
}

.text-link:has(.icon) {
    display: flex;
    align-items: center;
    gap: 1rem
}

.text-hero {
    font-weight: 400;
    font-size: 2rem;
    text-transform: uppercase
}

@media screen and (min-width: 768px) {
    .text-hero {
        font-size: max(4vw, 4rem)
    }
}

.title-font {
    /* font-family: "Jura", sans-serif */
    font-family: "URWDIN",sans-serif;
}

.title-text {
    font-size: 1rem;
    /* font-family: "Jura", sans-serif */
    font-family: "URWDIN",sans-serif;
}

@media screen and (min-width: 768px) {
    .title-text {
        font-size: 2rem
    }
}

.hero-wrapper {
    width: 100%;
    height: 100vh;
    overflow: hidden
}

.hero-wrapper::after {
    content: "";
    /* background-color: rgba(0, 0, 0, .75); */
    background-color: rgb(0 0 0 / 28%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0
}

.hero-wrapper .media-content {
    width: 100%;
    height: 100%
}

.hero-wrapper .media-content .wrap {
    width: 100%;
    height: 100%
}

.hero-wrapper .media-content .wrap video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.hero-wrapper .text-content {
    width: 100%;
    max-width: 1400px;
    padding: 1rem;
    top: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -50%)
}

.hero-wrapper .controller {
    z-index: 2;
    bottom: 1rem;
    left: 1rem;
    width: 3rem;
    height: 3rem;
    display: grid;
    place-items: center;
    color: #fcfcfc;
    font-size: 2rem;
    opacity: .5;
    cursor: pointer
}

@media screen and (min-width: 768px) {
    .hero-wrapper .controller {
        bottom: 2rem;
        left: 2rem;
        font-size: 3rem
    }
}

.hero-wrapper .controller:hover {
    opacity: 1
}

.hero-media-caption .caption {
    background-color: #282c3fad;
    bottom: 0;
    left: 0;
    width: 100%;
    min-height: 150px;
    padding: max(5%, 1rem)
}

.hero-count .count-header {
    border-bottom: 2px solid #0f0f0f;
    margin-bottom: .5rem;
    padding: .5rem 0
}

.hero-count .count-header p {
    font-size: 1rem;
    text-transform: capitalize;
    margin-bottom: 0;
    font-weight: 600
}

.hero-count .count-body {
    /* font-family: "Jura", sans-serif */
    font-family: "URWDIN",sans-serif;
}

.hero-count .count-body h2 {
    font-size: 3vmax;
    line-height: 1;
    font-weight: 400
}

.hero-count .count-body p {
    font-size: 1.5rem;
    text-transform: uppercase;
    font-weight: 300
}

main .section {
    padding: max(8vmin, 2rem)
}

main section {
    overflow: hidden
}

main section .section-title {
    margin-bottom: 2rem;
    margin-top: 2rem;
}

main section .section-title h2 {
    font-size: max(2.7vw, 2rem);
    font-family: "URWDIN",sans-serif;
    text-transform: capitalize;
    font-weight: 400;
}

main .bg-image {
    background-size: cover;
    width: 100%;
    height: 50vh
}

@media screen and (min-width: 768px) {
    main .bg-image {
        height: 70vh
    }
}

footer {
    font-size: 14px;
    background-color: #282c3f;
    padding: max(3%, 2rem) 0 max(7%, 3rem) 0
}

footer .btn {
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: 0.5rem;
    --bs-btn-font-size: 1rem
}

footer .sub-links h4 {
    width: -moz-fit-content;
    width: fit-content;
    padding-bottom: .5rem;
    border-bottom: 1px solid #fcfcfc
}

footer h4 {
    /* font-family: "Jura", sans-serif; */
    font-family: "URWDIN",sans-serif;
    font-weight: 800;
    font-size: 1.2rem
}