/*
Theme Name: ProFocis
Description: ProFocis civic-action theme (navy, ivory, crimson, brass).
Version: 0.1.0
Text Domain: profocis
*/
:root{--navy:#14284B;--navy-deep:#0E1D38;--ivory:#F6F2E9;--cream:#F8F4EA;--stone:#D9D2C0;--crimson:#A62B34;--brass:#E3D3A1;--brass-deep:#8A6A1F;--ink-muted:#2B3B5C;--ink-soft:#3A3A34;--bar:#0B0F17;--serif:"Libre Baskerville",Georgia,serif;--sans:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--ivory);color:var(--navy);font:400 16px/26px var(--sans)}
img{max-width:100%;height:auto}
a{color:var(--crimson)}
h1,h2,h3,h4{font-family:var(--serif);line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(32px,5vw,48px)}h2{font-size:clamp(26px,3.5vw,36px)}h3{font-size:22px}
.pf-wrap{max-width:1180px;margin:0 auto;padding:56px 24px}
.pf-narrow{max-width:820px}
.pf-k{font:800 12px/18px var(--sans);letter-spacing:.14em;color:var(--crimson);margin:0 0 6px}
.pf-muted{color:var(--ink-muted);font-size:15px}
.pf-bar{background:var(--bar);color:#fff;font:600 14px var(--sans)}
.pf-bar .in{max-width:1180px;margin:0 auto;padding:10px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.pf-bar a{color:#fff;text-decoration:none}
.pf-pill{background:var(--brass);color:var(--navy)!important;border-radius:999px;padding:8px 18px;font-weight:700}
.pf-head{background:#fff;border-bottom:1px solid var(--stone);position:relative;z-index:5}
.pf-head .in{max-width:1180px;margin:0 auto;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.pf-logo{font:700 26px var(--serif);letter-spacing:.05em;color:var(--navy);text-decoration:none}
.pf-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:30px}
.pf-nav li{position:relative}
.pf-nav a{color:var(--navy);text-decoration:none;font-weight:600}
.pf-nav .menu-item-has-children>a:after{content:" \25BE"}
.pf-nav ul ul{display:none;position:absolute;top:100%;left:-12px;background:#fff;border:1px solid var(--stone);padding:10px 14px;min-width:200px;flex-direction:column;gap:8px}
.pf-nav li:hover>ul,.pf-nav li:focus-within>ul{display:flex}
.pf-burger{display:none;background:none;border:2px solid var(--navy);border-radius:4px;padding:8px 12px;font:700 14px var(--sans);color:var(--navy)}
.pf-btn{display:inline-block;font:700 16px/20px var(--sans);padding:14px 26px;border-radius:4px;border:2px solid transparent;text-decoration:none;cursor:pointer;min-height:44px}
.pf-btn-red{background:var(--crimson);color:#fff}.pf-btn-navy{background:var(--navy);color:#fff}
.pf-btn-outline{background:transparent;color:var(--navy);border-color:var(--navy)}
.pf-btn-brass{background:var(--brass);color:var(--navy);border-radius:999px}
.pf-hero{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.pf-hero:before{content:"";position:absolute;top:0;bottom:0;right:22%;width:150px;background:var(--crimson);transform:skewX(-14deg)}
.pf-hero:after{content:"";position:absolute;top:0;bottom:0;right:12%;width:34px;background:var(--brass);transform:skewX(-14deg)}
.pf-hero .in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:84px 24px;display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.pf-hero h1{font-size:clamp(40px,7vw,84px);line-height:1}
.pf-hero h1 i{color:var(--brass)}
.pf-hero p.lead{font-size:19px;line-height:30px;color:#E7E3D6;max-width:520px}
.pf-feature{background:#fff;color:var(--navy);padding:26px;box-shadow:0 16px 40px rgba(0,0,0,.3)}
.pf-feature h3{margin:8px 0 10px}
.pf-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:20px}
.pf-tile{display:block;padding:24px;min-height:170px;color:#fff;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between}
.pf-tile b{font:800 13px var(--sans);letter-spacing:.14em}
.pf-tile h3{margin:0;font-size:26px}.pf-tile span{font-size:14px}
.t1{background:var(--navy)}.t1 b{color:var(--brass)}.t2{background:var(--crimson)}.t3{background:var(--brass);color:var(--navy)}.t4{background:var(--navy-deep)}.t4 b{color:var(--brass)}
.pf-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:20px}
.pf-card{background:#fff;border:1px solid var(--stone);display:block;text-decoration:none;color:var(--navy)}
.pf-card .ph{height:150px;background:repeating-linear-gradient(115deg,var(--navy) 0 14px,var(--ink-muted) 14px 28px)}
.pf-card:nth-child(2) .ph{background:repeating-linear-gradient(115deg,var(--crimson) 0 14px,#8c2029 14px 28px)}
.pf-card:nth-child(3) .ph{background:repeating-linear-gradient(115deg,var(--brass-deep) 0 14px,#76591a 14px 28px)}
.pf-card .tx{padding:20px}
.pf-band{background:var(--navy);color:#fff}
.pf-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.pf-stats b{display:block;font:700 clamp(36px,5vw,56px)/1 var(--serif);color:var(--brass)}
.pf-stats span{font-size:14px;font-weight:500}
.pf-stats-light b{color:var(--crimson)}
.pf-orgs{list-style:none;margin:0 0 20px;padding:0}
.pf-orgs li{display:grid;grid-template-columns:44px 1fr auto;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--stone)}
.pf-rank{font:700 22px var(--serif);color:var(--brass-deep)}
.pf-orgs a{color:var(--navy);font-weight:600;text-decoration:none}.pf-handle{color:var(--ink-muted);font-weight:400;font-size:14px}
.pf-ocount{font-weight:700}
.pf-cta{background:var(--crimson);color:#fff;text-align:center}
.pf-cta .pf-wrap{padding:64px 24px}
.pf-foot{background:var(--bar);color:#fff}
.pf-foot .in{max-width:1180px;margin:0 auto;padding:44px 24px;display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
.pf-foot a{color:#E7E3D6;text-decoration:none;display:block;line-height:30px}
.pf-foot h4{color:var(--brass);font:800 13px var(--sans);letter-spacing:.14em;margin:0 0 6px}
.pf-form label{display:block;margin:0 0 16px;font-weight:600}
.pf-form input[type=text],.pf-form input[type=email],.pf-form input[type=password],#loginform input[type=text],#loginform input[type=password]{display:block;width:100%;max-width:420px;padding:12px;border:1px solid var(--stone);border-radius:4px;font:16px var(--sans);margin-top:6px;background:#fff}
.pf-form small{display:block;font-weight:400;color:var(--ink-muted)}
.pf-check{font-weight:400!important}
.pf-note{padding:14px 18px;border-radius:4px;margin:0 0 20px}.pf-ok{background:#E6EEDC;color:#23421a}.pf-err{background:#F6DADA;color:#6b1a1f}
#loginform input[type=submit]{background:var(--crimson);color:#fff;border:0;border-radius:4px;padding:14px 26px;font:700 16px var(--sans);cursor:pointer}
.pf-box{background:#fff;border:1px solid var(--stone);padding:26px;margin:32px 0}
.pf-act{padding:16px 0;border-top:1px solid var(--stone)}.pf-act h4{font-size:18px;margin:0 0 6px}
.pf-meta{background:var(--cream);border:1px solid var(--stone);padding:18px 22px;margin:0 0 24px}
.pf-list{padding-left:20px}
.entry-title{margin-bottom:.4em}
@media(max-width:860px){
 .pf-hero .in{grid-template-columns:1fr;padding:56px 24px}.pf-hero:before,.pf-hero:after{display:none}
 .pf-tiles{grid-template-columns:1fr 1fr}.pf-cards{grid-template-columns:1fr}.pf-stats{grid-template-columns:1fr 1fr}
 .pf-burger{display:block}.pf-nav{display:none;width:100%}.pf-nav.open{display:block}.pf-head .in{flex-wrap:wrap}
 .pf-nav ul{flex-direction:column;gap:12px;padding-top:12px}.pf-nav ul ul{display:flex;position:static;border:0;padding:4px 0 0 14px}
}
