/* Контентная часть */

#content {
    /* z-index: 900; */
}

.title-block {
    background: var(--color-2);
    background: linear-gradient(45deg, var(--color-2), var(--color-1));
    color: #fff;
    padding: 45px 0;
	/* margin-bottom: 30px; */
    margin-bottom: calc(var(--bs-gutter-y) * 1.5);
	position: relative;
	z-index: 1;
}

.title-block:before {
    content: "";
    background: linear-gradient(45deg, var(--color-2), transparent);
    position: absolute;
	z-index: -1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}


.center {text-align: center;}

h1 {
    font-size: 6rem;
    line-height: 110%;
    /* margin-bottom: 75px; */
    margin-top: calc(var(--bs-gutter-x)* 4);
    margin-bottom: calc(var(--bs-gutter-x)* 3);
    font-weight: 400;
}

.portfolio-title {
    font-size: 10rem;
}

.post-content {
	/* padding: 100px 0 100px 150px; */
	padding: 100px 0 100px 85px;
}

#path {font-size: 0.9rem;}
#path a {font-weight: 600; text-decoration: none;}

.post-content #path {margin-bottom: 10px;}

@media (max-width: 1400px) { 
    .portfolio-title {font-size: 10rem;} 
}

@media (max-width: 1200px) { 
    #content {width: 100%;} 
    .portfolio-title {font-size: 8rem;} 
}

@media (max-width: 992px) { 
    .portfolio-title {font-size: 5.5rem;} 
}

@media (max-width:  576px) { 
	.post-content {border: none; padding: 30px 0;}
	#path {display: none;}
	.title {font-size: 1.6rem;}
}




/* Форматирование на странице */

.area {font-size: 1.6rem; text-align: left;}

.area-content {
    /* margin-top: 100px; */
}

.area-content .row {
    margin-right: calc(var(--bs-gutter-x)* -1.2);
    margin-left: calc(var(--bs-gutter-x)* -1.2);
    row-gap: calc(var(--bs-gutter-y)* 2.5);
}

.area-content .row > * {
    padding-right: calc(var(--bs-gutter-x)* 1.2);
    padding-left: calc(var(--bs-gutter-x)* 1.2);
}

/* .area a {text-decoration: underline; text-decoration-style: dotted;} */
/* .area a:hover {text-decoration: none;} */

.area .title {
    font-size: 6rem;
    line-height: 110%;
    font-weight: 400;
    margin: 80px 0;
}

.area p, .area h2, .area > div, .area table {margin-bottom: calc(var(--bs-gutter-x) * 1.5);}
.area > img, .area > figure {margin-bottom: calc(var(--bs-gutter-x) * 2);}
.area > .row {margin-bottom: calc(var(--bs-gutter-x) * 5);}
.area > h2:not(:first-child) {margin-top: calc(var(--bs-gutter-x) * 3);}
.area > *:last-child {margin-bottom: 0;}

.wp-block-columns :where(figure) {margin-bottom: 0 !important;}

.area p, .area ul li {
    line-height: 1.4;
    /* text-align: justify; */
    /* hyphens: auto;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto; */
}

.area p, .area ul li, .area ol li, .area h2, .area h3 {
    max-width: 1000px;
}

.area h2, .area h3, .area h4 {
    font-weight: 500;
}

.area ul, .area ol {display: inline-block; margin-bottom: calc(var(--bs-gutter-x) * 2); margin-top: calc(var(--bs-gutter-x)* -1); width: 100%; padding-left: 20px;}
.area ul li, .area ol li {width: 100%; margin-bottom: calc(var(--bs-gutter-x) / 4); position: relative; line-height: 1.5;}
.area ul li:last-child, .area ol li:last-child {margin-bottom: 0;}
/* .area ul li::marker {color: var(--color-1);} */

.area td, .area th, .area .wp-block-table td {padding: calc(var(--bs-gutter-x) / 2); border: 1px solid var(--color-line);}
.area th {font-weight: 600;}

