@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=PT+Sans+Narrow:wght@400;700&family=Roboto+Condensed:wght@300;400;700&display=swap');

*,
::after,
::before {
    box-sizing: border-box
}

body,
h1,
h2,
h3,
h4,
h5,
p,
ul {
    margin: 0
}

ol {
    font-weight: 400;
    line-height: 150%;
}

img {
    max-width: 100%;
    display: block
}

body {
    min-height: 100vh
}

button {
    border: none;
    outline: 0
}

button,
input,
textarea {
    font: inherit
}

body,
html {
    scroll-behavior: smooth
}

p {
    font-size: 14px
}

.section-content__textblock p {
    font-size: 16px;
    line-height: 150%;
    margin-bottom: 30px;
}


  table {
    border-collapse: collapse;
    width: 100%;
    margin: 20px 0;
  }

  th, td {
    border: 1px solid #757575;
    padding: 10px;
    text-align: left;
  }


a {
    letter-spacing: .008em;
    text-transform: uppercase;
    color: #bb8e34
}

body {
    color: #757575;
    font-family: 'PT Sans Narrow', sans-serif;
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    background-color: #fff;
    background: url(../img/grid.webp);
    min-width: 375px;
    overflow-x: hidden;
    position: relative
}

.main-wrapper {
    overflow: hidden;
    min-height: 100%;
    position: relative
}

.container {
    max-width: 1280px;
    width: 100%;
    margin: auto
}

.hidden {
    display: none
}



/* header */ 

header .header__desktop {
    display: block
}

header .header__mobile {
    display: none
}

header {
    background: url(../img/bg-1.webp) no-repeat;
    background-size: cover;
    padding: 35px 0
}

.header-wrapper {
    display: flex;
    flex-direction: column;
    gap: 15px 0
}

.header__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 53px 6px 86px
}

.header__menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 0 60px;
    align-items: center
}

.menu__item a {
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    padding: 8px 0;
    transition: all .1s linear;
    text-transform: none;
}

.menu__item:hover a {
    text-decoration-line: underline;
    color: #bb8e34;
    transition: all .1s linear
}

.header__location {
    display: flex;
    align-items: center;
    text-decoration: none;
    text-transform: none;
    gap: 0 14px;
    font-size: 13px;
    color: #fafafa
}

.location-icon {
    max-width: 24px;
    max-height: 24px
}

.header__foot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 53px
}

.header__foot-left {
    display: flex;
    align-items: center;
    max-width: 490px;
    width: 100%
}

.header__logo {
    display: flex;
    align-items: center;
    text-decoration: none;
    max-width: 270px;
    width: 100%;
    border-right: 1px solid rgba(121, 135, 151, .2)
}

.logo-img {
    flex-shrink: 0;
    margin-right: 15px;
    max-width: 70px;
    max-height: 52px
}

.logo__text {
    text-transform: uppercase
}

.site__name {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    font-size: 23px;
    letter-spacing: .006em;
    color: #f3f3f3
}

.site__desc {
    font-family: Roboto, sans-serif;
    font-weight: 400;
    font-size: 14px;
    letter-spacing: -.01em;
    color: #c9cccf
}

.site__info {
    display: flex;
    flex-direction: column;
    font-weight: 700;
    font-size: 15px;
    letter-spacing: .008em;
    text-transform: uppercase;
    color: #fafafa;
    padding-left: 15px;
    line-height: 27px
}

.site__info span {
    color: #c9cccf;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.18
}

.header__foot-right {
    display: flex;
    align-items: center
}

.site__numbers {
    display: flex;
    align-items: center;
    margin-right: 20px
}

.numbers__links {
    display: flex;
    flex-direction: column
}

.numbers-img {
    margin-right: 10px;
    max-width: 25px;
    max-height: 21px
}

.link__number {
    font-weight: 700;
    font-size: 13px;
    line-height: 20px;
    letter-spacing: .008em;
    text-transform: uppercase;
    color: #fafafa;
    text-decoration: none
}

.numbers__links .link__number:last-child {
    color: #c9cccf
}

.site__contacts {
    display: flex;
    align-items: center;
    margin-left: 30px
}

.contacts-img {
    margin-right: 10px
}

