:root {
    /*
  --scrollbarBgColor: rgba(0, 0, 0, .0);
  --scrollbarThumbColor: rgba(0, 0, 0, .0);
  --scrollbarThumbColorSecond: rgba(255, 255, 255, .0);
  --scrollbarWidth: 16px;
  --scrollbarBorder: 0 solid var(--scrollbarBgColor);
  --scrollbarBorderRadius: calc(var(--scrollbarWidth) / 4);
  */
}
* {
    scroll-behavior: smooth;   
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
}
*:focus {
    outline: none;
}
button, 
input[type=submit] {
    cursor: pointer;
}
input[type=submit]:disabled {
    opacity: 0.6;
}
body {
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    line-height: 1.2;
    font-family: Manrope, "Bebas Neue", Arial, Helvetica, sans-serif;
    color: #FFF;
    background: #000203;
    padding: 0;
    margin: 0;
    overflow-x: hidden;
}
body.active-right-popup-calculate,
body.active-right-popup,
body.active-right-popup-work, 
body.active-right-popup-consult,
body.active-right-popup-project,
body.active-right-popup-project-discuss,
body.active-right-popup-offer {
    position: relative;
}
body.active-right-popup-calculate:before,
body.active-right-popup:before,
body.active-right-popup-work:before,
body.active-right-popup-consult:before,
body.active-right-popup-project:before,
body.active-right-popup-project-discuss:before,
body.active-right-popup-offer:before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    /*
    overflow-y: hidden;
    */
    background: #00000099;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
img {
    width: 100%;
    object-fit: contain;
}
picture {
    line-height: 0;
    display: block;
}
.hidden {
    display: none!important;
}
.container {
    padding-left: 40px;
    padding-right: 40px;
    /*
    max-width: 1840px;
    */
    margin: 0 auto;
}

/* Header */
.dm-head {
    padding-top: 20px;
    padding-bottom: 20px;
    position: fixed;
    width: 100%;
    z-index: 9999999;
    top: 0;
}
.dm-head.scrolled {
    background: #000203;
}
.dm-head-wrap {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 41px) 50px calc(50% - 41px);
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    align-items: center;
}
.dm-head-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 30px;
}
.dm-head-menu ul li a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 1em;
    line-height: 120%;
    letter-spacing: 0em;
    color: #fff;
    text-decoration: none;
}
.dm-head-menu ul li a:hover {
    color: #96C6F7;
}
.dm-head-wrap .dm-head-item {
    display: flex;
    gap: 30px;
    align-items: center;
    justify-content: flex-end;
}
.lang-menu-cnt ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
/*
.lang-menu-cnt ul .sub-menu {
    height: 0;
}
*/
/*
.lang-menu-cnt ul .sub-menu li.current-lang {
    display: none;
}
*/
.lang-menu-cnt li.pll-parent-menu-item>a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    position: relative;
    text-decoration: none;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 5px;
}
.lang-menu-cnt li.pll-parent-menu-item>a:after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background: url(../images/lang-arrow.svg) center center no-repeat;
    background-size: contain;
}
.lang-menu-cnt ul .sub-menu li a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    text-decoration: none;
    /*
    color: #fff;
    */
    color: #000;
    text-decoration: none;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
}
.lang-menu-cnt ul .sub-menu li a:before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
}
.lang-menu-cnt ul .sub-menu li a:before {
    background: url(../images/modal-lang-menu-current-lang.svg) center center no-repeat;
    background-size: contain;
}
.lang-menu-cnt ul .sub-menu li.current-lang a:before {
    background: url(../images/modal-lang-menu-lang.svg) center center no-repeat;
    background-size: contain;
}
.lang-menu-cnt li.pll-parent-menu-item .sub-menu {
    display: none;
}
.lang-menu-cnt li.pll-parent-menu-item:hover .sub-menu {
    display: flex;
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: absolute;
    height: auto;
    padding: 40px;
    background: #fff;
}
/*
.dm-head-lang-menu .lang-menu-items {
    display: none;
}
.dm-head-lang-menu .lang-menu-selected {
    display: flex;
    gap: 5px;
    align-items: center;
}
*/


.dm-head-item .dm-head-phone a {
    display: flex;
    align-items: center;
    gap: 5px;
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    text-decoration: none;
    color: #fff;
}
.burger {
    display: none;
}
.burger button {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0em;
    background: transparent;
    color: #fff;
    border: none;
    margin: 0;
    padding: 0;
}

/* Frontpage - Top */
.dm-frontpage-top {
    min-height: 900px;
    box-sizing: border-box;
    background-image: -webkit-image-set(
        url('../images/frontpage/top-bg.webp') type('image/webp'),
        url('../images/frontpage/top-bg.png') type('image/png'));
    background-image: image-set(
        url('../images/frontpage/top-bg.webp') type('image/webp'),
        url('../images/frontpage/top-bg.png') type('image/png'));
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 90px;
    position: relative;
}
.dm-frontpage-top .content {
    padding-top: 136px;
    padding-bottom: 35px;
}
.dm-frontpage-top .content h1 {
    margin: 30px auto 15px;
    font-family: Manrope;
    font-weight: 500;
    font-size: clamp(24px, 3.34vw, 64px);
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    /*max-width: 1020px;*/
}
.dm-frontpage-top .content h1 span {
    /*
    display: block;
    color: #96C6F7;
    */
}
.dm-frontpage-top .content h1 strong {
    color: #96C6F7;
    font-weight: 500;
} 
.dm-frontpage-top .content p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
    margin: 0 0 20px;
}
.dm-frontpage-top .content .buttons-cnt {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.dm-frontpage-top .content button {
    border: 1px solid #7012CD;
    background: #7012CD;    
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 360px;
    /*
    margin: 0 auto;
    */
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.dm-frontpage-top .content button:hover {
    background: transparent;
    border: 1px solid #7012CD;
    box-shadow: none;
}
.dm-frontpage-top .content button.purple {
    background: transparent;
    border: 1px solid #7012CD;
    border-radius: 8px;
    box-shadow: none;
}
.dm-frontpage-top .content button.purple:hover {
    background: #7012CD;
    border: 1px solid #7012CD;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.dm-frontpage-top  .soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    position: absolute;
    bottom: 40px;
    right: 40px;
}

/* Frontpage - About */
.dm-frontpage-about {
    margin: 0px auto 0;
    padding-top: 130px;
    max-width: 1250px;
    
    background-image: -webkit-image-set(
        url(../images/frontpage/about-bg.webp) type('image/webp'), 
        url(../images/frontpage/about-bg.png) type('image/png'));
    background-image: image-set(
        url(../images/frontpage/about-bg.webp) type('image/webp'), 
        url(../images/frontpage/about-bg.png) type('image/png'));
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}
.dm-frontpage-about .content {
    max-width: 782px;
    margin: 0 auto;
}
.dm-frontpage-about .content .main-title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-about .content .main-title h2 {
    margin: 0;
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
}    
.dm-frontpage-about .content .main-title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-about .content .main-title .citata p {
    margin: 0;
}
.dm-frontpage-about .text-content .title {
    font-family: Manrope;
    font-weight: 600;
    font-size: 36px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0;
}
.dm-frontpage-about .text-content .title p {
    margin: 0;
}
.dm-frontpage-about .text-content .title span,
.dm-frontpage-about .text-content .title strong {
    color: #96C6F7;
    font-weight: 600;
} 
.dm-frontpage-about .text-content .subtitle {
    font-family: Manrope;
    font-weight: 600;
    font-size: 36px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0;
    padding-left: 160px;
}
.dm-frontpage-about .text-content .subtitle p {
    margin: 0;
}
.dm-frontpage-about .text-content .subtitle span,
.dm-frontpage-about .text-content .subtitle strong {
    color: #96C6F7;
    font-weight: 600;
} 
.dm-frontpage-about .text-content .text {
    padding-left: 160px;
    margin-top: 10px;
    max-width: 445px;
} 
.dm-frontpage-about .text-content .text p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    margin: 0;
}
.dm-frontpage-about .text-content .text p+p {
    margin-top: 10px;
}
.dm-frontpage-about .text-content .text img {
    margin-top: 10px;
    border-radius: 8px;
}    
.dm-frontpage-about .text-content .text button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 10px;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
}
    
/* Frontpage - Advantags */
.dm-frontpage-advantags {
    margin-top: 200px;
    position: relative;
}
.dm-frontpage-advantags .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-advantags .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-advantags .title .citata p {
    margin: 0;
}
.dm-frontpage-advantags .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-transform: lowercase;
    margin: 0;
}    
.advantags-grid {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}  
.advantags-grid .advantags-item {
    background-color: rgba(255, 255, 255, .05);
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, .25);
    box-shadow: 0 0 10px 1px rgba(0, 0, 0, .25);
    padding: 20px;
    /*border-right: 1px solid #6C766B;*/
    min-height: 15vw;
    box-sizing: border-box;
}
.advantags-grid .advantags-item:nth-child(8) {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.advantags-grid .advantags-item:nth-child(10) {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.advantags-grid .advantags-item .text-content {
    /*border-left: 1px solid #6C766B;*/
    padding-left: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    position: relative;
    gap: 36px;
}
.advantags-grid .advantags-item .text-content:before {
    content: "";
    position: absolute;
    left: 0;
    width: 1px;
    height: 100%;
    background: url(../images/frontpage/advantags-border.png) top left repeat-y;
    background-size: contain;
}
.advantags-grid .advantags-item .text-content .image img {
    height: 50px;
    width: auto;
}
.advantags-grid .advantags-item .text-content .text h3 {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0 0 10px;
}    
.advantags-grid .advantags-item .text-content .text p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    margin: 0;
}
.advantags-grid .advantags-item.transparent {
    opacity: 0;
}
.dm-frontpage-advantags .picture-abs {
    max-width: 36%;
    position: absolute;
    bottom: -50px;
    left: 27%;
    z-index: -1;
}
.advantags-grid .advantags-item:nth-child(3) {
    z-index: -2;
}

/* Frontpage - Portfolio */
.dm-frontpage-portfolio {
    padding-top: 200px;
    position: relative;
}
.dm-frontpage-portfolio .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-portfolio .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-portfolio .title .citata p {
    margin: 0;
}
.dm-frontpage-portfolio .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
}    
.dm-frontpage-portfolio .portfolio-grid {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.portfolio-item-wrap-el .name {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 10px 0;
}
.portfolio-item-wrap-el .year {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0em;
    color: #6C766B; 
    margin-bottom: 10px;
}
.portfolio-item-wrap-el a.link {
    max-width: 290px;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #FFFFFF;
    padding-bottom: 2px;
    opacity: 0.3;
}
.portfolio-item-wrap-el a.link:hover {
    opacity: 1;
}
.portfolio-item-wrap-el a.link span {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #fff;
}
.portfolio-item-wrap {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(67% - 10px) calc(33% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.portfolio-item-wrap.grid-33-33 {
    grid-template-columns: calc(33% - 10px) calc(33% - 10px);
    justify-content: space-between;
    height: 100%;
}
.portfolio-item-wrap .portfolio-item-wrap-el.bottom {
    align-self: flex-end;
}
.portfolio-item-wrap-el.max-width-67 {
    max-width: 67%;
}
.portfolio-item-wrap-el.margin-left-auto {
    margin-left: auto;
}
.portfolio-item-wrap.grid-33-67 {
    grid-template-columns: calc(33% - 10px) calc(67% - 10px);
}
.dm-frontpage-portfolio button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 40px;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
}

/* Frontpage - Links */
.dm-frontpage-links {
    margin-top: 200px;
}
.dm-frontpage-links .content {
    position: relative;
}
.abs {
    position: absolute;
}
.abs.top {
    top: 40px;
}
.abs.bottom {
    bottom: 40px;
}
.abs.left {
    left: 40px;
}
.abs.right {
    right: 40px;
}
.dm-frontpage-links .content .text p {
    margin: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.dm-frontpage-links .content .text p+p {
    margin-top: 16px;
}
.dm-frontpage-links .content .soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
}

/* Frontpage - Works */
.dm-frontpage-work {
    padding-top: 200px;
    position: relative;
}
.dm-frontpage-work .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-work .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-work .title .citata p {
    margin: 0;
}
.dm-frontpage-work .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
}  
.work-items {
    border-top: 1px solid rgb(255 255 255 / 20%);
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.work-items .work-elem {
    padding-top: 20px;
    padding-bottom: 20px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.work-items .work-elem+.work-elem {
    border-top: 1px solid rgb(255 255 255 / 20%);
}
.work-items .work-elem .text p {
    margin: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.work-items .work-elem .text p.gray {
    margin: 10px 0 0;
    line-height: 120%;
    letter-spacing: 0em;
    display: flex;
    align-items: center;
    gap: 4px;
    color: #6C766B;
}
.work-items .work-elem .name {
    display: flex;
    justify-content: space-between;
}
.work-items .work-elem .name span {
    font-family: Manrope;
    font-weight: 600;
    font-size: clamp(24px, 2.42vw, 36px);
    line-height: 110%;
    letter-spacing: -0.04em;
}    
.work-items .work-elem .name svg {
    margin-top: 20px;
}    
.dm-frontpage-work button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 40px;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    max-width: 50%;
    margin-left: auto;
}    
    
/* Frontpage - Works */
.dm-frontpage-logofolio {
    margin-top: 200px;
    position: relative;
}
.dm-frontpage-logofolio .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-logofolio .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-logofolio .title .citata p {
    margin: 0;
}
.dm-frontpage-logofolio .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
}     
.logofolio-content  {
    border: 1px solid;
    border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%);
    background: #131313;
    border-radius: 8px;
    padding-top: 66px;
    padding-bottom: 66px;
    position: relative;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 170px 170px auto 170px 170px;
    grid-column-gap: 40px;
    grid-row-gap: 40px;
    padding-left: 40px;
    padding-right: 40px;
}
.logofolio-content-col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.logofolio-content-col.main-logo-cnt {
    justify-content: center;
}
.abs-logo-image2 img {
    height: 90px;
}
.abs-logo-image9 img {
    height: 90px;
}
.logofolio-content-col:nth-child(2) {
    justify-content: space-around;
}
.logofolio-content-col:nth-child(4) {
    justify-content: space-around;
}
.logofolio-content button {
    position: absolute;
    bottom: 40px;
    width: 100%;
    max-width: 600px;
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    margin-left: auto;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%, -50%);
    left: 50%;
}

