/* h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
b,
span {
    
} */

body {
    /* background: repeating-linear-gradient(to right,
            var(--bg-color-gray) var(--container-margin) calc(var(--container-margin) + var(--column-width)),
            var(--bs-body-color-line) calc(var(--column-width) + var(--container-margin)) calc(var(--column-width-between) + var(--column-width) + var(--container-margin))); */
    background-color: var(--bg-color-white);
}

/* section {
    background: repeating-linear-gradient(to right,
            var(--bg-color-gray) calc(var(--container-margin)) var(--column-width),
            var(--bs-body-color-line) calc(var(--column-width) + var(--container-margin)) calc(var(--column-width-between) + var(--column-width)));
} */

a {
    text-decoration-thickness: from-font;
}

:root {
    --vw: calc(1vw);
    --vh: 1vh;

    --bg-color-gray: #f2f2f2;
    --bg-color-orange: #ff6400;
    --bg-color-white: #ffffff;
    --bg-color-gray-d: #dcdcdc;

    --bs-background-color-orange: rgba(255, 100, 0, 1);

    --container-margin: 47px;
    --column-width-between: 2px;
    --conatiner-max-width: calc(100 * var(--vw) - var(--container-margin) * 2);
    --column-width: calc(calc(var(--conatiner-max-width) - var(--column-width-between) * 8) / 9);

    --bs-body-color-line: #ffffff;
    --bs-body-font-family: "Gilroy";
    --bs-checkbox-sw-height: 10px;
}

.fw-medium {
    font-weight: 500 !important;
}

.fw-bolder {
    font-weight: 800 !important;
}

.line-height-75 {
    line-height: 75%;
}

.line-height-95 {
    line-height: 95%;
}

.line-height-100 {
    line-height: 100%;
}

.line-height-normal {
    line-height: normal;
}

.line-height-109 {
    line-height: 109%;
}

.line-height-164 {
    line-height: 164%;
}

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

.text-orange *,
.text-orange {
    color: var(--text-color-orange) !important;
}

.text-black *,
.text-black {
    color: var(--text-color-black) !important;
}

.mb-6 {
    margin-bottom: 3.5rem !important;
}

.mb-7 {
    margin-bottom: 4rem !important;
}

.mb-8 {
    margin-bottom: 4.5rem !important;
}

.mb-9 {
    margin-bottom: 5rem !important;
}

.ms-6 {
    margin-left: 3.5rem !important;
}

.ms-7 {
    margin-left: 4rem !important;
}

.ms-8 {
    margin-left: 4.5rem !important;
}

.ms-9 {
    margin-left: 5rem !important;
}

.my-6 {
    margin-bottom: 3.5rem !important;
    margin-top: 3.5rem !important;
}

.my-7 {
    margin-bottom: 4rem !important;
    margin-top: 4rem !important;
}

.my-8 {
    margin-bottom: 4.5rem !important;
    margin-top: 4.5rem !important;
}

.my-9 {
    margin-bottom: 5rem !important;
    margin-top: 5rem !important;
}

.py-6 {
    padding-bottom: 3.5rem !important;
    padding-top: 3.5rem !important;
}

.py-7 {
    padding-bottom: 4rem !important;
    padding-top: 4rem !important;
}

.py-8 {
    padding-bottom: 4.5rem !important;
    padding-top: 4.5rem !important;
}

.py-9 {
    padding-bottom: 5rem !important;
    padding-top: 5rem !important;
}

.zi-1000 {
    z-index: 1000 !important;
}

.zi-1010 {
    z-index: 1010 !important;
}

.zi-1020 {
    z-index: 1020 !important;
}

.zi-1030 {
    z-index: 1030 !important;
}

.zi-1040 {
    z-index: 1040 !important;
}

.zi-1050 {
    z-index: 1050 !important;
}

.zi-1060 {
    z-index: 1060 !important;
}

.vw-100 {
    width: calc(var(--vw) * 100) !important;
}

.min-vh-100 {
    min-height: calc(var(--vh) * 100);
}

.vh-100 {
    height: calc(var(--vh) * 100);
}

.no-h {
    text-decoration: unset;
}

.no-h:hover {
    color: var(--text-color-black);
    text-decoration: unset;
}

.no-h:active {
    color: var(--text-color-black);
    text-decoration: unset;
}

.position-unset {
    position: unset !important;
}

.border-underline-orange {
    border-bottom: 1px var(--bs-background-color-orange) solid;
}

.text-underline {
    text-decoration: underline;
}

.text-tranform-none {
    text-transform: unset !important;
}

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

.top-page_container {
    padding-top: 132px;
}

.nav-link {
    --bs-nav-link-font-size: 1.25rem;
}

.nav-link.active {
    font-weight: 600;
    text-decoration: underline;
}

.section-main {
    background: repeating-linear-gradient(
        to right,
        var(--bg-color-gray) 0 var(--column-width),
        var(--bs-body-color-line) var(--column-width) calc(var(--column-width-between) + var(--column-width))
    );
}

.site {
}

.site-main {
    display: flex;
    flex-direction: column;
}

.container {
    width: 100%;
    max-width: var(--conatiner-max-width);
    margin: 0 auto;
    padding: 0;
}

.nav-main {
    max-width: calc(var(--column-width) * 3 + var(--column-width-between) * 2);
    margin-right: calc(var(--container-margin) + var(--column-width-between));
    position: absolute;
    right: 0;

    /* margin-right: ; */
}

.nav-main > * {
    flex: 1 0 0%;
}

