/*
Theme Name:   Twenty Twenty-Five Child
Theme URI:    https://froie.com
Description:  Child theme for Twenty Twenty-Five — dark editorial redesign
Author:       Froie
Template:     twentytwentyfive
Version:      1.1.0
*/

/* ── Fonts ─────────────────────────────────────────── */

/* Fira Sans — headings & UI */
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-ExtraLight.woff2') format('woff2');
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-Light.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-SemiBold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Fira Sans';
	src: url('assets/fonts/fira-sans/FiraSans-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* Literata — body text */
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-ExtraLight.woff2') format('woff2');
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-Light.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-Regular.woff2') format('woff2');
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-Medium.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-SemiBold.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'Literata';
	src: url('assets/fonts/literata/Literata72pt-Bold.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ── CSS Custom Properties ─────────────────────────── */

:root {
	--froie-bg: #0a0a0a;
	--froie-surface: #141414;
	--froie-surface-raised: #1a1a1a;
	--froie-border: #242424;
	--froie-text: #e6ddd0;
	--froie-text-muted: #8a7f72;
	--froie-accent: #b84444;
	--froie-accent-hover: #d15555;
	--froie-gold: #c49b5c;
	--froie-overlay: rgba(10, 10, 10, 0.65);
	--froie-font-heading: 'Fira Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--froie-font-body: 'Literata', Georgia, 'Times New Roman', serif;
	--froie-font-ui: 'Fira Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ── Header ──────────────────────────────────────────── */

/* Subtle logo hover — refined, not flashy */
.wp-block-site-logo a {
	display: flex;
	align-items: center;
}
.wp-block-site-logo img {
	transition: opacity 0.25s ease;
	vertical-align: middle;
}
.wp-block-site-logo a:hover img {
	opacity: 0.8;
}

/* ── Base Overrides ────────────────────────────────── */

body {
	background-color: var(--froie-bg);
	color: var(--froie-text);
	font-family: var(--froie-font-body);
	font-weight: 400;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Headings all get Fira Sans */
h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.wp-block-post-title,
.editor-post-title__input {
	font-family: var(--froie-font-heading);
	font-weight: 700;
	letter-spacing: -0.01em;
	line-height: 1.15;
	color: var(--froie-text);
}

a {
	color: var(--froie-accent);
	text-decoration: none;
	transition: color 0.2s ease;
}
a:hover,
a:focus {
	color: var(--froie-accent-hover);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ── Site Background Override (covers parent theme bg) ── */
.wp-site-blocks,
.wp-block-group,
.wp-block-cover,
.wp-block-query {
	background-color: transparent;
}

/* Force global background */
body,
.wp-site-blocks {
	background-color: var(--froie-bg) !important;
}

/* ── Featured Post Hero ────────────────────────────── */

.froie-featured .wp-block-cover {
	position: relative;
	margin-bottom: 0;
}

.froie-featured .wp-block-cover__background {
	background: linear-gradient(
		180deg,
		rgba(10, 10, 10, 0.3) 0%,
		rgba(10, 10, 10, 0.75) 60%,
		var(--froie-bg) 100%
	) !important;
	opacity: 1 !important;
}

.froie-featured .wp-block-cover__inner-container {
	padding-bottom: 4rem;
}

.froie-featured .wp-block-cover .wp-block-post-date a {
	color: var(--froie-text-muted);
	font-family: var(--froie-font-ui);
	font-size: 0.85rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.froie-featured .wp-block-post-terms a {
	display: inline-block;
	padding: 4px 12px;
	background: var(--froie-accent);
	color: #fff !important;
	font-family: var(--froie-font-ui);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.2s ease;
}
.froie-featured .wp-block-post-terms a:hover {
	background: var(--froie-accent-hover);
	color: #fff !important;
}

.froie-featured .wp-block-post-title {
	font-size: clamp(2rem, 5vw, 3.5rem) !important;
	line-height: 1.08;
}

.froie-featured .wp-block-post-excerpt {
	max-width: 680px;
	margin-left: auto;
	margin-right: auto;
	font-family: var(--froie-font-body);
	font-size: 1.1rem;
	color: rgba(230, 221, 208, 0.8);
	line-height: 1.6;
}

/* ── Section Title ("More Stories") ────────────────── */

.froie-grid-section-title {
	font-family: var(--froie-font-ui);
	font-weight: 600;
	font-size: 1.5rem;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--froie-text-muted);
	position: relative;
	padding-bottom: 1rem;
}
.froie-grid-section-title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 60px;
	height: 2px;
	background: var(--froie-accent);
}

/* ── Grid Cards ────────────────────────────────────── */

.froie-grid-card {
	background: var(--froie-surface);
	border: 1px solid var(--froie-border);
	transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
}

/* Equal height grid rows */
.wp-block-post-template.is-layout-grid {
	grid-auto-rows: 1fr !important;
}

.wp-block-post-template.is-layout-grid > li,
.wp-block-post-template.is-layout-grid > .wp-block-post {
	display: flex;
	flex-direction: column;
}

/* Push date to bottom so cards align */
.froie-grid-card .wp-block-post-date {
	margin-top: auto;
	padding: 0.75rem;
}

.froie-grid-card:hover {
	transform: translateY(-4px);
	border-color: var(--froie-accent);
	box-shadow: 0 8px 30px rgba(184, 68, 68, 0.08);
}

.froie-grid-card .wp-block-post-featured-image {
	margin: 0;
	overflow: hidden;
}

.froie-grid-card .wp-block-post-featured-image img {
	transition: transform 0.5s ease;
	width: 100%;
}

.froie-grid-card:hover .wp-block-post-featured-image img {
	transform: scale(1.05);
}

.froie-grid-card .wp-block-post-title {
	font-family: var(--froie-font-heading);
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.3;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	padding: 0 0.75rem;
}

.froie-grid-card .wp-block-post-terms a {
	color: var(--froie-gold) !important;
	font-family: var(--froie-font-ui);
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: 1.8px;
	text-transform: uppercase;
	text-decoration: none;
	padding: 0 0.75rem;
}
.froie-grid-card .wp-block-post-terms a:hover {
	color: var(--froie-accent) !important;
}

.froie-grid-card .wp-block-post-date a {
	color: var(--froie-text-muted);
	font-family: var(--froie-font-ui);
	font-size: 0.8rem;
	letter-spacing: 0.03em;
	text-decoration: none;
}
.froie-grid-card .wp-block-post-date a:hover {
	color: var(--froie-accent);
}

/* ── Pagination ────────────────────────────────────── */

.wp-block-query-pagination {
	font-family: var(--froie-font-ui);
	color: var(--froie-text-muted);
}

.wp-block-query-pagination a {
	color: var(--froie-accent);
	font-weight: 600;
	font-size: 0.9rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	transition: color 0.2s ease;
}

.wp-block-query-pagination a:hover {
	color: var(--froie-accent-hover);
}

.wp-block-query-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5rem;
	height: 2.5rem;
	border: 1px solid var(--froie-border);
	color: var(--froie-text-muted);
	font-size: 0.85rem;
	transition: border-color 0.2s ease, color 0.2s ease;
}

.wp-block-query-pagination .page-numbers.current {
	background: var(--froie-accent);
	color: #fff;
	border-color: var(--froie-accent);
}

.wp-block-query-pagination .page-numbers:hover {
	border-color: var(--froie-accent);
	color: var(--froie-accent);
}

/* ── Footer ──────────────────────────────────────────── */

.froie-footer {
	border-top: 1px solid var(--froie-border);
	position: relative;
}

/* Subtle top edge — a thin highlight line */
.froie-footer::before {
	content: '';
	position: absolute;
	top: 0;
	left: 10%;
	right: 10%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(196, 155, 92, 0.15), transparent);
	pointer-events: none;
}

/* Logo + nav row — explicit flex for robustness */
.froie-footer > .alignwide:first-child {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 2rem;
}

/* Navigation columns wrapper */
.froie-footer-nav {
	display: inline-flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--60, 3rem);
}

/* Footer menu link styling — muted, refined */
.froie-footer-menu .wp-block-navigation-item a {
	color: var(--froie-text-muted) !important;
	font-family: var(--froie-font-ui);
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.02em;
	transition: color 0.2s ease;
	text-decoration: none;
	padding: 3px 0;
}
.froie-footer-menu .wp-block-navigation-item a:hover {
	color: var(--froie-text) !important;
}

/* Separator line — replaces block default styling */
.froie-footer-sep {
	border: none !important;
	border-top: 1px solid var(--froie-border) !important;
	background: transparent !important;
	height: 0 !important;
	opacity: 0.35;
}

/* Bottom bar text */
.froie-footer-copy {
	color: var(--froie-text-muted);
	font-family: var(--froie-font-ui);
	font-size: 0.8rem;
	opacity: 0.7;
}
.froie-footer-copy a {
	color: var(--froie-text-muted);
}
.froie-footer-copy a:hover {
	color: var(--froie-gold);
}

/* ── Single Post — Aged Paper Reading Mode ──────────── */

body.single {
	--paper-bg: #f7f3eb;
	--paper-text: #3e2c1a;
	--paper-text-muted: #7a6850;
	--paper-accent: #8b3a3a;
	--paper-accent-hover: #a84545;
	--paper-border: #e0d7c5;
	--paper-heading: #2c1f0e;
}

body.single,
body.single .wp-site-blocks {
	background-color: var(--paper-bg) !important;
}

body.single,
body.single p,
body.single .wp-block-post-content {
	color: var(--paper-text);
}

body.single h1,
body.single h2,
body.single h3,
body.single h4,
body.single h5,
body.single h6,
body.single .wp-block-post-title {
	color: var(--paper-heading) !important;
}

body.single a:where(:not(.wp-element-button)) {
	color: var(--paper-accent);
}
body.single a:where(:not(.wp-element-button)):hover {
	color: var(--paper-accent-hover);
}

body.single .wp-block-post-date,
body.single .wp-block-post-date a {
	color: var(--paper-text-muted) !important;
}

body.single .wp-block-post-author-name {
	color: var(--paper-text-muted) !important;
}

body.single .wp-block-post-terms a {
	color: var(--paper-text-muted) !important;
	border-color: var(--paper-border) !important;
}
body.single .wp-block-post-terms a:hover {
	color: var(--paper-accent) !important;
	border-color: var(--paper-accent) !important;
}

body.single .wp-block-separator {
	color: var(--paper-border) !important;
}

body.single .wp-block-quote {
	border-left-color: var(--paper-accent);
	color: var(--paper-text-muted);
	padding-left: 1.5rem;
	font-style: italic;
}

body.single figcaption,
body.single .wp-block-image figcaption {
	color: var(--paper-text-muted) !important;
}

body.single .wp-block-post-featured-image img {
	border-radius: 4px;
}

/* Subtle paper surface & grain on content area */
body.single .wp-block-post-content {
	position: relative;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.25) 0%,
		transparent 8%,
		transparent 92%,
		rgba(140, 100, 60, 0.04) 100%
	);
}

