/*
 * Решта секцій головної: термінова допомога, блог, команда, відгуки, контакти.
 * Шаблони — template-parts/sections/{urgent,blog,team,reviews,contacts}-home.php.
 * Спільні заголовки секцій — .hx-*; темні секції — модифікатор .hx-dark.
 */
.hx { --hx-navy: #0b1220; --hx-dark: #1E3A5F; --hx-primary: #2B4C7E; --hx-sky: #9cc0ee;
	--hx-ink: #0f172a; --hx-text: #475569; --hx-line: #dfe6ef; --hx-soft: #f5f7fb;
	position: relative; isolation: isolate; overflow: hidden; padding: 5rem 0 5.5rem; background: var(--hx-soft); color: var(--hx-ink); }
@media (min-width:1024px) { .hx { padding: 6.5rem 0 7rem; } }
.hx-dark { --hx-ink: #fff; --hx-text: rgba(226, 236, 250, .78); --hx-line: rgba(156, 192, 238, .16); background: var(--hx-navy); color: #fff; }
.hx-dark::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: radial-gradient(48rem 26rem at 90% 0%, rgba(43, 76, 126, .5), transparent 65%), radial-gradient(36rem 22rem at 0% 100%, rgba(43, 76, 126, .35), transparent 60%); }
.hx-wrap { max-width: 80rem; margin: 0 auto; padding: 0 1rem; }
@media (min-width:640px) { .hx-wrap { padding: 0 1.5rem; } }
@media (min-width:1024px) { .hx-wrap { padding: 0 2rem; } }

