/* Inspa — inline SVG icon utilities (stroke icons, currentColor) */

.inspa-ico-svg {
	display: block;
	flex-shrink: 0;
	width: 1.2em;
	height: 1.2em;
}

.inspa-ico-svg--sm {
	width: 1.05em;
	height: 1.05em;
}

.inspa-ico-svg--md {
	width: 1.4em;
	height: 1.4em;
}

.inspa-ico-svg--lg {
	width: 1.75em;
	height: 1.75em;
}

.inspa-title-ico {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
}

.inspa-hero__meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.inspa-nav__list a,
.inspa-footer__list a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.inspa-pills li {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
}

.inspa-pills .inspa-ico-svg {
	color: var(--inspa-accent-soft);
}

.inspa-policy__item,
.inspa-policy__list--ico > li {
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	list-style: none;
	margin-left: 0;
}

.inspa-policy__list--ico {
	padding-left: 0;
}

.inspa-policy__list--ico > li::before {
	content: none;
}

.inspa-policy__item .inspa-ico-svg,
.inspa-policy__list--ico .inspa-ico-svg {
	color: var(--inspa-accent);
	margin-top: 0.2rem;
}

.inspa-footer__line {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
}

.inspa-footer__line .inspa-ico-svg {
	color: var(--inspa-accent-soft);
	margin-top: 0.12rem;
}

.inspa-footer__hours li {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.inspa-footer__explore a {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}

.inspa-footer__explore a .inspa-ico-svg {
	color: var(--inspa-muted);
}

.inspa-social a.inspa-social__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 999px;
	font-size: 0;
	letter-spacing: 0;
}

/* Link uses font-size:0 for textless buttons — icons must not rely on 1.2em (would be 0). */
.inspa-social a.inspa-social__link .inspa-ico-svg {
	margin: 0;
	width: 1.25rem;
	height: 1.25rem;
	color: var(--inspa-ink-soft);
}

.inspa-social a.inspa-social__link:hover .inspa-ico-svg,
.inspa-social a.inspa-social__link:focus-visible .inspa-ico-svg {
	color: var(--inspa-accent);
}

.inspa-benefit__marker {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
}

.inspa-benefit__icon {
	color: rgba(244, 241, 234, 0.55);
}

.inspa-faq__summary-inner {
	display: flex;
	align-items: center;
	gap: 0.55rem;
}

.inspa-faq__summary-inner .inspa-ico-svg {
	color: var(--inspa-accent-soft);
}

.inspa-details summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.5rem;
}

.inspa-details summary::after {
	float: none;
	flex-shrink: 0;
	margin-left: auto;
}

.inspa-booking__bullets li {
	list-style: none;
	display: flex;
	align-items: flex-start;
	gap: 0.55rem;
	margin-left: 0;
}

.inspa-booking__bullets {
	padding-left: 0;
}

.inspa-booking__bullets .inspa-ico-svg {
	color: var(--inspa-accent-soft);
	margin-top: 0.12rem;
}

.inspa-btn .inspa-ico-svg {
	opacity: 0.92;
}

.inspa-service-block__highlights .inspa-svc-ico {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
}

.inspa-svc-ico .inspa-ico-svg {
	color: var(--inspa-muted);
	flex-shrink: 0;
	margin-top: 0.1rem;
}

.inspa-thankyou__kicker-ico {
	display: flex;
	justify-content: center;
	margin-bottom: var(--inspa-space-md);
	color: var(--inspa-accent);
}

.inspa-cta-ico {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
}

.inspa-cta-ico .inspa-ico-svg {
	color: var(--inspa-muted);
}

.inspa-h3.inspa-title-ico {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.inspa-booking__fine-lead {
	display: inline-flex;
	vertical-align: -0.15em;
	margin-right: 0.3rem;
	color: var(--inspa-muted);
}

.inspa-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.inspa-quote__deco {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 0.35rem;
	color: var(--inspa-accent-soft);
	opacity: 0.55;
}