blockquote {position: relative; font-style: italic; border-left: 3px solid var(--color-1); padding-left: var(--bs-gutter-x); margin-bottom: var(--bs-gutter-x); color: #555;}
  
.alignleft {display: inline; float: left; margin-right: 30px; margin-bottom: 15px;}
.alignright {display: inline; float: right; margin-left: 30px; margin-bottom: 15px;}
.aligncenter {display: block; margin-right: auto; margin-left: auto; margin-bottom: 15px;}

.post-buttons {display: flex; flex-wrap: wrap; justify-content: center;}

.post-buttons > * {padding: 0 30px;}

.btn a {
    background: #333;
    color: #fff;
    padding: 10px 30px;
    font-size: 1.2rem;
    border: 2px solid #333;
    border-radius: 5px;
    text-decoration: none;
    cursor: pointer;
    display: block;
	white-space: nowrap;
    text-align: center;
}

.btn a:hover {border: 2px solid var(--color-1); background: var(--color-1);}

.btn.btn-o a {background: none; color: inherit;}
.btn.btn-o a:hover {color: var(--color-1);}

.clear {clear: both;}

#more_posts {
    background: var(--color-line);
    border: 0;
    padding: 15px 50px;
    border-radius: 5px;
    display: block;
    margin: 0 auto 30px;
    cursor: pointer;
}


a.wp-block-button__link.wp-element-button {
    background: none;
    padding: 0;
    color: var(--color-1);
}

a.wp-block-button__link.wp-element-button:hover {
    color: inherit;
}


@media (max-width: 1280px) { img.alignleft, img.alignright {max-width: 400px;} }

@media (max-width: 1200px) {

    .area-content .row {
        margin-right: calc(var(--bs-gutter-x)* -1);
        margin-left: calc(var(--bs-gutter-x)* -1);
        row-gap: calc(var(--bs-gutter-y)* 2);
    }
    .area-content .row > * {
        padding-right: calc(var(--bs-gutter-x)* 1);
        padding-left: calc(var(--bs-gutter-x)* 1);
    }

}

@media (max-width: 576px) { 

    .area-content .row {
        margin-right: -20px;
        margin-left: -20px;
        row-gap: calc(var(--bs-gutter-y)* 1.5);
    }

    .area-content .row > * {
        padding-right: 20px;
        padding-left: 20px;
    }

    .area p, .area h2, .area > div, .area table {margin-bottom: calc(var(--bs-gutter-x) * 1);}
    .area > img, .area > figure {margin-bottom: calc(var(--bs-gutter-x) * 1.5);}
    .area > h2:not(:first-child) {margin-top: calc(var(--bs-gutter-x) * 2);}

	.area table {font-size: 0.9rem; overflow-x: scroll; display: inline-block;} 
	/* .area img {display: block;} */
	.area > h2:after, .post-content > h2:after {display: none;}
	.post-buttons > * {padding: 0 0 15px;}
	.btn a {white-space: normal; padding: 10px;}

}

@media (max-width: 330px) { 
	.area h2, #post-content h2, .area p, .area table, .area > img, .area > div {margin-bottom: 20px;}
	.area > ul, .area > ol {margin-bottom: 5px;}
	.post-buttons > * {padding: 0;}
	.btn a {padding: 10px 15px;}
}




/* Медиа / Текст */

.wp-block-media-text__content ul, .wp-block-media-text__content ol {padding-left: 20px;}

@media (max-width: 768px) { 
    .wp-block-media-text.is-stacked-on-mobile {grid-template-columns: 100%!important;}
    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {grid-column: 1; grid-row: 1; margin-bottom: var(--bs-gutter-x);}
    .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {grid-column: 1; grid-row: 2; padding: 0;}
}






/* Расходники */

/* .row > .item {
	padding: 0 calc(var(--bs-gutter-x) / 2);
    margin-bottom: var(--bs-gutter-x);
} */

.row .item > * {
    height: 100%;
    /* background: #fff; */
    /* border: 1px solid var(--color-line); */
    display: block;
    color: inherit;
	text-decoration: none;
}

.row .item > a:hover {border-color: var(--color-1);}

.row .item .text > *:last-child {margin-bottom: 0;}

