:root {
    --star-color: #FFBD2E;
    --star-bg: #FFF;

    --font: 'Nunito Sans', sans-serif;
    --font-size: 400 16px/20px var(--font);
    --menu-font: 400 18px/22px var(--font);
    --btn-font: 700 16px/20px var(--font);
    --h1-font: 900 28px/40px var(--font);
    --h2-font: 700 24px/30px var(--font);
    --h3-font: 700 20px/26px var(--font);
    --h4-font: 700 16px/20px var(--font);

    --gap60: 60px;
    --gap40: 40px;
    --gap32: 32px;
    --gap30: 30px;
    --gap: 24px;
    --gap20: 20px;
    --gap16: 16px;

    --border-radius: 10px;
}

@media (max-width: 1024px) {
    :root {
        --gap60: 30px;
        --gap40: 30px;
        --gap32: 20px;
        --gap30: 16px;
        --gap: 16px;
        --gap20: 16px;
        --gap16: 16px;
    }
}

/* wp */
@media screen and (max-width: 600px) {
    #wpadminbar {
        position: fixed;
    }
}

/* Fonts */
@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Bold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-ExtraBold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Black.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('../fonts/NotoSans-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Normalize */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box
}

details {
    list-style: none;
}

details summary::-webkit-details-marker {
    display: none;
}

details summary::marker {
    display: none;
    content: none;
}

img {
    display: flex;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

ul:not(.wp-block-list),
ol:not(.wp-block-list) {
    list-style: none;
}

.page-main {
    flex: 1 1
}

._lock {
    overflow: hidden;
}

._hidden {
    display: none;
}

b {
    font-weight: 500;
}

/* Links */
a[class] {
    text-decoration: unset;
}

p:not([class]) a {
    color: var(--second-color)
}

/* Scrollbar */
::-webkit-scrollbar {
    width: 4px;
}

::-webkit-scrollbar:horizontal {
    height: 5px;
}

::-webkit-scrollbar-thumb {
    background-color: var(--btn-bg);
}

::-webkit-scrollbar-track {
    background-color: #FFF;
}

body {
    display: flex;
    flex-direction: column;
    flex: 1 1;
    min-height: 100vh;
    background-color: var(--bg-color);
    overflow-x: hidden;
    font: var(--font-size, 400 16px/20px var(--font));
    color: var(--text-color);
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
    color: var(--heading-color);
    margin-bottom: var(--gap20);
    text-align: left;
}

h1 {
    font: var(--h1-font);
}

h2 {
    font: var(--h2-font);
    margin-bottom: var(--gap20);
}

h3 {
    font: var(--h3-font);
}

/* 404 */
.page-404 {
    display: flex;
    flex: 1 1;
    position: relative;
    background-color: var(--h1-bg);
    padding-top: var(--gap40);
    padding-bottom: var(--gap40);
}

.page-404__content {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--gap40);
    text-align: center;
    min-height: 440px;
    flex: 1 1;
}

.page-404__content > svg {
    position: absolute;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    max-width: 80%;
    height: auto;
    z-index: 0;
}

.page-404__content > :not(svg) {
    z-index: 1;
}

.page-404__title {
    margin-bottom: 0;
}

.page-404__title svg {
    max-width: 80%;
    height: auto;
}

/* Container & wrapper */
._bg {
    background-color: var(--light-block-bg);
    border: 1px solid #E4EAEF;
    border-radius: var(--border-radius);
    padding: var(--gap30);
}

.wrapper:not(:first-child) {
    margin-top: var(--gap40);
}

.container,
.wrapper > * {
    width: 100%;
    max-width: 1180px;
    margin-left: auto;
    margin-right: auto;
}

.wrapper._bg > * {
    max-width: 100%;
}

.wrapper > :not(:first-child),
.wp-block-quote > :not(:first-child) {
    margin-top: var(--gap20);
}

.wrapper:first-child:not(:has(.h1-block)) {
    margin-top: var(--gap20);
}

@media (max-width: 1212px) {
    .container,
    .wrapper > * {
        max-width: calc(100% - 32px);
    }
}

/* Lists */
.wp-block-list {
    padding-left: 20px;
}

/* Buttons */
.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    width: auto;
    font: var(--btn-font);
    color: var(--btn-color);
    background-color: var(--btn-bg);
    padding: var(--gap16) var(--gap);
    border: none;
    border-radius: var(--border-radius);
    white-space: nowrap;
    user-select: none;
    cursor: pointer;
}

.btn._second {
    background-color: var(--btn-bg-2);
    color: var(--btn-color-2);
    font-weight: 400;
}

.btn._social {
    width: 40px;
    height: 40px;
    padding: 0;
    background-color: var(--header-bg);
}

.btn._social svg {
    margin: 0;
}

.btn._transparent {
    background-color: transparent;
    color: var(--text-color);
    border: 1px solid #E4EAEF;
}

.btn._third {
    background-color: var(--header-bg);
    color: var(--header-color);
    border-radius: 100px;
    font: 600 16px/28px var(--font);
}

.btn._fourth {
    background-color: #F16C7A;
    border-radius: 100px;
    box-shadow: 0px 4px 0px 0px #A63838;
}

@media (min-width: 768px) {
    .btn:hover {
        opacity: .9;
    }
}

/* Header */
.header {
    position: sticky;
    top: var(--wp-admin--admin-bar--height, 0);
    display: flex;
    align-items: stretch;
    min-height: 90px;
    padding-top: var(--gap16);
    padding-bottom: var(--gap16);
    background-color: var(--header-bg);
    color: var(--header-color);
    z-index: 5;
}

.header__inner {
    position: relative;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--gap) calc(var(--gap60) - var(--gap16));
}

.header__inner > a {
    display: flex;
}

.header__nav {
    flex: 1 1;
    height: 100%;
}

.header__nav .menu {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--gap) var(--gap16);
    height: 100%;
}

.header__nav .menu-item {
    position: relative;
    height: 100%;
}

.header__nav .menu-item .menu-arrow {
    display: none;
}

.header__nav .menu-link {
    display: flex;
    align-items: center;
    font: var(--menu-font);
    color: var(--header-color);
    padding: 0 var(--gap16);
    height: 100%;
    white-space: nowrap;
    user-select: none;
}

@media (min-width: 768px) {
    .header__nav .menu-item:not(.current-menu-item) .menu-link:hover {
        background: rgba(0,0,0,.1);
    }
}

.header__nav .menu-item.current-menu-item {
    background: rgba(0,0,0,.1);
}

.sub-menu {
    display: none;
    flex-direction: column;
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    background-color: var(--header-color);
    border: 1px solid #0000000D;
    border-radius: var(--border-radius);
    padding: 10px;
    z-index: 10;
}

@media (min-width: 768px) {
    .menu-item-has-children:hover > .sub-menu {
        display: flex;
    }
}

.sub-menu:before {
    content: '';
    width: 100%;
    height: 10px;
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    z-index: 9;
}

