/*
Theme Name: Reboot Child
Theme URI: https://wpshop.ru/themes/reboot
Author: WPShop.biz
Author URI: http://wpshop.biz/
Template: reboot
Version: 1.0.0
*/

/* Below you can add your CSS styles */
/* Ниже Вы можете добавить свои CSS стили */

/*Стилизуем контактную форму в сайдбаре*/
a:active, a:focus, a:hover {
    color: #e03434;
}
.sidebar-menu{
    margin:0;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar {
    border: unset;
    padding: unset;
    background-color: #fff;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar .menu-item-has-children{
    padding-right: 0;
        border: unset;
}

.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar .menu-item-has-children .sub-menu {
    background: #fff;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li:hover{
    background-color: rgba(0,0,0,.05);
    border:unset;
    
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a:hover,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link:hover{
    color: #e03434;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.menu-item-has-children:after{
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;
    height: 20px;
    margin-top: 1rem;
    padding:0;
    background: none;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.menu-item-has-children:hover:after {
    color:#e03434;
        
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.menu-item-has-children.open:after {
    transform: rotate(180deg);
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link{
    width: 100%;
    padding: 1rem;
   
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li:not(:first-child){
    border-top:1px solid #e7e7e7;
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a:after,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width:0;
    height:100%;
    background: rgba(0,0,0,.05);
    -webkit-transition: all .2s;
    -o-transition: all .2s;
    transition: all .2s;

}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a:hover:after,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link:hover:after{
    
   /* width:100%;*/
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a:before,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link:before{
    top: 25%;
    height: 100%;
    background-color: #e03434;
    left: 0;
    transform: scaleY(.5) translateZ(0);

}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li a:hover:before,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .removed-link:hover:before{
    top:0;
     transform: scaleY(1) translateZ(0);
}

.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.current_page_item > a:before,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.current_page_item > .removed-link:before{
    -webkit-transform: scaleY(1) translateZ(0);
    transform: scaleY(1) translateZ(0);
    top:0;
    
}
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.current_page_item  > a,
.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li.current_page_item  > .removed-link{
    color: #e03434;
}


.sidebar-menu .menu-menu_sidebar-container #menu-menu_sidebar li .sub-menu{
    padding-left:1rem;
}
.sidebar-form{
    box-shadow: 0 3px 63px 0 rgb(40, 40 ,40 ,.11);
    padding:1rem;
    margin:0;
}
.input, input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=range], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {
    width: 100%;
    padding:.5rem;
    
    background-color:#fff;
    border-radius: .15rem;
   
}

.sidebar-form .widget-header{
    
}
.sidebar-form .textwidget .wpcf7 .wpcf7-form label{
    
    margin-bottom: 0;
}
.sidebar-form .textwidget .wpcf7 .wpcf7-form label .wpcf7-not-valid-tip{
   
    font-size:.8rem;
}
.sidebar-form .textwidget .wpcf7 .wpcf7-form div.wpcf7-validation-errors,
.sidebar-form .textwidget .wpcf7 .wpcf7-form div.wpcf7-acceptance-missing{
    border:unset;
    padding:0.5rem;
    margin:2rem 0 0 0;
    color:red;
    font-size:.8rem;
    background-color:rgba(0,0,0, .2);
    border-radius: 0.15rem;
 }
.input:focus, input[type=color]:focus, input[type=date]:focus, input[type=datetime-local]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=month]:focus, input[type=number]:focus, input[type=password]:focus, input[type=range]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=url]:focus, input[type=week]:focus, select:focus, textarea:focus {
    border-color: rgba(0,0,0, .3);
    background-color:#f8f8f8;
   
}
.btn {
  color: #fff;
  text-decoration: none;
  margin: 0;
  border: 1px solid #fff;
  border-radius: 0.15rem;
  border-color: rgba(0,0,0, .3);
    background-color:rgba(224, 52, 52, 1);
  padding:.5rem;
   position: relative;
  top: 0;
  transition: all 300ms ease-in-out;
  box-shadow: 0 0.2em rgba(0, 0, 0, 0.5), 0 0.5em rgba(0, 0, 0, 0);

}

.btn:hover {
  background-color:rgba(224, 52, 52, 1);
  box-shadow: 0 0.2em rgba(0, 0, 0, 0.5), 0 0.5em rgba(0, 0, 0, 0);
}

.btn.b-2:active {
  top: 0.6em;
  box-shadow: 0 0.2em rgba(0, 0, 0, 0.5);
}
.sidebar-call{
    padding:1rem;
    background: #26252d;
}
.call .call-item:not(:last-child){
    margin-bottom:.5rem;
}
.call .call-item{
    color: #fff;
    font-size: .9rem;
     -webkit-transition: all .1s;
    -o-transition: all .1s;
    transition: all .1s;
    display:flex;
    align-items:center;
    justify-content:flex-start;
}
.call .call-item:hover{
    text-decoration:unset;
}
.call .call-item img{
     -webkit-transition: all .1s;
    -o-transition: all .1s;
    transition: all .1s;
    width:1.25rem;
    height:1.25rem;
}
.call .call-item span{
    margin-left:1rem;
    -webkit-transition: all .1s;
    -o-transition: all .1s;
    transition: all .1s;
}
.mobile-fixed{
    position:fixed;
    bottom:1rem;
    left:1rem;
    display: none;
}
.mobile-fixed .call .call-item:not(:last-child){
    margin-bottom:1rem;
}
.mobile-fixed .call .call-item img{
    width:2.5rem;
    height:2.5rem; 
}
@media (max-width: 992px){
    .mobile-fixed{
        display: block;
    }
}
.main-navigation-wrap{
    margin-bottom: 0;
    background-color: rgba(38,37,45, .2);
}
.standart .main-navigation-wrap{
    background-color: rgba(38,37,45, .8); 
}
.main-navigation-wrap .main-navigation {
    background:none;
    color:#fff;
}
.main-navigation-wrap .main-navigation .menu .menu-item > a{
    color:#fff;
}
.main-navigation-wrap .main-navigation .menu .menu-item .sub-menu .menu-item > a{
    color:#000;
}


.site-header{
    margin-bottom:0; 
    /*background-image: url("/wp-content/uploads/2021/09/business-concept-min.jpg");*/
    background-size:cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: unset;
    color:#fff;
    padding:0;
}
.site-header:before{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    content:unset;
    background-color:rgba(38,37,45, .65);
}
.header-html-2{
    padding:1rem 1rem 0 1rem;
    background-color:rgba(0,0,0, .65);
    width: 350px;
}
span.wpcf7-not-valid-tip{
   font-size: .8rem; 
}
div.wpcf7-validation-errors,div.wpcf7-acceptance-missing {
    border: unset;
    color: red;
    font-size: .8rem;
    margin:1rem 0;
    background-color: rgba(0,0,0,.2);
    padding:0 1rem;
}
.wrap-2{
    background-color:#fff;
    padding:1rem;
    border-radius: 0.15rem;
}
.wrap-2 .title{
        font-size: 1.4em;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 2rem;
    text-align:center;
}
.wrap-2 .title span{
    color:#e03434;
}

.wrap-2 .widget-header{
    margin-bottom:0;
}

.wrap-2 .desc-header{}
.breadcrumb a, .breadcrumb span {
    color: #c7c7c7;
    text-transform: uppercase;
    font-weight: 100;
}
.breadcrumb a, .breadcrumb span {
    color: #c7c7c7;
}
.breadcrumb a:hover{
    color: #e03434;
}

.site-description {
        margin: 0;
    width: 60%;
}
.entry-title {
    margin-top: 0;
    color:#fff;
        font-size: 2.8375em;
}
article .entry-title {
    color:#26252d;
}
.header-left-desc{
    color:#fff;
        margin-bottom: 2rem;
}
@media (min-width: 768px){
    .site-header-inner {
        -webkit-box-align: flex-end;
        -ms-flex-align: flex-end;
        align-items: flex-end;
    }

    .h1, h1 {
        margin-bottom: 0.25em;
    }
}

.main-navigation {
    position: relative;
    margin-bottom: 0;
}
.header-image-main{
    display:block;
    width:100%;
    height:auto;
    background-size:cover;
    background-repeat:no-repeat;
    background-position:center;
    position:relative;
}
.header-image-main:before{
    content:'';
    width:100%;
    height:100%;
    background-color:rgba(38,37,45, .8);
    position:absolute;
    top:0;
    left:0;
}
.header-image-main-wrap{
    padding: 3.5rem 0;
    height: 100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.header-image-main-left{
    width:60%;
}
.header-image-main-right{
    width:30%;
}
.action-btn{
    padding:1rem 0;
    display:flex;
    align-items:center;
    justify-content:flex-start;

}
.action-btn .element-act:not(:last-child){
    margin-right:1rem;
}
.action-btn .element-act{
     font-weight:700;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    max-width:220px;
    line-height: 1;
    text-decoration:unset;
    padding: 1rem;
    color:#fff;
    border-radius: 0.15rem;
}
.action-btn .element-act:hover{
    color:#fff;
}
.action-btn .element-act .icon{
    width:2rem;
    height:2rem;
    display: flex;
    align-items:center;
    justify-content:center;
    border-radius:100%;
    background-color:#fff;
    margin-right:15px;
}

.action-btn .element-act label{
    display:block;
    font-weight:100;
}
.action-btn .element-act .icon>svg{
    width:100%;
    height:100%;
    width:1rem;
    height:1rem;
}

.action-btn .element-act.phone{
    background-color:#e03434;
}

.action-btn .element-act.phone .icon>svg path{
    fill:#e03434;
}

.action-btn .element-act.telegram{
    background-color:#039be5;
}
.action-btn .element-act.telegram .icon>svg path{
    fill:#039be5;
}

.action-btn .element-act.whatsapp{
    background-color:#4caf50;
}
.action-btn .element-act.whatsapp .icon>svg path{
    fill:#4caf50;
}
.site-header-inner {
    align-items:center;
}
.header-top ul{
    display: flex;
    align-items:center;
    justify-content:flex-start;
}
.header-top ul:not([class]):before {
    content: unset;
}
.header-top ul li{
    list-style:none;
    margin:0 0 0 2rem;
    font-size:1rem;
    color: #000;
}

.header-top ul li label{
    display: flex;
    align-items:center;
    justify-content:flex-start;
    font-weight:700;
        margin-bottom: 0;
}
.header-top ul li .icon{
    line-height: 0;
    margin-right: .35rem;
}
.header-top ul li .icon svg{
    width:1rem;
    height:1rem;
    fill:#e03434;
}
.main-navigation-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.main-navigation-inner .menu-top_menu-container{
    width: 60%;
}
.main-navigation-inner .header-top{
    
      width: 40%;
}
.main-navigation-inner .header-top ul{
    justify-content:flex-end;
}
.main-navigation-inner .header-top ul li a{
    color:#fff;
}
.main-navigation-inner .header-top ul li a:hover{
    color:#e03434;
    text-decoration:unset;
}
#site-navigation-mobile{
    display:none ;
}
.main-navigation ul.sub-menu li.current-menu-item{
   background-color:#f2f2f2;
   color:#111;
}
.standart .menu .current-menu-item,
.footer-element .menu .current-menu-item,
.sub-menu .removed-link{
    color:#ef5c5c;

}
.menu .current-menu-item,
.menu .menu-item:hover{
   /* border-top:2px solid #e03434;*/
  
}
.footer-element-content{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-weight: 700;
}
.footer-element .footer-element-title{
    font-size: 1.5625em;
    font-weight:700;
    color:#fff;
    margin-bottom:2rem;
    
}
.footer-element ul{
    margin:0;
    padding:0;
    list-style:none;
}
.footer-element ul li{
    margin:0 0 1rem 0;

}
.footer-element ul li.menu-item:hover {
    border-top: unset
}
.footer-element ul li .logo{
      width: 211px;

}
.footer-element-ul{
 margin: 2rem 0 0;
}
.footer-element .footer-element-ul li {
    list-style: none;
    margin: 0 0 1rem 2rem;
    font-size: 1rem;
    color:#fff;
}
.footer-element-ul li label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-weight: 700;
    margin-bottom: 0;
    
}
.footer-element-ul li label .icon {
    line-height: 0;
    margin-right: .35rem;
}
.footer-element-ul li label .icon svg {
    width: 1rem;
    height: 1rem;
    fill: #e03434;
}
.footer-element ul li a:hover {
    text-decoration: none;
    color:#fff;
}


.go-act {
    position:relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin:2.5rem 0 2.5rem 0;
    padding:2.5rem;
    box-shadow: 0 3px 63px 0 rgba(40, 40 ,40 , .11);
    border-bottom: 3px solid #e03434;
}

.go-act .go-act-element:first-child .go-act-info{
    max-width: 320px;
    width: 100%;
    z-index: 1;
    transform: translate(35px,-50%);
    position: absolute;
    top: 50%;
    left: 25px;
    box-shadow: 0 3px 63px 0 rgba(40, 40, 40 , .44);
    padding:1rem;

    background:#fff;
}
.go-act .go-act-element:first-child .go-act-info ul li{
    margin-bottom:1rem;
}
.go-act .go-act-element:first-child {
    width:60%;
}
.go-act .go-act-element:last-child {
    width:35%;
}
.go-act .go-act-element:last-child .wrap-2{
    
    background-color: #fff;
}
.go-act .go-act-element:last-child .wrap-2 .title{
        margin-bottom: 1rem;
}

@media (max-width: 1200px){
    .main-navigation-inner .menu-top_menu-container {
        width: 70%;
    }
    .site-description {
        font-size: .8rem;
        margin: 1rem 0;
        width: 100%;
    }
    .site-branding {
         width: 40%;
    }
    .header-top ul li {
        font-size: .8rem;
    }
   .action-btn .element-act {
        font-size: .7rem;
   }
   .entry-title {
        font-size: 2em;
    }
}
@media (max-width: 991px){
    .site-logotype {
        display:none;
    }
    .site-branding {
        width: 40%;
    }
    .site-header-inner .header-top{
        width:60%;
    }
  /*
    .site-description{
        display:none;
    }*/
    .site-header {
        position: fixed;
        width:100%;
        z-index:200;
        
    }
    header#masthead + div {
        margin-top: 64px;
    }
    .site-header.open{
        box-shadow: -10px 0 10px -4px rgba(38,37,45,.95);
    }
    .go-act {
        display:table;
        width:100%;
        padding: 0;
    }
    .go-act .go-act-element:first-child {
        width:100%;
    }
    .go-act .go-act-element:first-child .go-act-info{
        transform: translate(35px,0px);
        top: 40px;
        left: 15px;
    }
    .go-act .go-act-element:last-child {
        width: 55%;
        margin: 0 auto;
    }
    .go-act .go-act-element:first-child .go-act-info ul li {
        font-size: .9rem;
    }
     .footer-element ul {
        display:table;
        margin: 0 auto;
    }
    .footer-element .widget-title{
        text-align: center;
    }
    .footer-element-ul {
        margin: 1rem 0 0;
        padding-left: 1.5rem;
    }
    .footer-element-content {
        flex-wrap: wrap;
    }
    .footer-element-content .footer-element:first-child{
        width:50%;
    }
    .footer-element-content .footer-element:nth-of-type(2){
        width:50%;
    }
     .footer-element-content .footer-element:nth-of-type(3){
        width:50%;
    }
    .footer-element-content .footer-element:first-child ul {
        width: 50%;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
    }
    .footer-element-content .footer-element:first-child ul li:nth-of-type(3){
        width: 100%;
    }
    #vk_groups{
        margin:0 auto;
    }
     .header-top ul li:last-child {
        display:none;
    }
    .header-top ul {
        padding: 0;
        justify-content: flex-end;
    }
    .humburger {
        top: 32px;
    }
    .mobile-menu-placeholder.open {
        margin-top: 0;
    }
    .main-navigation-inner {
        display: table;
        width: 100%;
    }
  
    .header-top ul {
       /* display: table;*/
        margin-bottom:0;
    }
    .header-top ul li:first-child {
         display: block;
         margin-bottom:0;
    }
    .standart .menu .current-menu-item, .standart .menu .menu-item:hover {
        
        border-top: 2px solid #e03434;
    }
    
    .main-navigation-inner .menu-top_menu-container {
        width: 100%;
    }
    .standart .header-top{
        width: 100%;
    }
    
    .standart .header-top ul{
        display: table;
        width: calc(100% - 20px);
        margin: 0 0 2rem 20px;
    }
    .standart .header-top ul li{
        padding: 20px 0 10px;
        display: block; 
        margin:0;
        font-size: 1rem;
    }
    .standart .header-top ul li a {
        color: #000;
        text-decoration:unset;
    }
    .standart .header-top ul li:hover {
        border-top: 2px solid #e03434;
    }
    .go-act .go-act-element:last-child {
        width: 100%;
    }
    .header-image-main-wrap {
        display:table;
        width:100%;
    }
    .header-image-main {
        padding:2rem 0;    
        height: auto;
    }
    .header-image-main-left {
        width: 100%;
    }
    .header-image-main .site-content.fixed{
        height: auto !important;
    }
    .header-image-main-right {
        width: 50%;
        margin:0 auto;
    }
    .action-btn {
        flex-wrap:wrap;
        justify-content: center;
        align-items: flex-start;
    }
    .main-navigation ul li.menu-item-has-children:after{
        color:#e03434;
    }
   
}