/* .col-sw-1 {
    max-width: calc(var(--column-width) * 1);
}

.col-sw-2 {
    max-width: calc(var(--column-width) * 2 + var(--column-width-between));
}

.col-sw-2-5 {
    max-width: calc(var(--column-width) * 3 - calc(var(--column-width) / 2) + var(--column-width-between)*2);
}

.col-sw-3 {
    max-width: calc(calc(var(--column-width) * 3) + var(--column-width-between)*2);
}

.col-sw-3-5 {
    max-width: calc(var(--column-width) * 4 - calc(var(--column-width) / 2) + var(--column-width-between)*3);
}

.col-sw-4 {
    max-width: calc(calc(var(--column-width) * 4) + var(--column-width-between)*3);
}

.col-sw-4-5 {
    max-width: calc(var(--column-width) * 5 - calc(var(--column-width) / 2) + var(--column-width-between)*4);
}

.col-sw-4-66 {
    max-width: calc(var(--column-width) * 5 - calc(var(--column-width) / 1.5) + var(--column-width-between)*4);
}

.col-sw-5 {
    max-width: calc(calc(var(--column-width) * 5) + var(--column-width-between)*4);
}

.col-sw-5-5 {
    max-width: calc(var(--column-width) * 6 - calc(var(--column-width) / 2) + var(--column-width-between)*5);
}

.col-sw-6 {
    max-width: calc(calc(var(--column-width) * 6) + var(--column-width-between)*5);
}

.col-sw-6-5 {
    max-width: calc(var(--column-width) * 7 - calc(var(--column-width) / 2) + var(--column-width-between)*6);
}

.col-sw-7 {
    max-width: calc(var(--column-width) * 7 + var(--column-width-between)*6);
}

.col-sw-7-5 {
    max-width: calc(var(--column-width) * 8 - calc(var(--column-width) / 2) + var(--column-width-between)*7);
}

.col-sw-8 {
    max-width: calc(var(--column-width) * 8 + var(--column-width-between)*7);
}

.col-sw-9 {
    max-width: calc(calc(var(--column-width) * 9) + var(--column-width-between)*8);
} */

/*slider*/

