/*
Theme Name: Fern & Moss (Astra Child)
Theme URI: https://fernandmosswaxing.com/
Description: Child theme of Astra for Fern and Moss Waxing Studio. Adds the .fm-* component design system (sienna/tan/slate palette, SYSTEM font stack matching fm.serpnerd.com, cards, tier chips, price tables, FAQ styling, CTA bands, image placeholder system) used across all rebuilt content pages.
Author: SERPNerd
Template: astra
Version: 2.0.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-fm
*/

/*
 * Base layer — intentionally small; all custom components live in css/fm-components.css (.fm-* namespace).
 *
 * Typography: SYSTEM font stack only (no webfonts) — matches the approved fm.serpnerd.com look.
 */

:root {
	--fm-sienna: #a0522d;
	--fm-sienna-dark: #7c3e1f;
	--fm-tan: #dccab7;
	--fm-tan-light: #efe6dc;
	--fm-cream: #f5efe6;
	--fm-ink: #241a13;
	--fm-slate: #334155;
	--fm-paper: #fbf8f4;
	--fm-radius: 18px;
	/* System stack only — deliberately no webfont (royal, 2026-09). */
	--fm-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

body {
	font-family: var(--fm-font);
	color: var(--fm-slate);
	font-size: 16px;
	line-height: 1.65;
}

::selection {
	background: rgba(160, 82, 45, 0.25);
}

/* Normalize legacy Flare Builder inline declarations that still name Nunito
   (webfont is no longer loaded) onto the brand system stack. */
[style*="Nunito"] {
	font-family: var(--fm-font) !important;
}

/* Header navigation — keep all eight items on one line at desktop widths. */
@media (min-width: 1024px) {
	.main-header-bar .main-navigation ul li a,
	.ast-desktop .main-navigation ul li a {
		padding-left: 13px;
		padding-right: 13px;
		font-size: 15px;
	}
}

/* Rebrand Astra's global color slots (shipped with default BLUE values).
   Every hover, focus ring, button background and surface in the parent
   theme resolves through these variables — !important wins regardless of
   the order Astra emits its dynamic stylesheet. */
html {
	--ast-global-color-0: #a0522d !important; /* links (was #046bd2 blue)      */
	--ast-global-color-1: #7c3e1f !important; /* accent / hovers (was #045cb4)  */
	--ast-global-color-2: #241a13 !important; /* headings                       */
	--ast-global-color-3: #334155 !important; /* body text                      */
	--ast-global-color-4: #ffffff !important; /* white                          */
	--ast-global-color-5: #f5efe6 !important; /* light surface (was #F0F5FA)    */
	--ast-global-color-6: #241a13 !important; /* dark button / text             */
	--ast-global-color-7: #e4d9cc !important; /* borders / dividers             */
	--ast-global-color-8: #241a13 !important; /* extra dark                     */
}

body {
	accent-color: var(--fm-sienna);
}

/* Astra's scroll-to-top button was defaulting to the blue accent. */
.ast-scroll-top-icon,
a.ast-scroll-top-link {
	background-color: var(--fm-sienna) !important;
	color: #fff !important;
	border: none !important;
	box-shadow: 0 4px 14px rgba(36, 26, 19, 0.25) !important;
}

.ast-scroll-top-icon:hover,
a.ast-scroll-top-link:hover {
	background-color: var(--fm-sienna-dark) !important;
	color: #fff !important;
}

main a {
	color: var(--fm-sienna);
}

main a:hover {
	color: var(--fm-sienna-dark);
}

/* Keep the site's visual voice on plain block pages (system-stack headings; soft ink weight).
   Scoped to <main> so theme chrome (header/footer) keeps Astra's own styling. */

main h1, main h2, main h3, main h4 {
	font-family: var(--fm-font);
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--fm-ink);
}