body.single .wp-block-post-content::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E");
	background-size: 200px 200px;
	pointer-events: none;
	z-index: 1;
	border-radius: 2px;
}

body.single .wp-block-post-content > * {
	position: relative;
	z-index: 2;
}

/* ── Category / Archive Pages — Light Mode ─────── */

body.archive.category,
body.archive.category .wp-site-blocks {
	--paper-bg: #f7f3eb;
	--paper-text: #3e2c1a;
	--paper-text-muted: #7a6850;
	--paper-accent: #8b3a3a;
	--paper-accent-hover: #a84545;
	--paper-border: #e0d7c5;
	--paper-heading: #2c1f0e;

	background-color: var(--paper-bg) !important;
	color: var(--paper-text);
}

body.archive.category h1,
body.archive.category h2,
body.archive.category h3,
body.archive.category h4,
body.archive.category h5,
body.archive.category h6,
body.archive.category .wp-block-post-title {
	color: var(--paper-heading) !important;
}

body.archive.category .wp-block-query-title {
	font-family: var(--froie-font-heading, 'Fira Sans', sans-serif);
	font-weight: 700;
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.08;
	color: var(--paper-heading) !important;
	margin-bottom: 0.25rem;
}

body.archive.category .wp-block-term-description {
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	color: var(--paper-text-muted);
	font-size: 1.05rem;
	line-height: 1.6;
	max-width: 580px;
}