/* Frontpage - Offers */
.dm-frontpage-offers {
    padding-top: 200px;
    position: relative;
}
.dm-frontpage-offers .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    margin-bottom: 40px;
}
.dm-frontpage-offers .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-offers .title .citata p {
    margin: 0;
}
.dm-frontpage-offers .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
}  
.offers-grid {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.offers-item {
    background: #131313;
    border: 1px solid;
    border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%);
    border-radius: 8px;
    padding: 20px;
    min-height: 23vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
}    
.offers-item:hover {
    background: linear-gradient(180deg, #252525 0%, #460684 100%);
    border: 1px solid;
    border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%);
}
.offers-item .text-content .name {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0 0 10px;
    color: rgb(255 255 255 / 30%);
}
.offers-item .text-content .name p {
    margin: 0;
}
.offers-item .text-content .text {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    /*color: rgb(255 255 255 / 50%);  */
    color: rgb(255 255 255 / 30%);
    margin-bottom: 10px;
}
.offers-item .text-content .text p {
    margin: 0;
}
.offers-item .text-content .text p+p {
    margin-top: 16px;
}
.offers-item .price {
    opacity: 0.3;
}
.offers-item .text-content .text p {
    margin: 0;
}
.offers-item .text-content .text p+p {
    margin-top: 16px;
}
.offers-item .price ul {
    margin: 0;
    padding-left: 20px;
}
.offers-item .price ul li {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.offers-item .price ul li span {
    color: rgb(255 255 255 / 50%);      
}
.offers-item:hover .text-content .name {
    color: rgb(255 255 255 / 100%);
}
.offers-item:hover .text-content .text {
    color: rgb(255 255 255 / 100%);
}
.offers-item:hover .price {
    opacity: 1;
}

.offers-grid-new {}
.offers-grid-item-new {
    padding-top: 20px;
    padding-bottom: 20px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    border-top: 1px solid rgb(255 255 255 / 20%);
}
.offers-grid-item-new:last-child {
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.offers-grid-cols-cnt {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.offers-grid-cols-cnt.left-cnt {
    grid-template-columns: calc(40% - 10px) calc(60% - 10px);
}
.offers-grid-col-new .number {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: rgb(255 255 255 / 50%);
}
.offers-grid-col-new .item-title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 48px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin-bottom: 10px;
}
.offers-grid-col-new .srok {
    display: flex;
    align-items: center;
    gap: 5px;
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #fff;
}
.offers-grid-col-new .srok-title {
    color: rgb(255 255 255 / 50%);
}
.offers-grid-col-new .content {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.offers-grid-col-new .content p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #FFFFFF;
    margin: 0;
}
.offers-grid-col-new .content .read-more {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-decoration: underline;
    color: #7012CD;
    margin: 0;
    padding: 0;
    width: fit-content;
    background: transparent;
    border: none;
    cursor: pointer;   
}
.offers-grid-col-new .price {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-top: 40px;
}
.offers-grid-col-new .price .current, 
.offers-grid-col-new .price .old {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
}
.offers-grid-col-new .price .current {
    color: #96C6F7;
    white-space: nowrap;
}
.offers-grid-col-new .price .old {
    color: rgb(255 255 255 / 50%);
    text-decoration: line-through;
    white-space: nowrap;
}
.offers-grid-col-new .add-order button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    max-width: 290px;
}
.offers-grid-col-new button.plus {
    display: flex;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    margin-left: auto;
    border: none;
    background: url(../images/frontpage/offers-icon-plus.svg) center center no-repeat;
    background-size: contain;
}
.offers-grid-item-new.active .offers-grid-col-new button.plus {
    background: url(../images/frontpage/offers-icon-minus.svg) center center no-repeat;
    background-size: contain;
}
.offers-grid-item-new.active .offers-grid-col-new .hidden {
    display: flex!important;
}

.offers-grid-cols-cnt.right-cnt .item-title {
    display: none;
}
.offers-grid-cols-cnt.right-cnt .srok.mobile {
    display: none!important;
}
.offers-grid-item-new.active .offers-grid-col-new .srok.mobile {
    display: none!important;
}

.offers-grid-item-new .offers-grid-col-new.col-3 {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.offers-grid-item-new.active .offers-grid-col-new .read-more {
    display: none;
}

body.page-template-page-landing-b2c-fitnes .dm-frontpage-links, 
body.page-template-page-landing-stillman .dm-frontpage-links, 
body.page-template-page-landing-detailer .dm-frontpage-links, 
body.page-template-page-landing-technologiyai .dm-frontpage-links {
    margin-top: 100px;
}
body.page-template-page-project .dm-frontpage-links {
    margin-top: 0px;
}

@media (max-width: 860px) {
    body.page-template-page-landing-b2c-fitnes .dm-frontpage-links, 
    body.page-template-page-landing-stillman .dm-frontpage-links, 
    body.page-template-page-landing-detailer .dm-frontpage-links, 
    body.page-template-page-landing-technologiyai .dm-frontpage-links {
        margin-top: 80px;
    }
    body.page-template-page-project .dm-frontpage-links {
        margin-top: 0px;
    }
}
@media (max-width: 782px) {
    body.page-template-page-landing-b2c-fitnes .dm-frontpage-links, 
    body.page-template-page-landing-stillman .dm-frontpage-links, 
    body.page-template-page-landing-detailer .dm-frontpage-links, 
    body.page-template-page-landing-technologiyai .dm-frontpage-links {
        height: auto;
        margin-top: 50px;
    }
    body.page-template-page-project .dm-frontpage-links {
        height: auto;
        margin-top: 0px;
    }
}







/* Frontpage - events */
.dm-frontpage-events {
    margin-top: 200px;
    position: relative;
}
.dm-frontpage-events .title {
    display: grid;
    grid-template-rows: auto;
    /*
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    */
    grid-template-columns: calc(33% + 290px) auto;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    padding: 40px;
}
.dm-frontpage-events .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-events .title .citata p {
    margin: 0;
}
.dm-frontpage-events .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
}  
.dm-frontpage-events .content {
    background: #252525;
    border: 1px solid;
    border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%);
    border-radius: 8px;
}
.events-grid {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(33% - 10px) calc(67% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.events-grid picture {
    display: flex;
    align-items: flex-end;
}
.events-grid .events-content {
    border-top: 1px solid #6C766B;
    border-bottom: 1px solid #6C766B;
    margin-right: 40px;
    padding: 0;
}
.events-grid .events-content .events-content-item {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 270px auto;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    padding: 20px 0;
}
.events-grid .events-content .events-content-item+.events-content-item {
    border-top: 1px solid #6C766B;
}
.events-grid .events-content .events-content-item .name {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0em;    
    color: rgb(255 255 255 / 50%); 
    padding-left: 20px;
    position: relative;
}
.events-grid .events-content .events-content-item .name:before {
    content: "";
    position: absolute;
    left: 0;
    width: 1px;
    height: 100%;
    background: url(../images/frontpage/events-border.png) top left repeat-y;
    background-size: contain;
}
.events-grid .events-content .events-content-item .name p {
    margin: 0;
}
.events-grid .events-content .events-content-item .value {
    position: relative;
    padding-left: 20px;
}
.events-grid .events-content .events-content-item .value:before {
    content: "";
    position: absolute;
    left: 0;
    width: 1px;
    height: 100%;
    background: url(../images/frontpage/events-border.png) top left repeat-y;
    background-size: contain;
}
.events-grid .events-content .events-content-item .value h3 {
    font-family: Manrope;
    font-weight: 600;
    font-size: clamp(24px, 2.42vw, 36px);
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0 0 20px;
}
.events-grid .events-content .events-content-item .value p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;    
    margin: 0;
}
.events-grid .events-content .events-content-item .value p+p {
    margin-top: 16px;
}
/*
.events-grid .events-content .events-content-item .value .value-t {
    font-family: Manrope;
    font-weight: 600;
    font-size: clamp(24px, 2.42vw, 36px);
    line-height: 110%;
    letter-spacing: -0.04em;
    margin-bottom: 20px;
}
.events-grid .events-content .events-content-item .value .value-s {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;    
}
*/
.events-grid button {
    width: 100%;
    max-width: calc(100% - 40px);
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    margin-bottom: 40px;
}

/* Frontpage - Reviews */
.dm-frontpage-reviews {
    padding-top: 200px;
    position: relative;
}
.dm-frontpage-reviews .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    padding: 0 0 40px;
}
.dm-frontpage-reviews .title .citata {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-frontpage-reviews .title .citata p {
    margin: 0;
}
.dm-frontpage-reviews .title h2 {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 128px;
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: left;
    text-transform: lowercase;
    margin: 0;
} 
.reviews-slider {
    padding-bottom: 50px!important;
}
.swiper-pagination-bullet {
    border: 1px solid #131313!important;
    opacity: 1!important;
    background: transparent!important;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid #FFFFFF!important;
    opacity: 1!important;
    background: #FFFFFF!important;
}
.reviews-slider .swiper-slide {
    border: 1px solid;
    border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%);
    background: #131313;
    border-radius: 8px;
    padding: 20px;
    box-sizing: border-box;
    min-height: 290px;
    display: flex;
    flex-direction: column;
}
.reviews-slider .swiper-slide .name {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: auto 40px;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    margin-bottom: 10px;
}
.reviews-slider .swiper-slide .name .fio {
    font-family: Manrope;
    font-weight: 600;
    font-size: clamp(24px, 2.6vw, 36px);
    line-height: 110%;
    letter-spacing: -0.04em;
}
.reviews-slider .swiper-slide .text p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    margin: 0;
}
.reviews-slider .swiper-slide .text p+p {
    margin-top: 16px;
}
.reviews-slider .swiper-slide .date {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0em;
    border-left: 1px solid #6C766B;
    padding-left: 10px;
    color: #6C766B;
    margin-top: auto;
}
.dm-frontpage-reviews .title .title-col {
    display: grid;
    grid-template-rows: auto;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    grid-template-columns: auto 70px;
    align-items: flex-end;
}
.dm-frontpage-reviews .title .reviews-slider-buttons {
    display: grid;
    grid-template-rows: auto;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    grid-template-columns: 30px 30px;
}
.dm-frontpage-reviews .title .reviews-slider-buttons span {
    width: 30px;
    height: 30px;
    display: block;
    cursor: pointer;
}
.dm-frontpage-reviews .title .reviews-slider-buttons .reviews-slider-button-prev {
    background: url(../images/frontpage/slider-arrow-back.svg) center center no-repeat;
    background-size: contain;
}
.dm-frontpage-reviews .title .reviews-slider-buttons .reviews-slider-button-prev:hover {
    background: url(../images/frontpage/slider-arrow-back-hover.svg) center center no-repeat;
    background-size: contain;
}
.dm-frontpage-reviews .title .reviews-slider-buttons .reviews-slider-button-next {
    background: url(../images/frontpage/slider-arrow-next.svg) center center no-repeat;
    background-size: contain;
}
.dm-frontpage-reviews .title .reviews-slider-buttons .reviews-slider-button-next:hover {
    background: url(../images/frontpage/slider-arrow-next-hover.svg) center center no-repeat;
    background-size: contain;
}

