/**
 * MrAdspert — progressive-enhancement layer.
 *
 * The design's scroll-reveal / accordion / tab states start HIDDEN in the markup
 * (opacity:0, max-height:0, display:none) and were originally shown by JS. To make
 * the site safe when JS is off or fails, the baseline here forces everything
 * VISIBLE. Only once assets/js/theme.js loads and adds `.mrad-js` to <html> do the
 * hidden-until-interacted states come back — so content is never trapped behind JS.
 */

/* ---- Baseline (no JS, or before theme.js runs): force everything visible ---- */
html:not(.mrad-js) [data-reveal],
html:not(.mrad-js) .wl-reveal,
html:not(.mrad-js) .tl-step {
	opacity: 1 !important;
	transform: none !important;
}
html:not(.mrad-js) [data-answer] {
	max-height: none !important;
	overflow: visible !important;
}
html:not(.mrad-js) [data-grid] {
	display: grid !important;
}
/* Process timelines: without JS, show the full colored progress line statically
   (Home uses .tl-fill; service pages use .wl-tl-fill). */
html:not(.mrad-js) .tl-fill,
html:not(.mrad-js) .wl-tl-fill {
	height: 100% !important;
}

/* ---- JS active: reveal targets get shown once observed (class "in") ---- */
/* Home uses inline opacity:0 with no design rule, so override it here.
   (.tl-step is NOT here — with JS the timeline module controls it via scroll.) */
html.mrad-js [data-reveal].in {
	opacity: 1 !important;
	transform: none !important;
}
/* Service pages: .wl-reveal / .wl-reveal.in are already defined in the design CSS. */

/* Accordion open state is driven by inline max-height set in JS; this just keeps
   a smooth close and shows overflow while open. */
html.mrad-js [data-answer].mrad-open {
	overflow: visible !important;
}

/* Respect users who prefer no motion: show instantly, skip transitions. */
@media ( prefers-reduced-motion: reduce ) {
	[data-reveal],
	.wl-reveal,
	.tl-step {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}
