/* ============================================================
   OHRFY — "Open Ledger" brutalism
   Alabama political accountability · light paper, hard black
   borders, no curves, monospace machinery, one acid accent.
   ------------------------------------------------------------
   Scoped ENTIRELY under #ohrfy so the same CSS works linked
   (preview) or inlined into a GHL Custom Code fragment.
   Type: Archivo (heavy grotesk) + Space Mono (labels/data).
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&display=swap');

#ohrfy{
  --paper:#f3f1ea; --paper2:#ebe8df; --ink:#0d0d0c; --ink2:#1b1b18;
  --acc:#f5360c; --acc-ink:#fff3ee;
  --mut:#6c6a61; --line:#0d0d0c;
  --maxw:1200px;
  --disp:'Archivo',system-ui,sans-serif;
  --mono:'Space Mono',ui-monospace,Menlo,monospace;
  --shadow:6px 6px 0 var(--ink);
  background:var(--paper); color:var(--ink);
  font-family:var(--disp); line-height:1.5; -webkit-font-smoothing:antialiased;
}
#ohrfy *{box-sizing:border-box;margin:0;padding:0}
#ohrfy img{max-width:100%;display:block}
#ohrfy a{color:inherit;text-decoration:none}
#ohrfy h1,#ohrfy h2,#ohrfy h3{font-family:var(--disp);font-weight:900;line-height:.95;letter-spacing:-.02em;text-transform:uppercase}
#ohrfy .wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
#ohrfy .mono{font-family:var(--mono)}
#ohrfy ::selection{background:var(--acc);color:var(--acc-ink)}

/* labels */
#ohrfy .lab{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
#ohrfy .lab-acc{color:var(--acc)}

/* buttons — hard offset shadow, push-into-shadow on hover */
#ohrfy .btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;padding:14px 22px;border:2px solid var(--ink);background:var(--paper);color:var(--ink);cursor:pointer;box-shadow:var(--shadow);transition:transform .08s linear,box-shadow .08s linear,background .12s,color .12s}
#ohrfy .btn:hover{transform:translate(4px,4px);box-shadow:2px 2px 0 var(--ink)}
#ohrfy .btn:active{transform:translate(6px,6px);box-shadow:0 0 0 var(--ink)}
#ohrfy .btn-acc{background:var(--acc);color:var(--acc-ink);border-color:var(--ink)}
#ohrfy .btn-ink{background:var(--ink);color:var(--paper)}
#ohrfy .btn[disabled]{opacity:.5;cursor:default;transform:none;box-shadow:var(--shadow)}

/* scripture strip */
#ohrfy .scripture{border-bottom:2px solid var(--ink);background:var(--paper2)}
#ohrfy .scripture .wrap{display:flex;gap:18px;align-items:flex-start;padding:12px 22px}
#ohrfy .scripture .tag{font-family:var(--mono);font-weight:700;font-size:10px;letter-spacing:.16em;color:var(--acc);white-space:nowrap;padding:3px 18px 0 0;border-right:2px solid var(--ink);line-height:1.4}
#ohrfy .scripture p{font-family:var(--mono);font-size:11.5px;line-height:1.7;color:var(--ink2);letter-spacing:.01em}