/* Footer */
.dm-footer {
    margin-top: 130px;
    overflow-x: hidden;
}
.dm-footer-wrap {
    border-top: 1px solid #6C766B;
    padding-top: 40px;
    padding-bottom: 40px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 174px 288px auto;
    grid-column-gap: 7%;
    grid-row-gap: 7%;
}
.dm-footer-wrap .contants {
    margin-top: 100px;
}
.dm-footer-wrap .contants .soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}
.dm-footer-mail a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 5px;
}
.dm-footer-phone {
    margin-top: 10px;
}
.dm-footer-phone a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 5px;
    white-space: nowrap;
}
.dm-footer-menu {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}
.dm-footer-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.dm-footer-menu ul li a {
    font-family: Manrope;
    font-weight: 500;
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0em;
    color: #fff;
    text-decoration: none;
}
.dm-footer-policy a {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 120%;
    letter-spacing: 0em;
    color: #6C766B;
}
.dm-footer-form .title {
    font-family: 'Bebas Neue';
    font-weight: 700;
    font-size: 64px;
    line-height: 90%;
    letter-spacing: -0.01em;
    text-transform: lowercase;
}
.dm-footer-form .subtitle {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.dm-footer-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 100%;
    max-width: 910px;
    margin-left: auto;
}
.dm-footer-form form .wpcf7-response-output {
    display: none;
}
.dm-footer-form .wpcf7 {
    margin-top: auto;
}
.dm-footer-form .wpcf7 p {
    margin: 0;
}
.dm-footer-form .wpcf7 label {
    display: none;
}
.dm-footer-form .wpcf7 br {
    display: none;
}
.dm-footer-form .wpcf7 input[type=text],
.dm-footer-form .wpcf7 input[type=tel] {
    border-bottom: 1px solid #6C766B;
    width: 100%;
    padding: 10px 0;
    background: transparent;
    border-top: none;
    border-left: 0;
    border-right: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #6C766B;
}
.dm-footer-form .wpcf7 .wpcf7-form-control-wrap {
    width: 100%;
}
.dm-footer-form .wpcf7 .wpcf7-list-item {
    margin: 0;
}
.dm-footer-form .wpcf7 .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 10px;
}
.dm-footer-form .wpcf7 .wpcf7-list-item span.wpcf7-list-item-label {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.dm-footer-form .wpcf7 .wpcf7-list-item input[type=checkbox] {
    margin: 0;
    padding: 0;
    width: 16px;
    height: 16px;
}
.dm-footer-form .wpcf7 input[type=submit] {
    width: 100%;
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    padding: 0;
    border: none;
}    
.dm-footer-form .wpcf7 .form-row+.form-row {
    margin-top: 20px;
}
.dm-footer-form .wpcf7 .wpcf7-spinner {
    display: none;
}

/* Modal Forms */
.modal__overlay {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    background: #00000099;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    z-index: 99999999;
}
.modal__wrap {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 99999;
    width: 100%;
    max-width: 1120px;
    min-height: 500px;
    padding: 0px;
    background: #252525;
    /*
    -webkit-box-shadow: 0 14px 34px rgba(0, 29, 104, .12);
    box-shadow: 0 14px 34px rgba(0, 29, 104, .12);
    */
    border-radius: 0px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%, -50%);
    border-radius: 8px;
    overflow: hidden;
}
.thankyou-modal-wrap {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}
.thankyou-modal-text-cnt {
    padding-left: 40px;
    padding-right: 40px;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: space-evenly;
}
.thankyou-modal-text-cnt .content .success-image {
    text-align: center;
    margin-bottom: 10px;
}
.thankyou-modal-text-cnt .content .title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    color: #FFFFFF;
    margin: 0 0 10px;
}
.thankyou-modal-text-cnt .content .subtitle {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
    color: #FFFFFF;
    max-width: 390px;
    margin: 0 auto;
}
.thankyou-modal-text-cnt .bottom ul {
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: center;
    gap: 10px;
}
.thankyou-modal-text-cnt .bottom .close {
font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    background: #7012CD;
    min-height: 40px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    color: #fff;
    border-radius: 8px;
    cursor: pointer;
}
.modal__wrap--frontpage_calculate_order, 
.modal__wrap--frontpage_top_order, 
.modal__wrap--frontpage_work_order, 
.modal__wrap--frontpage_consult_order,
.modal__wrap--project_top_order,
.modal__wrap--project_discuss_order,
.modal__wrap--offer_order {
    position: fixed;
    top: 0;
    right: -100%;
    z-index: 9999999;
    width: 100%;
    padding: 20px 40px;
    max-width: 560px;
    height: 100vh;
    background: #252525;
    box-sizing: border-box;
}
.modal__wrap--frontpage_calculate_order {
    padding: 20px 20px;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-cnt {
    display: flex;
    flex-direction: column;
    gap: 20px;
    height: 100%;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-cnt .frontpage_calculate_order-question.last-step {
    margin-top: auto;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-cnt .question-item-bottom {
    margin-top: auto;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-top {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: auto auto;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-top .title {
    font-family: Manrope;
    font-weight: 400;
    font-size: 13px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #fff;
}
.modal__wrap--frontpage_calculate_order .frontpage_calculate_order-top .modal__close {
    position: relative;
    right: auto;
    top: auto;
}
.frontpage_calculate_order-question .question-top {
    margin-bottom: 20px;
}
.frontpage_calculate_order-question .question-title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    color: #fff;
    margin-bottom: 10px;
}
.frontpage_calculate_order-question .question-subtitle {
    min-height: 27px;
}
.frontpage_calculate_order-question .question-subtitle.active {
    font-family: Manrope;
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    letter-spacing: -0.01em;
    background: #000000;
    padding: 6px 13px 8px;
    background: #11FF00;
    border: 1px solid #0CB700;
    border-radius: 15px;
    color: #000;
    box-sizing: border-box;
    display: inline-block;
}
.frontpage_calculate_order-question .question-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.frontpage_calculate_order-question .question-list .calculation__checkbox,
.frontpage_calculate_order-question .question-list .calculation__radio {
    border: 1px solid #545454;
    border-radius: 5px;
    padding: 14px 17px;
}
.frontpage_calculate_order-question .calculation__checkbox input,
.frontpage_calculate_order-question .calculation__radio input {
    display: none;
}
.frontpage_calculate_order-question .calculation__radio .radio__new.radio__new--accent {
    border: 1px solid #7012CD;
    border-radius: 50%;
    background: transparent;
    width: 16px;
    height: 16px;
    position: relative;
}
.frontpage_calculate_order-question .calculation__checkbox .checkbox__new.checkbox__new--accent {
    border: 1px solid #FFFFFF;
    border-radius: 0px;
    background: transparent;
    width: 16px;
    height: 16px;
    position: relative;
}
.frontpage_calculate_order-question .calculation__radio label {
    display: flex;
    gap: 10px;
    align-items: center;
}
.frontpage_calculate_order-question .calculation__checkbox label span,
.frontpage_calculate_order-question .calculation__radio label span {
    font-family: Manrope;
    font-weight: 400;
    font-size: 15px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #fff;
}
.frontpage_calculate_order-question .calculation__checkbox,
.frontpage_calculate_order-question .calculation__radio {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 16px auto;
    grid-column-gap: 10px;
    grid-row-gap: 10px;
    align-items: center;
}
.frontpage_calculate_order-question input[type=radio]:checked+.radio__new:before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    top: calc(50% - 5px);
    left: calc(50% - 5px);
    background: #7012CD;
    border-radius: 50%;
}
.frontpage_calculate_order-question input[type=checkbox]:checked+.checkbox__new:before {
    content: "";
    width: 8px;
    height: 8px;
    position: absolute;
    top: calc(50% - 4px);
    left: calc(50% - 4px);
    background: url(../images/checkbox-active.svg) center center no-repeat;
    background-size: contain;
}
.margin-top-auto {
    margin-top: auto;
}
.frontpage_calculate_order-question .question-list .calculation__checkbox.error, 
.frontpage_calculate_order-question .question-list .calculation__radio.error {
    border: 1px solid #FF3B30;
}
.question-middle .form-cnt .messengers {
    margin-top: 20px;
}
.question-middle .form-cnt .messengers ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
}
.question-middle .form-cnt .messengers ul li button {
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
}
.frontpage_calculate_order-question .question-top .form-title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    margin: 0 0 10px;
    color: #fff;
}
.frontpage_calculate_order-question .question-top .form-subtitle {
    font-family: Manrope;
    font-weight: 400;
    font-size: 13px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
    margin: 0 0 30px;
    color: #fff;
}

.question-middle .form-cnt form label {
    display: none;
}
.question-middle .form-cnt form input[type=text], 
.question-middle .form-cnt form input[type=tel], 
.question-middle .form-cnt form input[type=email] {
    width: 100%;
    box-sizing: border-box;
    padding: 16px;
    background: transparent;
    border-radius: 5px;
    border: 1px solid #545454;
    /* color: rgb(255 255 255 / 30%); */
    color: rgb(255 255 255 / 100%);
}
.question-middle .form-cnt form br {
    display: none;
}
.question-middle .form-cnt form .form-col+.form-col, 
.question-middle .form-cnt form .form-row+.form-row,
.question-middle .form-cnt form .form-col+.form-row, 
.question-middle .form-cnt form .form-row+.form-col {
    margin-top: 16px;
}
.question-middle .form-cnt form p {
    margin: 0;
}
.question-middle .form-cnt form .wpcf7-form-control-wrap {
    display: block;
}
.question-middle .form-cnt form .wpcf7-list-item {
    margin: 0;
}
.question-middle .form-cnt form .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 5px;
}
.question-middle .form-cnt form .wpcf7-list-item label input[type=checkbox] {
    margin: 0;
    padding: 0;
    width: 16px;
    height: 16px;
}
.question-middle .form-cnt form .wpcf7-list-item label .wpcf7-list-item-label {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-align: center;
    color: rgb(255 255 255 / 30%);
    color: #fff;
}
.question-middle .form-cnt form input[type=submit] {
    background: #7012CD;
    padding: 9px;
    border: none;
    margin: 0;
    display: block;
    width: 100%;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    border-radius: 8px;
}
.question-middle .form-cnt form .wpcf7-spinner {
    display: none;
}
.question-middle .form-cnt form .form-title {
    margin-bottom: 30px;
}
.question-middle .form-cnt form .form-title p {
    display: flex;
    gap: 5px;
    align-items: center;
    justify-content: center;
}
.question-middle .form-cnt form .form-title p span {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    color: #fff;
}


.frontpage_calculate_order-question button.attention {
    margin: 0;
    padding: 0;
    background: transparent;
    border: none;
    width: 16px;
    height: 20px;
    cursor: pointer;
    position: relative;
}
.frontpage_calculate_order-question button.attention .popup {
    display: none;
    position: absolute;
    top: calc(50% - 40px);
    left: 32px;
    height: 80px;
    width: 250px;
    background: #fff;
    border-radius: 5px;
    z-index: 999;
}
.frontpage_calculate_order-question button.attention:hover .popup {
    display: flex;
    align-items: center;
}
.frontpage_calculate_order-question button.attention:hover .popup:before {
    content: "";
    width: 1px;
    height: 12px;
    background-size: contain;
    display: block;
    position: absolute;
    top: calc(50% - 16px);
    left: -25px;
    bottom: -12px;
    border: 10px solid transparent;
    border-top: 10px solid #fff;
    transform: rotate(90deg);
}
.frontpage_calculate_order-question button.attention .popup p {
    margin: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    letter-spacing: -0.01em;
    color: #000203;
    padding: 10px;
    text-align: left;
}
.frontpage_calculate_order-question .question-list.two-col {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 5px) calc(50% - 5px);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}






/*
.frontpage_calculate_order-question .calculation__radio.radio button, 
.frontpage_calculate_order-question .calculation__checkbox.checkbox button {
    display: block;
    width: 16px;
    height: 16px;
    background: url(../images/reviews/feature-item-open.svg) center center no-repeat;
    background-size: contain;
    margin: 0;
    padding: 0;
    border: none;
}
*/
.frontpage_calculate_order-question .calculation__radio.radio label, 
.frontpage_calculate_order-question .calculation__checkbox.checkbox label {
    font-family: Roboto Flex;
    font-weight: 475;
    font-size: 15px;
    line-height: 100%;
    letter-spacing: 0.01em;
    color: #404040;
    display: flex;
    gap: 7px;
}
/*
.frontpage_calculate_order-question .all-banks {
    margin: 18px 0 0; 
    background: transparent;
    color: #295AD9;
    border: none;
    font-family: Roboto Flex;
    font-weight: 500;
    font-size: 15px;
    line-height: 170%;
    letter-spacing: 0.02em;
}
*/
.frontpage_calculate_order-question .calculation__checkbox, 
.frontpage_calculate_order-question .calculation__radio {
    position: relative;
}

