/*
 * Webstart.am — Glossary module styles.
 *
 * Reuses the theme brand system:
 *   --black, --pink, --white, --gray (declared in css/style.css)
 *   .wrapper container, .d_flex, pink CTA hover pattern, .ourblog_blck cards.
 *
 * Keep selectors prefixed with `.glossary_` to avoid any collision with the
 * rest of the theme.  Existing classes like `.ourblog_blck`, `.pink_button`
 * and `.blogitem_general` are re-used as-is.
 */

/* ---------- HERO ---------- */
.glossary_hero {
	min-height: auto;
	height: auto;
	padding: 180px 40px 120px;
	position: relative;
	top: auto;
	z-index: 3;
}
.glossary_hero .spline_home_blck {
	position: relative;
	max-width: 1180px;
}
.glossary_hero h1 {
	max-width: 1020px;
}
.glossary_hero .descrip_hb {
	max-width: 820px;
}

/* ---------- SEARCH ---------- */
.glossary_search_wrapper {
	width: 100%;
	max-width: 680px;
	margin-top: 24px;
}
.glossary_search {
	width: 100%;
	align-items: center;
	justify-content: flex-start;
	gap: 14px;
	padding: 10px 22px;
	background: rgba(255, 255, 255, 0.06);
	border: 1.5px solid rgba(255, 255, 255, 0.2);
	border-radius: 999px;
	transition: border-color .25s ease, background .25s ease;
}
.glossary_search:focus-within {
	border-color: var(--pink);
	background: rgba(255, 255, 255, 0.1);
}
.glossary_search_icon {
	color: var(--gray);
	flex: 0 0 auto;
}
.glossary_search:focus-within .glossary_search_icon {
	color: var(--pink);
}
.glossary_search_input {
	flex: 1 1 auto;
	border: 0;
	outline: 0;
	background: transparent;
	color: var(--white);
	font-size: 18px;
	line-height: 1.3;
	padding: 14px 0;
	font-family: inherit;
}
.glossary_search_input::placeholder {
	color: var(--gray);
	opacity: 1;
}
.glossary_search_clear {
	flex: 0 0 auto;
	width: 30px;
	height: 30px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--gray);
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	display: none;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.glossary_search_clear:hover {
	color: var(--pink);
}
.glossary_search.has-value .glossary_search_clear {
	display: flex;
}

/* ---------- ALPHABET ---------- */
.glossary_alphabet_section {
	padding: 20px 40px 30px;
	position: relative;
	z-index: 3;
}
.glossary_section_label {
	color: var(--white);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	opacity: .6;
	margin-bottom: 16px;
}
.glossary_alphabet {
	flex-wrap: wrap;
	gap: 8px;
	justify-content: flex-start;
	align-items: center;
}
.glossary_letter {
	min-width: 42px;
	height: 42px;
	padding: 0 14px;
	border-radius: 999px;
	border: 1px solid rgba(255, 255, 255, 0.25);
	background: transparent;
	color: var(--white);
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background .2s ease, border-color .2s ease, color .2s ease, transform .2s ease;
}
.glossary_letter:hover {
	border-color: var(--pink);
	color: var(--pink);
}
.glossary_letter.active {
	background: var(--pink);
	border-color: var(--pink);
	color: var(--white);
}
.glossary_letter.is-disabled {
	opacity: .28;
	cursor: default;
	pointer-events: none;
}

