/*
Theme Name: FinStack Calc
Theme URI: https://example.com/finstack-calc
Author: Your Name
Author URI: https://example.com
Description: A lightweight, SEO-optimized WordPress theme built for financial calculator sites (SIP, EMI, Lumpsum, PPF, FD, etc). No calculator plugins used — all calculators are custom-coded, fast-loading and dependency-free.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: finstack-calc
Tags: finance, calculator, custom-colors, one-column, two-columns, custom-menu, sticky-post, threaded-comments, translation-ready

FinStack Calc WordPress Theme is released under the terms of GNU GPL.
*/

/* -----------------------------------------
   1. Reset (minimal, not a full normalize)
------------------------------------------ */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--fc-text);
	background: var(--fc-bg);
	line-height: 1.6;
	font-size: 16px;
}
img { max-width: 100%; height: auto; display: block; }
a { color: var(--fc-primary); text-decoration: none; }
a:hover, a:focus { color: var(--fc-accent-dark); }
ul, ol { padding-left: 1.2em; }
table { border-collapse: collapse; width: 100%; }

/* -----------------------------------------
   2. Color system — finance-appropriate palette
   Deep navy (trust) + teal/green (growth) + gold (premium)
------------------------------------------ */
:root {
	--fc-primary: #14213D;      /* dark navy — headers, nav, CTAs */
	--fc-primary-dark: #000000; /* true black — darkest gradient stop, footer */
	--fc-secondary: #1F3358;    /* lighter navy tint — "invested" segment, sliders */
	--fc-accent: #FCA311;       /* gold — "returns" segment, highlights, CTAs */
	--fc-accent-dark: #DB8B08;
	--fc-gold: #FCA311;
	--fc-bg: #E5E5E5;
	--fc-surface: #FFFFFF;
	--fc-text: #000000;         /* dark black body text, as requested */
	--fc-text-muted: #33363B;
	--fc-border: #D8D8D8;
	--fc-danger: #DC2626;
	--fc-success: #14213D;
	--fc-radius: 10px;
	--fc-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
	--fc-container: 1140px;
}

/* -----------------------------------------
   3. Layout
------------------------------------------ */
.fc-container {
	max-width: var(--fc-container);
	margin: 0 auto;
	padding: 0 20px;
}
.site-content { padding: 40px 0; }
.fc-grid { display: grid; gap: 24px; }
.fc-grid-2 { grid-template-columns: 1fr; }
@media (min-width: 782px) {
	.fc-grid-2 { grid-template-columns: 1.2fr 1fr; }
}
.fc-grid-cards { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }

/* -----------------------------------------
   4. Header
------------------------------------------ */
.site-header {
	background: var(--fc-primary);
	position: sticky;
	top: 0;
	z-index: 100;
	box-shadow: 0 1px 0 rgba(255,255,255,0.06);
}
.site-header .fc-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 66px;
}
.site-branding a {
	color: #fff;
	font-weight: 800;
	font-size: 1.35rem;
	letter-spacing: -0.02em;
}
.site-branding a span { color: var(--fc-gold); }
.site-branding img { max-height: 40px; }

.primary-menu { display: flex; list-style: none; margin: 0; padding: 0; gap: 4px; }
.primary-menu li a {
	display: block;
	color: rgba(255,255,255,0.85);
	padding: 10px 14px;
	border-radius: 6px;
	font-weight: 600;
	font-size: 0.95rem;
}
.primary-menu li a:hover, .primary-menu li.current-menu-item a {
	background: rgba(255,255,255,0.08);
	color: #fff;
}
.menu-toggle {
	display: none;
	background: none;
	border: 1px solid rgba(255,255,255,0.3);
	color: #fff;
	padding: 8px 12px;
	border-radius: 6px;
	cursor: pointer;
}
@media (max-width: 781px) {
	.menu-toggle { display: inline-block; }
	.primary-menu {
		display: none;
		position: absolute;
		top: 66px; left: 0; right: 0;
		background: var(--fc-primary-dark);
		flex-direction: column;
		padding: 10px;
	}
	.primary-menu.is-open { display: flex; }
}

/* -----------------------------------------
   5. Hero
------------------------------------------ */
.fc-hero {
	background: linear-gradient(135deg, var(--fc-primary) 0%, var(--fc-secondary) 100%);
	color: #fff;
	padding: 56px 0;
	text-align: center;
}
.fc-hero h1 { font-size: clamp(1.6rem, 3vw, 2.4rem); margin: 0 0 12px; }
.fc-hero p { color: rgba(255,255,255,0.85); max-width: 640px; margin: 0 auto; }