/*
.frontpage_calculate_order-question .calculation__checkbox .popup, 
.frontpage_calculate_order-question .calculation__radio .popup {
    position: absolute;
    left: 80%;
    top: 0px;
    box-shadow: -1px 1px 16px 0px #EBEFF8;
    width: 460px;
    background: #fff;
    z-index: 99999;
    padding: 20px;
    border-radius: 0px 10px 10px 10px;
    box-sizing: border-box;
}
.frontpage_calculate_order-question .calculation__checkbox .popup p, 
.frontpage_calculate_order-question .calculation__radio .popup p {
    font-family: Roboto Flex;
    font-weight: 425;
    font-size: 16px;
    line-height: 170%;
    letter-spacing: 0.01em;
    color: #242424;
    margin: 0;
}
.frontpage_calculate_order-question .calculation__checkbox .popup p+p, 
.frontpage_calculate_order-question .calculation__radio .popup p+p {
    margin-top: 16px;
}
.frontpage_calculate_order-question .calculation__checkbox.active .popup, 
.frontpage_calculate_order-question .calculation__radio.active .popup {
    display: block;
}
*/
/*
.frontpage_calculate_order-question .calculation__radio.active button, 
.frontpage_calculate_order-question .calculation__checkbox.active button {
    background: url(../images/reviews/feature-item-close.svg) center center no-repeat;
    background-size: contain;
}
*/












body.active-right-popup .modal__wrap--frontpage_top_order {
    right: 0%;
}
body.active-right-popup-work .modal__wrap--frontpage_work_order {
    right: 0%;
}
body.active-right-popup-consult .modal__wrap--frontpage_consult_order {
    right: 0%;
}
body.active-right-popup-project .modal__wrap--project_top_order {
    right: 0%;
}
body.active-right-popup-project-discuss .modal__wrap--project_discuss_order {
    right: 0%;
}
body.active-right-popup-offer .modal__wrap--offer_order {
    right: 0%;
}
body.active-right-popup-calculate .modal__wrap--frontpage_calculate_order {
    right: 0%;
}
.frontpage_top_order-cnt {
    height: calc(100% - 40px);
    position: relative;
    display: flex;
    align-items: center;
}
.modal__close {
    display: flex;
    align-items: center;
    gap: 5px;
    background: transparent;
    border: none;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0;
    top: 0;
    cursor: pointer;
}
.modal__close span {
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
}
.frontpage_top_order-form {
    width: 100%;
}
.frontpage_top_order-form .title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    margin-bottom: 15px;
}
.frontpage_top_order-form .subtitle {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
    margin-bottom: 40px;
}
.frontpage_top_order-form form label {
    display: none;
}
.frontpage_top_order-form form br {
    display: none;
}
.frontpage_top_order-form form p {
    margin: 0;
}
.frontpage_top_order-form form .wpcf7-form-control-wrap {
    display: block;
}
.frontpage_top_order-form form input[type=text],
.frontpage_top_order-form form input[type=tel],
.frontpage_top_order-form form input[type=email] {
    width: 100%;
    box-sizing: border-box;
    padding: 16px;
    background: transparent;
    border-radius: 5px;
    border: 1px solid #545454;
    /*color: rgb(255 255 255 / 30%);*/
    color: rgb(255 255 255 / 100%);
}
.frontpage_top_order-form form textarea {
    font-family: Manrope;
    font-weight: 400;
    font-size: 15px;
    line-height: 130%;
    letter-spacing: -0.04em;
    width: 100%;
    box-sizing: border-box;
    padding: 30px 16px 30px;
    resize: none;
    background: transparent;
    border: 1px solid #545454;
    border-radius: 5px;
    color: #fff;
    max-height: 205px;
}
.frontpage_top_order-form form textarea::-webkit-scrollbar {
  width: 14px;
  padding-left: 10px;
}
.frontpage_top_order-form form textarea::-webkit-scrollbar-track {
  background: transparent;
  border: 3px solid transparent;
}
.frontpage_top_order-form form textarea::-webkit-scrollbar-thumb {
  background-color: transparent;
  border-radius: 50px;
  box-shadow: inset 0 0 10px 10px #545454;
  border: 5px solid transparent;
}
/*
.frontpage_top_order-form form textarear::-webkit-scrollbar {
  width: var(--scrollbarWidth);
}
.frontpage_top_order-form form textarea::-webkit-scrollbar-track {
  background: var(--scrollbarBgColor);
  border-radius: var(--scrollbarBorderRadius);
}
.frontpage_top_order-form form textarea::-webkit-scrollbar-thumb {
  background-color: #545454;
  border-radius: 5px;
  border: var(--scrollbarBorder);
  background-image: linear-gradient(
    180deg,
    var(--scrollbarThumbColor) 0%,
    var(--scrollbarThumbColorSecond) 90%
  );
}
*/

