

.question-section {
	padding-block:clamp(2.5rem, 1.8rem + 2.8vw, 5.25rem);
	border-bottom:1px solid var(--border);
	position:relative;
}

.question-section:last-of-type { border-bottom:none; }

.question-section--lead { padding-top:clamp(1.5rem, 1rem + 1.8vw, 3rem); }

.question-heading {
	font-family:var(--reti-1d2);
	font-size:var(--text-2xl);
	font-weight:700;
	line-height:var(--leading-tight);
	color:var(--type-bright);
	margin-bottom:var(--space-md);
	text-wrap:balance;
	max-width:28ch;
	position:relative;
}

.question-heading--hero {
	font-size:var(--text-hero);
	font-weight:800;
	max-width:22ch;
	letter-spacing:var(--tracking-tight);
}

.answer-lead {
	font-size:var(--text-md);
	line-height:var(--leading-normal);
	color:var(--type-bright);
	margin-bottom:var(--space-md);
	max-width:var(--measure-prose);
	font-weight:500;
}

.answer-body {
	font-family:var(--reti-ce9);
	font-size:var(--text-base);
	line-height:var(--leading-body);
	color:var(--type-muted);
	max-width:var(--measure-prose);
}

.answer-body + .answer-body { margin-top:1.15em; }

.answer-list {
	list-style:none;
	margin-block:var(--space-md);
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.65rem;
	max-width:var(--measure-prose);
}

.answer-list__item {
	position:relative;
	padding-left:1.6rem;
	font-family:var(--reti-ce9);
	font-size:var(--text-sm);
	color:var(--type-muted);
	line-height:var(--leading-body);
}

.answer-list__item::before {
	content:">";
	position:absolute;
	left:0;
	top:0;
	color:var(--accent);
	font-weight:700;
	font-family:var(--reti-9cd);
}

/* Full-measure photographic placement between prose answers */
.full-measure-photo {
	margin-block:clamp(2rem, 1.4rem + 2vw, 3.75rem);
	width:100%;
	position:relative;
	border:1px solid var(--border);
	background-color:var(--panel);
}

.full-measure-photo img {
	width:100%;
	height:auto;
	max-height:560px;
	object-fit:cover;
	display:block;
}

.full-measure-photo__caption {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-sm);
	flex-wrap:wrap;
	padding:0.75rem 1rem;
	background-color:var(--ground-deep);
	border-top:1px solid var(--border);
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
}

.full-measure-photo__caption strong {
	color:var(--accent);
	font-weight:600;
	letter-spacing:var(--tracking-wide);
}


.front-page-hero {
	border-bottom:1px solid var(--border);
	background-color:var(--ground-deep);
}

.modular-magazine-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:1px;
	background-color:var(--border);
	border-bottom:1px solid var(--border);
}

@media (min-width: 1024px) {
	.modular-magazine-grid { grid-template-columns:minmax(0, 7.5fr) minmax(0, 4.5fr); }
}

.lead-story-tile {
	background-color:var(--ground);
	padding:clamp(1.5rem, 1rem + 2vw, 3.25rem);
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	position:relative;
}

.lead-story-tile::before {
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:2px;
	background:linear-gradient(90deg, var(--accent) 0%, transparent 60%);
}

.lead-story-meta-row {
	display:flex;
	align-items:center;

	gap:var(--space-sm);
	flex-wrap:wrap;
	margin-bottom:var(--space-md);
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
	text-transform:uppercase;
	letter-spacing:var(--tracking-widest);
}

.lead-story-meta-row .bullet { color:var(--accent); }

.kinetic-headline {
	margin-bottom:var(--space-md);
	color:var(--type-bright);
}

.rate-benchmark-strip {
	display:grid;
	grid-template-columns:repeat(auto-fit, minmax(140px, 1fr));
	gap:1px;
	background-color:var(--border);
	border:1px solid var(--border);
	margin-top:var(--space-lg);

	margin-bottom:var(--space-lg);
}

