/* ============================================================
   Andalusite — overrides on top of the ported dualite.css (Framer).
   WordPress integration fixes + deliberate rebrand changes only.
   Loaded LAST.
   ============================================================ */

/* ---- 1. WordPress / FSE integration -------------------------------- */

/* Template-part wrappers must not create a box: the ported layout owns
   its own stacking + sticky nav. */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part {
	display: contents;
}

/* No block-gap margins between full-bleed sections. */
.wp-site-blocks > *,
.wp-site-blocks > main > * {
	margin-block: 0;
}

/* Smooth scrolling is done in JS for anchor links only; a CSS-level
   smooth behavior would animate scroll restoration on refresh. */
html {
	scroll-behavior: auto !important;
}

/* Font guarantee regardless of global-styles cascade order. */
body {
	font-family: "Neue Montreal Regular", "Neue Montreal", system-ui, -apple-system, sans-serif;
}

/* No-JS safety: never hide content when scripts are unavailable. */
html:not(.js) .reveal,
html:not(.js) [data-reveal] {
	opacity: 1 !important;
	transform: none !important;
	filter: none !important;
}

/* Note: WordPress adds body classes (blog, page, home, single, archive,
   paged, admin-bar). The ported Framer classes are hashed (.framer-xxxx)
   and do not collide, so no body-class neutralisation is needed here.
   If a collision is found during QA, neutralise that specific property. */

/* ---- 2. Original Andalusite wordmark (replaces the dualite logo) ---- */
.brand-word-text {
	font-family: "Perfectly Nineties Regular", "Perfectly Nineties", Georgia, serif;
	font-size: 22px;
	line-height: 1;
	letter-spacing: -0.015em;
	color: #1d1d1d;
	white-space: nowrap;
	display: inline-block;
	text-decoration: none;
}
/* The ported logo link wrapped an SVG (no link color); our text wordmark must
   not inherit the default link blue. */
a:has(.brand-word-text),
a[data-framer-name="logo-wrap"] { color: #1d1d1d; text-decoration: none; }
/* Nav over dark sections keeps the wordmark readable. */
.framer-body-dark .brand-word-text,
[data-nav-dark] .brand-word-text { color: #ffffff; }

/* ---- 3. Logged-in admin bar: keep any sticky/fixed nav clear -------- */
.admin-bar #main [data-framer-name="Nav"],
.admin-bar #main header {
	top: var(--wp-admin--admin-bar--height, 32px);
}
@media (max-width: 600px) {
	.admin-bar #main [data-framer-name="Nav"],
	.admin-bar #main header { top: 0; }
}