/* ---------- GRID + CARDS ---------- */
.glossary_grid_section {
	padding: 60px 0 80px;
	position: relative;
	z-index: 3;
}
.glossary_grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}
.glossary_card {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 30px;
	border-radius: 30px;
	border: 1.5px solid rgba(255, 255, 255, 0.12);
	background: rgba(255, 255, 255, 0.03);
	color: var(--white);
	text-decoration: none;
	position: relative;
	overflow: hidden;
	transition: transform .35s ease, border-color .35s ease, background .35s ease;
	min-height: 240px;
}
.glossary_card::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at top right, rgba(255, 41, 208, 0.12), transparent 55%);
	opacity: 0;
	transition: opacity .35s ease;
	pointer-events: none;
}
.glossary_card:hover {
	transform: translateY(-4px);
	border-color: var(--pink);
	background: rgba(255, 255, 255, 0.05);
}
.glossary_card:hover::before { opacity: 1; }
.glossary_card.is-hidden { display: none; }
.glossary_card_head {
	width: 100%;
	align-items: center;
	justify-content: space-between;
}
.glossary_card_letter {
	width: 42px;
	height: 42px;
	border-radius: 12px;
	background: rgba(255, 41, 208, 0.12);
	color: var(--pink);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: 700;
}
.glossary_card_arrow {
	color: var(--gray);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: color .3s ease, transform .3s ease;
}
.glossary_card:hover .glossary_card_arrow {
	color: var(--pink);
	transform: translate(4px, -4px);
}
.glossary_card_title {
	color: var(--white);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.15;
	text-transform: none;
	margin: 0;
	letter-spacing: -.01em;
	transition: color .25s ease;
}
.glossary_card:hover .glossary_card_title { color: var(--pink); }
.glossary_card_excerpt {
	color: var(--gray);
	font-size: 16px;
	line-height: 1.45;
	margin: 0;
}
.glossary_card_cta {
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: var(--white);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .02em;
	text-transform: uppercase;
	transition: color .3s ease;
}
.glossary_card:hover .glossary_card_cta { color: var(--pink); }
.glossary_card_cta svg {
	transition: transform .3s ease;
}
.glossary_card:hover .glossary_card_cta svg { transform: rotate(0deg); }
.glossary_card_cta svg { transform: rotate(-40deg); }

/* Empty state (used by JS search). */
.glossary_empty_state {
	color: var(--gray);
	font-size: 18px;
	text-align: center;
	padding: 60px 20px;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.02);
	border: 1px dashed rgba(255, 255, 255, 0.15);
}
.glossary_empty_state.is-initial { margin-top: 10px; }

/* ---------- OUTRO / CTA BANNER ---------- */
.glossary_outro_section {
	padding: 20px 0 120px;
	position: relative;
	z-index: 3;
}
.glossary_outro_card {
	background: linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%);
	border: 1px solid rgba(255, 41, 208, 0.35);
	border-radius: 40px;
	padding: 60px;
	gap: 40px;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}
.glossary_outro_text {
	max-width: 820px;
	flex: 1 1 520px;
}
.glossary_outro_text h2 {
	color: var(--white);
	font-size: 40px;
	line-height: 1.15;
	text-transform: none;
	margin-bottom: 16px;
	letter-spacing: -.01em;
}
.glossary_outro_text p {
	color: var(--gray);
	font-size: 18px;
	line-height: 1.5;
}

/* =======================================================================
   SINGLE TERM TEMPLATE
   ==================================================================== */
.glossary_single_hero {
	padding: 160px 40px 40px;
	position: relative;
	z-index: 3;
}
.glossary_breadcrumbs {
	margin-bottom: 40px;
	font-size: 14px;
	color: var(--gray);
}
.glossary_breadcrumbs ol {
	list-style: none;
	padding: 0;
	margin: 0;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: flex-start;
}
.glossary_breadcrumbs a {
	color: var(--gray);
	transition: color .25s ease;
}
.glossary_breadcrumbs a:hover { color: var(--pink); }
.glossary_breadcrumbs_sep { color: rgba(255, 255, 255, 0.25); }
.glossary_breadcrumbs li[aria-current="page"] { color: var(--white); }

.glossary_single_hero_inner {
	max-width: 1060px;
}
.glossary_single_kicker {
	display: inline-block;
	padding: 8px 16px;
	border-radius: 999px;
	background: rgba(255, 41, 208, 0.12);
	border: 1px solid rgba(255, 41, 208, 0.45);
	color: var(--pink);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
	margin-bottom: 22px;
}
.glossary_single_title {
	color: var(--white);
	font-size: 72px;
	line-height: 1.05;
	letter-spacing: -.02em;
	margin-bottom: 26px;
	text-transform: none;
	max-width: 1060px;
}
.glossary_single_lead {
	color: var(--white);
	font-size: 22px;
	line-height: 1.5;
	max-width: 820px;
	opacity: .9;
}
.glossary_single_lead p { margin: 0 0 12px; color: inherit; font-size: inherit; }
.glossary_single_lead p:last-child { margin-bottom: 0; }

