/* LIFT Group theme styles. Colors match theme.json presets. */
:root {
	--lift-midnight: #001e5a;
	--lift-blue: #00308f;
	--lift-gold: #e8a317;
	--lift-gold-light: #ffc233;
	--lift-surface: #f4f6fa;
	--lift-line: #dfe4ec;
	--lift-muted: #4b5a78;
	--lift-footer: #00153f;
	--lift-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

body { -webkit-font-smoothing: antialiased; }

/* ---------- Header ---------- */
.lift-header {
	position: sticky; top: 0; z-index: 50;
	background: rgba(255, 255, 255, 0.97);
	border-bottom: 1px solid var(--lift-line);
}
.admin-bar .lift-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .lift-header { top: 46px; } }
.lift-header-inner { min-height: 72px; gap: 24px; }
.lift-logo { display: flex; align-items: center; color: var(--lift-blue); text-decoration: none; }
.lift-logo svg { height: 34px; width: auto; display: block; }
.lift-logo .lift-logo-arrow { fill: var(--lift-gold); }
.lift-nav a { color: var(--wp--preset--color--ink); font-weight: 550; text-decoration: none; }
.lift-nav a:hover { color: var(--lift-blue); }
.lift-header .wp-block-button__link { padding: 0.6rem 1.1rem; font-size: 0.95rem; }
@media (max-width: 600px) {
	.lift-logo svg { height: 28px; }
	.lift-header .wp-block-buttons { display: none; }
}