@media (max-width: 768px){
   /* .header-top ul li:last-child,*/
    .header-top ul li:first-child {
        display:none;
    }
    .site-header-inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
    }
    .site-branding {
        width: 65%;
        text-align: left;
        padding-right: 0;
    }
    .site-header-inner .header-top {
        width: 35%;
    }
    .humburger {
    top: 24px;
}
    
}
@media (max-width: 660px){
    .footer-element-content .footer-element{
        margin-bottom:2rem;
    }
    .footer-element-content .footer-element:nth-of-type(4),
   .footer-element-content .footer-element:nth-of-type(3),
   .footer-element-content .footer-element:nth-of-type(2) {
        width: 100%;
    }
    .footer-element-content .footer-element:first-child {
        width: 100%;
        display:table;
        /*align-items:flex-start;
        justify-content:flex-start;*/
    }
    .footer-element-content .footer-element:first-child ul{
        width: 185px;
    }
    .footer-element-content .footer-element:first-child ul.footer-element-ul{
        width:60%;
     
    }
    .footer-element-content .footer-element:first-child ul.footer-element-ul li{
      
        display:table;
    }
     .footer-element-content .footer-element:first-child ul.footer-element-ul li:nth-of-type(3){
         width:170px;
         text-align: center;
     }
     .footer-element ul{
         width:60%;
     }
     .footer-element .widget-title {
        width: 60%;
        margin-left: auto;
        margin-right: auto;
        text-align:left;
     }
     .footer-element-ul li label {
           justify-content: flex-start;
     }
     .go-act-info .footer-element-ul li label{
         justify-content: flex-start;
     }
     .footer-element .footer-element-ul li{
         text-align: left;
        margin-left: 0;
    }
    .footer-element-content .footer-element:first-child ul li a{
        margin:0; 
    }
    .footer-element-content .footer-element:first-child ul:not([class]):before{
        content:unset;
    }
    .footer-element-content .footer-element:first-child ul li:nth-of-type(3) {
        width: auto;
    }
}
@media (max-width: 570px){
    .header-image-main-right {
        width: 100%;
    }
    .action-btn .element-act {
        margin-bottom:1rem;
    }
}
@media (max-width: 445px){
    .site-branding {
        padding-left: 36px;
        width: 60%;
    }
    .site-header-inner .header-top {
        width: 40%;
    }
    .humburger {
        width: 20px;
    }
    .go-act .go-act-element:first-child .go-act-info {
        transform: translate(0,0px);
        top: 40px;
        left: 0;
    }
    .header-top ul li {
    margin: 0 0 0 1rem;
    }
    .site-description,
    .header-top ul li {
        font-size: .75rem;
    }
}
@media (max-width: 356px){

    .action-btn .element-act {
        width:100%;
    }
    .action-btn .element-act:not(:last-child) {
        margin-right: 0;
    }
}