.sub-menu li:not(:last-child) {
    border-bottom: 1px solid #0000000D;
}

.sub-menu .menu-link {
    color: var(--text-color);
    padding: 11px 20px;
}

.sub-menu .sub-menu {
    left: calc(100% + 20px);
    top: 0;
}

.sub-menu .sub-menu:before {
    width: 20px;
    height: 100%;
    right: 100%;
    left: unset;
    top: 0;
}

.header__burger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
    padding: 8px;
    background: none;
    border: none;
    cursor: pointer;
    margin-left: auto;
}

.search + .header__burger {
    margin-left: 0;
}

.header__burger span {
    display: block;
    height: 2px;
    width: 22px;
    background-color: var(--header-color);
}

.header._active .header__burger span:nth-child(1) {
    transform: rotate(45deg);
    transform-origin: top left;
}

.header._active .header__burger span:nth-child(2) {
    transform-origin: center;
    width: 0;
}

.header._active .header__burger span:nth-child(3) {
    transform: rotate(-45deg);
    transform-origin: bottom left;
}

@media (max-width: 1240px) {
    .header__nav {
        display: none;
        flex-direction: column;
        position: absolute;
        top: 100%;
        left: -16px;
        right: -16px;
        z-index: 10;
        background-color: var(--btn-bg-2);
        width: calc(100% + 32px);
        height: auto;
    }

    .header._active .header__nav {
        display: flex;
        padding: var(--gap40) 0;
    }

    .header__burger {
        display: flex;
    }

    .header__nav .menu {
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: flex-start;
    }

    .header__nav .menu-item {
        width: 100%;
    }

    .header__nav .menu-item .menu-arrow {
        display: flex;
        justify-content: flex-end;
        flex: 1 1 30%;
        max-width: 30%;
        padding-top: 10px;
        padding-right: var(--gap16);
        padding-bottom: 10px;
    }

    .menu-item-has-children {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
    }

    .menu-item-has-children:has(> .sub-menu._active) > .menu-arrow {
        transform: rotate(180deg);
        justify-content: flex-start;
        padding-right: 0;
        padding-left: var(--gap16);
    }

    .menu-item-has-children .menu-link {
        flex: 1 1 70%;
        max-width: 70%;
        margin-right: 0;
    }

    .header__nav .menu-link {
        padding-top: 10px;
        padding-right: 0;
        padding-bottom: 10px;
    }

    .header__nav .menu-item.current-menu-item,
    .header__nav .sub-menu .sub-menu .current-menu-item {
        background: rgba(0,0,0,.4);
    }

    .header__nav .sub-menu .current-menu-item {
        background: rgba(0,0,0,.1);
    }

    .sub-menu {
        position: relative;
        top: unset;
        left: unset;
        width: calc(100% - 32px);
        margin-left: auto;
        margin-right: auto;
    }

    .sub-menu::before {
        content: unset;
    }

    .sub-menu._active {
        display: flex;
    }

    .sub-menu .menu-arrow {
        color: var(--text-color);
    }

    .sub-menu .sub-menu {
        top: unset;
        left: unset;
        background-color: var(--btn-bg-2);
        width: 100%;
    }

    .sub-menu .sub-menu .menu-link {
        color: var(--header-color);
    }

    .sub-menu .sub-menu li:not(:last-child) {
        border-bottom: 1px solid #FFFFFF0D;
    }

    .header__nav .menu-item.current-menu-item:has(> .sub-menu._active) {
        padding-bottom: 10px;
    }
}

@media (max-width: 767px) {
    .header__nav .menu-link {
        white-space: normal;
    }
}

/* Search */
.search {
    display: flex;
    gap: var(--gap) calc(var(--gap60) - var(--gap16));
}

.header._search .search {
    flex: 1 1;
}

.search__button {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    border-radius: var(--border-radius);
    background: rgba(0,0,0,.1);
    padding: 14px;
    margin-left: auto;
    cursor: pointer;
}

.header._search .search__button {
    display: none;
}

.search__form {
    display: none;
    align-items: stretch;
    gap: 0 10px;
    padding: 14px var(--gap20);
    flex: 1 1;
    background-color: var(--header-color);
    border-radius: var(--border-radius);
    color: var(--header-bg);
    height: 50px;
}

.search__submit {
    background-color: unset;
    border: none;
    cursor: pointer;
}

.search__submit svg {
    color: var(--header-bg)
}

.header._search .header__nav {
    display: none;
}

.header._search .search__form {
    display: flex;
}

.search__input {
    font: var(--font-size);
    flex: 1 1;
    background: unset;
    border: none;
}

.search__input:focus,
.search__input:focus-visible {
    outline: unset;
}

.search__close {
    font: var(--font-size);
    color: var(--text-color);
    margin-left: auto;
    background: unset;
    border: none;
    opacity: .7;
    cursor: pointer;
}

@media (min-width: 768px) {
    .search__button:hover {
        background: rgba(0,0,0,.2);
    }

    .search__close:hover {
        opacity: 1;
    }
}

@media (max-width: 1240px) {
    .search {
        margin-left: auto;
    }

    .header._search._active .header__nav {
        display: flex;

    }

    .header__nav {
        margin-top: var(--gap16);
    }
}

@media (max-width: 767px) {
    .header._search .search {
        width: 100%;
        flex: 1 1 100%;
        order: 5;
    }

    .header._search .search + .header__burger {
        margin-left: auto;
    }
}

/* H1 block */
.wrapper:has(.h1-block) {
    background-color: var(--h1-bg);
    color: var(--h1-color);
    padding-top: var(--gap);
    padding-bottom: var(--gap);
}

.wrapper:has(.h1-block) .wp-block-table th,
.wrapper:has(.h1-block) .wp-block-table tbody tr:nth-child(2n){
	color: var(--heading-color);
}

.h1-block > :not(:first-child) {
    margin-top: var(--gap20);
}

.h1-block:has(> img) {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0 var(--gap30);
}

.h1-block img {
    grid-column: 2/3;
    grid-row: 1/20;
    margin-top: 0!important;
}

.h1-block__title {
    color: var(--h1-color);
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    .h1-block:has(> img) {
        display: flex;
        flex-direction: column;
    }

    .h1-block > img {
        min-width: 100%;
        order: -1;
    }

    .h1-block__title {
        margin-bottom: var(--gap20);
        order: -2;
    }
}

/* Author */
.author {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 0;
}

.author img {
    width: 24px;
    height: 24px;
    object-fit: cover;
    border-radius: 50px;
    border: 1px solid var(--h1-color);
    margin-right: 6px;
}

.author svg {
    margin-right: 2px;
}

.author__name {
    font-weight: 700;
    color: var(--text-color);
    text-decoration: underline;
    margin-right: 10px;
}

@media (min-width: 768px) {
    a.author__name:hover {
        text-decoration: underline;
    }
}

.h1-block .author__name {
    color: var(--h1-color);
}

.author__time {
    margin-right: 10px;
}

