* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

* {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

address {
    font-style: normal;
    font-family: Light, sans-serif;
}

ol,
ul {
    list-style-type: none;
}

a,
a:active,
a:visited {
    text-decoration: none;
    display: block;
}

p a {
    text-decoration: underline;
}

button {
    display: block;
    background-color: inherit;
    border: none;
}

:root {
    --white: #fff;
    --black: #000;
    --blue: #044f7d;
    --gray: #1a1a1a;
    --lightgray: #A8A8A8;
    --border: #E9E9E9;
}

body {
    font-size: 16px;
    color: var(--gray);
    line-height: normal;
    font-family: Normal, sans-serif;
    font-weight: 400;
}

img,
video {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

header .bottom .icons i:hover,
header .bottom .tel:hover,
footer .icons i:hover,
a:hover,
header .bottom .search:hover,
footer .up:hover,
.brand .slick-arrow:hover,
.contact form button:hover,
.circle:hover,
.works .btn:hover,
.main form button:hover,
#overlayForm button:hover {
    opacity: 0.7;
    transition: opacity 0.325s ease;
}

.brand .slick-arrow:active,
.contact form button:active,
.works .btn:active,
#overlayForm button:active {
    opacity: 1;
    transition: opacity 0.325s ease;
}

#city_city {
    display: none;
}

button {
    font-size: 16px;
}

h1 {
    font-size: 40px;
    line-height: normal;
    color: #333;
    font-weight: 700;
    font-family: Bold, sans-serif;
}

.h1 {
    font-size: 40px;
    line-height: normal;
    color: #333;
    font-weight: 700;
    font-family: Bold, sans-serif;
}

h2 {
    font-size: 24px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    color: #333;
}

.h2 {
    font-size: 24px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    color: #333;
}

.h3 {
    font-size: 22px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    color: #333;
}

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

.bt {
    font-size: 20px;
    line-height: normal;
}

.st {
    font-size: 14px;
    line-height: normal;
    font-family: Normal, sans-serif;
}

.sst {
    font-size: 12px;
    line-height: normal;
    font-family: Normal, sans-serif;
}

.lst {
    font-size: 12px;
    line-height: normal;
    font-family: Normal, sans-serif;
}

.wt {
    color: var(--white);
}

main {
    margin-top: 120px;
}

.mobile__top {
    display: none;
}

.mobile__top img {
    object-fit: cover;
}

header {
    margin: 0 auto;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 5;
}

header .top {
    height: 30px;
    background-color: var(--blue);
}

header .bottom {
    position: relative;
    z-index: 10;
    height: 91px;
    background-color: var(--gray);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

header .top .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}

header .top .inner .cityCall {
    display: inline-block;
    text-decoration: underline;
    cursor: pointer;
}

header .top .wrapper {
    display: flex;
    text-transform: uppercase;
}

header .top .wrapper .link {
    margin-left: 12px;
    transition: opacity 0.325s ease;
}

header .bottom .img {
    height: 63px;
    margin-right: 40px;
}

header .bottom img {
    object-fit: cover;
}

header .bottom .inner {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

header .bottom .links {
    display: flex;
    align-items: center;
}

header .bottom .link {
    white-space: nowrap;
    margin-right: 19px;
    text-transform: uppercase;
}

header .bottom .tel {
    text-decoration: underline;
}

header .bottom .timework {
    color: var(--white);
    font-size: 13px;
    line-height: normal;
}

i {
    color: var(--white);
}

header .bottom .icons i:first-child {
    margin-right: 6px;
}

header .bottom .icons i {
    color: var(--lightgray);
    cursor: pointer;
}

header .bottom .search {
    font-size: 24px;
    cursor: pointer;
}

header .bottom .links i {
    margin-left: 3px;
    font-size: 11px;
}

header .bottom .links .wrapper {
    position: relative;
}

header .bottom .links .fly {
    position: absolute;
    top: 30px;
    background-color: var(--white);
    padding: 20px;
    border-radius: 10px;
    display: none;
    width: max-content;
}


/* header .bottom .links .wrapper:nth-last-child(-n+3) .fly {
    right: -100%;
} */

header .bottom .links .fly .sublink {
    text-decoration: underline;
    color: var(--gray);
    margin-bottom: 6px;
}


/* footer */

footer {
    background-color: var(--gray);
}

footer .inner {
    padding-top: 83px;
    padding-bottom: 23px;
}

footer .inner .wrapper {
    display: flex;
    justify-content: space-between;
    margin-bottom: 44px;
}

footer .col:first-child {
    flex-grow: 2;
}

footer .col {
    flex-grow: 1;
}

footer .col:last-child {
    flex-grow: 0;
}

footer .img {
    width: 210px;
    margin-bottom: 18px;
}

footer .social {
    display: flex;
    align-items: center;
    margin-bottom: 9px;
}

footer .social i {
    margin-right: 11px;
    width: 12px;
}

footer .social.last {
    margin-bottom: 37px;
}

footer a,
footer p,
footer span,
footer address {
    font-family: Light, sans-serif;
    font-style: normal;
}

footer .call {
    color: #666;
    margin-bottom: 6px;
}

footer .icons i {
    font-size: 24px;
    margin-right: 12px;
    cursor: pointer;
}

footer .up {
    border-radius: 50%;
    background-color: #595959;
    width: 50px;
    height: 50px;
    margin-left: auto;
    cursor: pointer;
    margin-bottom: 8px;
}

footer .up i {
    font-size: 36px;
    margin-bottom: 6px;
}

footer .help {
    color: #A3A3A3;
    text-align: center;
}

footer .col-link a {
    margin-bottom: 8px;
}


/* endfooter */


/* bread */

.bread {
    margin-top: 150px;
    margin-bottom: 30px;
}

.bread .next::after {
    content: '>';
    margin-left: 6px;
    display: inline-block;
}

.bread a {
    color: var(--gray);
}

.bread ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 20px;
}