body.archive.category a:where(:not(.wp-element-button)) {
	color: var(--paper-accent);
}
body.archive.category a:where(:not(.wp-element-button)):hover {
	color: var(--paper-accent-hover);
}

body.archive.category .wp-block-post-date,
body.archive.category .wp-block-post-date a {
	color: var(--paper-text-muted) !important;
}

body.archive.category .wp-block-post-terms a {
	color: var(--paper-text-muted) !important;
	border-color: var(--paper-border) !important;
}
body.archive.category .wp-block-post-terms a:hover {
	color: var(--paper-accent) !important;
	border-color: var(--paper-accent) !important;
}

body.archive.category .wp-block-separator {
	color: var(--paper-border) !important;
}

body.archive.category .wp-block-query-pagination {
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
}

body.archive.category .wp-block-query-pagination a {
	color: var(--paper-accent);
	font-weight: 600;
	font-size: 0.9rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	transition: color 0.2s ease;
}

body.archive.category .wp-block-query-pagination a:hover {
	color: var(--paper-accent-hover);
}

body.archive.category .wp-block-query-pagination .page-numbers {
	border-color: var(--paper-border);
	color: var(--paper-text-muted);
}

body.archive.category .wp-block-query-pagination .page-numbers.current {
	background: var(--paper-accent);
	color: #fff;
	border-color: var(--paper-accent);
}