.hx-head { display: grid; gap: 1.5rem; align-items: end; margin-bottom: 2.75rem; }
@media (min-width:1024px) { .hx-head { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 4rem; margin-bottom: 3.5rem; } }
.hx-kicker { display: flex; align-items: center; gap: 1rem; margin: 0 0 1.1rem; font-size: .78rem; font-weight: 600; letter-spacing: .24em; text-transform: uppercase; color: var(--hx-primary); }
.hx-dark .hx-kicker { color: var(--hx-sky); }
.hx-kicker::before { content: ""; width: 3rem; height: 1px; background: linear-gradient(90deg, transparent, currentColor); }
.hx-title { margin: 0; font-size: clamp(2.1rem, 5vw, 3.7rem); line-height: 1.03; font-weight: 800; letter-spacing: -.03em; color: var(--hx-ink); text-wrap: balance; }
.hx-accent { background: linear-gradient(95deg, var(--hx-primary) 0%, #4f78b5 55%, #7ea2d6 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hx-dark .hx-accent { background-image: linear-gradient(95deg, #e6efff 0%, var(--hx-sky) 50%, #6f98d6 100%); }
@media (min-width:1024px) { .hx-side { padding: 0 0 .35rem 2.25rem; border-left: 1px solid var(--hx-line); } }
.hx-lead { margin: 0; max-width: 32rem; font-size: 1.05rem; line-height: 1.6; color: var(--hx-text); }
.hx-link { display: inline-flex; align-items: center; gap: .4rem; margin-top: 1.1rem; font-weight: 700; color: var(--hx-primary); text-decoration: none; border-bottom: 1px solid transparent; transition: border-color .2s ease, gap .2s ease; }
.hx-dark .hx-link { color: var(--hx-sky); }
.hx-link:hover { border-bottom-color: currentColor; gap: .65rem; }
.hx-link svg { width: 1rem; height: 1rem; }

.hx-btn { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; min-height: 52px; padding: .8rem 1.4rem; border-radius: .9rem;
	font: inherit; font-size: 1rem; font-weight: 700; white-space: nowrap; text-decoration: none; cursor: pointer; border: 1px solid transparent;
	transition: transform .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease; }
.hx-btn svg { width: 1.1rem; height: 1.1rem; flex: none; }
.hx-btn:hover { transform: translateY(-2px); }
.hx-btn:focus-visible { outline: 3px solid var(--hx-sky); outline-offset: 3px; }
.hx-btn--primary { color: #fff !important; background: linear-gradient(135deg, var(--hx-primary), var(--hx-dark)); box-shadow: 0 14px 28px -14px rgba(30, 58, 95, .7); }
.hx-btn--light { color: var(--hx-dark) !important; background: #fff; box-shadow: 0 14px 30px -14px rgba(156, 192, 238, .6); }
.hx-btn--line { color: var(--hx-primary) !important; background: transparent; border-color: #c9d6ea; }
.hx-btn--line:hover { background: #fff; border-color: var(--hx-primary); }
.hx-btn--ghost { color: #fff !important; background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .26); }
.hx-btn--ghost:hover { background: rgba(255, 255, 255, .12); border-color: rgba(255, 255, 255, .55); }
.hx-btn--tg { color: #fff !important; background: #229ED9; }
.hx-btn--tg:hover { background: #1b8cc2; }

/* Поява при прокрутці: клас .hx-pend ставить скрипт лише елементам нижче екрана; без нього все видно */
.hx-reveal.hx-pend { opacity: 0; transform: translateY(26px); }
.hx-reveal.hx-pend.is-in { opacity: 1; transform: none; transition: opacity .85s cubic-bezier(.2, .8, .2, 1) var(--d, 0ms), transform .85s cubic-bezier(.2, .8, .2, 1) var(--d, 0ms); }
@media (prefers-reduced-motion: reduce) { .hx *, .hx *::before, .hx *::after { animation: none !important; transition: none !important; } }

/* ═════════════════════ Термінова допомога (смуга під hero) ═════════════════════ */
.abu { position: relative; overflow: hidden; background: linear-gradient(90deg, #101b2f 0%, #15284a 50%, #101b2f 100%); color: #fff; border-top: 1px solid rgba(156, 192, 238, .12); }
.abu::before { /* світлова лінія, що біжить верхнім краєм */
	content: ""; position: absolute; top: -1px; left: -30%; width: 30%; height: 2px;
	background: linear-gradient(90deg, transparent, var(--hx-sky, #9cc0ee), transparent); animation: abuRun 6s linear infinite; }
@keyframes abuRun { to { left: 100%; } }
.abu-wrap { max-width: 80rem; margin: 0 auto; padding: 1.4rem 1rem; display: flex; flex-direction: column; gap: 1rem; }
@media (min-width:640px) { .abu-wrap { padding-left: 1.5rem; padding-right: 1.5rem; } }
@media (min-width:1024px) { .abu-wrap { flex-direction: row; align-items: center; justify-content: space-between; gap: 2rem; padding: 1.5rem 2rem; } }
.abu-text { display: flex; align-items: center; gap: 1rem; }
.abu-ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 3rem; height: 3rem; border-radius: 50%; color: #9cc0ee; border: 1px solid rgba(156, 192, 238, .3); position: relative; }
.abu-ico::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid rgba(156, 192, 238, .25); animation: abuRing 2.6s ease-out infinite; }
@keyframes abuRing { from { transform: scale(.85); opacity: 1; } to { transform: scale(1.35); opacity: 0; } }
.abu-ico svg { width: 1.35rem; height: 1.35rem; }
.abu-title { margin: 0; font-size: 1.1rem; font-weight: 800; line-height: 1.25; }
.abu-sub { margin: .2rem 0 0; font-size: .92rem; color: rgba(226, 236, 250, .75); }
.abu-actions { display: flex; flex-wrap: wrap; gap: .6rem; }
.abu-actions .hx-btn { min-height: 46px; padding: .6rem 1.1rem; font-size: .95rem; }
@media (max-width:539.98px) { .abu-actions .hx-btn { flex: 1 1 calc(50% - .3rem); } .abu-actions .abu-phone { flex-basis: 100%; } }

/* ═════════════════════════════════ Блог ═════════════════════════════════ */
.abb-grid { display: grid; gap: 1.25rem; }
@media (min-width:1024px) { .abb-grid { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 1.5rem; } }
.abb-feat, .abb-item { position: relative; display: flex; text-decoration: none; color: var(--hx-ink); background: #fff; border: 1px solid #e6ecf4; border-radius: 1.4rem; overflow: hidden;
	transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease, border-color .45s ease; }
.abb-feat:hover, .abb-item:hover, .abb-feat:focus-visible, .abb-item:focus-visible { transform: translateY(-5px); border-color: #cfdbec; box-shadow: 0 30px 50px -30px rgba(15, 23, 42, .45); outline: none; }
.abb-feat { flex-direction: column; }
.abb-media { position: relative; overflow: hidden; background: #e8eef6; }
.abb-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .8s cubic-bezier(.2, .8, .2, 1); }
.abb-feat:hover .abb-media img, .abb-item:hover .abb-media img { transform: scale(1.06); }
.abb-feat .abb-media { aspect-ratio: 16 / 9; }
.abb-tag { position: absolute; left: 1rem; top: 1rem; display: inline-flex; align-items: center; gap: .4rem; padding: .35rem .7rem; border-radius: 9999px;
	font-size: .75rem; font-weight: 700; color: var(--hx-dark); background: rgba(255, 255, 255, .92); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.abb-tag i { width: .5rem; height: .5rem; border-radius: 50%; }
.abb-body { display: flex; flex-direction: column; gap: .6rem; padding: 1.5rem 1.6rem 1.6rem; min-width: 0; }
.abb-meta { display: flex; flex-wrap: wrap; gap: .3rem .9rem; font-size: .8rem; color: #64748b; }
.abb-feat h3 { margin: 0; font-size: clamp(1.3rem, 2.2vw, 1.75rem); line-height: 1.2; font-weight: 800; letter-spacing: -.015em; }
.abb-feat p { margin: 0; color: var(--hx-text); line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.abb-more { margin-top: .3rem; display: inline-flex; align-items: center; gap: .4rem; font-weight: 700; font-size: .92rem; color: var(--hx-primary); }
.abb-more svg { width: 1rem; height: 1rem; transition: transform .3s ease; }
.abb-feat:hover .abb-more svg, .abb-item:hover .abb-more svg { transform: translateX(4px); }
.abb-list { display: grid; gap: 1rem; align-content: start; }
.abb-item { align-items: stretch; }
.abb-item .abb-media { flex: none; width: 34%; min-height: 8.5rem; }
.abb-item .abb-body { padding: 1rem 1.2rem; gap: .4rem; justify-content: center; }
.abb-item h3 { margin: 0; font-size: 1.02rem; line-height: 1.3; font-weight: 700; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.abb-item .abb-cat { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--hx-primary); }
@media (max-width:539.98px) { .abb-item .abb-media { width: 38%; min-height: 7rem; } .abb-item h3 { font-size: .95rem; } }
.abb-cta { display: flex; flex-direction: column; gap: 1rem; align-items: flex-start; margin-top: 2rem; padding: 1.5rem 1.6rem; border-radius: 1.2rem; background: #fff; border: 1px dashed #c9d6ea; }
@media (min-width:768px) { .abb-cta { flex-direction: row; align-items: center; justify-content: space-between; } }
.abb-cta b { display: block; font-size: 1.1rem; }
.abb-cta span { color: var(--hx-text); font-size: .95rem; }
.abb-cta-actions { display: flex; flex-wrap: wrap; gap: .6rem; }

/* ═════════════════════════════════ Команда ═════════════════════════════════ */
.abt-grid { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width:900px) { .abt-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; } .abt-card--lead { grid-row: span 2; } }
@media (max-width:899.98px) { .abt-card--lead { grid-column: 1 / -1; } }
.abt-card { position: relative; overflow: hidden; isolation: isolate; border-radius: 1.4rem; aspect-ratio: 4 / 5; background: #13233b; border: 1px solid var(--hx-line); }
@media (max-width:899.98px) { .abt-card--lead { aspect-ratio: 4 / 5; } }
@media (min-width:900px) { .abt-card--lead { aspect-ratio: auto; } }
.abt-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 22%; transition: transform 1s cubic-bezier(.2, .8, .2, 1), filter .6s ease; }
.abt-card:hover img, .abt-card:focus-within img { transform: scale(1.05); }
.abt-mono { position: absolute; inset: 0; display: grid; place-items: center; font-size: 4rem; font-weight: 800; color: rgba(156, 192, 238, .5); }
.abt-shade { position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(11, 18, 32, 0) 38%, rgba(11, 18, 32, .55) 62%, rgba(11, 18, 32, .95) 100%); transition: background .5s ease; }
.abt-card:hover .abt-shade, .abt-card:focus-within .abt-shade { background: linear-gradient(180deg, rgba(11, 18, 32, .1) 0%, rgba(11, 18, 32, .7) 48%, rgba(11, 18, 32, .97) 100%); }
.abt-info { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; padding: 1.1rem 1.15rem 1.15rem; }
.abt-card--lead .abt-info { padding: 1.6rem; }
.abt-role { display: inline-block; margin-bottom: .45rem; padding: .25rem .6rem; border-radius: 9999px; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--hx-sky); background: rgba(11, 18, 32, .55); border: 1px solid rgba(156, 192, 238, .3); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.abt-name { margin: 0; font-size: clamp(1.02rem, 1.6vw, 1.25rem); line-height: 1.2; font-weight: 800; color: #fff; }
.abt-card--lead .abt-name { font-size: clamp(1.4rem, 2.6vw, 2rem); }
.abt-more { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .5s cubic-bezier(.2, .8, .2, 1); }
.abt-more > div { overflow: hidden; }
.abt-card:hover .abt-more, .abt-card:focus-within .abt-more { grid-template-rows: 1fr; }
.abt-card--lead .abt-more { grid-template-rows: 1fr; }
.abt-edu { margin: .6rem 0 0; font-size: .82rem; line-height: 1.45; color: rgba(226, 236, 250, .82); }
.abt-edu b { display: block; font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; color: var(--hx-sky); margin-bottom: .15rem; }
.abt-cta { margin-top: .8rem; display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .8rem; border-radius: .6rem; border: 1px solid rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .08); color: #fff; font: inherit; font-size: .82rem; font-weight: 700; cursor: pointer; }
.abt-cta:hover, .abt-cta:focus-visible { background: #fff; color: var(--hx-dark); outline: none; }
@media (hover: none) { .abt-more { grid-template-rows: 1fr; } .abt-card:not(.abt-card--lead) .abt-edu { display: none; } }

/* ═════════════════════════════════ Відгуки ═════════════════════════════════ */
.abr-rating { display: inline-flex; align-items: center; gap: .6rem; margin-top: 1.1rem; padding: .5rem .9rem; border-radius: 9999px; background: #fff; border: 1px solid var(--hx-line); font-size: .9rem; }
.abr-stars { display: inline-flex; gap: .1rem; color: #f5b301; }
.abr-stars svg { width: 1.05rem; height: 1.05rem; }
.abr-stars .off { color: #d7dee8; }
.abr-grid { display: grid; gap: 1.25rem; grid-template-columns: 1fr; }
@media (min-width:700px) { .abr-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width:1100px) { .abr-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; } }
.abr-card { position: relative; display: flex; flex-direction: column; gap: 1rem; padding: 1.6rem; border-radius: 1.4rem; background: #fff; border: 1px solid #e6ecf4; transition: transform .45s cubic-bezier(.2, .8, .2, 1), box-shadow .45s ease; }
.abr-card:hover { transform: translateY(-5px); box-shadow: 0 30px 50px -30px rgba(15, 23, 42, .4); }
.abr-card::before { content: "“"; position: absolute; right: 1.2rem; top: .2rem; font: 800 6rem/1 Georgia, "Times New Roman", serif; color: #e3eaf4; pointer-events: none; }
.abr-text { position: relative; margin: 0; font-size: 1rem; line-height: 1.6; color: #1e293b; }
.abr-foot { display: flex; align-items: center; gap: .8rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid #edf1f6; }
.abr-ava { flex: none; display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border-radius: 50%; font-weight: 800; color: #fff; background: linear-gradient(135deg, var(--hx-primary), var(--hx-dark)); overflow: hidden; }
.abr-ava img { width: 100%; height: 100%; object-fit: cover; }
.abr-who { min-width: 0; }
.abr-who b { display: block; font-size: .95rem; }
.abr-who span { font-size: .8rem; color: #64748b; }
.abr-src { margin-left: auto; flex: none; font-size: .72rem; font-weight: 700; color: #64748b; padding: .25rem .55rem; border-radius: 9999px; background: #f1f5fb; text-decoration: none; }
.abr-actions { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: center; margin-top: 2.5rem; }

/* ═════════════════════════════════ Контакти ═════════════════════════════════ */
.abk-grid { display: grid; gap: 1.25rem; }
@media (min-width:1024px) { .abk-grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.5rem; align-items: stretch; } }
.abk-card { position: relative; overflow: hidden; isolation: isolate; display: flex; flex-direction: column; gap: 1.4rem; padding: 2rem 1.6rem; border-radius: 1.5rem; color: #fff;
	background: radial-gradient(32rem 18rem at 100% 0%, rgba(156, 192, 238, .26), transparent 60%), linear-gradient(150deg, #1E3A5F 0%, #0b1220 100%); }
@media (min-width:640px) { .abk-card { padding: 2.4rem 2.2rem; } }
.abk-label { font-size: .72rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--hx-sky); }
.abk-phone { display: inline-block; margin-top: .35rem; font-size: clamp(1.6rem, 3.6vw, 2.3rem); font-weight: 800; letter-spacing: -.01em; color: #fff; text-decoration: none; }
.abk-phone:hover { color: var(--hx-sky); }
.abk-list { list-style: none; margin: 0; padding: 1.4rem 0 0; display: grid; gap: 1.1rem; border-top: 1px solid rgba(156, 192, 238, .16); }
.abk-list li { display: flex; gap: .85rem; align-items: flex-start; }
.abk-ico { flex: none; display: inline-flex; align-items: center; justify-content: center; width: 2.4rem; height: 2.4rem; border-radius: .75rem; color: var(--hx-sky); background: rgba(156, 192, 238, .1); border: 1px solid rgba(156, 192, 238, .18); }
.abk-ico svg { width: 1.15rem; height: 1.15rem; }
.abk-list b { display: block; font-size: .78rem; font-weight: 600; letter-spacing: .04em; color: rgba(226, 236, 250, .65); }
.abk-list a, .abk-list span { color: #fff; text-decoration: none; font-weight: 600; line-height: 1.45; }
.abk-list a:hover { color: var(--hx-sky); }
.abk-actions { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-top: auto; }
.abk-actions .hx-btn { min-height: 50px; padding: .7rem 1rem; }
.abk-actions .hx-btn:first-child { grid-column: 1 / -1; }
.abk-social { display: flex; gap: .5rem; }
.abk-social a { display: inline-flex; align-items: center; justify-content: center; width: 2.6rem; height: 2.6rem; border-radius: .75rem; color: #fff; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .14); transition: background-color .2s ease; }
.abk-social a:hover { background: rgba(255, 255, 255, .18); }
.abk-social svg { width: 1.1rem; height: 1.1rem; }

.abk-map { position: relative; display: flex; flex-direction: column; min-height: 30rem; border-radius: 1.5rem; overflow: hidden; background: #e8eef6; border: 1px solid #e0e7f0; }
.abk-tabs { position: absolute; z-index: 2; top: 1rem; left: 1rem; display: inline-flex; padding: .3rem; border-radius: 9999px; background: rgba(255, 255, 255, .95); box-shadow: 0 10px 24px -12px rgba(15, 23, 42, .45); }
.abk-tab { border: 0; background: transparent; padding: .55rem 1.05rem; border-radius: 9999px; font: inherit; font-size: .9rem; font-weight: 700; color: #475569; cursor: pointer; transition: background-color .25s ease, color .25s ease; }
.abk-tab[aria-selected="true"] { color: #fff; background: linear-gradient(135deg, var(--hx-primary), var(--hx-dark)); }
.abk-tab:focus-visible { outline: 2px solid var(--hx-primary); outline-offset: 2px; }
.abk-frames { position: relative; flex: 1; }
.abk-frames iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; transition: opacity .4s ease; }
.abk-frames iframe[hidden] { display: none !important; }
.abk-addr { position: absolute; z-index: 2; left: 1rem; right: 1rem; bottom: 1rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.1rem; border-radius: 1rem; background: rgba(255, 255, 255, .96); box-shadow: 0 18px 36px -18px rgba(15, 23, 42, .5); }
.abk-addr b { display: block; font-size: 1rem; color: var(--hx-ink); }
.abk-addr span { font-size: .88rem; color: #64748b; }
.abk-route { flex: none; display: inline-flex; align-items: center; gap: .4rem; padding: .6rem .9rem; border-radius: .7rem; font-size: .88rem; font-weight: 700; color: #fff !important; text-decoration: none; background: linear-gradient(135deg, var(--hx-primary), var(--hx-dark)); }
.abk-route svg { width: 1rem; height: 1rem; }
@media (max-width:539.98px) { .abk-map { min-height: 21rem; } .abk-addr { flex-direction: column; align-items: flex-start; } }

/* Блог: права колонка тягнеться на висоту головної статті; заглушки теми — на всю площу */
@media (min-width:1024px) { .abb-list { grid-auto-rows: 1fr; align-content: stretch; } }
.abb-media > *:not(img):not(.abb-tag) { position: absolute; inset: 0; width: 100%; height: 100%; }
.abb-media svg { width: 100%; height: 100%; }
/* Контакти на білому — щоб не зливались із відгуками */
.hx.abk { background: #fff; }

/* Смуга під hero стоїть поза .hx — даємо їй ті самі змінні кольорів */
.abu { --hx-navy: #0b1220; --hx-dark: #1E3A5F; --hx-primary: #2B4C7E; --hx-sky: #9cc0ee; }
@media (min-width:1024px) { .abu-actions { flex-wrap: nowrap; } }

/* Команда на вузьких екранах: маленькі картки — лише посада й ім'я */
@media (max-width:899.98px) {
	.abt-card:not(.abt-card--lead) .abt-more { display: none; }
	.abt-card:not(.abt-card--lead) .abt-info { padding: .8rem .85rem .9rem; }
	.abt-card:not(.abt-card--lead) .abt-role { font-size: .6rem; letter-spacing: .04em; padding: .2rem .5rem; margin-bottom: .35rem; }
	.abt-card:not(.abt-card--lead) .abt-name { font-size: .98rem; }
}

/* ═══ Правки 15.10: вирівнювання шапок, «Показати більше», блог, карта ═══ */
.hx-head { align-items: center; }
.hx-btn--white { color: var(--hx-dark, #1E3A5F) !important; background: #fff; border-color: #d5deeb; box-shadow: 0 12px 26px -16px rgba(15, 23, 42, .45); }
.hx-btn--white:hover { border-color: var(--hx-primary, #2B4C7E); }
.hx-more-wrap { display: flex; justify-content: center; margin-top: 2rem; }
.hx-pop { animation: hxPop .6s cubic-bezier(.2, .8, .2, 1) both; }
@keyframes hxPop { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* Блог: праворуч рівно стільки рядків, скільки статей, на всю висоту великої */
@media (min-width:1024px) {
	.abb-grid { align-items: stretch; }
	.abb-list { grid-template-rows: repeat(var(--rows, 4), minmax(0, 1fr)); grid-auto-rows: unset; height: 100%; }
	.abb-list .abb-item { min-height: 0; }
	.abb-list .abb-item .abb-media { min-height: 0; }
	.abb-list .abb-item h3 { -webkit-line-clamp: 2; }
}
.abb-more-grid { display: grid; gap: 1rem; margin-top: 1rem; }
.abb-more-grid:not(:has(> :not([hidden]))) { margin-top: 0; }
@media (min-width:700px) { .abb-more-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width:1100px) { .abb-more-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Карта: перемикач праворуч — ліворуч Google показує свою картку місця */
.abk-tabs { left: auto; right: 1rem; }

/* Приховані «Показати більше» — display карток інакше перебиває атрибут hidden */
[data-more-item][hidden] { display: none !important; }
.abb-more-grid { margin-top: 1.25rem; }

/* Блог: «Показати більше» живе в нижній смузі разом з іншими кнопками */
.abb-cta { margin-top: 1.5rem; }
.abb-cta-actions { align-items: center; }
@media (min-width:768px) { .abb-cta { flex-wrap: nowrap; } .abb-cta-actions { flex-wrap: nowrap; flex: none; } }
@media (max-width:767.98px) {
	.abb-cta-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
	.abb-cta-actions .hx-btn { width: 100%; padding-left: .8rem; padding-right: .8rem; font-size: .95rem; }
	.abb-cta-actions .hx-btn--primary { grid-column: 1 / -1; }
}
.abu-actions .hx-btn { min-width: 0; }
@media (max-width:399.98px) { .abu-actions .hx-btn { font-size: .88rem; padding-left: .6rem; padding-right: .6rem; } }
.abk-actions .hx-btn { min-width: 0; white-space: normal; text-align: center; }
@media (max-width:399.98px) { .abk-actions .hx-btn { font-size: .9rem; padding-left: .6rem; padding-right: .6rem; } }

/* Карта на сенсорних екранах: щит пропускає вертикальний свайп, тап вмикає карту */
.abk-shield { display: none; }
@media (pointer:coarse), (max-width:899.98px) {
	.abk-shield { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center; padding: 0; margin: 0; border: 0; background: transparent; cursor: pointer; -webkit-tap-highlight-color: transparent; }
	.abk-shield span { transform: translateY(-4rem); padding: .5rem .9rem; border-radius: 9999px; font-size: .8rem; font-weight: 600; color: #fff; background: rgba(16, 27, 47, .78); box-shadow: 0 8px 20px -8px rgba(0, 0, 0, .5); }
	.abk-map.is-live .abk-shield { display: none; }
}
/* Перемикач офісів і адреса — над щитом карти (.abk-shield), інакше тап іде в щит */
.abk-tabs, .abk-addr { z-index: 4; }