/* -----------------------------------------
   6. Cards (calculator index / related tools)
------------------------------------------ */
.fc-card {
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	padding: 22px;
	box-shadow: var(--fc-shadow);
	transition: transform .15s ease, box-shadow .15s ease;
}
.fc-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(11,37,69,0.12); }
.fc-card h3 { margin: 8px 0; font-size: 1.1rem; }
.fc-card p { color: var(--fc-text-muted); font-size: 0.92rem; margin: 0 0 12px; }
.fc-badge {
	display: inline-block;
	background: rgba(22,160,133,0.12);
	color: var(--fc-accent-dark);
	font-size: 0.72rem;
	font-weight: 700;
	padding: 3px 9px;
	border-radius: 20px;
	text-transform: uppercase;
	letter-spacing: .04em;
}

/* -----------------------------------------
   7. Calculator widget
------------------------------------------ */
.fc-calculator {
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	box-shadow: var(--fc-shadow);
	overflow: hidden;
	max-width: 560px;   /* prevents range inputs/text stretching too wide on desktop */
	margin: 0 auto;
	width: 100%;
}
/* Standalone calculator page layout: calculator centered on top, article full-width below */
.fc-calc-page-wrap { max-width: 640px; margin: 0 auto; }
.fc-article-wrap { max-width: 780px; margin: 40px auto 0; }
.fc-article-wrap .entry-content { font-size: 1rem; }
.fc-article-wrap .entry-content > *:first-child { margin-top: 0; }
.fc-calc-header {
	background: var(--fc-primary);
	color: #fff;
	padding: 16px 22px;
}
.fc-calc-header h2 { margin: 0; font-size: 1.15rem; }
.fc-calc-body { padding: 22px; }

.fc-field { margin-bottom: 22px; }
.fc-field > label {
	display: block;
	font-weight: 700;
	font-size: 0.9rem;
	color: var(--fc-text);
	margin-bottom: 8px;
}
.fc-input-box {
	display: flex;
	align-items: center;
	gap: 6px;
	border: 1.5px solid var(--fc-border);
	border-radius: 8px;
	padding: 10px 14px;
	background: var(--fc-bg);
	margin-bottom: 10px;
}
.fc-input-box:focus-within { border-color: var(--fc-secondary); background: var(--fc-surface); }
.fc-input-box .fc-currency-symbol { font-weight: 700; color: var(--fc-primary); font-size: 1.1rem; }
.fc-input-box input[type="number"],
.fc-input-box input[type="text"] {
	border: none;
	background: transparent;
	outline: none;
	font-weight: 800;
	font-size: 1.25rem;
	color: var(--fc-primary);
	width: 100%;
	padding: 0;
	-moz-appearance: textfield;
}
.fc-input-box input[type="number"]::-webkit-outer-spin-button,
.fc-input-box input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.fc-input-box .fc-suffix { font-weight: 700; color: var(--fc-text-muted); font-size: 1rem; }
.fc-field input[type="range"] {
	display: block;
	width: 100%;
	accent-color: var(--fc-secondary);
	height: 6px;
	margin: 4px 0 2px;
	padding: 0;
}
.fc-slider-minmax {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.76rem;
	color: var(--fc-text-muted);
	margin-top: 2px;
	line-height: 1.2;
}
.fc-slider-minmax span:first-child { text-align: left; }
.fc-slider-minmax span:last-child { text-align: right; }
.fc-toggle { display: flex; gap: 8px; background: var(--fc-bg); border-radius: 8px; padding: 4px; }
.fc-toggle button {
	flex: 1;
	border: none;
	background: transparent;
	padding: 8px 10px;
	border-radius: 6px;
	font-weight: 600;
	cursor: pointer;
	color: var(--fc-text-muted);
	font-size: 0.85rem;
}
.fc-toggle button.is-active { background: var(--fc-primary); color: #fff; }

.fc-calc-section-title {
	font-weight: 700;
	font-size: 0.95rem;
	color: var(--fc-primary);
	text-align: center;
	margin: 22px 0 6px;
	padding-top: 18px;
	border-top: 1px solid var(--fc-border);
}
.fc-results {
	background: var(--fc-bg);
	border-radius: var(--fc-radius);
	padding: 18px;
	margin-top: 8px;
}
.fc-result-row {
	display: flex;
	justify-content: space-between;
	padding: 8px 0;
	border-bottom: 1px dashed var(--fc-border);
	font-size: 0.92rem;
}
.fc-result-row:last-child { border-bottom: none; }
.fc-result-row.is-total {
	font-weight: 800;
	font-size: 1.05rem;
	color: var(--fc-primary);
	border-top: 2px solid var(--fc-border);
	margin-top: 4px;
	padding-top: 12px;
}
.fc-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 6px; }
.fc-dot.invested { background: var(--fc-secondary); }
.fc-dot.returns, .fc-dot.interest { background: var(--fc-accent); }
.fc-dot.principal { background: var(--fc-secondary); }