/* header */
#ohrfy .hdr{position:sticky;top:0;z-index:60;background:var(--paper);border-bottom:2px solid var(--ink)}
#ohrfy .nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:18px}
#ohrfy .brand{font-family:var(--disp);font-weight:900;font-size:24px;letter-spacing:-.03em;display:flex;align-items:center}
#ohrfy .brand .sl{color:var(--acc)}
#ohrfy .navlinks{display:flex;align-items:center}
#ohrfy .navlinks a{font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);padding:8px 16px;border-left:2px solid var(--ink)}
#ohrfy .navlinks a:hover,#ohrfy .navlinks a.active{background:var(--ink);color:var(--paper)}
#ohrfy .nav-cta{display:flex;align-items:stretch;border:2px solid var(--ink)}
#ohrfy .nav-cta .navlinks{border-right:2px solid var(--ink)}
#ohrfy .nav-sub{display:inline-flex;align-items:center;font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.1em;text-transform:uppercase;background:var(--acc);color:var(--acc-ink);padding:10px 16px}
#ohrfy .nav-sub:hover{background:var(--ink);color:var(--paper)}
#ohrfy .burger{display:none;font-family:var(--mono);font-weight:700;font-size:12px;letter-spacing:.1em;border:2px solid var(--ink);background:var(--paper);padding:9px 13px;cursor:pointer}
@media(max-width:820px){#ohrfy .nav-cta{border:0}#ohrfy .nav-cta .navlinks{display:none}#ohrfy .nav-cta .nav-sub{border:2px solid var(--ink)}#ohrfy .burger{display:block}}

/* hero (home) */
#ohrfy .hero{border-bottom:2px solid var(--ink);position:relative;overflow:hidden;
  background:
    linear-gradient(var(--line) 1px,transparent 1px) 0 0/100% 34px,
    linear-gradient(90deg,var(--line) 1px,transparent 1px) 0 0/34px 100%,
    var(--paper);}
#ohrfy .hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(243,241,234,.86),rgba(243,241,234,.97));pointer-events:none}
#ohrfy .hero .wrap{position:relative;z-index:1;padding:60px 22px 54px}
#ohrfy .eyebrow{display:inline-flex;align-items:center;gap:10px;border:2px solid var(--ink);background:var(--paper);padding:7px 13px;margin-bottom:30px;box-shadow:3px 3px 0 var(--ink)}
#ohrfy .eyebrow .dot{width:9px;height:9px;background:var(--acc);display:block}
#ohrfy .hero h1{font-size:clamp(52px,11vw,148px);font-weight:900;letter-spacing:-.04em;line-height:.86}
#ohrfy .hero h1 .amp{font-weight:400;font-size:.62em}
#ohrfy .hero h1 .hit{background:var(--acc);color:var(--acc-ink);padding:0 .12em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
#ohrfy .hero .lead{font-family:var(--mono);font-size:clamp(13px,1.7vw,15.5px);line-height:1.75;color:var(--ink2);max-width:620px;margin:30px 0 0;border-left:3px solid var(--acc);padding-left:18px}
#ohrfy .hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}

/* interior page hero */
#ohrfy .phero{border-bottom:2px solid var(--ink);background:var(--paper2);padding:54px 0 44px}
#ohrfy .phero .lab{color:var(--acc);display:block;margin-bottom:16px}
#ohrfy .phero h1{font-size:clamp(40px,7.5vw,86px);letter-spacing:-.035em;line-height:.9}
#ohrfy .phero h1 .hit{background:var(--acc);color:var(--acc-ink);padding:0 .1em}
#ohrfy .phero .lead{font-family:var(--mono);font-size:clamp(13px,1.7vw,15px);line-height:1.75;color:var(--ink2);max-width:640px;margin-top:24px;border-left:3px solid var(--acc);padding-left:18px}

/* telemetry */
#ohrfy .telem{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--ink);margin-top:46px;background:var(--paper)}
#ohrfy .telem .t{padding:18px 20px;border-right:2px solid var(--ink)}
#ohrfy .telem .t:last-child{border-right:0}
#ohrfy .telem .t .v{font-family:var(--disp);font-weight:900;font-size:clamp(28px,4vw,44px);line-height:1;letter-spacing:-.03em}
#ohrfy .telem .t .v .car{color:var(--acc)}
#ohrfy .telem .t .k{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--mut);margin-top:8px}
@media(max-width:680px){#ohrfy .telem{grid-template-columns:1fr 1fr}#ohrfy .telem .t:nth-child(2){border-right:0}#ohrfy .telem .t:nth-child(1),#ohrfy .telem .t:nth-child(2){border-bottom:2px solid var(--ink)}}

/* marquee */
#ohrfy .marq{background:var(--acc);color:var(--acc-ink);border-bottom:2px solid var(--ink);overflow:hidden}
#ohrfy .marq .trk{display:flex;width:max-content;white-space:nowrap;animation:ohscroll 26s linear infinite}
#ohrfy .marq span{font-family:var(--mono);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;padding:11px 0;display:inline-flex;align-items:center}
#ohrfy .marq span::after{content:"\2588";margin:0 22px;opacity:.55}
@keyframes ohscroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}

