#main {
    min-height: 100vh;
    display: flex;
    align-items: center;
    position: relative;
}

#main:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: #000;
    background: linear-gradient(0deg, var(--color-2), var(--color-1));
    opacity: 0.25;
}

.image-bg {
    position: absolute;
    top: 0;
    z-index: -2;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.image-bg > * {
    height: 100%;
    width: 100%;
    /* z-index: -2; */
    position: relative;
}

#main h1 {
    font-size: 4rem;
    text-align: center;
    color: #fff;
}

#main .buttons {
    margin-top: 50px;
}

#main a.next {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
}



.slogan {
    background: linear-gradient(90deg, var(--color-1), var(--color-2));
    text-align: center;
    color: #fff;
    font-size: 2.6rem;
    line-height: 150%;
    text-transform: uppercase;
    background-size: 150% 150%;
    -webkit-animation: Gradient 12s ease infinite;
    -moz-animation: Gradient 12s ease infinite;
    animation: Gradient 12s ease infinite;    
}

body .alt > *.slogan {
    background: linear-gradient(90deg, var(--color-1), var(--color-2));  
    background-size: 150% 150%;
    -webkit-animation: Gradient 12s ease infinite;
    -moz-animation: Gradient 12s ease infinite;
    animation: Gradient 12s ease infinite;  
}

@-webkit-keyframes Gradient {
	0% {
		background-position: 0% 50%
	}
	50% {
		background-position: 100% 50%
	}
	100% {
		background-position: 0% 50%
	}
}

@-moz-keyframes Gradient {
	0% {
		background-position: 0% 50%
	}
	50% {
		background-position: 100% 50%
	}
	100% {
		background-position: 0% 50%
	}
}

@keyframes Gradient {
	0% {
		background-position: 0% 50%
	}
	50% {
		background-position: 100% 50%
	}
	100% {
		background-position: 0% 50%
	}
}


span.blue {
    color: var(--color-2);
}

span.red {
    color: var(--color-1);
}



.image-text-block {
    max-width: 900px;
    margin: 0 auto;
}

.image-text-block .image_wrap {
    flex: 0 0 300px;
}

.image-text-block .image {
    padding-right: 50px;
    position: relative;
    height: 100%;
    display: flex;
    align-items: flex-end;
}

.image-text-block .image img {
    display: block;
    position: absolute;
    top: 0;
    max-height: 100%;
}

/* body.page .image-text-block .image img {
    max-height: 250px;
} */

.image-text-block .text {
    font-size: 1.4rem;
    padding: 50px 0;
}

.image-text-block .text span {
    /* display: block; */
    font-weight: 600;
}

.image-text-block h3 {
    line-height: 135%;
}

.image-text-block .buttons {
    margin-top: 30px;
}

.image-text-block .buttons .btn {
    height: 55px;
    padding: 10px 30px;
    font-size: 1rem;
}




#services .container > .buttons {
    margin-top: 50px;
}

#services .image-text-vertical .text h3 {
    display: none;
}



#compare table td {
    padding: 20px 30px;
    border: 1px solid var(--color-line);
    line-height: 135%;
}

#compare table td:nth-child(2), #compare table td:nth-child(3) {
    text-align: center;
}

#compare table td:nth-child(2) i {
    /* color: #e4631c; */
    font-size: 2rem;
}

#compare table td:nth-child(3) i {
    color: var(--color-1);
    font-size: 2rem;
}

#compare table tr {
    background: #fff;
}

#compare table tr:nth-child(odd) {
    background: #fafafa;
}

#compare table tr:first-child {
    position: sticky;
    top: 79px;
    background: var(--color-line);
}

#compare table tr:first-child td {
    padding: 10px 30px;
    font-size: 0.75rem;
    font-weight: 500;
}

#compare table td h3 {
    margin-bottom: 10px;
    line-height: 135%;
}

#compare table td span {
    font-weight: 600;
    color: var(--color-1);
}


body.home #compare h3 {
    margin-bottom: 0;
}

body.home #compare p {
    display: none;
}





/* .block_form {
    background: var(--color-2);
    background-image: url(/wp-content/uploads/2026/05/13169.jpg);
    background-size: cover;
    background-position: center;
    color: #fff;
} */

