/*
Theme Name: KWY
Theme URI: Not Available
Author: Metric | Web Developer: QG
Description: Lightweight Elementor theme for Kornar Winmil Yunti Aboriginal Corporation (KWY). Every section and the footer are QG Sections for Elementor widgets, and the header is LazyNav from QG Toolkit. Appearance > KWY Setup builds the Home page, the header menu, the LazyNav header profiles and the Site Footer in one click.
Version: 1.2.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kwy
*/

/* Brand tokens read by QG Sections widgets (colors also come from Elementor Site Settings). */
body {
	--qgse-r-lg: 28px;
	--qgse-r-md: 20px;
	--qgse-r-sm: 18px;
	--qgse-r-xs: 12px;
	--qgse-r-btn: 999px;
	--qgse-r-pill: 999px;
	--qgse-btn-main-bg: #F8D028;
	--qgse-btn-main-text: #1F1A17;
	--qgse-head-weight: 700;
	--qgse-head-tracking: -0.045em;
	--kwy-navy: #1F3656;
	--kwy-olive: #465248;
	--kwy-maroon: #511E1B;
	--kwy-sand: #EFD9A3;
	--kwy-orange: #E17F4F;
	--kwy-gold: #AB9664;
	--kwy-yellow: #F8D028;
	--kwy-red: #D80000;
	--kwy-charcoal: #1F1A17;
	--kwy-cream: #FBF5EA;
	--kwy-light: #F7EEDC;
}

*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--kwy-light); color: var(--kwy-charcoal); font-family: var(--e-global-typography-text-font-family, "Outfit"), "Outfit", system-ui, sans-serif; font-size: 16px; line-height: normal; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
h1, h2, h3, h4 { font-family: var(--e-global-typography-primary-font-family, "Bricolage Grotesque"), "Bricolage Grotesque", "Outfit", sans-serif; font-weight: 700; line-height: 1.05; letter-spacing: -0.04em; }
:focus-visible { outline: 3px solid var(--kwy-yellow); outline-offset: 3px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.screen-reader-text:focus { clip: auto; width: auto; height: auto; z-index: 1000; background: #fff; padding: 12px 16px; left: 8px; top: 8px; }

/* Fallback header and footer (until KWY Setup has built them) */
.kwy-fallback-header { background: var(--kwy-navy); }
.kwy-fallback-header__inner { max-width: 1320px; margin: 0 auto; padding: 18px 40px; display: flex; flex-wrap: wrap; gap: 12px 32px; align-items: center; justify-content: space-between; }
.kwy-fallback-header a { color: var(--kwy-cream); text-decoration: none; font-weight: 600; }
.kwy-fallback-header ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 26px; }
.kwy-fallback-header .kwy-brand { font-family: "Bricolage Grotesque", sans-serif; font-size: 22px; }
.kwy-fallback-footer { background: var(--kwy-navy); color: #C4CCD9; padding: 32px 24px; text-align: center; font-size: 14px; }

/* Plain pages (not built with Elementor) */
.kwy-titleband { background: var(--kwy-navy); color: var(--kwy-cream); padding: 72px 40px 64px; }
.kwy-titleband h1 { max-width: 1240px; margin: 0 auto; font-size: clamp(36px, 4.4vw, 60px); }
.kwy-content { max-width: 820px; margin: 0 auto; padding: 72px 24px 96px; font-size: 18px; line-height: 1.7; }
.kwy-content h2, .kwy-content h3 { color: var(--kwy-navy); margin: 1.4em 0 .5em; }
.kwy-content a { color: var(--kwy-navy); text-underline-offset: 3px; }
.kwy-content img { border-radius: 20px; }

.kwy-elementor .elementor-section.elementor-section-full_width > .elementor-container { max-width: none; }
