/*
Theme Name: Wellston Fireworks & Family Fun
Description: Simple red, white and blue theme for the Wellston Fireworks and Family Fun nonprofit.
Version: 1.0
Text Domain: wff
*/
:root{--blue:#0f2a6b;--red:#c8102e;--soft:#f3f6fc;--ink:#14213d;--mute:#4f5b78;--line:#cdd6ea;--link:#1747b8}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.6 "Nunito Sans",system-ui,sans-serif}
h1,h2,h3{font-family:Bevan,Georgia,serif;font-weight:400;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2rem,6vw,3.2rem)}h2{font-size:1.7rem}h3{font-size:1.15rem}
p{margin:0 0 1em;max-width:68ch}a{color:var(--link)}
.fw-header{background:var(--blue);color:#fff;padding:.9rem 1rem 0;border-bottom:6px solid var(--red)}
.fw-bar,.fw-nav{max-width:1000px;margin:auto}
.fw-logo{font:400 1.15rem Bevan,serif;color:#fff;text-decoration:none}
.fw-menu{list-style:none;margin:.6rem 0 0;padding:0;display:flex;gap:.25rem;overflow-x:auto}
.fw-menu a{display:block;color:#c9d2e6;text-decoration:none;font-weight:600;padding:.6rem .9rem;border-bottom:3px solid transparent;white-space:nowrap}
.fw-menu a:hover{color:#fff}
.fw-menu .current-menu-item a,.fw-menu .fw-current a{color:#fff;border-color:#fff}
.fw-menu .fw-donate a{background:var(--red);color:#fff;border-radius:6px;border-bottom:0;font-weight:700;padding:.45rem 1rem;margin:.1rem 0 .3rem}
.fw-main{max-width:1000px;margin:auto;padding:1.5rem 1rem 3rem}
.fw-btn,.wp-block-button__link{display:inline-block;background:var(--red);color:#fff!important;border-radius:6px;padding:.7rem 1.4rem;font-weight:700;text-decoration:none;border:0}
.fw-hero{background:var(--blue);color:#fff;border-radius:10px;padding:2.5rem 1.5rem;margin-bottom:1rem}
.fw-hero h1,.fw-hero p{color:#fff}
.fw-count{display:flex;gap:.75rem;flex-wrap:wrap;margin:1.2rem 0}
.fw-count div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);border-radius:8px;min-width:78px;padding:.6rem .8rem;text-align:center;color:#fff}
.fw-count b{display:block;font:400 2rem/1 Bevan,serif}.fw-count span{font-size:.85rem;color:#c9d2e6}
.fw-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;background:var(--red);color:#fff;border-radius:10px;padding:1rem 1.2rem;margin-bottom:1rem}
.fw-banner h2{font-size:1.2rem;margin:0}
.fw-banner ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .9rem;flex:1 1 300px;font-weight:600}
.fw-banner .fw-btn{background:#fff;color:var(--blue)!important}
.fw-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:1.5rem 0}
.fw-two{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.fw-card{background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:1.2rem}
.fw-card.accent{border-left:6px solid var(--red)}
.fw-meter{height:26px;background:var(--line);border-radius:13px;overflow:hidden}
.fw-meter i{display:block;height:100%;background:linear-gradient(90deg,var(--red),#1b4fd1)}
.fw-big{font:400 clamp(2rem,7vw,3.4rem)/1 Bevan,serif;color:var(--red)}
.fw-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;color:var(--mute);font-size:.92rem;margin-top:.5rem}
.fw-mute{color:var(--mute)}
.fw-photo{background:repeating-linear-gradient(45deg,#1b3a8a,#1b3a8a 12px,#234a9f 12px,#234a9f 24px);color:#c9d2e6;display:grid;place-items:center;text-align:center;font-size:.9rem;border-radius:8px;min-height:160px;padding:1rem}
.fw-gal{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.fw-gal figure,.fw-vids figure{margin:0}.fw-gal .fw-photo{aspect-ratio:4/3;min-height:0}
.fw-gal figcaption,.fw-vids figcaption{font-size:.9rem;color:var(--mute);margin-top:.35rem}
.fw-vids{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.fw-vids .fw-photo{aspect-ratio:16/9;min-height:0}
.fw-steps{padding:0;list-style:none;counter-reset:s}
.fw-steps li{counter-increment:s;display:flex;gap:1rem;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:1rem;margin-bottom:.8rem}
.fw-steps li:before{content:counter(s);flex:none;width:2.2rem;height:2.2rem;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font:400 1.1rem Bevan,serif}
.fw-logos{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1.5rem}
.fw-logos div{border:2px dashed var(--line);border-radius:8px;padding:1.2rem .5rem;text-align:center;color:var(--mute);font-weight:600}
.fw-names{columns:3 180px;list-style:none;padding:0;margin:0}
.fw-note{border:2px dashed var(--red);border-radius:8px;padding:1rem;color:var(--mute)}
.fw-footer{background:var(--blue);color:#c9d2e6;text-align:center;padding:1.5rem 1rem;font-size:.9rem}.fw-footer b{color:#fff}