/* -----------------------------------------
   7b. Donut chart (pure CSS conic-gradient — no chart library)
------------------------------------------ */
.fc-pie-wrap {
	position: relative;
	width: 200px;
	height: 200px;
	margin: 8px auto 18px;
}
.fc-pie {
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: conic-gradient(var(--fc-secondary) 0deg 180deg, var(--fc-accent) 180deg 360deg);
	transition: background 0.2s ease;
}
.fc-pie-hole {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 60%;
	height: 60%;
	background: var(--fc-surface);
	border-radius: 50%;
}
.fc-pie-legend { display: flex; justify-content: center; gap: 26px; font-size: 0.88rem; margin-bottom: 16px; flex-wrap: wrap; }
.fc-pie-legend .fc-pie-legend-item { text-align: left; }
.fc-pie-legend .fc-pie-legend-item .fc-pie-legend-title { color: var(--fc-text-muted); font-size: 0.8rem; display: block; margin-bottom: 2px; }
.fc-pie-legend .fc-pie-legend-item strong { font-size: 1rem; color: var(--fc-text); }
.fc-pie-legend span.fc-dot { margin-right: 4px; }

/* -----------------------------------------
   7c. Expected maturity highlight box
------------------------------------------ */
.fc-maturity-box {
	background: linear-gradient(135deg, var(--fc-primary) 0%, var(--fc-secondary) 100%);
	color: #fff;
	border-radius: var(--fc-radius);
	padding: 18px 20px;
	text-align: center;
	margin-top: 4px;
}
.fc-maturity-box .fc-maturity-label { font-size: 0.82rem; color: rgba(255,255,255,0.8); margin-bottom: 4px; }
.fc-maturity-box .fc-maturity-amount { font-size: 1.6rem; font-weight: 800; color: var(--fc-gold); }