.author__socials {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--gap16);
}

/* Author 2 */
.author._style-2 {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: var(--gap20);
    background-color: var(--light-block-bg);
    padding: var(--gap40);
    border-radius: var(--border-radius);
    border: 1px solid #E4EAEF;
}

.author__info {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px 8px;
}

.author._style-2 img {
    width: 80px;
    height: 80px;
}

.author__name._style-2 {
    font: 700 20px/26px var(--font);
}

.author__job {
    grid-row: 2/3;
    grid-column: 2/3;
}

.author._style-2 > :not(img):not(.author__info) {
    grid-column: 1/-1;
    justify-self: left;
}

@media (max-width: 767px) {
    .author._style-2 {
        grid-template-columns: 1fr;
        padding: var(--gap16);
    }

    .author._style-2 img {
       margin-left: auto;
        margin-right: auto;
    }
}

/* Author 3 */
.author._style-3 {
    display: grid;
    grid-template-columns: auto 1fr auto;
    grid-template-rows: auto auto;
    gap: 10px 20px;
    background-color: var(--light-block-bg);
    padding: var(--gap20) var(--gap30);
    border-radius: var(--border-radius);
    border: 1px solid #E4EAEF;
}

.author._style-3 img {
    width: 91px;
    height: 91px;
    grid-row: 1/3;
}

.author._style-3 svg {
    margin-right: 6px;
}

.author._style-3 .author__written {
    font-weight: 700;
    color: #A8A8A8;
    align-self: end;
}

.author._style-3 .author__name {
    color: var(--primary-bg);
    text-decoration: unset;
}

.author._style-3 .author__job {
    display: flex;
    align-items: center;
    align-self: start;
    font: 400 14px/18px var(--font)
}

.author._style-3 .author__time {
    display: flex;
    align-items: center;
    gap: 10px;
    grid-row: 1/3;
    align-self: center;
    margin-right: 0;
    font-weight: 700;
    color: #A8A8A8;
}

.author._style-3 .author__time svg {
    margin-right: 0;
}

@media (max-width: 767px) {
    .author._style-3 {
        grid-template-columns: 1fr auto;
    }

    .author._style-3 img {
        grid-column: 1/-1;
        grid-row: 1/2;
        justify-self: center;
        margin-right: 0;
    }

    .author._style-3 .author__written {
        grid-column: 1/2;
        grid-row: 2/3;
        align-self: start;
    }

    .author._style-3 .author__job {
        grid-column: 1/2;
        grid-row: 3/4;
    }

    .author._style-3 .author__time {
        grid-column: 2/3;
        grid-row: 2/4;
        align-self: center;
    }
}

@media (max-width: 500px) {
    .author._style-3 {
        grid-template-columns: 1fr;
    }


    .author._style-3 .author__written {
        grid-column: 1/-1;
        justify-self: center;
    }

    .author._style-3 .author__job {
        grid-column: 1/-1;
        justify-content: center;
    }

    .author._style-3 .author__time {
        grid-column: 1/-1;
        justify-content: center;
        grid-row: unset;
    }
}

/* Links */
.links:not(:first-child) {
    margin-top: var(--gap30);
}

.links__list {
    display: flex;
    align-items: center;
    gap: var(--gap);
    flex-wrap: wrap;
}

.links__button {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 19px 27px;
}

.links__button:before {
    content: url('data:image/svg+xml,<svg width="22" height="23" viewBox="0 0 22 23" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.5557 21.9076C9.44468 21.8325 8.67012 21.6854 7.75473 21.3725C6.70008 21.011 5.67202 20.4571 4.80514 19.7811C4.33258 19.4118 3.67538 18.7812 3.31548 18.3493C1.98386 16.7517 1.22025 14.9037 1.01683 12.7866C0.98241 12.4361 0.977715 11.4941 1.00745 11.1514C1.08568 10.2595 1.24216 9.50212 1.50817 8.71035C2.13095 6.86548 3.2482 5.26316 4.74255 4.0708C6.18214 2.92383 7.90808 2.19777 9.74981 1.96775C10.2365 1.90673 10.4148 1.89734 11.0016 1.89734C11.5837 1.89734 11.8654 1.91455 12.316 1.97558C14.2094 2.23063 15.976 3.01302 17.472 4.25858C17.7771 4.51207 18.4233 5.15675 18.6721 5.45563C20.0037 7.05482 20.7674 8.90125 20.9708 11.0184C21.0052 11.3689 21.0099 12.3109 20.9802 12.6536C20.9191 13.3515 20.8112 13.9586 20.6406 14.5704C20.2494 15.9756 19.5813 17.2477 18.6314 18.3884C18.3842 18.6858 17.7364 19.3336 17.4407 19.5808C15.8462 20.9093 13.9763 21.6823 11.8857 21.8794C11.6447 21.9014 10.7528 21.9201 10.5557 21.9076ZM11.6776 19.9063C12.9091 19.7936 13.9982 19.4447 15.0544 18.8297C16.3954 18.0473 17.5111 16.8487 18.1917 15.4623C18.6221 14.5876 18.863 13.7646 18.9835 12.7584C19.0226 12.4423 19.0305 11.577 18.9992 11.2359C18.9022 10.1828 18.6502 9.27523 18.1996 8.35827C17.4219 6.77786 16.12 5.4744 14.5537 4.70454C13.679 4.27422 12.8559 4.03325 11.8497 3.91276C11.5337 3.87364 10.6683 3.86582 10.3272 3.89711C9.07696 4.01134 7.99414 4.35716 6.93323 4.97524C5.12123 6.03303 3.75362 7.82782 3.23098 9.82916C3.04791 10.5364 2.97593 11.0998 2.97749 11.8477C2.97749 12.6802 3.08233 13.4015 3.31235 14.1667C3.80682 15.8081 4.79419 17.2477 6.13363 18.2852C6.69538 18.7202 7.31816 19.0801 7.95815 19.3398C8.67325 19.6309 9.47128 19.828 10.2114 19.8969C10.31 19.9063 10.4164 19.9172 10.4461 19.9188C10.6198 19.936 11.4507 19.9266 11.6776 19.9063Z" fill="white"/><path d="M8.77188 15.42C8.678 15.3715 8.61697 15.2761 8.55125 15.0758L8.49805 14.9146L8.50118 13.9132C8.50274 13.3624 8.51213 11.9822 8.52152 10.8462C8.53873 8.9278 8.54186 8.77132 8.56846 8.65553C8.6733 8.20331 8.84856 8.12037 9.36024 8.28467C9.37901 8.29093 10.5714 8.97474 12.011 9.80563C14.4629 11.2202 14.6351 11.3219 14.7337 11.4205C14.8776 11.5629 14.9433 11.6927 14.9339 11.8195C14.9246 11.9462 14.8698 12.0479 14.7415 12.1763C14.6366 12.2811 14.5208 12.3499 11.9875 13.8208C10.1317 14.899 9.31329 15.3668 9.24131 15.3887C9.00503 15.4638 8.87516 15.4717 8.77188 15.42Z" fill="white"/></svg>');
    line-height: 1;
}