@media (min-width: 993px) {
    .main-navigation-inner {
        justify-content: flex-start;
    }
    .main-navigation-inner .menu-top_menu-container {
        width: 100%;
        flex: 1 1 auto;
    }
    #header_menu {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 2.2rem;
        width: 100%;
    }
    #header_menu > .menu-item {
        float: none;
        white-space: nowrap;
        margin: 0;
    }
    #header_menu > .menu-item > a,
    #header_menu > .menu-item > .removed-link,
    #header_menu > .menu-item > span.removed-link {
        white-space: nowrap;
    }
}











@media (min-width: 993px) {
    .home .elementor-element-a19232d .widget-articles--portfolio-home {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 3rem 2.5rem;
        align-items: start;
    }
}
@media (max-width: 992px) {
    .home .elementor-element-a19232d .widget-articles--portfolio-home .post-card__title {
        font-size: 1.65rem;
    }
    .home .elementor-element-a19232d .widget-articles--portfolio-home .post-card__description {
        font-size: 1rem;
    }
}


.home .widget-articles--portfolio-home {
    display: grid;
    grid-template-columns: 1fr;
    gap: 34px 0;
}
.home .widget-articles--portfolio-home .post-card {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
}
.home .widget-articles--portfolio-home .post-card__thumbnail {
    width: 100% !important;
    max-width: none !important;
    margin-bottom: 14px !important;
}
.home .widget-articles--portfolio-home .post-card__thumbnail img {
    display: block;
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 335 / 220;
    object-fit: cover;
    height: auto;
}
.home .widget-articles--portfolio-home .post-card__body {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
}
.home .widget-articles--portfolio-home .post-card__title {
    margin: 0 0 10px;
    font-size: 26px;
    line-height: 1.18;
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}
.home .widget-articles--portfolio-home .post-card__title a {
    text-decoration: none;
}
.home .widget-articles--portfolio-home .post-card__description {
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
@media (min-width: 993px) {
    body.home .elementor-element-a19232d {
        width: 100% !important;
        max-width: none !important;
    }
    .home .widget-articles--portfolio-home {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        column-gap: 36px;
        row-gap: 44px;
        align-items: start;
    }
}



/* Codex 2026-06-12: fine-tune service page text zone slightly to the right */
@media (min-width: 992px) {
    body.page-child.parent-pageid-1396.sidebar-right .site-content {
        width: calc(100% - 116px) !important;
        max-width: none !important;
        margin-left: 58px !important;
        margin-right: 58px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.page-child.parent-pageid-1396.sidebar-right #primary.content-area {
        padding-right: 24px !important;
    }

    body.page-child.parent-pageid-1396.sidebar-right #primary .entry-content {
        max-width: none !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Codex 2026-06-12: apply the same wider readable article layout to blog posts with right sidebar */
@media (min-width: 992px) {
    body.single-post.sidebar-right .site-content {
        width: calc(100% - 116px) !important;
        max-width: none !important;
        margin-left: 58px !important;
        margin-right: 58px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.single-post.sidebar-right #primary.content-area {
        padding-right: 24px !important;
    }

    body.single-post.sidebar-right #primary .entry-content {
        max-width: none !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Codex 2026-06-07: keep broken-link checker marks from crossing out content links */
.entry-content a.broken_link,
.entry-content .broken_link {
    text-decoration-line: underline !important;
    text-decoration-style: solid !important;
}

.entry-content a.broken_link *,
.entry-content .broken_link * {
    text-decoration-line: underline !important;
    text-decoration-style: solid !important;
}


/* Codex 2026-06-12: widen reviews page with right sidebar */
@media (min-width: 992px) {
    body.page-id-3080.sidebar-right .site-content {
        width: calc(100% - 116px) !important;
        max-width: none !important;
        margin-left: 58px !important;
        margin-right: 58px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.page-id-3080.sidebar-right #primary.content-area {
        padding-right: 24px !important;
    }

    body.page-id-3080.sidebar-right #primary .entry-content {
        max-width: none !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Codex 2026-06-12: widen footer layout and rebalance columns on large desktop */
@media (min-width: 1280px) {
    .site-footer .site-footer-inner.fixed {
        width: calc(100% - 160px) !important;
        max-width: 1600px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .site-footer .footer-element-content {
        display: grid !important;
        grid-template-columns: minmax(260px, 1.1fr) minmax(280px, 1.05fr) minmax(140px, 0.65fr) minmax(360px, 1.3fr) !important;
        column-gap: 72px !important;
        row-gap: 28px !important;
        align-items: start !important;
    }

    .site-footer .footer-element {
        width: auto !important;
        min-width: 0 !important;
    }

    .site-footer .footer-element:first-child {
        justify-content: flex-start !important;
    }

    .site-footer .footer-element:first-child ul.footer-element-ul {
        padding-left: 0 !important;
    }

    .site-footer #vk_groups {
        margin-left: 0 !important;
    }
}

/* Codex 2026-06-12: widen footer layout and rebalance columns on large desktop */
@media (min-width: 1280px) {
    .site-footer .site-footer-inner.fixed {
        width: calc(100% - 80px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    .site-footer .footer-element-content {
        display: grid !important;
        grid-template-columns: minmax(280px, 1.05fr) minmax(300px, 1.05fr) minmax(180px, 0.72fr) minmax(420px, 1.18fr) !important;
        column-gap: 56px !important;
        row-gap: 28px !important;
        align-items: start !important;
        width: 100% !important;
    }

    .site-footer .footer-element {
        width: auto !important;
        min-width: 0 !important;
    }

    .site-footer .footer-element:first-child {
        justify-content: flex-start !important;
    }

    .site-footer .footer-element:first-child ul.footer-element-ul {
        padding-left: 0 !important;
    }

    .site-footer #vk_groups {
        margin-left: 0 !important;
    }
}

/* Codex 2026-06-12: widen footer layout and rebalance columns on large desktop */
@media (min-width: 1280px) {
    .site-footer .site-footer-inner.fixed {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .site-footer .footer-element-content {
        display: grid !important;
        grid-template-columns: minmax(300px, 1.02fr) minmax(320px, 1.04fr) minmax(200px, 0.72fr) minmax(420px, 1.12fr) !important;
        column-gap: 36px !important;
        row-gap: 28px !important;
        align-items: start !important;
        width: 100% !important;
    }

    .site-footer .footer-element {
        width: auto !important;
        min-width: 0 !important;
    }

    .site-footer .footer-element:first-child {
        justify-content: flex-start !important;
    }

    .site-footer .footer-element:first-child img,
    .site-footer .footer-element:first-child svg {
        max-width: 100% !important;
    }

    .site-footer .footer-element:first-child ul.footer-element-ul {
        padding-left: 0 !important;
    }

    .site-footer .footer-element:nth-child(3) .widget-title,
    .site-footer .footer-element:nth-child(3) .footer-element-ul {
        width: 100% !important;
    }

    .site-footer .footer-element:nth-child(3) .footer-element-ul li {
        margin-left: 0 !important;
    }

    .site-footer #vk_groups {
        margin-left: 0 !important;
    }
}

/* Codex 2026-06-12: widen footer layout and rebalance columns on large desktop */
@media (min-width: 1280px) {
    .site-footer .site-footer-inner.fixed {
        width: calc(100% - 24px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .site-footer .footer-element-content {
        display: grid !important;
        grid-template-columns: 320px 360px 220px 320px !important;
        justify-content: space-between !important;
        column-gap: 0 !important;
        row-gap: 28px !important;
        align-items: start !important;
        width: 100% !important;
    }

    .site-footer .footer-element {
        width: auto !important;
        min-width: 0 !important;
    }

    .site-footer .footer-element:first-child {
        justify-content: flex-start !important;
        justify-self: start !important;
    }

    .site-footer .footer-element:first-child img,
    .site-footer .footer-element:first-child svg {
        max-width: 100% !important;
    }

    .site-footer .footer-element:first-child ul.footer-element-ul {
        padding-left: 0 !important;
    }

    .site-footer .footer-element:nth-child(3) .widget-title,
    .site-footer .footer-element:nth-child(3) .footer-element-ul {
        width: 100% !important;
    }

    .site-footer .footer-element:nth-child(3) .footer-element-ul li {
        margin-left: 0 !important;
    }

    .site-footer .footer-element:nth-child(4) {
        justify-self: end !important;
        width: 320px !important;
    }

    .site-footer #vk_groups {
        margin-left: auto !important;
        margin-right: 0 !important;
    }
}

/* Codex 2026-06-22: widen parent services page content area next to the sidebar */
@media (min-width: 992px) {
    body.page-id-1396.sidebar-right .site-content {
        width: calc(100% - 116px) !important;
        max-width: none !important;
        margin-left: 58px !important;
        margin-right: 58px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.page-id-1396.sidebar-right #primary.content-area {
        padding-right: 24px !important;
    }

    body.page-id-1396.sidebar-right #primary .entry-content {
        max-width: none !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* Codex 2026-07-16: keep single-post comments below article and sidebar on desktop */
@media (min-width: 992px) {
    body.single-post.sidebar-right .site-content-inner {
        align-items: flex-start !important;
        flex-wrap: wrap !important;
    }

    body.single-post.sidebar-right #primary.content-area {
        order: 1 !important;
        flex: 0 0 calc(100% - 300px) !important;
        max-width: calc(100% - 300px) !important;
        min-width: 0 !important;
    }

    body.single-post.sidebar-right #secondary.widget-area {
        order: 2 !important;
        flex: 0 0 300px !important;
        width: 300px !important;
        max-width: 300px !important;
        min-width: 0 !important;
    }

    body.single-post.sidebar-right .site-content-inner > #comments.comments-area {
        order: 3 !important;
        flex: 0 0 calc(100% - 300px) !important;
        width: calc(100% - 300px) !important;
        max-width: calc(100% - 300px) !important;
        box-sizing: border-box !important;
        padding-right: 24px !important;
        margin-top: 32px !important;
    }
}

/* Codex 2026-07-16: explicit desktop grid for single posts with right sidebar */
@media (min-width: 992px) {
    body.single-post.sidebar-right .site-content-inner {
        display: grid !important;
        grid-template-columns: minmax(0, calc(100% - 300px)) 300px !important;
        column-gap: 0 !important;
        align-items: start !important;
    }

    body.single-post.sidebar-right #primary.content-area {
        grid-column: 1 !important;
        grid-row: 1 !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    body.single-post.sidebar-right #secondary.widget-area {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 300px !important;
        max-width: 300px !important;
        min-width: 0 !important;
    }

    body.single-post.sidebar-right .site-content-inner > #comments.comments-area {
        grid-column: 1 !important;
        grid-row: 2 !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        padding-right: 24px !important;
        margin-top: 32px !important;
    }
}

/* spb-home-sidebar-grid-like-uslugi-20260725 */
@media (min-width: 992px) {
  body.home.page-id-181.sidebar-right #page.site,
  body.home.page-id-181.sidebar-right #content.site-content {
    overflow: visible !important;
  }
  body.home.page-id-181.sidebar-right #content.site-content.fixed {
    display: grid !important;
    grid-template-columns: minmax(0, calc(100% - 330px)) 300px !important;
    column-gap: 30px !important;
    align-items: stretch !important;
    width: calc(100% - 116px) !important;
    max-width: none !important;
    margin-left: 58px !important;
    margin-right: 58px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.home.page-id-181.sidebar-right #content .site-content-inner {
    display: contents !important;
  }
  body.home.page-id-181.sidebar-right #primary.content-area {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    padding-right: 24px !important;
    overflow: visible !important;
    position: relative !important;
    z-index: auto !important;
  }
  body.home.page-id-181.sidebar-right #secondary.widget-area {
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 300px !important;
    max-width: 300px !important;
    min-width: 0 !important;
    position: relative !important;
    top: 0 !important;
    align-self: stretch !important;
    height: auto !important;
    padding-top: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    z-index: auto !important;
  }
  body.home.page-id-181.sidebar-right #secondary .sticky-sidebar,
  body.home.page-id-181.sidebar-right #secondary .js-sticky-sidebar {
    position: static !important;
    top: auto !important;
    width: 300px !important;
    max-width: 300px !important;
    min-height: 100% !important;
    overflow: visible !important;
  }

  body.home.page-id-181.sidebar-right #secondary #text-9.sidebar-form {
    position: sticky !important;
    top: 18px !important;
    z-index: 20 !important;
  }
  body.home.page-id-181.sidebar-right #secondary #custom_html-5.sidebar-call {
    position: sticky !important;
    top: 424px !important;
    z-index: 19 !important;
  }
  body.home.page-id-181.sidebar-right #primary .entry-content,
  body.home.page-id-181.sidebar-right #main.site-main,
  body.home.page-id-181.sidebar-right .elementor-181 {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.home.page-id-181.sidebar-right #primary .elementor-section,
  body.home.page-id-181.sidebar-right #primary .elementor-container,
  body.home.page-id-181.sidebar-right #primary .elementor-column,
  body.home.page-id-181.sidebar-right #primary .elementor-widget-wrap,
  body.home.page-id-181.sidebar-right #primary .elementor-widget,
  body.home.page-id-181.sidebar-right #primary .elementor-widget-container,
  body.home.page-id-181.sidebar-right #primary .portfolio-home-v4,
  body.home.page-id-181.sidebar-right #primary .portfolio-home-v4__grid {
    max-width: 100% !important;
    min-width: 0 !important;
  }
  body.home.page-id-181.sidebar-right #primary .elementor-element-07aabfc {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    left: auto !important;
  }
  body.home.page-id-181.sidebar-right #primary .portfolio-home-v4__grid,
  body.home.page-id-181.sidebar-right #primary .elementor-element-a19232d .widget-articles--portfolio-home {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 28px !important;
    row-gap: 40px !important;
  }
}
@media (max-width: 991px) {
  body.home.page-id-181 #content .site-content-inner {
    display: block !important;
  }
  body.home.page-id-181 #secondary.widget-area {
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* /spb-home-sidebar-grid-like-uslugi-20260725 */