.glossary_single_body_section {
	padding: 40px 0 120px;
	position: relative;
	z-index: 3;
}
.glossary_single_body_wrapper {
	gap: 60px;
	align-items: flex-start;
	justify-content: space-between;
}
.glossary_single_content {
	flex: 1 1 680px;
	max-width: 920px;
	background: var(--white);
	border-radius: 40px;
	padding: 55px;
}
.glossary_single_content .article_content,
.glossary_single_content .article_content p,
.glossary_single_content .article_content li,
.glossary_single_content .article_content strong,
.glossary_single_content .article_content span {
	color: var(--black) !important;
}
.glossary_single_content .article_content h2,
.glossary_single_content .article_content h3,
.glossary_single_content .article_content h4 {
	color: var(--black);
	text-transform: none;
	font-size: 28px;
	line-height: 1.2;
	margin-top: 28px;
	margin-bottom: 12px;
}
.glossary_single_content .article_content h3 { font-size: 22px; }
.glossary_single_content .article_content p {
	font-size: 17px;
	line-height: 1.6;
	margin: 14px 0;
}
.glossary_single_content .article_content a {
	color: var(--pink) !important;
}

/* ---------- HIGHLIGHTED BLOCKS (simple explanation + business value) ---------- */
.glossary_highlight {
	border-radius: 24px;
	padding: 28px 32px;
	margin: 28px 0;
	background: #fdf5fe;
	border: 1px solid rgba(255, 41, 208, 0.25);
	position: relative;
	overflow: hidden;
}
.glossary_highlight--business {
	background: #f4f4ff;
	border-color: rgba(65, 80, 240, 0.18);
}
.glossary_highlight_label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--pink);
	margin-bottom: 12px;
}
.glossary_highlight--business .glossary_highlight_label {
	color: #3a49c8;
}
.glossary_highlight_dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--pink);
}
.glossary_highlight--business .glossary_highlight_dot {
	background: #3a49c8;
}
.glossary_highlight_content p,
.glossary_highlight_content li,
.glossary_highlight_content strong {
	color: var(--black) !important;
	font-size: 17px;
	line-height: 1.55;
}
.glossary_highlight_content p { margin: 10px 0; }

/* ---------- RELATED BLOCKS ---------- */
.glossary_related_block {
	margin-top: 50px;
	padding-top: 40px;
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}
.glossary_related_block:first-of-type { border-top: 0; padding-top: 10px; }
.glossary_related_title {
	color: var(--black);
	font-size: 28px;
	line-height: 1.15;
	text-transform: none;
	margin-bottom: 24px;
	letter-spacing: -.01em;
}

.glossary_related_services_grid,
.glossary_related_posts_grid,
.glossary_related_terms_grid {
	display: grid;
	gap: 16px;
}
.glossary_related_services_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.glossary_related_posts_grid    { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.glossary_related_terms_grid    { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.glossary_service_card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 22px;
	border-radius: 20px;
	background: #f6f5f8;
	border: 1px solid transparent;
	transition: background .3s ease, border-color .3s ease, transform .3s ease;
	text-decoration: none;
}
.glossary_service_card:hover {
	background: #fff;
	border-color: var(--pink);
	transform: translateY(-2px);
}
.glossary_service_card_title {
	color: var(--black);
	font-size: 20px;
	line-height: 1.2;
	margin: 0;
	text-transform: none;
}
.glossary_service_card_desc {
	color: var(--gray);
	font-size: 15px;
	line-height: 1.45;
	margin: 0;
}
.glossary_service_card_cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--black);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	margin-top: 6px;
	transition: color .25s ease;
}
.glossary_service_card:hover .glossary_service_card_cta { color: var(--pink); }
.glossary_service_card_cta svg { transform: rotate(-40deg); transition: transform .25s ease; }
.glossary_service_card:hover .glossary_service_card_cta svg { transform: rotate(0); }