.icon-text .item > * {display: flex; align-items: center; padding: 30px;}
.icon-text .item > * .image {width: 20%; font-size: 4rem; text-align: center; color: var(--color-1);}
.icon-text .item > * .text {width: 80%; padding-left: 30px; font-family: "Golos", sans-serif;}

.icon-text-vertical .item > * {/*text-align: center;*/ /*padding: 0 30px 30px 30px;*/}
.icon-text-vertical .item > * .image {margin-bottom: 30px; text-align: left;}
.icon-text-vertical .item > * .image img {width: 120px;}
.icon-text-vertical .item > * .text {font-family: "Golos", sans-serif;}


.image-text .item > * {display: flex; align-items: center;}
.image-text .item > * .image {width: 30%; height: 100%;}
.image-text .item > * img {object-fit: cover; height: 100%; display: block;}
.image-text .item > * .text {width: 70%; padding: 30px;}

/* .image-text-vertical .item > * {text-align: center;} */
.image-text-vertical .item > * .image {height: 530px; overflow: hidden;}
.image-text-vertical .item > * .image > * {width: 100%; height: 100%; object-fit: cover; transition: all 0.6s ease; -o-transition: all 0.6s; -webkit-transition: all 0.6s ease 0s;}
.image-text-vertical .item > *:hover .image > * {-webkit-transform: scale(1.05); transform: scale(1.05);}
.image-text-vertical .item > * .image img {display: block;}
.image-text-vertical .item > * .text {padding: 30px 0; font-size: 2rem; line-height: 2.4rem;}
.image-text-vertical .item > * .text h3 {
    font-size: 3rem;
    line-height: 1.2;
    font-weight: 500;
}

/* .image-text-vertical .item > * .image video {
    width: 100%;
    height: 100%;
    object-fit: cover;
} */


.number-text .item > * {display: flex; /*align-items: center;*/}
.number-text .item > * .number {
    width: 30%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 7rem;
    font-weight: 600;
    color: #eee;
}
.number-text .item > * .text {width: 70%; padding: 30px;}


.number-text-vertical .item > * {/*text-align: center;*/ padding: 30px 0 0;}
.number-text-vertical .item > * .number {margin-bottom: 15px; font-size: 1.7rem; /*color: var(--color-1);*/}
.number-text-vertical .text {font-size: 20px; line-height: 30px;}
.number-text-vertical .text h3 {font-size: 28px; line-height: 34px;}

.number-text.in-order {counter-reset: schetchik;}
.number-text.in-order .item {counter-increment: schetchik;}
.number-text.in-order .item > * .number:before {content: counter(schetchik);}


.items.owl-carousel {margin: 0 0 30px;}
.items.owl-carousel .owl-stage {display: flex; flex-wrap: wrap;}
.items.owl-carousel .item {padding: 0; margin-bottom: 0; height: 100%; width: 100%;}



@media (max-width: 576px) {  
    .image-text-vertical .item > * .text {padding: 25px 0 15px;} 
}




/* Blocks */

.area-block > p, .area-block > ul, .area-block > h2, .area-block > h3, .area-block > h4 {
    width: 100%;
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-right: var(--bs-gutter-x, 0.75rem);
    padding-left: var(--bs-gutter-x, 0.75rem);
}

.area-block > p, .area-block > ul, .area-block > h2, .area-block > h3, .area-block > h4, .area-block > div, .area-block > figure {
    margin-bottom: calc(var(--bs-gutter-y) * 1.5);
}








/* Сайтбар, Виджеты */

aside {min-width: 250px; padding-right: calc(var(--bs-gutter-x) * .5);}

