﻿/*
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
*/
/*Deems FAQ css*
.container {
  margin: 5px auto;
  display: block;
}
.container .nice-header {
  margin-bottom: 20px;
  font-weight: bold;
  position: relative;
}
.container .nice-header .sub {
  color: #676767;
  position: absolute;
  top: -20px;
  right: 0;
  font-family: Georgia, serif;
  font-size: 13pt;
  font-weight: normal;
  font-style: italic;
  text-decoration: none;
}
.container .nice-header .sub:hover {
  text-decoration: underline;
  color: #000;
}
.container .faq {
  width: 100%;
  position: relative;
}
.container .faq-questions {
  list-style: none;
}
.container .faq-questions, .container .faq-questions > li {
width: 100%;
    display: block;
    padding: 5px;
    margin: 9px 0;

}
.container .faq-questions > li:nth-child(odd) {
  background-color: #E8E8E8;
}
.container .faq-questions > li:nth-child(even) {
  background-color: #D8D8D8;
}
.container .faq-questions > li h4.faq-question, .container .faq-questions > li faq-question {
  font-size: 12pt;
  font-weight: bold;
  color: #4E4E4E;
  cursor: pointer;
}
.container .faq-questions > li p.faq-answer, .container .faq-questions > li .faq-asnwer {
  line-height: 1.5;
  margin-top: 7px;
  display: none;
}
.container .faq-questions > li p.faq-answer:hover, .container .faq-questions > li .faq-asnwer:hover {
  color: #000;
}
.faq-border{    
    border-radius: 3px;
    border: 1px solid #d8d8d8;
    box-shadow: 0 3px 0 0 #c7c5c5, 0 3px 9px 0 #999;}
/*Deems FAQ css*/
/* Below you can add your CSS styles */
/* Ниже Вы можете добавить свои CSS стили */
.removed-link {
    cursor: default;
}
@media (min-width: 768px) {
.contact-form .field-contact-message, .contact-form .field-contact-subject, .contact-form .field-contact-email, .contact-form .field-contact-name, .contact-form .field-contact-phone {
    width: 85%;
   }
}
@media (min-width: 1200px) {
.fixed.site-content {
        max-width: 95%;
    }
}
@media (min-width: 768px) {
.fixed.site-content {
        max-width: 100%;
    }
}

/* SOLUTIO CATEGORY BOTTOM CONTENT START */

/*
 * Нижний Gutenberg-контент расположен после списка записей
 * и пагинации. Сбрасываем float и ограничения архивной сетки.
 */
body.category .solutio-category-content--bottom {
clear: both !important;
display: block !important;
float: none !important;
position: relative !important;

width: 100% !important;
max-width: 100% !important;
height: auto !important;
min-height: 1px !important;

margin: 40px 0 0 !important;
padding: 0 !important;

overflow: visible !important;
visibility: visible !important;
opacity: 1 !important;

z-index: 1;
}

body.category .solutio-category-content--bottom::before,
body.category .solutio-category-content--bottom::after {
display: table;
clear: both;
content: "";
}

body.category .solutio-category-content--bottom > * {
max-width: 100%;
}

body.category .solutio-category-content--bottom .wp-block-table {
display: block;
width: 100%;
overflow-x: auto;
}

/* SOLUTIO CATEGORY BOTTOM CONTENT END */

/* SOLUTIO SERVICES MENU START */