/* Related blog cards — tweak the global .ourblog_blck for smaller context. */
.glossary_related_posts_grid .ourblog_blck {
	width: 100%;
	padding: 20px;
	border-radius: 24px;
	gap: 16px;
}
.glossary_related_posts_grid .ourblog_img { height: 180px; }
.glossary_related_posts_grid .titleof_itemblog { font-size: 18px; }
.glossary_related_posts_grid .about_blogitem { font-size: 14px; }

/* Related glossary terms — dark-card variant that reads well on the white content panel. */
.glossary_related_terms_grid .glossary_card--compact {
	min-height: 180px;
	padding: 22px;
	background: #0d0d0d;
	border-color: rgba(255, 255, 255, 0.08);
	color: var(--white);
}
.glossary_related_terms_grid .glossary_card--compact .glossary_card_title {
	font-size: 22px;
}
.glossary_related_terms_grid .glossary_card--compact .glossary_card_excerpt {
	color: rgba(255, 255, 255, 0.65);
	font-size: 14px;
}

/* ---------- CTA BLOCK ---------- */
.glossary_cta_block {
	margin-top: 60px;
	background: linear-gradient(135deg, var(--black) 0%, #1c1c1c 100%);
	color: var(--white);
	border-radius: 32px;
	padding: 44px;
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255, 41, 208, 0.25);
}
.glossary_cta_block::before {
	content: "";
	position: absolute;
	width: 320px;
	height: 320px;
	right: -80px;
	top: -80px;
	background: radial-gradient(circle, rgba(255, 41, 208, 0.35), transparent 60%);
	filter: blur(20px);
	pointer-events: none;
}
.glossary_cta_inner { position: relative; z-index: 1; }
.glossary_cta_block h2 {
	color: var(--white);
	font-size: 32px;
	line-height: 1.2;
	margin-bottom: 12px;
	text-transform: none;
}
.glossary_cta_block p {
	color: rgba(255, 255, 255, 0.75);
	font-size: 17px;
	line-height: 1.55;
	margin-bottom: 26px;
	max-width: 720px;
}
.glossary_cta_buttons {
	gap: 20px;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.glossary_cta_back {
	color: var(--white);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	border-bottom: 1px solid rgba(255, 255, 255, 0.35);
	padding-bottom: 4px;
	transition: color .25s ease, border-color .25s ease;
}
.glossary_cta_back:hover { color: var(--pink); border-color: var(--pink); }

/* ---------- SIDEBAR ---------- */
.glossary_single_sidebar {
	flex: 0 0 320px;
	width: 320px;
	position: sticky;
	top: 120px;
	align-self: flex-start;
}
.glossary_sidebar_card {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 30px;
	padding: 30px;
	color: var(--white);
}
.glossary_sidebar_label {
	color: var(--gray);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .1em;
	margin-bottom: 10px;
}
.glossary_sidebar_term {
	color: var(--white);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.15;
	margin-bottom: 14px;
	letter-spacing: -.01em;
}
.glossary_sidebar_desc {
	color: rgba(255, 255, 255, 0.72);
	font-size: 15px;
	line-height: 1.5;
	margin-bottom: 22px;
}
.glossary_sidebar_back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--white);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 999px;
	padding: 12px 20px;
	transition: border-color .25s ease, color .25s ease, background .25s ease;
}
.glossary_sidebar_back:hover {
	border-color: var(--pink);
	color: var(--pink);
}

/* =======================================================================
   RESPONSIVE
   ==================================================================== */
@media (max-width: 1280px) {
	.glossary_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.glossary_single_title { font-size: 60px; }
	.glossary_single_body_wrapper { gap: 30px; }
	.glossary_single_sidebar { flex-basis: 280px; width: 280px; }
}