body.archive.category .wp-block-query-pagination .page-numbers:hover {
	border-color: var(--paper-accent);
	color: var(--paper-accent);
}

body.archive.category .wp-block-post-excerpt,
body.archive.category .wp-block-post-content {
	color: var(--paper-text-muted);
}

/* ── Override global forced dark background on category pages ── */
body.archive.category,
body.archive.category .wp-site-blocks {
	background-color: var(--paper-bg) !important;
}

/* ── Post navigation */
body.single .wp-block-post-navigation-link a {
	color: var(--paper-accent);
}
body.single .wp-block-post-navigation-link a:hover {
	color: var(--paper-accent-hover);
}

/* ── Responsive ────────────────────────────────────── */

@media (max-width: 1024px) {
	.froie-featured .wp-block-cover {
		min-height: 60vh !important;
	}
	.froie-featured .wp-block-post-title {
		font-size: clamp(1.8rem, 4vw, 2.5rem) !important;
	}
}

@media (max-width: 768px) {
	.froie-featured .wp-block-cover {
		min-height: 50vh !important;
		padding-top: var(--wp--preset--spacing--60) !important;
		padding-bottom: var(--wp--preset--spacing--60) !important;
	}
	.froie-featured .wp-block-post-title {
		font-size: clamp(1.4rem, 6vw, 2rem) !important;
	}
	.froie-featured .wp-block-post-excerpt {
		font-size: 0.95rem;
	}
	/* Stack grid to 2 cols */
	.wp-block-post-template.is-layout-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 480px) {
	.froie-featured .wp-block-cover {
		min-height: 40vh !important;
	}
	/* Stack grid to 1 col */
	.wp-block-post-template.is-layout-grid {
		grid-template-columns: 1fr !important;
	}
}

/* ── Contact Form (Fluent Forms) ──────────────────── */

.ff-el-group {
	margin-bottom: 1.5rem;
}

.ff-el-group label {
	display: block;
	margin-bottom: 0.4rem;
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-size: 0.85rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--froie-text-muted, #8a7f72);
}