.bread ul li {
    display: flex;
    margin-right: 6px;
}

.bread ul li a span {
    display: flex;
    white-space: nowrap;
}

.bread ul li p {
    display: flex;
    white-space: nowrap;
}


.bread h1 {
    width: 70%;
}


/* endbread */


/* default_section */

.section {
    margin-top: 74px;
    margin-bottom: 74px;
}

.section h1 {
    margin-bottom: 40px;
}

.section h2 {
    margin-bottom: 40px;
}

.section-padd {
    padding-top: 40px;
    padding-bottom: 74px;
}

.section-padd h1 {
    margin-bottom: 40px;
}

.section-padd h2 {
    margin-bottom: 40px;
}


/* end default_section */


/* about */

.about {
    display: flex;
    column-gap: 3em;
}

.about .left {
    width: 60%;
}

.about .right {
    width: 36.5%;
}

.about .text {
    margin-bottom: 66px;
}

.about .img {
    margin-bottom: 29px;
}

.numbers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 1em;
}

.numbers .number {
    display: flex;
    flex-direction: column;
}

.numbers .number span:first-child {
    font-size: 42px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    color: #C5C5C5;
    margin-bottom: 8px;
}

.numbers .number span:last-child {
    font-family: Light, sans-serif;
    font-weight: 300;
    color: #C5C5C5;
}

.about .right span {
    color: #C5C5C5;
    width: 60%;
    display: block;
}


/* endabout */


/* certs  */

.certs .img {
    cursor: pointer;
    height: 318px;
}


/* .popUpGallery {
    position: fixed;
    top: 0;
    background: var(--blue-overlay);
    z-index: 9999;
    width: 100%;
    height: 100%;
    display: none;
}

.popUpGallery figure {
    background: var(--light);
    width: 983px;
    height: 724px;
    padding: 2.5%;
}

#popUpVideo figure {
    padding: 0;
    width: 65.6%;
    height: 62%;
}

.popUpGallery .pod-text {
    background: var(--white);
    padding: 32px;
    border-radius: 16px;
}

.popUpGallery .pod-text .mini-header {
    margin-bottom: 16px;
}

.popUpGallery .wrapper__video {
    position: relative;
}

.popUpGallery .wrapper__video .play__svg {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 60px;
    height: 60px;
    background: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.popUpGallery .option__wrapper {
    width: 1166px;
    display: none;
}

.popUpGallery .option__wrapper.active {
    display: block;
}

.popUpGallery video {
    width: 100%;
    height: 655px;
    margin-bottom: 16px;
    object-fit: cover;
}

.popUpGallery iframe,
.popUpGallery img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.model .wrap-close-svg,
.popUpGallery .wrap-close-svg {
    position: absolute;
    top: 5%;
    right: 5%;
    width: 60px;
    height: 60px;
    background: var(--white);
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    z-index: 9999;
}

.model .wrap-close-svg,
.popUpGallery .close-svg {
    opacity: 0.5;
}

.popUpGallery .inner {
    width: 100%;
    height: 100%;
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    top: 0;
}

.popUpGallery .arrows {
    position: absolute;
    margin: 0 auto;
    top: 45%;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.popUpGallery .slick-next {
    margin-right: 5%;
}

.popUpGallery .slick-prev {
    margin-left: 5%;
} */

#overlay,
#overlayForm {
    position: fixed;
    visibility: hidden;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #0b0b0b61;
    z-index: 12;
}

#overlay.active,
#overlayForm.active {
    visibility: visible;
    display: flex;
    justify-content: center;
    align-items: center;
}

#overlayForm .accessForm {
    height: 225px;
    width: 400px;
    background-color: var(--white);
    border-radius: 15px;
    padding: 20px;
    text-align: center;
    display: flex;
    flex-direction: column;
    position: relative;
    top: -100%;
    transition: top 0.325s ease-in-out;
    visibility: hidden;
}

#overlayForm.access .accessForm {
    top: 0;
    visibility: visible;
}

#overlayForm button {
    margin-top: auto;
}

.scroll-lock {
    overflow: hidden;
}


/* endcearts */


/* docs */

.docs .wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
}

.docs a,
.whywe .block {
    display: block;
    color: var(--white);
    padding: 12px 35px;
    background-color: var(--blue);
    border-radius: 20px;
    font-family: Bold, sans-serif;
}


/* enddocs */


/* team */

.team .wrapper .card {
    padding: 20px;
    text-align: center;
    border-radius: 15px;
    border: 1px solid var(--border);
    height: 400px;
}

.team .img {
    margin-bottom: 20px;
    border-radius: 15px;
    height: 250px;
}

.team img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px;
}

.team .name {
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}

.team .prof {
    margin-bottom: 8px;
}

.team .year,
.team .prof {
    color: #8E8E8E;
    font-family: Light, sans-serif;
    font-weight: 300;
}

.team .wrapper {
    display: flex;
    align-items: center;
}


/* endteam */


/* whywe */

