 :root {
 	--brand: rgb(235, 83, 83);
 	--brand-2: #ee6564;
 	--accent: #c8a460;
 	--text: #1a1a1a;
 	--muted: #6b7280;
 	--bg: #ffffff;
 	--bg-alt: #f6f7fb;
 	--border: #e5e7eb;
 	--radius: 16px;
 	--shadow: 0 10px 25px rgba(0, 0, 0, .06);
 }

 article.scenario-card {
 	max-width: 300px;
 	max-height: 230px;
 }

 .kmc-error {
 	font-size: 12px;
 	color: red;
 }

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

 .u-center {
 	text-align: center
 }


 .u-right {
 	text-align: right
 }

 .u-muted {
 	color: var(--muted)
 }

 .u-italic {
 	font-style: italic
 }

 .u-mt-8 {
 	margin-top: 8px
 }

 .u-mt-12 {
 	margin-top: 12px
 }

 .u-mt-16 {
 	margin-top: 16px
 }

 .u-mt-24 {
 	margin-top: 24px
 }

 .u-mt-32 {
 	margin-top: 32px
 }

 .u-mt-48 {
 	margin-top: 48px
 }

 .u-mt-56 {
 	margin-top: 56px
 }

 .u-mb-24 {
 	margin-bottom: 24px
 }

 .u-max-720 {
 	max-width: 720px;
 	margin-left: auto;
 	margin-right: auto
 }

 /* AnsPress header controls: reorder ask button and search */
 .ap-list-head.clearfix {
 	display: flex;
 	align-items: center;
 	justify-content: flex-start;
 	gap: 12px;
 	flex-wrap: wrap;
 	/* переносим строки, чтобы фильтры ушли вниз */
 }

 .first_row {
 	margin-bottom: -20px;
 }

 .ap-list-head.clearfix * {
 	font-size: 15px !important;
 	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Inter, Arial, "Noto Sans", sans-serif;
 }

 .ap-list-head .ap-search-form {
 	order: 1;
 	flex: 1 1 80%;
 	min-width: 280px;
 }

 .first_row {
 	width: 100%;
 	display: flex;
 	justify-content: space-between;
 }

 .ap-list-head .pull-right {
 	order: 2;
 	flex: 0 0 auto;
 }

 .ap-list-head #ap-filters {

 	flex: 1 1 100%;
 }

 /* Inside search form: put input before submit button */
 .ap-search-form {
 	display: flex;
 	align-items: stretch;
 	gap: 8px;
 }

 .ap-search-form .ap-search-inner {
 	order: 1;
 	flex: 1 1 auto;
 }

 .ap-search-form .ap-search-btn {
 	order: 2;
 	flex: 0 0 auto;
 }

 @media (max-width: 768px) {
 	.ap-list-head.clearfix {
 		flex-wrap: wrap;
 	}

 	.ap-list-head .ap-search-form {
 		order: 1;
 		flex: 1 1 100%;
 	}

 	.ap-list-head .pull-right {
 		order: 2;
 		flex: 0 0 auto;
 	}

 	.ap-list-head #ap-filters {

 		flex: 1 1 100%;
 	}
 }

 .no-pad {
 	padding: 0
 }

 .overflow-hidden {
 	overflow: hidden
 }

 .u-rel {
 	position: relative
 }

 .rounded {
 	border-radius: var(--radius)
 }

 .u-gap-2 {
 	gap: 2rem
 }

 .u-pad-0 {
 	padding: 0
 }

 .u-round-50 {
 	border-radius: 50%
 }

 .u-inline {
 	display: inline
 }

 .u-block {
 	display: block
 }

 .u-inline-center {
 	display: flex;
 	justify-content: center;
 	align-items: center
 }

 textarea#msg {
 	resize: vertical;
 }

 html {
 	scroll-behavior: smooth
 }

 *,
 *::before,
 *::after {
 	box-sizing: border-box
 }

 body {
 	margin: 0;
 	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Inter, Arial, "Noto Sans", sans-serif;
 	color: var(--text);
 	background: var(--bg);
 	line-height: 1.6;
 	margin-top: -20px;
 }

 img {
 	max-width: 100%;
 	height: auto;
 	display: block
 }

 a {
 	color: var(--brand);
 	text-decoration: none
 }

 a:hover {
 	color: var(--brand-2)
 }

 .container {
 	max-width: 1200px;
 	margin-inline: auto;
 	padding: 0 20px
 }

 .btn {
 	display: inline-flex;
 	align-items: center;
 	gap: .5rem;
 	padding: .875rem 1.25rem;
 	border-radius: 999px;
 	background: var(--brand);
 	color: #fff;
 	font-weight: 600;
 	box-shadow: var(--shadow);
 	transition: .2s;
 	height: 50px;
 }

 .btn:hover {
 	background: var(--brand-2);
 	transform: translateY(-1px)
 }

 .btn--ghost {
 	background: transparent;
 	color: var(--brand);
 	border: 1px solid var(--brand)
 }

 .btn--ghost:hover {
 	background: var(--brand);
 	color: #fff
 }

 .badge {
 	display: inline-block;
 	padding: .25rem .625rem;
 	border-radius: 999px;
 	background: var(--bg-alt);
 	color: var(--muted);
 	font-size: .8125rem
 }

 /* ===== Comments: base styles and tree layout ===== */
 .comment {
 	position: relative;
 	padding: 44px 16px 44px;
 	/* больше нижний отступ под мету */
 	border: 1px solid #e6e9ef;
 	border-radius: 10px;
 	background: #fff;
 }

 .comment+.comment {
 	margin-top: 14px;
 }

 .comment.depth-2 {
 	margin-left: 24px;
 }

 .comment.depth-3 {
 	margin-left: 48px;
 }

 .comment.depth-4 {
 	margin-left: 72px;
 }

 .comment.depth-5 {
 	margin-left: 96px;
 }

 .comment.depth-6 {
 	margin-left: 120px;
 }

 .comment.depth-2::before,
 .comment.depth-3::before,
 .comment.depth-4::before,
 .comment.depth-5::before,
 .comment.depth-6::before {
 	content: '';
 	position: absolute;
 	left: -12px;
 	top: 0;
 	bottom: 0;
 	width: 2px;
 	background: #e6e9ef;
 	border-radius: 2px;
 }

 .comment-author.vcard {
 	display: flex;
 	align-items: center;
 	gap: 12px;
 }

 .comment .avatar {
 	border-radius: 50%;
 	box-shadow: 0 0 0 2px #eef3ff;
 }

 .comment .fn {
 	font-weight: 600;
 	color: #1d2433;
 }

 .comment .says {
 	display: none !important;
 }

 .comment-meta {
 	font-size: 13px;
 	color: #6b7280;
 	margin: 6px 0 8px;
 }

 .comment-meta {
 	position: absolute;
 	right: 12px;
 	bottom: 12px;
 	top: auto;
 	margin: 0;
 	font-size: 12px;
 	color: var(--muted);
 }

 .comment-meta a {
 	color: #6b7280;
 	text-decoration: none;
 }

 .comment-meta a:hover {
 	color: var(--brand);
 }

 .comment p {
 	margin: 8px 0 10px;
 	line-height: 1.55;
 	color: #283141;
 }

 .comment .reply {
 	margin-top: 6px;
 }

 .comment .comment-reply-link {
 	display: inline-block;
 	padding: 6px 10px;
 	font-size: 13px;
 	color: var(--brand);
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	border-radius: 8px;
 	text-decoration: none;
 }

 .comment .comment-reply-link:hover {
 	background: #eef2f7;
 	border-color: var(--brand);
 	color: var(--brand);
 }

 /* Toggle button: mirror reply link styles */
 .kmc-comments-toggle {
 	display: inline-block;
 	padding: 6px 10px;
 	font-size: 13px;
 	color: var(--brand);
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	border-radius: 8px;
 	text-decoration: none;
 	cursor: pointer;
 }

 .kmc-comments-toggle:hover {
 	background: #eef2f7;
 	border-color: var(--brand);
 	color: var(--brand);
 }

 /* Comment highlight when navigated via #comment-{id} */
 .comment.is-highlight {
 	background: rgba(235, 83, 83, 0.06);
 	border-color: var(--brand);
 	box-shadow: 0 0 0 2px rgba(235, 83, 83, 0.12) inset;
 	transition: background .6s ease, box-shadow .6s ease, border-color .6s ease;
 }

 /* Lawyer highlight: user-5 */
 .comment.user-5 {
 	border-color: rgba(235, 83, 83, .22);
 	background: rgba(235, 83, 83, .06);
 	/* более заметный фон для комментария юриста */
 }

 .comment.user-5 .fn {
 	color: var(--brand);
 }

 .comment.user-5 .avatar {
 	box-shadow: 0 0 0 2px rgba(235, 83, 83, .25);
 }

 /* Плашка перед именем автора: "Отвечает юрист" + иконка */
 .comment.user-5>.comment-author.vcard .fn {
 	display: block;
 	/* чтобы имя ушло на новую строку после плашки */
 	margin-top: 6px;
 }

 .comment.user-5>.comment-author.vcard .fn::before {
 	content: '🛡️  Отвечает юрист';
 	display: block;
 	/* принудительно на отдельной строке */
 	padding: 6px 10px;
 	margin-bottom: 6px;
 	border-radius: 8px;
 	background: linear-gradient(90deg, rgba(235, 83, 83, .12), rgba(235, 83, 83, .06));
 	color: var(--brand);
 	border: 1px solid rgba(235, 83, 83, .22);
 	font-size: 12px;
 	font-weight: 600;
 	width: fit-content;
 }

 /* Compact nested spacing */
 .comment[class*='depth-'] {
 	margin-top: 10px;
 	padding-top: 44px;
 	padding-bottom: 44px;
 	/* место для меты снизу справа */
 }

 .card {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: var(--radius);
 	box-shadow: var(--shadow)
 }

 h1,
 h2,
 h3 {
 	line-height: 1.25;
 	margin: 0 0 .5em
 }

 h1 {
 	font-size: clamp(28px, 4vw, 44px)
 }

 h2 {
 	font-size: clamp(22px, 3vw, 32px)
 }

 h3 {
 	font-size: clamp(18px, 2.5vw, 24px)
 }

 p {
 	margin: 0 0 1em
 }

 /* Шапка */
 header.site-header {
 	position: sticky;
 	top: 0;
 	z-index: 50;
 	background: #fff;
 	border-bottom: 1px solid var(--border);
 	backdrop-filter: saturate(180%) blur(4px)
 }

 .nav {
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	padding: .75rem 0;
 	gap: 1rem;
 	padding: 20px;
 }

 .brand {
 	display: flex;
 	align-items: center;
 	gap: .75rem;
 	font-weight: 800;
 	color: var(--brand)
 }

 i.fa-brands.fa-telegram {
 	color: #27a7e7;
 }

 .brand__logo {
 	background: url(../img/logo.png) no-repeat center;
 	width: 50px;
 	height: 50px;
 	background-size: contain;
 }

 .menu {
 	display: flex;
 	align-items: center;
 	gap: 1rem
 }

 .menu__list {
 	list-style: none;
 	display: flex;
 	align-items: center;
 	gap: .25rem;
 	margin: 0;
 	padding: 0
 }

 .menu__list>li>a {
 	padding: .5rem .75rem;
 	border-radius: 10px;
 	color: var(--text);
 	display: inline-flex;
 	align-items: center;
 	gap: .35rem
 }

 .menu__list>li>a:hover,
 .menu__list>li>a[aria-current="page"] {
 	background: var(--brand);
 	color: white;
 }

 .menu__icons {
 	display: flex;
 	align-items: center;
 	gap: .5rem;
 	margin-left: .25rem
 }

 .menu__icons .icon-btn {
 	width: 36px;
 	height: 36px;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	border-radius: 10px;
 	background: #fff;
 	border: 1px solid var(--border);
 	color: var(--brand);
 	transition: .2s
 }

 .menu__icons .icon-btn:hover {
 	background: var(--brand);
 	color: #fff;
 	border-color: transparent
 }

 /* Dropdown */
 .menu .has-submenu {
 	position: relative
 }

 .menu .has-submenu>a {
 	position: relative;
 	padding-right: 1.25rem
 }

 div#respond {
 	margin-top: 20px;
 }

 span.light {
 	display: none;
 }

 .menu .has-submenu>a::after {
 	content: "\25BE";
 	position: absolute;
 	right: 0px;
 	font-size: 1.7rem;
 	opacity: .6;
 }

 div.tab-panel p.u-mt-32.u-center {
height: 100px;
	margin: 0;
	display: flex;
	justify-content: center;
	align-items: center;
		margin-bottom: -9px;
 }

 section#contacts-page .u-center.u-mt-32>p {
 	margin-bottom: -5px;
 }

 section.svc-cta2>.container>p:nth-child(2) {
 	margin-bottom: -5px;
 }

 section.svc-cta2>.container p.cool {
 	height: 100px;
 	display: flex;
 	justify-content: center;
 	align-items: center;
 	margin-bottom: 0px;
 }

 section.cta-final.cta-final--gradient>.container p.mt-16 {
 	height: 100px;
 	display: flex;
 	justify-content: center;
 	margin: auto;
 	align-items: center;
 }

 .container.lp-hero__wrap .cent_but {
 	height: 100px;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 }

 section#contacts-page .u-center.u-mt-32>div {
 	height: 100px;
 	display: flex;
 	justify-content: center;
 	align-items: center;
 }

 section.lp-hero {
 	padding-bottom: 0px;
 }

 section.lp-situ>.container div.u-center {
 	height: 100px;
 	display: flex;
 	justify-content: center;
 	align-items: center;
 }

 section.lp-situ p.u-center.u-italic.u-muted.u-mt-32 {
 	margin-bottom: -5px;
 }

 section.lp-situ {
 	padding-bottom: 0px;
 }

 .menu .submenu {
 	position: absolute;
 	left: 0;
 	top: calc(100% + 6px);
 	min-width: 220px;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	box-shadow: var(--shadow);
 	padding: .5rem;
 	display: none;
 	list-style: none;
 }

 .menu .submenu li a {
 	display: block;
 	padding: .5rem .625rem;
 	border-radius: 8px;
 	color: var(--text)
 }

 .menu .submenu li a:hover {
 	background: var(--brand);
 	color: white;
 }

 .menu .has-submenu.open>.submenu {
 	display: block
 }

 /* Burger */
 .nav-toggle {
 	display: none;
 	position: relative;
 	width: 40px;
 	height: 40px;
 	border: 1px solid var(--border);
 	border-radius: 10px;
 	background: #fff;
 	align-items: center;
 	justify-content: center;
 	cursor: pointer
 }

 .nav-toggle .bar {
 	position: relative;
 	width: 18px;
 	height: 2px;
 	background: #111;
 	border-radius: 2px;
 	transition: .25s
 }

 .nav-toggle .bar::before,
 .nav-toggle .bar::after {
 	content: "";
 	position: absolute;
 	left: 0;
 	width: 18px;
 	height: 2px;
 	background: #111;
 	border-radius: 2px;
 	transition: .25s
 }

 .nav-toggle .bar::before {
 	top: -6px
 }

 .nav-toggle .bar::after {
 	top: 6px
 }

 .nav-toggle.is-open .bar {
 	background: transparent
 }

 .nav-toggle.is-open .bar::before {
 	transform: translateY(6px) rotate(45deg)
 }

 .nav-toggle.is-open .bar::after {
 	transform: translateY(-6px) rotate(-45deg)
 }

 /* Prevent body scroll when menu overlay is open */
 body.no-scroll {
 	overflow: hidden
 }

 section {
 	padding: 56px 0
 }

 .grid {
 	display: grid;
 	gap: 1rem
 }

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

 .grid--3 {
 	grid-template-columns: repeat(3, minmax(0, 1fr))
 }

 /* Контакты */
 .contacts-page {
 	background: #fff
 }

 .social-row {
 	display: flex;
 	gap: .75rem
 }

 .map-badge {
 	position: absolute;
 	top: 12px;
 	right: 12px;
 	background: #fff9e6;
 	border: 1px dashed #f1d18a;
 	padding: .25rem .5rem;
 	border-radius: 6px;
 	font-size: .875rem;
 	color: #5a4b1f
 }

 .pill {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	padding: 1rem;
 	text-align: center
 }

 /* Блок услуг: базовые стили */
 .svc-how {
 	padding: 40px 0
 }

 .svc-how__grid {
 	display: grid;
 	grid-template-columns: 1fr 1.2fr;
 	gap: 1.25rem
 }

 .row_soc {
 	display: flex;
 	gap: 20px;
 }

 #map {
 	width: 100%;
 	height: 380px;
 }

 .grid.grid--2.bg-legal-corner-bl img {
 	max-height: 480px;
 }

 .svc-how__media {
 	min-height: 260px;
 	display: flex;
 	justify-content: center;
 }

 .svc-how__media img {
 	max-height: 400px;
 }

 .container.svc-how__grid div:last-child {
 	display: flex;
 	flex-direction: column;
 	justify-content: center;
 }

 .svc-cta {
 	padding: 32px 0;
 	text-align: center
 }

 .svc-cta2 {
	padding: 0;
 	text-align: center
 }

 .grid.grid--2.bg-legal-corner-bl {
 	display: flex;
 	justify-content: space-around;
 }

 .footer {
 	background: #fff;
 	color: var(--text);
 	padding: 32px 0;
 	border-top: 1px solid var(--border)
 }

 .footer a {
 	color: var(--text)
 }

 .legal {
 	border-top: 1px solid var(--border);
 	margin-top: 16px;
 	padding-top: 16px;
 	font-size: .9rem;
 	color: var(--muted);
 	text-align: center
 }

 .footer-grid {
 	display: grid;
 	grid-template-columns: 1fr auto 1fr;
 	align-items: start;
 	gap: 1rem
 }

 .brand--center {
 	justify-content: center;
 	color: var(--text)
 }

 .hero {
 	background: linear-gradient(180deg, #ffffff, #f9fafb);
 	border-bottom: 1px solid var(--border)
 }

 .hero__wrap {
 	display: grid;
 	grid-template-columns: 1.1fr .9fr;
 	gap: 2rem;
 	align-items: center;
 	padding: 48px 10px;
 }

 .lp-hero {
 	background: linear-gradient(180deg, #f7f8fb, #ffffff);
 	border-bottom: 1px solid var(--border);
 	padding: 48px 0
 }

 .lp-hero__wrap {
 	display: grid;
 	grid-template-columns: 1.7fr 1fr;
 	gap: 8rem;
 	align-items: center
 }

 .lp-hero h1 {
 	font-size: clamp(26px, 3.4vw, 38px)
 }

 .lp-list {
 	margin: 1rem 0 -5px;
 	display: grid;
 	gap: .5rem;
 	color: #374151
 }

 .lp-hero__media {
 	position: relative;
 	border-radius: 16px;
 	overflow: hidden;
 }

 .lp-badge {
 	position: absolute;
 	right: 12px;
 	top: 12px;
 	background: #fff9e6;
 	border: 1px dashed #f1d18a;
 	color: #5a4b1f;
 	border-radius: 8px;
 	padding: .5rem .625rem;
 	font-weight: 700
 }

 section#services-page {
 	padding: 0;
 }

 .section__header {
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	gap: 1rem;
 	margin-bottom: 24px
 }

 .grid {
 	display: grid;
 	gap: 1rem
 }

 .grid--3 {
 	grid-template-columns: repeat(3, minmax(0, 1fr))
 }

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

 .tabs_four {
 	display: grid;
 	grid-template-columns: repeat(4, minmax(0, 1fr));
 	background: #fff
 }

 .tab {
 	background: #fff;
 	padding: .75rem 1rem;
 	text-align: center;
 	font-weight: 600
 }

 .tab[aria-selected="true"] {
 	background: var(--bg-alt);
 	color: var(--brand)
 }

 .pill-grid {
 	display: grid;
 	grid-template-columns: repeat(4, minmax(0, 1fr));
 	gap: 1rem;
 	margin-top: 1rem
 }

 .pill {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	padding: 1rem;
 	text-align: center
 }

 .lp-proof {
 	padding: 48px 0;
 	border-bottom: 1px solid var(--border)
 }

 .lp-proof h2 {
 	text-align: center;
 	margin-bottom: 8px
 }

 .lp-proof__top {
 	display: grid;
 	grid-template-columns: 1.7fr 1fr;
 	gap: 8rem;
 	align-items: center;
 	margin-top: 30px;
 }

 .lp-proof__top ul li {
 	margin-bottom: 25px;
 }

 .lp-proof__top p {
 	margin-top: 40px;
 }

 .note {
 	font-size: .9rem;
 	color: var(--muted);
 	margin-top: .5rem
 }

 .lp-situ {
 	padding: 48px 0
 }

 .lp-situ h2 {
 	text-align: center;
 	margin-bottom: 8px
 }

 .lp-situ p.sub {
 	color: var(--muted);
 	text-align: center;
 	margin: 0 0 24px
 }

 .lp-situ__grid {
 	display: grid;
 	grid-template-columns: repeat(3, minmax(0, 1fr));
 	gap: 1rem
 }

 .situ {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	overflow: hidden
 }

 .lp-proof__top.add li {
 	margin: 0;
 }

 .situ p {
 	padding: .75rem 1rem;
 	text-align: center;
 	min-height: 100px;
 	display: flex;
 	justify-content: center;
 	align-items: center;
 }

 .no-pad {
 	padding: 0
 }

 .overflow-hidden {
 	overflow: hidden
 }

 .align-center {
 	align-items: center
 }

 .flex-center {
 	display: flex;
 	justify-content: center;
 	gap: .75rem
 }

 .row {
 	display: flex;
 	gap: .75rem;
 	flex-wrap: wrap
 }

 .row--center {
 	align-items: center
 }

 .text-center {
 	text-align: center
 }

 .text-right {
 	text-align: right
 }

 .mt-16 {
 	margin-top: 1rem
 }

 .mb-20 {
 	margin-bottom: 20px
 }

 .span-all {
 	grid-column: 1 / -1
 }

 .service {
 	padding: 1rem
 }

 .service h3 {
 	margin: .25rem 0 .5rem
 }

 .faq summary {
 	cursor: pointer;
 	padding: 1rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	list-style: none;
 	font-weight: 600
 }

 .faq details {
 	background: #fff;
 	border-radius: 12px;
 	box-shadow: var(--shadow)
 }

 .faq details+details {
 	margin-top: .75rem
 }

 .faq details[open] summary {
 	background: var(--bg-alt);
 	border-color: var(--bg-alt)
 }

 .news-item {
 	display: flex;
 	gap: 1rem;
 	padding: 1rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	background: #fff
 }

 .news-item time {
 	color: var(--muted);
 	font-size: .9rem
 }

 .contact {
 	display: grid;
 	grid-template-columns: 1fr 1fr;
 	gap: 1rem
 }

 /* Футер */
 .footer {
 	background: #fff;
 	color: var(--text);
 	padding: 32px 0;
 	border-top: 1px solid var(--border)
 }

 .footer a {
 	color: var(--text)
 }

 .legal {
 	border-top: 1px solid var(--border);
 	margin-top: 16px;
 	padding-top: 16px;
 	font-size: .9rem;
 	color: var(--muted);
 	text-align: center
 }

 .footer-grid {
 	display: grid;
 	grid-template-columns: 1fr auto 1fr;
 	align-items: start;
 	gap: 1rem
 }

 .field {
 	display: flex;
 	flex-direction: column;
 	gap: .375rem
 }

 .field input,
 .field textarea {
 	padding: .875rem 1rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	background: #fff;
 	outline: 0
 }

 .field input:focus,
 .field textarea:focus {
 	border-color: var(--brand);
 	box-shadow: 0 0 0 4px rgba(17, 75, 134, .12)
 }

 .about {
 	padding: 56px 0;
 	border-bottom: 1px solid var(--border)
 }

 .about__wrap {
 	display: grid;
 	grid-template-columns: 1fr 1.1fr;
 	gap: 2rem;
 	align-items: center;
 }

 .about__media {
 	border: 1px solid var(--border);
 	border-radius: var(--radius);
 	background: linear-gradient(180deg, #f2f5fa, #ffffff);
 	min-height: 260px;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	max-height: 400px;
 }

 .stats {
 	display: grid;
 	gap: .5rem;
 	margin: 1rem 0
 }

 .stats li {
 	display: flex;
 	gap: .5rem;
 	align-items: flex-start
 }

 .stats li::before {
 	content: "•";
 	color: var(--accent);
 	font-weight: 700;
 	line-height: 1.4
 }

 .about__note {
 	display: inline-block;
 	background: #fff9e6;
 	border: 1px dashed #f1d18a;
 	color: #5a4b1f;
 	border-radius: 10px;
 	padding: .5rem .625rem;
 	margin-left: .5rem;
 	font-size: .8125rem
 }

 .steps {
 	padding: 40px 0
 }

 .steps__grid {
 	display: grid;
 	grid-template-columns: repeat(4, minmax(0, 1fr));
 	gap: 1rem
 }

 .step {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	padding: 1rem;
 	box-shadow: var(--shadow)
 }

 .step__num {
 	width: 32px;
 	height: 32px;
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	border-radius: 999px;
 	background: var(--brand);
 	color: #fff;
 	font-weight: 700;
 	margin-bottom: .5rem
 }

 .qual {
 	padding: 40px 0
 }

 .qual__grid {
 	display: grid;
 	grid-template-columns: 1fr 1.2fr;
 	gap: 1rem
 }

 .diploma {
 	display: flex;
 	justify-content: center;
 }

 .diploma img {
 	height: 400px;
 }

 .diploma__label {
 	background: var(--bg-alt);
 	padding: .75rem 1rem;
 	font-weight: 700;
 	color: #5b5b5b
 }

 .diploma__img {
 	height: 240px;
 	background: linear-gradient(180deg, #f1f5f9, #fff)
 }

 .bubbles {
 	display: grid;
 	gap: 1rem;
 	grid-auto-rows: min-content;
 }

 .bubble {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	padding: 1rem 1.25rem;
 	box-shadow: var(--shadow);
 	max-width: 560px;
 	position: relative
 }

 .cta-final {
 	padding-top: 40px;
 	padding-bottom: 0;
 	text-align: center
 }

 .btn--chat {
 	display: inline-flex;
 	align-items: center;
 	gap: .5rem;
 	background: #e8f1ff;
 	color: #0b3b6f;
 	border: 1px solid #d1e3ff;
 	border-radius: 999px;
 	padding: 1rem 1.25rem;
 	font-weight: 700
 }

 .btn--chat:hover {
 	background: #dff0ff
 }

 /* Services tabs: modern look */
 .svc-hero .tabs[role="tablist"] {
 	display: grid;
 	gap: .75rem;
 	grid-template-columns: repeat(2, minmax(0, 1fr));
 	padding: .5rem;
 	border-radius: 12px;
 	background: var(--bg-alt);
 }

 .cent_but {
 	text-align: center;
 }

 .svc-hero .tab[role="tab"] {
 	white-space: normal;
 	background: #fff;
 	color: var(--text);
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: .75rem 1rem;
 	font-weight: 600;
 	transition: .2s;
 	text-align: center;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	min-height: 48px;
 	font-size: 15px;
 }


 .svc-hero .tab[role="tab"]:hover {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 	box-shadow: 0 6px 16px rgba(235, 83, 83, .18);
 	cursor: pointer;
 }


 .svc-hero .tab[role="tab"][aria-selected="true"] {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 	box-shadow: 0 6px 16px rgba(235, 83, 83, .18);
 }

 .svc-hero .tab-panels {
 	margin-top: 16px
 }

 .svc-hero .tab-panel {
 	opacity: 0;
 	transform: translateY(4px);
 	transition: .2s ease;
 }

 .svc-hero .tab-panel.is-active {
 	opacity: 1;
 	transform: none
 }

 .svc-hero .tab-panel[hidden] {
 	display: none !important
 }

 /* Services: stats strip */
 .svc-stats {
 	padding-top: 0;
 	padding-bottom: 24px;
 	margin-top: -9px;
 }

 .svc-stats__grid {
 	display: grid;
 	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
 	gap: 1rem
 }

 .stat-pill {
 	display: flex;
 	flex-direction: column;
 	align-items: center;
 	justify-content: center;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	padding: 1rem;
 	text-align: center;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06)
 }

 .stat-pill__icon {
 	width: 48px;
 	height: 48px;
 	border-radius: 12px;
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	box-shadow: 0 10px 18px -10px rgba(235, 83, 83, .45);
 	margin-bottom: .35rem
 }

 .stat-pill strong {
 	font-size: 1.25rem
 }

 .stat-pill span {
 	font-size: .9rem
 }

 /* Services: advantages */
 .svc-advantages {
 	padding: 40px 0
 }

 .about__media.card img {
 	display: block;
 	width: 100%;
 	height: 400px;
 	border-radius: 16px;
 }

 .adv-grid {
 	display: grid;
 	gap: 1rem;
 	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))
 }

 .adv-card {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	padding: 1rem 1.25rem;
 	text-align: center;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06);
 	transition: .25s
 }

 .adv-card:hover {
 	transform: translateY(-3px);
 	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, .18)
 }

 .adv-card__icon {
 	width: 56px;
 	height: 56px;
 	border-radius: 14px;
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	box-shadow: 0 10px 20px -10px rgba(235, 83, 83, .5);
 	margin-bottom: .5rem
 }

 .adv-card h3 {
 	margin: .25rem 0 .25rem;
 	font-size: 1.1rem
 }

 .adv-card p {
 	margin: 0;
 	color: #374151;
 	font-size: .95rem
 }

 /* Services: faq wrapper */
 .svc-faq {
 	padding: 32px 0;
 	background: linear-gradient(180deg, #ffffff, #f9fafb)
 }

 /* Generic tab panels (home page cases reuse) */
 .lp-case .tab-panels {
 	margin-top: 8px
 }

 .lp-case .tab-panel {
 	opacity: 0;
 	transform: translateY(4px);
 	transition: .25s ease
 }

 .lp-case .tab-panel.is-active {
 	opacity: 1;
 	transform: none
 }

 .lp-case [role="tablist"] .tab {
 	cursor: pointer
 }

 /* Home page case tabs — reuse services tile styling */
 .lp-case [role="tablist"] {
 	display: grid;
 	gap: .75rem;
 	grid-template-columns: repeat(2, minmax(0, 1fr));
 	padding: .5rem;
 	border-radius: 12px;
 	background: var(--bg-alt);
 }

 .lp-case .tab[role="tab"] {
 	white-space: normal;
 	background: #fff;
 	color: var(--text);
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: .75rem 1rem;
 	font-weight: 600;
 	transition: .2s;
 	text-align: center;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	min-height: 48px;
 	font-size: 15px;
 }

 .lp-case .tab[role="tab"]:hover {
 	border-color: var(--brand);
 	color: var(--brand)
 }

 .lp-case .tab[role="tab"][aria-selected="true"] {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 	box-shadow: 0 6px 16px rgba(235, 83, 83, .18);
 }

 /* ==============================
   Home scenarios ("Узнаёте себя?")
   ============================== */
 .scenarios-grid {
 	display: grid;
 	gap: 1.25rem;
 	grid-template-columns: repeat(3, minmax(240px, 1fr));
 }

 .scenario-card {
 	position: relative;
 	display: flex;
 	flex-direction: column;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 20px;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06), 0 2px 6px -1px rgba(0, 0, 0, .05);
 	overflow: hidden;
 	transition: .28s cubic-bezier(.4, .2, .2, 1);
 	isolation: isolate;
 }

 .scenario-card::before {
 	content: "";
 	position: absolute;
 	inset: 0;
 	background: radial-gradient(600px 300px at 100% 0%, rgba(238, 101, 100, .08), transparent 70%);
 	opacity: 0;
 	transition: .4s;
 	pointer-events: none;
 }

 .scenario-card:hover {
 	transform: translateY(-4px);
 	box-shadow: 0 12px 28px -8px rgba(0, 0, 0, .12), 0 4px 12px -2px rgba(0, 0, 0, .08);
 }

 .scenario-card:hover::before {
 	opacity: 1
 }

 .scenario-card__media {
 	aspect-ratio: 16/10;
 	background: linear-gradient(180deg, #f2f4f7, #ffffff);
 	position: relative;
 	overflow: hidden
 }

 .scenario-card__media img {
 	width: 100%;
 	height: 100%;
 	object-fit: cover;
 	display: block;
 }

 .scenario-card__body {
 	padding: .9rem 1rem 1.05rem;
 	display: flex;
 	flex-direction: column;
 	gap: .5rem
 }

 .scenario-card__body h4 {
 	margin: 0;
 	font-size: 1rem;
 	line-height: 1.3;
 	font-weight: 700
 }

 .scenario-card__body p {
 	margin: 0;
 	font-size: .9rem;
 	color: #374151;
 	line-height: 1.4
 }

 /* Circle media variant (image over card body) */
 .scenario-card--circle {
 	padding-top: 68px;
 }

 .scenario-card--circle .scenario-card__media {
 	position: absolute;
 	left: 50%;
 	top: 30px;
 	transform: translate(-50%, -50%);
 	width: 110px;
 	height: 110px;
 	border-radius: 50%;
 	overflow: hidden;
 	border: 4px solid #fff;
 	box-shadow: 0 10px 24px -8px rgba(0, 0, 0, .25);
 	background: linear-gradient(180deg, #f3f4f6, #ffffff);
 	aspect-ratio: auto;
 }

 article.scenario-card--circle {
 	margin-top: 25px;
 }

 .person-photo {
 	width: 380px;
 	height: 250px;
 	max-width: 100%;
 	border-radius: var(--radius);
 	overflow: hidden;
 }

 .person-photo img {
 	width: 100%;
 	height: 100%;
 	object-fit: cover;
 	display: block;
 }

 .scenario-card--circle .scenario-card__media img {
 	width: 100%;
 	height: 100%;
 	object-fit: cover;
 }

 .btn--ghost3 {
 	border: 1px solid white;
 }

 .btn--ghost3:hover {
 	color: var(--brand);
 	background: white;
 }

 .scenario-card--circle .scenario-card__body {
 	text-align: center;
 	height: 100px;
 	padding-top: 20px;
 	border-radius: 20px;
 }

 a.ymaps-2-1-79-gototech {
 	display: none;
 }

 .scenario-card--circle:hover .scenario-card__media {
 	box-shadow: 0 14px 30px -10px rgba(0, 0, 0, .3);
 }

 /* ==============================
	 LP Simple modern section
	 ============================== */
 .lp-simple--modern {
 	background: linear-gradient(180deg, #ffffff, #f9fafb);
 	position: relative;
 	overflow: hidden;
 }

 .lp-simple--modern::before {
 	content: "";
 	position: absolute;
 	inset: 0;
 	background: radial-gradient(900px 400px at 90% 10%, rgba(238, 101, 100, .08), transparent 70%);
 	pointer-events: none;
 }

 .lp-simple__wrap {
 	display: grid;
 	gap: 2.5rem;
 	grid-template-columns: minmax(240px, 320px) 1fr;
 	align-items: start;
 	padding: 48px 0;
 }

 .lp-simple__media.card {
 	padding: 1.25rem;
 	display: flex;
 	flex-direction: column;
 	align-items: center;
 	gap: 1rem
 }

 .lp-simple__media .avatar-wrap {
 	position: relative
 }

 .lp-simple__media .avatar-wrap img {
 	display: block;
 	object-fit: cover;
 	box-shadow: 0 8px 20px -6px rgba(0, 0, 0, .15)
 }

 .tab-panels img {
 	max-height: 480px;
 }

 .img_cases {
 	display: flex;
 	justify-content: center;
 }

 img.img_6 {
 	max-height: 500px;
 	border-radius: 16px;
 }

 article.situ {
 	height: 500px;
 	display: flex;
 	align-items: flex-end;
 	background-repeat: no-repeat;
 	padding: 20px;
 }

 article.situ p {
 	background: white;
 }

 .flex_yur {
 	display: flex;
 	gap: 4rem;
 }

 .flex_yur>div:last-child {
 	display: flex;
 	flex-direction: column;
 	justify-content: center;
 	margin-bottom: 60px;
 }

 .container.about__wrap li {
 	list-style: circle;
 }

 .contact-icons {
 	display: flex;
 	gap: .75rem
 }

 .icon-btn {
 	width: 48px;
 	height: 48px;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	border-radius: 14px;
 	background: #fff;
 	border: 1px solid var(--border);
 	font-size: 1.25rem;
 	color: var(--brand);
 	transition: .25s
 }

 .icon-btn:hover {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 	box-shadow: 0 8px 18px -6px rgba(235, 83, 83, .35)
 }

 .lp-simple__content h2 {
 	margin-top: 0;
 	font-weight: 800
 }

 .feature-list {
 	list-style: none;
 	margin: 12px 0 20px;
 	padding: 0;
 	display: grid;
 	gap: .75rem
 }

 .feature-list li {
 	position: relative;
 	padding: .875rem 1rem .875rem 2.75rem;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	font-weight: 500;
 	line-height: 1.45;
 	box-shadow: 0 3px 8px -4px rgba(0, 0, 0, .1);
 	transition: .25s
 }

 .feature-list li::before {
 	content: "";
 	position: absolute;
 	left: 10px;
 	top: 50%;
 	transform: translateY(-50%);
 	width: 28px;
 	height: 28px;
 	border-radius: 50%;
 	background: #16a34a;
 	box-shadow: 0 3px 6px -2px rgba(0, 0, 0, .2)
 }

 .feature-list li::after {
 	content: "";
 	position: absolute;
 	left: 19px;
 	top: 50%;
 	transform: translateY(-50%) rotate(45deg);
 	width: 10px;
 	height: 6px;
 	border: 3px solid #fff;
 	border-top: 0;
 	border-left: 0
 }

 .feature-list li:hover {
 	transform: translateY(-2px);
 	box-shadow: 0 8px 18px -8px rgba(0, 0, 0, .18)
 }

 .cta-box {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	padding: 1.5rem 1.75rem;
 	box-shadow: 0 10px 26px -10px rgba(0, 0, 0, .12)
 }

 .cta-box h3 {
 	margin: 0 0 .75rem;
 	font-weight: 700
 }

 .cta-box p {
 	margin: 0 0 .85rem
 }

 /* Reveal utility */
 .reveal {
 	opacity: 0;
 	transform: translateY(32px);
 	transition: opacity .6s cubic-bezier(.25, .8, .25, 1), transform .6s cubic-bezier(.25, .8, .25, 1);
 	transition-delay: var(--reveal-delay, 0s);
 	will-change: opacity, transform;
 }

 .reveal.is-visible {
 	opacity: 1;
 	transform: none
 }

 .reveal-section {
 	opacity: 0;
 	transform: translateY(56px);
 	transition: opacity .75s cubic-bezier(.22, .85, .3, 1), transform .75s cubic-bezier(.22, .85, .3, 1);
 	will-change: opacity, transform;
 }

 .reveal-section.is-visible {
 	opacity: 1;
 	transform: none
 }

 .reveal.reveal-left {
 	transform: translateX(-16px)
 }

 .reveal.reveal-right {
 	transform: translateX(16px)
 }

 .reveal.reveal-zoom {
 	transform: translateY(8px) scale(.97)
 }

 .card {
 	transition: transform .25s ease, box-shadow .25s ease
 }

 .card:hover {
 	transform: translateY(-3px);
 	box-shadow: 0 16px 34px -14px rgba(0, 0, 0, .22), 0 6px 16px -6px rgba(0, 0, 0, .12)
 }

 .pill {
 	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease
 }

 .pill:hover {
 	border-color: var(--brand);
 	transform: translateY(-2px);
 	box-shadow: 0 10px 22px -12px rgba(0, 0, 0, .18)
 }

 .btn {
 	position: relative;
 	overflow: hidden
 }

 .btn:not(.btn--ghost)::after {
 	content: "";
 	position: absolute;
 	inset: 0;
 	pointer-events: none;
 	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .25) 50%, rgba(255, 255, 255, 0) 100%);
 	transform: translateX(-120%);
 }

 .btn:not(.btn--ghost):hover::after {
 	transition: transform .7s ease;
 	transform: translateX(120%)
 }

 .btn:active {
 	transform: translateY(0) scale(.99)
 }

 /* Decorative legal backgrounds */
 .bg-legal-stripes {
 	background-color: #fff;
 	background-image: repeating-linear-gradient(45deg, rgba(235, 83, 83, .035) 0 2px, transparent 2px 16px);
 }

 .bg-legal-corner-tr {
 	background-color: #fff;
 	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='none' stroke='%23eb5353' stroke-width='6' stroke-linecap='round' stroke-linejoin='round' opacity='.08'%3E%3Cpath d='M100 30v30M60 60h80'/%3E%3Cpath d='M60 60L30 110h60L60 60z'/%3E%3Cpath d='M140 60L110 110h60L140 60z'/%3E%3Cpath d='M100 60v60'/%3E%3Cpath d='M70 140h60'/%3E%3C/g%3E%3C/svg%3E");
 	background-repeat: no-repeat;
 	background-position: right -60px top -60px;
 	background-size: 520px 520px;
 }

 .bg-legal-corner-bl {
 	background-color: #fff;
 	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cg fill='none' stroke='%23eb5353' stroke-width='6' stroke-linecap='round' stroke-linejoin='round' opacity='.08'%3E%3Cpath d='M100 30v30M60 60h80'/%3E%3Cpath d='M60 60L30 110h60L60 60z'/%3E%3Cpath d='M140 60L110 110h60L140 60z'/%3E%3Cpath d='M100 60v60'/%3E%3Cpath d='M70 140h60'/%3E%3C/g%3E%3C/svg%3E");
 	background-repeat: no-repeat;
 	background-position: left -60px bottom -60px;
 }

 .lp-hero__media img {
 	transform: translateY(-2px) scale(1.02)
 }

 /* About page scoped */
 .about-page .hero.hero--modern {
 	position: relative;
 	background: radial-gradient(1200px 600px at 10% -10%, rgba(238, 101, 100, .08), transparent 60%), radial-gradient(1200px 600px at 90% 0%, rgba(235, 83, 83, .06), transparent 60%), linear-gradient(180deg, #ffffff, #f7f8fb);
 }

 .about-page .hero__wrap {
 	grid-template-columns: 1.2fr .8fr;
 	gap: 2.5rem;
 	padding: 64px 0;
 }

 .about-page .hero__content h1 {
 	font-weight: 900;
 	letter-spacing: .2px;
 	background: linear-gradient(90deg, #1a1a1a, #3b3b3b);
 	-webkit-background-clip: text;
 	background-clip: text;
 	color: transparent;
 }

 .about-page .hero__content p {
 	color: #3f3f46;
 	max-width: 58ch;
 }

 .hero__kpis {
 	margin-top: 1rem;
 	display: grid;
 	grid-template-columns: repeat(3, minmax(0, 1fr));
 	gap: 1rem;
 }

 .kpi.card {
 	display: grid;
 	place-items: center;
 	padding: 1rem;
 	border-radius: 16px;
 	border: 1px solid #eef0f4;
 }

 .kpi strong {
 	font-size: 1.5rem
 }

 .kpi span {
 	color: var(--muted);
 	font-size: .9rem
 }

 .about-page .hero__card.card {
 	background: rgba(255, 255, 255, .72);
 	border: 1px solid rgba(231, 233, 239, .9);
 	backdrop-filter: blur(8px);
 	-webkit-backdrop-filter: blur(8px);
 	box-shadow: 0 10px 30px rgba(0, 0, 0, .06);
 }

 .about-page form.grid.grid--2 {
 	padding: 20px
 }

 .about-page .about.about--modern {
 	background: #fff
 }

 .about-page .about--modern .about__wrap {
 	grid-template-columns: 1.1fr 1fr;
 	align-items: center;
 }

 .about-page .about__media.card {
 	overflow: hidden
 }

 .about-page .about__media.card img {
 	display: block;
 	width: 100%;
 	height: auto
 }

 .about-page .stats.stats--badges {
 	margin-top: 1rem;
 	display: grid;
 	grid-template-columns: repeat(3, minmax(0, 1fr));
 	gap: .75rem
 }

 .about-page .stats.stats--badges li {
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	border-radius: 999px;
 	padding: .625rem 1rem;
 	text-align: center;
 	font-weight: 600
 }

 .about-page .steps.steps--timeline {
 	background: #fcfdff
 }

 .about-page .steps--timeline .steps__grid {
 	grid-template-columns: 1fr;
 	position: relative;
 }

 .about-page .steps--timeline .steps__grid::before {
 	content: "";
 	position: absolute;
 	left: 24px;
 	top: 0;
 	bottom: 0;
 	width: 2px;
 	background: linear-gradient(#e5e7eb, #eef1f6);
 }

 .about-page .steps--timeline .step {
 	position: relative;
 	padding-left: 64px;
 	background: #fff
 }

 .about-page .steps--timeline .step+.step {
 	margin-top: .75rem
 }

 .about-page .steps--timeline .step__num {
 	position: absolute;
 	left: 8px;
 	top: 16px;
 	width: 32px;
 	height: 32px;
 	border-radius: 999px;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	box-shadow: 0 6px 14px rgba(235, 83, 83, .2);
 }

 h1.head-h1 {
 	font-size: 34px;
 	font-weight: normal;
 }

 .about-page .qual.qual--modern {
 	background: #fff
 }

 .about-page .qual--modern .qual__grid {
 	align-items: stretch
 }

 .about-page .diploma__label {
 	position: sticky;
 	top: 72px;
 	z-index: 2
 }

 .about-page .bubble {
 	border: 1px solid #eef0f4;
 	background: radial-gradient(600px 200px at 100% -40%, rgba(238, 101, 100, .06), transparent 60%), #fff;
 }

 .about-page .cta-final.cta-final--gradient {
 	background: radial-gradient(800px 240px at 50% -20%, rgba(238, 101, 100, .10), transparent 60%), linear-gradient(180deg, #ffffff, #f8fafc);
 }

 .about-page .btn--chat {
 	box-shadow: 0 8px 20px rgba(17, 75, 134, .12);
 }

 .about-values {
 	padding: 40px 0;
 	background: #fff
 }

 .values-grid {
 	display: grid;
 	gap: 1rem;
 	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr))
 }

 .value-tile {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	padding: 1rem 1.25rem;
 	text-align: center;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06);
 	transition: .25s
 }

 .value-tile:hover {
 	transform: translateY(-3px);
 	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, .18)
 }

 .value-tile__icon {
 	width: 56px;
 	height: 56px;
 	border-radius: 14px;
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	box-shadow: 0 10px 20px -10px rgba(235, 83, 83, .5);
 	margin-bottom: .5rem
 }

 .value-tile h3 {
 	margin: .25rem 0 .25rem;
 	font-size: 1.1rem
 }

 .value-tile p {
 	margin: 0;
 	color: #374151;
 	font-size: .95rem
 }

 .about-team {
 	padding: 40px 0;
 	background: linear-gradient(180deg, #f9fafb, #ffffff)
 }

 .team-grid {
 	display: grid;
 	gap: 1rem;
 	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr))
 }

 .team-card {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	padding: 1rem;
 	text-align: center;
 	box-shadow: var(--shadow);
 	transition: .25s
 }

 .team-card:hover {
 	transform: translateY(-3px)
 }

 .team-card__photo {
 	width: 150px;
 	height: 150px;
 	border-radius: 50%;
 	object-fit: cover;
 	display: block;
 	margin: 8px auto 12px;
 	box-shadow: 0 8px 16px -10px rgba(0, 0, 0, .25)
 }

 .milestones {
 	padding: 36px 0;
 	background: #fff
 }

 .milestones__strip {
 	display: flex;
 	justify-content: space-around;
 	gap: 1rem;
 	overflow: auto;
 	padding: .5rem;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	background: var(--bg-alt)
 }

 .milestone {
 	min-width: 160px;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 14px;
 	padding: .75rem;
 	text-align: center;
 	box-shadow: 0 6px 16px -8px rgba(0, 0, 0, .08)
 }

 .milestone__year {
 	display: block;
 	font-weight: 800;
 	color: var(--brand);
 	margin-bottom: .25rem
 }

 .contacts-page h1 {
 	max-width: 960px;
 	margin-left: auto;
 	margin-right: auto;
 	letter-spacing: .2px
 }

 .contacts-page p.u-max-720 {
 	color: var(--muted);
 	font-size: 1.05rem
 }

 .contacts-page .grid.grid--2 {
 	row-gap: 1.5rem
 }

 .icon {
 	display: inline-block;
 	width: 1em;
 	height: 1em;
 	line-height: 1;
 	vertical-align: middle;
 	background-color: currentColor;
 	transition: color .25s ease, background-color .25s ease;
 	-webkit-mask-image: var(--icon);
 	mask-image: var(--icon);
 	-webkit-mask-position: center;
 	mask-position: center;
 	-webkit-mask-repeat: no-repeat;
 	mask-repeat: no-repeat;
 	-webkit-mask-size: contain;
 	mask-size: contain;
 	mask-mode: alpha;
 }

 .icon-max {
 	--icon: url("../icons/max.svg");
 }

 .icon-sm {
 	font-size: 16px
 }

 .icon-md {
 	font-size: 24px
 }

 .icon-lg {
 	font-size: 32px
 }

 .icon-xl {
 	font-size: 48px
 }

 .icon-btn .icon {
 	font-size: 20px;
 	display: block
 }

 a:hover .icon {
 	color: var(--brand-2)
 }

 .icon-svg {
 	display: inline-block;
 	width: 1em;
 	height: 1em;
 	vertical-align: middle;
 	fill: currentColor;
 	stroke: none
 }

 .icon-btn .icon-svg {
 	font-size: 20px;
 	display: block
 }

 .icon-img {
 	display: block;
 	width: 20px;
 	height: 20px;
 	object-fit: contain
 }

 .contacts-page .card.no-pad {
 	border: 1px solid var(--border);
 	border-radius: var(--radius);
 	box-shadow: var(--shadow);
 	overflow: hidden
 }

 .contacts-page .card.no-pad img {
 	width: 100%;
 	height: auto;
 	display: block
 }

 .contacts-page .map-badge {
 	box-shadow: 0 4px 12px rgba(0, 0, 0, .06)
 }

 .contacts-page .pill {
 	font-weight: 600;
 	border-color: #e8eaef
 }

 .contacts-page .grid.grid--3 .pill {
 	padding: 1.125rem 1rem
 }

 .contacts-page .social-row a {
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	width: 40px;
 	height: 40px;
 	border-radius: 12px;
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	transition: .2s
 }

 .contacts-page .social-row a:hover {
 	background: var(--brand);
 	color: #fff;
 	border-color: var(--brand);
 	transform: translateY(-1px)
 }

 .contacts-page h2 {
 	position: relative
 }

 .contacts-page h2::after {
 	content: "";
 	display: block;
 	width: 60px;
 	height: 4px;
 	border-radius: 999px;
 	background: var(--brand);
 	margin-top: 8px
 }

 .contacts-page .grid.grid--2 img.rounded {
 	box-shadow: var(--shadow)
 }

 .contacts-page .btn--ghost {
 	border-color: var(--brand)
 }

 .contact-tiles {
 	display: grid;
 	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
 	gap: 1rem
 }

 .contact-tile {
 	display: flex;
 	flex-direction: column;
 	align-items: center;
 	justify-content: center;
 	gap: .5rem;
 	text-align: center;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 18px;
 	padding: 1rem;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06);
 	transition: .25s;
 	color: inherit
 }

 .contact-tile__icon {
 	width: 56px;
 	height: 56px;
 	border-radius: 14px;
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	font-size: 1.15rem;
 	box-shadow: 0 10px 20px -10px rgba(235, 83, 83, .5)
 }

 .contact-tile__title {
 	font-weight: 800
 }

 .contact-tile__sub {
 	color: var(--muted);
 	font-size: .9rem
 }

 .contact-tile:hover {
 	transform: translateY(-3px);
 	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, .18);
 	border-color: transparent
 }

 .contact-banner {
 	background: radial-gradient(900px 260px at 50% -10%, rgba(238, 101, 100, .10), transparent 60%), linear-gradient(180deg, #ffffff, #f8fafc);
 	border: 1px solid var(--border);
 	border-radius: 24px;
 	text-align: center;
 	padding: 1.5rem 1.25rem
 }

 form.grid.grid--2 {
 	padding: 20px
 }

 .card.hero__card h3 {
 	padding-top: 15px;
 	text-align: center
 }

 .bg-brand-gradient {
 	background: var(--brand);
 	color: white
 }

 .bg-brand-gradient2 {
 	background: white;
 	color: var(--muted)
 }

 .bg-brand-gradient a {
 	color: #fff;
 	text-decoration: underline;
 	text-decoration-color: rgba(255, 255, 255, .55)
 }

 .bg-brand-gradient a.btn.btn--ghost3 {
 	border: 1px solid white;
 	color: black;
 	background: white
 }

 .bg-brand-gradient a.btn.btn--ghost3:hover {
 	color: var(--brand);
 	text-decoration: underline;
 	text-decoration-color: var(--brand);
 	border: 1px solid black
 }

 .bg-brand-gradient a.btn.btn--ghost {
 	background: white;
 	color: red
 }

 .cta-box.bg-brand-gradient p {
 	color: white
 }

 .scenario-card__body.bg-brand-gradient * {
 	color: white
 }

 .grad-soft-stripes {
 	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, .35) 0 24px, rgba(255, 255, 255, 0) 24px 48px), linear-gradient(180deg, #fff 0%, #ffdede 48%, #ff9b9b 100%)
 }

 .grad-soft-stripes-b {
 	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, .35) 0 24px, rgba(255, 255, 255, 0) 24px 48px), linear-gradient(0deg, #fff 0%, #ffdede 48%, #ff9b9b 100%)
 }

 .bg-pattern-dots {
 	background-image: radial-gradient(rgba(229, 57, 53, .24) 1px, transparent 1px);
 	background-size: 14px 14px;
 	background-position: 0 0;
 	background-color: #fff
 }

 .pill ul {
 	margin-top: 0
 }

 .pill ul>li {
 	list-style: circle;
 	text-align: left
 }

 /* Inline utilities extracted from templates */
 .u-text-sm {
 	font-size: .9rem
 }

 .u-text-lg {
 	font-size: 1.25rem
 }

 .u-lh-16 {
 	line-height: 1.6
 }

 .u-list-none {
 	list-style: none;
 	margin: 0;
 	padding: 0
 }

 .u-max-380 {
 	max-width: 380px;
 	width: 100%
 }

 .u-mb-36 {
 	margin-bottom: 36px
 }

 .u-mt-30 {
 	margin-top: 30px
 }

 .items-start {
 	align-items: start
 }

 .u-p-12 {
 	padding: 12px
 }

 .u-radius-16 {
 	border-radius: 16px
 }

 .u-m-2-auto {
 	margin: 2rem auto
 }

 .has-top-border {
 	border-top: 1px solid var(--border)
 }

 .text-white {
 	color: #fff
 }

 /* Reveal delay helpers */
 .reveal-delay-05 {
 	--reveal-delay: .05s
 }

 .reveal-delay-15 {
 	--reveal-delay: .15s
 }

 .reveal-delay-25 {
 	--reveal-delay: .25s
 }

 .reveal-delay-35 {
 	--reveal-delay: .35s
 }

 .reveal-delay-45 {
 	--reveal-delay: .45s
 }

 .reveal-delay-55 {
 	--reveal-delay: .55s
 }

 .reveal-delay-65 {
 	--reveal-delay: .65s
 }

 /* Situ background modifiers */
 article.situ.situ--h3 {
 	background: url('../img/h3.png') center/cover
 }

 article.situ.situ--h4 {
 	background: url('../img/h4.png') center/cover
 }

 article.situ.situ--h5 {
 	background: url('../img/h5.png') center/cover
 }


 /* ask form */
 #ask_form {
 	display: none;
 	position: fixed;
 	left: 33%;
 	top: 26%;
 	background: rgb(250, 250, 250);
 	padding: 10px;
 	border: 1px solid #99a9b5;
 	z-index: 999;
 	font-size: 16px !important;
 	max-height: calc(100vh - 32px);
 	overflow: auto;
 	-webkit-overflow-scrolling: touch;

 }

 #ask_form select {
 	width: 100%;
 }

 #ask_form label {
 	font-size: 16px;
 }


 #ask_form form {
 	padding: 5px;
 	line-height: 1.3;
 }

 #ask_form form .ap-form-group {
 	margin-bottom: 6px;
 }

 #form_question>div.ap-form-group.ap-field-form_question-post_content.ap-field-type-editor>div>div.ap-editor>button,
 #form_question>div.ap-form-group.ap-field-form_question-email.ap-field-type-input>div>div.ap-field-desc {
 	display: none;
 }

 #close {
 	position: absolute;
 	right: 10px;
 	top: 14px;
 	width: 32px;
 	height: 32px;
 	opacity: 0.3;
 }

 #close:hover {
 	opacity: 1;
 }

 #close:before,
 #close:after {
 	position: absolute;
 	left: 15px;
 	content: ' ';
 	height: 22px;
 	width: 2px;
 	background-color: #333;
 }

 #close:before {
 	transform: rotate(45deg);
 }

 #close:after {
 	transform: rotate(-45deg);
 }

 @media (max-width: 1700px) {
 	#ask_form {
 		top: 15%;
 		left: 30%;
 		padding: 8px;
 	}
 }


 @media (max-width: 1500px) {
 	#ask_form {
 		top: 17%;
 		left: 27%;
 		padding: 8px;
 	}

 	#close {
 		right: 0px;
 		top: 7px;
 	}

 	#ask_form div {
 		margin-bottom: 3px;
 	}

 	#ask_form .mce-container div {
 		margin-bottom: 0;
 	}

 	#ask_form .mce-container .mce-top-part {
 		display: none;
 	}

 	.ap-form-label {
 		margin-bottom: 4px;
 	}

 	#ask_form .ap-field-desc {
 		display: none;
 	}

 	#form_question-post_content_ifr,
 	.wp-editor-container textarea.wp-editor-area {
 		height: 50px !important;
 	}
 }

 @media (max-width: 1367px) {
 	#ask_form {
 		top: 18%;
 		left: 25%;
 	}

 	.ap-form-control {
 		height: 28px;
 	}

 	textarea.wp-editor-area {
 		height: 200px;
 	}
 }

 @media (max-width: 1367px) and (max-height: 700px) {
 	#ask_form {
 		top: 14%;
 		left: 25%;
 	}
 }

 @media (max-width: 1100px) {
 	#ask_form {
 		top: 18%;
 		left: 18%;
 	}
 }

 @media (max-width: 800px) {
 	#ask_form {
 		top: 10%;
 		left: 10%;
 	}
 }

 @media (max-width: 480px) {
 	.row.row--center {
 		margin-top: unset;
 	}

 	#close:before,
 	#close:after {
 		left: 19px;
 		top: -2px;
 		height: 20px;
 	}

 	.block-content {
 		padding: 0 !important;
 	}

 	.ap-avatar {
 		display: none;
 	}

 	#answers .answer,
 	#ap-best-answer .answer {
 		margin-top: 10px;
 	}

 	#anspress .comment-inner {
 		padding: 10px;
 	}

 	#anspress .ap-q-inner {
 		padding: 0;
 	}

 	#anspress .answer-yurist {
 		font-weight: normal;
 		line-height: 1.6;
 		font-family: Arial, Helvetica, sans-serif;
 		font-size: 14px;
 	}

 	#anspress .ap-term-category-box>li {
 		margin: 0 auto;
 		padding: 20px 0;
 		flex-basis: unset;
 	}

 	#ask_form {
 		top: 10%;
 		left: 0%;
 		font-size: 14px !important;
 		padding: 4px;
 	}

 	#ask_form div {
 		margin-bottom: 4px !important;
 	}

 	#ask_form label {
 		font-size: 14px !important;
 	}

 	#ask_form .wp-editor-area {
 		font-size: 18px !important;
 	}

 	#ask_form input,
 	#ask_form select,
 	#ask_form textarea,
 	#ask_form .wp-editor-area,
 	#ask_form label,
 	#ask_form .ap-form-control: {
 		font-size: 16px !important;
 	}

 	#ask_form .mce-container div {
 		margin-bottom: 0;
 	}

 	#ask_form .mce-container .mce-top-part {
 		display: none;
 	}

 	.ap-form-label {
 		margin-bottom: 8px;
 	}

 	#form_question-post_content_ifr,
 	.wp-editor-container textarea.wp-editor-area {
 		height: 40px !important;
 	}

 	.panel-center {
 		padding-left: 5px;
 		padding-right: 5px;
 	}

 	.row {
 		margin-top: -2em;
 	}
 }

 @media (max-width: 360px) {
 	#ask_form {
 		width: 100%;
 		top: 13%;
 		font-size: 12px !important;
 		padding: 0;
 	}

 	#ask_form div {
 		margin-bottom: 5px;
 	}

 	#ask_form label {
 		font-size: 12px !important;
 	}

 	#ask_form input {
 		font-size: 12px !important;
 	}

 	#ask_form .mce-container div {
 		margin-bottom: 0;
 	}

 	#ask_form .mce-container .mce-top-part {
 		display: none;
 	}

 	.ap-form-label {
 		margin-bottom: 4px;
 	}

 	#close {
 		right: 0px;
 		top: 4px;
 	}

 	#ask_form .ap-field-desc {
 		display: none;
 	}

 	#rc-imageselect {
 		transform: scale(0.77);
 		-webkit-transform: scale(0.77);
 		transform-origin: 0 0;
 		-webkit-transform-origin: 0 0;
 	}
 }

 /* ==============================
	 AnsPress – themed styling
	 ============================== */
 #anspress {
 	margin: 24px 0;
 }

 .ap-list-head.clearfix:before {
 	content: unset !important;
 }

 /* Top controls */
 #anspress .ap-list-head {
 	display: flex;
 	align-items: center;
 	justify-content: left;
 	gap: 1rem;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: 12px 16px;
 	box-shadow: var(--shadow);
 	margin: 8px 0 16px;
 }

 /* Order: search first, ask second, filters last */
 #anspress .ap-search-form {
 	order: 1;
 }

 #anspress .pull-right {
 	order: 2;
 }

 #anspress .ap-filters {}

 #anspress .ap-btn-ask,
 #anspress .ap-search-btn {
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	gap: .5rem;
 	min-height: 40px;
 	padding: .6rem 1rem;
 	border-radius: 999px;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	font-weight: 700;
 	border: 0;
 	box-shadow: 0 8px 20px -10px rgba(235, 83, 83, .35);
 	cursor: pointer;
 }

 #anspress .ap-btn-ask:hover,
 #anspress .ap-search-btn:hover {
 	filter: brightness(1.05);
 }

 #anspress .ap-search-form {
 	display: flex;
 	align-items: center;
 	gap: .5rem;
 }

 /* Inside search: input before button */
 #anspress .ap-search-inner {
 	order: 1;
 }

 #anspress .ap-search-btn {
 	order: 2;
 	min-width: 160px;
 }

 #anspress .ap-search-inner {
 	flex: 1 1 auto;
 }

 #anspress .ap-search-input {
 	width: 100%;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	padding: .7rem 1rem;
 	background: #fff;
 	outline: none;
 }

 #anspress .ap-search-input:focus {
 	border-color: var(--brand);
 	box-shadow: 0 0 0 4px rgba(235, 83, 83, .12);
 }

 /* Filters */
 #anspress .ap-filters {
 	margin-top: 10px;
 	padding: 8px;
 	border-radius: 12px;
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 }

 /* Categories grid (AnsPress) */
 #anspress .ap-term-category-box {
 	display: grid;
 	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
 	gap: 16px;
 	list-style: none;
 	margin: 0 0 16px;
 	padding: 0 15px;
 	/* align with page content gutters */
 	box-sizing: border-box;
 	max-width: 100%;
 }

 #anspress .ap-term-category-box>li {
 	list-style: none;
 	margin: 0;
 	padding: 0;
 }

 /* Fix empty first tile: clearfix pseudo-elements become grid items */
 #anspress .ap-term-category-box.clearfix::before,
 #anspress .ap-term-category-box.clearfix::after,
 #anspress .ap-term-category-box>li.clearfix::before,
 #anspress .ap-term-category-box>li.clearfix::after {
 	content: none !important;
 	display: none !important;
 }

 /* Ensure grid container does not exceed content width */
 #anspress .ap-term-category-box.clearfix {
 	margin-left: 0 !important;
 	margin-right: 0 !important;
 	width: 100% !important;
 	max-width: 100% !important;
 	box-sizing: border-box;
 }

 /* Prevent child overflow from long content */
 #anspress .ap-category-item {
 	min-width: 0;
 }

 #anspress .ap-term-title .term-title {
 	word-break: break-word;
 	overflow-wrap: anywhere;
 }

 #anspress .ap-category-item {
 	height: 180px;
 	display: flex;
 	flex-direction: column;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: 16px;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06);
 	transition: .25s;
 }

 #anspress .ap-category-item:hover {
 	transform: translateY(-3px);
 	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, .18);
 }

 /* Hide empty featured image containers injected with inline height:0 */
 #anspress .ap-categories-feat,
 #anspress .ap-category-defimage {
 	display: none !important;
 }

 #anspress .ap-cat-img-c {
 	display: flex;
 	align-items: flex-start;
 	justify-content: space-between;
 	min-height: 0;
 }

 #anspress .ap-term-count {
 	display: inline-block;
 	padding: .25rem .5rem;
 	border-radius: 999px;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	font-size: .8rem;
 	box-shadow: 0 8px 16px -10px rgba(235, 83, 83, .45);
 }

 #anspress .ap-term-title {
 	display: flex;
 	align-items: center;
 	height: 180px;
 	justify-content: center;
 }

 #anspress .ap-term-title a {
 	text-align: center;
 }

 #anspress .ap-term-title .term-title {
 	display: -webkit-box;
 	-webkit-line-clamp: 3;
 	-webkit-box-orient: vertical;
 	overflow: hidden;
 	font-weight: 800;
 	color: var(--text);
 	line-height: 1.25;
 }

 #anspress .ap-term-title .term-title:hover {
 	color: var(--brand);
 }

 /* Questions list */
 #anspress .ap-questions {
 	display: grid;
 	gap: .75rem;
 	border: unset;
 }

 #anspress .ap-list-head .ap-filters {
 	padding-left: 15px;
 }

 .all_count {
 	padding-left: 15px;
 }

 button#ap-filter-reset span {
 	display: block;
 	min-width: 160px;
 	margin-top: -1px;
 }

 #anspress .ap-questions-item {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	box-shadow: var(--shadow);
 	padding: 12px 14px;
 	transition: .25s;
 }

 #anspress .ap-questions-item:hover {
 	transform: translateY(-2px);
 }

 #anspress .ap-questions-title a {
 	font-weight: 800;
 	color: var(--text);
 }

 #anspress .ap-questions-title a:hover {
 	color: var(--brand);
 }

 #anspress .ap-display-question-meta {
 	color: #374151;
 }

 /* Widget block */
 #anspress #custom_html-7 {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: 12px;
 	box-shadow: var(--shadow);
 	margin: 30px 0;
 }

 #anspress #custom_html-7 a {
 	font-weight: 700;
 }

 /* Pagination */
 #anspress .ap-pagination {
 	display: flex;
 	gap: .5rem;
 	justify-content: center;
 	margin-top: 16px;
 }

 #anspress .ap-pagination .page-numbers {
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	min-width: 38px;
 	height: 38px;
 	padding: 0 .75rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	background: #fff;
 	color: var(--text);
 }

 #anspress .ap-pagination .page-numbers.current,
 #anspress .ap-pagination .page-numbers:hover {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 }

 /* AnsPress pagination – mobile compact prev/next */
 @media (max-width: 768px) {

 	#anspress .ap-pagination .page-numbers.prev,
 	#anspress .ap-pagination .page-numbers.next {
 		width: 38px;
 		height: 38px;
 		border: 1px solid var(--border);
 		border-radius: 12px;
 		background: #fff;
 		display: inline-flex;
 		align-items: center;
 		justify-content: center;
 		overflow: hidden;
 		text-indent: -9999px;
 		/* hide text */
 		position: relative;
 	}

 	#anspress .ap-pagination .page-numbers.prev::before,
 	#anspress .ap-pagination .page-numbers.next::before {
 		content: '';
 		display: inline-block;
 		width: 10px;
 		height: 10px;
 		border-top: 2px solid var(--text);
 		border-right: 2px solid var(--text);
 	}

 	#anspress .ap-pagination .page-numbers.prev::before {
 		transform: rotate(-135deg);
 	}

 	#anspress .ap-pagination .page-numbers.next::before {
 		transform: rotate(45deg);
 	}
 }

 @media (max-width: 768px) {

 	/* Reduce visible items: only prev, current, next for AnsPress */
 	#anspress .ap-pagination .page-numbers {
 		display: none;
 	}

 	#anspress .ap-pagination .page-numbers.prev,
 	#anspress .ap-pagination .page-numbers.current,
 	#anspress .ap-pagination .page-numbers.next {
 		display: inline-flex;
 	}

 	#anspress .ap-pagination .page-numbers.dots {
 		display: none;
 	}

 	/* Show previous page immediately before current */
 	#anspress .ap-pagination .page-numbers:has(+ .page-numbers.current) {
 		display: inline-flex;
 	}

 	/* Show next page immediately after current */
 	#anspress .ap-pagination .page-numbers.current+.page-numbers {
 		display: inline-flex;
 	}
 }

 @media (max-width: 768px) {
 	#anspress .ap-list-head {
 		flex-direction: column;
 		align-items: stretch;
 	}

 	#anspress .ap-search-form {
 		width: 100%;
 	}
 }

 /* ==============================
	 WP Pagination (posts/blog) – mobile compact prev/next
	 ============================== */
 @media (max-width: 768px) {
 	.navigation.pagination .nav-links {
 		display: flex;
 		flex-wrap: wrap;
 		gap: .5rem;
 		justify-content: center;
 	}

 	/* Variant A: only show prev, current, next on mobile; no neighbors */
 	.navigation.pagination .page-numbers {
 		display: none;
 	}

 	.navigation.pagination .page-numbers.prev,
 	.navigation.pagination .page-numbers.current,
 	.navigation.pagination .page-numbers.next {
 		display: inline-flex;
 	}

 	.navigation.pagination .page-numbers.dots {
 		display: none;
 	}

 	.navigation.pagination .page-numbers.prev,
 	.navigation.pagination .page-numbers.next {
 		width: 40px;
 		height: 40px;
 		border: 1px solid var(--border);
 		border-radius: 12px;
 		background: #fff;
 		display: inline-flex;
 		align-items: center;
 		justify-content: center;
 		overflow: hidden;
		/* Надёжное скрытие текста на iOS */
		text-indent: -9999px; /* попытка №1 */
		font-size: 0 !important; /* iOS Safari */
		color: transparent !important;
		text-shadow: none !important;
 		position: relative;
 	}

 	.navigation.pagination .page-numbers.prev::before,
 	.navigation.pagination .page-numbers.next::before {
 		content: '';
 		display: inline-block;
 		width: 10px;
 		height: 10px;
 		border-top: 2px solid var(--text);
 		border-right: 2px solid var(--text);
 	}

 	.navigation.pagination .page-numbers.prev::before {
 		transform: rotate(-135deg);
 	}

 	.navigation.pagination .page-numbers.next::before {
 		transform: rotate(45deg);
 	}
 }

 /* ==============================
	 Статьи (категория 4) – оформление
	 ============================== */
 .stati-wrapper {
 	margin: 16px 0 32px;
 }

 .stati-wrapper #page-title.page-title-block {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	box-shadow: var(--shadow);
 	padding-top: 20px;
 	padding-bottom: 20px;
 }

 .stati-wrapper .page-title-title h1 {
 	margin: 0;
 	font-weight: 800;
 	color: var(--text);
 }

 .stati-wrapper .breadcrumbs-container {
 	margin-top: 8px;
 	margin-bottom: 8px;
 }

 .stati-wrapper .lawmakingTitle {
 	margin: 8px 0 16px;
 	font-weight: 800;
 	color: var(--text);
 }

 .stati-wrapper .statiList {
 	list-style: none;
 	margin: 0;
 	padding: 0;
 	display: grid;
 	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
 	gap: 12px;
 }

 .stati-wrapper .statiList__item {
 	display: flex;
 	align-items: center;
 	justify-content: space-between;
 	gap: 10px;
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 14px;
 	padding: 12px 14px;
 	box-shadow: 0 6px 18px -6px rgba(0, 0, 0, .06);
 	transition: .25s;
 }

 .stati-wrapper .statiList__item:hover {
 	transform: translateY(-2px);
 	box-shadow: 0 14px 28px -12px rgba(0, 0, 0, .18);
 }

 .stati-wrapper .statiList__item>a {
 	flex: 1 1 auto;
 	color: var(--text);
 	font-weight: 700;
 }

 .stati-wrapper .statiList__item>a:hover {
 	color: var(--brand);
 }

 .stati-wrapper .statiList__item .counter {
 	flex: 0 0 auto;
 	padding: .2rem .6rem;
 	border-radius: 999px;
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	font-size: .85rem;
 	box-shadow: 0 8px 16px -10px rgba(235, 83, 83, .45);
 }

 .post-meta-right {
 	float: right;
 }

 /* Sidebar blocks */
 .stati-wrapper .sidebar .widget-area>div {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: 12px 14px;
 	box-shadow: var(--shadow);
 	margin-bottom: 16px;
 }

 .stati-wrapper .sidebar h4 {
 	margin: 0 0 10px;
 	font-weight: 800;
 	color: var(--text);
 }

 .stati-wrapper .sidebar ul {
 	list-style: none;
 	margin: 0;
 	padding: 0;
 }

 .stati-wrapper .sidebar li {
 	margin: 6px 0;
 }

 .stati-wrapper .sidebar a {
 	color: var(--text);
 }

 .stati-wrapper .sidebar a:hover {
 	color: var(--brand);
 }

 /* Двухколоночный лэйаут: контент слева, сайдбар справа */
 .stati-wrapper .panel.row.with-sidebar {
 	display: flex;
 	align-items: flex-start;
 	gap: 24px;
 	flex-wrap: nowrap;
 }

 .stati-wrapper .panel-center {
 	flex: 1 1 auto;
 	min-width: 0;
 }

 .stati-wrapper .sidebar {
 	flex: 0 0 300px;
 	max-width: 300px;
 	align-self: flex-start;
 }

 /* ==============================
	AnsPress — сайдбар как на статьях
	Дублируем стили блочного сайдбара под .ap-row .sidebar
	и задаём двухколоночный лэйаут для списка + сайдбар
	============================== */
 /* #anspress .ap-row {
 	display: flex;
 	align-items: flex-start;
 	gap: 24px;
 	flex-wrap: nowrap;
 }
 #anspress .ap-row #ap-lists {
 	flex: 1 1 auto;
 	min-width: 0;
 } */
 #anspress .ap-row .sidebar {
 	flex: 0 0 300px;
 	max-width: 300px;
 	align-self: flex-start;
 }

 /* Виджет-блоки внутри сайдбара */
 .ap-row .sidebar .widget-area>div {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	padding: 12px 14px;
 	box-shadow: var(--shadow);
 	margin-bottom: 16px;
 }

 .ap-row .sidebar h4 {
 	margin: 0 0 10px;
 	font-weight: 800;
 	color: var(--text);
 }

 .ap-row .sidebar ul {
 	list-style: none;
 	margin: 0;
 	padding: 0;
 }

 .ap-row .sidebar li {
 	margin: 6px 0;
 }

 .ap-row .sidebar a {
 	color: var(--text);
 }

 .ap-row .sidebar a:hover {
 	color: var(--brand);
 }

 /* ==============================
	Категории/архивы — карточки и пагинация
	============================== */
 .stati-wrapper .blog article {
 	margin: 0 0 14px;
 }

 .stati-wrapper .blog .item-post-container {
 	margin: 0 0 14px;
 }

 .stati-wrapper .blog .item-post {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	box-shadow: var(--shadow);
 	padding: 14px;
 }

 .stati-wrapper .post-image {
 	margin: 0 0 10px;
 }

 .stati-wrapper .post-image .post-featured-content {
 	position: relative;
 	width: 100%;
 	aspect-ratio: 16/9;
 	border-radius: 12px;
 	overflow: hidden;
 }

 .stati-wrapper .post-image .post-featured-content img {
 	width: 100%;
 	height: 100%;
 	object-fit: cover;
 }

 .stati-wrapper .post-meta {
 	margin: 6px 0 4px;
 	color: var(--muted);
 	font-size: .92rem;
 }

 .stati-wrapper .post-meta .sep {
 	display: inline-block;
 	width: 6px;
 }

 .stati-wrapper .post-meta a {
 	color: var(--muted);
 }

 .stati-wrapper .post-meta a:hover {
 	color: var(--brand);
 }

 .stati-wrapper .post-title h3 {
 	margin: 6px 0 8px;
 	font-size: clamp(18px, 2.2vw, 22px);
 	line-height: 1.3;
 }

 .stati-wrapper .post-title a {
 	color: var(--text);
 }

 .stati-wrapper .post-title a:hover {
 	color: var(--brand);
 }

 .stati-wrapper .post-title .light {
 	font-weight: 700;
 }

 .stati-wrapper .post-text .summary {
 	color: #374151;
 }

 .stati-wrapper .post-footer {
 	margin-top: 10px;
 }

 .stati-wrapper .gem-button {
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	min-height: 36px;
 	padding: .5rem .9rem;
 	border-radius: 12px !important;
 	border: 1px solid var(--brand);
 	color: var(--brand);
 	background: #fff;
 	transition: .2s;
 }

 .stati-wrapper .gem-button:hover {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 }

 /* Пагинация как в AnsPress */
 .stati-wrapper nav.navigation.pagination {
 	margin-top: 16px;
 }

 .stati-wrapper nav.navigation.pagination .screen-reader-text {
 	position: absolute;
 	left: -9999px;
 }

 .stati-wrapper nav.navigation.pagination .nav-links {
 	display: flex;
 	gap: .5rem;
 	justify-content: center;
 }

 .stati-wrapper .navigation.pagination .page-numbers {
 	display: inline-flex;
 	align-items: center;
 	justify-content: center;
 	min-width: 38px;
 	height: 38px;
 	padding: 0 .75rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	background: #fff;
 	color: var(--text);
 }

 .stati-wrapper .navigation.pagination .page-numbers.current,
 .stati-wrapper .navigation.pagination .page-numbers:hover {
 	background: linear-gradient(135deg, var(--brand), var(--brand-2));
 	color: #fff;
 	border-color: transparent;
 }

 /* ==============================
	Комментарии (single)
	============================== */
 .stati-wrapper #comments.comments-area {
 	margin-top: 20px;
 }

 .stati-wrapper .comment-respond {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 16px;
 	box-shadow: var(--shadow);
 	padding: 16px;
 }

 .stati-wrapper .comment-reply-title {
 	margin: 0 0 12px;
 	font-weight: 800;
 	color: var(--text);
 }

 .stati-wrapper .comment-reply-title .light {
 	font-weight: 800;
 }

 .stati-wrapper a#cancel-comment-reply-link {
 	font-weight: 600;
 	color: var(--brand);
 }

 .stati-wrapper a#cancel-comment-reply-link:hover {
 	color: var(--brand-2);
 }

 .stati-wrapper .comment-form {
 	display: block;
 }

 .stati-wrapper .comment-form .row {
 	display: flex;
 	flex-wrap: wrap;
 	gap: 12px;
 }

 .stati-wrapper .comment-form .col-xs-12 {
 	flex: 1 1 100%;
 }

 .stati-wrapper .comment-form .col-md-4 {
 	flex: 1 1 280px;
 }

 .stati-wrapper .comment-form br {
 	display: none;
 }

 .stati-wrapper .comment-form textarea#comment,
 .stati-wrapper .comment-form input[type="text"],
 .stati-wrapper .comment-form input[type="email"],
 .stati-wrapper .comment-form input[type="url"] {
 	width: 100%;
 	padding: .875rem 1rem;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	background: #fff;
 	outline: 0;
 }

 .stati-wrapper .comment-form textarea#comment {
 	min-height: 160px;
 	resize: vertical;
 }

 .stati-wrapper .comment-form input:focus,
 .stati-wrapper .comment-form textarea:focus {
 	border-color: var(--brand);
 	box-shadow: 0 0 0 4px rgba(235, 83, 83, .12);
 }

 .stati-wrapper .comment-form-subscriptions {
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	padding: .75rem 1rem;
 	margin: 8px 0;
 	font-size: .95rem;
 }

 .stati-wrapper .comment-form-subscriptions input[type="checkbox"] {
 	width: 18px;
 	height: 18px;
 	vertical-align: middle;
 	margin-right: 8px;
 }

 button.gem-button.gem-button-size-small.ap-blue.submit {
 	display: block;
 	/* чтобы margin:auto работал */
 	margin: 0 auto;
 	/* по центру контейнера */
 	max-width: fit-content;
 	/* не растягивать на всю ширину */
 	align-self: center;
 	/* если родитель — flex */
 }

 .pld-like-dislike-wrap {
 	margin-left: 10px;
 }

 p.ap-consent * {
 	cursor: pointer;
 }

 form.grid.grid--2 * {
 	font-size: 16px !important;
 	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Inter, Arial, "Noto Sans", sans-serif;
 }

 #commentform * {
 	font-size: 16px !important;
 	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Inter, Arial, "Noto Sans", sans-serif;
 }

 #comment-author {
 	margin-top: 10px;
 }

 button.btn.btn--ghost2 {
 	cursor: pointer;
 }

 form#form_question * {
 	font-size: 16px !important;
 	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Inter, Arial, "Noto Sans", sans-serif;
 }

 select#form_question-category {
 	padding: 0 0 0 10px;
 }

 button.gem-button.gem-button-size-small.ap-blue.submit {
 	align-items: center;
 	gap: .5rem;
 	padding: 0.5rem 0.6rem;
 	border-radius: 999px;
 	background: var(--brand);
 	color: #fff;
 	font-weight: 600;
 	box-shadow: var(--shadow);
 	transition: .2s;
 	cursor: pointer;
 }

 button.gem-button.gem-button-size-small.ap-blue.submit:hover {
 	align-items: center;
 	gap: .5rem;
 	padding: 0.5rem 0.6rem;
 	border-radius: 999px;
 	background: #fff;
 	color: var(--brand);
 	font-weight: 600;
 	box-shadow: var(--shadow);
 	transition: .2s;
 	cursor: pointer;
 }

 .stati-wrapper .form-submit {
 	margin-top: 8px;
 }

 .stati-wrapper .form-submit .gem-button {
 	min-height: 40px;
 	padding: .6rem 1rem;
 	border-radius: 12px !important;
 }

 .col-md-4.col-xs-12.comment-author-input {
 	margin-bottom: 10px;
 }

 /* Иконка комментариев рядом со счётчиком */
 .stati-wrapper .comments-link i {
 	margin-right: 6px;
 	color: var(--muted);
 }

 .stati-wrapper .comments-link a {
 	color: var(--muted);
 }

 .stati-wrapper .comments-link a:hover {
 	color: var(--brand);
 }

 /* Список комментариев (если есть) */
 .stati-wrapper .comment-list {
 	list-style: none;
 	margin: 16px 0px 20px;
 	padding: 0;
 }

 .stati-wrapper .comment-list .comment {
 	background: #fff;
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	padding: 12px;
 	box-shadow: var(--shadow);
 }

 .stati-wrapper .comment-list .comment+.comment {
 	margin-top: 10px;
 }

 section.cta-final.cta-final--gradient>.container>p:nth-child(2) {
 	margin-bottom: -5px;
 }

 /* ==============================
	Комментарии: mobile без отступов и с подсветкой веток (<=560px)
	============================== */
 @media (max-width: 560px) {

 	/* Сжимаем карточки и вертикальные интервалы */
 	.stati-wrapper .comment-list .comment {
 		padding: 18px 10px 30px;
 	}

 	.stati-wrapper .comment-list .comment+.comment {
 		margin-top: 8px;
 	}

 	/* Убираем ВСЕ горизонтальные отступы у вложенных уровней */
 	.stati-wrapper .comment-list .comment.depth-2,
 	.stati-wrapper .comment-list .comment.depth-3,
 	.stati-wrapper .comment-list .comment.depth-4,
 	.stati-wrapper .comment-list .comment.depth-5,
 	.stati-wrapper .comment-list .comment.depth-6,
 	.stati-wrapper .comment-list .comment.depth-7,
 	.stati-wrapper .comment-list .comment.depth-8,
 	.stati-wrapper .comment-list .comment.depth-9,
 	.stati-wrapper .comment-list .comment.depth-10 {
 		margin-left: 0 !important;
 	}

 	/* И отключаем вертикальные линии у вложенных на мобиле */
 	.stati-wrapper .comment-list .comment.depth-2::before,
 	.stati-wrapper .comment-list .comment.depth-3::before,
 	.stati-wrapper .comment-list .comment.depth-4::before,
 	.stati-wrapper .comment-list .comment.depth-5::before,
 	.stati-wrapper .comment-list .comment.depth-6::before,
 	.stati-wrapper .comment-list .comment.depth-7::before,
 	.stati-wrapper .comment-list .comment.depth-8::before,
 	.stati-wrapper .comment-list .comment.depth-9::before,
 	.stati-wrapper .comment-list .comment.depth-10::before {
 		display: none !important;
 	}

 	/* Тонкая цветовая подсветка уровней вложенности (без линий) */
 	/* Не трогаем выделение .user-5 (юрист) */
 	.stati-wrapper .comment-list .comment.depth-2:not(.user-5) {
 		background: rgba(235, 83, 83, .04) !important;
 	}

 	.stati-wrapper .comment-list .comment.depth-3:not(.user-5) {
 		background: rgba(59, 130, 246, .05) !important;
 	}

 	.stati-wrapper .comment-list .comment.depth-4:not(.user-5) {
 		background: rgba(16, 185, 129, .05) !important;
 	}

 	.stati-wrapper .comment-list .comment.depth-5:not(.user-5) {
 		background: rgba(245, 158, 11, .06) !important;
 	}

 	.stati-wrapper .comment-list .comment.depth-6:not(.user-5),
 	.stati-wrapper .comment-list .comment.depth-7:not(.user-5),
 	.stati-wrapper .comment-list .comment.depth-8:not(.user-5),
 	.stati-wrapper .comment-list .comment.depth-9:not(.user-5),
 	.stati-wrapper .comment-list .comment.depth-10:not(.user-5) {
 		background: rgba(107, 114, 128, .05) !important;
 	}

 	/* Чуть компактнее шапка комментария и аватар */
 	.stati-wrapper .comment-list .comment .comment-author.vcard {
 		gap: 8px;
 	}

 	.stati-wrapper .comment-list .comment .avatar {
 		width: 32px;
 		height: 32px;
 	}
 }

 /* ==============================
	AnsPress: скрыть панели кнопок редактора (формы вопроса/ответа/комментариев)
	============================== */
 #anspress .wp-editor-tools,
 #anspress .quicktags-toolbar,
 #anspress .mce-top-part,
 #anspress .mce-toolbar-grp,
 #anspress .wp-media-buttons {
 	display: none !important;
 }

 /* #anspress .wp-editor-wrap {
 	border: 1px solid var(--border);
 	border-radius: 12px;
 } */
 #form_question-post_content {
 	padding: 3px 10px;
 }

 #anspress .wp-editor-container {
 	border-top: 1px solid var(--border);
 }

 /* AnsPress consent block */
 #anspress .ap-consent,
 #ask_form .ap-consent {
 	background: var(--bg-alt);
 	border: 1px solid var(--border);
 	border-radius: 12px;
 	padding: .5rem .75rem;
 	margin: 8px 0;
 	font-size: inherit;
 }

 /* Replace native select arrow with brand-colored SVG */
 #form_question-category,
 #ask_form select.ap-form-control {
 	-webkit-appearance: none;
 	-moz-appearance: none;
 	appearance: none;
 	background-color: #fff;
 	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23eb5353' d='M6 8L0 0h12z'/%3E%3C/svg%3E");
 	background-repeat: no-repeat;
 	background-position: right 12px center;
 	background-size: 12px 8px;
 	padding-right: 34px;
 }

 /* Hide old arrow in legacy IE/Edge */
 #ask_form select.ap-form-control::-ms-expand {
 	display: none;
 }

 /* Focus brand accent */
 #form_question-category:focus,
 #ask_form select.ap-form-control:focus {
 	border-color: var(--brand);
 	box-shadow: 0 0 0 4px rgba(235, 83, 83, .12);
 }

 /* Placeholder color for "Выбрать" when value is empty via :invalid */
 #form_question-category:invalid {
 	color: var(--muted);
 }

 #form_question-category option {
 	color: #1a1a1a;
 }

 #form_question-category option[value=""] {
 	color: var(--muted);
 }

 #anspress .ap-consent a,
 #ask_form .ap-consent a {
 	color: var(--brand);
 }

 #anspress .ap-consent a:hover,
 #ask_form .ap-consent a:hover {
 	color: var(--brand-2);
 }

 .ap-q-left.ap-col-8 {
 	width: 100%;
 }

 .ap-question-right.ap-col-4 {
 	display: none;
 }

 #anspress .ap-list-head .ap-btn-ask {
 	border-radius: 20px;
 	padding: 10px 20px;
 	min-width: 160px;
 }

 .copyr {
 	float: right;
 	font-size: .9rem;
 	margin-top: -25px;
 }

 .copyr a {
 	color: var(--muted);
 }