@media (max-width: 767px) {
    .links__list {
        flex-direction: column;
        align-items: stretch;
    }

    .links__button {
        display: flex;
        align-items: center;
        gap: 4px;
        padding: 16px;
    }
}

/* Rate */
.rate {
    grid-column: 1;
    text-align: center;
    font: 600 16px/18px var(--font);
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    align-self: center;
    gap: 8px;
}

.rate::before {
    content: "★★★★★";
    display: block;
    background: -webkit-gradient(linear, left top, right top, from(var(--star-color)), to(var(--star-bg)));
    background: linear-gradient(90deg, var(--star-color) var(--percent), var(--star-bg) var(--percent));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 2px;
}

.rate::after {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: "☆☆☆☆☆";
    display: block;
    color: var(--star-color);
    font-size: 18px;
    line-height: 18px;
    letter-spacing: 2px;
}

/* Listing */
.listing-table {
    border: none;
}

.listing {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: var(--gap20);
}

.listing:not(._style-2):has(.listing__row:nth-child(4)) {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}

.listing__item {
    position: relative;
    display: flex;
    flex-direction: column;
    border: 1px solid #E4EAEF;
    border-radius: var(--border-radius);
    overflow: hidden;
}

.listing_image {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: var(--border-radius);
    overflow: hidden;
}

.listing img {
    width: 100%;
    max-height: 127px;
    object-fit: cover;
}

.listing:not(._style-2):has(.listing__row:nth-child(4)) img {
    max-height: 109px;
}

.listing__num {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--header-bg);
    font: 800 24px/44px var(--font);
    color: var(--header-color);
    width: 50px;
    height: 50px;
    border-radius: var(--border-radius) 0 var(--border-radius) 0;
}

.listing__content {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 22px 50px 30px;
    text-align: center;
    flex: 1 1;
}

.listing:not(._style-2):has(.listing__row:nth-child(4)) .listing__content {
    gap: 10px;
    padding: 20px;
}

.listing__title {
    font: 400 20px/26px var(--font);
    color: var(--text-color);
}

@media (min-width: 768px) {
    a.listing__title:hover {
        text-decoration: underline;
    }
}

.listing .listing__comments {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.listing__rating {
    grid-column: 1;
    text-align: center;
    font: 600 16px/18px var(--font);
    gap: 8px;
}

.listing__rating-count {
    font: 600 16px/18px var(--font);
}

.listing__comment {
    display: flex;
    gap: 4px;
    font: 400 14px/14px var(--font);
    color: var(--text-color);
}

@media (min-width: 768px) {
    a.listing__comment:hover {
        text-decoration: underline;
    }
}

.listing__review:not(.btn) {
    font: 400 14px/14px var(--font);
    color: var(--header-bg);
}

.listing:has(.listing__row:nth-child(4)) .listing__review:not(.btn) {
    color: var(--btn-bg);
}

@media (min-width: 768px) {
    .listing__review:hover {
        opacity: .7;
        text-decoration: underline;
    }
}

.listing__accent-text {
    font: var(--h4-font);
    color: var(--header-bg);
}

.listing__text {
    font: 500 14px/18px var(--font);
    color: #A8A8A8;
}

.listing:has(.listing__row:nth-child(4)) .listing__text {
    color: #3E3E3E;
}

.listing:has(.listing__row:nth-child(4)) .listing__text:not(:last-child) {
    margin-bottom: 10px;
}

.listing__button {
    margin-top: auto;
}

/* Listing v2 */
.listing._style-2 {
    grid-template-columns: 1fr;
}

.listing._style-2 .listing__num {
    width: 36px;
    height: 36px;
    font: 800 16px/30px var(--font);
}

.listing._style-2 .listing__item {
   flex-direction: row;
    padding: var(--gap20);
    background-color: var(--light-block-bg);
}

.listing._style-2 img {
    width: auto;
    max-width: 120px;
    max-height: 82px;
    border-radius: var(--border-radius);
}

.listing._style-2 .listing__content {
    flex-direction: row;
    align-items: center;
    padding: 0;
    gap: var(--gap20);
    margin-left: var(--gap20);
}

.listing._style-2 .listing__title {
    font: var(--h3-font);
    align-self: center;
    order: 2
}

.listing._style-2 .listing__comments {
    flex-direction: column;
    gap: 6px 0;
    padding-right: var(--gap20);
    border-right: 1px solid #E4EAEF;
    order: 4
}

.listing._style-2 .listing__rating-count {
    font: 800 20px/32px var(--font);
}

.listing._style-2 .listing__rating-count-inner {
    font-size: 18px;
    font-weight: 700;
}

.listing._style-2 .listing__info {
    display: flex;
    flex-direction: column;
    gap: 6px;
    text-align: left;
    max-width: 250px;
    order: 5
}

.listing._style-2 .listing__accent-text {
    font: 400 14px/18px var(--font);
    color: var(--heading-color);
}

.listing._style-2 .listing__text {
    font: var(--h4-font);
    color: var(--text-color);
}

.listing._style-2 .listing__button {
    margin-top: 0;
}

.listing._style-2 .listing__review {
    margin-left: auto;
    order: 6
}

.listing._style-2 .listing__button {
    order: 7
}

@media (max-width: 1100px) {
    .listing._style-2 {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }

    .listing._style-2 .listing__item {
        flex-direction: column;
        gap: var(--gap20);
    }

    .listing._style-2 img {
        min-width: 100%;
        min-height: 100px;
        max-height: unset;
    }

    .listing._style-2 .listing__content {
        flex-direction: column;
        margin-left: 0;
    }

    .listing._style-2 .listing__comments {
        padding-right: 0;
        border-right: unset;
    }

    .listing._style-2 .listing__review {
        margin-left: 0;
        width: 100%;
    }

    .listing._style-2 .listing__button {
        width: 100%;
    }
}

@media (max-width: 767px) {
    .listing {
        grid-template-columns: 1fr;
    }

    .listing__content {
        padding: var(--gap20);
    }
}

/* Quote */
.quote {
    display: flex;
    gap: 0 var(--gap30);
    background-color: var(--quote-bg);
    border: 1px solid var(--quote-border);
    border-radius: var(--border-radius);
    padding: 0 var(--gap30) 0 var(--gap20);
}

.quote__content {
    padding: var(--gap30) 0;
}

.quote img {
    margin-top: auto;
}

@media (max-width: 767px) {
    .quote {
        flex-direction: column;
        padding: var(--gap16) var(--gap16) 0 var(--gap16);
        gap: var(--gap20);
    }

    .quote__content {
        padding: 0;
    }

    .quote img {
        align-self: center;
        order: 20;
    }
}

/* Posts */
.posts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gap40) var(--gap20)
}