@media (max-width: 992px) {
	.glossary_hero { padding: 140px 30px 80px; }
	.glossary_single_hero { padding: 130px 30px 30px; }
	.glossary_single_title { font-size: 48px; }
	.glossary_single_lead { font-size: 18px; }
	.glossary_single_content { padding: 40px 30px; border-radius: 32px; }

	.glossary_single_body_wrapper {
		flex-direction: column;
	}
	.glossary_single_sidebar {
		width: 100%;
		flex-basis: auto;
		position: static;
		order: -1;
		display: none; /* sidebar collapses on tablet */
	}

	.glossary_outro_card { padding: 40px; border-radius: 32px; }
	.glossary_outro_text h2 { font-size: 32px; }
	.glossary_cta_block { padding: 32px; }
	.glossary_cta_block h2 { font-size: 26px; }
}

@media (max-width: 768px) {
	.glossary_grid { grid-template-columns: 1fr; gap: 16px; }
	.glossary_card { padding: 24px; min-height: 200px; border-radius: 24px; }
	.glossary_card_title { font-size: 22px; }

	.glossary_related_services_grid,
	.glossary_related_posts_grid,
	.glossary_related_terms_grid {
		grid-template-columns: 1fr;
	}

	.glossary_single_title { font-size: 36px; }
	.glossary_single_lead  { font-size: 16px; }
	.glossary_single_content { padding: 30px 22px; border-radius: 26px; }
	.glossary_single_content .article_content h2 { font-size: 22px; }
	.glossary_highlight { padding: 22px; border-radius: 20px; }

	.glossary_letter { min-width: 36px; height: 36px; font-size: 14px; padding: 0 10px; }
	.glossary_search_input { font-size: 16px; padding: 12px 0; }

	.glossary_outro_text h2 { font-size: 26px; }
	.glossary_outro_text p  { font-size: 16px; }
	.glossary_outro_card { padding: 28px; gap: 20px; }

	.glossary_cta_block { padding: 26px; border-radius: 24px; }
	.glossary_cta_block h2 { font-size: 22px; }
	.glossary_cta_block p  { font-size: 15px; }
}

/* Armenian font fallback (matches theme-wide rule in style.css). */
html[lang="hy-AM"] .glossary_single_title,
html[lang="hy-AM"] .glossary_card_title,
html[lang="hy-AM"] .glossary_related_title,
html[lang="hy-AM"] .glossary_highlight_label,
html[lang="hy-AM"] .glossary_sidebar_term {
	font-family: Webstart-Bold, sans-serif;
}

/* Accessibility helper (used on hidden <label> for the search input). */
.glossary_single_hero .screen-reader-text,
.glossary_hero .screen-reader-text {
	position: absolute !important;
	clip: rect(1px, 1px, 1px, 1px);
	width: 1px; height: 1px;
	overflow: hidden;
}

/* =========================================================================
 *  GLOSSARY TERM — category chip (hero kicker becomes a clickable link)
 * ====================================================================== */
.glossary_single_kicker_link {
	color: var(--pink);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: border-color .2s ease, color .2s ease;
}
.glossary_single_kicker_link:hover {
	color: var(--pink);
	border-bottom-color: var(--pink);
}

/* =========================================================================
 *  GLOSSARY TERM — FAQ accordion
 *  Reuses global `.accord_blck / .nameof_acc / .hidden_acc_blck` JS handler
 *  declared in js/script.js. We just layer styling that fits glossary block.
 * ====================================================================== */