.frontpage_top_order-form form .form-col {
    position: relative;
    line-height: 0;
}
.frontpage_top_order-form form label.textarea-label {
    display: block;
    font-family: Manrope;
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    letter-spacing: -0.01em;
    position: absolute;
    left: 0;
    top: 0;
    height: 30px;
    border-radius: 5px 0px 0 0;
    background: #252525;
    border: 1px solid #545454;
    border-bottom: transparent;
    width: calc(100% - 13px);
    padding-left: 16px;
    padding-top: 14px;
    box-sizing: border-box;
    z-index: 999;
    border-right: none;
}
.frontpage_top_order-form form .form-col .textarea-length {
    position: absolute;
    bottom: 0px;
    left: 0px;
    font-family: Manrope;
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    letter-spacing: -0.01em;
    text-align: right;
    color: rgb(255 255 255 / 30%);
    width: calc(100% - 13px);
    padding-right: 10px;
    box-sizing: border-box;
    height: 30px;
    bottom: 0;
    border-radius: 0 0 0 5px;
    background: #252525;
    border: 1px solid #545454;
    border-top: transparent;
    border-right: transparent;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.frontpage_top_order-form form .form-col .textarea-length.error {
    color: #FF3B3B;
}
.frontpage_top_order-form form .form-row.grid-row {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.frontpage_top_order-form form input[type=submit] {
    background: #7012CD;
    padding: 9px;
    border: none;
    margin: 0;
    display: block;
    width: 100%;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    border-radius: 8px
}
.frontpage_top_order-form form .wpcf7-list-item {
    margin: 0;
}
.frontpage_top_order-form form .wpcf7-list-item label {
    display: flex;
    align-items: center;
    gap: 5px;
}
.frontpage_top_order-form form .form-row+.form-row {
    margin-top: 16px;
}
.frontpage_top_order-form form .wpcf7-list-item label input[type=checkbox] {
    margin: 0;
    padding: 0;
    width: 16px;
    height: 16px;
}
.frontpage_top_order-form form .wpcf7-list-item label .wpcf7-list-item-label {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-align: center;
    color: rgb(255 255 255 / 30%);
}
.frontpage_top_order-form .wpcf7-response-output {
    display: none;
}
.frontpage_top_order-form form .wpcf7-not-valid-tip {
    font-family: Manrope;
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    letter-spacing: -0.01em;
    color: #FF3B30;
}
.frontpage_top_order-form form input.wpcf7-not-valid {
    border: 1px solid #FF3B30;
}
.modal__wrap--frontpage_about_order,
.modal__wrap--frontpage_logo_order {
    max-width: 768px;
    min-height: 420px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.modal__wrap--frontpage_about_order .modal__close,
.modal__wrap--frontpage_logo_order .modal__close {
    right: 40px;
    top: 20px;
}
.frontpage_about_order-cnt {
    height: 100%;
    display: flex;
    flex-direction: column;
}
.frontpage_about_order-wrap .title {
    font-family: Manrope;
    font-weight: 500;
    font-size: 40px;
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    margin: 0 0 20px;
    color: #fff;
}
.frontpage_about_order-wrap .subtitle {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    text-align: center;
    margin: 0 0 100px;
}
.modal__wrap--frontpage_logo_order .frontpage_about_order-wrap .subtitle {
    margin-bottom: 60px;
}
.frontpage_about_order-wrap a {
    background: #7012CD;
    padding: 9px;
    border: none;
    margin: 0;
    display: flex;
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    width: 100%;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    border-radius: 8px;
    text-decoration: none;
    text-align: center;
    min-height: 40px;
}

/* Single page */
.page-single-cnt {
    padding-top: 130px;
}
.page-single-content {
    padding-top: 40px;
}
.page-single-content .container {
    max-width: 1220px;
}
.back-arrow-cnt .back-arrow a {
    display: flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.page-single-content h1 {
    font-family: Bebas Neue;
    font-weight: 700;
    font-size: 64px;
    line-height: 120%;
    letter-spacing: -0.02em;
    margin: 0 0 40px;
    color: #fff;
}
.page-single-content h2 {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0 0 10px;
    color: #fff;
}
.page-single-content p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;  
    color: #fff;
    margin: 0;
}
.page-single-content p+h2 {
    margin-top: 20px;
}
.page-single-content ul+h2 {
    margin-top: 20px;
}
.page-single-content ul {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 30px;
}

/* 404 page */ 
.content-404 {
    padding-top: 140px;
}
.content-404-wrap {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 16% 42% 16%;
    grid-column-gap: 0;
    grid-row-gap: 0;
    justify-content: space-between;
    align-items: center;
}
.content-404-wrap .content-404-col svg {
    width: 100%;
    height: auto;
}
.content-404-wrap .main-content .title {
    font-family: Bebas Neue;
    font-weight: 700;
    /*font-size: 732.43px;*/
    font-size: clamp(150px, 38vw, 732.43px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-align: center;
    text-transform: lowercase;
    text-align: center;
    margin-bottom: 50px;
}
.content-404-wrap .main-content .subtitle {
    font-family: Bebas Neue;
    font-weight: 700;
    /*font-size: 128px;*/
    font-size: clamp(64px, 9.2vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-align: center;
    text-transform: lowercase;    
    margin-bottom: 40px;
}
.content-404-wrap .main-content .soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px;
}
.content-404-wrap .main-content a.link-home {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    text-decoration: none;
}
body.error404 main {
    background: url(../images/404-bg.webp) center center no-repeat;
    background-size: 2000px;
    background-position-y: center;
}

/* Breadcrumbs */
.breadcrumbs-cnt {
    padding-top: 130px;
}
.breadcrumbs-cnt a {
    font-family: Manrope;
    font-weight: 400;
    font-size: 15px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: rgb(255 255 255 / 30%);;
    text-decoration: none;
}
.breadcrumbs-cnt span {
    line-height: 0;
}
.breadcrumbs-cnt .kb_sep {
    display: block;
    line-height: 0;
}
.breadcrumbs-cnt .kb_sep .arrow {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../images/breadcrumbs-arrow.svg) center center no-repeat;
    background-size: contain;
}
.breadcrumbs-cnt .kb_title {
    font-family: Manrope;
    font-weight: 400;
    font-size: 15px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #FFFFFF;
}
.kama_breadcrumbs {
    display: flex;
    align-items: center;
    gap: 5px;
}

/* Project - Top */
.project-top .title {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    text-align: center;
    margin: 16px 0 20px;
    color: #6C766B;
}
.project-top h1 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 286px;
    */
    font-size: clamp(95px, 14.9vw, 286px);
    line-height: 75%;
    letter-spacing: -0.01em;
    text-align: center;
    margin: 0 0 20px;
    /*
    white-space: nowrap;
    */
}
.project-top.landing h1 {
    margin-top: 90px;
    margin-bottom: 40px;
    letter-spacing: -0.01em;
}
.project-top p {
    font-family: Manrope;
    font-weight: 500;
    /*
    font-size: 64px;
    */
    font-size: clamp(24px, 3.35vw, 64px);
    line-height: 110%;
    letter-spacing: -0.04em;
    text-align: center;
    max-width: 1100px;
    margin: 0 auto 40px;
} 
/*
.project-top button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
}
*/
.project-top .buttons-cnt {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.project-top button {
    border: 1px solid #7012CD;
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 360px;
    /* margin: 0 auto; */
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.project-top button:hover {
    background: transparent;
    border: 1px solid #7012CD;
    box-shadow: none;
}
.project-top button.purple {
    background: transparent;
    border: 1px solid #7012CD;
    border-radius: 8px;
    box-shadow: none;
}

@media (max-width: 860px) {
    .project-top button {
        max-width: 100%;
    }
}











/* Project - About */
.project-about {
    padding-top: 150px;
}
.project-about .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-end;
    padding-bottom: 40px;
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.project-about .title .small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.project-about .title .small p {
    margin: 0;
}
.project-about .title .small p+p {
    margin-top: 16px;
}
.project-about .title h2 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 128px;
    */
    font-size: clamp(64px, 6.0vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-transform: lowercase;
    color: #fff;
    margin: 0;
}
.project-about .text .text-item {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-start;
    padding-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.project-about .text .text-item h3 {
    font-family: Manrope;
    font-weight: 600;
    font-size: 24px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0;
}
.project-about .text .text-item .content p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    margin: 0;
}
.project-about .text .text-item .content p+p {
    margin-top: 16px;
}
.project-about .text .text-item .content ul {
    margin: 0;
    padding-left: 20px;
}
.project-about .text .text-item .content ul li {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
}
.project-about .images {
    margin-top: 40px;
}
.project-about .images .row+.row {
    margin-top: 20px;
}
.project-about .images img {
    border-radius: 8px;
}
.project-about .images .row.two-col {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}





/* Project - Before */
.project-before {
    padding-top: 100px;
}
.project-before .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-end;
    padding-bottom: 40px;
}
.project-before .title .small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.project-before .title .small p {
    margin: 0;
}
.project-before .title h2 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 128px;
    */
    font-size: clamp(64px, 6.0vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-transform: lowercase;
    color: #fff;
    margin: 0;
}
.project-before-wrap {
    margin-top: 40px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(6, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
/*
.project-before-wrap img {
    border-radius: 12px;
}
*/
.project-before-wrap.count_cols_1 {
    grid-template-columns: repeat(1, 1fr);
}
.project-before-wrap.count_cols_2 {
    grid-template-columns: repeat(2, 1fr);
}
.project-before-wrap.count_cols_3 {
    grid-template-columns: repeat(3, 1fr);
}
.project-before-wrap.count_cols_4 {
    grid-template-columns: repeat(4, 1fr);
}
.project-before-wrap.count_cols_5 {
    grid-template-columns: repeat(5, 1fr);
}
.project-before-wrap.count_cols_6 {
    grid-template-columns: repeat(6, 1fr);
}
.project-before-wrap.count_cols_7 {
    grid-template-columns: repeat(7, 1fr);
}
.project-before-wrap.count_cols_8 {
    grid-template-columns: repeat(8, 1fr);
}
.project-before-wrap.count_cols_9 {
    grid-template-columns: repeat(9, 1fr);
}
.project-before-wrap.count_cols_10 {
    grid-template-columns: repeat(10, 1fr);
}
.project-before-wrap.content_padding_20 .image-item {
    padding: 20px;
}
.project-before-wrap.content_padding_40 .image-item {
    padding: 40px;
}
.project-before-wrap.content_padding_60 .image-item {
    padding: 60px;
}
.project-before-wrap .image-item {
    background: #252525;
    border: 1px solid #545454;
    border-radius: 8px;
}
.project-before-wrap .image-item img {
    height: auto;
}

/* Project - Lang */
.project-lang {
    padding-top: 150px;
}
.project-lang .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-end;
    padding-bottom: 40px;
}
.project-lang .title .small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.project-lang .title h2 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 128px;
    */
    font-size: clamp(64px, 6.0vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-transform: lowercase;
    color: #fff;
    margin: 0;
}
.project-lang-wrap {
    background: #252525;
    padding: 60px;
    border: 1px solid #545454;
    border-radius: 8px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}

/* Project - Adaptive */
.project-adaptive {
    padding-top: 150px;
}
.project-adaptive .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: flex-end;
    padding-bottom: 40px;
}
.project-adaptive .title .small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.project-adaptive .title h2 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 128px;
    */
    font-size: clamp(64px, 6.0vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-transform: lowercase;
    color: #fff;
    margin: 0;
}
.project-adaptive .mobile-slider {
    display: none;
    margin-bottom: 85px;
    position: relative;
}
.project-adaptive .mobile-slider .swiper-pagination {
    bottom: -35px;
}
.project-adaptive .mobile-slider .swiper-pagination .swiper-pagination-bullet {
    background: #131313!important;
    width: 23px;
    height: 5px;
    border-radius: 6px;
}
.project-adaptive .mobile-slider .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #FFFFFF!important;
    width: 5px;
    border-radius: 50%;
    height: 5px;
}
    


.project-adaptive-wrap {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.project-adaptive-wrap.projct-single {
    border: 1px solid #545454;
    border-radius: 8px;
    background: #252525;
    padding-top: 70px;
    padding-bottom: 70px;
    grid-template-columns: calc(60% - 10px) calc(40% - 10px);
}
.project-adaptive-wrap.projct-single .project-adaptive-col.left img {
    padding-left: 16%;
    max-width: calc(100% - 16%);
}
.project-adaptive-wrap.projct-single .project-adaptive-col.right picture {
    text-align: center;
}
.project-adaptive-wrap.projct-single .project-adaptive-col.right img {
    max-width: 40%;
}
.project-adaptive-wrap .project-adaptive-col.image-content {
    background: #252525;
    border: 1px solid #545454;
    border-radius: 8px;
}
.project-adaptive-wrap .project-adaptive-col.content_padding_20 {
    padding: 20px;
}
.project-adaptive-wrap .project-adaptive-col.content_padding_40 {
    padding: 40px;
}
.project-adaptive-wrap .project-adaptive-col.content_padding_60 {
    padding: 60px;
}
.project-adaptive-col img {
    border-radius: 12px;
}
.project-adaptive-content {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.project-adaptive-wrap.projct-single .project-adaptive-col.right .project-adaptive-content {
    justify-content: space-around;
}
.project-adaptive-content .text p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    max-width: 500px;
    margin: 0;
}
.project-adaptive-content .text p+p {
    margin-top: 16px;
}
.project-adaptive-content .image img {
    border-radius: 0px;
}
.project-adaptive-content button {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
}
.project-adaptive-text-wrap {
    margin-top: 100px;
    display: flex;
    gap: 10px;
}
.project-adaptive-text-wrap.one-image-center picture {
    width: 100%;
    text-align: center;
}
.project-adaptive-text-wrap.one-image-center img {
    max-width: 640px;
}
.project-adaptive-images-wrap {
    margin-top: 130px;
    display: flex;
    gap: 10px;
}
.project-adaptive .title .title-colors-cnt {
    width: 100%;
}
.project-adaptive .title .title-font-list {
    display: flex;
    gap: 10%;
    flex-wrap: wrap;
    width: 100%;
}
.flex-gap-10 {
    gap: 10px!important;
}
.justify-content-between {
    justify-content: space-between;
}
.project-adaptive .title .title-cnt.color-DA2424 p.big, 
.project-adaptive .title .title-cnt.color-DA2424 ul li {
    color: #DA2424;
}
.project-adaptive .title .title-cnt.color-D8D3C5 p.big, 
.project-adaptive .title .title-cnt.color-D8D3C5 ul li {
    color: #D8D3C5;
}
.project-adaptive .title .title-cnt.color-F0E8E2 p.big, 
.project-adaptive .title .title-cnt.color-F0E8E2 ul li {
    color: #F0E8E2;
}
.project-adaptive .title .title-cnt.color-FA5F1B p.big, 
.project-adaptive .title .title-cnt.color-FA5F1B ul li {
    color: #FA5F1B;
}
.project-adaptive .title .title-cnt.color-BCFA14 p.big, 
.project-adaptive .title .title-cnt.color-BCFA14 ul li {
    color: #BCFA14;
}
.project-adaptive .title .title-cnt.font-Montserrat p.big, 
.project-adaptive .title .title-cnt.font-Montserrat ul li {
    font-family: Montserrat;
}
.project-adaptive .title .title-cnt.font-druk-Wide-trial p.big {
    font-size: 36px;
    margin-top: 28px;
    font-family: Druk Wide Trial;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
}
.project-adaptive .title .title-cnt.font-druk-Wide-trial ul li {
    font-family: Druk Wide Trial;
}
.project-adaptive .title .title-cnt p.big {
    font-family: SF UI Display;
    font-weight: 700;
    font-size: 64px;
    line-height: 100%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin: 0 0 20px;
}
.project-adaptive .title .title-cnt ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    gap: 36px;
    flex-wrap: wrap;
}
.project-adaptive .title .title-cnt ul li {
    font-family: SF UI Display;
    font-weight: 400;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: -0.05em;
    color: #FFFFFF;
}
.project-adaptive .colors {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.project-adaptive .colors .color-item {
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
}
.project-adaptive .colors .color-item.color-414141 {
    background: #1D1D1D;
    border: 1px solid #414141;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-CA9E71 {
    background: #CA9E71;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-FFFFFF {
    background: #FFFFFF;
    color: #000000;
}
.project-adaptive .colors .color-item.color-000000 {
    background: #000000;
    border: 1px solid #414141;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-E52121 {
    background: #E52121;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-D8D3C5 {
    background: #D8D3C5;
    color: #000000;
}
.project-adaptive .colors .color-item.color-333333 {
    border: 1px solid #414141;
    background: #333333;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-FA5F1B {
    background: #FA5F1B;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-F0E8E2 {
    background: #F0E8E2;
    color: #000000;
}
.project-adaptive .colors .color-item.color-121212 {
    border: 1px solid #414141;
    background: #121212;
    color: #FFFFFF;
}
.project-adaptive .colors .color-item.color-BCFA14 {
    background: #BCFA14;
    color: #000000;
}
.project-fonts-wrap.projct-single {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    margin-top: 40px;
}
.project-fonts-wrap.projct-single .project-fonts-col {
    border: 1px solid #545454;
    background: #252525;    
    padding-top: 50px;
    padding-bottom: 50px;
    border-radius: 8px;
}
.project-fonts-wrap.projct-single picture {
    text-align: center;
}
.project-fonts-wrap.projct-single img {
    max-width: 276px;
}








/* Project - Others */
.project-others {
    padding-top: 150px;
}
.project-others .title {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 0px) calc(50% - 0px);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    align-items: flex-start;
    padding-bottom: 40px;
}
.project-others .title .small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
}
.project-others .title h2 {
    font-family: Bebas Neue;
    font-weight: 700;
    /*
    font-size: 128px;
    */
    font-size: clamp(64px, 6.0vw, 128px);
    line-height: 75%;
    letter-spacing: -0.02em;
    text-transform: lowercase;
    color: #fff;
    margin: 0;
}
.project-others-wrap {
    background: #252525;
    border: 1px solid #545454;
    border-radius: 8px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
}
.project-others-wrap img {
    border-radius: 0px;
    height: auto;
}
.project-others-wrap.count_cols_1 {
    grid-template-columns: repeat(1, 1fr);
}
.project-others-wrap.count_cols_2 {
    grid-template-columns: repeat(2, 1fr);
}
.project-others-wrap.count_cols_3 {
    grid-template-columns: repeat(3, 1fr);
}
.project-others-wrap.count_cols_4 {
    grid-template-columns: repeat(4, 1fr);
}
.project-others-wrap.count_cols_5 {
    grid-template-columns: repeat(5, 1fr);
}
.project-others-wrap.count_cols_6 {
    grid-template-columns: repeat(6, 1fr);
}
.project-others-wrap.count_cols_7 {
    grid-template-columns: repeat(7, 1fr);
}
.project-others-wrap.count_cols_8 {
    grid-template-columns: repeat(8, 1fr);
}
.project-others-wrap.count_cols_9 {
    grid-template-columns: repeat(9, 1fr);
}
.project-others-wrap.count_cols_10 {
    grid-template-columns: repeat(10, 1fr);
}
.project-others-wrap.content_padding_0 {
    padding: 0px;
}
.project-others-wrap.content_padding_20 {
    padding: 20px;
}
.project-others-wrap.content_padding_40 {
    padding: 40px;
}
.project-others-wrap.content_padding_60 {
    padding: 60px;
}
.project-others-wrap.content_padding_60_0 {
    padding: 60px 0px;
}
.project-others-wrap.content_padding_60_60_0_60 {
    padding: 60px 60px 0px 60px;
}

/* Project - Events */
body.page-template-page-project .dm-frontpage-events {
    margin-top: 150px;
}

/* Project - Offers */
body.page-template-page-project .dm-frontpage-offers {
    padding-top: 150px;
}

/* Modal - mobile popup */
.mobile-menu {
    position: fixed;
    right: -100%;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 99999999;
    background: #252525;
}
.mobile-menu.active {
    right: 0%;
}
.mobile-menu-cnt {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow-y: auto;
}
.mobile-menu-cnt .top {
    padding: 20px 16px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: 40px 24px;
    grid-column-gap: 16px;
    grid-row-gap: 16px;
    justify-content: space-between;
}
.mobile-menu-cnt .top button {
    margin: 0;
    padding: 0;
    background: transparent;
    line-height: 0;
    border: none;
}
.mobile-menu-cnt .middle {
    margin-bottom: 36px;
}
.mobile-menu-cnt .middle .menu {
    margin-top: 20px;
    margin-left: 16px;
    margin-right: 16px;
}
.mobile-menu-cnt .middle .menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgb(255 255 255 / 20%);
    border-bottom: 1px solid rgb(255 255 255 / 20%);
}
.mobile-menu-cnt .middle .menu ul li {
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center;
}
.mobile-menu-cnt .middle .menu ul li a {
    text-decoration: none;
    color: #fff;
    font-family: Bebas Neue;
    font-weight: 700;
    font-size: 76px;
    line-height: 75%;
    letter-spacing: -0.01em;
}
.mobile-menu-cnt .middle .menu ul li+li {
    border-top: 1px solid rgb(255 255 255 / 20%);
}
.mobile-menu-cnt .bottom {
    margin-top: auto;
    margin-bottom: 20px;
}
.mobile-menu-cnt .bottom-wrap {
    margin-left: 16px;
    margin-right: 16px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: auto auto;
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    align-items: flex-end;
    justify-content: space-between;
}
.mobile-menu-cnt .bottom-wrap ul.soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    margin-bottom: 20px;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt {
    position: relative;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu {
    position: absolute;
    bottom: 34px;
    width: 173px;
    height: 138px;
    right: 0;
    background: #FFFFFF;
    box-shadow: 0px 8px 32px 0px #00000026;
    padding: 38px;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu li a {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #000;
    text-decoration: none;
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    display: none;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu.active {
    display: flex;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu li a:before {
    content: "";
    width: 24px;
    height: 24px;
    display: block;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu li a:before {
    background: url(../images/modal-lang-menu-current-lang.svg) center center no-repeat;
    background-size: contain;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu li.current-lang {
    display: block;
}
.mobile-menu-cnt .bottom-wrap .bottom-wrap-col .lang-menu-cnt .sub-menu li.current-lang a:before {
    background: url(../images/modal-lang-menu-lang.svg) center center no-repeat;
    background-size: contain;
}


.project-slider-mobile {
    display: none!important;
    position: relative;
    padding: 20px 20px 60px!important;
    margin-bottom: 0px;
}
.project-slider-mobile:before {
    content: "";
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: calc(100% - 40px);
    background: #252525;
    border: 1px solid #545454;
    border-radius: 8px;
}
.project-slider-mobile .swiper-wrapper {
    
}
.project-slider-mobile .swiper-wrapper .image-item-mobile img {
    height: auto;
}
.project-slider-mobile .swiper-wrapper .swiper-pagination {
    bottom: 0px!important;
}
.project-slider-mobile .swiper-wrapper .swiper-pagination .swiper-pagination-bullet {
    border: 1px solid #131313 !important;
}
.project-slider-mobile .swiper-wrapper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid #fff!important;
    background: #fff;
}

.project-before .turn-phone {
    display: none;
    height: 40px;
    width: 100%;
    border: 1px solid #7012CD;
    border-radius: 8px;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.project-before .turn-phone .color {
    display: block;
    width: 10px;
    height: 10px;
    background: #7012CD;
    border-radius: 50%;
    animation: turn_phone_pulse 2s infinite;
}
.project-before .turn-phone .text {
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    color: #FFFFFF;
}

@keyframes turn_phone_pulse {
    0% {
        transform: scale3d(1, 1, 1);
    }
    50% {
        transform: scale3d(1.2, 1.2, 1.2);
    }
    100% {
        transform: scale3d(1, 1, 1);
    }
}

form input[type=file] {
  opacity: 0;
  /*visibility: hidden;*/
  position: absolute;  
}
form .brif-cnt {
    display: flex;
    gap: 5px;
    align-items: center;
}
form .brif-cnt .field__file-fake p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    color: #11FF00;
    margin: 0;
}

.progressbar {
    margin-bottom: 20px;
}
.progressbar .chart {
    position: relative;
    display: block;
    line-height: 0;
}
.progressbar .chart .percent-cnt {
    position: absolute;
    left: 50px;
    bottom: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 12px;
    line-height: 130%;
    letter-spacing: -0.01em;
    color: #11FF00;
}
.progressbar .chart .percent-title {
    position: absolute;
    left: 50px;
    top: 0;
    font-family: Manrope;
    font-weight: 400;
    font-size: 12px;
    line-height: 130%;
    letter-spacing: -0.01em;
    color: #FFFFFF;
}
.question-item-bottom .buttons {
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 5px) calc(50% - 5px);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}
.question-item-bottom .buttons button {
    border: 1px solid #7012CD;
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    max-width: 360px;
    /* margin: 0 auto; */
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.question-item-bottom .buttons button:hover {
    background: transparent;
    border: 1px solid #7012CD;
    box-shadow: none;
}
.question-item-bottom .buttons button.prev {
    background: transparent;
    border: 1px solid #7012CD;
    border-radius: 8px;
    box-shadow: none;
}
.question-item-bottom .buttons button.prev:hover {
    background: #7012CD;
    border: 1px solid #7012CD;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}

/* Page Develop */
.page-develop .main-content {
    padding-top: 78px;
}
.page-develop .main-content h1 {
    font-family: Bebas Neue;
    font-weight: 700;
    font-size: clamp(48px, 6.7vw, 128px);
    line-height: 120%;
    letter-spacing: -0.02em;
    text-align: center;
    text-transform: lowercase;
    color: #FFFFFF;
    margin : 0 0 41px;
}
.page-develop .main-content h1 br {
    display: none;
}
.page-develop .main-content .image {
    max-width: 860px;
    margin: 0 auto;
}
.page-develop .main-content .soc {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 10px;
    justify-content: center;
    align-items: center;
    margin-top: 58px;
    margin-bottom: 40px;
}
.page-develop .main-content a.link-home {
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    text-decoration: none;
}

body.page-template-page-develop main {
    background: url(../images/404-bg.webp) center center no-repeat;
    background-size: 2000px;
    background-position-y: center;
}

/* Стрелочка вверх **/
.up-arrow {
    position: fixed;
    bottom: 90px;
    right: 40px;
    z-index: 99999;
    opacity: 0;
}
.up-arrow.visible {
    opacity: 1;
}
.up-arrow-cnt {
    display: flex;
    gap: 5px;
    align-items: center;
}
.up-arrow span {
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    color: rgb(255 255 255 / 30%);    
}
.up-arrow svg {
    width: 50px;
    height: 50px;
}

/* Frontpage Promo */
.frontpage-promo {
    margin: 200px 0;
}
.frontpage-promo-cnt {
    background: #252525;
    padding: 50px 9% 90px;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(72% - 16px) calc(28% - 16px);
    grid-column-gap: 32px;
    grid-row-gap: 32px;
    align-items: flex-end;
    border-radius: 8px;
}
.frontpage-promo-cnt .frontpage-promo-col p.small {
    font-family: Manrope;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: 0em;
    color: #6C766B;
    margin: 0 0 40px;
}
.frontpage-promo-cnt .frontpage-promo-col h2 {
    font-family: Manrope;
    font-weight: 500;
    font-size: 64px;
    line-height: 110%;
    letter-spacing: -0.04em;
    margin: 0 0 15px;
    color: #fff;
}
.frontpage-promo-cnt .frontpage-promo-col h2 span {
    color: #96C6F7;    
}
.frontpage-promo-cnt .frontpage-promo-col p {
    font-family: Manrope;
    font-weight: 400;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: -0.04em;
    margin: 0 0 25px;
}
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt {
    max-width: 70%;
    display: grid;
    grid-template-rows: auto;
    grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    grid-column-gap: 20px;
    grid-row-gap: 20px;
    align-items: center;
}
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple, 
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple-new {
    border: 1px solid #7012CD;
    background: #7012CD;
    border-radius: 8px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 360px;
    /* margin: 0 auto; */
    color: #fff;
    font-family: Manrope;
    font-weight: 400;
    font-size: 17px;
    line-height: 120%;
    letter-spacing: -0.04em;
    text-align: justify;
    vertical-align: middle;
    padding: 0;
    border: none;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple {
    background: transparent;
    border: 1px solid #7012CD;
    border-radius: 8px;
    box-shadow: none;
    text-decoration: none;
}
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple-new:hover {
    background: transparent;
    border: 1px solid #7012CD;
    box-shadow: none;
}
.frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple:hover {
    background: #7012CD;
    border: 1px solid #7012CD;
    box-shadow: 0px 0px 20.6px 0px #7012CD;
}
.frontpage-promo-cnt .frontpage-promo-col:last-child {
    margin-left: -80%;
}
.frontpage-promo-cnt .frontpage-promo-col .mobile {
    display: none;
}


































@media (min-width: 1920px) {
    .dm-frontpage-portfolio .portfolio-grid .portfolio-item img {
        object-fit: cover;
        border-radius: 8px;
    }
}

@media (max-width: 1600px) {
    .dm-frontpage-top {
        min-height: auto;
    }
    .dm-frontpage-top .content h1 {
        margin: 40px auto 15px;
        font-size: clamp(24px, 3.0vw, 64px);
    }
    .dm-frontpage-top .content {
        padding-top: 68px;
    }
    .dm-frontpage-about {
        padding-top: 100px;
    }
    .dm-frontpage-advantags {
        margin-top: 150px;
    }
    .dm-frontpage-portfolio {
        padding-top: 150px;
    }
    .dm-frontpage-portfolio .portfolio-grid .portfolio-item img {
        object-fit: cover;
        border-radius: 8px;
    }
    .portfolio-item-wrap-el .year {
        margin-bottom: 15px;
    }
    .dm-frontpage-links {
        margin-top: 150px;
    }
    .dm-frontpage-work {
        padding-top: 150px;
    }
    .dm-frontpage-logofolio {
        margin-top: 150px;
    }
    .logofolio-content {
        min-height: 660px;
        box-sizing: border-box;
    }
    .dm-frontpage-offers {
        padding-top: 150px;
    }
    .dm-frontpage-events {
        margin-top: 150px;
    }
    .dm-frontpage-reviews {
        padding-top: 150px;
    }
    .dm-footer {
        margin-top: 100px;
    }
    .offers-grid-col-new .item-title {
        font-size: 40px;
    }
    .frontpage-promo-cnt .frontpage-promo-col h2 {
        font-size: 48px;
    }
    
    
    
    
    
    
    
}
@media (max-width: 1400px) {
    .offers-grid-col-new .item-title {
        font-size: 36px;
    }
    
    
    .dm-frontpage-top .content {
        padding-bottom: 15px;
    }
    .dm-frontpage-top .content h1 {
        margin: 20px auto 15px;
        font-size: clamp(24px, 2.9vw, 64px);
    }
    .dm-frontpage-advantags {
        margin-top: 140px;
    }
    .dm-frontpage-portfolio {
        padding-top: 140px;
    }
    .dm-frontpage-links {
        margin-top: 140px;
    }
    .dm-frontpage-work {
        padding-top: 140px;
    }
    .dm-frontpage-logofolio {
        margin-top: 140px;
    }
    .dm-frontpage-offers {
        padding-top: 140px;
    }
    .dm-frontpage-events {
        margin-top: 140px;
    }
    .dm-frontpage-reviews {
        padding-top: 140px;
    }
    .dm-frontpage-about .content .main-title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-advantags .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-portfolio .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-work .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-logofolio .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-offers .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-events .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .dm-frontpage-reviews .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .logofolio-content {
        grid-template-columns: 120px 120px auto 120px 120px;
        grid-column-gap: 20px;
        grid-row-gap: 20px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .events-grid .events-content .events-content-item {
        grid-template-columns: 170px auto;
    }
    .dm-frontpage-events .title {
        grid-template-columns: calc(33% + 190px) auto;
    }    
    .project-before .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    .project-about .title h2 {
        font-size: clamp(64px, 8.0vw, 128px);
    }
    
    
}

@media (max-width: 1300px) {
    .frontpage-promo-cnt {
        padding: 50px 48px 90px;
    }
    .frontpage-promo-cnt .frontpage-promo-col h2 {
        font-size: 34px;
    }
    .frontpage-promo-cnt .frontpage-promo-col .buttons-cnt {
        grid-template-columns: 100%;
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple, 
    .frontpage-promo-cnt .frontpage-promo-col .buttons-cnt .purple-new {
        max-width: 100%;
    }
}

@media (max-width: 1200px) {
    .offers-grid-col-new .item-title {
        font-size: 28px;
    }
    .offers-grid-cols-cnt.right-cnt {
        grid-template-columns: calc(80% - 10px) calc(20% - 10px);
    }
    
    .burger {
        display: block;
    }    
    .dm-head-wrap {
        grid-template-columns: 50px 340px;
        justify-content: space-between;
    }
    .dm-head-menu.left-menu {
        display: none;
    }
    .dm-head-wrap .dm-head-item .dm-head-menu.right-menu {
        display: none;
    }
    
    
    
    .portfolio-item-wrap {
        grid-template-columns: calc(60% - 10px) calc(40% - 10px);
    }
    .portfolio-item-wrap.grid-33-33 {
        grid-template-columns: calc(50% - 10px) calc(50% - 10px);
    }
    .portfolio-item-wrap.grid-33-67 {
        grid-template-columns: calc(40% - 10px) calc(60% - 10px);
    }
    
    
    
    .advantags-grid {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: repeat(4, calc(25.0% - 15.0px));
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .dm-frontpage-advantags .picture-abs {
        max-width: 100%;
        position: absolute;
        bottom: -50px;
        left: calc((100% - 767px) / 2);
        z-index: -1;
    }
    .project-top h1 {
        font-size: clamp(95px, 14.0vw, 286px);
    }
    
    
    
    
    
}
@media (max-width: 1100px) {
    .logofolio-content {
        grid-template-columns: 70px 70px auto 70px 70px;
        grid-column-gap: 0px;
        grid-row-gap: 0px;
        /* padding-right: 20px; */
    }
    
    
    
    
    
    
    
    
}
@media (max-width: 900px) {
    .offers-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    
}

@media (max-width: 860px) {
    .dm-frontpage-top {
        min-height: auto;
        height: 100vh;
        background-image: -webkit-image-set(url(../images/frontpage/top-bg-mobile.webp) type('image/webp'), url(../images/frontpage/top-bg-mobile.png) type('image/png'));
        background-image: image-set(url(../images/frontpage/top-bg-mobile.webp) type('image/webp'), url(../images/frontpage/top-bg-mobile.png) type('image/png'));
        background-position: top center;
        background-repeat: no-repeat;
        background-size: cover;
        padding-top: 80px;
        position: relative;
    }
    .dm-frontpage-top .container {
        height: 100%;
    }
    .dm-frontpage-top .container .content {
        height: 100%;
        box-sizing: border-box;
        padding-top: 0;
        padding-bottom: 20px;
    }
    .dm-frontpage-top .container .content .mobile-flex {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }
    .dm-frontpage-top .soc {
        display: none;
    }
    .dm-frontpage-top .content button {
        max-width: 100%;
    }
    .dm-head-wrap .dm-head-item .dm-head-lang-menu, 
    .dm-head-wrap .dm-head-item .dm-head-phone {
        display: none;
    }
    .dm-frontpage-about {
        padding-top: 72px;
    }
    .dm-frontpage-about .content .main-title {
        display: flex;
        flex-direction: column-reverse;
        gap: 1px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 30px;
    }
    .dm-frontpage-about .text-content .title {
        font-size: 30px;
        padding-left: 35%;
    }
    .dm-frontpage-about .text-content .subtitle {
        font-size: 30px;
    }
    .dm-frontpage-about .text-content .title br, 
    .dm-frontpage-about .text-content .subtitle br {
        display: none;
    }
    .dm-frontpage-about .text-content .text {
        padding-left: 35%;
    }
    .dm-frontpage-advantags {
        margin-top: 80px;
    }
    .dm-frontpage-advantags .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 30px;
    }
    .advantags-grid {
        grid-template-columns: repeat(3, calc(33.3% - 6.66px));
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .advantags-grid .advantags-item:nth-child(1) {
        order: 0;
    }
    .advantags-grid .advantags-item:nth-child(2) {
        order: 5;
    }
    .advantags-grid .advantags-item:nth-child(3) {
        order: 1;
    }
    .advantags-grid .advantags-item:nth-child(4) {
        order: 4;
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .advantags-grid .advantags-item:nth-child(5) {
        order: 8;
    }
    .advantags-grid .advantags-item:nth-child(6) {
        display: none;
    }
    .advantags-grid .advantags-item:nth-child(7) {
        order: 6;
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .advantags-grid .advantags-item:nth-child(8) {
        order: 3;
    }
    .advantags-grid .advantags-item:nth-child(9) {
        display: none;
    }
    .advantags-grid .advantags-item:nth-child(10) {
        order: 7;
    }
    .advantags-grid .advantags-item:nth-child(11) {
        display: none;
    }
    .advantags-grid .advantags-item:nth-child(12) {
        order: 8;
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .dm-frontpage-advantags .picture-abs {
        bottom: 20%;
        width: 70%;
        left: auto;
        right: 0;
    }
    .dm-frontpage-portfolio {
        padding-top: 80px;
    }
    .dm-frontpage-portfolio .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 30px;
    }
    .dm-frontpage-portfolio .portfolio-grid {
        grid-template-columns: 100%;
        grid-column-gap: 30px;
        grid-row-gap: 30px;
    }
    .dm-frontpage-portfolio .portfolio-grid .portfolio-item img {
        height: auto;
    }
    .portfolio-item-wrap {
        grid-template-columns: calc(55% - 10px) calc(45% - 10px);
    }
    .portfolio-item-wrap.grid-33-33 {
        grid-template-columns: calc(40% - 10px) calc(60% - 10px);
    }
    .portfolio-item-wrap.grid-33-33 .bottom {
        align-self: flex-start;
    } 
    .portfolio-item-wrap {
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .portfolio-item-wrap.grid-33-67 {
        grid-template-columns: calc(65% - 10px) calc(35% - 10px);
    }
    .portfolio-item-wrap-el.max-width-67 {
        max-width: 100%;
    }
    .dm-frontpage-links {
        margin-top: 80px;
    }
    .abs.top {
        top: 20px;
    }
    .abs.bottom {
        bottom: 20px;
    }
    .abs.left {
        left: 20px;
    }
    .abs.right {
        right: 20px;
    }
    .dm-frontpage-work {
        padding-top: 80px;
    }
    .dm-frontpage-work .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 25px;
    }
    .work-items .work-elem {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
    }
    .dm-frontpage-work button {
        max-width: 100%;
        margin-top: 20px;
    }
    .dm-frontpage-logofolio {
        margin-top: 80px;
    }
    .dm-frontpage-logofolio .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 25px;
    }
    .logofolio-content {
        padding: 20px 20px 80px 20px;
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    .logofolio-content .logofolio-content-col:nth-child(1) {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: auto auto auto;
        grid-column-gap: 70px;
        grid-row-gap: 70px;
        align-items: center;
    }
    .logofolio-content .logofolio-content-col:nth-child(2) {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: auto auto;
        grid-column-gap: 70px;
        grid-row-gap: 70px;
        align-items: center;
        justify-content: space-evenly;
    }
    .logofolio-content .logofolio-content-col:nth-child(4) {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: auto auto;
        grid-column-gap: 70px;
        grid-row-gap: 70px;
        align-items: center;
        justify-content: space-evenly;
    }
    .logofolio-content .logofolio-content-col:nth-child(5) {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: auto auto auto;
        grid-column-gap: 70px;
        grid-row-gap: 70px;
        align-items: center;
    }
    .logofolio-content button {
        bottom: 0;
        max-width: calc(100% - 40px);
    }
    dm-frontpage-offers {
        padding-top: 80px;
    }
    .dm-frontpage-offers .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        padding-left: 35%;
        margin-bottom: 30px;
    }
    .offers-grid {
        grid-template-columns: 100%;
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .offers-grid .offers-item {
        min-height: 405px;
        box-sizing: border-box;
    }
    .offers-grid .offers-item:last-child {
        display: none;
    }
    .dm-frontpage-events {
        margin-top: 80px;
    }
    .dm-frontpage-events .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        margin-bottom: 0;
        padding: 30px 20px 25px 35%;
    }
    .events-grid {
        display: flex;
        flex-direction: column-reverse;
    }
    .events-grid .events-content {
        margin-right: 20px;
        padding: 0;
        margin-left: 20px;
    }
    .events-grid button {
        margin-left: 20px;
        margin-top: 20px;
        margin-bottom: 36px;
    }
    .dm-frontpage-reviews .title {
        display: flex;
        flex-direction: column-reverse;
        gap: 10px;
        align-items: flex-start;
        margin-bottom: 0;
        padding-left: 35%;
        padding-bottom: 25px;
    }
    .dm-frontpage-reviews .title .title-col {
        width: 100%;
    }
    .dm-footer {
        margin-top: 80px;
    }
    .dm-footer-wrap {
        display: flex;
        /*
        flex-direction: column-reverse;
        */
        flex-wrap: wrap;
        padding-bottom: 10px;
    }
    .dm-footer-wrap .dm-footer-col:nth-child(1) {
        width: 200px;
        order: 2;
        margin-top: 30px;
    }
    .dm-footer-wrap .dm-footer-col:nth-child(2) {
        width: 200px;
        order: 3;
        margin-top: 30px;
        margin-left: auto;
    }
    .dm-footer-wrap .dm-footer-col:nth-child(3) {
        width: 100%;
        order: 1;
    }
    .dm-footer-menu ul li a {
        font-size: 16px;
    }
    .dm-footer-mail a {
        font-size: 16px;
    }
    .dm-footer-wrap .contants {
        margin-top: 50px;
    }
    .dm-frontpage-offers {
        padding-top: 80px;
    }
    .dm-frontpage-reviews {
        padding-top: 80px;
    }
    .breadcrumbs-cnt {
        padding-top: 100px;
    }
    .project-top .title {
        text-align: left;
    }
    .project-top h1 {
        font-size: clamp(95px, 22vw, 286px);
        line-height: 90%;
        text-align: left;
    }
    .project-top p {
        font-size: clamp(24px, 4.7vw, 64px);
        text-align: left;
        margin-bottom: 320px;
    }
    
    
    .offers-grid-item-new {
        grid-template-columns: calc(20% - 10px) calc(80% - 10px);
    }
    .offers-grid-item-new .offers-grid-col-new.col-2 {
        display: none;
    }
    .offers-grid-item-new .offers-grid-cols-cnt.left-cnt {
        grid-template-columns: 100%;
    }
    .offers-grid-item-new .offers-grid-cols-cnt.right-cnt {
        grid-template-columns: auto 28px;
    }
    
    .offers-grid-cols-cnt.right-cnt .item-title {
        display: block!important;
    }
    .offers-grid-item-new.active .offers-grid-col-new .srok.mobile:not(.hidden) {
        display: block!important;
    }
    .offers-grid-cols-cnt.right-cnt .srok.mobile:not(.hidden) {
        display: block!important;
    }
    .offers-grid-item-new.active .offers-grid-col-new .srok.mobile {
        display: flex!important;
    }
    
    
    
    
    
    
    
    
    
}

@media (max-width: 782px) {
    .container {
        padding-left: 16px;
        padding-right: 16px;
        margin: 0 auto;
    }
    .dm-frontpage-about .text-content .title {
        padding-left: 0%;
        font-size: 20px;
    }
    .dm-frontpage-about .content .main-title {
        padding-left: 0%;
        margin-bottom: 20px;
    }
    .dm-frontpage-about .text-content .subtitle {
        padding-left: 0%;
        font-size: 20px;
    }
    .dm-frontpage-about .text-content .text {
        padding-left: 0%;
    }
    .dm-frontpage-advantags .title {
        padding-left: 0%;
        margin-bottom: 20px;
    }
    .dm-frontpage-portfolio .title {
        padding-left: 0%;
    }
    .dm-frontpage-work .title {
        padding-left: 0%;
        margin-bottom: 20px;
    }
    .dm-frontpage-logofolio .title {
        padding-left: 0%;
    }
    .dm-frontpage-offers .title {
        padding-left: 0%;
    }
    .dm-frontpage-reviews .title {
        padding-left: 0%;
    }
    .dm-head-wrap {
        grid-template-columns: 50px auto;
    }
    .dm-frontpage-top .content p br {
        display: none;
    }
    .dm-frontpage-top .content h1 {
        margin: 10px auto 10px;
    }
    .dm-frontpage-about {
        padding-top: 42px;
    }
    .dm-frontpage-about .content .main-title h2 {
        margin-bottom: 18px;
    }
    .dm-frontpage-advantags {
        margin-top: 80px;
    }
    .dm-frontpage-advantags .title h2 {
        margin-bottom: 10px;
    }
    .advantags-grid {
        grid-template-columns: 100%;
    }
    .advantags-grid .advantags-item {
        min-height: 237px;
    }
    .advantags-grid .advantags-item:nth-child(2) {
        display: none;
    }
    .advantags-grid .advantags-item:nth-child(7) {
        display: none;
    }
    .advantags-grid .advantags-item:nth-child(10) {
        display: none;
    }
    .dm-frontpage-advantags .picture-abs {
        width: 100%;
        bottom: auto;
        top: 20%;
        overflow: hidden;
    }
    .dm-frontpage-advantags .picture-abs img {
        width: 145%;
        margin-left: -15%;
    }
    .advantags-grid .advantags-item:nth-child(1) {
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .advantags-grid .advantags-item:nth-child(8) {
        -webkit-backdrop-filter: blur(5px);
        backdrop-filter: blur(5px);
    }
    .dm-frontpage-portfolio {
        padding-top: 80px;
    }
    .dm-frontpage-portfolio .title {
        margin-bottom: 20px;
    }
    .portfolio-item-wrap {
        grid-template-columns: 100%;
    }
    .portfolio-item-wrap.grid-33-33 {
        grid-template-columns: 100%;
    }
    .portfolio-item-wrap {
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .dm-frontpage-portfolio .portfolio-grid {
        grid-template-columns: 100%;
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .dm-frontpage-portfolio button {
        margin-top: 20px;
    }
    .dm-frontpage-links {
        margin-top: 80px;
    }
    .abs.top {
        top: 10px;
    }
    .abs.bottom {
        bottom: 10px;
    }
    .abs.left {
        left: 10px;
    }
    .abs.right {
        right: 10px;
    }
    .dm-frontpage-links {
        height: 568px;
    }
    .dm-frontpage-links .container,
    .dm-frontpage-links .content, 
    .dm-frontpage-links picture {
        height: 100%;
    } 
    .dm-frontpage-links img {
        height: 100%;
        object-fit: cover;
        border-radius: 0px;
    } 
    .dm-frontpage-work {
        padding-top: 80px;
    }
    .work-items .work-elem .text p.gray {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: 16px auto;
        grid-column-gap: 4px;
        grid-row-gap: 4px;
        align-items: normal;
    }
    .dm-frontpage-logofolio {
        margin-top: 80px;
    }
    .dm-frontpage-logofolio .title {
        margin-bottom: 20px;
    }
    .logofolio-content .logofolio-content-col:nth-child(1) {
        grid-template-columns: 170px;
        grid-column-gap: 40px;
        grid-row-gap: 40px;
        justify-content: center;
    }
    .logofolio-content .logofolio-content-col:nth-child(2) {
        grid-template-columns: 170px;
        grid-column-gap: 40px;
        grid-row-gap: 40px;
        justify-content: center;
    }
    .logofolio-content {
        gap: 40px;
        padding: 40px 0px 20px 0px;
    }
    .logofolio-content .logofolio-content-col:nth-child(4) {
        grid-template-columns: 170px;
        grid-column-gap: 40px;
        grid-row-gap: 40px;
        justify-content: center;
    }
    .logofolio-content .logofolio-content-col:nth-child(5) {
        grid-template-columns: 170px;
        grid-column-gap: 40px;
        grid-row-gap: 40px;
        justify-content: center;
    }
    .dm-frontpage-offers {
        padding-top: 80px;
    }
    .dm-frontpage-events {
        margin-top: 80px;
    }
    .dm-frontpage-events .title {
        padding: 20px 20px 20px 20px;
    }
    .events-grid .events-content .events-content-item {
        grid-template-columns: 100%;
    }
    .events-grid .events-content .events-content-item .value h3 {
        margin: 0 0 10px;
    }
    .dm-frontpage-reviews {
        padding-top: 80px;
    }
    .reviews-slider .swiper-slide .name .fio {
        font-size: 36px;
    }
    .reviews-slider {
        padding-bottom: 30px !important;
    }
    .dm-footer {
        margin-top: 80px;
    }
    .dm-footer-wrap {
        padding-top: 30px;
    }
    .dm-footer-form {
        gap: 10px;
    }
    .dm-footer-wrap .dm-footer-col:nth-child(1), 
    .dm-footer-wrap .dm-footer-col:nth-child(2) {
        max-width: 45%;
    }
    .mobile-menu-cnt .middle .menu ul li a {
        font-size: 48px;
    } 
    .frontpage_top_order-form form .wpcf7-list-item label {
        align-items: normal;
    }
    .frontpage_top_order-form form .wpcf7-list-item label .wpcf7-list-item-label {
        text-align: left;
    }
    .frontpage_top_order-form .title {
        font-size: 24px;
        margin-bottom: 10px;
    }
    .frontpage_top_order-form .title br {
        display: none;
    }
    .frontpage_top_order-form .subtitle {
        margin-bottom: 20px;
    }
    .frontpage_about_order-wrap .title {
        font-size: 24px;
        margin: 0 0 10px;
    }
    .frontpage_about_order-wrap .title br {
        display: none;
    }
    .frontpage_about_order-wrap .subtitle {
        margin: 0 0 40px;
    }
    .modal__wrap--frontpage_about_order, .modal__wrap--frontpage_logo_order {
         max-width: calc(100% - 32px);
        padding: 16px;
        box-sizing: border-box;
    }
    .portfolio-item-wrap-el a.link {
        max-width: 100%;
    }
    .portfolio-item-wrap.grid-33-67 {
        grid-template-columns: 100%;
    }
    .frontpage_top_order-cnt {
        overflow-y: auto;
    }
    .frontpage_top_order-form {
        padding-top: 80px;
    }
    .content-404-wrap.mobile {
        grid-template-columns: 100%;
        padding-left: 16px;
        padding-right: 16px;
    }
    .content-404-wrap.mobile .main-content .soc {
        margin-bottom: 30px;
    }
    .page-single-cnt {
        padding-top: 104px;
    }
    .page-single-content h1 {
        margin: 0 0 30px;
    }
    .project-top button {
        max-width: 100%;
    }
    .project-about {
        padding-top: 100px;
    }
    .project-about .title {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 10px;
        padding-bottom: 30px;
        padding-left: 35%;
    }
    /*
    .project-about .title .small, 
    .project-about .title h2 {
        max-width: 240px;
        margin: 0 auto;
    } 
    */
    .project-about .text .text-item {
        grid-template-columns: 100%;
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .project-before {
        padding-top: 100px;
    }
    .project-before .title {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 10px;
        padding-bottom: 30px;
        padding-left: 35%;
        /*
        max-width: 240px;
        margin: 0 auto;
        */
    }
    .project-before-wrap {
        margin-top: 0px;
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .project-before-wrap.count_cols_6 {
        grid-template-columns: repeat(3, 1fr);
        align-items: flex-start;
    }
    .project-top h1 {
        white-space: wrap;    
    }
    .project-others-wrap.content_padding_60 {
        padding: 40px;
    }
    body.page-template-page-project .dm-frontpage-events {
        margin-top: 100px;
    }
    body.page-template-page-project .dm-frontpage-offers {
        padding-top: 100px;
    }
    
    .project-adaptive-wrap {
        display: flex;
        flex-direction: column-reverse;
    }
    .project-adaptive-wrap .project-adaptive-col.image-content.content_padding_40 {
        padding: 20px;
    }
    .project-adaptive-wrap .project-adaptive-col .project-adaptive-content .image {
        margin-top: 20px;
    }
    .project-adaptive-wrap .project-adaptive-col .project-adaptive-content button {
        display: none;
    }
    .project-before .project-discuss.mobile-button {
        background: #7012CD;
        border-radius: 8px;
        min-height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        margin: 0 auto;
        color: #fff;
        font-family: Manrope;
        font-weight: 400;
        font-size: 17px;
        line-height: 120%;
        letter-spacing: -0.04em;
        text-align: justify;
        vertical-align: middle;
        padding: 0;
        border: none;
        margin-top: 20px;
    }
    
    .offers-item {
        background: linear-gradient(180deg, #252525 0%, #460684 100%)!important;
        border: 1px solid!important;
        border-image-source: linear-gradient(135deg, #545454 0%, #2B2B2B 99.5%)!important;
    }
    .offers-item .text-content .name {
        color: rgb(255 255 255 / 100%)!important;
    }
    .offers-item .text-content .text {
        color: rgb(255 255 255 / 100%)!important;
    }
    .offers-item .price {
        opacity: 1!important;
    }
    .project-adaptive .mobile-slider {
        display: block;
    }
    .project-adaptive-wrap.projct-single {
        padding: 10px;
    }
    .project-adaptive-wrap.projct-single .project-adaptive-col.left img {
        padding: 0px;
        max-width: 100%;
    }
    .project-adaptive-wrap.projct-single .project-adaptive-col.right {
        display: none;
    }
    .project-about .images {
        margin-top: 20px;
    }
    .project-about .images .row.two-col {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: 100%;
        grid-column-gap: 10px;
        grid-row-gap: 10px;
    }
    .project-about .images .row+.row {
        margin-top: 10px;
    }
    .project-adaptive {
        padding-top: 80px;
    }
    .project-adaptive .title {
        display: flex;
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 10px;
        padding-bottom: 20px;
    }
    .project-adaptive-text-wrap {
        margin-top: 50px;
        flex-direction: column;
    }
    .project-adaptive-images-wrap {
        margin-top: 50px;
        flex-direction: column;
    }
    .project-adaptive .title .title-cnt p.big {
        font-size: 40px;
        text-align: center;
    }
    .project-adaptive .title .title-cnt ul {
        width: 100%;
        justify-content: space-around;
        gap: 10px;
    }
    .project-adaptive .title .title-cnt ul li {
        font-size: 20px;
    }
    .project-fonts-wrap.projct-single {
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: 100%;
        grid-column-gap: 10px;
        grid-row-gap: 10px;
        margin-top: 10px;
    }
    .project-fonts-wrap.projct-single .project-fonts-col {
        padding-top: 18px;
        padding-bottom: 18px;
    }
    .project-fonts-wrap.projct-single .project-fonts-col img {
        max-width: 150px;
    }
    .project-adaptive .title .title-cnt.font-druk-Wide-trial p.big {
        margin-top: 0px;
    }
    .project-adaptive .title .title-cnt {
        width: 100%;
    }
    .up-arrow {
        right: 16px;
    }
    .up-arrow-cnt {
        gap: 0;
    }
    .up-arrow span {
        display: none;
    }
    .up-arrow svg {
        width: 40px;
        height: 40px;
    }
    .project-top .buttons-cnt {
        flex-direction: column-reverse;
        gap: 10px;
    }
    .frontpage-promo-cnt {
        padding: 40px 20px;
        grid-template-columns: 100%;
        grid-column-gap: 20px;
        grid-row-gap: 20px;
    }
    .frontpage-promo-cnt .frontpage-promo-col:last-child {
        margin-left: 0;
    }
    .frontpage-promo-cnt .frontpage-promo-col .buttons-cnt {
        display: none;
    }
    .frontpage-promo-cnt .frontpage-promo-col .mobile .buttons-cnt {
        display: grid;
        max-width: 100%;
        margin-top: 20px;
    }
    .frontpage-promo-cnt .frontpage-promo-col p.small {
        margin: 0 auto 15px;
        text-align: center;
    }
    .frontpage-promo-cnt .frontpage-promo-col h2 {
        /*
        font-size: 64px;
        */
        margin: 0 0 20px;
    }
    .frontpage-promo-cnt .frontpage-promo-col p {
        margin: 0;
    }
    .frontpage-promo {
        margin: 80px 0;
    }
    .frontpage-promo-cnt .frontpage-promo-col .mobile {
        display: block;
    }
    
}



@media (max-width: 580px) {
    .page-single-content h1 {
        font-size: 48px;
        margin: 0 0 20px;
    }    
    .project-before-wrap.count_cols_6 {
        display: block;
        column-count: 2;
        column-gap: 10px;
    }
    .project-before-wrap.count_cols_6 .image-item {
        margin-bottom: 10px;
    }
    .project-slider-mobile-desktop {
        display: none!important;
    }
    .project-slider-mobile {
        display: block!important;
    }
    
    .breadcrumbs-cnt {
        padding-top: 80px;
    }
    .project-top .title {
        font-size: 18px;
        margin: 16px 0 30px;
    }
    .project-top p {
        margin-bottom: 120px;
    }
    .project-about {
        padding-top: 80px;
    }
    .project-about .title {
        padding-bottom: 20px;
        padding-left: 0;
    }
    .project-before {
        padding-top: 80px;
    }
    .project-before .title {
        padding-bottom: 20px;
        padding-left: 0;
    }
    body.page-template-page-project .dm-frontpage-events {
        margin-top: 80px;
    }
    body.page-template-page-project .dm-frontpage-offers {
        padding-top: 80px;
    }
    
    body.page-id-103 section.project-before:nth-child(2) .turn-phone,
    body.page-id-103 section.project-before:nth-child(6) .turn-phone,
    body.page-id-103 section.project-before:nth-child(7) .turn-phone,
    body.page-id-103 section.project-before:nth-child(9) .turn-phone {
        display: flex;
    }
    .dm-frontpage-top .content .buttons-cnt {
        flex-direction: column-reverse;
        gap: 10px;
    }
    .dm-frontpage-top .content h1 br {
        display: none;
    }
    .offers-grid-item-new {
        grid-template-columns: 20px auto;
    }
    .offers-grid-col-new .item-title {
        font-size: 32px;
    }
    .page-develop .main-content h1 br {
        display: block;
    }
    .frontpage-promo-cnt .frontpage-promo-col p.small {
        margin: 0 0 10px;
        text-align: left;
    }
    .frontpage-promo-cnt .frontpage-promo-col h2 {
        font-size: 20px;
        margin: 0 0 10px;
    }
    .frontpage-promo {
        margin: 60px 0;
    }
    
}

@media (max-width: 380px)  {
    .page-single-content h1 {
        font-size: 36px;
    }    
}
