/* -----------------------------------------
   7d. Projection table (returns across durations)
------------------------------------------ */
.fc-projection { margin: 26px auto 0; max-width: 560px; }
.fc-projection-note {
	background: #E7F2FB;
	color: var(--fc-secondary);
	border-radius: var(--fc-radius);
	padding: 14px 18px;
	font-size: 0.9rem;
	margin-bottom: 14px;
}
.fc-projection-note strong { color: var(--fc-primary); }
.fc-table-wrap {
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.fc-table-wrap table { width: 100%; min-width: 420px; border-collapse: collapse; font-size: 0.9rem; }
.fc-table-wrap thead th {
	background: var(--fc-primary);
	color: #fff;
	padding: 10px 14px;
	text-align: left;
	font-size: 0.82rem;
	text-transform: uppercase;
	letter-spacing: .03em;
}
.fc-table-wrap tbody td { padding: 10px 14px; border-bottom: 1px solid var(--fc-border); }
.fc-table-wrap tbody tr:nth-child(even) { background: var(--fc-bg); }
.fc-table-wrap tbody tr.is-current { background: #FFF3CD; font-weight: 700; }
.fc-table-wrap tbody tr:last-child td { border-bottom: none; }

/* -----------------------------------------
   7e. FAQ accordion (SEO content block)
------------------------------------------ */
.fc-faq { margin-top: 20px; }
.fc-faq-item {
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	margin-bottom: 10px;
	overflow: hidden;
}
.fc-faq-q {
	width: 100%;
	text-align: left;
	background: none;
	border: none;
	padding: 14px 18px;
	font-weight: 700;
	font-size: 0.95rem;
	color: var(--fc-primary);
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.fc-faq-q::after { content: '+'; font-size: 1.2rem; color: var(--fc-accent); }
.fc-faq-item.is-open .fc-faq-q::after { content: '\2212'; }
.fc-faq-a { padding: 0 18px; max-height: 0; overflow: hidden; transition: max-height .2s ease; color: var(--fc-text-muted); font-size: 0.9rem; }
.fc-faq-item.is-open .fc-faq-a { padding: 0 18px 16px; max-height: 500px; }

/* -----------------------------------------
   6b. Homepage — category sections, icons, features, CTA band
------------------------------------------ */
.fc-home-hero {
	background: linear-gradient(135deg, var(--fc-primary) 0%, var(--fc-secondary) 55%, var(--fc-accent-dark) 130%);
	color: #fff;
	padding: 64px 0 76px;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.fc-home-hero h1 { font-size: clamp(1.8rem, 4vw, 2.7rem); margin: 0 0 14px; }
.fc-home-hero p { color: rgba(255,255,255,0.88); max-width: 620px; margin: 0 auto 26px; font-size: 1.05rem; }
.fc-home-hero-stats { display: flex; justify-content: center; gap: 36px; flex-wrap: wrap; margin-top: 30px; }
.fc-home-hero-stats div { text-align: center; }
.fc-home-hero-stats strong { display: block; font-size: 1.6rem; color: var(--fc-gold); }
.fc-home-hero-stats span { font-size: 0.8rem; color: rgba(255,255,255,0.75); text-transform: uppercase; letter-spacing: .04em; }

.fc-section { padding: 50px 0; }
.fc-section-head { text-align: center; max-width: 620px; margin: 0 auto 32px; }
.fc-section-head .fc-eyebrow {
	display: inline-block;
	color: var(--fc-accent-dark);
	background: rgba(22,160,133,0.1);
	font-size: 0.72rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: .06em;
	padding: 4px 12px;
	border-radius: 20px;
	margin-bottom: 10px;
}
.fc-section-head h2 { font-size: 1.6rem; color: var(--fc-primary); margin: 0 0 8px; }
.fc-section-head p { color: var(--fc-text-muted); margin: 0; }

.fc-category-block { margin-bottom: 44px; }
.fc-category-head { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; }
.fc-category-head .fc-cat-icon {
	width: 36px; height: 36px; border-radius: 9px;
	display: flex; align-items: center; justify-content: center;
	font-size: 1.15rem; background: var(--fc-bg); flex-shrink: 0;
}
.fc-category-head h3 { margin: 0; font-size: 1.15rem; color: var(--fc-primary); }
.fc-category-head .fc-cat-count { color: var(--fc-text-muted); font-size: 0.82rem; margin-left: auto; }

.fc-tool-card {
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	padding: 20px;
	display: flex;
	flex-direction: column;
	height: 100%;
	transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.fc-tool-card:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(11,37,69,0.12); border-color: transparent; }
.fc-tool-card .fc-tool-icon {
	width: 44px; height: 44px; border-radius: 10px;
	display: flex; align-items: center; justify-content: center;
	font-size: 1.4rem; margin-bottom: 12px;
	background: rgba(22,160,133,0.1);
}
.fc-tool-card h4 { margin: 0 0 6px; font-size: 1.02rem; color: var(--fc-text); }
.fc-tool-card p { color: var(--fc-text-muted); font-size: 0.87rem; margin: 0 0 14px; flex-grow: 1; }
.fc-tool-card .fc-tool-link {
	font-weight: 700; font-size: 0.87rem; color: var(--fc-accent-dark);
	display: inline-flex; align-items: center; gap: 4px;
}
.fc-tool-card .fc-tool-link:hover { color: var(--fc-primary); }
.fc-tool-card.is-soon { opacity: 0.6; }
.fc-tool-card.is-soon .fc-tool-link { color: var(--fc-text-muted); pointer-events: none; }

.fc-features { background: var(--fc-surface); }
.fc-feature { text-align: center; padding: 10px; }
.fc-feature .fc-feature-icon {
	width: 54px; height: 54px; margin: 0 auto 14px;
	border-radius: 50%; background: var(--fc-bg);
	display: flex; align-items: center; justify-content: center;
	font-size: 1.5rem;
}
.fc-feature h4 { margin: 0 0 6px; font-size: 1rem; color: var(--fc-primary); }
.fc-feature p { margin: 0; font-size: 0.85rem; color: var(--fc-text-muted); }

.fc-recent-posts-scroll {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 4px 4px 14px;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	scrollbar-color: var(--fc-secondary) var(--fc-bg);
}
.fc-recent-posts-scroll::-webkit-scrollbar { height: 6px; }
.fc-recent-posts-scroll::-webkit-scrollbar-thumb { background: var(--fc-border); border-radius: 6px; }
.fc-recent-posts-scroll::-webkit-scrollbar-thumb:hover { background: var(--fc-secondary); }
.fc-post-card {
	display: block;
	flex: 0 0 220px;
	scroll-snap-align: start;
	background: var(--fc-surface);
	border: 1px solid var(--fc-border);
	border-radius: var(--fc-radius);
	overflow: hidden;
	transition: transform .15s ease, box-shadow .15s ease;
}
.fc-post-card:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(0,0,0,0.12); }
.fc-post-card .fc-post-thumb { width: 100%; aspect-ratio: 16/10; object-fit: cover; background: var(--fc-bg); display: block; }
.fc-post-card .fc-post-thumb-fallback { width: 100%; aspect-ratio: 16/10; background: linear-gradient(135deg, var(--fc-primary), var(--fc-secondary)); display: flex; align-items: center; justify-content: center; color: rgba(255,255,255,0.6); font-size: 2rem; }
.fc-post-card .fc-post-body { padding: 14px 16px; }
.fc-post-card h4 { margin: 0; font-size: 0.95rem; color: var(--fc-text); line-height: 1.4; }
.fc-post-card:hover h4 { color: var(--fc-secondary); }

.fc-cta-band {
	background: linear-gradient(135deg, var(--fc-primary) 0%, var(--fc-secondary) 100%);
	color: #fff;
	border-radius: var(--fc-radius);
	padding: 40px 30px;
	text-align: center;
}
.fc-cta-band h2 { margin: 0 0 10px; font-size: 1.4rem; }
.fc-cta-band p { color: rgba(255,255,255,0.85); margin: 0 0 20px; }
.fc-cta-band .fc-cta { background: var(--fc-gold); color: var(--fc-primary-dark); }
.fc-cta-band .fc-cta:hover { background: #dfb646; }

.fc-cta {
	display: inline-block;
	background: var(--fc-accent);
	color: var(--fc-primary-dark);
	font-weight: 700;
	padding: 10px 18px;
	border-radius: 8px;
	border: none;
	cursor: pointer;
	font-size: 0.9rem;
}
.fc-cta:hover { background: var(--fc-accent-dark); color: #fff; }

.fc-note { font-size: 0.78rem; color: var(--fc-text-muted); margin-top: 14px; }

/* -----------------------------------------
   8. Content / article
------------------------------------------ */
.entry-content h2 { color: var(--fc-primary); margin-top: 1.6em; }
.entry-content h3 { color: var(--fc-secondary); }
.entry-content table th { background: var(--fc-primary); color: #fff; padding: 10px; text-align: left; }
.entry-content table td { padding: 10px; border-bottom: 1px solid var(--fc-border); }

/* -----------------------------------------
   9. Footer
------------------------------------------ */
.site-footer {
	background: var(--fc-primary-dark);
	color: rgba(255,255,255,0.75);
	padding: 40px 0 20px;
	margin-top: 40px;
	font-size: 0.88rem;
}
.site-footer a { color: rgba(255,255,255,0.85); }
.site-footer a:hover { color: var(--fc-gold); }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 24px; margin-bottom: 24px; }
.footer-grid h4 { color: #fff; font-size: 0.95rem; margin-bottom: 10px; }
.footer-grid ul { list-style: none; padding: 0; margin: 0; }
.footer-grid ul li { margin-bottom: 6px; }
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.1); padding-top: 16px; text-align: center; font-size: 0.8rem; }

/* -----------------------------------------
   10. Accessibility / utility
------------------------------------------ */
.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(1px,1px,1px,1px);
}
.skip-link {
	position: absolute; left: -999px; top: 0;
	background: var(--fc-accent); color: var(--fc-primary-dark);
	padding: 10px 16px; z-index: 999; font-weight: 700;
}
.skip-link:focus { left: 10px; top: 10px; }

/* -----------------------------------------
   11. Mobile optimization (phones, <600px)
------------------------------------------ */
@media (max-width: 600px) {
	.fc-container { padding: 0 16px; }
	.site-content { padding: 24px 0; }

	.fc-hero, .fc-home-hero { padding: 36px 0 44px; }
	.fc-hero h1 { font-size: 1.5rem; }
	.fc-hero p { font-size: 0.92rem; }

	.fc-home-hero-stats { gap: 22px; margin-top: 22px; }
	.fc-home-hero-stats strong { font-size: 1.25rem; }

	.fc-section { padding: 34px 0; }
	.fc-section-head h2 { font-size: 1.3rem; }

	.fc-calc-header h2 { font-size: 1rem; }
	.fc-calc-body { padding: 16px; }
	.fc-input-box input[type="number"] { font-size: 1.1rem; }

	.fc-pie-wrap { width: 168px; height: 168px; }

	.fc-maturity-box .fc-maturity-amount { font-size: 1.3rem; }

	.fc-cta-band { padding: 28px 18px; }
	.fc-cta-band h2 { font-size: 1.15rem; }

	.fc-post-card { flex-basis: 78vw; max-width: 260px; }

	.fc-grid-cards { grid-template-columns: 1fr; }
	.fc-category-head .fc-cat-count { display: none; }
}