.block_form {
    color: #fff;
    background: url(/wp-content/uploads/2026/05/12232-2.jpg);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.block_form .form-container {
    max-width: 480px;
    margin: 0 auto;
}







/* Услуга */


.alt > *:nth-child(even) {
    background: var(--color-line);
}



.list-links .item > * {
    padding: 40px;
    gap: 30px;
}

.list-links h3 {
    font-size: 1.4rem;
    line-height: 135%;
    font-weight: 500;
}

/* .list-links .item > * p {
    margin-top: auto;
} */

.row .item > * > * {
    flex: 1 0 0%;
}

.list-links a {
    font-weight: 500;
}




.list-advt .item > * {
    padding: 50px;
}

.list-advt .text {
    margin-bottom: 15px;
}

.list-advt .text h3 {
    margin-bottom: 30px;
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 135%;
}

.list-advt .buttons {
    margin-top: auto;
    flex: unset;
}

.list-advt .buttons .btn {
    height: 50px;
    padding: 10px 30px;
    font-size: 1.1rem;
}




.list-chess .item > * {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.list-chess .item > * > * {
    flex: 1 0 0%;
}

.list-chess .item:nth-child(even) .image {
    order: 11
}

.list-chess .image {
    text-align: center;
}

.list-chess .text_in_image {
    padding: 50px;
    color: var(--color-1);
    font-weight: 200;
    font-size: 3rem;
    line-height: 135%;
    /* text-shadow: 2px 2px #ffd5f8; */
}

.list-chess .image h3 {
    color: var(--color-2);
    font-weight: 700;
    text-transform: uppercase;
    text-shadow: 2px 2px #9dd3ff;
    font-size: 4rem;
    line-height: 120%;
}

.list-chess .text {
    padding: 30px 0;
}







/* #block_vertical_line {
    position: relative;
}

#block_vertical_line:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: #000;
    background: linear-gradient(0deg, var(--color-2), var(--color-1));
    opacity: 0.25;
} */


.vert_line_items .item {
    display: flex;
    /* gap: 30px; */
    max-width: 860px;
    margin: 0 auto;
    position: relative;
    align-items: baseline;
}

.vert_line_items .item .text-1 {
    padding-left: 30px;
}

.vert_line_items .item:nth-child(odd) .text-1 {
    order: 9;
    text-align: right;
    padding-left: 0;
    padding-right: 30px;
}

.vert_line_items .item:nth-child(odd) .text-0 {
    order: 11
}


.vert_line_items .item .number {
    background: #111;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
    height: 50px;
    flex: 0 0 50px;
    order: 10;
}

.vert_line_items .item .number:after {
    content: "";
    position: absolute;
    height: calc(100% - 53px);
    width: 2px;
    background: #000;
    top: 52px;
}

.vert_line_items .item:last-child .number:after {
    display: none;
}

.vert_line_items .item .text {
    order: 10;
    flex: 1 0 calc(50% - 50px);
    margin-bottom: 15px;
    font-size: 1.1rem;
    line-height: 135%;
    /* font-weight: 500; */
}

.vert_line_items .item .text h3 {
    margin-bottom: 10px;
    color: var(--color-1);
    background: linear-gradient(45deg, var(--color-1), var(--color-2));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 135%;
    font-size: 1.4rem;
}




#icon_4_block {
    padding-top: 20px;
    padding-bottom: 80px;
}

.icon_4_block_items {
    display: flex;
    flex-direction: column;
    /* gap: 120px; */
}

.icon_4_block_items .row {
    padding-top: 80px;
    padding-bottom: 20px;
}



.icon_4_block_items .text {
    padding-right: 50px;
}

.icon_4_block_items .text h3 {
    font-size: 2.4rem;
    line-height: 135%;
    color: var(--color-1);
    background: linear-gradient(45deg, var(--color-1), var(--color-2));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.icons_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon_4_block_items .icons {
    display: flex;
    flex-wrap: wrap;
    width: 431px;
    gap: 30px;
}


.icon_4_block_items .icons .item > div {
    background: var(--color-2);
    background: linear-gradient(45deg, #d82273, #eeeeee);
    border-radius: 1000px;
    align-items: center;
    justify-content: center;
    width: 200px;
    height: 200px;
    text-align: center;
    font-weight: 500;
    padding: 0px;
    line-height: normal;
    gap: 10px;
    color: #fff;
}

.icon_4_block_items .icons .item img {
    width: 75px;
    height: 75px;
    margin: 0 auto;
    flex: unset;
}

.icon_4_block_items .icons .item p {
    padding: 0 30px;
    flex: unset;
}



/* врменный стиль */
.icon_4_block_items .icons_wrap {
    display: none;
}
.icon_4_block_items .col {
    width: 100%;
}







#icons_image_block .icons {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-right: 50px;
}

#icons_image_block .icons > * {
    display: flex;
    align-items: center;
    gap: 30px;
    font-size: 1.2rem;
    font-weight: 600;
}

#icons_image_block .col {
    margin: 0 auto;
}