.posts__item {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.posts__item img {
    width: 100%;
    max-height: 160px;
    border-radius: 5px;
    object-fit: cover;
}

.posts__info {
    display: flex;
    justify-content: space-between;
    gap: var(--gap20);
    font: 300 14px/21px var(--font);
    color: #4F5059;
}

.posts__item .posts__author {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.posts__title {
    margin-bottom: 0;
}

.posts__link {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
}

@media (min-width: 768px) {
    .posts__item:hover {
        opacity: .8;
    }
}

@media (max-width: 767px) {
    .posts {
        grid-template-columns: 1fr;
    }
}

/* Footer */
.footer {
    position: relative;
    display: flex;
    flex-direction: column;
    padding-top: var(--gap60);
    padding-bottom: var(--gap60);
    margin-top: var(--gap40);
}

.page-404 + .footer {
    margin-top: 0;
}

.footer:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--footer-bg-color);
    z-index: -2
}

.footer:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--footer-bg);
    background-position: center;
    background-size: cover;
    opacity: .1;
    filter: grayscale();
    z-index: -1;
}

.footer__top {
    display: flex;
    gap: var(--gap20);
    padding-bottom: var(--gap60);
    margin-bottom: var(--gap60);
    border-bottom: 1px solid rgba(255,255,255,.12);
}

.footer__logo {
    display: flex;
    flex-direction: column;
    gap: 22px;
    max-width: 315px;
    margin-right: auto;
    font: 400 12px/20px var(--font);
    color: #ACACAC;
}

.footer__logo img {
    max-height: 44px;
}

.footer__nav-title {
    position: relative;
    display: block;
    font: 700 16px/28px var(--font);
    color: #FFF;
    width: 100%;
    margin-bottom: 26px;
}

.footer__nav-title:after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 44px;
    height: 2px;
    background-color: var(--header-bg);
}

.footer__top-nav ul {
    display: grid;
    grid-template-columns: repeat(5, auto);
    gap: 10px 40px;
}

.footer__top-nav a,
.footer__top-nav span
{
   color: #FFF;
}

@media (min-width: 768px) {
    .footer__top-nav a:hover {
        text-decoration: underline;
    }
}

.footer__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gap30) 10px;
}

.footer__bottom-nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 55px;
}

.footer__bottom-nav ul a,
.footer__bottom-nav ul span {
    font: 400 12px/18px var(--font);
    color: #FFF;
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .footer__bottom-nav ul a:hover {
        text-decoration: underline;
    }
}

.footer__socials {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px var(--gap30);
    margin-left: auto;
}

@media (min-width: 768px) {
    .footer__socials a:hover path {
        fill: #FFF;
    }
}

.footer__text {
    font: 400 12px/18px var(--font);
    color: #ACACAC
}

.footer__text > :not(:first-child) {
    margin-top: 8px;
}

