:root{--green:#41AF4E;--green-deep:#3FAC4F;--yellow:#FDBE00;--blue:#01B1ED;--pink:#F22D89;--pink-deep:#ED2480;--surface:#EBECEE;--subtle:#EDEDED;--text:#263238;--white:#fff}
*{box-sizing:border-box}
body.site-shell{font-family:Roboto,Arial,sans-serif;color:var(--text);line-height:1.7;background:var(--white)}
h1,h2,h3,h4,.brand{font-family:Raleway,Arial,sans-serif;font-weight:800;line-height:1.15;color:var(--text)}
a{color:var(--green-deep)}
a:hover{color:var(--pink)}
.skip-link{position:absolute;left:-999px;top:auto}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.5rem 1rem}
.contact-strip{background:var(--green);color:#fff;font-size:.88rem;font-weight:700;padding:.55rem 0}
.site-header{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 10px 24px rgba(38,50,56,.08)}
.top-bar,.top-bar ul{background:#fff}.header-inner{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:88px}
.top-bar-right{flex:1}.main-navigation{display:flex;justify-content:flex-end}
.brand{display:flex;align-items:center;gap:.8rem;color:var(--green-deep);font-size:1.05rem;text-decoration:none}.brand img{width:112px;height:54px;object-fit:contain}
.site-nav{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.1rem}
.site-nav>li{position:relative}
.site-nav a{font-size:.86rem;font-weight:800;color:var(--text);border-radius:8px;margin:0 .1rem;padding:.78rem .72rem}
.site-nav a:hover{background:rgba(65,175,78,.11);color:var(--green-deep)}
.site-nav .nav-cta{background:var(--pink);color:#fff}.site-nav .nav-cta:hover{background:var(--pink-deep);color:#fff}
.site-nav .submenu{display:none;position:absolute;top:100%;left:0;min-width:240px;z-index:40;border:0;box-shadow:0 16px 34px rgba(38,50,56,.13);border-radius:8px;overflow:hidden;padding:.35rem 0}
.site-nav li:hover>.submenu,.site-nav li:focus-within>.submenu{display:block}
.site-nav .submenu a{display:block;margin:0;padding:.65rem .85rem;white-space:normal}
.title-bar{background:var(--green)}
.home-hero{min-height:560px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(38,50,56,.78),rgba(65,175,78,.58)),url("/assets/images/hero-listening.jpg") center/cover}
.home-hero h1{max-width:760px;color:#fff;font-size:3.4rem}.home-hero .lead{max-width:650px;font-size:1.25rem;color:#fff}
.button.primary{background:var(--green);border-radius:8px;font-weight:800}.button.primary:hover{background:var(--green-deep)}
.button.hollow.light{background:#fff;border-color:#fff;color:var(--green-deep);border-radius:8px;font-weight:800}
.quote-section{padding:4.5rem 0;text-align:center}.quote-section p{font-family:Raleway,Arial,sans-serif;font-size:1.65rem;font-weight:800;color:var(--green-deep);max-width:980px;margin:auto}
.mission-band{padding:4.5rem 0;background:var(--green);color:#fff}.mission-band h2{color:#fff}.callback-card{background:#fff;color:var(--text);border-radius:8px;padding:2rem;box-shadow:0 16px 36px rgba(38,50,56,.12)}
.callback-card input{background:var(--subtle);border:1px solid #d9dede;border-radius:6px}
.content-section{padding:4.5rem 0}.content-section.surface{background:var(--surface)}
.section-heading{text-align:center;margin-bottom:2.4rem}.section-heading h2{color:var(--green-deep);font-size:2.2rem}.section-heading.light h2,.section-heading.light p{color:#fff}
.aba-band{padding:4.5rem 0;background:var(--blue);color:#fff}
.page-hero{background:linear-gradient(90deg,rgba(38,50,56,.80),rgba(65,175,78,.62)),url("/assets/images/hero-listening.jpg") center/cover;color:#fff;padding:5rem 0}.page-hero.compact{min-height:280px;display:flex;align-items:center}
.page-hero h1{color:#fff;font-size:2.8rem;max-width:900px}.page-hero .lead{color:#fff;max-width:760px}
.content-card{background:#fff;border-radius:8px;padding:2rem;box-shadow:0 12px 30px rgba(38,50,56,.10)}
.card,.teaser-card{border:0;border-radius:8px;box-shadow:0 12px 28px rgba(38,50,56,.10);transition:transform .2s ease,box-shadow .2s ease;overflow:hidden}.card:hover,.teaser-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(38,50,56,.15)}
.teaser-card h3{font-size:1.25rem}.teaser-card h3 a{text-decoration:none;color:var(--text)}.teaser-card h3 a:hover{color:var(--green-deep)}
.support-section{padding:4.5rem 0}.support-card{border:2px solid var(--pink);border-radius:8px;overflow:hidden;background:#fff;height:100%}.support-card img{width:100%;height:230px;object-fit:cover}.support-card div{padding:1.6rem}.support-card h3{color:var(--pink)}
.content-figure img,.article-main-image{max-width:100%;height:auto;border-radius:8px}.content-figure figcaption{font-size:.9rem;color:#667;margin-top:.4rem}.article-main-image{float:right;max-width:34%;margin:0 0 1rem 1.5rem}
.content-list li{margin-bottom:.35rem}.quote-block{border-left:5px solid var(--green);background:#f7faf8}
.breadcrumb-wrap{margin-bottom:1rem}.breadcrumbs a{color:#fff}.breadcrumbs li:not(:last-child)::after{color:#fff}
.sidebar-card{background:#fff;border-radius:8px;padding:1.3rem;box-shadow:0 10px 26px rgba(38,50,56,.10)}
.site-footer{background:#f8f9f9;padding:3.4rem 0 0}.site-footer h3{font-size:1.2rem}.footer-links a{text-decoration:none;color:var(--text)}.footer-links a:hover{color:var(--green-deep)}
.footer-bottom{margin-top:2.5rem;background:var(--text);color:#fff;padding:1.1rem 0;font-size:.84rem}
.meta-line{font-weight:700;color:#eef}.read-more{font-weight:800;text-decoration:none}
table.hover{border-radius:8px;overflow:hidden}
@media(max-width:1024px){.header-inner{display:block;padding:1rem 0}.site-nav{justify-content:flex-start;flex-wrap:wrap}.home-hero h1{font-size:2.5rem}.article-main-image{float:none;max-width:100%;margin:0 0 1rem}}
@media(max-width:640px){.contact-strip .text-right{text-align:left}.home-hero{min-height:500px}.home-hero h1,.page-hero h1{font-size:2rem}.content-card{padding:1.25rem}.quote-section p{font-size:1.25rem}}