/* ---------- Buttons ---------- */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent; color: inherit; border: 2px solid currentColor;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: rgba(255, 255, 255, 0.1); }
.lift-btn-light > .wp-block-button__link { background: #fff; color: var(--lift-midnight); }
.lift-btn-light > .wp-block-button__link:hover { background: #f1f1f1; color: var(--lift-midnight); }

/* ---------- Text helpers ---------- */
.lift-eyebrow {
	font-size: 0.8rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase;
	color: var(--lift-blue); margin-bottom: 0.25rem !important;
}
.lift-lead { font-size: 1.15rem; color: var(--lift-muted); }
/* Only centered intros get a narrower measure; left-aligned ones keep the section width so they line up with the heading. */
.has-text-align-center.lift-lead { max-width: 720px; margin-left: auto !important; margin-right: auto !important; }

/* ---------- Sections ---------- */
.lift-section { padding-top: 84px; padding-bottom: 84px; }
.lift-section-alt { padding-top: 84px; padding-bottom: 84px; background: var(--lift-surface); }
@media (max-width: 782px) {
	.lift-section, .lift-section-alt { padding-top: 56px; padding-bottom: 56px; }
}

/* ---------- Hero ---------- */
.lift-hero {
	background:
		radial-gradient(1200px 500px at 85% -10%, rgba(232, 163, 23, 0.28), transparent 60%),
		linear-gradient(160deg, var(--lift-midnight) 0%, var(--lift-blue) 100%);
	color: #fff; padding-top: 96px; padding-bottom: 104px;
}
.lift-hero.lift-hero-short { padding-top: 72px; padding-bottom: 76px; }
.lift-hero h1, .lift-hero h2, .lift-hero h3 { color: #fff; }
.lift-hero .lift-eyebrow { color: var(--lift-gold-light); }
.lift-hero .lift-lead { color: rgba(255, 255, 255, 0.85); }
.lift-hero a:not(.wp-element-button) { color: #fff; }
.lift-hero-card {
	background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 18px; padding: 28px;
}
@media (max-width: 782px) { .lift-hero { padding-top: 64px; padding-bottom: 72px; } }

/* ---------- Trust bar ---------- */
.lift-trust { border-bottom: 1px solid var(--lift-line); padding-top: 22px; padding-bottom: 22px; }
.lift-trust p { color: var(--lift-muted); font-weight: 600; text-align: center; margin: 0; }
.lift-trust strong { color: var(--lift-midnight); }

/* ---------- Cards ---------- */
.lift-cards { gap: 24px; }
.lift-card {
	background: #fff; border: 1px solid var(--lift-line); border-top: 3px solid var(--lift-gold);
	border-radius: 14px; padding: 28px; transition: box-shadow 0.2s;
}
.lift-card:hover { box-shadow: var(--lift-shadow); }
.lift-card p { color: var(--lift-muted); }
.lift-card h3 { margin-top: 0; }
.lift-card .lift-more a { font-weight: 650; text-decoration: none; }

/* ---------- Check lists ---------- */
ul.lift-checklist { list-style: none; padding-left: 0; }
ul.lift-checklist li { position: relative; padding-left: 30px; margin-bottom: 0.7rem; }
ul.lift-checklist li::before {
	content: ""; position: absolute; left: 0; top: 0.3em; width: 18px; height: 18px; border-radius: 50%;
	background: var(--lift-gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23001e5a' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/11px no-repeat;
}

/* ---------- Role lists ---------- */
ul.lift-roles { list-style: none; padding-left: 0; display: grid; gap: 12px; }
ul.lift-roles li {
	padding: 14px 16px; background: var(--lift-surface); border-radius: 10px;
	border-left: 3px solid var(--lift-gold); color: var(--lift-muted);
}
ul.lift-roles li strong { color: var(--lift-midnight); display: block; }

/* ---------- Steps ---------- */
.lift-step-num { font-size: 2rem !important; font-weight: 800; color: var(--lift-blue); margin-bottom: 0 !important; }
.lift-step p { color: var(--lift-muted); }

/* ---------- Panel ---------- */
.lift-panel { background: var(--lift-midnight); color: #fff; border-radius: 18px; padding: 36px; }
.lift-panel h2, .lift-panel h3 { color: #fff; }
.lift-panel .lift-eyebrow { color: var(--lift-gold-light); }

/* ---------- Tags ---------- */
.lift-tags { color: var(--lift-blue); font-weight: 600; }

/* ---------- FAQ ---------- */
.lift-faq { max-width: 820px; margin-left: auto !important; margin-right: auto !important; }
.lift-faq .wp-block-details { border-bottom: 1px solid var(--lift-line); padding: 16px 0; }
.lift-faq summary { font-weight: 650; color: var(--lift-midnight); cursor: pointer; }
.lift-faq .wp-block-details p { color: var(--lift-muted); }

/* ---------- Call-to-action band ---------- */
.lift-cta {
	background: linear-gradient(120deg, var(--lift-blue), var(--lift-midnight));
	color: #fff; padding-top: 64px; padding-bottom: 64px;
}
.lift-cta h2 { color: #fff; margin-bottom: 0.25rem; }
.lift-cta p { color: rgba(255, 255, 255, 0.85); }

/* ---------- Prose pages ---------- */
.lift-prose { max-width: 780px; }

/* ---------- Form placeholder ---------- */
.lift-form-box { background: #fff; border: 1px dashed var(--lift-gold); border-radius: 14px; padding: 28px; }

/* ---------- Footer ---------- */
.lift-footer { background: var(--lift-footer); color: rgba(255, 255, 255, 0.72); padding-top: 64px; padding-bottom: 28px; font-size: 0.95rem; }
.lift-footer h4, .lift-footer strong { color: #fff; }
.lift-footer h4 { font-size: 0.95rem; margin-bottom: 0.75rem; }
.lift-footer a { color: rgba(255, 255, 255, 0.72); text-decoration: none; }
.lift-footer a:hover { color: #fff; }
.lift-footer ul { list-style: none; padding-left: 0; margin: 0; }
.lift-footer li { margin-bottom: 8px; }
.lift-footer .lift-logo { color: #fff; margin-bottom: 12px; }
.lift-footer .lift-logo .lift-logo-arrow { fill: var(--lift-gold-light); }
.lift-footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.12); margin-top: 40px; padding-top: 20px; font-size: 0.85rem; }
.lift-footer-bottom p { margin: 0; }

/* ---------- Breadcrumb in page heroes ---------- */
.lift-crumb { font-size: 0.88rem; color: rgba(255, 255, 255, 0.7); margin-bottom: 0.5rem !important; }