/* spb-global-sidebar-sticky-20260731
   Keep the standard right sidebar visible on desktop articles, archives and inner pages. */
@media (min-width: 992px) {
  html body.sidebar-right:not(.home) #page.site,
  html body.sidebar-right:not(.home) #content.site-content,
  html body.sidebar-right:not(.home) #content.site-content .site-content-inner,
  html body.sidebar-right:not(.home) #content.site-content #primary.content-area,
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area {
    overflow: visible !important;
  }
  html body.sidebar-right:not(.home) #content.site-content .site-content-inner {
    align-items: stretch !important;
  }
  html body.sidebar-right:not(.home) #content.site-content #primary.content-area {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area {
    grid-column: 2 !important;
    grid-row: 1 / span 20 !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    align-self: stretch !important;
    height: auto !important;
    min-height: 100% !important;
    margin-bottom: 0 !important;
    z-index: auto !important;
  }
  html body.sidebar-right:not(.home) #content.site-content #related-posts {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    position: sticky !important;
    top: -120px !important;
    width: 300px !important;
    max-width: 300px !important;
    z-index: 20 !important;
  }
}
@media (max-width: 991px) {
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area,
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    position: static !important;
    top: auto !important;
    width: auto !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    margin-bottom: 0 !important;
  }
}
/* /spb-global-sidebar-sticky-20260731 */