.contacts__box {
    display: flex;
    flex-direction: column;
    font-size: 14px;
    line-height: 20px;
    color: #c9cccf
}

.contacts__box .link__email {
    text-decoration: none;
    color: #fff;
    text-transform: none
}

.section-content {
    padding: 50px 0 50px 0;
}

.section-desc {
    font-size: 20px;
    text-align: center;
    margin-bottom: 20px;
}

.section-content__textblock a {
    text-transform: none;
}

ul.listbox {
    list-style: none;
    padding-left: 0;
}

ul.listbox > li {
    font-weight: 600;
    margin-bottom: 15px;
}

ul.listbox a {
    text-transform: none;
}

ul.listbox > li > p {
    font-weight: 400;
    font-size: 16px;
    margin-bottom: 5px;
}

ul.listbox > li > ul > li {
    font-weight: 400;
    list-style: none;
    margin-bottom: 5px;
}

ul.listbox > li > ul > li > ul > li {
    list-style: none;
    margin-bottom: 5px;
}

@media (max-width:1320px) {
    .container {
        padding: 0 32px
    }

    header .header__desktop {
        display: none
    }

    header .header__mobile {
        display: flex;
        align-items: center;
        justify-content: space-between
    }

    header {
        position: relative;
        padding: 30px 16px
    }

    .header__mobile .logo-img {
        width: 47px;
        height: 37px;
        object-fit: fill;
        margin-right: 10px
    }

    .mobile__menu-wrapper {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        background: linear-gradient(90deg, #425160 0, rgba(37, 51, 66, 0) 100%), #1f2b38;
        padding: 20px 14px 30px 16px;
        width: 100%;
        z-index: 1000
    }

    .mobile__menu-wrapper .site__contacts {
        margin-left: 0
    }

    nav.mobile__menu ul {
        list-style: none;
        padding: 0
    }

    .mobile__menu-item a {
        padding: 12px;
        background: #1f2b38;
        color: #fff;
        text-decoration: none;
        font-weight: 400;
        font-size: 13px;
        line-height: 20px;
        display: flex;
        align-items: center;
        letter-spacing: .008em;
        text-transform: uppercase
    }

    .mobile__menu-item.current a {
        border-left: 4px solid #bb8e34
    }

    nav.mobile__menu {
        margin-bottom: 20px
    }

    .site__name {
        font-weight: 700;
        font-size: 16px;
        line-height: 16px
    }

    .site__desc {
        font-weight: 400;
        font-size: 10px;
        line-height: 16px;
        text-transform: uppercase
    }

    .header__mobile-left {
        display: flex;
        width: 100%
    }

    .mobile__calls {
        width: 35px;
        height: 35px;
        transition: all .15s linear
    }

    .numbers-img {
        margin-right: 10px;
        max-width: 35px;
        max-height: 35px
    }

    .mobile__calls.opened {
        opacity: 0;
        transition: all .15s linear
    }

    .mobile__menu-numbers {
        display: flex;
        justify-content: space-between;
        align-items: center
    }

    .mobile__menu-contacts {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 20px 0
    }

    .header__logo {
        max-width: 200px;
        border-right: none
    }

    .burger {
        background: url(../img/burger.svg) no-repeat;
        background-position: center;
        width: 35px;
        height: 36px;
        padding: 0;
        outline: 0;
        border: 0;
        transition: all .1s linear;
        margin-right: 30px
    }

    .burger.opened {
        transform: rotate(180deg);
        transition: all .1s linear;
        background: url(../img/burger-close.svg) no-repeat;
        background-position: center
    }
}

@media (max-widtH: 767px) {
    header {
        position: relative;
        padding: 20px 16px
    }

    .burger {
        width: 24px;
        height: 24px;
        background-size: cover;
        margin-right: 20px
    }

    .header__mobile .logo-img {
        width: 32px;
        height: 25px;
        margin-right: 6px
    }

    .site__name {
        font-weight: 700;
        font-size: 12px;
        line-height: 11px
    }

    .site__desc {
        font-weight: 400;
        font-size: 7px;
        line-height: 11px
    }

    .mobile__calls {
        width: 24px;
        height: 24px;
        display: flex;
        align-items: center
    }

    .numbers-img {
        max-width: 24px;
        max-height: 24px
    }

}