/* Desktop: services dropdown in two columns */
@media (min-width: 992px) {
    .solutio-mega-menu > .sub-menu {
        column-count: 2 !important;
column-gap: 24px !important;
        width: 820px !important;
        max-width: calc(100vw - 40px) !important;
        padding: 8px 0 !important;
        left: 0 !important;
        right: auto !important;
        transform: none;
    }

    .solutio-mega-menu > .sub-menu > li {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    .solutio-mega-menu > .sub-menu > li > a {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    line-height: 1.35 !important;
    }
}

/* Mobile: services submenu in two columns */
@media (max-width: 991px) {
    .solutio-mega-menu > .sub-menu {
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .solutio-mega-menu > .sub-menu > li {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
    }

    .solutio-mega-menu > .sub-menu > li > a {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    line-height: 1.35 !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
    }
}

/* SOLUTIO SERVICES MENU END */

/* SOLUTIO MEGA MENU ALL SERVICES CTA START */

@media (min-width: 992px) {

    .solutio-mega-menu > .sub-menu > .solutio-mega-menu__all {
        display: block !important;
        width: 100% !important;

        column-span: all;
        break-inside: avoid;

        margin: 8px 0 0 !important;
        border-top: 1px solid #e8e8e8;
        background: #f7f7f7;
    }

    .solutio-mega-menu > .sub-menu > .solutio-mega-menu__all > a {
        display: block !important;
        width: 100% !important;

        box-sizing: border-box;
        padding: 14px 24px !important;

        text-align: center;
        font-weight: 700;
        white-space: normal !important;
    }

    .solutio-mega-menu > .sub-menu > .solutio-mega-menu__all > a:hover {
        background: #f0f0f0;
    }
}

/* SOLUTIO MEGA MENU ALL SERVICES CTA END */

/* SOLUTIO CHILD CATEGORY CARDS START */

.child-categories--cards {
    margin: 28px 0 36px;
}

.child-categories__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.child-category-card {
    display: flex;
    flex-direction: column;

    min-width: 0;
    height: 100%;

    overflow: hidden;

    border: 1px solid #e5e5e5;
    border-radius: 3px;

    background: #fff;

    color: inherit;
    text-decoration: none !important;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.child-category-card:hover {
    transform: translateY(-2px);
    border-color: #d5d5d5;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .08);

    color: inherit;
    text-decoration: none !important;
}

.child-category-card__media {
    display: block;

    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: #f3f3f3;
}

.child-category-card__image {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .25s ease;
}

.child-category-card:hover .child-category-card__image {
    transform: scale(1.025);
}

.child-category-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;

    padding: 20px 20px 22px;
}

.child-category-card__title {
    display: block;

    margin: 0;

    font-size: 18px;
    font-weight: 700;
    line-height: 1.35;

    color: #222;
}

.child-category-card__description {
    display: block;

    margin-top: 10px;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;

    color: #666;
}

@media (max-width: 1100px) {

    .child-categories__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {

    .child-categories--cards {
        margin: 22px 0 30px;
    }

    .child-categories__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .child-category-card__body {
        padding: 17px 18px 19px;
    }

    .child-category-card__title {
        font-size: 17px;
    }
}

/* SOLUTIO CHILD CATEGORY CARDS END */

/* SOLUTIO CATEGORY TOP CONTENT WIDTH START */

body.category .solutio-category-content--top {
    clear: both !important;
    display: block !important;
    float: none !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 1px !important;

    margin: 0 0 32px !important;
    padding: 0 !important;

    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.category .solutio-category-content--top::before,
body.category .solutio-category-content--top::after {
    display: table;
    clear: both;
    content: "";
}

body.category .solutio-category-content--top > * {
    max-width: 100%;
}

body.category .solutio-category-content--top .wp-block-table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

/* SOLUTIO CATEGORY TOP CONTENT WIDTH END */

/* SOLUTIO CATEGORY TOP CONTENT WIDTH START */

body.category .solutio-category-content--top {
    clear: both !important;
    display: block !important;
    float: none !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 1px !important;

    margin: 0 0 32px !important;
    padding: 0 !important;

    overflow: visible !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body.category .solutio-category-content--top::before,
body.category .solutio-category-content--top::after {
    display: table;
    clear: both;
    content: "";
}

body.category .solutio-category-content--top > * {
    max-width: 100%;
}

body.category .solutio-category-content--top .wp-block-table {
    display: block;
    width: 100%;
    overflow-x: auto;
}

/* SOLUTIO CATEGORY TOP CONTENT WIDTH END */

/* SOLUTIO HOME CHILD CATEGORY CARDS Z-INDEX FIX */
.section-block .child-categories--cards {
    position: relative;
    z-index: 1;
}

/* SOLUTIO WORKFLOW START */

.solutio-workflow__lead {
    margin-bottom: 24px;
}

.solutio-workflow__grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
}

.solutio-workflow__step {
    position: relative;

    margin: 0 !important;
    padding: 20px !important;

    list-style: none !important;

    border: 1px solid rgba(0, 0, 0, 0.18);
    border-radius: 8px;

    box-sizing: border-box;
}

.solutio-workflow__top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 18px;
}

.solutio-workflow__number {
    font-size: 32px;
    line-height: 1;
    font-weight: 400;
}

.solutio-workflow__arrow {
    font-size: 28px;
    line-height: 1;
}

.solutio-workflow__title {
    margin: 0 0 10px !important;

    font-size: 18px;
    line-height: 1.35;
    font-weight: 700;
}

.solutio-workflow__text {
    margin: 0 !important;
}

.solutio-workflow__cta {
    margin-top: 30px !important;
}

@media (max-width: 900px) {

    .solutio-workflow__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .solutio-workflow__arrow {
        display: none;
    }

}

@media (max-width: 600px) {

    .solutio-workflow__grid {
        grid-template-columns: 1fr !important;
    }

}

/* SOLUTIO WORKFLOW END */

/* SOLUTIO CONTACT COVER OUTER SPACING START */

/* Desktop / tablet */
.wp-block-cover.solutio-contact-cover {
    margin-top: 45px !important;
    margin-bottom: 45px !important;
}

/* Mobile */
@media (max-width: 700px) {
    .wp-block-cover.solutio-contact-cover {
        margin-top: 30px !important;
        margin-bottom: 30px !important;
    }
}

/* SOLUTIO CONTACT COVER OUTER SPACING END */

/* SOLUTIO HOME SECTIONS SPACING START */

/* Desktop */
@media (min-width: 768px) {

    body.home .section-block {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
    }

    body.home .section-html {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {

    body.home .section-block {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
    }

    body.home .section-html {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }
}

/* SOLUTIO HOME SECTIONS SPACING END */

/* SOLUTIO CONTACT CTA START */

.wp-block-cover.solutio-contact-cover {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    margin-top: 45px !important;
    margin-bottom: 45px !important;

    padding-top: 20px !important;
    padding-bottom: 20px !important;

    align-items: flex-start !important;
}

.wp-block-cover.solutio-contact-cover > .wp-block-cover__inner-container {
    width: 100% !important;

    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.solutio-contact-cover .wp-block-media-text {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    align-items: start !important;
}

.solutio-contact-cover .wp-block-media-text__content {
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.solutio-contact-cover #dopomoga {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
    scroll-margin-top: 90px;
}

.solutio-contact-cover .solutio-contact-intro {
    margin-top: 0 !important;
    margin-bottom: 18px !important;
}

.solutio-contact-cover textarea {
    height: 70px !important;
    min-height: 70px !important;
    max-height: 70px !important;
    resize: none;
}

@media (max-width: 700px) {

    .wp-block-cover.solutio-contact-cover {
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;

        margin-top: 30px !important;
        margin-bottom: 30px !important;

        padding-top: 18px !important;
        padding-bottom: 18px !important;
    }

    .wp-block-cover.solutio-contact-cover > .wp-block-cover__inner-container {
        min-height: 0 !important;
        height: auto !important;
    }

    .solutio-contact-cover .wp-block-media-text {
        min-height: 0 !important;
        height: auto !important;
    }

    .solutio-contact-cover textarea {
        height: 70px !important;
        min-height: 70px !important;
        max-height: 70px !important;
    }
}

/* SOLUTIO CONTACT CTA END */

/* SOLUTIO PRICE CARDS START */
.solutio-price-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 20px !important; align-items: stretch; }
.solutio-price-card { box-sizing: border-box; height: 100%; padding: 24px; background: #fff; border: 1px solid #e2e2e2; border-radius: 8px; display: flex; flex-direction: column; transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease; }
.solutio-price-card:hover { border-color: #c8c8c8; box-shadow: 0 6px 20px rgba(0, 0, 0, 0.07); transform: translateY(-2px); }

.solutio-price-card .wp-block-buttons { margin-top: auto; }

/* Планшет */ @media (max-width: 900px) { .solutio-price-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }

/* Телефон */ @media (max-width: 600px) {
	.solutio-price-grid { grid-template-columns: 1fr !important; gap: 16px !important; } 
	.solutio-price-card { padding: 20px; } } 

/* SOLUTIO PRICE CARDS END */
/* SOLUTIO GUTENBERG ACCORDION ANIMATION START */

@media (prefers-reduced-motion: no-preference) {
    .wp-block-accordion-panel.solutio-accordion-animating {
        overflow: hidden !important;
    }

    .wp-block-accordion-panel.solutio-accordion-animating[inert],
    .wp-block-accordion-panel.solutio-accordion-animating[aria-hidden="true"] {
        display: block !important;
    }
}

/* SOLUTIO GUTENBERG ACCORDION ANIMATION END */

/* SOLUTIO RESULTS CASES CARDS CLEANUP START */

/*
 * Only for the "Результати справ" / "Результаты дел" category archives.
 * Do not change post-card output globally.
 */
body.category-257 .post-cards .post-card__description,
body.category-259 .post-cards .post-card__description,
body.category-257 .post-cards .post-card__meta,
body.category-259 .post-cards .post-card__meta,
body.category-257 .post-cards .post-card__category,
body.category-259 .post-cards .post-card__category {
    display: none !important;
}

/* SOLUTIO RESULTS CASES CARDS CLEANUP END */
/* SOLUTIO CONTACTS FORM COMPACT START */

/* Уменьшаем пустое место сверху внутри блока с фоновой картинкой */
body.category-413 .wp-block-cover,
body.category-415 .wp-block-cover {
    padding-top: 10px !important;
}
body.category-413 .wp-block-cover h2,
body.category-415 .wp-block-cover h2 {
    margin: 0em 0 0.3em !important;
}
body.category-413 .entry-content p,
body.category-415 .entry-content p {
    margin: 0em 0 0.3em !important;
}

/* Поле сообщения — компактная высота примерно на 2 строки */
body.category-413 textarea,
body.category-415 textarea {
    height: 55px !important;
    min-height: 55px !important;
}


/* SOLUTIO CONTACTS FORM COMPACT END */



/* SOLUTIO CRIMINAL LAW SERVICES CARDS META START */

/*
 * Only:
 * /yurydychni-posluhy/advokat-z-kryminalnyh-sprav/
 *
 * Hide technical post meta in automatically generated child-service cards.
 */
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__meta,
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__author,
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__comments,
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__views,
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__date,
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__category {
    display: none !important;
}
/* More excerpt text only on criminal-law child service cards */
body.category-advokat-z-kryminalnyh-sprav .post-cards .post-card__description {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    max-height: none !important;
}
/* SOLUTIO CRIMINAL LAW SERVICES CARDS META END */


/* SOLUTIO CRIMINAL PAGE GUTENBERG GAP START */

/*
 * Only:
 * /yurydychni-posluhy/advokat-z-kryminalnyh-sprav/
 * Bottom Gutenberg content only.
 */
body.category-advokat-z-kryminalnyh-sprav
.solutio-category-content--bottom
.wp-block-columns {
    gap: 0 !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
}

body.category-advokat-z-kryminalnyh-sprav
.solutio-category-content--bottom
.wp-block-column.is-layout-flow > * + * {
    margin-block-start: 0 !important;
}

/* SOLUTIO CRIMINAL PAGE GUTENBERG GAP END */

/* SOLUTIO CRIMINAL ACTIONS LIST SPACING START */

body.category-advokat-z-kryminalnyh-sprav
.solutio-category-content--bottom
.solutio-criminal-actions ul.wp-block-list {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

body.category-advokat-z-kryminalnyh-sprav
.solutio-category-content--bottom
.solutio-criminal-actions ul.wp-block-list > li:first-child {
    margin-top: 0 !important;
}

body.category-advokat-z-kryminalnyh-sprav
.solutio-category-content--bottom
.solutio-criminal-actions ul.wp-block-list > li:last-child {
    margin-bottom: 0 !important;
}

/* SOLUTIO CRIMINAL ACTIONS LIST SPACING END */
/* SOLUTIO ENTRY CONTENT PARAGRAPH SPACING START */
.entry-content p {
    margin-bottom: 0.7em;
    line-height: 1.3em;
}
/* SOLUTIO ENTRY CONTENT PARAGRAPH SPACING END */


/* SOLUTIO ENTRY CONTENT LIST ITEM SPACING START */
.entry-content ul.wp-block-list li,
.entry-content ol.wp-block-list li,
.entry-content ul:not([class]) li,
.entry-content ol:not([class]) li {
    line-height: 1.3em;
    margin-top: .2em;
    margin-bottom: .2em;
}
/* SOLUTIO ENTRY CONTENT LIST ITEM SPACING END */


/* SOLUTIO RESULTS CHILD CATEGORY META HIDE TEST */
body.category-437 .post-cards .post-card__meta {
    display: none !important;
}

/* SOLUTIO CASES BACKGROUND OVERLAY START */

.solutio-case-card--has-bg {
    position: relative;
    overflow: hidden;
}

.solutio-case-card--has-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.58);
    border-radius: inherit;
    pointer-events: none;
}

.solutio-case-card--has-bg > .wp-block-group__inner-container {
    position: relative;
    z-index: 1;
}

.solutio-case-card--has-bg .wp-block-heading,
.solutio-case-card--has-bg .wp-block-paragraph,
.solutio-case-card--has-bg .wp-block-paragraph a {
    color: #fff !important;
}

/* SOLUTIO CASES BACKGROUND OVERLAY END */

.solutio-cases-grid {
    margin-bottom: 1.3em;
}

.solutio-cases-grid {
    margin-bottom: 1.3em;
}



.solutio-cases-grid {

    margin-bottom: 1.5em; 

}

/* SOLUTIO ADVOCATE CITIES HUB CARDS START */

/*
 * Only for "Адвокат у містах України".
 * Keep image + post title only.
 */
body.category-advokat-u-mistah .post-cards .post-card__category,
body.category-advokat-u-mistah .post-cards .post-card__meta,
body.category-advokat-u-mistah .post-cards .post-card__description {
    display: none !important;
}

/* SOLUTIO ADVOCATE CITIES HUB CARDS END */

/* SOLUTIO CASES ALL RESULTS BUTTON CENTER START */

.solutio-cases-grid > .wp-block-buttons.is-content-justification-center {
    display: flex !important;
    width: 100% !important;
    height: 100% !important;
    justify-content: center !important;
    align-items: center !important;
}

/* SOLUTIO CASES ALL RESULTS BUTTON CENTER END */

/* SOLUTIO AUTO CARDS START */


/* SOLUTIO списки из разных блоков объеденить */
.solutio-auto-grid {
    display: grid !important;

    /* Количество колонок определяется автоматически */
    grid-template-columns: repeat(
        auto-fit,
        minmax(min(260px, 100%), 1fr)
    ) !important;

    gap: 20px !important;
    align-items: stretch;
}

.solutio-auto-card {
    box-sizing: border-box;
    height: 100%;
    padding: 24px;

    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 8px;

    display: flex;
    flex-direction: column;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.solutio-auto-card:hover {
    border-color: #c8c8c8;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.07);
    transform: translateY(-2px);
}

.solutio-auto-card .wp-block-buttons {
    margin-top: auto;
}


/* Телефон */
@media (max-width: 600px) {
    .solutio-auto-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .solutio-auto-card {
        padding: 20px;
    }
}

/* SOLUTIO AUTO CARDS END */

@media (max-width: 781px) {
    .entry-content .solutio-migration-list {
        gap: 0 !important;
        row-gap: 0 !important;
    }

    .entry-content .solutio-migration-list > .wp-block-column {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 781px) {
    .entry-content .solutio-migration-list .wp-block-column:first-child ul {
        margin-bottom: 0 !important;
    }

    .entry-content .solutio-migration-list .wp-block-column:last-child ul {
        margin-top: 0 !important;
    }
}

@media (max-width: 767px) {
    .hide-on-mobile {
        display: none !important;
    }
}

/* SOLUTIO HOME EDGE TO EDGE START */

.home .section-block.solutio-section-fullwidth {
    width: 100vw !important;
    max-width: 100vw !important;

    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}

.home .section-block.solutio-section-fullwidth > .container {
    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}

.home .section-block.solutio-section-fullwidth .section-block__content {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

.home .section-block.solutio-section-fullwidth .wp-block-cover {
    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Чтобы горизонтальный скролл не появился из-за 100vw */
html,
body {
    overflow-x: hidden;
}

/* SOLUTIO HOME EDGE TO EDGE END */
/* SOLUTIO LAWYER PUBLICATIONS GRID START */

.solutio-publications-grid {
    margin-top: 28px;
    margin-bottom: 28px;
}

/* Gutenberg старых версий добавляет внутреннюю обертку */
.solutio-publications-grid > .wp-block-group__inner-container {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

/* Если Gutenberg выводит блоки без inner-container */
.solutio-publications-grid:not(:has(.wp-block-group__inner-container)) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.solutio-publication-card {
    display: flex;
    flex-direction: column;

    height: 100%;
    margin: 0 !important;
    padding: 24px;

    background: #ffffff;
    border: 1px solid #e3e6ea;
    border-radius: 10px;
}

.solutio-publication-card p {
    margin-top: 0;
}

.solutio-publication-card p:last-child {
    margin-bottom: 0;
}

.solutio-publication-card strong {
    display: block;
    margin-bottom: 8px;

    font-size: 18px;
    line-height: 1.4;
}

.solutio-publication-card em {
    color: #6b7280;
    font-size: 14px;
}

.solutio-publication-card a {
    font-weight: 600;
    text-decoration: none;
}

.solutio-publication-card a:hover {
    text-decoration: underline;
}


/* MOBILE */

@media (max-width: 700px) {

    .solutio-publications-grid > .wp-block-group__inner-container {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .solutio-publications-grid:not(:has(.wp-block-group__inner-container)) {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .solutio-publication-card {
        padding: 20px;
    }
}

/* SOLUTIO LAWYER PUBLICATIONS GRID END */
/* PUBLICATION CARD HOVER START */

.solutio-publication-card {
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.solutio-publication-card:hover {
    transform: translateY(-4px);
    border-color: #cbd5e1;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
}

/* PUBLICATION CARD HOVER END */


/* SOLUTIO LAWYER COURT CASES START */

/* Карточка судебного дела */
.solutio-case-card {
    height: 100%;
    padding: 26px;

    background: #ffffff;
    border: 1px solid #e3e6ea;
    border-radius: 10px;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

/* Hover */
.solutio-case-card:hover {
    transform: translateY(-4px);
    border-color: #cbd5e1;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
}

/* Заголовок дела */
.solutio-case-card h3 {
    margin-top: 14px;
    margin-bottom: 14px;

    font-size: 21px;
    line-height: 1.35;
}

/* Обычный текст */
.solutio-case-card p {
    line-height: 1.6;
}

/* Плашка с типом дела */
.solutio-case-type {
    display: inline-block;

    margin: 0 0 4px !important;
    padding: 5px 11px;

    background: #f3f5f7;
    border-radius: 20px;

    font-size: 13px;
    font-weight: 600;
    line-height: 1.4;
}

/* Ссылка внизу карточки */
.solutio-case-link {
    margin-top: 20px !important;
    margin-bottom: 0 !important;

    font-weight: 600;
}

.solutio-case-link a {
    text-decoration: none;
}

.solutio-case-link a:hover {
    text-decoration: underline;
}

/* Мобильная версия */
@media (max-width: 700px) {

    .solutio-case-card {
        padding: 20px;
    }

    .solutio-case-card h3 {
        font-size: 19px;
    }
}

/* SOLUTIO LAWYER COURT CASES END */

/* SOLUTIO LAWYER WORK STEPS START */

.solutio-work-step {
    position: relative;

    height: 100%;
    padding: 24px;

    background: #ffffff;
    border: 1px solid #e3e6ea;
    border-radius: 10px;

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.solutio-work-step:hover {
    transform: translateY(-4px);
    border-color: #cbd5e1;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
}

.solutio-work-step h3 {
    margin-top: 0;
    margin-bottom: 12px;

    font-size: 20px;
    line-height: 1.35;
}

.solutio-work-step p {
    margin-top: 0;
    margin-bottom: 0;

    line-height: 1.6;
}

/* Немного легче визуально на мобильном */
@media (max-width: 700px) {

    .solutio-work-step {
        padding: 20px;
    }

    .solutio-work-step h3 {
        font-size: 18px;
    }
}

/* SOLUTIO LAWYER WORK STEPS END */
/* SOLUTIO LAWYER TIMELINE START */

.solutio-lawyer-timeline {
    position: relative;
    margin-top: 32px;
    padding-left: 34px;
}

/* Вертикальная линия */
.solutio-lawyer-timeline::before {
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 7px;
    width: 2px;
    background: #e3e6ea;
}

/* Отдельный этап */
.solutio-lawyer-timeline-item {
    position: relative;
    margin: 0 0 34px !important;
    padding: 0;
}

.solutio-lawyer-timeline-item:last-child {
    margin-bottom: 0 !important;
}

/* Точка на линии */
.solutio-lawyer-timeline-item::before {
    content: "";
    position: absolute;
    top: 6px;
    left: -33px;

    width: 14px;
    height: 14px;

    background: #ffffff;
    border: 3px solid #2f5d87;
    border-radius: 50%;
}

/* Год */
.solutio-lawyer-timeline-year {
    margin: 0 0 5px !important;

    color: #2f5d87;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
}

/* Заголовок этапа */
.solutio-lawyer-timeline-item h3 {
    margin-top: 0;
    margin-bottom: 8px;

    font-size: 21px;
    line-height: 1.35;
}

/* Описание */
.solutio-lawyer-timeline-item p:last-child {
    margin-bottom: 0;
}

/* MOBILE */
@media (max-width: 700px) {

    .solutio-lawyer-timeline {
        padding-left: 30px;
    }

    .solutio-lawyer-timeline-item::before {
        left: -29px;
    }

    .solutio-lawyer-timeline-item h3 {
        font-size: 19px;
    }
}

/* SOLUTIO LAWYER TIMELINE END */

/* SOLUTIO LAWYER RESPONSIVE GRIDS START */

/*
 * Court cases
 * Desktop: 2 columns
 */
.solutio-cases-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px;
}

/*
 * Work process
 * Desktop: 4 columns
 */
.solutio-work-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px;
}


/* TABLET */
@media (max-width: 900px) {

    .solutio-work-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}


/* MOBILE */
@media (max-width: 600px) {

    .solutio-cases-grid {
        grid-template-columns: 1fr !important;
        gap: 16px;
    }

    .solutio-work-grid {
        grid-template-columns: 1fr !important;
        gap: 16px;
    }

    .solutio-case-card,
    .solutio-work-step {
        min-width: 0;
        width: 100%;
    }
}

/* SOLUTIO LAWYER RESPONSIVE GRIDS END */
/* SOLUTIO SMOOTH ANCHOR SCROLL START */

html {
    scroll-behavior: smooth;
}

/* Учитываем фиксированную шапку сайта */
#dopomoga {
    scroll-margin-top: 90px;
}

/* Не навязываем анимацию тем, кто отключил её в системе */
@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }
}

/* SOLUTIO SMOOTH ANCHOR SCROLL END */