.glossary_faq_block {
	margin-top: 48px;
}
.glossary_faq_list {
	display: flex;
	flex-direction: column;
	gap: 14px;
	margin-top: 18px;
}
.glossary_faq_item.accord_blck {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 18px;
	padding: 22px 26px;
	transition: border-color .25s ease, background .25s ease;
}
.glossary_faq_item.accord_blck:hover {
	border-color: rgba(231, 0, 116, 0.45);
}
.glossary_faq_item .acc_title_blck {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
}
.glossary_faq_item .nameof_acc {
	flex: 1;
	font-size: 18px;
	line-height: 1.4;
	color: var(--white);
	font-weight: 500;
	position: relative;
	padding-right: 36px;
}
.glossary_faq_item .nameof_acc::after {
	content: "";
	position: absolute;
	right: 4px;
	top: 50%;
	width: 14px;
	height: 14px;
	transform: translateY(-50%) rotate(0deg);
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e70074' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>");
	background-repeat: no-repeat;
	background-size: contain;
	transition: transform .25s ease;
}
.glossary_faq_item .nameof_acc.ineed_this_close::after {
	transform: translateY(-50%) rotate(180deg);
}
.glossary_faq_item .hidden_acc_blck {
	display: none;
	padding-top: 18px;
	margin-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.glossary_faq_item .hidden_acc_blck_active {
	display: block;
}
.glossary_faq_answer p {
	color: rgba(255, 255, 255, 0.8);
	font-size: 16px;
	line-height: 1.65;
	margin: 0 0 12px;
}
.glossary_faq_answer p:last-child { margin-bottom: 0; }

/* =========================================================================
 *  GLOSSARY CATEGORY LANDING
 * ====================================================================== */
.glossary_category_hero .glossary_archive_title {
	max-width: 980px;
}
.glossary_archive_subtitle {
	color: rgba(255, 255, 255, 0.55);
	font-size: 16px;
	margin-top: 14px;
	letter-spacing: .02em;
}

.glossary_category_intro_section {
	padding: 48px 0 12px;
}
.glossary_category_intro {
	max-width: 920px;
	margin: 0 auto;
}
/* Force readable text colour on dark hero background.
   Global blogitem/style rules force `.article_content strong`, `ul li`, etc.
   to black with !important — override them all inside the category intro. */
.glossary_category_intro,
.glossary_category_intro .article_content,
.glossary_category_intro .article_content p,
.glossary_category_intro .article_content li,
.glossary_category_intro .article_content span,
.glossary_category_intro .article_content em,
.glossary_category_intro .article_content strong,
.glossary_category_intro .article_content h2,
.glossary_category_intro .article_content h3,
.glossary_category_intro .article_content h4,
.glossary_category_intro .article_content h5,
.glossary_category_intro .article_content h6 {
	color: rgba(255, 255, 255, 0.92) !important;
}
.glossary_category_intro .article_content a {
	color: var(--pink) !important;
}
.glossary_category_intro .article_content p {
	font-size: 17px;
	line-height: 1.7;
	margin-bottom: 18px;
}
.glossary_category_intro .article_content p:last-child { margin-bottom: 0; }
.glossary_category_intro .article_content ul,
.glossary_category_intro .article_content ol {
	margin: 14px 0 18px 22px;
	padding: 0;
}
.glossary_category_intro .article_content li {
	font-size: 17px;
	line-height: 1.7;
	margin: 6px 0;
	font-weight: 400;
}
.glossary_category_intro .article_content strong {
	font-weight: 700;
}

.glossary_category_grid_section {
	padding-top: 48px;
}
.glossary_category_h2 {
	font-size: 32px;
	line-height: 1.2;
	margin: 0 0 28px;
	color: var(--white);
}
.glossary_category_grid {
	/* inherits `.glossary_grid` — no override needed */
}

/* Internal crosslink list block (SEO-oriented, below the card grid). */
.glossary_category_crosslinks {
	margin-top: 52px;
	padding: 32px 34px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 24px;
}
.glossary_category_crosslinks_title {
	font-size: 20px;
	color: var(--white);
	margin: 0 0 18px;
}
.glossary_category_crosslinks_list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px 28px;
}
.glossary_category_crosslinks_list li {
	font-size: 15px;
	line-height: 1.5;
}
.glossary_category_crosslinks_list a {
	color: rgba(255, 255, 255, 0.78);
	text-decoration: none;
	border-bottom: 1px solid transparent;
	transition: color .2s ease, border-color .2s ease;
}
.glossary_category_crosslinks_list a:hover {
	color: var(--pink);
	border-bottom-color: var(--pink);
}

.glossary_category_services_section {
	padding: 72px 0 0;
}
.glossary_category_services_title {
	margin-bottom: 28px;
}

.glossary_category_cta_section {
	padding: 72px 0 96px;
}
.glossary_category_cta_block {
	margin-top: 0;
}

