/* =============================================================
   Mobile refinements + 404 + utility
   ============================================================= */

@media (max-width: 768px) {
	.sts-section { padding: 64px 0; }
	.sts-section__head { margin-bottom: 36px; }
	.sts-hero { padding: 80px 0 70px; }
	.sts-hero__inner { gap: 40px; }
	.sts-hero__card--mini { position: static; margin-top: 16px; }
	.sts-quiz__shell { padding: 22px; }
	.sts-quiz__q { font-size: 1.15rem; }
	.sts-calc__shell, .sts-luxgen__shell, .sts-wellness__form, .sts-tracker__shell { padding: 22px; }
	.sts-newsletter__card { padding: 30px 22px; }
	.sts-newsletter__title { font-size: 1.4rem; }
	.sts-article { padding: 24px; }
	.sts-article__hero { margin: 22px -24px; }
}

@media (max-width: 540px) {
	h1 { font-size: 1.8rem; }
	h2 { font-size: 1.5rem; }
	.sts-btn { padding: 11px 18px; font-size: 0.92rem; }
	.sts-btn--lg { padding: 13px 22px; font-size: 1rem; }
	.sts-pick { padding: 22px 18px; }
	.sts-bundle, .sts-trust-card, .sts-arch-card { padding: 20px 16px; }
	.sts-hero__title { font-size: 1.8rem; }
}

/* ===== 404 ===== */
.sts-404 { padding: 80px 0; }
.sts-404__hero {
	background: var(--sts-grad-luxe); color: white;
	border-radius: var(--sts-radius-lg); padding: 50px;
	text-align: center; position: relative; overflow: hidden;
}
.sts-404__hero::before {
	content: ""; position: absolute; inset: 0;
	background: radial-gradient(circle at 50% 0%, rgba(56, 189, 248, .3), transparent 60%);
}
.sts-404__hero h1 { color: white; font-size: clamp(2rem, 5vw, 3.4rem); }
.sts-404__hero p { color: #cbd5e1; max-width: 600px; margin: 0 auto 22px; }
.sts-404__hero .sts-btn { position: relative; z-index: 1; }
.sts-404__big {
	font-family: var(--sts-font-display); font-weight: 700;
	font-size: clamp(5rem, 18vw, 12rem); line-height: 1;
	background: linear-gradient(180deg, rgba(56, 189, 248, .9), rgba(37, 99, 235, .4));
	-webkit-background-clip: text; background-clip: text;
	-webkit-text-fill-color: transparent;
	margin-bottom: 8px;
}
.sts-404__affiliate {
	background: white; border: 1px solid var(--sts-border);
	border-radius: var(--sts-radius-lg); padding: 30px;
	margin: -30px auto 40px; max-width: 760px;
	box-shadow: var(--sts-shadow-md); position: relative; z-index: 2;
}
.sts-404__affiliate-head {
	display: inline-block; padding: 4px 12px;
	background: var(--sts-grad-aqua); color: white;
	font-size: 11px; letter-spacing: .12em; text-transform: uppercase;
	border-radius: 999px; margin-bottom: 14px; font-weight: 600;
}
.sts-404__grid {
	display: grid; gap: 22px; grid-template-columns: 1fr;
	margin-top: 30px;
}
@media (min-width: 720px) { .sts-404__grid { grid-template-columns: 1fr 1fr; } }
.sts-404__card {
	background: white; border: 1px solid var(--sts-border);
	border-radius: var(--sts-radius); padding: 24px;
}
.sts-404__card h3 { margin-top: 0; font-size: 1.1rem; }

/* ===== EMPTY STATE ===== */
.sts-empty {
	text-align: center; padding: 60px 20px;
	background: white; border: 1px solid var(--sts-border);
	border-radius: var(--sts-radius-lg);
}

/* ===== UTILITY ===== */
.sts-pagelinks { margin: 1.5em 0; color: var(--sts-muted); }

/* Animations preference */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}

/* Print */
@media print {
	.sts-header, .sts-footer, .sts-mobile-cta, .sts-bg-fx { display: none !important; }
	.sts-section { padding: 20px 0; }
}
