/*
Theme Name: Reliant Forge Pilot
Description: A small application-focused child theme matching Reliant Forge's public identity.
Author: Reliant Forge
Template: extendable
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: reliant-forge-pilot
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
	--rf-pilot-ink: #181e29;
	--rf-pilot-navy: #152239;
	--rf-pilot-gold: #feb854;
	--rf-pilot-paper: #f9f9f8;
	--rf-pilot-line: #d8dbe0;
}

.wp-site-blocks { padding-block: 0; }
.wp-site-blocks > * { margin-block-start: 0; }
.rf-pilot-header { background: var(--rf-pilot-navy); color: var(--rf-pilot-paper); }
.rf-pilot-header__inner, .rf-pilot-footer__inner {
	box-sizing: border-box;
	max-width: 1232px;
	margin-inline: auto;
	padding: 1.1rem 1.5rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem 2rem;
}
.rf-pilot-brand {
	display: inline-flex;
	align-items: center;
	gap: .8rem;
	color: var(--rf-pilot-paper);
	text-decoration: none;
}
.rf-pilot-brand:hover { color: var(--rf-pilot-paper); }
.rf-pilot-brand img { width: 52px; height: 53px; object-fit: contain; }
.rf-pilot-brand__name {
	display: block;
	font-family: var(--wp--preset--font-family--source-serif-pro);
	font-size: 1.65rem;
	font-weight: 500;
	line-height: 1.15;
}
.rf-pilot-brand__context { display: block; margin-top: .25rem; font-size: .75rem; letter-spacing: .07em; }
.rf-pilot-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: .3rem 1.3rem;
	list-style: none;
	margin: 0;
	padding: 0;
}
.rf-pilot-navigation a {
	color: var(--rf-pilot-paper);
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-size: .9rem;
	font-weight: 600;
	text-decoration: none;
	text-underline-offset: .3em;
}
.rf-pilot-navigation a:hover { color: var(--rf-pilot-gold); text-decoration: underline; }
.rf-pilot-header a:focus-visible { outline: 3px solid var(--rf-pilot-gold); outline-offset: 5px; }
.rf-pilot-main { box-sizing: border-box; max-width: 1232px; margin-inline: auto; padding: clamp(1.75rem, 4vw, 3.5rem) 1.5rem; }
.rf-pilot-main > .wp-block-post-title { margin: 0 0 1.5rem; }
.rf-pilot-main a:not(.rf-core-button):not(.wp-block-button__link) { text-underline-offset: .2em; }
.rf-pilot-footer { border-top: 1px solid var(--rf-pilot-line); font-size: .85rem; }
.rf-pilot-footer p { margin: 0; }
.rf-pilot-footer a { color: var(--rf-pilot-ink); text-underline-offset: .2em; }
.rf-pilot-footer__links { display: flex; align-items: center; flex-wrap: wrap; gap: 1.5rem; }
.rf-pilot-footer__links a { display: inline-flex; align-items: center; min-height: 44px; }
.rf-pilot-footer .wp-block-loginout { margin: 0; }

/* Core owns the journey and print layout. These screen-only overrides align its existing UI with the brand. */
@media screen {
	.rf-pilot-main :is(.rf-core-surface, .rf-core-panel, .rf-core-notice) {
		--rf-ink: #181e29;
		--rf-muted: #535b67;
		--rf-line: #d8dbe0;
		--rf-paper: #fff;
		--rf-soft: #f2f3f4;
		--rf-accent: #152239;
		--rf-accent-dark: #111b2b;
		--rf-warm: #feb854;
	}
	.rf-pilot-main :is(.rf-core-surface, .rf-core-panel) :is(h2, h3, h4) {
		font-family: var(--wp--preset--font-family--source-serif-pro);
		font-weight: 500;
		letter-spacing: -.02em;
		line-height: 1.15;
	}
	.rf-pilot-main .rf-core-hero { border-top: 0; padding-top: 0; }
	.rf-pilot-main :is(.rf-core-panel button, .rf-core-review-form button, .rf-core-button),
	.rf-pilot-main .fluentform .ff-btn-submit {
		background: var(--rf-pilot-gold);
		border: 2px solid var(--rf-pilot-gold);
		border-radius: 6px;
		color: var(--rf-pilot-ink);
		font-family: inherit;
		font-size: 1rem;
		font-weight: 700;
		min-height: 44px;
		padding: .6rem 1rem;
	}
	.rf-pilot-main :is(.rf-core-panel button, .rf-core-review-form button, .rf-core-button):hover,
	.rf-pilot-main .fluentform .ff-btn-submit:hover {
		background: #f2aa40;
		border-color: #f2aa40;
		color: var(--rf-pilot-ink);
	}
	.rf-pilot-main .rf-core-button--secondary {
		background: #fff;
		border-color: var(--rf-pilot-navy);
		color: var(--rf-pilot-navy);
	}
	.rf-pilot-main .rf-core-button--secondary:hover { background: #f2f3f4; border-color: var(--rf-pilot-navy); }
	.rf-pilot-main .rf-dashboard__loop .is-complete .rf-dashboard__step-marker { background: #e9edf2; }
	.rf-pilot-main .fluentform { max-width: 52rem; }
	.rf-pilot-main .fluentform .ff-el-group { margin-bottom: 1.5rem; }
	.rf-pilot-main .fluentform .ff-el-form-check-label { display: inline-flex; align-items: center; min-height: 44px; gap: .5rem; }
	.rf-pilot-main :is(input, select, textarea) { accent-color: var(--rf-pilot-navy); }
	.rf-pilot-main :is(a, button, input, select, textarea, summary):focus-visible {
		outline: 3px solid var(--rf-pilot-navy);
		outline-offset: 3px;
	}
}

@media (max-width: 600px) {
	.rf-pilot-header__inner, .rf-pilot-footer__inner { padding-inline: 1rem; }
	.rf-pilot-main { padding-inline: 1rem; }
	.rf-pilot-navigation { width: 100%; }
	.rf-pilot-navigation ul { gap: .15rem 1rem; }
	.rf-pilot-brand img { width: 44px; height: 45px; }
}

@media print {
	.rf-pilot-header, .rf-pilot-footer { display: none !important; }
	.rf-pilot-main { max-width: none; margin: 0 !important; padding: 0 !important; }
	.rf-pilot-main > .wp-block-post-title { display: none !important; }
}