.footer__dmca {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

@media (max-width: 1100px) {
    .footer__top {
        flex-direction: column;
    }

    .footer__logo {
        max-width: 100%;
    }

    .footer__top-nav ul {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
}

@media (max-width: 767px) {
    .footer__bottom {
        grid-template-columns: 1fr;
    }

    .footer__socials {
        margin-left: 0;
    }

    .footer__dmca {
        justify-content: flex-start;
    }
}

@media (max-width: 500px) {
    .footer__top-nav ul {
        grid-template-columns: 1fr;
    }

    .footer__bottom-nav ul {
        flex-direction: column;
    }
}

/* Bredcrumbs */
.breadcrumbs {
    background-color: var(--h1-bg);
    padding-top: var(--gap30);
}

.breadcrumbs:not(:has(+ .page-main > .wrapper:first-child > .h1-block:first-child)) {
    background-color: unset;
}

.breadcrumbs__list {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.breadcrumbs__item,
.breadcrumbs__item a {
    color: var(--h1-color);
}

.breadcrumbs:not(:has(+ .page-main > .wrapper:first-child > .h1-block:first-child)) .breadcrumbs__item,
.breadcrumbs:not(:has(+ .page-main > .wrapper:first-child > .h1-block:first-child)) .breadcrumbs__item a {
    color: var(--text-color);
}


@media (min-width: 768px) {
    .breadcrumbs__item a:hover {
        opacity: .7;
    }
}

.breadcrumbs__item:not(:last-child):after {
    content: url('data:image/svg+xml,<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 1L6 5L4 9" stroke="white" stroke-linecap="round"/></svg>');
    margin-left: 2px;
    margin-right: 2px;
}

.breadcrumbs:not(:has(+ .page-main > .wrapper:first-child > .h1-block:first-child)) .breadcrumbs__item:not(:last-child):after {
    content: url('data:image/svg+xml,<svg width="10" height="10" viewBox="0 0 10 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 1L6 5L4 9" stroke="%233E3E3E" stroke-linecap="round"/></svg>');
}

/* Text image */
.text-image > img {
    float: right;
    margin-top: 0!important;
    margin-left: var(--gap40);
}

.text-image__title {
    font: var(--h2-font);
}

.text-image > :not(:first-child) {
    margin-top: var(--gap20);
}

@media (max-width: 1024px) {
    .text-image {
        display: flex;
        flex-direction: column;
    }

    .text-image > img {
        min-width: 100%;
        margin-left: 0;
        order: -1;
    }

    .text-image__title {
        order: -2;
    }
}

/* FAQ */
.faq {
    display: flex;
    flex-direction: column;
    gap: var(--gap20);
}

.faq__item {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.faq__title {
    width: 100%;
    padding: var(--gap30);
    border: 1px solid #E4EAEF;
    border-bottom: unset;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    background-color: var(--light-block-bg);
    user-select: none;
    cursor: pointer;
}

.faq__item:not([open]) .faq__title {
    border-bottom: 1px solid #E4EAEF;
    border-radius: var(--border-radius);
}

.faq__title h3 {
    margin-bottom: 0;
}

.faq__answer {
    background-color: var(--quote-bg);
    border: 1px solid var(--quote-border);
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    padding: var(--gap30);
}

/* Show more */
.show-more__btn {
    padding: 8px 78px;
}
._show-more__hidden {
    display: none;
}

/* TOC */
.toc {
    display: flex;
    flex-direction: column;
    border-radius: var(--border-radius);
    overflow: hidden;
}

.toc__header {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: var(--primary-bg);
    color: var(--primary-color);
    padding: 18px var(--gap30);
}

.toc__header > * {
    color: var(--primary-color);
    font: 700 24px/30px var(--font);
    margin-bottom: 0;
}

.toc__list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 10px var(--gap30);
    background-color: var(--light-block-bg);
    padding: var(--gap30);
    list-style: disc!important;
}

.toc__list li {
    margin-left: 20px;
}

.toc__list a {
    color: var(--text-color);
}

@media (min-width: 768px) {
    .toc__list a:hover {
        text-decoration: underline;
    }
}

@media (max-width: 767px) {
    .toc__list {
        grid-template-columns: 1fr;
    }
}

/* Pros & cons */
.pros-cons {
    display: flex;
    flex-direction: column;
    gap: var(--gap20);
}

.pros-cons__title {
    margin-bottom: 0;
}

.pros-cons__list {
    display: flex;
    flex-direction: column;
    gap: 24px;
    background-color: var(--light-block-bg);
    padding: var(--gap40) var(--gap30);
    border-radius: var(--border-radius);
}

.pros-cons__list li {
    display: inline-flex;
    align-items: center;
    gap: var(--gap20);
}

.pros-cons__list._pros li:before {
    content: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="24" height="24" rx="4" fill="%23B3CC58"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11 13V18H13V13H18V11H13V6H11V11H6V13H11Z" fill="white"/></svg>');
}

.pros-cons__list._cons li:before {
    content: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="24" height="24" rx="4" fill="%23F16C7A"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6 11L18 11V13L6 13L6 11Z" fill="white"/></svg>');
}

@media (max-width: 767px) {
    .pros-cons__list {
        padding: var(--gap30);
    }
}

/* Tables */
.wp-block-table {
    border-radius: var(--border-radius);
    border: 1px solid #E4EAEF;
    overflow: auto;
}

.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
}

.wp-block-table tr:first-child th,
.wp-block-table tr:first-child td {
    border-top: unset;
}

.wp-block-table tr:last-child th,
.wp-block-table tr:last-child td {
    border-bottom: unset;
}

.wp-block-table tr th:first-child,
.wp-block-table tr td:first-child {
    border-left: unset;
}

.wp-block-table tr th:last-child,
.wp-block-table tr td:last-child {
    border-right: unset;
}

.wp-block-table tbody tr:nth-child(2n) {
    background-color: var(--quote-bg);
}

.wp-block-table th,
.wp-block-table td {
    text-align: center;
    padding: var(--gap20);
    border: 1px solid #E4EAEF;
}

.wp-block-table th {
    font: 500 22px/32px var(--font);
    background-color: var(--light-block-bg);
}

.wp-block-table td:has(img) {
    padding: 5px;
}

.wp-block-table td img {
    width: auto;
    max-height: 78px;
}

.wp-block-table td:has(img) + td {
    font: var(--h4-font);
    white-space: nowrap;
}

.has-fixed-layout {
    table-layout: fixed;
}

@media (max-width: 1024px) {
    .has-fixed-layout {
        table-layout: auto;
    }

    .wp-block-table table:has( td:nth-child(3) ) { min-width: 600px }
    .wp-block-table table:has( td:nth-child(4) ) { min-width: 800px }
    .wp-block-table table:has( td:nth-child(5) ) { min-width: 1000px }
}

@media (max-width: 767px) {
    .wp-block-table th {
        font: 500 18px/22px var(--font);
    }
}

/* Advantages */
.advantages {
    display: flex;
    flex-direction: column;
    gap: var(--gap20)
}

.advantages__item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0 var(--gap20);
}

.advantages__item:before {
    content: url('data:image/svg+xml,<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="16" cy="16" r="14" fill="%23B3CC58"/><path fill-rule="evenodd" clip-rule="evenodd" d="M22.6003 12.3398C23.1182 12.8064 23.135 13.5785 22.6378 14.0645L15.5415 21L10.4478 16.8512C9.90563 16.4096 9.84765 15.6392 10.3183 15.1305C10.789 14.6218 11.61 14.5674 12.1522 15.009L15.3785 17.6368L20.7622 12.375C21.2594 11.8891 22.0824 11.8733 22.6003 12.3398Z" fill="white"/></svg>');
    grid-column: 1/2;
    grid-row: 1/20;
}

.advantages__title {
    font: var(--h3-font);
    margin-bottom: 0;
}

.advantages__item > :not(.advantages__title) {
    margin-top: var(--gap20);
}

@media (max-width: 767px) {
    .advantages__item {
        grid-template-columns: 1fr;
    }
}

/* Summation */
.summation {
    position: relative;
    padding: 10px 10px 10px 25px;
}

.summation:before {
    content: '';
    position: absolute;
    left: 0;
    top: auto;
    bottom: auto;
    width: 5px;
    height: calc(100% - 20px);
    /*margin-top: auto;*/
    /*margin-bottom: auto;*/
    background-color: var(--primary-bg);
    border-radius: 8px;
    grid-column: 1/2;
    grid-row: 1/20;
}

.summation > :not(:first-child) {
    margin-top: var(--gap20);
}

@media (max-width: 767px) {
    .summation {
        padding: 10px 10px 10px 21px;
    }
}

/* Review */
.review {
    display: flex;
    flex-direction: column;
    background-color: var(--light-block-bg);
    border-radius: var(--border-radius);
    z-index: 11;
}

.review._on-header {
    position: fixed;
    top: 90px;
    left: 0;
    right: 0;
    max-width: unset;
    /*flex-direction: column;*/
    /*align-items: stretch;*/
    border-radius: 0;
    border-bottom: 1px solid #E4EAEF;
    z-index: 4;
}

.admin-bar .review._on-header {
    top: 122px;
}


.review__name {
    padding: var(--gap20) var(--gap30);
    font: var(--h2-font);
    border-bottom: 1px solid #E4EAEF;
    margin-bottom: 0;
}

.review._on-header .review__name {
    /*border-bottom: 1px solid #E4EAEF;*/
    /*border-bottom: unset;*/
    padding-top: 6px;
    padding-bottom: 6px;
}

.review__body {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0 20px;
    padding: var(--gap20) var(--gap30);
}

.review._on-header .review__body {
    flex: 1 1;
    padding: 10px;
}

.review__body img {
    width: 100%;
    height: 100%;
    max-width: 120px;
    max-height: 82px;
    object-fit: cover;
    border-radius: var(--border-radius);
    grid-column: 1/2;
    grid-row: 1/20;
}

.review._on-header .review__body img {
    align-self: center;
}

.review__title {
    font: var(--h3-font);
    grid-column: 2/3;
    grid-row: 1/2;
}

.review__btn {
    min-width: 258px;
    grid-column: 3/4;
    grid-row: 1/20;
    align-self: center;
}

.review._on-header .review__btn {
    min-width: unset;
}

.review__body > :not(.review__title):not(.review__btn):not(img) {
    font: 400 14px/18px var(--font);
    margin-top: var(--gap20);
}

.review._on-header .review__body > :not(.review__title):not(.review__btn):not(img) {
    margin-top: 6px;
}

@media (max-width: 1212px) {
    .review > .container {
        max-width: 100%;
    }
}

@media (max-width: 1024px) {
    .review._on-header .review__body img {
        max-height: 56px;
    }

    .review._on-header .review__title {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .review._on-header {
        flex-direction: row;
    }

    .review__body {
        display: flex;
        flex-direction: column;
        gap: var(--gap20)
    }

    .review._on-header .review__body {
        display: grid;
        gap: 6px;
        padding: 10px 0;
    }

    .review__body img {
        margin-left: auto;
        margin-right: auto;
        max-width: unset;
        max-height: unset;
    }

    .review._on-header .review__body img {
        /*display: none;*/
        grid-column: 1/2;
        grid-row: 1/3;
        max-width: 100px;
    }

    .review._on-header .review__btn {
        font-size: 12px;
        grid-column: 1/-1;
        grid-row: 3/4;
        padding: 8px 6px;
    }

    .review__body > :not(.review__title):not(.review__btn):not(img) {
        margin-top: 0;
    }

    .review._on-header .review__name {
        display: none;
    }

    .review._on-header .review__title {
        font-size: 12px;
        line-height: 14px;
        grid-column: 2/3;
        grid-row: 1/2;
    }

    .review._on-header .review__body > :not(.review__title):not(.review__btn):not(img){
        font-size: 12px;
        line-height: 14px;
        grid-column: 2/3;
        grid-row: 2/3;
        margin-top: 0;
    }
}

@media (max-width: 500px) {
    .review__btn {
        width: 100%;
        min-width: unset;
    }
}

/* Notice */
.notice {
    display: flex;
    align-items: center;
    gap: var(--gap20);
    background-color: var(--quote-bg);
    border: 1px solid var(--quote-border);
    border-radius: var(--border-radius);
    padding: var(--gap30);
}

.notice > svg {
    min-width: 18px;
}

/* Review table */
.review-table {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto 1fr;
    gap: var(--gap20);
}

.review-table__block {
    padding: 0 0 var(--gap30) 0;
}

.review-table__block_1,
.review-table__block_3 {
    max-width: 378px;
}

.review-table__block_1 {
    display: flex;
    flex-direction: column;
}

.review-table__rating-top {
    display: flex;
    padding: var(--gap30) var(--gap40) var(--gap20) var(--gap40);
    border-bottom: 1px solid #E4EAEF;
}

.review-table__rating {
    padding-right: var(--gap20);
    margin-right: var(--gap20);
    border-right: 1px solid #E4EAEF;
}

.review-table__rating-count {
    font: 800 20px/32px var(--font);
    width: 100%;
}

.review-table__rating-count span {
    font: 500 16px/18px var(--font);
}

.review-table__text {
    font: 400 14px/22px var(--font);
}

.review-table__text span {
    display: block;
    font: 700 16px/22px var(--font);
}

.review-table__rating-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: var(--gap20) var(--gap40) var(--gap30) var(--gap40);
}

.review-table__rating-list li {
    display: flex;
    justify-content: space-between;
    gap: var(--gap20);
}

.review-table__rating-name {
    font: 400 14px/18px var(--font);
}

.review-table__rating-list-stars {
    margin-left: auto;
}

.review-table__rating-list-count {
    font: 400 14px/18px var(--font);
}

.review-table__block_2 {
    display: flex;
    grid-column: 2/3;
    grid-row: 1/3;
}

.review-table__main tbody {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.review-table__main tr {
    display: flex;
}

.review-table__main th,
.review-table__main td {
    padding: 15px var(--gap30);
    text-align: left;
}

.review-table__main th {
    font: 700 14px/24px var(--font);
    border-right: 1px solid #E4EAEF;
    width: 248px;
}

.review-table__main td {
    font: 400 14px/24px var(--font);
    flex: 1 1;
}

.review-table__hits-misses-title {
    padding: var(--gap30) var(--gap40) var(--gap20) var(--gap40);
    border-bottom: 1px solid #E4EAEF;
    font: 600 20px/28px var(--font);
}

.review-table__graph {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: 1fr 1fr;
    gap: var(--gap16) var(--gap30);
    padding: var(--gap30) var(--gap40);
}

.review-table__graph-image {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: conic-gradient(from -90deg, #F16C7A 0 var(--miss), var(--primary-bg) var(--miss) 100%);
    grid-column: 1/2;
    grid-row: 1/3;
}

.review-table__graph-image:before {
    content: '';
    position: absolute;
    top: 13px;
    right: 13px;
    bottom: 13px;
    left: 13px;
    margin: auto;
    background-color: var(--light-block-bg);
    border-radius: 50%;
    z-index: 1;
}

.review-table__graph-text {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 10px;
    font: 800 35px/49px var(--font);
}

.review-table__graph-text._hits {
    color: var(--primary-bg);
}

.review-table__graph-text._misses {
    color: #F16C7A;
}

.review-table__graph-text:before {
    content: '';
    display: flex;
    width: 28px;
    height: 4px;
    background-color: currentColor;
    border-radius: 2px;
}

.review-table__graph-text span {
    font: 400 18px/28px var(--font);
    color: #000000;
}

.review-table__hits-misses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--gap20);
    padding: 0 40px;
}

.review-table__hits-misses-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    list-style: disc!important;
}