@media (max-width: 960px) {
	.glossary_category_crosslinks_list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
	.glossary_category_h2 {
		font-size: 26px;
	}
}
@media (max-width: 640px) {
	.glossary_category_crosslinks {
		padding: 22px 20px;
	}
	.glossary_category_crosslinks_list {
		grid-template-columns: 1fr;
	}
	.glossary_category_intro .article_content p { font-size: 16px; }
	.glossary_faq_item.accord_blck { padding: 18px 20px; }
	.glossary_faq_item .nameof_acc { font-size: 16px; }
}

/* =========================================================================
 *  TYPOGRAPHY — SINGLE GLOSSARY TERM PAGE ONLY
 *
 *  Scoped to `body.single-glossary` so no other template (archive, category,
 *  blog, services) is affected. Fixes p / span sizes to a consistent
 *  desktop + tablet + mobile scale.
 * ====================================================================== */

/* --- Hero kicker span (the pill above H1) --- */
body.single-glossary .glossary_single_kicker {
	font-size: 13px;
	line-height: 1.2;
	letter-spacing: .08em;
	padding: 7px 14px;
}
body.single-glossary .glossary_single_kicker,
body.single-glossary .glossary_single_kicker_link {
	font-family: Montserrat-Medium, sans-serif;
	font-weight: 500;
}

/* --- Short description (lead) directly under H1 --- */
body.single-glossary .glossary_single_lead {
	font-size: 20px;
	line-height: 1.55;
}
body.single-glossary .glossary_single_lead p {
	font-size: inherit;
	line-height: inherit;
	margin: 0 0 10px;
}

/* --- Main article content (the WP editor block) --- */
body.single-glossary .glossary_single_content .article_content p,
body.single-glossary .glossary_single_content .article_content li {
	font-size: 17px;
	line-height: 1.7;
	margin: 12px 0;
}
/* Inline <span> inside paragraphs is frequent (Gutenberg emits
   <span style="font-weight: 400"> inside <p>). Force it to inherit
   size and line-height so copy stays consistent with the paragraph. */
body.single-glossary .glossary_single_content .article_content p span,
body.single-glossary .glossary_single_content .article_content li span {
	font-size: inherit !important;
	line-height: inherit !important;
}

/* Headings inside the article on single term */
body.single-glossary .glossary_single_content .article_content h2 { font-size: 26px; }
body.single-glossary .glossary_single_content .article_content h3 { font-size: 20px; }

/* --- Highlighted blocks (simple explanation / business value) --- */
body.single-glossary .glossary_highlight_label {
	font-size: 13px;
	letter-spacing: .08em;
}
body.single-glossary .glossary_highlight_content p,
body.single-glossary .glossary_highlight_content li {
	font-size: 17px;
	line-height: 1.65;
}

/* --- Sidebar card --- */
body.single-glossary .glossary_sidebar_label {
	font-size: 12px;
	letter-spacing: .1em;
}
body.single-glossary .glossary_sidebar_term {
	font-size: 26px;
	line-height: 1.15;
}
body.single-glossary .glossary_sidebar_desc {
	font-size: 15px;
	line-height: 1.55;
}
body.single-glossary .glossary_sidebar_back {
	font-size: 14px;
}

/* --- FAQ accordion --- */
body.single-glossary .glossary_faq_item .nameof_acc {
	font-size: 17px;
	line-height: 1.4;
}
body.single-glossary .glossary_faq_answer p,
body.single-glossary .glossary_faq_answer li {
	font-size: 16px;
	line-height: 1.65;
	margin: 0 0 10px;
}

/* --- CTA block at the bottom --- */
body.single-glossary .glossary_cta_block h2 { font-size: 28px; line-height: 1.25; }
body.single-glossary .glossary_cta_block p {
	font-size: 16px;
	line-height: 1.6;
}
body.single-glossary .glossary_cta_back { font-size: 14px; }

/* --- Related blocks titles / small helpers --- */
body.single-glossary .glossary_related_title { font-size: 24px; line-height: 1.25; }
body.single-glossary .glossary_service_card_desc,
body.single-glossary .glossary_card_excerpt,
body.single-glossary .about_blogitem { font-size: 15px; line-height: 1.55; }
body.single-glossary .glossary_service_card_title,
body.single-glossary .glossary_card_title { font-size: 18px; line-height: 1.3; }
body.single-glossary .glossary_service_card_cta { font-size: 14px; }