.rate-benchmark-cell {
	background-color:var(--panel);
	padding:0.9rem;
	display:flex;
	flex-direction:column;
	gap:0.25rem;
}

.rate-benchmark-cell__label {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
}

.rate-benchmark-cell__rate {
	font-family:var(--reti-9cd);
	font-size:var(--text-md);
	font-weight:700;
	color:var(--accent);
}

.rate-benchmark-cell__basis {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-muted);
}

.secondary-story-tile {
	background-color:var(--panel);
	padding:clamp(1.25rem, 0.9rem + 1.2vw, 2.25rem);
	border-top:1px solid var(--border);
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}

@media (min-width: 1024px) {
	.secondary-story-tile {
		border-top:none;
		border-left:1px solid var(--border);
	}
}

.rail-module-stack {
	display:flex;
	flex-direction:column;
	gap:1px;
	background-color:var(--border);
}

.rail-module {
	background-color:var(--panel);
	padding:1.25rem;
	display:flex;
	flex-direction:column;
	gap:0.65rem;
}

.rail-module__code {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--accent);
	letter-spacing:var(--tracking-widest);
	text-transform:uppercase;
}

.rail-module__heading {
	font-family:var(--reti-1d2);
	font-size:var(--text-md);
	font-weight:700;

	color:var(--type-bright);
	line-height:var(--leading-snug);
}

.rail-module__text {
	font-family:var(--reti-ce9);
	font-size:var(--text-xs);
	line-height:var(--leading-normal);
	color:var(--type-muted);
}

.rail-dispatch-card {
	background-color:var(--ground-deep);
	border:1px solid var(--border-active);
	padding:1.25rem;
	position:relative;
}

.rail-dispatch-card::before {
	content:"LIVE DISPATCH";
	position:absolute;
	top:-8px;
	right:12px;
	background-color:var(--accent);
	color:#120917;
	font-family:var(--reti-9cd);
	font-size:0.6rem;
	font-weight:700;
	letter-spacing:var(--tracking-widest);
	padding:0.1rem 0.45rem;
}

.rail-dispatch-phone {
	font-family:var(--reti-9cd);
	font-size:var(--text-lg);
	font-weight:700;
	color:var(--accent);
	text-decoration:none;
	display:inline-block;
	margin-top:0.35rem;
	margin-bottom:0.25rem;
}

.rail-dispatch-phone:hover {
	color:#d2ff4a;
	text-decoration:underline;
}


.services-catalog-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-lg);
	margin-top:var(--space-xl);
}

@media (min-width: 860px) {
	.services-catalog-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

.service-spec-card {
	background-color:var(--panel);
	border:1px solid var(--border);
	padding:clamp(1.25rem, 1rem + 1vw, 2rem);
	display:flex;
	flex-direction:column;
	position:relative;
	transition:border-color var(--duration-fast) var(--ease-out),
							background-color var(--duration-fast) var(--ease-out);
}

.service-spec-card:hover {
	border-color:var(--border-active);
	background-color:var(--panel-elevated);
}

.service-spec-card__header {
	border-bottom:1px solid var(--border);
	padding-bottom:0.85rem;
	margin-bottom:1rem;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:var(--space-sm);
}

.service-spec-card__title {
	font-family:var(--reti-1d2);
	font-size:var(--text-lg);
	font-weight:700;
	color:var(--type-bright);
	line-height:var(--leading-tight);
}

.service-spec-card__rate {
	font-family:var(--reti-9cd);
	font-size:var(--text-sm);
	font-weight:700;
	color:var(--accent);
	background-color:rgba(196, 250, 40, 0.08);
	border:1px solid rgba(196, 250, 40, 0.3);
	padding:0.35rem 0.65rem;
	white-space:nowrap;
	letter-spacing:var(--tracking-wide);
}

.service-spec-card__body {
	font-family:var(--reti-ce9);
	font-size:var(--text-sm);
	color:var(--type-muted);
	line-height:var(--leading-body);
	margin-bottom:var(--space-md);
	flex-grow:1;
}

.service-spec-card__checklist {
	list-style:none;
	padding:0;
	margin-bottom:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:0.45rem;
}

.service-spec-card__checklist-item {
	display:flex;
	align-items:flex-start;
	gap:0.5rem;
	font-family:var(--reti-9cd);
	font-size:var(--text-xs);
	color:var(--type-muted);
}

.service-spec-card__checklist-item .icon {
	color:var(--accent);
	margin-top:0.2rem;
}

.service-spec-card__footer {
	border-top:1px solid var(--border);
	padding-top:0.85rem;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-sm);
	flex-wrap:wrap;
}