.ff-el-form-control {
	width: 100%;
	padding: 0.85rem 1rem;
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	font-size: 1rem;
	color: var(--froie-text, #e6ddd0);
	background: var(--froie-surface, #141414);
	border: 1px solid var(--froie-border, #242424);
	border-radius: 0;
	transition: border-color 0.2s ease;
	box-sizing: border-box;
}

.ff-el-form-control:focus {
	outline: none;
	border-color: var(--froie-accent, #b84444);
	background: var(--froie-surface-raised, #1a1a1a);
}

.ff-el-form-control::placeholder {
	color: var(--froie-text-muted, #8a7f72);
	opacity: 0.7;
}

textarea.ff-el-form-control {
	min-height: 140px;
	resize: vertical;
}

.ff-btn-submit {
	display: inline-block;
	padding: 0.85rem 2.5rem;
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--froie-text, #e6ddd0);
	background: var(--froie-accent, #b84444);
	border: none;
	border-radius: 0;
	cursor: pointer;
	transition: background 0.2s ease;
}

.ff-btn-submit:hover {
	background: var(--froie-accent-hover, #d15555);
}

.ff-message-success {
	padding: 1.5rem;
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	color: var(--froie-text, #e6ddd0);
	background: var(--froie-surface-raised, #1a1a1a);
	border: 1px solid var(--froie-border, #242424);
	text-align: center;
}

/* ── Category Sections (Homepage Redesign) ──────────── */

.froie-category-section {
	position: relative;
}

/* Subtle glowing top edge on each section */
.froie-category-section::before {
	content: '';
	position: absolute;
	top: 0;
	left: 15%;
	right: 15%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(184, 68, 68, 0.1), transparent);
	pointer-events: none;
}

/* ── Section Headers ──────────────────────────────── */

.froie-section-head {
	text-align: center;
}

.froie-section-label {
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-weight: 600;
	letter-spacing: 3px;
	text-transform: uppercase;
	color: var(--froie-gold, #c49b5c);
	opacity: 0.6;
	margin-bottom: 0.25rem;
}

.froie-section-title {
	font-family: var(--froie-font-heading, 'Fira Sans', sans-serif);
	font-weight: 700;
	font-size: clamp(1.6rem, 3.5vw, 2.4rem);
	color: var(--froie-text, #e6ddd0);
	line-height: 1.1;
	position: relative;
	display: inline-block;
}

/* Accent underline beneath section title */
.froie-section-title::after {
	content: '';
	display: block;
	width: 32px;
	height: 2px;
	background: var(--froie-accent, #b84444);
	margin: 0.65rem auto 0.5rem;
}

.froie-section-desc {
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	color: var(--froie-text-muted, #8a7f72);
	line-height: 1.6;
	max-width: 520px;
	margin: 0 auto;
}

/* ── Section Footer Link ──────────────────────────── */

.froie-section-footer-link a {
	color: var(--froie-accent, #b84444);
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
	text-decoration: none;
	transition: color 0.2s ease, letter-spacing 0.2s ease;
	font-size: 0.8rem;
}

.froie-section-footer-link a:hover {
	color: var(--froie-accent-hover, #d15555);
	letter-spacing: 2.5px;
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ── Decorative Section Divider ───────────────────── */

.froie-sep-wrap {
	position: relative;
	text-align: center;
	overflow: hidden;
}

.froie-sep-wrap::before {
	content: '';
	position: absolute;
	left: 5%;
	right: 5%;
	top: 50%;
	height: 1px;
	background: var(--froie-border, #242424);
	opacity: 0.25;
	pointer-events: none;
}

.froie-sep-ornament {
	position: relative;
	z-index: 1;
	display: inline-block !important;
	width: auto !important;
	background: var(--froie-bg, #0a0a0a);
	padding: 0 1.25rem;
	color: var(--froie-text-muted, #8a7f72);
	opacity: 0.3;
	letter-spacing: 0.5em;
	margin: 0;
	font-size: 0.65rem;
	line-height: 1;
}

/* ── Grid Card Excerpt ────────────────────────────── */

.froie-card-excerpt {
	padding: 0 0.75rem;
	color: var(--froie-text-muted, #8a7f72);
	line-height: 1.5;
	margin: 0;
}
.froie-card-excerpt p {
	margin: 0;
}

/* ── Prompt Spotlight ─────────────────────────────── */

.froie-promo-section {
	background: linear-gradient(180deg,
		transparent 0%,
		rgba(184, 68, 68, 0.02) 30%,
		rgba(184, 68, 68, 0.04) 60%,
		transparent 100%
	);
}

.froie-prompt-spotlight {
	background: linear-gradient(135deg, #16100c 0%, #141414 50%, #120e0a 100%);
	border: 1px solid var(--froie-border, #242424);
	border-top: 2px solid var(--froie-gold, #c49b5c);
	padding: 3rem 2rem;
	text-align: center;
	position: relative;
	transition: border-color 0.3s ease;
}

.froie-prompt-spotlight:hover {
	border-color: rgba(196, 155, 92, 0.3);
}

/* Subtle grain texture overlay */
.froie-prompt-spotlight::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.015'/%3E%3C/svg%3E");
	background-size: 200px 200px;
	pointer-events: none;
	z-index: 0;
	border-radius: 2px;
}

.froie-prompt-spotlight > * {
	position: relative;
	z-index: 1;
}

.froie-prompt-badge {
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-weight: 600;
	letter-spacing: 2.5px;
	text-transform: uppercase;
	color: var(--froie-gold, #c49b5c);
	margin-bottom: 0.5rem;
}

.froie-prompt-title {
	font-family: var(--froie-font-heading, 'Fira Sans', sans-serif);
	font-weight: 700;
	font-size: clamp(1.4rem, 3vw, 2rem);
	color: var(--froie-text, #e6ddd0);
	line-height: 1.2;
}

.froie-prompt-desc {
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	color: var(--froie-text-muted, #8a7f72);
	max-width: 580px;
	margin: 0 auto;
}

.froie-btn-prompt .wp-block-button__link {
	background: transparent;
	border: 1px solid var(--froie-gold, #c49b5c);
	color: var(--froie-gold, #c49b5c);
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 0.85rem 2.5rem;
	border-radius: 0;
	transition: background 0.25s ease, color 0.25s ease;
}

.froie-btn-prompt .wp-block-button__link:hover {
	background: var(--froie-gold, #c49b5c);
	color: #0a0a0a;
}

/* ── CTA Section ──────────────────────────────────── */

.froie-cta-section {
	text-align: center;
	background: linear-gradient(180deg,
		transparent 0%,
		rgba(196, 155, 92, 0.02) 50%,
		transparent 100%
	);
	border-top: 1px solid var(--froie-border, #242424);
	border-bottom: 1px solid var(--froie-border, #242424);
}

.froie-cta-title {
	font-family: var(--froie-font-heading, 'Fira Sans', sans-serif);
	font-weight: 700;
	font-size: clamp(1.5rem, 3.5vw, 2.2rem);
	color: var(--froie-text, #e6ddd0);
}

.froie-cta-desc {
	font-family: var(--froie-font-body, 'Literata', Georgia, serif);
	color: var(--froie-text-muted, #8a7f72);
	max-width: 540px;
	margin: 0 auto;
}

.froie-btn-cta .wp-block-button__link {
	background: var(--froie-accent, #b84444);
	color: #fff;
	font-family: var(--froie-font-ui, 'Fira Sans', sans-serif);
	font-size: 0.85rem;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	padding: 0.85rem 2.5rem;
	border-radius: 0;
	transition: background 0.25s ease;
}

.froie-btn-cta .wp-block-button__link:hover {
	background: var(--froie-accent-hover, #d15555);
}

/* ── Responsive Adjustments ───────────────────────── */

@media (max-width: 768px) {
	.froie-section-title {
		font-size: 1.4rem;
	}
	.froie-prompt-spotlight {
		padding: 2rem 1.25rem;
	}
	.froie-prompt-title {
		font-size: 1.35rem;
	}
	.froie-sep-wrap::before {
		left: 8%;
		right: 8%;
	}
}

@media (max-width: 480px) {
	.froie-section-title {
		font-size: 1.2rem;
	}
	.froie-prompt-title {
		font-size: 1.15rem;
	}
	.froie-prompt-spotlight {
		padding: 1.5rem 1rem;
	}
}