.review-table__hits-misses-list li {
    font: 400 14px/18px var(--font);
    margin-left: 16px;
}

.review-table__hits-misses-list._hits li::marker {
    color: var(--primary-bg);
    font-size: 20px;
}

.review-table__hits-misses-list._misses li::marker {
    color: #F16C7A;
    font-size: 20px;
}

@media (max-width: 1024px) {
    .review-table__rating-top,
    .review-table__rating-list,
    .review-table__graph,
    .review-table__hits-misses-title,
    .review-table__hits-misses {
        padding-left: var(--gap30);
        padding-right: var(--gap30);
    }

    .review-table__main th {
        width: 200px;
    }
}

@media (max-width: 850px) {
    .review-table {
        display: flex;
        flex-direction: column;
    }

    .review-table__block_1, .review-table__block_3 {
        max-width: 100%;
    }

    .review-table__main th,
    .review-table__main td {
        flex: 1 1;
    }

    .review-table__graph {
        grid-template-columns: 1fr;
    }

    .review-table__graph-image {
        margin-left: auto;
        margin-right: auto;
    }

    .review-table__graph-text {
        justify-self: center;
    }
}

@media (max-width: 500px) {
    .review-table__hits-misses {
        display: flex;
        flex-direction: column;
    }
}

/* App */
.app {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    position: relative;
}

.app:before {
    content: '';
    position: absolute;
    left: 0;
    top: auto;
    bottom: auto;
    width: 5px;
    height: 100%;
    background-color: var(--primary-bg);
    border-radius: 8px;
}

.app__content {
    padding: 10px 10px 10px 25px;
}

.app__content > :not(:first-child) {
    margin-top: var(--gap20);
}

.app__card {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-row: 1fr auto;
    gap: var(--gap20);
    margin-left: auto;
    background-color: var(--btn-bg-2);
    border-radius: var(--border-radius);
    padding: var(--gap30);
}

.app__info {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-row: auto auto;
    grid-column: 1/-1;
    color: var(--btn-color-2);
}

.app__info img {
    width: 86px;
    height: 60px;
    object-fit: cover;
    border-radius: var(--border-radius);
    grid-column: 2/3;
    grid-row: 1/3;
}

.app__info-title {
    font: var(--h2-font);
}

