:root{--red:#c61211;--dark:#9c0e0d;--char:#052562;--gold:#fdc800;--navy:#052562;--bg:#f6f4f1}
*{box-sizing:border-box}body{margin:0;font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1d2433;background:#fff}
h1,h2,h3{line-height:1.2;font-weight:800;letter-spacing:-.01em}h2{font-size:clamp(1.6rem,3vw,2.2rem);color:var(--red)}
.wrap{max-width:1140px;margin:auto;padding:0 20px}.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:9}
.top{background:var(--char);color:#fff;position:sticky;top:0;z-index:5;border-bottom:3px solid var(--gold)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;flex-wrap:wrap}
.brand{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;font-weight:700;font-size:.95rem;max-width:420px}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}nav a{color:#fff;text-decoration:none;font-weight:600}nav a[aria-current]{color:var(--gold)}
.btn{display:inline-block;background:var(--red);color:#fff!important;padding:13px 24px;border-radius:6px;font-weight:700;text-decoration:none;border:2px solid transparent;cursor:pointer;font-size:1rem;margin:4px 6px 4px 0}
.btn:hover{background:var(--dark)}.btn.gold{background:var(--gold);color:var(--char)!important}.btn.gold:hover{background:#e0b200}
.btn.ghost{background:transparent;border-color:#fff}.btn.small{padding:7px 14px}.btn.block{display:block;text-align:center;width:100%}
a:focus-visible,input:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.hero{background:linear-gradient(135deg,#031a47 0%,#052562 55%,#2a1c5a 80%,#7a0f12 100%);color:#fff;padding:70px 0}
.hgrid,.two{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}.hero h1{font-size:clamp(2rem,4.5vw,3.1rem);margin:.2em 0}
.eyebrow{color:var(--gold);text-transform:uppercase;font-weight:700;font-size:.8rem;letter-spacing:.12em}.lead{font-size:1.35rem;font-weight:700;color:var(--gold)}
.kicker{font-weight:700;font-style:italic}
.photo{aspect-ratio:4/3;border-radius:12px;background:repeating-linear-gradient(45deg,#ffffff14 0 12px,#ffffff08 12px 24px),linear-gradient(160deg,#0a2f73,#7a0f12);border:2px dashed var(--gold);display:grid;place-items:center;text-align:center;padding:20px;color:#fff;font-weight:700}
.sec{padding:64px 20px}.big{font-size:1.2rem;max-width:820px}.alt{background:var(--bg)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.card{background:#fff;border-radius:10px;padding:28px;border-top:5px solid var(--red);box-shadow:0 4px 18px #0000000f}
.ico{width:44px;height:44px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:800}
.feature{background:var(--char);color:#fff;border-left:8px solid var(--gold);padding:36px;border-radius:10px;margin-bottom:24px}.feature h2{color:#fff}
.cta{background:var(--red);color:#fff;text-align:center;padding:64px 0}.cta h2{color:#fff}.cta p{max-width:780px;margin:1em auto}
.phero{background:linear-gradient(135deg,#031a47,#052562 60%,#7a0f12);color:#fff;padding:50px 0}.phero h1{margin:0;font-size:2.4rem}.phero p{color:var(--gold);font-weight:700;margin:.3em 0 0}
mark{background:#fff3c4;border:1px dashed var(--gold);padding:0 4px}.note{background:var(--bg);padding:14px;border-left:4px solid var(--gold)}
.give{background:#fff;padding:28px;border-radius:12px;box-shadow:0 6px 28px #00000018;border-top:5px solid var(--red)}
fieldset{border:0;padding:0;margin:0 0 20px}legend{font-weight:700;margin-bottom:8px}
.toggle,.amts{display:grid;gap:10px}.toggle{grid-template-columns:1fr 1fr}.amts{grid-template-columns:repeat(3,1fr)}
.toggle input,.amt input[type=radio]{position:absolute;opacity:0}.toggle span,.amt span{display:block;text-align:center;padding:12px;border:2px solid #ddd;border-radius:8px;font-weight:700;cursor:pointer}
.toggle input:checked+span,.amt input:checked+span{border-color:var(--red);background:var(--red);color:#fff}
.amt.other{display:flex;align-items:center;border:2px solid #ddd;border-radius:8px}.amt.other span{border:0;padding:8px}.amt.other input{width:100%;border:0;font-size:1rem}
.give label{display:block;font-weight:600;margin-bottom:14px}.give input:not([type=radio]),select,textarea{width:100%;padding:10px;border:1px solid #bbb;border-radius:6px;font:inherit;margin-top:4px}
.pending{font-size:.85rem;color:#666;text-align:center}
footer{background:var(--char);color:#ddd;padding:40px 0 10px;border-top:4px solid var(--gold)}.foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.foot>div{max-width:560px}.copy{font-size:.85rem;color:#999}
@media(max-width:820px){.hgrid,.two,.cards{grid-template-columns:1fr}.brand span{font-size:.85rem}nav{gap:12px}.sec{padding:44px 20px}}
.brand small{display:block;color:var(--gold);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.logo-card{background:#fff;border-radius:20px;display:grid;place-items:center;padding:28px;box-shadow:0 0 0 6px var(--gold),0 20px 50px #0008;max-width:460px;justify-self:center}
.logo-card img{width:100%;height:auto}.cta{background:linear-gradient(135deg,var(--red),#9c0e0d)}
@media(max-width:820px){.logo-card{max-width:300px}}
.hp{position:absolute;left:-9999px}.fl{color:var(--gold)}.embed-ph{min-height:320px;border:2px dashed var(--gold);border-radius:10px;display:grid;place-items:center;text-align:center;padding:20px;background:#f7f8fc;color:#052562;font-weight:700;margin-bottom:16px}
address{font-style:normal;font-weight:600}.fa{margin:.5em 0;color:#fff}
.hero-photo{background:linear-gradient(rgba(5,37,98,.74),rgba(3,26,71,.66)),url(assets/photos/hero-firefighters-night.jpg) center/cover no-repeat}
.photo-hero{background-size:cover;background-position:center;padding:90px 0}
.ph-about{background-image:linear-gradient(rgba(5,37,98,.78),rgba(5,37,98,.7)),url(assets/photos/firefighter-engine.jpg);background-position:center 30%}
.ph-programs{background-image:linear-gradient(rgba(5,37,98,.72),rgba(5,37,98,.64)),url(assets/photos/hero-firefighters-night.jpg);background-position:center 70%}
.ph-donate{background-image:linear-gradient(rgba(5,37,98,.72),rgba(5,37,98,.6)),url(assets/photos/florida-palms-sunset.jpg);background-position:center 60%}
.photo-hero h1,.photo-hero p{text-shadow:0 2px 10px #0008}
.pic{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;box-shadow:0 0 0 4px var(--gold),0 12px 32px #0003;display:block}
.pcard{padding:0;overflow:hidden}.pcard img{width:100%;height:190px;object-fit:cover;display:block}.pcard .ico,.pcard h3,.pcard p{margin-left:28px;margin-right:28px}.pcard .ico{margin-top:-22px;position:relative;border:3px solid #fff}.pcard p{margin-bottom:28px}