/* spb-global-sidebar-scroll-20260820 */
@media (min-width: 992px) {
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.sidebar-right:not(.home) #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    top: 20px !important;
    max-height: calc(100vh - 40px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
  }
}
/* /spb-global-sidebar-scroll-20260820 */

/* spb-page-6384-sidebar-align-20260905
   Restore the standard article/sidebar stop point for the construction permit service page. */
@media (min-width: 992px) {
  html body.page-id-6384.sidebar-right #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.page-id-6384.sidebar-right #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    top: -120px !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
/* /spb-page-6384-sidebar-align-20260905 */

/* spb-page-6384-wide-steps-20260905 */
@media (min-width: 992px) {
  html body.page-id-6384 .spb-rns-page .spb-rns-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 991px) {
  html body.page-id-6384 .spb-rns-page .spb-rns-steps {
    grid-template-columns: 1fr !important;
  }
}
/* /spb-page-6384-wide-steps-20260905 */

/* spb-page-6353-sidebar-align-20260906 */
@media (min-width: 992px) {
  html body.page-id-6353.sidebar-right #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.page-id-6353.sidebar-right #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    top: -120px !important;
    max-height: none !important;
    overflow: visible !important;
  }
}
/* /spb-page-6353-sidebar-align-20260906 */

/* spb-post-3581-sidebar-final-align-20260907 */
@media (min-width: 992px) {
  html body.single-post.postid-3581.sidebar-right #content.site-content #secondary.widget-area,
  html body.single-post.postid-3581.sidebar-right #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.single-post.postid-3581.sidebar-right #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    overflow: visible !important;
    max-height: none !important;
  }

  html body.single-post.postid-3581.sidebar-right #content.site-content #secondary.widget-area > .sticky-sidebar,
  html body.single-post.postid-3581.sidebar-right #content.site-content #secondary.widget-area > .js-sticky-sidebar {
    position: sticky !important;
    top: -120px !important;
    width: 300px !important;
    max-width: 300px !important;
    z-index: 20 !important;
  }
}
/* /spb-post-3581-sidebar-final-align-20260907 */
