/**
 * Final completion sprint — light design polish.
 * Palette: #262261 / #EE4036 / #23A455 / #4B4F58 / #E1E8ED / #FFFFFF
 */
:root {
	--ssa-primary: #262261;
	--ssa-accent: #EE4036;
	--ssa-whatsapp: #23A455;
	--ssa-text: #4B4F58;
	--ssa-border: #E1E8ED;
	--ssa-bg: #FFFFFF;
}

body {
	color: var(--ssa-text);
	background: var(--ssa-bg);
}

.ssa-service-highlights {
	width: var(--ssa-content-width, min(calc(100% - 2rem), 1120px));
	margin: var(--ssa-section-gap, 1.35rem) auto 0;
	padding: 1.35rem 1.4rem 1.5rem;
	border: 1px solid var(--ssa-border);
	border-radius: 14px;
	background: #fff;
	box-sizing: border-box;
	box-shadow: 0 6px 18px rgba(38, 34, 97, 0.05);
}

.ssa-service-highlights__title {
	margin: 0 0 0.35rem;
	color: var(--ssa-primary);
	font-size: 1.2rem;
	font-weight: 700;
}

.ssa-service-highlights__note {
	margin: 0 0 1rem;
	font-size: 0.88rem;
	color: #6b7280;
	line-height: 1.55;
}

.ssa-service-highlights__list {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.85rem;
}

.ssa-service-highlights__item {
	background: #f7f9fc;
	border: 1px solid #e4e8ef;
	border-radius: 12px;
	padding: 0.95rem 1.05rem;
	min-width: 0;
}

.ssa-service-highlights__item p {
	margin: 0;
	line-height: 1.7;
	color: var(--ssa-text);
	font-size: 0.96rem;
}

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

.ssa-specialty-page .ssa-eyebrow {
	margin: 0 0 0.5rem;
	color: #6b7280;
	font-size: 0.9rem;
}

.ssa-cta-btn,
.elementor-location-footer .ssa-cta-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0.55rem 1.1rem;
	background: var(--ssa-primary);
	color: #fff !important;
	border-radius: 8px;
	text-decoration: none !important;
}

.ssa-cta-btn:hover,
.ssa-cta-btn:focus {
	background: var(--ssa-accent);
	color: #fff !important;
}

/* Prevent common overflow on articles/services */
.elementor img,
.entry-content img,
.ssa-specialty-page img {
	max-width: 100%;
	height: auto;
}

.elementor-widget-heading .elementor-heading-title {
	overflow-wrap: anywhere;
}

@media (max-width: 767px) {
	.primary-nav.is-open {
		border-bottom: 1px solid var(--ssa-border);
	}
}
