/* ============== Vacancies ============== */
.vacancies { padding: 60px 0; }
.vacancies__container { max-width: 880px; margin: 0 auto; padding: 0 var(--container-pad); }
.vacancies__title { margin-bottom: 32px; }
.vacancies__list { display: flex; flex-direction: column; gap: 12px; }

.vacancy { background: #fff; border-radius: 20px; padding: 25px; }
.vacancy__header { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
.vacancy__info { display: flex; align-items: center; gap: 20px; flex: 1; min-width: 0; }
.vacancy__name { font-size: 32px; font-weight: 700; color: var(--color-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vacancy__badge { display: inline-flex; align-items: center; padding: 10px 20px; background: #121212; color: #fff; border-radius: 100px; font-size: 20px; font-weight: 600; white-space: nowrap; flex-shrink: 0; }
.vacancy__actions { display: flex; align-items: center; gap: 15px; flex-shrink: 0; }
.vacancy__body { padding-top: 25px; overflow: hidden; border-top: 1px solid var(--color-line); margin-top: 25px; display: flex; flex-direction: column; gap: 15px; }
.vacancy__intro { font-size: 18px; line-height: 1.65; color: var(--color-text-secondary); }
.vacancy__section { background: #f0f0f0; border-radius: 20px; padding: 20px; display: flex; flex-direction: column; gap: 12px; }
.vacancy__section-title { display: inline-flex; align-items: center; padding: 10px 15px; background: #fff; border-radius: 100px; font-size: 20px; font-weight: 600; color: var(--color-text); align-self: flex-start; }
.vacancy__list { list-style: disc; padding-left: 20px; display: flex; flex-direction: column; gap: 10px; font-size: 16px; line-height: 1.6; color: var(--color-text); }

/* ============== 404 ============== */
.error404__container { max-width: 720px; margin: 0 auto; padding: 0 var(--container-pad); }
.error404__code { font-size: 120px; font-weight: 700; line-height: 1; color: var(--color-accent); margin-bottom: 24px; }
.error404__title { font-size: 36px; margin-bottom: 16px; }
.error404__text { font-size: 18px; color: var(--color-text-secondary); margin-bottom: 32px; }
.error404__actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-bottom: 40px; }

/* ============== Search form / results ============== */
.search-form { width: 100%; }
.search-form__label { display: block; font-size: 14px; color: var(--color-text-secondary); margin-bottom: 8px; }
.search-form__row { display: flex; gap: 8px; }
.search-form__input {
    flex: 1; padding: 14px 18px;
    font-family: var(--font-base); font-size: 16px;
    border: 1px solid var(--color-line); border-radius: var(--radius-md);
    background: #fff; color: var(--color-text);
}
.search-form__input:focus { outline: 2px solid var(--color-accent); outline-offset: 2px; }
.search-form__btn { padding-left: 24px; padding-right: 24px; }

.search-results { padding: 40px 0 80px; }
.search-results__container { max-width: 880px; margin: 0 auto; padding: 0 var(--container-pad); }
.search-results__title { margin-bottom: 24px; }
.search-results__query { color: var(--color-text-secondary); font-weight: 400; }
.search-results__list { display: flex; flex-direction: column; gap: 16px; margin-top: 32px; }
.search-results__empty { padding: 40px 0; color: var(--color-text-secondary); }

.search-card { padding: 24px; background: var(--color-bg-light); border-radius: var(--radius-md); }
.search-card__type { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--color-text-muted); margin-bottom: 6px; }
.search-card__title { font-size: 20px; margin-bottom: 8px; }
.search-card__title a { color: var(--color-text); }
.search-card__title a:hover { color: var(--color-text-secondary); }
.search-card__excerpt { font-size: 15px; color: var(--color-text-secondary); line-height: 1.55; }

/* ============== Pagination ============== */
.navigation.pagination .nav-links { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin-top: 40px; }
.navigation.pagination .page-numbers {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 40px; height: 40px; padding: 0 12px;
    border-radius: var(--radius-sm);
    font-size: 15px; color: var(--color-text);
}
.navigation.pagination .page-numbers.current { background: var(--color-text); color: #fff; }
.navigation.pagination a.page-numbers:hover { background: var(--color-accent); }

/* ============== Archive / Blog (categories, tags, authors) ============== */
.archive { padding: 40px 0 80px; }
.archive__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); }
.archive__head { margin-bottom: 40px; max-width: 720px; }
.archive__title { margin-bottom: 12px; }
.archive__desc { color: var(--color-text-secondary); font-size: 18px; line-height: 1.55; }
.archive__list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.archive__empty { padding: 40px 0; color: var(--color-text-secondary); }

/* ============== Blog Index (home.php) ============== */
.blog-index { padding: 20px 0 100px; }
.blog-index__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); display: flex; flex-direction: column; gap: 60px; }
.blog-index__head { display: flex; flex-direction: column; align-items: center; gap: 30px; }
.blog-index__title { font-size: 40px; font-weight: 700; color: #121212; text-align: center; }
.blog-index__subtitle { font-size: 20px; color: #5b5b5b; text-align: center; }
.blog-index__layout { display: flex; align-items: flex-start; gap: 20px; }
.blog-index__main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 40px; }
.blog-index__cards { display: flex; flex-direction: column; gap: 20px; }
.blog-index__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.blog-index__empty { color: var(--color-text-secondary); padding: 40px 0; }

/* Pagination */
.blog-index__pagination { display: flex; gap: 15px; }
.blog-index__pagination .nav-links { display: flex; align-items: center; gap: 4px; }
.blog-index__pagination .page-numbers {
    display: flex; align-items: center; justify-content: center;
    min-width: 25px; width: 25px; height: 25px; padding: 0;
    border-radius: 5px;
    font-family: "SF Pro Display", Helvetica; font-size: 16px; font-weight: 400;
    color: rgba(18, 18, 18, 0.5);
    transition: color 0.2s;
}
.blog-index__pagination .page-numbers.current { background: #fff04e; color: #121212; }
.blog-index__pagination .page-numbers:hover { color: #121212; }
.blog-index__pagination .prev.page-numbers,
.blog-index__pagination .next.page-numbers { background: none; border-radius: 0; padding: 0; width: 25px; height: 25px; }
.blog-index__pagination .page-numbers--dim { cursor: default; }

/* ============== Blog Card ============== */
.blog-card { background: #f3f3f3; border-radius: 10px; overflow: hidden; display: flex; flex-direction: column; }
.blog-card--small { flex: 1; min-width: 340px; }
.blog-card__img-wrap { display: block; overflow: hidden; }
.blog-card__img { width: 100%; object-fit: cover; display: block; }
.blog-card--featured .blog-card__img { aspect-ratio: 2.08 / 1; }
.blog-card--small .blog-card__img { height: 200px; }
.blog-card__body { display: flex; flex-direction: column; gap: 20px; padding: 20px 25px 20px; }
.blog-card--small .blog-card__body { padding: 20px 20px; }
.blog-card__cat { font-size: 14px; color: #5b5b5b; }
.blog-card__title { font-size: 20px; font-weight: 600; color: #121212; line-height: 1.4; margin: 0; }
.blog-card__title a { color: inherit; }
.blog-card__title a:hover { color: var(--color-text-secondary); }
.blog-card__footer { display: flex; align-items: center; justify-content: space-between; }
.blog-card__more { display: inline-flex; align-items: center; gap: 5px; font-size: 16px; font-weight: 700; color: #121212; }
.blog-card__more:hover { opacity: .7; }
.blog-card__date { font-size: 14px; color: #5b5b5b; }

/* ============== Blog Sidebar ============== */
.blog-sidebar { width: 380px; flex-shrink: 0; background: #f3f3f3; border-radius: 10px; padding: 20px; display: flex; flex-direction: column; gap: 20px; }
.blog-sidebar__section { display: flex; flex-direction: column; gap: 20px; }
.blog-sidebar__label { font-size: 20px; font-weight: 600; color: #121212; margin: 0; }
.blog-sidebar__cats { display: flex; flex-direction: column; gap: 20px; }
.blog-sidebar__cat { font-size: 16px; font-weight: 500; color: #5b5b5b; }
.blog-sidebar__cat:hover { color: #121212; }
.blog-sidebar__cat--active { color: #121212; }
.blog-sidebar__divider { border: none; border-top: 1px solid #d0d0d0; margin: 0; }
.blog-sidebar__post { display: flex; align-items: center; gap: 10px; }
.blog-sidebar__post-img { width: 160px; height: 80px; object-fit: cover; flex-shrink: 0; border-radius: 6px; }
.blog-sidebar__post-title { font-size: 16px; font-weight: 500; color: #121212; line-height: 1.4; }
.blog-sidebar__post:hover .blog-sidebar__post-title { color: var(--color-text-secondary); }

/* ============== Post card (archive.php) ============== */
.post-card { display: flex; flex-direction: column; height: 100%; background: #f3f3f3; border-radius: 10px; overflow: hidden; }
.post-card__img-wrap { display: block; overflow: hidden; }
.post-card__img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
.post-card__body { padding: 20px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.post-card__meta { display: flex; flex-wrap: wrap; gap: 6px; font-size: 13px; color: var(--color-text-muted); }
.post-card__sep { opacity: .6; }
.post-card__title { font-size: 18px; line-height: 1.35; flex: 1; }
.post-card__link { color: var(--color-text); }
.post-card__link:hover { color: var(--color-text-secondary); }
.post-card__excerpt { font-size: 14px; color: var(--color-text-secondary); line-height: 1.55; }

/* ============== Single post ============== */
.post { padding-bottom: 0px; }
.post__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); }
.post__header { padding: 30px 0 30px; }
.post__title { font-size: 40px; line-height: 1.2; margin-bottom: 25px; }
.post__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 15px 30px; font-size: 14px; color: #121212; }
.post__meta-item { display: inline-flex; align-items: center; gap: 5px; }
.post__meta-item img { flex-shrink: 0; }
.post__author-avatar { width: 30px; height: 30px; border-radius: 50%; object-fit: cover; }
.post__meta-author a { color: #121212; font-weight: 400; font-size: 16px; }

.post__excerpt-wrap { padding:  0; margin-bottom: 40px; }
.post__excerpt { font-size: 20px; line-height: 1.55; color: #5C5C5C;; }

.post__thumb-wrap { padding: 0px; }
.post__thumb { width: 100%; max-height: 520px; object-fit: cover; border-radius: var(--radius-lg); }

.post__body { padding: 0px 0 0px; }
.decker-post__content { font-size: 17px; line-height: 1.7; color: var(--color-text);  }
.decker-post__content h2 { font-size: 28px; margin: 100px 0 20px; scroll-margin-top: 100px; }
.decker-post__content h3 { font-size: 22px; margin: 0px 0 20px; scroll-margin-top: 100px; }
.decker-post__content p { margin-bottom: 20px; color: #5C5C5C; line-height: normal; }
.decker-post__content p.post-faq__question {     color: #121212; margin-bottom: 15px;}
.decker-post__content ul, .decker-post__content ol { margin: 0 0 20px 20px; }
.decker-post__content ul { list-style: disc; }
.decker-post__content ol { list-style: decimal; }
.decker-post__content li { color: #5C5C5C;; }
.decker-post__content img { border-radius: var(--radius-md); margin: 24px 0; }
.decker-post__content figure { margin: 24px 0; }
.decker-post__content figcaption { font-size: 14px; color: var(--color-text-muted); margin-top: 8px; }
.decker-post__content blockquote:not(.post-quote > blockquote) {
   font-size: 22px;
    font-style: italic;
    font-weight: 500;
    margin: 20px 100px 0;
    color: #121212;
    font-family: "SF Pro Display";
}
.decker-post__content blockquote p {
    color: #121212;
}

.decker-post__content a {color: #5C5C5C;

text-align: center;
font-family: "SF Pro Display";
font-size: 18px;
font-style: italic;
font-weight: 500; text-decoration: underline;  }
.decker-post__content code { background: var(--color-bg-light); padding: 2px 6px; border-radius: 4px; font-size: .9em; }
.decker-post__content pre { background: var(--color-bg-light); padding: 16px; border-radius: var(--radius-md); overflow: auto; }

.decker-post__content .table-wrap { overflow-x: auto; margin-top: 40px;  border-radius: 10px; background: #fff; -webkit-overflow-scrolling: touch; }
.decker-post__content table { width: 100%; border-collapse: collapse; background: #fff; border: none; border-radius: 10px; overflow: hidden; }
.decker-post__content th,
.decker-post__content td { min-width: 260px;  }
.decker-post__content th { padding: 13px 20px; text-align: left; background: #fff04e; color: #121212; font-family: "SF Pro Display"; font-size: 20px; font-weight: 600; border: none; }
.decker-post__content th:first-child { border-radius: 10px 0 0 0; }
.decker-post__content th:last-child  { border-radius: 0 10px 0 0; }
.decker-post__content td { padding: 13px 20px; background: #F4F4F4; text-align: left; color: #121212; font-family: "SF Pro Display"; font-size: 18px; font-weight: 400; border: none; border-bottom: 1px solid #ccc; }
.decker-post__content tr:last-child td { border-bottom: none; }
.decker-post__content table:not(:has(thead)) tr:first-child td { background: #fff04e; color: #121212; font-family: "SF Pro Display"; font-size: 20px; font-weight: 600; border-bottom: none; }
.decker-post__content table:not(:has(thead)) tr:first-child td:first-child { border-radius: 10px 0 0 0; }
.decker-post__content table:not(:has(thead)) tr:first-child td:last-child  { border-radius: 0 10px 0 0; }


/* ============== TOC ============== */
.post__toc-wrap { padding: 32px 0 0; }
.toc { display: flex; flex-direction: column; gap: 0; }
.toc__title { font-size: 32px; font-weight: 700; color: #121212; margin-bottom: 20px; font-family: "SF Pro Display", Helvetica; }
.toc__list { display: flex; flex-direction: column; gap: 15px; list-style: disc; padding-left: 24px; margin: 0; }
.toc__item--h3 { padding-left: 16px; }
.toc__link { font-size: 20px; font-weight: 400; color: #5b5b5b; text-decoration: underline; line-height: 1.4; transition: color .2s; }
.toc__link:hover { color: #121212; }

/* ============== Share ============== */
.share__list { display: flex; gap: 8px; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.share__link {
    display: inline-flex; align-items: center; justify-content: center;
    width: 35px; height: 35px; flex-shrink: 0;
    border-radius: 50%; background: var(--color-accent);
    border: none; cursor: pointer; transition: opacity .2s;
}
.share__link:hover { opacity: .8; }

/* ============== Related posts / More cases ============== */
.related-posts, .more-cases { padding: 60px 0; background: var(--color-bg-light); }
.related-posts__container, .more-cases__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); }
.related-posts__title, .more-cases__title { margin-bottom: 32px; }
.related-posts__list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.more-cases__list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.more-cases__card { display: block; background: #fff; border-radius: var(--radius-lg); overflow: hidden; transition: transform .2s; }
.more-cases__card:hover { transform: translateY(-2px); }
.more-cases__img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.more-cases__name { padding: 20px 24px; font-size: 18px; font-weight: 700; }
@media (max-width: 1024px) { .related-posts__list, .more-cases__list { grid-template-columns: repeat(2, 1fr); } }

/* ============== Cases archive ============== */
.cases-archive { padding: 0px 0 80px; }
.cases-archive__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); }
.cases-archive__head { margin-bottom: 40px; }
.cases-archive__title { margin-bottom: 16px; }
.cases-archive__desc { color: var(--color-text-secondary); font-size: 18px; max-width: 720px; margin-bottom: 24px; }
.cases-archive__filters { display: flex; flex-wrap: wrap; gap: 8px; }
.cases-archive__filter a {
    display: inline-block; padding: 13px 15px; border-radius: 100px;
    background: var(--color-bg-light); font-size: 16px; color: rgba(18, 18, 18, 0.5); font-weight: 700;
}
.cases-archive__filter.is-active a,
.cases-archive__filter a:hover { background: #fff04e; color: var(--color-text); }
.cases-archive__filter a:hover { background: var(--color-accent); }
.cases-archive__list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.cases-archive__empty { padding: 40px 0; color: var(--color-text-secondary); }

.case-card { display: block; background: var(--color-bg-light); border-radius: var(--radius-lg); overflow: hidden; transition: box-shadow .2s; }
.case-card:hover { box-shadow: 4px 4px 24px rgba(0,0,0,.08); }
.case-card__img-wrap { overflow: hidden; }
.case-card__img { width: 100%; aspect-ratio: 16/9; object-fit: cover; transition: transform .4s; }
.case-card:hover .case-card__img { transform: scale(1.03); }
.case-card__body { padding: 20px; }
.case-card__title { font-size: 20px; font-weight: 600; line-height: 1.3; }
.case-card__excerpt { font-size: 14px; color: var(--color-text-secondary); line-height: 1.55; margin-bottom: 16px; }
.case-card__more { font-weight: 700; color: var(--color-text); font-size: 16px; }
@media (max-width: 768px) { .cases-archive__list { grid-template-columns: 1fr; } }

/* ============== Pricing hero ============== */
.pricing-hero { padding: 60px 0; }
.pricing-hero__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); display: flex; flex-direction: column; align-items: center; gap: 30px; text-align: center; }
.pricing-hero__title { font-size: 40px; font-weight: 700; color: #121212; }
.pricing-hero__text { font-size: 20px; color: var(--color-text-secondary); max-width: 720px; }
.pricing-hero__actions { display: flex; flex-wrap: wrap; gap: 15px; justify-content: center; }

/* ============== Pricing ============== */
.pricing { padding: 0 0 100px; }
.pricing__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); }
.pricing-panel { display: flex; flex-direction: column; gap: 40px; }
.pricing-panel__head { display: flex; flex-direction: column; align-items: center; gap: 15px; text-align: center; }
.pricing-panel__title { font-size: 32px; font-weight: 700; color: #121212; }
.pricing-panel__text { font-size: 20px; color: var(--color-text-secondary); }
.pricing-period { display: flex; align-items: center; gap: 8px; background: var(--color-bg-light); border-radius: 100px; padding: 4px; align-self: center; }
.pricing-period__btn { padding: 10px 20px; border-radius: 100px; font-size: 16px; font-weight: 500; color: var(--color-text-secondary); background: none; border: none; cursor: pointer; transition: background .2s, color .2s; white-space: nowrap; }
.pricing-period__btn--active { background: #fff; color: #121212; font-weight: 700; }
.pricing-period__badge { font-size: 12px; font-weight: 700; color: var(--color-accent); background: #121212; border-radius: 100px; padding: 2px 8px; margin-left: 4px; }
.pricing-plans { display: flex; flex-wrap: wrap; gap: 20px; justify-content: center; }

/* Plan cards */
.plan-card { display: flex; flex-direction: column; gap: 20px; background: #f3f3f3; border-radius: 20px; padding: 25px; flex: 0 0 calc(25% - 15px); min-width: 240px; }
.plan-card--free { background: #f3f3f3; }
.plan-card--popular { background: #121212; color: #fff; }
.plan-card--premium { background: var(--color-accent); }
.plan-card--enterprise { background: #f3f3f3; }
.plan-card__header { display: flex; flex-direction: column; gap: 8px; }
.plan-card__title { font-size: 20px; font-weight: 700; color: #121212; }
.plan-card--popular .plan-card__title { color: #fff; }
.plan-card--premium .plan-card__title { color: #121212; }
.plan-card__desc { font-size: 14px; color: var(--color-text-secondary); line-height: 1.5; }
.plan-card--popular .plan-card__desc { color: rgba(255,255,255,.6); }
.plan-card__price { display: flex; flex-direction: column; gap: 4px; }
.plan-card__amount { font-size: 40px; font-weight: 700; color: #121212; line-height: 1; }
.plan-card__amount--text { font-size: 28px; }
.plan-card--popular .plan-card__amount { color: #fff; }
.plan-card--premium .plan-card__amount { color: var(--color-accent); }
.plan-card__period { font-size: 14px; color: var(--color-text-secondary); }
.plan-card--popular .plan-card__period { color: rgba(255,255,255,.55); }
.plan-card--premium .plan-card__period { color: rgba(255,255,255,.55); }
.plan-card__sub-period { font-size: 14px; color: #9A9A9A; }
.plan-card--popular .plan-card__sub-period { color: rgba(255,255,255,.45); }
.plan-card--premium .plan-card__sub-period { color: rgba(255,255,255,.45); }
.plan-card__actions { display: flex; flex-direction: column; gap: 8px; }
.plan-card__actions .btn { width: 100%; justify-content: center; }
.plan-card__trial { font-size: 12px; color: var(--color-text-secondary); text-align: center; }
.plan-card--popular .plan-card__trial { color: rgba(255,255,255,.45); }
.plan-card--premium .plan-card__trial { color: rgba(255,255,255,.45); }
.plan-card__features { display: flex; flex-direction: column; gap: 15px; }
.plan-card__feature { display: flex; align-items: center; gap: 10px; font-size: 14px; line-height: 1.4; }
.plan-card__feature-icon { display: inline-block; width: 18px; height: 18px; flex-shrink: 0; font-size: 0; margin-top: 1px; background-size: 18px 18px; background-repeat: no-repeat; background-position: center; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Ccircle cx='9' cy='9' r='9' fill='%23121212'/%3E%3Cpath d='M7.41997 11.4722L12.9006 6.18708C13.03 6.06236 13.1809 6 13.3533 6C13.5258 6 13.6767 6.06236 13.806 6.18708C13.9353 6.3118 14 6.46001 14 6.63171C14 6.80342 13.9353 6.95142 13.806 7.07572L7.87265 12.8129C7.74332 12.9376 7.59242 13 7.41997 13C7.24752 13 7.09663 12.9376 6.96729 12.8129L4.18654 10.1314C4.05721 10.0067 3.99512 9.85868 4.0003 9.68739C4.00547 9.51611 4.07294 9.3679 4.20271 9.24276C4.33248 9.11762 4.48618 9.05526 4.6638 9.05568C4.84142 9.05609 4.9949 9.11846 5.12424 9.24276L7.41997 11.4722Z' fill='white'/%3E%3C/svg%3E"); }
.plan-card:not(.plan-card--free):not(.plan-card--popular):not(.plan-card--premium):not(.plan-card--enterprise) .plan-card__feature-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Ccircle cx='9' cy='9' r='9' fill='%23fff04e'/%3E%3Cpath d='M7.41997 11.4722L12.9006 6.18708C13.03 6.06236 13.1809 6 13.3533 6C13.5258 6 13.6767 6.06236 13.806 6.18708C13.9353 6.3118 14 6.46001 14 6.63171C14 6.80342 13.9353 6.95142 13.806 7.07572L7.87265 12.8129C7.74332 12.9376 7.59242 13 7.41997 13C7.24752 13 7.09663 12.9376 6.96729 12.8129L4.18654 10.1314C4.05721 10.0067 3.99512 9.85868 4.0003 9.68739C4.00547 9.51611 4.07294 9.3679 4.20271 9.24276C4.33248 9.11762 4.48618 9.05526 4.6638 9.05568C4.84142 9.05609 4.9949 9.11846 5.12424 9.24276L7.41997 11.4722Z' fill='%23121212'/%3E%3C/svg%3E"); }
.plan-card--popular .plan-card__feature-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Ccircle cx='9' cy='9' r='9' fill='white'/%3E%3Cpath d='M7.41997 11.4722L12.9006 6.18708C13.03 6.06236 13.1809 6 13.3533 6C13.5258 6 13.6767 6.06236 13.806 6.18708C13.9353 6.3118 14 6.46001 14 6.63171C14 6.80342 13.9353 6.95142 13.806 7.07572L7.87265 12.8129C7.74332 12.9376 7.59242 13 7.41997 13C7.24752 13 7.09663 12.9376 6.96729 12.8129L4.18654 10.1314C4.05721 10.0067 3.99512 9.85868 4.0003 9.68739C4.00547 9.51611 4.07294 9.3679 4.20271 9.24276C4.33248 9.11762 4.48618 9.05526 4.6638 9.05568C4.84142 9.05609 4.9949 9.11846 5.12424 9.24276L7.41997 11.4722Z' fill='%23121212'/%3E%3C/svg%3E"); }
.plan-card--premium .plan-card__feature-icon { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Ccircle cx='9' cy='9' r='9' fill='%23fff04e'/%3E%3Cpath d='M7.41997 11.4722L12.9006 6.18708C13.03 6.06236 13.1809 6 13.3533 6C13.5258 6 13.6767 6.06236 13.806 6.18708C13.9353 6.3118 14 6.46001 14 6.63171C14 6.80342 13.9353 6.95142 13.806 7.07572L7.87265 12.8129C7.74332 12.9376 7.59242 13 7.41997 13C7.24752 13 7.09663 12.9376 6.96729 12.8129L4.18654 10.1314C4.05721 10.0067 3.99512 9.85868 4.0003 9.68739C4.00547 9.51611 4.07294 9.3679 4.20271 9.24276C4.33248 9.11762 4.48618 9.05526 4.6638 9.05568C4.84142 9.05609 4.9949 9.11846 5.12424 9.24276L7.41997 11.4722Z' fill='%23121212'/%3E%3C/svg%3E"); }
.plan-card__note { font-size: 12px; color: var(--color-text-muted); line-height: 1.5; padding-top: 16px; border-top: 1px solid var(--color-line); margin-top: auto; }
.plan-card--popular .plan-card__note { color: rgba(255,255,255,.45); border-color: rgba(255,255,255,.12); }
.plan-card--premium .plan-card__note { color: rgba(255,255,255,.45); border-color: rgba(255,255,255,.12); }

/* ============== Pricing compare ============== */
.pricing-compare { margin-bottom: 0; }
.pricing-compare__title { margin-bottom: 60px; text-align: center; }
.pricing-compare__grid { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.pricing-compare__head { display: grid; grid-template-columns: 1fr repeat(4, 140px); gap: 0; background: #f3f3f3; border-radius: 10px 10px 0 0; }
.pricing-compare__head-cell { padding: 16px 20px; font-size: 14px; font-weight: 700; color: #121212; }
.pricing-compare__row { display: grid; grid-template-columns: 1fr repeat(4, 140px); gap: 0; border-bottom: 1px solid var(--color-line); }
.pricing-compare__row:last-child { border-bottom: none; }
.pricing-compare__label { padding: 16px 20px; font-size: 14px; color: var(--color-text); font-weight: 500; }
.pricing-compare__cell { padding: 16px 20px; display: flex; align-items: center; justify-content: center; }
.pricing-compare__tag { font-size: 13px; color: var(--color-text-secondary); text-align: center; }
.pricing-compare__check, .pricing-compare__minus { display: flex; align-items: center; justify-content: center; }
@media (max-width: 768px) { .pricing-compare__head, .pricing-compare__row { grid-template-columns: 1fr repeat(4, 100px); } }

/* ============== Post: categories outside article ============== */
.post__cats-wrap { padding: 32px 0 0; }
.post__cats { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.post__cat { display: inline-flex; align-items: center; padding: 10px 15px; background: var(--color-bg-light); border-radius: 100px; color: var(--color-text-secondary); font-size: 16px; }

/* ============== Post: quote (figure.post-quote) ============== */
.post-quote { margin: 24px 0; padding: 20px 24px; background: var(--color-bg-light); border-left: 4px solid var(--color-accent); border-radius: var(--radius-sm); }
.post-quote blockquote { margin: 0; }
.post-quote blockquote p { font-style: italic; margin-bottom: 8px; color: var(--color-text); }
.post-quote figcaption { font-size: 14px; color: var(--color-text-secondary); }
.post-quote figcaption a { color: inherit; text-decoration: underline; }

/* ============== Post: sources ============== */
.post-sources { padding: 50px 0 0; }
.post-sources__title { font-size: 20px; font-weight: 700; color: #121212; margin-bottom: 20px;  padding-top: 20px; border-top: 1px solid #ADADAD; }
.post-sources__list { list-style: none;  margin: 0; margin-left: 20px; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.post-sources__item { font-size: 18px; color: var(--color-text-secondary); list-style: disc; }
.post-sources__item a { color: inherit; text-decoration: underline; }

/* ============== Post: FAQ block ============== */
.post-faq__title { font-size: 32px; font-weight: 700; color: #121212; margin-bottom: 30px; }
.post-faq__list { display: flex; flex-direction: column; gap: 15px; }
.post-faq__item { background: #f3f3f3; border-radius: 20px; padding: 15px 15px 21px; }
.post-faq__row { display: flex; align-items: flex-start; gap: 15px; }
.post-faq__num { width: 35px; height: 35px; flex-shrink: 0; background: var(--color-accent); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 20px; font-weight: 700; color: #121212; }
.post-faq__body { flex: 1; display: flex; flex-direction: column; gap: 0px; }
.post-faq__question { font-size: 20px; font-weight: 700; color: #121212; margin: 0; }
.post-faq__answer { border-top: 1px solid var(--color-line); padding-top: 15px; font-size: 16px; color: var(--color-text-secondary); }
.post-faq__answer p { margin: 0; }

/* ============== Post: actions section (share + rating) ============== */
.post-actions { padding: 40px 0 100px; background: var(--color-bg-light); }
.post-actions__inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.post-rating { display: flex; align-items: center; gap: 13px; }
.post-rating__stars { display: flex; align-items: center; gap: 0px; }
.post-rating__star { background: none; border: none; cursor: pointer; padding: 2px; transition: transform .15s; }
.post-rating__star:hover { transform: scale(1.15); }
.post-rating__value { font-size: 16px; font-weight: 600; color: #121212; }
.post-rating__count { font-size: 16px; color: #121212;  }

/* ============== Post card: additions for similar-posts ============== */
.post-card__category { display: inline-block; padding: 4px 10px; background: var(--color-bg-light); border-radius: 100px; font-size: 12px; color: var(--color-text-secondary); }
.post-card__footer { display: flex; align-items: center; justify-content: space-between; margin-top: auto; padding-top: 10px; }
.post-card__more { display: inline-flex; align-items: center; gap: 4px; font-size: 14px; font-weight: 700; color: var(--color-text); }
.post-card__more:hover { opacity: .7; }
.post-card__date { font-size: 13px; color: var(--color-text-muted); }

/* ============== Similar posts section ============== */
.similar-posts { padding: 100px 0; }
.similar-posts__container { max-width: var(--container); margin: 0 auto; padding: 0 var(--container-pad); display: flex; flex-direction: column; gap: 40px; }
.similar-posts__title { font-size: 36px; font-weight: 700; color: #121212; text-align: center; }
.similar-posts__list { display: flex; flex-wrap: wrap; gap: 20px; list-style: none; margin: 0; padding: 0; }
.similar-posts__item { flex: 0 0 calc(33.333% - 14px); display: flex; }
