/*
Theme Name: Ashville Fire Department
Theme URI: https://ashvillefiredept.com
Author: Your Web Company
Description: An original, community-focused WordPress theme for the Ashville Fire Department.
Version: 3.2.0
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: ashville-fire
*/
:root{--red:#a92832;--red-dark:#7d1720;--navy:#173044;--navy-deep:#0b1b28;--cream:#f3efe6;--paper:#fffdf8;--gold:#d9a73d;--ink:#1a2a34;--muted:#60707a;--line:#d8d4ca;--wrap:1160px;--shadow:0 18px 45px rgba(23,48,68,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.68 system-ui,-apple-system,"Segoe UI",sans-serif}img{max-width:100%;height:auto}a{color:var(--red)}.wrap{width:min(calc(100% - 40px),var(--wrap));margin:auto}.screen-reader-text{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:#fff;padding:.7rem}.eyebrow{color:var(--red);font-size:.78rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.button{display:inline-block;background:var(--red);border:2px solid var(--red);color:#fff;text-decoration:none;font-size:.82rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:.85rem 1.15rem;margin:.25rem .4rem .25rem 0}.button:hover{background:var(--red-dark);border-color:var(--red-dark)}.button.outline{background:transparent;color:var(--navy);border-color:var(--navy)}
.utility{background:var(--navy-deep);color:#d8e1e6;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase}.utility .wrap{display:flex;justify-content:space-between;gap:1rem;padding:.55rem 0}.emergency-note{color:#fff;font-weight:900}.site-header{background:var(--paper)}.branding{display:flex;justify-content:center;align-items:center;min-height:168px;padding:.8rem 0;text-align:center}.custom-logo,.default-logo img{display:block;max-height:145px;width:auto}.default-logo{text-decoration:none}.nav-shell{background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.nav-shell .wrap{position:relative}.primary-menu{display:flex;justify-content:center;flex-wrap:wrap;gap:.1rem;list-style:none;margin:0;padding:0}.primary-menu li{position:relative;list-style:none}.primary-menu a{display:block;color:var(--navy);text-decoration:none;font-size:.76rem;font-weight:900;letter-spacing:.065em;text-transform:uppercase;padding:1.05rem .72rem;border-bottom:3px solid transparent}.primary-menu a:hover,.primary-menu .current-menu-item>a{color:var(--red);border-color:var(--red)}.primary-menu .sub-menu{display:none;position:absolute;left:0;top:100%;z-index:50;min-width:240px;margin:0;padding:.45rem 0;background:#fff;box-shadow:var(--shadow);border-top:3px solid var(--red)}.primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu{display:block}.primary-menu .sub-menu a{padding:.7rem 1rem;border:0;text-transform:none;letter-spacing:.02em}.menu-toggle{display:none;width:100%;border:0;background:none;color:var(--navy);font:inherit;font-weight:900;text-transform:uppercase;padding:1rem}
.home-hero{min-height:680px;background-color:var(--navy);background-size:cover;background-position:center;display:flex;align-items:center}.hero-copy{color:#fff;padding-top:7rem;padding-bottom:7rem;margin:0 auto}.hero-copy-inner{max-width:680px}.hero-copy .eyebrow{color:#f0c96a}.hero-copy h1{font:700 clamp(3.6rem,7vw,6.8rem)/.94 Georgia,serif;letter-spacing:-.04em;margin:.75rem 0 1.4rem}.hero-copy p{font-size:1.2rem;max-width:580px;color:#e3eaee}.hero-copy .button{background:#fff;border-color:#fff;color:var(--navy)}.hero-copy .button:hover{background:var(--gold);border-color:var(--gold)}.hero-copy .hero-secondary{background:transparent;border-color:rgba(255,255,255,.65);color:#fff}.hero-copy .hero-secondary:hover{background:#fff;color:var(--navy)}.quick-row{position:relative;margin-top:-1px;background:var(--red);color:#fff}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr)}.quick-link{display:flex;gap:1rem;align-items:center;color:#fff;text-decoration:none;padding:1.45rem 1.2rem;border-right:1px solid rgba(255,255,255,.25)}.quick-link:last-child{border:0}.quick-link b{font:700 1.15rem Georgia,serif}.quick-link b>span:last-child{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;opacity:.8}.quick-icon{font:700 2rem Georgia,serif;color:#f3cf76}
.section{padding:5.5rem 0}.section-cream{background:var(--cream)}.section-navy{background:var(--navy);color:#fff}.section-head{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:end;margin-bottom:2.5rem}.section h2,.entry h1{font:700 clamp(2.3rem,4.5vw,4rem)/1.05 Georgia,serif;letter-spacing:-.02em;margin:.3rem 0}.section-head p{color:var(--muted);margin:0}.section-navy .section-head p{color:#ccd8de}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.info-card{background:var(--paper);border:1px solid var(--line);padding:1.7rem;box-shadow:0 8px 22px rgba(23,48,68,.05)}.info-card .count{display:block;color:var(--gold);font:700 2rem Georgia,serif}.info-card h3{font:700 1.45rem Georgia,serif;color:var(--navy);margin:.45rem 0}.two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;align-items:center}.community-photo{min-height:470px;background:linear-gradient(145deg,#9aa7ac,#435764);position:relative}.community-photo.has-photo{background-size:cover;background-position:center}.community-photo.needs-photo:after{content:"Add a photo in Customize → Homepage → Volunteer section";position:absolute;left:1.2rem;bottom:1.2rem;background:var(--paper);color:var(--navy);font-size:.8rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase;padding:.75rem 1rem}.feature-list{list-style:none;padding:0;margin:2rem 0}.feature-list li{padding:1rem 0 1rem 2rem;border-bottom:1px solid var(--line);position:relative}.feature-list li:before{content:"";position:absolute;left:0;top:1.55rem;width:12px;height:12px;background:var(--red);transform:rotate(45deg)}.news-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:1.25rem}.news-card{background:#fff;color:var(--ink);border:1px solid var(--line);overflow:hidden}.news-card img{width:100%;height:210px;object-fit:cover}.news-card:first-child img{height:300px}.news-card-body{padding:1.4rem}.news-card h3{font:700 1.45rem Georgia,serif;margin:.25rem 0}.news-card a{text-decoration:none}.post-meta{color:var(--red);font-size:.75rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.join-banner{display:grid;grid-template-columns:1.2fr auto;gap:2rem;align-items:center;background:var(--gold);padding:3rem}.join-banner h2{color:var(--navy);margin-top:0}.join-banner p{margin-bottom:0}.site-footer{background:var(--navy-deep);color:#d2dde3;padding:4rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:2.5rem}.site-footer h2,.site-footer h3{color:#fff;font-family:Georgia,serif}.site-footer a{color:#fff}.footer-bottom{border-top:1px solid #294052;margin-top:3rem;padding-top:1.25rem;color:#92a4af;font-size:.85rem}.page-hero{background:var(--cream);padding:4rem 0;border-bottom:1px solid var(--line)}.page-hero h1{font:700 clamp(2.8rem,6vw,5rem)/1 Georgia,serif;color:var(--navy);margin:.3rem 0}.breadcrumbs{color:var(--red);font-size:.78rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.entry{padding:4rem 0;max-width:900px}.entry.wide{max-width:var(--wrap)}.entry-content h2,.entry-content h3{font-family:Georgia,serif;color:var(--navy)}.entry-content>img:first-child{margin-bottom:2rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.card{background:#fff;border:1px solid var(--line);overflow:hidden}.card-media{height:220px;width:100%;object-fit:cover}.card-body{padding:1.4rem}.card h3{font:700 1.4rem Georgia,serif;margin:.3rem 0}.notice{border-left:5px solid var(--gold);background:var(--cream);padding:1rem 1.25rem}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.portal-panel{border:1px solid var(--line);padding:1.5rem;background:#fff}.resource-list{list-style:none;padding:0}.resource-list li{border-bottom:1px solid var(--line);padding:.85rem 0}.resource-list a{font-weight:800}.login-box{max-width:520px;padding:2rem;background:var(--cream)}input,textarea,select{width:100%;padding:.8rem;border:1px solid #aeb7bc;font:inherit}label{font-weight:800}input[type=submit]{width:auto;background:var(--red);border:0;color:#fff;font-weight:900;cursor:pointer;padding:.8rem 1.2rem}
.entry-content .alignwide{margin-left:calc(50% - min(580px,50vw) + 20px);margin-right:calc(50% - min(580px,50vw) + 20px);max-width:none}.entry-content .alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw;width:100vw}body{overflow-x:clip}.entry-content .wp-block-gallery{margin:1.5rem 0}.entry-content .wp-block-media-text{margin:2rem 0}.entry-content .wp-block-cover h2{color:#fff}.afd-edit-button{position:fixed;right:18px;bottom:18px;z-index:9999;background:var(--red);color:#fff;text-decoration:none;font-size:.8rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;padding:.8rem 1.1rem;box-shadow:0 8px 24px rgba(0,0,0,.25)}.afd-edit-button:hover{background:var(--red-dark);color:#fff}
.entry-content .wp-block-buttons{margin:1.5rem 0}.entry-content .wp-block-button__link{background:var(--red);color:#fff;border-radius:0;font-size:.82rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:.85rem 1.15rem;text-decoration:none}.entry-content .wp-block-button__link:hover{background:var(--red-dark);color:#fff}.entry-content .is-style-outline .wp-block-button__link{background:transparent;color:var(--navy);border:2px solid var(--navy)}.entry-content .wp-block-columns{gap:1.25rem;margin:1.5rem 0}.entry-content .afd-card{background:#fff;border:1px solid var(--line);padding:1.4rem 1.5rem;height:100%;box-shadow:0 8px 22px rgba(23,48,68,.05)}.entry-content .afd-card h3{margin-top:0}.entry-content .afd-card p:last-child{margin-bottom:0}.entry-content .afd-callout{background:var(--cream);border-left:5px solid var(--red);padding:1.3rem 1.6rem;margin:2rem 0}.entry-content .afd-callout>*:first-child{margin-top:0}.entry-content .afd-callout>*:last-child{margin-bottom:0}.entry-content .afd-emergency{background:var(--navy-deep);color:#fff;padding:1.3rem 1.6rem;margin:0 0 2rem}.entry-content .afd-emergency h2,.entry-content .afd-emergency h3{color:#fff;margin:0 0 .3rem}.entry-content .afd-emergency p{margin:0}.entry-content .afd-emergency a{color:#fff}.entry-content iframe{width:100%;border:0}.entry-content ol li,.entry-content ul li{margin:.35rem 0}.entry-content .wp-block-latest-posts li{border-bottom:1px solid var(--line);padding:.8rem 0}
@media(max-width:900px){.home-hero{min-height:620px;background-position:62% center}.hero-copy{padding-top:5rem;padding-bottom:5rem}.section-head,.two-col,.footer-grid{grid-template-columns:1fr}.cards,.grid{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:1fr 1fr}.news-card:first-child{grid-column:1/-1}.join-banner{grid-template-columns:1fr}}
@media(max-width:650px){.utility .wrap{display:block;text-align:center}.utility .wrap>span{display:block}.branding{min-height:120px}.custom-logo,.default-logo img{max-height:90px}.menu-toggle{display:block}.primary-menu{display:none;flex-direction:column;flex-wrap:nowrap}.primary-menu.is-open{display:flex}.primary-menu .sub-menu{display:block;position:static;box-shadow:none;border:0;padding:0 0 .5rem 1rem}.home-hero{min-height:auto}.hero-copy h1{font-size:3.2rem}.quick-grid,.cards,.grid,.news-grid,.portal-grid{grid-template-columns:1fr}.quick-link{border-right:0;border-bottom:1px solid rgba(255,255,255,.25)}.news-card:first-child{grid-column:auto}.section{padding:4rem 0}.community-photo{min-height:340px}.join-banner{padding:2rem}.wrap{width:min(calc(100% - 28px),var(--wrap))}}