.slick-arrow {
    position: absolute;
    z-index: 1000;
    border: none;
    background: unset;
    color: unset;
    padding: 0;
    margin: 0;
    font-size: 0;
    line-height: 0;
    -webkit-filter: drop-shadow(0 6px 7.5px #00000025);
    filter: drop-shadow(0 6px 7.5px #00000025);
}

.slick-prev {
    left: calc(var(--column-width) / 4);
    top: 50%;
}

.slick-next {
    right: calc(var(--column-width) * 5.25 + var(--column-width-between) * 5);
    top: 50%;
}

.slick-dots {
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: start;
    gap: calc(var(--column-width) * 0.15);
    position: absolute;
    left: calc(var(--column-width) / 4);
    bottom: 3%;
    margin: 0;
    padding: 0;
}

.slick-dots li {
    font-size: 0;
    line-height: 0;
}

.slick-dots li button {
    content: "";
    width: 12.5px;
    height: 12.5px;
    font-size: 0;
    line-height: 0;
    color: unset;
    border: none;
    border-radius: 90px;
    background-color: var(--bg-color-white);
    transition: 0.15s ease-in-out all;
    padding: 0;
}

.slick-dots li.slick-active button {
    background-color: var(--bg-color-orange);
    transition: 0.15s ease-in-out all;
}

/*END slider*/

.col-content-cont {
    max-width: calc(var(--column-width) * 8);
}

.img-sw {
    width: 100%;
    object-position: center;
    object-fit: cover;
}

.mainpage {
    height: calc(100 * var(--vh));
}

.mainpage-img {
    position: relative;
    height: 100%;
    min-height: calc(100 * var(--vh));
    width: 100%;
    background-repeat: no-repeat;
    background-clip: inherit;
    background-position: 15% 50%;
    background-size: cover;
}

.mainpage-content {
}

.mainpage-text {
    left: calc(var(--column-width) / 4);
    width: 100%;
    bottom: 6%;
}

.mainpage-slide {
    min-height: calc(100 * var(--vh));
}

.mainpage-slide_text {
    display: flex;
    flex-direction: column;
}

.mainpage-slide_text > * {
    margin-bottom: 0;
}

.nav-link a {
    text-decoration: none;
}

.logo-toolbar {
    border-right: var(--column-width-between) #ffffff solid;
    box-shadow: 9.96px 2.85px 34.87px #00000025;
    padding: 20px var(--column-width-between) 0 0;
    height: 100%;
}

.logo-toolbar_text {
    width: calc(var(--container-margin) - var(--column-width-between));
    font-weight: 600;
    text-decoration: none;
    line-height: 1;
}

.menu-bar {
    /* box-shadow: 14px 4px 49px rgba(0, 0, 0, 0.25); */
    right: var(--container-margin);
    transform: translateX(100%);
    transition-duration: 1s;
    transition-property: transform;
    transition-timing-function: cubic-bezier(0.67, -0.18, 0.39, 1.33);
    height: 100%;
    background-color: var(--bg-color-gray-d);
}

.menu-bar.inRight {
}

.menu-bar_link {
    padding: 0 var(--column-width-between) 20px 0;
    width: calc(var(--container-margin));
    border-right: var(--column-width-between) #ffffff solid;
    height: 100%;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: end;
    writing-mode: vertical-rl;
    text-transform: uppercase;
    transform: rotate(180deg);

    box-shadow: 9.96px 2.85px 34.87px #00000025;
    background-color: var(--bg-color-gray-d);
    transition: background 0.3s 0.5s ease;
}

.menu-bar.inRight .menu-bar_link {
    background-color: var(--bg-color-white);
}

.right-bar {
    background-color: #f2f2f2;
    height: calc(100 * var(--vh));
    max-width: max-content;
}

.left-bar {
    position: fixed;
    background-color: var(--bg-color-gray-d);
    height: calc(100 * var(--vh));
    max-width: max-content;
    top: 0;
    left: 0;
}

.menu-bar_content {
    opacity: 1;
    width: calc(100 * var(--vw));
    height: 100%;
    display: flex;
    align-items: center;
}

.menu-bar_contants {
    display: flex;
    flex-direction: column;
}

.slick-list {
    padding: 0;
}

.a_button-submit_orange,
.say-button {
    position: relative;
    text-decoration: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 4;
}

.button-submit-form_orange circle,
.button-submit_orange circle,
.img-button_small-about circle,
.button-big-svg circle,
.img-button_banner circle {
    transition: all 0.3s ease-in;
}

.button-submit-form_orange path,
.button-submit_orange path,
.img-button_small-about path,
.button-big-svg path,
.img-button_banner path {
    transition: all 0.3s ease-in;
}

.a_button-submit_orange:hover .img-button_small-about circle,
.a_button-submit_orange:hover .img-button_about circle,
.a_button-submit_orange:hover .button-big-svg circle,
.a_button-submit-form_orange:hover .img-button_form circle,
.say-button:hover .img-button_banner circle {
    transition: all 0.3s ease-out;
    fill: #ff6400;
    stroke: #ffffff;
}

.a_button-submit_orange:hover .img-button_small-about path,
.a_button-submit_orange:hover .img-button_about path,
.a_button-submit_orange:hover .button-big-svg path,
.a_button-submit-form_orange:hover .img-button_form path,
.say-button:hover .img-button_banner path {
    transition: all 0.3s ease-out;
    fill: #ffffff;
}

.img-button_small-about {
    position: unset;
}

.button-submit_orange {
    background: var(--bg-color-orange);
    text-align: left;
    text-decoration: underline;
    color: #ffffff;
    padding-bottom: 10px;
    padding-left: 50px;
    border: 0;
    line-height: normal;
    text-decoration: underline;
}

.button-submit_orange-after::after {
    position: absolute;
    right: -25%;
    top: 0;
    z-index: -1;
    content: "";
    height: 100%;
    width: 40vw;
    background-color: var(--bg-color-orange);
}

.btn-kontakty {
    position: relative;
    height: 74px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 0;
}
.btn-kontakty::after {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    height: 100%;
    width: 40vw;
    z-index: -1;
    background: var(--bg-color-orange);
}
.btn-about_small::after {
    left: 0;
    right: unset;
    width: 125%;
}

.a_button-submit-form_orange {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    width: 100%;
}

.button-submit-form_orange {
    background: var(--bg-color-orange);
    text-align: left;
    text-decoration: underline;
    color: #ffffff;
    width: 100%;
    /* padding: 38px 0; */
    height: 117px;
    border: 0;
    line-height: normal;
    text-decoration: underline;
    position: relative;
    z-index: 4;
}

.button-submit-form_orange-back {
    background-color: var(--bg-color-gray-d);
    color: var(--text-color-black) !important;
}

.img-button_form {
    bottom: -51px;
    right: -102px;
    height: 204px;
    width: 204px;
    position: absolute;
}

/* .button-submit-form_orange::after {
    content: "";
    position: absolute;
    z-index: -1;
    background-color: var(--bg-color-orange);
    top: 0;
    height: 100%;
    width: 50vw;
    right: 0;
} */

.button-big-svg {
    max-width: fit-content;
    max-height: fit-content;
}

.open-menu {
    display: block !important;
    opacity: 100;
}

.inRight {
    transform: translateX(calc(0% + var(--container-margin)));
}

.socials {
    display: flex;
    flex-direction: row;
    column-gap: 1rem;
}

.social img {
    transition: ease 0.15s all;
}

.social:hover img {
    transform: scale(1.05);
    transition: ease 0.15s all;
}

.social:active img {
    transform: scale(0.95);
    transition: ease 0.15s all;
}

.social img {
    height: 100%;
    width: auto;
}

.menu-block {
    width: 50px;
    right: -50px;
    background-color: #f2f2f2;
    height: 100%;
}

.t-upper-title {
}

.about-text {
    color: #000;
    max-width: 720px;
    width: max-content;
    line-height: 65%;
}

.about-content {
    width: 100%;
}

.about {
    height: calc(85 * var(--vh));
}

.img-button_about {
    position: absolute;
    right: -102px;
    bottom: -102px;
}

.img-button_banner {
    position: relative;
    max-width: unset;
    max-height: unset;
}

.img_button_project {
    position: absolute;
    right: 0;
    bottom: -102px;
}

.about-image {
    height: 100%;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.about-image_image {
    height: 100%;
    margin-left: 2px;
}

.col-content-small_image {
    height: 100%;
}

.state {
    width: 100%;
}

.state-content_block {
    position: relative;
    align-items: center;
    justify-content: center;
    -webkit-transition-property: all;
    -webkit-transition-duration: 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
}

.state-content {
    -webkit-transition-property: all;
    -webkit-transition-duration: 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    transition-property: all;
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    position: absolute;
    overflow: hidden;
    width: 100%;
    left: 0;
    display: flex;
    justify-content: center;
}

.state-c {
    opacity: 1;
    -webkit-transition-property: transform;
    -webkit-transition-duration: 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    transition-property: transform;
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
}

.state-nc {
    opacity: 0;
    -webkit-transition-property: transform;
    -webkit-transition-duration: 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    transition-property: transform;
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
}
.state-content_dopcont {
    flex: 1 0 0%;
    transition: cubic-bezier(0.64, -0.08, 0.73, 1.16) all 0.4s;
}

/* .state-nc_1 {
  max-width: calc(var(--column-width) * 2.89);
  width: calc(var(--column-width) * 2.89);
} */

.state-content div {
}

/* .state-c_1 {
  opacity: 1;
} */

.state-nc_1 p {
    -webkit-transition-property: font-size;
    -webkit-transition-duration: 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
    transition-property: font-size;
    transition-duration: 0.4s;
    transition-timing-function: cubic-bezier(0.64, -0.08, 0.73, 1.16);
}

.state-content_block.active {
    background-color: var(--bs-background-color-orange);
    flex: unset;
}

/* .state-content_block.active .state-content {
  transform: translateX(
    calc(((100*var(--vw) * 2) / 3 - 100%) / -2 + (1*var(--vw) + 7px))
  );
} */

.state-content_block.active .state-content * {
    color: #ffffff !important;
}

.state-content_block.active .state-c {
    opacity: 0;
}

.state-content_block.active .state-nc {
    opacity: 1;
}
.state-content_block.active .state-content .state-content_dopcont {
    flex: unset;
    transition: cubic-bezier(0.64, -0.08, 0.73, 1.16) all 0.4s;
}

.state-content_block.active .state-c .state-content_dopcont {
    flex: 0 1 60%;
}

.state-content_block.active .state-c_1 {
    transform: translateX(0%);
}

.state-content_block.active .state-nc_1 {
    position: absolute;
}

.state-content_block.active .state-nc_1 p {
}

.picture-f {
    width: 100%;
    max-width: calc(100 * var(--vw));
    margin-left: 2px;
}

.banner-pict {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.banner-pict_content-button {
    align-self: flex-end;
    width: 100%;
    right: 0;
}

.banner_button-content {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    width: 100%;
}

.btn-title {
    height: auto;
    width: 100%;
    max-width: 474px;
    padding: 17px 30px 17px 53px;
}

.btn-banner {
    height: auto;
    width: 100%;
    padding: 18px 22px 27px 22px;
}

.banner_button-text {
}

.banner-pict_text {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.about-text_up {
    max-width: 700px;
}

.about-small_content {
    width: 100%;
}

.about-text_flex {
}

.about-button_large {
    width: 100%;
    max-width: 488px;
    padding: 6px 0;
    text-align: center;
}

.about-small {
    max-height: max-content;
}

.about-small_under {
    height: 100%;
}

.about-small_left {
    z-index: 10;
}

.project {
    /* margin-left: calc(var(--column-width) / 2); */
    overflow-x: hidden;
}

.project-img_image {
    height: 100%;
}

.project-img {
    width: 100%;
    height: auto;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.pjotect-content_right {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.project-content_button {
    right: 0;
    bottom: 0;
    /* max-width: calc(calc(var(--conatiner-max-width) / 3) - calc(var(--column-width) / 2)); */
    width: 100%;
}

.img-button_project {
}

.project-content {
    border-bottom: #000 2px solid;
    /* padding-right: calc(var(--column-width) / 2); */
    transition: all 0.3s ease-in;
    cursor: pointer;
}

.project-content > * {
    /* height: 41.1vh; */
}

.project-img-container {
    overflow: hidden;
}

.project-content .pjotect-content_right *,
.project-content .pjotect-content_right h4,
.project-content .project-img-container,
.project-content .project-img-container .project-img,
.project-content .project-content_button img {
    transition: all 0.3s ease-in;
}

.project-content.hover,
.project-content.hover .project-img-container,
.project-content.hover .pjotect-content_right h4 {
    transition: all 0.3s ease-out;
}

.project-content.hover .project-content_button img {
    filter: brightness(0) invert(1);
    transition: all 0.3s ease-out;
}

.project-content.hover .pjotect-content_right * {
    color: #ffffff !important;
    transition: all 0.3s ease-out;
}

.project-content.hover .project-img {
    /* height: 100%; */
}

.project-button {
    padding: 0;
    height: 85px;
    text-align: left;
    color: #ffffff;
    padding-bottom: 10px;
    /* padding-left: 10px; */
    border: 0;
    line-height: normal;
    text-decoration: underline;
    position: relative;
    z-index: 3;
}

.project-button::after {
    content: "";
    position: absolute;
    top: 0;
    z-index: -1;
    width: 50vw;
    height: 100%;
    left: 0;
    background-color: #ff6400;
}

.say-about {
    height: calc(100 * var(--vh));
    /* max-height: 993px; */
    padding-bottom: calc(0.5vh);
    padding-top: 0.85px;
}

#say .wpcf7-response-output {
    display: none;
}

.say-about_uppertext {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.say-about-img {
}

.say-about-img_image {
    max-height: 100%;
    height: 100%;
}

.say-about-button {
    bottom: 0px;
    left: 0;
    width: 100%;
    margin-right: calc(var(--column-width) / 3);
    max-width: calc(61 * var(--vw));
}

.say-about-button_button {
    width: calc(var(--column-width) * 2 - 33px);
    padding: 0;
    padding-bottom: 5px;
    height: 117px;
}

.say-about_left {
    width: 100%;
}

.say-about-ul {
    padding-left: calc(var(--column-width) / 2);
}

.say-about_big-img-banner {
    display: flex;
    align-items: center;
    position: relative;
    background-color: #0000003d;

    /* backdrop-filt:; */
}

.say-about_img-small-container {
}

.say-about_big-img {
    position: absolute;
    z-index: -1;
    object-fit: cover;
    object-position: 50% 50%;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    mix-blend-mode: multiply;
}

.input_checkbox-sw {
    max-width: 50%;
    width: 100%;
    position: unset;
    margin-top: 25px;
}

.form-check-input,
.wpcf7-checkbox input {
    border-radius: 0 !important;
    border: var(--bg-color-orange) 2px solid;
    background-color: var(--bs-body-bg);
    width: 55px;
    height: auto;
    aspect-ratio: 1/1;
    margin: 0;
    margin-bottom: 5px;
    box-shadow: none;
}

.form-check-input:focus,
.wpcf7-checkbox input:focus {
    border-radius: 0 !important;
    outline: var(--bg-color-orange) calc(2 * var(--scale)) solid;
    box-shadow: none;
    background-color: var(--bs-body-bg);
}

.form-check-input:checked,
.wpcf7-checkbox input:checked {
    background-color: var(--bg-color-white);
    border-color: var(--bg-color-orange);
    box-shadow: none;
}

.form-check-input:checked[type="checkbox"] {
    background-image: url("../img/content/checkbox_done.svg");
    background-position: center;
}

.form-check-input:active,
.wpcf7-checkbox input:active {
    box-shadow: 0 0 0 0.25rem rgba(255, 102, 0, 0.415);
}

.checkbox-sw,
.wpcf7-checkbox input {
    --size-checkbox: 36px;
    z-index: 10;
    position: relative;
    text-align: center;
    width: var(--size-checkbox);
    height: auto;
    aspect-ratio: 1/1;
    border: unset;
    margin: 0;
    outline: var(--bg-color-orange) calc(3 * var(--scale)) solid;
    outline-offset: calc(-3 * var(--scale));
    background-color: var(--bs-body-bg);
}

.checkbox-sw::after,
.wpcf7-checkbox input::after {
    content: "";
    width: 2px;
    background: none;
    height: 0px;
    margin-top: 57px;
    margin-left: calc(49px / 2);
}

.checkbox-sw:checked::after,
.wpcf7-checkbox input:checked::after {
    display: block;
    position: absolute;
    height: var(--bs-checkbox-sw-height);
    background: var(--bg-color-orange);
    -webkit-transition-property: all;
    -webkit-transition-timing-function: ease-in;
    -webkit-transition-duration: 0.6s;
    transition-property: all;
    transition-timing-function: ease-in;
    transition-duration: 0.6s;
}

.submit-form_confidenc-container {
    width: 40vw;
}

.form-control {
    position: relative;
    border-radius: 0;
    border-left: none;
    border-right: none;
    border-top: none;
    border-bottom: 1px solid;
    border-color: #000000;
    background-color: unset;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-property: all;
    -webkit-transition-timing-function: linear;
    transition-duration: 0.2s;
    transition-property: all;
    transition-timing-function: linear;
}

.form-control::placeholder {
    color: var(--text-color-orange);
}
.form-control::-webkit-input-placeholder {
    color: var(--text-color-orange);
}
.form-control::-ms-input-placeholder {
    color: var(--text-color-orange);
}
.form-control:-moz-placeholder {
    color: var(--text-color-orange);
    opacity: 1;
}
.form-control::-moz-placeholder {
    color: var(--text-color-orange);
    opacity: 1;
}
.form-control:-ms-input-placeholder {
    color: var(--text-color-orange);
}

.form-control:focus {
    box-shadow: none;
    border: var(--bg-color-orange) solid 1px;
    border-radius: 0px;
    background-color: var(--bg-color-white);
    -webkit-transition-duration: 0.2s;
    -webkit-transition-property: all;
    -webkit-transition-timing-function: linear;
    transition-duration: 0.2s;
    transition-property: all;
    transition-timing-function: linear;
}

.wpcf7-form.invalid .form-control.wpcf7-not-valid {
    background-image: url("../img/content/Cross_input.svg");
    background-repeat: no-repeat;
    background-position: right;
}

.wpcf7-form.init .form-control.wpcf7-not-valid {
    background-image: url("../img/content/Warning_input.svg");
    background-repeat: no-repeat;
    background-position: right;
}

.wpcf7-form.init .form-control:not(.wpcf7-not-valid) {
    background-image: url("../img/content/Done_input.svg");
    background-repeat: no-repeat;
    background-position: right;
}

.form-select {
    background-color: unset;
    border-radius: 0 !important;
    border: unset;
    border: 1px solid var(--bg-color-orange);
    height: 50px;
    background-image: url("https://pvc-ural.ru/wp-content/themes/bootscore-5.2.3.2/img/content/arrow-select.svg");
    /* background-image: none;
    background-position: right;
    background-size: unset; */
    position: relative;
}

/* .form-select::after {
    position: absolute;
    content: '';
    right: 0;
    bottom: 0;
    width: 30px;
    height: 30px;
    background-size: contain;
    background-image: url('https://pvc-ural.ru/wp-content/themes/bootscore-5.2.3.2/img/content/arrow-select.svg');
} */

.form-select:focus {
    border-bottom: 1px solid var(--bg-color-orange);
    box-shadow: none;
    border-color: var(--bg-color-orange);
}

.form-select:active {
    border-bottom: 1px solid var(--bg-color-orange);
    box-shadow: none;
    border-color: var(--bg-color-orange);
}

.form-label {
    font-size: 1.5rem;
    margin: 0;
}

.form-check-label,
.form-check-label a {
    font-size: 1.5rem;
    color: rgba(113, 113, 113, 0.6);
}

.form-check-label a {
}
.footer-sw_box {
    flex-wrap: wrap;
    width: 100%;
    align-items: flex-start;
}

.footer-sw {
    display: inline-flex;
    flex-direction: row-reverse;
    width: 100%;
    height: 100%;
    padding-bottom: 1rem;
}

.footer-sw_ul {
    display: flex;
    flex-direction: column;
}

.footer-sw_ul li {
    margin-bottom: 0;
}

.footer-sw_ul li p {
    margin-bottom: 0;
}

.footer-sw_ul-2col li {
    margin-bottom: 12px;
}

.footer-sw_ul-2col li p {
}

.footer-col {
    height: 100%;
}

.footer-col > * {
    margin-bottom: 0;
}

.usefull-a a {
    color: #000;
    text-decoration: none;
    font-weight: 300;
    border-bottom: 1px solid #000;
    line-height: 95%;
}

.usefull-a h2 {
    font-weight: 300;
    color: #000;
    text-decoration: none;
}

.usefull-li {
    list-style: none;
    padding-left: calc(var(--column-width) / 2 - 10px);
    text-decoration: none;
}

.usefull-li * {
    text-decoration: none;
}

.usefull-li .h1 {
    font-weight: 400;
}

.usefull {
    margin: 0 auto;
    padding-right: calc(var(--column-width) / 4);
}

.usefull-content {
}

.usefull-tab_content {
    display: flex;
    flex-direction: column;
}

.usefull-image {
    /* background-repeat: no-repeat;
    background-clip: inherit;
    background-position: 15% 50%;
    background-size: cover; */
    object-position: center;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.usefull-image-big {
    background-repeat: no-repeat;
    background-clip: inherit;
    background-position: 15% 50%;
    background-size: cover;
    max-width: calc(var(--column-width) * 4.5 - 48px);
}

/* .usefull-content_text p {
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 109%;
} */

.usefull-content_text {
}

.usefull-block_col {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: var(--column-width);
    padding: 0 var(--container-dop-margin);
}

.usefull-block_slider {
    padding: 0 var(--container-dop-margin);
}

.swiper-sw-scroll {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    background-color: #000;
    z-index: 1000;
}

.swiper-sw-prev {
    position: absolute;
    background-image: url("../img/content/arrowLeft.svg");
    background-repeat: no-repeat;
    -webkit-filter: drop-shadow(0 6px 7.5px #00000025);
    filter: drop-shadow(0 6px 7.5px #00000025);
    z-index: 1000;
    background-size: contain;
}

.swiper-sw-next {
    position: absolute;
    background-image: url("../img/content/arrowRight.svg");
    background-repeat: no-repeat;
    -webkit-filter: drop-shadow(0 6px 7.5px #00000025);
    filter: drop-shadow(0 6px 7.5px #00000025);
    z-index: 1000;
    background-size: contain;
}

.swiper-sw {
    overflow: hidden;
    position: relative;
}

.swiper-sw-scroll .swiper-scrollbar-drag {
    background-color: var(--bg-color-orange);
}

.swiper-usefull {
    overflow: hidden;
}

.swiper-slide_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.modal.image_modal {
    padding: calc(var(--vh) * 2) var(--container-dop-margin);
    z-index: 10000;
}

.modal-dialog.modal-dialog-sw {
    max-width: calc(var(--vw) * 98);
    max-height: calc(var(--vh) * 98);
    width: 100%;
}

.image_modal .modal-header {
    padding-bottom: 0;
    border: unset;
}

.modal-dialog-sw .modal-content {
    max-height: calc(var(--vh) * 98);
    border-radius: 10px;
}

.modal-dialog-sw .arrow_container-next,
.modal-dialog-sw .arrow_container-prev {
    position: absolute;
    top: 0;
    bottom: 0;
    height: fit-content;
    margin: auto 0;
}

.modal-dialog-sw .arrow_container-next,
.modal-dialog-sw .arrow-next {
    right: 0;
}

.modal-dialog-sw .arrow_container-prev,
.modal-dialog-sw .arrow-prev {
    left: 0;
}

.modal-dialog-sw .arrow-next,
.modal-dialog-sw .arrow-prev {
    position: relative;
    width: fit-content;
    height: fit-content;
    border: unset;
    background-color: unset;
    opacity: 0.6;
    transition: ease 0.15s all;
}

.modal-dialog-sw .arrow-next:hover,
.modal-dialog-sw .arrow-prev:hover {
    opacity: 1;
    transition: ease 0.15s all;
}

.modal-dialog-sw .arrow-next:active,
.modal-dialog-sw .arrow-prev:active {
    transform: scale(0.9);
    transition: ease-out 0.15s all;
}

.modal_image {
    width: 100%;
    height: 100%;
    object-position: 50% 50%;
    object-fit: contain;
}

.modal-dialog-sw .btn-close:focus,
.modal-dialog-sw .btn-close:active {
    box-shadow: unset;
}

.usefull-block_ifonpanel {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    background-color: var(--bg-color-gray);
}

.banner-form {
    background-color: var(--bg-color-orange);
}

.banner-form_input {
    background-color: var(--bg-color-white);
    color: #000;
    border: unset;
    font-weight: 700;
}

.banner-form_input::placeholder {
    font-weight: 600;
    color: var(--text-color-black);
}

.banner-form_btn {
    border-radius: 0;
    border: unset;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: underline;
    text-transform: uppercase;
    background-color: var(--bg-color-white);
    color: var(--text-color-orange);
    width: 100%;
    text-align: center;
}

.usefull-block_items-galery {
    display: grid;
    grid-template-columns: repeat(4, minmax(max-content, 1fr));
    row-gap: 20px;
}

.wpcf7-spinner {
    display: none;
}

.project-menu_button {
    margin-left: calc(var(--column-width) / 2 - 32px);
    max-width: calc(var(--column-width) * 4);
}

.project-menu_button a {
    border: none;
    border-radius: 0;
}

.project-menu_button .active {
    border: none;
    border-radius: 0;
    background-color: var(--bs-background-color-orange);
    padding: 9px 32px 4px 32px;
}

.project-menu_button .active h3 {
    color: #ffffff;
}

.project-menu_button .col {
    align-items: center;
    max-width: fit-content;
    padding: 9px 32px 4px 32px;
    text-transform: uppercase;
    width: 100%;
}

.projects-block {
    max-height: 320px;
    width: 100%;
    height: calc(33vh);
    background-repeat: no-repeat;
    background-clip: inherit;
    background-size: cover;
}

.projects-content-images .col {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

.projects-block_text {
    opacity: 0;
    padding: 35px 50px 35px 50px;
    height: 100%;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-property: all;
    -webkit-transition-timing-function: linear;
    transition-duration: 0.2s;
    transition-property: all;
    transition-timing-function: linear;
}

.projects-block_text a {
    width: max-content;
}

.projects-block:hover .projects-block_text {
    opacity: 1;
    background: #ffffffdb;
}

.pills-about {
    justify-content: space-evenly;
    flex-direction: column;
}

.pills-about.nav-pills {
    --bs-nav-pills-link-active-bg: none;
    --bs-nav-pills-border-radius: 0;
    --bs-nav-link-color: var(--text-color-black);
    --bs-nav-link-hover-color: var(--text-color-orange);
}

.pills-about.nav-pills .nav-link {
    padding: 20px 0;
    position: relative;
    text-transform: uppercase;
    z-index: 5;
    margin: 0;
    text-decoration: none;
    transition: all 0.3s ease;
}

.pills-about.nav-pills .nav-link::after {
    content: "";
    opacity: 0;
    position: absolute;
    z-index: -1;
    background-color: #ff6400;
    width: 20px;
    height: 100%;
    right: -15px;
    top: 0;
    transition: 0.3s all ease-in;
}

.pills-about.nav-pills .nav-link.active::after {
    opacity: 1;
    width: calc(var(--column-width) * 1.5 + var(--column-width-between) + 100% + 17px);
    transform: none;
    transition: 0.3s all ease-out;
}

.nav-sw-cattegory {
    justify-content: space-between;
    z-index: 5;
}

.nav-sw-cattegory.nav-pills {
    justify-content: start;
    --bs-nav-pills-link-active-bg: var(--bg-color-orange);
    --bs-nav-pills-border-radius: 0;
    --bs-nav-link-color: var(--text-color-black);
    --bs-nav-link-hover-color: var(--text-color-orange);
}

.nav-sw-cattegory.nav-pills .nav-link {
    --bs-nav-link-font-weight: 300;
    text-transform: uppercase;
    padding: 0;
    position: relative;
    z-index: 5;
}

.nav-sw-cattegory.nav-pills .nav-link::after {
    content: "";
    opacity: 0;
    position: absolute;
    z-index: -1;
    background-color: #ff6400;
    width: calc(100% + var(--bs-nav-link-padding-x) * 2);
    height: calc(100% + var(--bs-nav-link-padding-y) * 2);
    left: calc(-1 * var(--bs-nav-link-padding-x));
    top: calc(-1 * var(--bs-nav-link-padding-y));
    transform: scale(0.6);
    transition: 0.15s all ease-in;
}

.nav-sw-cattegory.nav-pills .nav-link.active::after {
    opacity: 1;
    transform: none;
    transition: 0.15s all ease-out;
}

.nav-sw-cattegory.nav-pills .nav-link.active {
    font-weight: 700;
}

.nav-sw-cattegory.nav-pills .nav-link:focus,
.nav-sw-cattegory.nav-pills .nav-link:hover,
.nav-sw-cattegory.nav-pills .nav-link.active {
    text-decoration: underline;
}

.nav-sw-usefull.nav-pills {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    --bs-nav-pills-link-active-bg: var(--bg-color-orange);
    --bs-nav-pills-border-radius: 0;
    --bs-nav-link-color: var(--text-color-black);
    --bs-nav-link-hover-color: var(--text-color-orange);
}

.nav-sw-usefull.nav-pills .nav-link {
    --bs-nav-link-font-weight: 300;
    text-transform: uppercase;
    /*  padding: 0; */
    padding-left: 0;
    padding-right: 0;
    background-color: unset;
    position: relative;
    z-index: 5;
    color: var(--text-color-black);
}

.nav-sw-usefull.nav-pills .nav-link::after {
    content: "";
    opacity: 0;
    position: absolute;
    z-index: -1;
    background-color: #ff6400;
    width: 0px;
    height: 100%;
    left: calc(-1 * var(--bs-nav-link-padding-x));
    top: 0;
    /*  transform: scale(0.6); */
    transition: 0.15s all ease-in;
}

.nav-sw-usefull.nav-pills .nav-link.active::after {
    opacity: 1;
    width: calc(100% + var(--bs-nav-link-padding-x) * 2);
    transform: none;
    transition: 0.2s all ease-out;
}

.nav-sw-usefull.nav-pills .nav-link.active {
    font-weight: 700;
    color: var(--text-color-white);
    background-color: unset;
    /* transition: 0.15s background ease-out; */
}

.nav-sw-usefull.nav-pills .nav-link:focus,
.nav-sw-usefull.nav-pills .nav-link:hover,
.nav-sw-usefull.nav-pills .nav-link.active {
    text-decoration: underline;
}

.work-left_orange-title {
    color: var(--text-color-white);
    font-weight: 700;
    position: relative;
    z-index: 2;
}

.work-left_orange-title::before {
    content: "";
    position: absolute;
    z-index: -1;
    background-color: var(--bg-color-orange);
    top: 0;
    height: 110%;
}

.work-button_next {
    background-color: var(--bg-color-orange);
    border: 0;
    padding: 20px;
    text-align: start;
    position: relative;
    width: 100%;
}

.work-button_next::after {
    content: "";
    position: absolute;
    height: calc(100vh);
    width: 100%;
    top: 0;
    left: 0;
    background-color: var(--bg-color-orange);
    z-index: -1;
}

.work-content {
    overflow: hidden;
}

.work-left {
    /* overflow: hidden; */
}

.work-left-text {
    background-color: #ededed;
    z-index: 1;
    position: relative;
}

.work-left-text::after {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    right: 0;
    top: 0;
    background-color: #ededed;
    z-index: -1;
}

.work-right_img-holder {
    gap: 20px;
}

.worl-right_img-row {
    display: grid;
    justify-content: space-between;
    gap: 20px;
    grid-template-columns: 0.35fr 0.65fr;
}

.worl-right_img-row.reverse {
    grid-template-columns: 0.65fr 0.35fr;
}

.work-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    -webkit-filter: saturate(0);
    filter: saturate(0);
    transition: 0.3s all ease-in;
}

.work-img-item {
    overflow: hidden;
}

.work-img:hover {
    filter: none;
    transform: scale(1.1);
    transition: 0.3s all ease-out;
}

.portfolio-content {
    display: grid;
    grid-template-columns: 0.33fr 0.33fr 0.33fr;
    justify-content: space-between;
}

.portfolio-img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.card {
    width: 100%;
    position: relative;
    margin: 0;
    border: none;
    border-radius: none;
}

.front,
.back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* Скрываем обратную сторону */
    /* Добавляем transition для плавного переворота */
    overflow: hidden;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transition: ease-in-out 0.5s all;
    background-color: #fff;
}

.front {
    transform: perspective(1200px) rotateY(0);
}

/* .front img {
    -webkit-filter: saturate(0);
    filter: saturate(0);
    transform: 0.3s ease-in filter;
} */

.back {
    opacity: 0;
    transform: perspective(1200px) rotateY(180deg);
    background-color: var(--bg-color-gray);
    /* Переворачиваем обратную сторону по оси Y */
}

/* .card:not(.flipped):hover .front img {
    -webkit-filter: unset;
    filter: unset;
    transform: scale(1.05);
    transform: 0.3s ease-out filter;

} */

.card:hover .front {
    transform: perspective(1200px) rotateY(-180deg);
    z-index: 12;
    transition: ease-in-out 0.5s all;
    /* Переворачиваем лицевую сторону по оси Y при наведении мыши */
}

.card:hover .back {
    transform: perspective(1200px) rotateY(0);
    transition: ease-in-out 0.5s all;

    opacity: 1;
}

.back-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.btn_more {
    width: fit-content;
}

.button_down,
.btn_more {
    transition: ease-in 0.15s all;
}

.button_down:hover,
.btn_more:hover {
    transform: scale(1.04);
    transition: ease-out 0.15s all;
}

.button_down:active,
.btn_more:active {
    transform: scale(0.96);
    transition: ease-in 0.15s all;
}

.button_down:active,
.button_down:focus,
.button_down:hover,
.btn_more:active,
.btn_more:focus,
.btn_more:hover {
    color: var(--text-color-orange);
}

.form-text .textwidget,
.form-text .textwidget .wpcf7,
.form-text .textwidget .wpcf7,
.form-text .textwidget .wpcf7 form {
    height: 100%;
}

.form-text .textwidget .wpcf7 form * p {
    margin: 0;
    font-size: 0;
}

.form-text .textwidget .wpcf7 form .a_button-submit-form_orange > p {
    width: 100%;
}

.form-text .textwidget .wpcf7 form .a_button-submit-form_orange.last > p {
    width: fit-content;
}
.form-text .textwidget .wpcf7 form .a_button-submit-form_orange.last .button-submit-form_orange {
    width: 100vw;
}

.form-text .textwidget .wpcf7 form .say-about-img > p {
    height: 100%;
    width: 100%;
}

.wpcf7-list-item {
    margin: 0;
}

.wpcf7-checkbox ~ .wpcf7-not-valid-tip {
}

.wpcf7-acceptance {
    height: 0px;
    font-size: 0;
}

.wpcf7-acceptance {
    display: block;
}

/*

@media (max-height: 1000px) {
    .say-about_uppertext h2 {
        line-height: 1.1 !important;
    }
}*/