@media (max-width: 1200px) {
    #main h1 {font-size: 3.6rem;}
    .slogan {font-size: 2.4rem;}
    .image-text-block .text span {display: inline;}
    #compare table tr:first-child {top: 60px;}

    .icon_4_block_items .icons {row-gap: 15px;}
    .icon_4_block_items .text_wrap {width: 70%;}
    .icon_4_block_items .icons_wrap {width: 30%;}
    .icon_4_block_items .icons .item > div {width: 170px; height: 170px;}
    .icon_4_block_items .icons .item img {width: 55px; height: 55px;}
    .icon_4_block_items .text h3 {font-size: 2.2rem;}
    .icon_4_block_items .icons .item p {font-size: 0.9rem;}

    .list-chess .text_in_image {font-size: 2.7rem;}
}

@media (max-width: 992px) {
    #main h1 {font-size: 3.2rem; font-weight: 500;}
    .slogan {font-size: 2rem;}
    .image-text-block .empty {display: none;}
    .image-text-block .col-3 {width: 33%;}
    .image-text-block .text {font-size: 1.2rem;}
    .image-text-block .buttons {margin-top: 30px;}

    .list-links .item > * {padding: 30px;}

    #icon_4_block {padding-top: 15px; padding-bottom: 60px;}
    .icon_4_block_items .row {padding-top: 60px; padding-bottom: 15px;}
    .icon_4_block_items .text {padding-right: 30px;}
    .icon_4_block_items .text h3 {font-size: 2rem;}
    .icon_4_block_items .icons {justify-content: flex-end;}

    #icons_image_block .row {gap: 40px;}
    #icons_image_block .col {width: 100%;}
    #icons_image_block .image_wrap {order: 9;}
    #icons_image_block .icons {padding-right: 0;}

    .list-chess .item > * {flex-wrap: wrap; gap: 30px;}
    .list-chess .item > * > * {flex: 1 0 100%;}
    .list-chess .image {text-align: left;}
    .list-chess .text_in_image {padding: 0; font-size: 2.5rem;}
    .list-chess .text {order: 12; padding: 0;}

}

@media (max-width: 768px) {
    #main h1 {font-size: 2.8rem;}
    .slogan {font-size: 1.7rem; font-weight: 500;}
    .image-text-block .image img {position: relative;}
    .image-text-block .text {padding-top: 0;}
    #services .buttons .btn {font-size: 0.9rem;}
    #compare table tr:first-child td {padding: 10px 20px; font-size: 0.65rem;}
    #compare table tr:first-child td:nth-child(2), 
    #compare table tr:first-child td:nth-child(3) {padding: 10px;}
    #compare table td {padding: 20px;}
    #compare table td h3 {font-size: 1.1rem;}
    #compare table td p {font-size: 0.9rem;}

    .vert_line_items .item .number {height: 40px; flex: 0 0 40px; font-size: 0.9rem; font-weight: 500;}
    .vert_line_items .item .number:after {height: calc(100% - 43px); top: 42px;}
    .vert_line_items .item .text {font-size: 1rem;}
    .vert_line_items .item .text-1 {padding-left: 20px;}
    .vert_line_items .item:nth-child(odd) .text-1 {padding-left: 0; padding-right: 20px;}
    .vert_line_items .item .text h3 {font-size: 1.2rem; word-break: break-word;}

    .icon_4_block_items .text {font-size: 1rem;}
    .icon_4_block_items .text h3 {font-size: 1.7rem; margin-bottom: 15px;}
    .icon_4_block_items .icons .item p {font-size: 0.8rem; font-weight: 600;}
    .icon_4_block_items .icons .item > div {width: 150px; height: 150px;}
    .icon_4_block_items .icons .item img {width: 50px; height: 50px;}

    .list-chess .text_in_image {font-size: 2.2rem;}
}