@media (max-width: 767px) {
    .app {
        flex-direction: column;
        align-items: stretch;
    }

    .app__card {
        margin-left: 25px;
    }
}

@media (max-width: 500px) {
    .app__card {

    }

    .app__button {
        grid-column: 1/-1;
    }
}

/* Bonus */
.bonus {
    position: relative;
    display: flex;
    gap: var(--gap40);
    padding: var(--gap30);
    color: var(--btn-color-2);
    border-radius: var(--border-radius);
    overflow: hidden;
}

.bonus:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--btn-bg-2);
    z-index: -2
}

.bonus:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("../images/bonus.webp");
    background-position: center;
    background-size: cover;
    opacity: .1;
    filter: grayscale();
    z-index: -1;
}

.bonus img {
    width: 141px;
    height: 98px;
    object-fit: cover;
    border-radius: var(--border-radius);
}

.bonus__col {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap20);
    max-width: 573px;
}

.bonus__title {
    font: var(--h2-font);
    color: var(--btn-color-2);
    margin-bottom: 0;
}

.bonus__button {
    min-width: 222px;
    padding: 19px 43px;
}

@media (max-width: 767px) {
    .bonus {
        flex-direction: column;
        gap: var(--gap20);
    }

    .bonus__col {
        display: contents;
    }

    .bonus img {
        width: 100%;
        height: auto;
        order: -2;
    }

    .bonus__title {
        order: -1;
    }
}

/* Discussion */
.discussion {

}

.discussion__title {
    display: flex;
    background-color: var(--primary-bg);
    border: 1px solid var(--quote-border);
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    color: var(--primary-color);
    padding: var(--gap30);
    margin-bottom: 0;
}

.discussion__list {
    display: flex;
    flex-direction: column;
    gap: var(--gap30);
    background-color: var(--light-block-bg);
    border: 1px solid #E4EAEF;
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    padding: var(--gap30);
}

.discussion__item {
    display: flex;
    gap: 0 15px;
}

.discussion__item:not(:last-child) {
    padding-bottom: var(--gap30);
    border-bottom: 1px solid #E4EAEF;
}

.discussion__item img {
    min-width: 50px;
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 50px;
    overflow: hidden;
}

.discussion__content {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.discussion__meta {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-row: 1fr 1fr;
    gap: 4px 15px;
}

.discussion__name {
    font: var(--h4-font);
}

.discussion__meta .discussion__rating {
    grid-column: 2/3;
    grid-row: 1/-1;
    justify-self: end;
    align-self: center;
}

.discussion__time {
    font: 400 12px/18px var(--font);
}

.discussion__text {
    margin-top: 12px;
}

.discussion__pros,
.discussion__cons {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: var(--gap20);
}

.discussion__pros li,
.discussion__cons li {
    display: flex;
    align-items: center;
    gap: var(--gap20);
    background-color: #ECECEC;
    border-radius: var(--border-radius);
    font: 400 14px/22px var(--font);
    padding: 15px var(--gap20);
}

.discussion__pros li:before,
.discussion__cons li:before {
    display: flex;
    border-radius: 6px;
    overflow: hidden;
}

.discussion__pros li:before {
    content: url('data:image/svg+xml,<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><g><rect width="30" height="30" fill="%23B3CC58"/><path d="M15 8V22" stroke="white" stroke-width="2"/><path d="M22 15L8 15" stroke="white" stroke-width="2"/></g><defs><clipPath><rect width="30" height="30" rx="6" fill="white"/></clipPath></defs></svg>');
}

.discussion__cons li:before {
    content: url('data:image/svg+xml,<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg"><g><rect width="30" height="30" fill="%23F16C7A"/><path d="M22 15L8 15" stroke="white" stroke-width="2"/></g><defs><clipPath><rect width="30" height="30" rx="6" fill="white"/></clipPath></defs></svg>');
}

@media (max-width: 500px) {
    .discussion__item {
        flex-direction: column;
        gap: var(--gap20);
    }

    .discussion__pros li,
    .discussion__cons li {
        padding: 10px;
    }
}
/* Leave review */
.leave-review {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--gap20);
}

.leave-review__text {
    font: var(--h3-font);
}

.leave-review {
    min-width: 258px;
}

@media (max-width: 500px) {
    .leave-review {
        flex-direction: column;
        align-items: center;
    }

    .leave-review__button {
        width: 100%;
    }
}

/* Review popup */
.review-popup {
    display: none;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    max-width: unset;
    z-index: 900;
    background-color: rgba(0,0,0,.7);
    margin-top: auto!important;
}

.review-popup._active {
    display: flex;
}

.review-popup__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--gap20);
    width: 500px;
    min-height: 200px;
    padding: var(--gap30);
    background-color: var(--light-block-bg);
    border-radius: var(--border-radius);
    border: 1px solid #E4EAEF;
}

.review-popup__close {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    background: unset;
    padding: 10px;
    z-index: 901;
    cursor: pointer;
}

.review-popup__close svg {
    fill: var(--text-color);
}

.review-popup__title {
    font: var(--h3-font);
    width: 100%;
    text-align: center;
    max-width: calc(100% - 42px);
}

.review-popup__input {
    background-color: #ECECEC;
    border: 1px solid #E4EAEF;
    border-radius: var(--border-radius);
    font: 400 14px/22px var(--font);
    padding: 15px var(--gap20);
    width: 100%;
    resize: none;
}

.review-popup__input._empty {
    border: 1px solid #EE0606;
}

@media (max-width: 532px) {
    .review-popup__inner {
        width: calc(100% - 32px);
    }
}

/* Search page */
.search-page__list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-left: 20px;
}

.search-page__list li {
    list-style: disc;
}

.search-page__list li a {
    font: var(--font-size, 400 16px/20px var(--font));
    color: var(--text-color);
}

/* Pagination */
ul.page-numbers {
    display: flex;
    justify-content: center;
    gap: 10px;
}

a.page-numbers,
span.page-numbers {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 32px;
    height: 32px;
    border-radius: 4px;
    /*background-color: var(--header-bg);*/
    color: var(--text-color);
    border: 1px solid #E4EAEF;
    border-radius: var(--border-radius);
}

span.page-numbers {
    background-color: var(--header-bg);
    color: var(--header-color);
    border: unset;
}

.page-numbers.prev { margin-right: 20px; }
.page-numbers.next { margin-left: 20px; }

/* Scroll top */
.scroll-top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 99
}

.scroll-top__button {
    position: relative;
    appearance: none;
    border: none;
    outline: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    width: 44px;
    height: 44px;
    background-color: var(--btn-bg);
    border-radius: 4px
}

.scroll-top__button:after {
    content: url('data:image/svg+xml,<svg width="32" height="32" fill="white" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path d="m26.71 10.29-10-10a1 1 0 0 0-1.41 0l-10 10 1.41 1.41L15 3.41V32h2V3.41l8.29 8.29z"/></svg>');
    display: flex;
    align-items: center;
    justify-content: center
}