aside .widget {margin-bottom: var(--bs-gutter-x); background: #fff; padding: var(--bs-gutter-x); border: 1px solid var(--color-line);}
aside .widget:first-child {border-top: 0;}
aside > *:last-child {margin-bottom: 0;}
  
aside .widget a {color: inherit;}  

.headwidget, .headwidget a {text-align: center; position: relative; margin-bottom: var(--bs-gutter-x);}

.headwidget:after {
    content: "";
    width: 60px;
    margin-left: -30px;
    height: 2px;
    background: var(--color-1);
    position: absolute;
    bottom: -5px;
    left: 50%;
}

aside .widget > ul, aside .widget > ol, .textwidget > ul {padding: 0 0 0 30px;}
aside .widget > ul li, aside .widget > ol li {margin-bottom: 7px;}

@media (max-width: 1200px) { aside {display: none;} }


/* Подвал */

body > footer {position: relative; z-index: 1000; background: var(--color-4); color: #fff; padding: 5rem 0 2rem; margin-top: auto;}

body > footer a {color: #fff;}
  
body > footer p {margin-bottom: var(--bs-gutter-x);}

body > footer i {color: var(--color-1);}

/* .contacts p {display: flex;}
.contacts p i {width: 10%; text-align: center;}
.contacts p span {width: 90%;} */

body > footer ul {padding-left: 20px;}
body > footer li {list-style: none; margin-bottom: 7px; text-align: left;}
body > footer li:last-child {margin-bottom: 0;}

body > footer li a:before {
    content: "\ec1b";
    font-family: "icomoon";
    color: var(--color-1);
    display: inline-block;
    margin-left: -20px;
    width: 20px;
	font-size: 0.8rem;
}

body > footer ul.sub-menu, body > footer ul.children {display: none;}

body > footer .social {font-size: 1.8rem; display: flex; justify-content: center;}


.foot-contacts {
    justify-content: space-between;
    margin-bottom: 30px;
}

.foot-contacts .image-link {flex: 0 0 200px;}
.foot-contacts .image-last {flex: 0 0 85px;}


body > footer .footer-info {font-size: 0.8rem; text-align: right; color: #dddddda8;}



/* плавное изменение прозрачности  placeholder-а при фокусе */
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder       {opacity: 1; transition: opacity 0.3s ease;}
input::-moz-placeholder, textarea::-moz-placeholder                {opacity: 1; transition: opacity 0.3s ease;}
input:-moz-placeholder, textarea:-moz-placeholder                 {opacity: 1; transition: opacity 0.3s ease;}
input:-ms-input-placeholder, textarea:-ms-input-placeholder            {opacity: 1; transition: opacity 0.3s ease;}

input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder {opacity: 0; transition: opacity 0.3s ease;}
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder        {opacity: 0; transition: opacity 0.3s ease;}
input:focus:-moz-placeholder, textarea:focus:-moz-placeholder           {opacity: 0; transition: opacity 0.3s ease;}
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder      {opacity: 0; transition: opacity 0.3s ease;}

/* Текст предназначен только для чтения с экрана */
.screen-reader-text {clip: rect(1px, 1px, 1px, 1px); position: absolute !important;	height: 1px; width: 1px; overflow: hidden;}





a#Go_Top {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    font-weight: 500;
    grid-area: up;
    font-size: 1.8rem;
    line-height: 1.2;
    cursor: pointer;
    margin: 15px 0 30px;
}

a#Go_Top svg {
    width: 20px;
    height: 20px;
    fill: #fff;
    transition: all 0.2s ease;
	-o-transition: all 0.2s;
	-webkit-transition: all 0.2s ease 0s;
}

a#Go_Top:hover {
    color: var(--color-1);
}

a#Go_Top:hover svg {
    fill: var(--color-1);
}







/* Анимации */

.hidden {opacity: 0;}
.animated{animation-duration:1s;animation-fill-mode:both}
.animated.infinite{animation-iteration-count:infinite}
.animated.hinge{animation-duration:2s}

@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
.fadeIn{animation-name:fadeIn}

@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,25%,0)}to{opacity:1;transform:none}}
.fadeInUp{animation-name:fadeInUp}

@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-25%,0,0)}to{opacity:1;transform:none}}
.fadeInLeft{animation-name:fadeInLeft}

@keyframes fadeInRight{0%{opacity:0;transform:translate3d(25%,0,0)}to{opacity:1;transform:none}}
.fadeInRight{animation-name:fadeInRight}

@keyframes pulse{0%{transform:scaleX(1)}50%{transform:scale3d(1.05,1.05,1.05)}to{transform:scaleX(1)}}
.pulse{animation-name:pulse}