@media (max-width: 576px) {
    #main h1 {font-size: 2.5rem; line-height: 150%;}
    .slogan {font-size: 1.5rem;}
    .image-text-block .col {width: 100%;}
    .image-text-block .image {padding-right: 0;}
    /* .image-text-block .text {text-align: center;} */
    /* .image-text-block .text .buttons {justify-content: center;} */
    #compare table tr:first-child td {padding: 10px;}
    #compare table td {padding: 20px 10px;}
    #compare table td h3 {font-size: 0.9rem;}
    #compare table td p {display: none;}

    .list-links .item > * {padding: 20px; gap: 15px; font-size: 0.9rem;}
    .list-links h3 {font-size: 1.2rem;}

    .vert_line_items .item .text {font-size: 0.9rem;}
    .vert_line_items .item .text h3 {font-size: 1.1rem;}

    .icon_4_block_items .text_wrap {width: 100%;}
    .icon_4_block_items .icons_wrap {width: 100%; display: none;}
    .icon_4_block_items .text h3 {font-size: 1.5rem;}
    .icon_4_block_items .icons {justify-content: center; gap: 30px;}

    #icons_image_block .icons > * {gap: 20px; font-size: 1.1rem; font-weight: 500;}
    #icons_image_block .icons img {max-width: 75px;}

}

@media (max-width: 480px) {
    #main {min-height: unset; padding: 150px 0 100px;}
    #main h1 {font-size: 2rem;}
    #main a.next {display: none;}
    .slogan {font-size: 1.3rem;}
    #compare table tr:first-child {top: 50px;}
    #compare table tr:first-child td {font-size: 0.6rem;}
    #compare table td {line-height: 115%;}
    #compare table td h3 {font-size: 0.75rem; word-break: break-word;}
    #compare table td p {font-size: 0.8rem; word-break: break-word;}
    #compare table td:nth-child(2) i,
    #compare table td:nth-child(3) i {font-size: 1.7rem;}

    .vert_line_items .item .text-0 {display: none;}
    .vert_line_items .item:nth-child(odd) .text-1 {order: 11;text-align: left;padding-left: 20px; padding-right: 0;}

    .list-advt .item > * {padding: 30px;}
    .list-advt .text h3 {margin-bottom: 20px; font-size: 1.5rem;}
    .list-advt .text {font-size: 1rem;}

    .icon_4_block_items .text h3 {font-size: 1.3rem;}

    .list-chess .text_in_image {font-size: 1.8rem;}
    .list-chess .text {font-size: 1rem;}

}

@media (max-width: 380px) {
    #main {padding: 130px 0 90px;}
    #main h1 {font-size: 1.7rem; line-height: 175%;}
    .slogan {font-size: 1.2rem;}
    .image-text-block .text {font-size: 1.1rem;}
    .image-text-block h3 {font-size: 1.2rem;}
    #compare table tr:first-child td {padding: 10px 5px; font-size: 0.5rem;}
    #compare table tr:first-child td:nth-child(2), 
    #compare table tr:first-child td:nth-child(3) {padding: 10px 0;}
    #compare table td {padding: 10px 5px;}
    #compare table td h3 {font-size: 0.65rem;}
    #compare table td p {display: none;}
    #compare table td:nth-child(2) i, 
    #compare table td:nth-child(3) i {font-size: 1.5rem;}

    .vert_line_items .item .number {height: 35px; flex: 0 0 35px; font-size: 0.8rem;}
    .vert_line_items .item .number:after {height: calc(100% - 38px); top: 37px;}
    .vert_line_items .item .text-1 {padding-left: 15px;}
    .vert_line_items .item:nth-child(odd) .text-1 {padding-left: 15px;}
    .vert_line_items .item .text h3 {font-size: 1rem;}

    .icon_4_block_items .row {padding-top: 50px; padding-bottom: 15px;}
    .icon_4_block_items .text h3 {font-size: 1.2rem;}
    .icon_4_block_items .icons {gap: 15px;}

    .list-advt .item > * {padding: 20px 15px;}
    .list-advt .text h3 {font-size: 1.2rem;}
    .list-advt .text {font-size: 0.9rem;}
    .list-advt .text {margin-bottom: 5px;}
    .list-advt .buttons .btn {height: 40px; font-size: 1rem;}

    #icons_image_block .icons > * {font-size: 1rem;}
    #icons_image_block .icons img {max-width: 55px;}

    .list-chess .text_in_image {font-size: 1.5rem; font-weight: 300;}
}