.whywe .grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.whywe .block {
    width: 30%;
    margin-top: 20px;
    margin-left: 20px;
}

.whywe .block .title {
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}

.whywe .block .text {
    font-family: Light, sans-serif;
    font-weight: 300;
}


/* endwhywe */


/* start */

.start {
    background-color: var(--blue);
    height: 416px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.start p {
    width: 50%;
    margin: 0 auto 43px auto;
    color: #FFF;
    font-family: Bold, sans-serif;
    text-align: center;
    font-size: 48px;
    font-weight: 700;
    line-height: normal;
}

.start button {
    font-size: 32px;
    color: #FFF;
    padding: 15px 50px;
    border: 1px solid var(--white);
    border-radius: 10px;
    cursor: pointer;
}

.start button:hover {
    background-color: var(--white);
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.start button:active {
    background-color: var(--blue);
    color: var(--white);
}


/* endstart */


/* brand */

.brand .wrapper {
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.brand .img {
    height: 100px;
    border: 1px solid var(--border);
    border-radius: 15px;
    padding: 20px;
}

.brand img {
    object-fit: contain;
}


/* slick-arrow */

.slick-arrow {
    width: 40px;
    height: 40px;
    background-color: var(--blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 36px;
}

.slick-arrow:first-child {
    padding-right: 3px;
}

.slick-arrow:last-child {
    padding-left: 3px;
}


/* endslickarrow */


/* endbrand */


/* contact */

.contact .left .work,
.contact form button,
.contact form p a,
.contact form span,
.contact form p {
    font-family: Light, sans-serif;
    font-weight: 300;
}

.contact .left .work,
.contact .left .block {
    margin-bottom: 18px;
}

.contact .left .h2 {
    margin-bottom: 11px;
}

.contact .left .link {
    color: #333;
    margin-bottom: 6px;
    font-family: Light, sans-serif;
    font-weight: 300;
}

.contact .left .link:last-child {
    margin-bottom: 0;
}

.contact .icons .fa-whatsapp {
    color: #43d854;
}

.contact .icons .fa-telegram {
    margin-left: 16px;
    color: #229ED9;
}

.contact .icons i {
    font-size: 32px;
}

.contact .icons {
    display: flex;
}

.contact {
    display: flex;
    justify-content: space-between;
}

.contact .left {
    width: 45%;
}

.contact .right {
    width: 30%;
}

.contact form {
    padding: 28px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border: 1px solid var(--border);
    border-radius: 30px;
}

.contact form .h2 {
    font-family: Light, sans-serif;
    font-weight: 300;
    text-align: center;
}

.contact input,
.contact textarea {
    width: 100%;
    border: 1px solid var(--border);
    border-radius: 5px;
    resize: none;
    padding: 12px 10px;
    outline: none;
}

.contact textarea {
    margin-bottom: 26px;
}

.contact input:hover,
.contact textarea:hover {
    transition: 0.325s ease-in-out;
    border: 1px solid #b7b6b6;
}

.contact input:focus,
.contact input:focus-visible,
.contact textarea:focus,
.contact textarea:focus-visible {
    border: 1px solid #b7b6b6;
}

.contact input {
    margin-bottom: 12px;
}

.contact form .title {
    margin-bottom: 6px;
    display: block;
}

.contact form button,
.main form button,
.works .btn,
.popUp .send,
#overlayForm button {
    width: 100%;
    color: var(--white);
    background-color: var(--blue);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    border-radius: 5px;
    height: 40px;
    margin-bottom: 13px;
    margin-right: 3px;
    cursor: pointer;
}

.contact form p,
.contact form span {
    color: #333;
}

.contact form p a {
    text-decoration: underline;
    color: #333;
}

.contact .help {
    text-align: center;
    line-height: 100%;
}

.contact .h1 {
    margin-bottom: 40px;
}

.grey {
    background: #F8F8F8;
}


/* endcontact */


/* portfolio */

.portfolio .dust {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.portfolio .dust span {
    color: rgba(180, 180, 180, 1);
}

.portfolio .text a {
    display: inline-block;
    color: var(--gray);
    text-decoration: underline;
}

.portfolio_text {
    width: 75%;
}

.portfolio {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 1em;
    grid-row-gap: 1em;
}

.portfolio .card {
    border: 1px solid var(--border);
    border-radius: 13px;
    padding: 22px 20px;
}

.portfolio .card .img {
    height: 180px;
    margin-bottom: 13px;
    border-radius: 15px;
    background-color: var(--white);
}

.portfolio .card .img:hover {
    opacity: 1;
}

.portfolio .card img {
    border-radius: 15px;
    object-fit: cover;
}

.portfolio .card .title {
    color: #333;
    text-decoration: underline;
    font-family: Bold, sans-serif;
    font-weight: 700;
    height: 64px;
    margin-bottom: 12px;
}

.portfolio .card .text {
    color: #333;
    font-family: Light, sans-serif;
    font-weight: 300;
    margin-bottom: 16px;
    height: 77px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.portfolio .card .go i {
    font-size: 20px;
}

.portfolio .card:hover {
    border: 1px solid var(--blue);
    transition: 0.325s ease-in-out;
}

.portfolio .card .go {
    font-size: 22px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--blue);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.portfolio .card .bottom {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.portfolio .card .bottom .date {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    color: rgba(180, 180, 180, 1);
}


/* endportfolio */


/* pagin */

.pagin .circle {
    font-size: 24px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: var(--blue);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding-bottom: 3px;
}

.pagin .circle.inactive {
    background-color: #D9D9D9;
    cursor: auto;
}

.pagin .circle.left-arrow {
    margin-right: 30px;
    padding-right: 3px;
}

.pagin .circle.right-arrow {
    margin-left: 30px;
    padding-left: 3px;
}

.pagin {
    display: flex;
    justify-content: center;
    align-items: center;
}

.pagin .number {
    width: 30px;
    height: 30px;
    background-color: #D9D9D9;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-right: 8px;
    font-size: 12px;
    user-select: none;
}

.pagin .number:hover {
    opacity: 1;
    color: var(--white);
    background-color: var(--blue);
    transition: 0.325s ease-in-out;
}

.pagin .number.active {
    opacity: 1;
    color: var(--white);
    background-color: var(--blue);
    transition: 0.325s ease-in-out;
}

.pagin .number:last-child {
    margin-right: 0;
}


/* endpagin */


/* portfolio_detail */

.portfolio_detail {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.portfolio_detail .left {
    width: 40%;
}

.portfolio_detail .right {
    width: 50%;
}

.portfolio_detail .left p {
    margin-bottom: 12px;
}

.portfolio_detail .left a {
    display: inline-block;
    color: var(--gray);
}

.portfolio_detail img {
    border-radius: 30px;
}


/* endportfolio_detail */


/* gallery */

.gallery {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 1em;
    grid-row-gap: 1em;
}

.gallery .img {
    height: 170px;
}

.gallery img {
    object-fit: cover;
    border-radius: 15px;
}


/* endgallery */


/* slick-portfolio */

.portfolio.slick-slider {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.portfolio .slick-list,
.video__gallery .slick-list,
.brand .wrapper .slick-list,
.portfolio.slick,
.team .wrapper .slick-list,
.how-mobile .wrapper .slick-list {
    width: 90%;
}


/* end slick-portfolio*/


/* politic */

.politic .h3 {
    margin-bottom: 12px;
}

.politic .st {
    margin-bottom: 16px;
    font-family: Light, sans-serif;
    font-weight: 300;
}


/* endpolitic */


/* category */

.category {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.category .icons i {
    color: #999;
    margin-right: 10px;
    font-size: 20px;
    width: 20px;
}

.category .icons p {
    color: #999;
}

.category .icons {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}

.category .left {
    width: 35%;
}

.category .grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 1em;
    grid-row-gap: 1em;
}

.category .right .card {
    padding: 15px;
    border: 1px solid #DBDBDB;
    border-radius: 15px;
    display: flex;
    flex-direction: column;
}

.category .right .card:hover {
    border: 1px solid var(--blue);
    transition: 0.325s ease-in-out;
}

.category .right .img {
    height: 250px;
    margin-bottom: 12px;
}

.service .right .img {
    height: 150px;
}

.category .right img {
    object-fit: cover;
    border-radius: 20px;
}

.category .right .img:hover {
    opacity: 1;
}

.category .right .title {
    color: #333;
    text-decoration: underline;
    margin-bottom: 8px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    font-size: 20px;
}

.category .right .text {
    color: #333;
    margin-bottom: 8px;
    font-family: Light, sans-serif;
    font-weight: 300;
    height: 150px;
    overflow: hidden;
    margin-bottom: 8px;
    font-size: 18px;
}

.category .right .price {
    font-size: 24px;
}

.main_cat .btn {
    margin-top: 2em;
    padding: 12px 24px;
    background-color: var(--blue);
    border-radius: 20px;
    color: var(--white);
    font-weight: 700;
    cursor: pointer;
    width: 50%;
}

.main_cat .btn:hover {
    opacity: 0.8;
}

.price {
    color: #333;
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-top: auto;
}


/* endcategory */


/* banner */

.banner .h1 {
    width: 50%;
    margin-bottom: 56px;
}

.banner.line {
    background-color: var(--blue);
    padding: 36px 0;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.banner .wrapper {
    display: flex;
    justify-content: space-between;
    position: relative;
}

.banner .wrapper .bt .text {
    display: block;
    margin-bottom: 12px;
    font-family: Light, sans-serif;
    font-weight: 300;
}

.banner .bt {
    width: 50%;
}

.banner .imgs {
    width: 600px;
    background-color: var(--white);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 5px;
    grid-row-gap: 5px;
    padding-left: 5px;
    padding: 5px;
    height: 600px;
    position: absolute;
    top: -46%;
    right: 0;
}

.banner .imgs .img {
    height: 293px;
}

.banner img {
    object-fit: cover;
}

.banner .numbers .number span:first-child,
.banner .numbers .number span:last-child {
    color: var(--white);
    text-align: center;
}


/* endbanner */


/* main */

.main {
    background: var(--gray);
    position: relative;
}

.main .prokl {
    position: relative;
    max-width: 1840px;
    margin: 0 auto;
    width: 100%;
}

.main .container {
    padding-top: 130px;
    padding-bottom: 30px;
    position: relative;
    overflow: hidden;
}

.main .inner {
    z-index: 3;
    position: relative;
}

.main .h1 {
    width: 55%;
}

.main .h1 span {
    color: #86B1FF;
}

.main video {
    position: absolute;
    top: 0;
    right: 0;
    width: 99%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.main .under {
    height: 100%;
    width: 100%;
    max-width: 1900px;
    position: absolute;
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    text-align: center;
}

.main .mask {
    position: relative;
    width: 100%;
    height: 100%;
}

.main .gradient {
    background-image: linear-gradient(90deg, #1a1a1a 27.81%, rgba(51, 51, 51, 0.50) 78.53%);
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: relative;
    z-index: 2;
    display: block;
    box-shadow: -41px -4px 49px -2px rgba(51, 51, 51, 0.5) inset;
}

.main .desc {
    margin-bottom: 35px;
    width: 60%;
}

.main form {
    z-index: 3;
    position: relative;
    width: 25%;
    margin-bottom: 184px;
}

.main input,
.popUp input {
    background: var(--white);
    border-radius: 15px;
    border: none;
    width: 100%;
    border: 1px solid var(--border);
    border-radius: 5px;
    resize: none;
    padding: 12px 10px;
    outline: none;
    margin-bottom: 21px;
}

.main input::placeholder,
.popUp input::placeholder {
    color: #878787;
}

.main label p,
.popUp label p {
    display: none;
}

.main .help {
    text-align: center;
    color: var(--white);
}

.main .help i {
    margin-right: 8px;
    font-size: 18px;
}

.main a {
    text-decoration: underline;
    color: var(--white);
}

.main .icons {
    z-index: 3;
    position: relative;
    width: 75%;
    display: flex;
    justify-content: space-between;
}

.main .icons i {
    margin-right: 6px;
}

.main .icons .block {
    display: flex;
}

.main .icons p {
    color: var(--white);
}

.main button {
    margin-bottom: 21px;
}


/* endmain */


/* main_category */

.main_category h1 {
    width: 50%;
}

.main_category .grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 1em;
    grid-row-gap: 1em;
}

.main_category .grid .card {
    border: 1px solid var(--border);
    border-radius: 15px;
    padding: 30px 24px;
    display: flex;
    flex-direction: column;
}

.main_category .grid .card:hover {
    border: 1px solid var(--blue);
    transition: 0.325s ease-in-out;
}

.main_category a {
    text-decoration: underline;
    color: var(--gray);
    display: inline-block;
}

.main_category .st {
    margin-bottom: 6px;
}

.main_category .bt:first-child {
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}

.main_category ul {
    list-style: disc inside none;
    margin-bottom: 40px;
}


/* endmaincategory */


/* mini-certs */

.mini-certs {
    margin-top: 28px;
    margin-bottom: 100px;
    display: flex;
    gap: 1em;
    width: 50%;
    justify-content: space-evenly;
    min-height: 120px;
}

.mini-certs .img {
    width: 120px;
}


/* end mini certs */


/* how */

.how-mobile .block {
    border: 1px solid #CCC;
    padding: 20px;
    border-radius: 15px;
}

.how-mobile .block .title {
    margin-bottom: 12px;
    font-family: Bold, sans-serif;
    font-weight: 700;
}

.how-mobile {
    display: none!important;
}

.how .block {
    display: flex;
    flex-direction: column;
    width: 20%;
    margin-right: 10%;
}

.how .line {
    display: flex;
}

.how .line:last-child {
    display: flex;
    margin-left: 15%
}

.how .line .title {
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-bottom: 12px;
}

.how .line .text {
    font-family: Light, sans-serif;
    font-weight: 300;
}

.how .blueline {
    width: 100%;
    display: flex;
    margin-top: 40px;
    margin-bottom: 40px;
}

.how .blueline span {
    display: block;
    position: relative;
    height: 8px;
    background: var(--blue);
    width: 15%;
}

.how .blueline span:last-child {
    display: block;
    position: relative;
    height: 8px;
    background: var(--blue);
    width: 0;
}

.how .blueline span::after {
    content: '';
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 6px;
    background-color: var(--blue);
    position: absolute;
    top: -15px;
}


/* endhow */


/* works */

.works {
    display: flex;
    justify-content: space-between;
}

.works .left {
    width: 50%;
}

.works .left .h1,
.works .left .bt {
    width: 80%;
}

.works .right {
    width: 45%;
}

.works .right .wrapper,
.works .right img {
    height: 550px;
}

.works .left img,
.works .left .img {
    height: 190px;
}

.works img {
    object-fit: cover;
    border-radius: 30px;
}

.works .desc {
    margin-bottom: 30px;
    font-family: Light, sans-serif;
    font-weight: 300;
}

.works .left .btn {
    width: max-content;
    padding: 10px 100px;
    margin-bottom: 80px;
}

.works .left .img {
    position: relative;
}

.works .left .img:hover img {
    filter: brightness(70%);
}

.works .left .img:hover .hover {
    visibility: visible;
    opacity: 1;
    display: block;
}

.works .left .hover {
    cursor: pointer;
    transition: 0.325s ease-in-out;
    visibility: hidden;
    opacity: 0;
    display: block;
    position: absolute;
    top: 20%;
    width: 100%;
    height: 100%;
    text-align: center;
    color: var(--white);
}

.works .left img {
    border-radius: 30px;
}

.works .left .slick-slide {
    margin-right: 0.5em;
    margin-left: 0.5em;
}

.works .right .hover {
    position: absolute;
    bottom: 10%;
    width: 80%;
    background: #535353CF;
    padding: 20px 30px;
}

.works .right .img {
    position: relative;
}

.works .right .title {
    color: var(--white);
    text-decoration: underline;
    font-size: Bold, sans-serif;
    font-weight: 700;
    margin-bottom: 8px;
}

.works .right .descs {
    color: var(--white);
    text-decoration: none;
}


/* endworks */


/* calc */

input[type=range] {
    -webkit-appearance: none;
    margin: 10px 0;
    width: 100%;
    border: none;
    background: transparent;
}

input[type=range]::before {
    content: '1м';
    margin-right: 6px;
}

input[type=range]::after {
    content: '100м';
    margin-left: 6px;
}

input[type=range]:hover {
    border: none;
}

input[type=range]:focus {
    outline: none;
    border: none;
}

input[type=range]:focus-within {
    border: none;
}

input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 3px;
    cursor: pointer;
    box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
    background: var(--blue);
    border-radius: 25px;
    border: 0px solid #000101;
}

input[type=range]::-webkit-slider-thumb {
    height: 19px;
    width: 19px;
    border-radius: 4px;
    background: var(--blue);
    cursor: pointer;
    -webkit-appearance: none;
    margin-top: -7.6px;
}

.calc .metr {
    margin: 0 auto;
    display: block;
    width: max-content;
    margin-bottom: 8px;
}

.calc .result {
    margin-bottom: 12px;
    display: block;
    opacity: 0;
    font-family: Bold, sans-serif;
    font-weight: 700;
    height: 25px;
}

.calc .right .count {
    margin-left: auto;
    display: block;
    width: max-content;
    color: var(--lightgray);
    margin-bottom: 8px;
}

.calc .left .count {
    display: block;
    width: 80%;
    color: var(--lightgray);
    margin-bottom: 8px;
}

.calc .chexblock {
    border: none;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 1em;
    grid-row-gap: 1em;
    margin-bottom: 30px;
}

.calc.img .right {
    width: 40%;
}

.calc .chexblock label {
    border-radius: 10px;
    border: 1px solid #DBDBDB;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: var(--white);
}

.calc .chexblock label:hover {
    border-color: var(--blue);
    transition: 0.325s ease-in-out;
}

.calc .chexblock label input:checked {
    border-color: var(--blue);
    transition: 0.325s ease-in-out;
}

.calc .chexblock label .podlabel {
    display: flex;
    flex-direction: column;
    position: relative;
}

.calc .chexblock label .podlabel p {
    margin-bottom: 8px;
    text-align: center;
}

.calc .chexblock label img {
    height: 80px;
    width: 40%;
    margin-right: 1em;
    background-color: var(--white);
}

.calc .result.active {
    margin-bottom: 12px;
    opacity: 1;
}

.calc {
    background: #F8F8F8;
}

.calc .h1 {
    margin-bottom: 24px;
}

.calc .text {
    margin-bottom: 24px;
}

.calc .left {
    width: 40%;
}

.calc .steps {
    display: flex;
    flex-direction: column;
}

.calc .step {
    display: flex;
    align-items: center;
    margin-bottom: 50px;
}

.calc .step:last-child {
    margin-bottom: 0;
}

.calc .step span {
    width: 66px;
    min-width: 66px;
    height: 66px;
    background: var(--blue);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-size: 24px;
    font-family: Bold, sans-serif;
    font-weight: 700;
    margin-right: 16px;
}

.calc .step .bt {
    font-family: Light, sans-serif;
    font-weight: 300;
}


/* endcalc */


/* table */

.table table,
.custom table {
    width: 100%;
    border-collapse: collapse;
}

.table thead tr td,
.custom thead tr td {
    background-color: var(--blue);
    text-align: center;
    padding: 8px 0;
    font-family: Bold, sans-serif;
    font-weight: 700;
    border-right: 1px solid var(--white);
    color: var(--white);
    font-size: 20px;
}

.table tbody tr td,
.custom tbody tr td {
    background-color: var(--white);
    text-align: center;
    padding: 8px 0;
    font-family: Bold, sans-serif;
    font-weight: 700;
    border: 1px solid var(--blue);
    border-spacing: 0;
}

.table thead tr td:first-child,
.custom thead tr td:first-child {
    border-radius: 5px 0 0 0;
    border-left: 1px solid var(--white);
}

.table thead tr td:last-child,
.custom thead tr td:last-child {
    border-radius: 0 5px 0 0;
    border-right: none;
}


/* endtable */


/* galleryvideo */

.video__gallery .video {
    height: 300px;
    min-width: 30%;
}

.video__gallery .slick-list.draggable {
    margin: 0 auto;
}


/* endgalleryvideo */


/* post_detail */

.post_detail h1 {
    margin-bottom: 8px;
}

.post_detail img {
    object-fit: cover;
    border-radius: 30px;
}

.post_detail .pod span,
.post_detail .pod i {
    color: rgba(180, 180, 180, 1);
}

.post_detail .pod .date {
    margin-right: 16px;
}

.post_detail .pod i {
    margin-right: 8px;
}

.post_detail .pod {
    margin-bottom: 16px;
}

.post_detail .left {
    width: 40%;
}

.post_detail .right {
    width: 45%;
}

.post_detail {
    display: flex;
    justify-content: space-between;
}

.post_detail .right .img {
    height: 350px;
}

.post_detail_content .left {
    width: 60%;
}

.post_detail_content .right {
    width: 25%;
}

.post_detail_content {
    display: flex;
    justify-content: space-between;
}

.post_detail_content .portfolio {
    display: flex;
    flex-direction: column;
    margin-bottom: 1em;
}

.post_detail_content .h2 {
    margin-bottom: 40px;
}

.custom {
    margin-bottom: 1em;
}


/* endpost */


/* custom */

.custom h2 {
    margin-bottom: 40px;
}

.custom p {
    color: #333;
    margin-bottom: 20px;
}

.custom p a {
    color: #333;
    display: inline-block;
    text-decoration: underline;
    text-decoration-color: var(--blue);
}

.custom ul,
.custom ol {
    margin-bottom: 30px;
}

.custom ul li,
.custom ol li {
    margin-bottom: 12px;
}

.custom ul li:before,
.custom ol li:before {
    content: '';
    width: 15px;
    height: 15px;
    border-radius: 50%;
    margin-right: 12px;
    background-color: var(--blue);
    display: inline-block;
}

.custom blockquote {
    background: var(--blue);
    padding: 20px 35px;
    border-radius: 15px;
    margin-bottom: 30px;
    width: 60%;
}

.custom blockquote p {
    font-family: Bold, sans-serif;
    font-weight: 700;
    color: var(--white);
}

.custom blockquote footer,
.custom blockquote cite {
    text-align: right;
    color: var(--white);
    background: transparent;
}


/* endcustom */


/* page404 */

.page404 {
    width: 100vh;
    height: 80vh;
    background: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.page404 .title {
    font-size: 172px;
    color: var(--blue);
    width: 100%;
    margin-bottom: 16px;
    text-align: center;
    line-height: 100%;
}

.page404 .text {
    text-align: center;
    color: var(--blue);
    margin-bottom: 16px;
    font-size: 34px;
}

.page404 a {
    background-color: var(--blue);
    border-radius: 5px;
    color: var(--white);
    text-align: center;
    font-family: Bold, sans-serif;
    padding: 8px 40px;
    width: max-content;
    margin: 0 auto;
}


/* endpage404 */


/* popUp */

.popUp {
    position: fixed;
    width: 415px;
    height: 100vh;
    background-color: var(--white);
    top: 0;
    right: -100%;
    z-index: 99;
    padding: 30px;
    overflow-y: scroll;
    transition: right 0.325s ease-in-out;
}

.popUp.left {
    right: 0;
    left: -100%;
    transition: left 0.325s ease-in-out;
}

.popUp.left.show {
    left: 0;
}

.popUp::-webkit-scrollbar {
    display: none;
}

.popUp.show {
    right: 0;
}

.popUp .inner {
    position: relative;
    margin-top: 30%;
}

.popUp .close {
    cursor: pointer;
}

.popUp .close:hover i {
    color: var(--blue);
}

.popUp .close i {
    color: var(--gray);
    position: absolute;
    top: 30px;
    right: 30px;
    font-size: 34px;
}

.popUp .h2 {
    margin-bottom: 20px;
}

.popUp input {
    margin-bottom: 20px;
}

.popUp input:hover,
.popUp input:focus {
    border: 1px solid var(--blue);
    transition: 0.325s ease-in-out;
}

.popUp .info_result {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--border);
    padding-bottom: 15px;
    margin-bottom: 15px;
}

.popUp .info_result p {
    color: var(--lightgray);
}

.popUp .info_result a {
    color: var(--gray);
}

.popUp .block {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
}

.popUp .block .title {
    color: var(--lightgray);
}

.popUp .block .service a {
    color: var(--gray);
    margin-bottom: 8px;
}

.popUp .block .service a:hover {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.popUp .help {
    text-align: center;
}

.popUp .help a,
.popUp .help i {
    color: var(--gray);
}

.popUp .help i {
    margin-right: 8px;
    font-size: 18px;
}

.popUp .inner.form .h2 {
    margin-bottom: 40px;
}

.popUp .inner.form input,
.popUp .inner.form .send {
    margin-bottom: 30px;
}

.popUp .podul {
    margin-left: 5%;
}

.popUp li {
    margin-bottom: 8px;
}

.popUp .podul li a {
    margin-bottom: 8px;
}

.popUp i {
    color: var(--gray);
}

.popUp .podul__title {
    display: flex;
    align-items: flex-start;
    margin-bottom: 1em;
    cursor: pointer;
}

.popUp .podul__title i {
    margin-left: 0.8em;
    font-size: 14px;
}

.popUp .podul__title.active i {
    transform: rotate(180deg);
}

.popUp a,
.popUp button {
    color: var(--gray);
}

.popUp a:hover,
.popUp button:hover {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.popUp .send.catalogBtn {
    margin-top: 30%;
}

.popUp .send.formSend {
    margin-top: 0;
}

.popUp .send.catalogBtn:hover,
.popUp .send.formSend:hover {
    color: var(--white);
    opacity: 0.7;
    transition: 0.325s ease-in-out;
}

.popUp .send.catalogBtn:active {
    color: var(--white);
    opacity: 1;
}

.popUp .send.catalogBtn i,
.popUp .send.formSend i {
    color: var(--white);
}



/* endPopup */

.column-1,
.column-2,
.column-3 {
    display: flex;
}

header .bottom .catalogBtn {
    display: none;
    cursor: pointer;
}

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

.flexx .wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    border: 0;
    clip: rect(0 0 0 0);
}

.autocomplete-suggestions {
    max-height: 600px;
    overflow-y: scroll;
    width: 80%!important;
    left: 20%;
}

.autocomplete-suggestions::-webkit-scrollbar {
    width: 4px;
}

.autocomplete-suggestions::-webkit-scrollbar-thumb {
    background-color: var(--gray);
}

.autocomplete-suggestions::-webkit-scrollbar-track {
    background-color: var(--lightgray);
}

.popUp .cities .city:hover {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.popUp .cities .city {
    font-family: Light, sans-serif;
    font-weight: 300;
    margin-bottom: 8px;
    cursor: pointer;
}

#cityPopUp .autocomplete-suggestion {
    font-family: Light, sans-serif;
    font-weight: 300;
    margin-bottom: 8px;
    cursor: pointer;
}

#searchPopUp .autocomplete-suggestions {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.popUp .block .service a {
    color: var(--gray);
    margin-bottom: 8px;
}

.popUp .block .service a:hover {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

#searchPopUp .autocomplete-suggestion {
    color: var(--gray);
    margin-bottom: 8px;
    cursor: pointer;
    margin-right: 30px;
}

#searchPopUp .autocomplete-suggestion:hover {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.service .big_img {
    height: 500px;
    width: 100%;
    margin-bottom: 1em;
}

.service .big_img img {
    object-fit: cover;
    border-radius: 20px;
}

.service .right {
    width: 50%;
}

.service .left {
    width: 45%;
}

.service .mini-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 0.5em;
    grid-row-gap: 0.5em;
    margin-bottom: 1.5em;
}

.service .mini-gallery .img:hover {
    opacity: 0.7;
    transition: 0.325s ease-in-out;
}

.service .mini-gallery img {
    border-radius: 20px;
}

.service .table {
    margin-top: 2em;
}

.service .price {
    display: block;
    background-color: var(--blue);
    margin-bottom: 2em;
    padding: 18px 40px;
    width: max-content;
    color: var(--white);
    border-radius: 10px;
}

.service .text {
    margin-bottom: 3em;
}


/* qeust */

.quest .circle {
    margin-left: 0.5em;
    background-color: var(--blue);
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.2s ease;
    cursor: pointer;
}

.quest .circle i {
    font-size: 14px;
}

.quest summary {
    display: block;
}

.quest summary::-webkit-details-marker {
    display: none;
}

.quest details[open] summary .circle {
    transform: rotate(180deg);
}

.quest p {
    margin-top: 1em;
    background-color: var(--blue);
    border-radius: 10px;
    padding: 12px 17px;
    color: var(--white);
}

.quest .wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.quest details {
    width: 40%;
    margin-bottom: 1em;
}

.mob {
    display: none;
}


/* endquest */

input.error::placeholder,
textarea.error::placeholder {
    color: rgb(207, 98, 98);
}

.filters {
    background-color: var(--blue);
    display: flex;
    width: max-content;
    padding: 17px 40px;
    border-radius: 15px;
    margin-top: 20px;
}

.filters i {
    margin-right: 12px;
    margin-bottom: 2px;
}

.filters button {
    color: var(--white);
    display: flex;
    align-items: center;
    border-radius: 8px;
    cursor: pointer;
}

.filters button:hover {
    opacity: 0.7;
    transition: 0.325s ease-in-out;
}

.filters button:first-child {
    margin-right: 27px;
}

.post_detail .img.mobile {
    display: none;
    margin-bottom: 2em;
}

.video {
    position: relative;
    height: 400px;
}

.video .play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    display: block;
    width: 60px;
    height: 60px;
    background-color: var(--blue);
    border-radius: 50%;
    cursor: pointer;
}

.video .play i {
    font-size: 30px;
    margin-left: 5px;
}

.video .play:hover i {
    opacity: 0.7;
    transition: 0.325s ease-in-out;
}

.bottom .social .icons {
    display: flex;
}

.bottom .social .icons a:first-child {
    margin-right: 8px;
}

footer .icons {
    display: flex;
}

footer .icons a:first-child {
    margin-right: 10px;
}

.popUp .social .icons {
    display: flex;
}

.popUp .social .icons a:first-child {
    margin-right: 8px;
}

header .bottom .links {
    flex-grow: 0.9;
}

.wrap-link {
    display: flex;
    align-items: center;
    margin-bottom: 1em;
}

.wrap-link button {
    margin-left: 0.8em;
    cursor: pointer;
}

.wrap-link button:hover i {
    color: var(--blue);
    transition: 0.325s ease-in-out;
}

.wtt p {
    color: var(--white);
}

#search_result .service {
    width: 80%;
}

.search_result {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-height: 500px;
    overflow: auto;
}

label.error {
    color: red;
}

.search_result .search-title {
    font-weight: 700;
    margin-bottom: 10px;
}

.mob_search button {
    padding: 15px;
    padding-left: 0;
    display: flex;
    align-items: center;
    gap: 1em;
}

.mob_search button i {
    font-size: 24px;
}

.mob_search button span {
    font-size: 24px;
}

.main_cat {
    margin-top: 3em;
    display: flex;
    justify-content: space-between;
}

.main_cat .left {
    width: 48%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.main_cat .right {
    width: 50%;
}

.main_cat .under span {
    font-size: 200%;
}

.main_cat .big_img {
    height: 400px;
    width: 100%;
    margin-bottom: 1em;
}

.main_cat .big_img img {
    object-fit: cover;
    border-radius: 20px;
}

.main_cat .icons i {
    color: var(--blue);
    margin-right: 10px;
    font-size: 20px;
    width: 20px;
}

.main_cat .icons p {
    color: #000000;
}

.main_cat .icons {
    display: flex;
    align-items: center;
    margin-bottom: 14px;
}

.video__gallery video {
    object-fit: cover;
    border-radius: 20px;
}