/* section scaffolding */
#ohrfy section{padding:72px 0}
#ohrfy .shead{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:34px;border-bottom:2px solid var(--ink);padding-bottom:16px}
#ohrfy .shead h2{font-size:clamp(28px,4.6vw,52px)}
#ohrfy .shead .num{font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--acc)}
#ohrfy .shead .num a{color:var(--acc)}

/* mandate / standards grid */
#ohrfy .mgrid{display:grid;grid-template-columns:repeat(3,1fr);border:2px solid var(--ink);border-right:0;border-bottom:0}
#ohrfy .mgrid.cols2{grid-template-columns:repeat(2,1fr)}
#ohrfy .mcell{border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:26px 24px;background:var(--paper);transition:background .12s,color .12s}
#ohrfy .mcell:hover{background:var(--ink);color:var(--paper)}
#ohrfy .mcell:hover .mno{color:var(--acc)}
#ohrfy .mcell:hover p{color:var(--paper)}
#ohrfy .mcell .mno{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--acc);letter-spacing:.1em;margin-bottom:16px}
#ohrfy .mcell h3{font-size:22px;margin-bottom:10px}
#ohrfy .mcell p{font-family:var(--mono);font-size:12.5px;line-height:1.65;color:var(--mut)}
@media(max-width:820px){#ohrfy .mgrid,#ohrfy .mgrid.cols2{grid-template-columns:1fr 1fr}}
@media(max-width:520px){#ohrfy .mgrid,#ohrfy .mgrid.cols2{grid-template-columns:1fr}}

/* ledger / article rows */
#ohrfy .ledger{border:2px solid var(--ink)}
#ohrfy .lrow{display:grid;grid-template-columns:84px 190px 1fr 140px 46px;align-items:center;border-bottom:2px solid var(--ink);background:var(--paper);transition:background .1s,color .1s}
#ohrfy .lrow:last-child{border-bottom:0}
#ohrfy .lrow:hover{background:var(--ink);color:var(--paper)}
#ohrfy .lrow:hover .l-cat,#ohrfy .lrow:hover .l-arrow{color:var(--acc)}
#ohrfy .lrow > *{padding:20px 16px}
#ohrfy .l-no{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--acc);border-right:2px solid currentColor}
#ohrfy .lrow:hover .l-no{border-color:rgba(243,241,234,.25)}
#ohrfy .l-cat{font-family:var(--mono);font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut)}
#ohrfy .l-title{font-family:var(--disp);font-weight:800;font-size:18px;text-transform:uppercase;letter-spacing:-.01em;line-height:1.05}
#ohrfy .l-date{font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--mut);text-transform:uppercase}
#ohrfy .lrow:hover .l-cat,#ohrfy .lrow:hover .l-date{color:rgba(243,241,234,.7)}
#ohrfy .l-arrow{font-family:var(--mono);font-weight:700;text-align:right}
@media(max-width:760px){
  #ohrfy .lrow{grid-template-columns:60px 1fr 40px}
  #ohrfy .l-cat{grid-column:2;grid-row:1;padding-bottom:4px}
  #ohrfy .l-title{grid-column:2;grid-row:2;padding-top:0;padding-bottom:6px}
  #ohrfy .l-date{grid-column:2;grid-row:3;padding-top:0}
  #ohrfy .l-no{grid-row:1/4}
  #ohrfy .l-arrow{grid-column:3;grid-row:1/4}
}

/* chips (article filters) */
#ohrfy .chips{display:flex;flex-wrap:wrap;gap:0;border:2px solid var(--ink);margin-bottom:30px;width:max-content;max-width:100%}
#ohrfy .chips a{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);padding:11px 16px;border-right:2px solid var(--ink)}
#ohrfy .chips a:last-child{border-right:0}
#ohrfy .chips a:hover,#ohrfy .chips a.active{background:var(--acc);color:var(--acc-ink)}

/* mission split */
#ohrfy .split{display:grid;grid-template-columns:1.1fr .9fr;border:2px solid var(--ink)}
#ohrfy .split .l{padding:40px 36px;border-right:2px solid var(--ink)}
#ohrfy .split .l h2{font-size:clamp(28px,4vw,46px);margin-bottom:18px}
#ohrfy .split .l p{font-family:var(--mono);font-size:13px;line-height:1.75;color:var(--ink2);margin-bottom:16px}
#ohrfy .split .r{padding:36px;background:var(--ink);color:var(--paper)}
#ohrfy .split .r .lab{color:var(--acc);margin-bottom:18px;display:block}
#ohrfy .creds{list-style:none}
#ohrfy .creds li{font-family:var(--mono);font-size:13px;line-height:1.5;padding:14px 0;border-bottom:1px solid rgba(243,241,234,.18);display:flex;gap:12px}
#ohrfy .creds li:last-child{border-bottom:0}
#ohrfy .creds li::before{content:"\25B6";color:var(--acc);font-size:10px;margin-top:3px}
@media(max-width:760px){#ohrfy .split{grid-template-columns:1fr}#ohrfy .split .l{border-right:0;border-bottom:2px solid var(--ink)}}

/* subscribe band */
#ohrfy .sub{border:2px solid var(--ink);background:var(--acc);color:var(--acc-ink);box-shadow:var(--shadow);padding:48px 40px}
#ohrfy .sub .lab{color:var(--acc-ink);opacity:.85}
#ohrfy .sub h2{font-size:clamp(30px,5vw,58px);margin:12px 0 14px}
#ohrfy .sub p{font-family:var(--mono);font-size:13px;line-height:1.7;max-width:540px;margin-bottom:26px}
#ohrfy .sub .fine{font-family:var(--mono);font-size:11px;margin-top:14px;opacity:.85}

/* newsletter inline form */
#ohrfy .nlform{display:flex;gap:0;max-width:620px;border:2px solid var(--ink);background:var(--paper);box-shadow:5px 5px 0 var(--ink)}
#ohrfy .nlform input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-family:var(--mono);font-size:14px;padding:15px 16px;border-right:2px solid var(--ink)}
#ohrfy .nlform input::placeholder{color:var(--mut)}
#ohrfy .nlform input:focus{outline:none;background:#fff}
#ohrfy .nlform button{border:0;background:var(--ink);color:var(--paper);font-family:var(--mono);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:0 22px;cursor:pointer;transition:background .12s;white-space:nowrap}
#ohrfy .nlform button:hover{background:var(--ink2)}
#ohrfy .nlform button[disabled]{opacity:.6;cursor:default}
@media(max-width:560px){#ohrfy .nlform{flex-direction:column}#ohrfy .nlform input{border-right:0;border-bottom:2px solid var(--ink)}#ohrfy .nlform button{padding:14px}}

/* generic forms (tips) */
#ohrfy .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:0;border:2px solid var(--ink)}
#ohrfy .infoblock{background:var(--ink);color:var(--paper);padding:34px 30px;display:flex;flex-direction:column;gap:22px;border-right:2px solid var(--ink)}
#ohrfy .infoblock .item .lbl{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin-bottom:8px}
#ohrfy .infoblock .item p{font-family:var(--mono);font-size:12.5px;line-height:1.65;color:rgba(243,241,234,.78)}
#ohrfy .formcard{padding:34px 32px;background:var(--paper)}
#ohrfy form .f{margin-bottom:18px}
#ohrfy form label{display:block;font-family:var(--mono);font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:8px}
#ohrfy form input,#ohrfy form select,#ohrfy form textarea{width:100%;background:var(--paper);border:2px solid var(--ink);color:var(--ink);font-family:var(--mono);font-size:14px;padding:12px 14px}
#ohrfy form input::placeholder,#ohrfy form textarea::placeholder{color:var(--mut)}
#ohrfy form input:focus,#ohrfy form select:focus,#ohrfy form textarea:focus{outline:none;background:#fff;box-shadow:4px 4px 0 var(--acc)}
#ohrfy form textarea{min-height:140px;resize:vertical}
#ohrfy form select{appearance:none;-webkit-appearance:none}
#ohrfy .check{display:flex;gap:10px;align-items:flex-start;font-family:var(--mono);font-size:12.5px;line-height:1.5;color:var(--ink2);text-transform:none;letter-spacing:0;font-weight:400}
#ohrfy .check input{width:auto;margin-top:2px;accent-color:var(--acc)}
#ohrfy .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
#ohrfy .formnote{font-family:var(--mono);font-size:11px;line-height:1.6;color:var(--mut);margin-top:12px}
#ohrfy .formmsg{display:none;font-family:var(--mono);font-weight:700;font-size:12.5px;padding:14px;margin-top:14px;border:2px solid var(--ink)}
#ohrfy .formmsg.ok{display:block;background:var(--ink);color:var(--paper)}
#ohrfy .formmsg.err{display:block;background:var(--acc);color:var(--acc-ink);border-color:var(--ink)}
@media(max-width:760px){#ohrfy .contact-grid{grid-template-columns:1fr}#ohrfy .infoblock{border-right:0;border-bottom:2px solid var(--ink)}}

/* footer */
#ohrfy .ftr{border-top:2px solid var(--ink);background:var(--ink);color:var(--paper);padding:48px 0 26px}
#ohrfy .ftr .grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:30px;margin-bottom:34px}
#ohrfy .ftr .brand{color:var(--paper);font-family:var(--disp);font-weight:900;font-size:24px;letter-spacing:-.03em}
#ohrfy .ftr .brand .sl{color:var(--acc)}
#ohrfy .ftr h4{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc);margin-bottom:14px}
#ohrfy .ftr a,#ohrfy .ftr p{display:block;font-family:var(--mono);font-size:13px;color:rgba(243,241,234,.78);margin-bottom:9px}
#ohrfy .ftr a:hover{color:var(--acc)}
#ohrfy .ftr .tag{font-family:var(--mono);font-size:12px;line-height:1.7;color:rgba(243,241,234,.7);margin-top:12px;max-width:320px}
#ohrfy .ftr .bot{border-top:1px solid rgba(243,241,234,.2);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:rgba(243,241,234,.6)}
#ohrfy .ftr .legal{font-family:var(--mono);font-size:11px;line-height:1.7;color:rgba(243,241,234,.5);max-width:780px;margin-top:14px}
#ohrfy .ftr .legal a{display:inline;color:var(--acc)}
@media(max-width:680px){#ohrfy .ftr .grid{grid-template-columns:1fr}}

/* reveal */
#ohrfy .rv{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease}
#ohrfy .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){#ohrfy *{animation:none!important}#ohrfy .rv{opacity:1;transform:none}}

/* ===== GHL full-width unlock (harmless in standalone preview) ===== */
.c-section:has(#ohrfy) > .inner{max-width:100% !important;padding-left:0 !important;padding-right:0 !important;}
.c-section:has(#ohrfy) .row,.c-section:has(#ohrfy) .col{padding-left:0 !important;padding-right:0 !important;}