.service-basis-badge {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
	text-transform:uppercase;
}

.criteria-matrix {
	display:grid;
	grid-template-columns:1fr;
	gap:1px;
	background-color:var(--border);
	border:1px solid var(--border);
	margin-block:var(--space-lg);
}

@media (min-width: 640px) {
	.criteria-matrix { grid-template-columns:repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
	.criteria-matrix { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}

.criteria-cell {
	background-color:var(--panel);
	padding:var(--space-md);
	display:flex;
	flex-direction:column;
	gap:0.5rem;
	position:relative;
}

.criteria-cell__num {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--accent);
	font-weight:700;
	letter-spacing:var(--tracking-widest);
}

.criteria-cell__title {
	font-family:var(--reti-1d2);
	font-size:var(--text-base);
	font-weight:700;
	color:var(--type-bright);
}

.criteria-cell__desc {
	font-family:var(--reti-ce9);
	font-size:var(--text-xs);
	color:var(--type-muted);
	line-height:var(--leading-normal);
}


.about-credentials-strip {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-md);
	margin-top:var(--space-lg);
	margin-bottom:var(--space-xl);
}

@media (min-width: 720px) {
	.about-credentials-strip { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}

.credential-box {
	background-color:var(--panel);
	border:1px solid var(--border);
	padding:1.25rem;
	position:relative;
}

.credential-box__label {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
}

.credential-box__value {
	font-family:var(--reti-1d2);
	font-size:var(--text-lg);
	font-weight:700;
	color:var(--accent);
	margin-top:0.25rem;
	margin-bottom:0.35rem;
}

.credential-box__note {
	font-family:var(--reti-9cd);
	font-size:var(--text-xs);
	color:var(--type-muted);
	line-height:var(--leading-normal);
}

.protocol-step-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-md);
	margin-block:var(--space-lg);
}

@media (min-width: 860px) {
	.protocol-step-grid { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}

.protocol-step {
	background-color:var(--ground-deep);
	border:1px solid var(--border);
	padding:1.5rem;
	position:relative;
}

.protocol-step__tag {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--accent);
	letter-spacing:var(--tracking-widest);
	display:block;
	margin-bottom:0.5rem;
}

.protocol-step__title {
	font-family:var(--reti-1d2);
	font-size:var(--text-md);
	color:var(--type-bright);
	font-weight:700;
	margin-bottom:0.5rem;
}

.protocol-step__prose {
	font-family:var(--reti-ce9);
	font-size:var(--text-xs);
	color:var(--type-muted);
	line-height:var(--leading-body);
}


.contact-layout-grid {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-xl);
	margin-top:var(--space-lg);
}

@media (min-width: 960px) {
	.contact-layout-grid { grid-template-columns:1fr 1.15fr; }
}

.dispatch-docket {
	background-color:var(--panel);
	border:1px solid var(--border);
	padding:clamp(1.25rem, 1rem + 1.2vw, 2.25rem);
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}

.dispatch-docket__item {
	border-bottom:1px solid var(--border);
	padding-bottom:1rem;
}

.dispatch-docket__item:last-child {
	border-bottom:none;
	padding-bottom:0;
}

.dispatch-docket__label {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--type-dim);
	text-transform:uppercase;
	letter-spacing:var(--tracking-widest);
	display:block;
	margin-bottom:0.35rem;
}

