/*
Theme Name: Liberia Civic
Theme URI: https://liberiacivic.org/
Author: Legacy MediaTech
Description: A high-impact Liberian civic, elections, politics and public-information block theme.
Version: 1.0.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: liberia-civic
*/

:root { --lc-red:#bf0a30; --lc-blue:#002868; --lc-ink:#0a1830; --lc-paper:#f7f8fb; --lc-gold:#f3c448; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { background:var(--lc-paper); color:var(--lc-ink); }
a { text-underline-offset:.18em; }
.wp-site-blocks { overflow:hidden; }
.lc-flagline { height:8px; background:repeating-linear-gradient(90deg,var(--lc-red) 0 9%,#fff 9% 18%,var(--lc-blue) 18% 27%); }
.lc-header { box-shadow:0 12px 32px rgba(0,40,104,.16); position:relative; z-index:20; }
.lc-brand-star { align-items:center; background:var(--lc-blue); border:2px solid rgba(255,255,255,.55); border-radius:50%; color:white; display:inline-flex; font-size:1.35rem; height:46px; justify-content:center; width:46px; }
.lc-kicker { letter-spacing:.14em; text-transform:uppercase; }
main { min-height:60vh; }
main > .wp-block-post-content > :where(h1,h2,h3,p,ul,ol,.wp-block-buttons):not(.alignwide):not(.alignfull),
main > :where(h1,h2,h3,p,ul,ol):not(.alignwide):not(.alignfull) { max-width:1160px; margin-left:auto; margin-right:auto; }
.wp-block-post-title { max-width:1160px; }
.wp-block-post-content h1 { font-size:clamp(2.6rem,7vw,5.8rem); letter-spacing:-.055em; line-height:.93; }
.wp-block-post-content h2 { color:var(--lc-blue); font-size:clamp(1.8rem,4vw,3.2rem); letter-spacing:-.035em; }
.wp-block-post-content h3 { color:var(--lc-red); }
.wp-block-button__link { box-shadow:0 8px 18px rgba(191,10,48,.22); font-weight:800; text-transform:uppercase; letter-spacing:.045em; }
.le-archive,.le-parties { max-width:1160px!important; margin:2rem auto 5rem!important; }
.le-archive>header,.le-parties>header { background:linear-gradient(125deg,var(--lc-blue),#103f86); border-radius:24px 24px 0 0; color:white; padding:2rem; position:relative; overflow:hidden; }
.le-archive>header:after,.le-parties>header:after { content:'★'; color:white; opacity:.11; font-size:11rem; line-height:1; position:absolute; right:2rem; top:-2.2rem; }
.le-archive>header h2,.le-parties>header h2 { color:white; margin:.3rem 0; }
.le-archive>header span,.le-parties>header span { color:#fff; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.le-party-grid,.le-years { background:white; border:1px solid #dfe5ef; border-top:5px solid var(--lc-red); padding:1.2rem; }
.le-party-grid article,.le-years article { border:1px solid #e1e6ef; border-radius:16px; box-shadow:0 8px 24px rgba(0,40,104,.07); transition:.2s ease; }
.le-party-grid article:hover,.le-years article:hover { border-color:var(--lc-red); box-shadow:0 14px 34px rgba(0,40,104,.14); transform:translateY(-3px); }
.le-party-grid article>b,.le-years article>b { background:var(--lc-red); color:white; border-radius:999px; padding:.3rem .65rem; }
.le-party-grid input[type=search],input[data-le-party-search] { border:2px solid rgba(255,255,255,.7); border-radius:999px; padding:.8rem 1.1rem; width:min(100%,420px); }
.lc-footer { border-top:6px solid var(--lc-red); }
@media (max-width:780px){.lc-header-row{gap:1rem!important}.lc-header .wp-block-navigation{width:100%}.le-archive,.le-parties{margin-left:1rem!important;margin-right:1rem!important}.wp-block-post-content{padding-left:1rem;padding-right:1rem}}
