@font-face {
    font-family: 'BebasNeue'; /* Choose a descriptive name */
    src: url("./fonts/BebasNeue.ttf") format('truetype'); /* Adjust the path as needed */
    font-weight: normal; /* Optional: define weight */
    font-style: normal; /* Optional: define style */
    font-display: swap; /* Optional: control font loading behavior */
}

:root {
    --color-primary: #01499a;
    --color-orange: #ff5d09;
    --bs-carousel-indicator-active-bg: #ff8100;
    --line-height: 1.1rem;
}

html {
    scroll-behavior: smooth;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-primary);
    --bs-btn-border-color: #4e99ed;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: #0b5ed7;
    --bs-btn-hover-border-color: #0a58ca;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: #0a58ca;
    --bs-btn-active-border-color: #0a53be;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--color-primary);
    --bs-btn-disabled-border-color: var(--color-primary);
}

.text-primary {
    color: var(--color-primary) !important;
}

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

.carousel-item {
    background-size: cover;
    height: 100vh;
}

.carousel-item .carousel-item-title, .section-title {
    font-family: BebasNeue, serif;
}

.form-group {
    margin-bottom: 1rem;
}

.text-gradient-primary {
    color: transparent;
    background-image: linear-gradient(#5bb9ff, #0075ca);
    background-clip: text;
}

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

.carousel-item {
    background-size: cover;
    height: 100vh;
}

.carousel-item .carousel-item-title, .section-title, .font-base {
    font-family: BebasNeue, serif;
}

.section-title {
    white-space: nowrap;
    font-size: 60px
}

.form-group {
    margin-bottom: 1rem;
}

.dot {
    content: "\A";
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #ff8100;
    display: inline-block;
    margin-top: 0.3rem;
}

.order-description {
    border-bottom: 1px dotted;
}

.btn-menu-list {
    right: 18%;
}

.carousel .carousel-indicators button {
    width: 13px;
    height: 13px;
    border-radius: 100%;
}

ul.away-list {
    color: var(--color-primary);
}

ul.away-list li {
    justify-content: end;
}

img.main-technic-image {
    width: 1190px;
    right: 14rem;
    bottom: 0;
}

section#services span {
    line-height: 1.3rem;
}

section#services span.section-title {
    line-height: normal;
}

section#services .d-flex.justify-content-center {
    margin-bottom: 0.5rem;
}

section#services .d-flex.justify-content-center p {
    margin-bottom: 0;
}

section#services .d-flex.flex-column {
    width: 370px;
}

section#service ul li div:last-child {
    line-height: var(--line-height);
}

.main-menu .main-menu-body {
    width: 500px;
}

ul.away-list {
    margin-right: 14rem;
}

ul.away-list li div:nth-child(2) {
    line-height: 1.9rem !important;
    padding-top: 0.5rem;
}

.bordered {
    border: 10px solid #2e8bd1;
    border-radius: 25px;
}

.image-service-dynamic {
    width: 130px !important;
    padding-top: 8px !important;
}

.bg-shadow {
    box-shadow: 1px 0 45px 26px rgba(0, 0, 0, 0.40);
    background: rgba(0, 0, 0, 0.35);
    padding: 10px 10px;
    border-radius: 20px;
}

.bg-shadow-light {
    box-shadow: 1px 0 45px 26px rgba(0, 0, 0, 0.19);
    background: rgb(0 0 0 / 16%);
    padding: 10px 10px;
    border-radius: 20px;
}

/* Animation */
.hover-mouse-scale {
    transition: transform 0.3s ease;
}

.hover-mouse-scale:hover {
    transform: scale(1.1);
}

@media screen and (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1160px;
    }
}

@media screen and (max-width: 1400px) {
    img.main-technic-image {
        right: 13.3rem;
        width: 1192px;
        border: 0;
    }
}

@media screen and (max-width: 1200px) {
    p {
        font-size: 0.85rem;
    }

    img.main-technic-image {
        right: 11.2rem;
        max-width: 966px;
        bottom: 0;
    }

    .image-service-dynamic {
        width: 90px !important;
    }

    #services .fs-4 {
        font-size: calc(1rem + 0.3vw) !important;
    }
}

@media screen and (max-width: 440px) {
    #services .fs-4 {
        font-size: 0.9rem !important;
        line-height: 1rem !important;
    }

    #services p {
        font-size: 0.6rem !important;
    }

    #service .service-list {
        font-size: 0.9rem !important;
        padding-top: 0;
    }
}

@media screen and (max-width: 992px) {
    section#main nav .navbar-brand img {
        width: 14rem !important;
    }

    .order-description {
        margin-right: 0 !important;
    }

    .btn-menu-list {
        right: 2rem;
    }

    .section-title {
        color: white !important;
        font-size: calc(2.0rem + 0.5vh) !important;
    }

    #service .backdrop {
        background: linear-gradient(to left, rgb(0 0 0 / 0%), rgb(0 0 0));
    }

    ul.away-list {
        color: white;
        margin-right: auto;
    }

    ul.away-list li {
        justify-content: left;
    }

    img.main-technic-image {
        right: 8.2rem;
        max-width: 690px;
        bottom: 0;
    }
}

.manufacturing-services .fs-4 {
    line-height: 2rem !important;
}

.manufacturing-services p {
    margin-top: 0.3rem;
}

@media screen and (max-width: 768px) {
    .main-menu .container {
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding: 0;
    }

    .fs-5 {
        font-size: 1.05rem !important;
    }

    .main-menu .main-menu-body {
        width: 100%;
    }
}

@media (min-width: 576px) {
    .mobile-main-technic-image {
        top: -10.5rem;
        width: 39rem;
        left: -5.3rem;
    }
}

@media (max-width: 576px) {
    .container-sm, .container {
        max-width: 440px;
    }

    .mobile-main-technic-image {
        top: -7.5rem;
        width: 30rem;
        left: -3.2rem;
    }
}

@media (max-width: 440px) {
    .container-sm, .container {
        max-width: 400px;
    }

    .mobile-main-technic-image {
        top: -7.5rem;
        width: 28rem;
        left: -3.7rem;
    }
}

@media (max-width: 400px) {
    .container-sm, .container {
        max-width: 335px;
    }

    .mobile-main-technic-image {
        top: -5rem;
        width: 20rem;
        left: -1.0rem;
    }
}

.good-box {
    height: 380px;
}

.good-box .bordered {
    height: 100%;
    display: flex;
    background: linear-gradient(0deg, rgb(0, 110, 181) 21%, rgb(1, 73, 154) 72%);
}

.good-box img {
    margin-top: auto;
}

body {
    scrollbar-width: auto;
    scrollbar-color: var(--color-orange) rgba(255, 255, 255, 0);
    border: rgba(255, 255, 255, 0); /* Оформление границ бегунка */
}