.dispatch-docket__val {
	font-family:var(--reti-9cd);
	font-size:var(--text-sm);
	color:var(--type-bright);
	line-height:var(--leading-normal);
}

.dispatch-docket__val strong { color:var(--accent); }

.photo-eval-steps {
	display:grid;
	grid-template-columns:1fr;
	gap:0.75rem;
	margin-block:var(--space-md);
}

@media (min-width: 580px) {
	.photo-eval-steps { grid-template-columns:repeat(3, minmax(0, 1fr)); }
}

.photo-step-cell {
	background-color:var(--ground-deep);
	border:1px solid var(--border);
	padding:0.9rem;
}

.photo-step-cell__num {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	color:var(--accent);
	font-weight:700;
	display:block;
	margin-bottom:0.25rem;
}

.photo-step-cell__title {
	font-family:var(--reti-9cd);
	font-size:var(--text-xs);
	font-weight:700;
	color:var(--type-bright);
	margin-bottom:0.25rem;
}

.photo-step-cell__desc {
	font-family:var(--reti-ce9);
	font-size:var(--text-2xs);
	color:var(--type-muted);
	line-height:var(--leading-normal);
}


.legal-wide-container {
	max-width:var(--measure-wide);
	margin-inline:auto;
	padding-block:clamp(2rem, 1.5rem + 2.5vw, 4.5rem);
}

.legal-numbered-clause {
	display:grid;
	grid-template-columns:1fr;
	gap:var(--space-sm);
	padding-block:var(--space-xl);
	border-bottom:1px solid var(--border);
	position:relative;
}

.legal-numbered-clause:last-of-type { border-bottom:none; }

@media (min-width: 768px) {
	.legal-numbered-clause {
		grid-template-columns:5.5rem minmax(0, 1fr);
		gap:var(--space-lg);
	}
}

.legal-clause-num {
	font-family:var(--reti-9cd);
	font-size:var(--text-sm);
	font-weight:700;
	color:var(--accent);
	letter-spacing:var(--tracking-wide);
	padding-top:0.2rem;
	user-select:none;
}

.legal-clause-content {
	display:flex;
	flex-direction:column;
	gap:var(--space-md);
}

.legal-clause-title {
	font-family:var(--reti-1d2);
	font-size:var(--text-xl);
	font-weight:700;
	color:var(--type-bright);
	line-height:var(--leading-tight);
}

.legal-faru4dc {
	font-family:var(--reti-ce9);
	font-size:var(--text-base);
	line-height:var(--leading-relaxed);
	color:var(--type-muted);
}

.legal-faru4dc strong { color:var(--type-bright); }

.legal-faru4dc a {
	color:var(--accent);
	text-decoration:underline;
	text-underline-offset:3px;
}