/* --- Breadcrumb typography --- */
body.single-glossary .glossary_breadcrumbs { font-size: 13px; }
body.single-glossary .glossary_breadcrumbs li,
body.single-glossary .glossary_breadcrumbs a { font-size: inherit; }

/* ---------- TABLET ---------- */
@media (max-width: 992px) {
	body.single-glossary .glossary_single_kicker { font-size: 12px; padding: 6px 12px; }
	body.single-glossary .glossary_single_lead { font-size: 18px; line-height: 1.55; }
	body.single-glossary .glossary_single_content .article_content p,
	body.single-glossary .glossary_single_content .article_content li { font-size: 16px; line-height: 1.7; }
	body.single-glossary .glossary_single_content .article_content h2 { font-size: 23px; }
	body.single-glossary .glossary_single_content .article_content h3 { font-size: 19px; }
	body.single-glossary .glossary_highlight_content p,
	body.single-glossary .glossary_highlight_content li { font-size: 16px; }
	body.single-glossary .glossary_sidebar_term { font-size: 24px; }
	body.single-glossary .glossary_sidebar_desc { font-size: 14px; }
	body.single-glossary .glossary_faq_item .nameof_acc { font-size: 16px; }
	body.single-glossary .glossary_faq_answer p { font-size: 15px; }
	body.single-glossary .glossary_cta_block h2 { font-size: 24px; }
	body.single-glossary .glossary_cta_block p { font-size: 15px; }
	body.single-glossary .glossary_related_title { font-size: 22px; }
}

/* ---------- MOBILE ---------- */
@media (max-width: 640px) {
	body.single-glossary .glossary_single_kicker { font-size: 11px; padding: 5px 11px; letter-spacing: .06em; }
	body.single-glossary .glossary_single_lead { font-size: 16px; line-height: 1.55; }
	body.single-glossary .glossary_single_lead p { margin: 0 0 8px; }
	body.single-glossary .glossary_single_content .article_content p,
	body.single-glossary .glossary_single_content .article_content li { font-size: 15px; line-height: 1.7; margin: 10px 0; }
	body.single-glossary .glossary_single_content .article_content h2 { font-size: 20px; line-height: 1.25; margin-top: 22px; }
	body.single-glossary .glossary_single_content .article_content h3 { font-size: 17px; line-height: 1.3; }
	body.single-glossary .glossary_highlight_label { font-size: 12px; }
	body.single-glossary .glossary_highlight_content p,
	body.single-glossary .glossary_highlight_content li { font-size: 15px; line-height: 1.6; }
	body.single-glossary .glossary_sidebar_label { font-size: 11px; }
	body.single-glossary .glossary_sidebar_term { font-size: 22px; }
	body.single-glossary .glossary_sidebar_desc { font-size: 14px; line-height: 1.55; }
	body.single-glossary .glossary_sidebar_back { font-size: 13px; }
	body.single-glossary .glossary_faq_item .nameof_acc { font-size: 15px; line-height: 1.4; padding-right: 30px; }
	body.single-glossary .glossary_faq_answer p,
	body.single-glossary .glossary_faq_answer li { font-size: 14px; line-height: 1.65; }
	body.single-glossary .glossary_cta_block h2 { font-size: 20px; line-height: 1.25; }
	body.single-glossary .glossary_cta_block p { font-size: 14px; line-height: 1.55; }
	body.single-glossary .glossary_cta_back { font-size: 13px; }
	body.single-glossary .glossary_related_title { font-size: 20px; line-height: 1.25; }
	body.single-glossary .glossary_service_card_title,
	body.single-glossary .glossary_card_title { font-size: 17px; }
	body.single-glossary .glossary_service_card_desc,
	body.single-glossary .glossary_card_excerpt { font-size: 14px; }
	body.single-glossary .glossary_breadcrumbs { font-size: 12px; }
}