.legal-faru4dc a:hover { color:#d2ff4a; }

.legal-clause-list {
	list-style:none;
	padding:0;
	display:flex;
	flex-direction:column;
	gap:0.75rem;
	margin-top:0.5rem;
}

.legal-clause-list__item {
	position:relative;
	padding-left:1.5rem;
	font-family:var(--reti-ce9);
	font-size:var(--text-sm);
	color:var(--type-muted);
	line-height:var(--leading-body);
}

.legal-clause-list__item::before {
	content:"—";
	position:absolute;
	left:0;
	color:var(--accent);
}


.cookies-qa-container {
	max-width:var(--measure-prose);
	margin-inline:auto;
	padding-block:clamp(2rem, 1.5rem + 2.5vw, 4.5rem);
}

.cookies-qa-block {
	padding-block:var(--space-xl);
	border-bottom:1px solid var(--border);
}

.cookies-qa-block:last-of-type { border-bottom:none; }

.cookies-qa-question {
	font-family:var(--reti-1d2);
	font-size:var(--text-2xl);
	font-weight:700;
	color:var(--type-bright);
	line-height:var(--leading-tight);
	margin-bottom:var(--space-md);
	text-wrap:balance;
}

.cookies-qa-answer {
	font-family:var(--reti-ce9);
	font-size:var(--text-base);
	line-height:var(--leading-relaxed);
	color:var(--type-muted);
}

.cookies-qa-answer + .cookies-qa-answer { margin-top:1.15em; }

.cookies-qa-answer strong { color:var(--type-bright); }

.cookies-qa-answer a {
	color:var(--accent);
	text-decoration:underline;
	text-underline-offset:3px;
}

.cookie-inventory-table {
	width:100%;
	margin-top:var(--space-md);
	border-collapse:collapse;
	font-family:var(--reti-9cd);
	font-size:var(--text-xs);
	border:1px solid var(--border);
	background-color:var(--panel);
}

.cookie-inventory-table th,
.cookie-inventory-table td {
	padding:0.85rem 1rem;
	border-bottom:1px solid var(--border);
	border-right:1px solid var(--border);
}

.cookie-inventory-table th:last-child,
.cookie-inventory-table td:last-child { border-right:none; }

.cookie-inventory-table th {
	background-color:var(--ground-deep);
	color:var(--accent);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
	font-size:var(--text-2xs);
}

.cookie-inventory-table tr:last-child td { border-bottom:none; }


.terms-ledger-container {
	max-width:var(--measure-wide);
	margin-inline:auto;
	padding-block:clamp(2rem, 1.5rem + 2.5vw, 4.5rem);
}

.terms-intro-box {
	background-color:var(--panel);
	border:1px solid var(--border);
	padding:clamp(1.25rem, 1rem + 1vw, 2rem);
	margin-bottom:var(--space-xl);
}

.clause-ledger {
	width:100%;
	border-collapse:collapse;
	border:1px solid var(--border);
	background-color:var(--panel);
	font-family:var(--reti-ce9);
}

.clause-ledger thead { background-color:var(--ground-deep); }

.clause-ledger th {
	font-family:var(--reti-9cd);
	font-size:var(--text-2xs);
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:var(--tracking-wide);
	color:var(--accent);
	padding:1rem 1.25rem;
	border-bottom:1px solid var(--border);
	border-right:1px solid var(--border);
	text-align:left;
}

.clause-ledger th:last-child { border-right:none; }

.clause-ledger td {
	padding:1.25rem;
	border-bottom:1px solid var(--border);
	border-right:1px solid var(--border);
	font-size:var(--text-sm);
	line-height:var(--leading-normal);
	vertical-align:top;
}

.clause-ledger td:last-child { border-right:none; }

.clause-ledger tbody tr:last-child td { border-bottom:none; }

.clause-ledger tbody tr:hover td { background-color:var(--panel-elevated); }

.ledger-clause-name {
	font-family:var(--reti-9cd);
	font-weight:700;
	color:var(--type-bright);
	font-size:var(--text-xs);
	white-space:nowrap;
}

.ledger-plain-words {
	color:var(--type-bright);
	font-size:var(--text-sm);
	line-height:var(--leading-body);
}

.ledger-why-applies {
	color:var(--type-muted);
	font-size:var(--text-xs);
	line-height:var(--leading-normal);
}

/* 320px–860px Responsive transformation: Ledgers convert into labelled blocks */
@media (max-width: 860px) {
	.clause-ledger {
		border:none;
		background:transparent;
		display:block;
	}

	.clause-ledger thead { display:none; }

	.clause-ledger tbody {
		display:flex;
		flex-direction:column;
		gap:var(--space-md);
	}

	.clause-ledger tr {
		display:flex;
		flex-direction:column;
		background-color:var(--panel);
		border:1px solid var(--border);
		padding:1rem;
		gap:0.75rem;
	}

	.clause-ledger td {
		padding:0;
		border:none;
		display:flex;
		flex-direction:column;
		gap:0.25rem;
	}

	.clause-ledger td::before {
		content:attr(data-label);
		font-family:var(--reti-9cd);
		font-size:var(--text-2xs);
		font-weight:700;
		text-transform:uppercase;
		color:var(--accent);
		letter-spacing:var(--tracking-widest);
	}

	.ledger-clause-name { white-space:normal; }
}


.faq-list {
	display:flex;
	flex-direction:column;
	gap:1px;
	background-color:var(--border);
	border:1px solid var(--border);
	margin-top:var(--space-lg);
	max-width:var(--measure-prose);
}

.faq-item { background-color:var(--panel); }

.faq-trigger {
	width:100%;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:var(--space-md);
	padding:1.15rem 1.4rem;
	text-align:left;
	font-family:var(--reti-1d2);
	font-size:var(--text-base);
	font-weight:700;
	color:var(--type-bright);
	background:none;
	border:none;
	cursor:pointer;
	min-height:44px;
	transition:background-color var(--duration-fast) var(--ease-out),
							color var(--duration-fast) var(--ease-out);
}

.faq-trigger:hover {
	background-color:var(--panel-elevated);
	color:var(--accent);
}

.faq-trigger:focus-visible {
	outline:2px solid var(--accent);
	outline-offset:-2px;
}

.faq-trigger .icon {
	color:var(--accent);
	transition:transform var(--duration-fast) var(--ease-out);
}

.faq-trigger[aria-expanded="true"] .icon { transform:rotate(180deg); }

.faq-panel {
	display:none;
	padding:0 1.4rem 1.25rem 1.4rem;
	font-family:var(--reti-ce9);
	font-size:var(--text-sm);
	line-height:var(--leading-body);
	color:var(--type-muted);
}

.faq-panel.is-open { display:block; }


.ticker-band--accent {
	background-color:rgba(196, 250, 40, 0.04);
	border-color:rgba(196, 250, 40, 0.25);
}

.ticker-band--accent .ticker-item { color:var(--type-bright); }


.error-scene {
	padding-block:clamp(3rem, 2rem + 4vw, 7rem);
	text-align:center;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
}

.error-code-hud {
	font-family:var(--reti-9cd);
	font-size:clamp(3rem, 2rem + 6vw, 7.5rem);
	font-weight:800;
	color:var(--accent-alt);
	line-height:1;
	letter-spacing:var(--tracking-widest);
	margin-bottom:var(--space-md);
	text-shadow:0 0 24px rgba(255, 51, 119, 0.4);
}

.error-scene .answer-lead { text-align:center; }

.error-scene .answer-body {
	text-align:center;
	margin-bottom:var(--space-xl);
}


@media (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.hover-follow-card {
		position:relative;
		overflow:hidden;
	}

	.hover-follow-preview {
		position:fixed;
		pointer-events:none;
		z-index:var(--z-modal);
		width:220px;
		height:140px;
		border:1px solid var(--accent);
		box-shadow:0 12px 30px rgba(0, 0, 0, 0.8);
		opacity:0;
		transform:translate(-50%, -50%) scale(0.9);
		transition:opacity 160ms var(--ease-out),
								transform 160ms var(--ease-out);
		background-color:var(--ground-deep);
	}

	.hover-follow-preview.is-active {
		opacity:1;
		transform:translate(-50%, -50%) scale(1);
	}

	.hover-follow-preview img {
		width:100%;
		height:100%;
		object-fit:cover;
	}
}


@media (max-width: 360px) {
	.question-heading { font-size:clamp(1.4rem, 1.2rem + 1.2vw, 1.75rem); }

	.btn {
		padding-inline:0.9rem;
		font-size:0.72rem;
	}

	.service-spec-card { padding:1rem; }

	.service-spec-card__header {
		flex-direction:column;
		align-items:flex-start;
	}

	.spec-table th,
	.spec-table td { padding:0.65rem 0.75rem; }

	.module-header {
		flex-direction:column;
		align-items:flex-start;
		gap:0.35rem;
	}

	.module-meta {
		white-space:normal;
		word-break:normal;
	}
}
