/* Standalone site styles. No theme, plugin, framework, or CDN dependencies. */
:root { --ink:#3c4858; --body:#555; --green:#49a315; --muted:#999; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font:300 14px/1.618 Tahoma,Geneva,sans-serif; color:var(--body); background:#fff; }
h1,h2,h3,h4,h5,h6 { color:var(--ink); font-weight:700; line-height:1.4; margin:20px 0 10px; }
h1 { font-size:42px; } h2 { font-size:37px; } h3 { font-size:25px; } h4 { font-size:18px; } h5 { font-size:18px; font-weight:400; }
p { margin:0 0 15px; } a { color:var(--green); text-decoration:none; }
a:hover { text-decoration:underline; } img { max-width:100%; height:auto; vertical-align:middle; }
figure { margin:0 0 1em; } button,input,textarea { font:inherit; } iframe { max-width:100%; }
button { cursor:pointer; } a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid #277022; outline-offset:4px; }
.container { width:1170px; max-width:100%; margin:0 auto; padding:0 15px; }
.row { display:flex; flex-wrap:wrap; margin:0 -15px; }
.row > [class*="col-"] { padding:0 15px; min-width:0; }
.col-md-4 { width:33.3333%; } .col-md-5 { width:41.6667%; } .col-md-7 { width:58.3333%; } .col-md-8 { width:66.6667%; } .col-md-12 { width:100%; } .col-md-offset-2 { margin-left:16.6667%; }
.site-header { position:fixed; z-index:100; top:0; left:0; width:100%; background:#fff; color:#555; box-shadow:0 2px 6px #0004; transition:background .15s; }
.header-inner { display:flex; align-items:center; justify-content:space-between; min-height:70px; gap:24px; padding-top:10px; padding-bottom:10px; }
.brand { display:flex; align-items:center; color:inherit; font-size:16px; line-height:1.5; gap:10px; }
.brand:hover { text-decoration:none; } .brand img { width:50px; height:50px; object-fit:contain; } .brand small { display:block; font-size:12px; margin-top:5px; }
#primary-navigation { display:flex; gap:30px; align-items:center; padding:0 15px; }
#primary-navigation a { color:inherit; font-size:12px; text-transform:uppercase; white-space:nowrap; }
#primary-navigation a:hover,.interior #primary-navigation [aria-current="page"] { color:var(--green); text-decoration:none; }
.menu-toggle { display:none; border:0; background:transparent; color:inherit; font-size:24px; padding:8px; }
.home .site-header:not(.scrolled) { background:transparent; box-shadow:none; color:#fff; }
.home .site-header:not(.scrolled) .header-inner { padding-top:25px; padding-bottom:10px; }
.hero { height:90vh; min-height:520px; display:flex; align-items:center; position:relative; color:white; background:linear-gradient(#0008,#0008),url('/images/IMG-20250219-WA0004-1.jpg') center/cover; }
.hero-grid { display:grid; grid-template-columns:5fr 7fr; align-items:center; gap:0; }
.hero-grid > img { width:100%; padding:0 15px; transform:translateY(3px); }
.hero h1 { color:white; font-size:67px; line-height:1.4; text-align:right; margin:20px 0 4px; padding:0 15px; }
.raised { margin:-60px 30px 0; border-radius:6px 6px 0 0; background:white; position:relative; box-shadow:0 16px 24px 2px #0002,0 6px 30px 5px #0002; }
.features { padding:75px 0 55px; text-align:center; }
.section-heading { text-align:center; } .section-heading h2 { line-height:1.618; margin:10px 0; } .section-heading .description { color:var(--muted); font-weight:300; line-height:1.5; margin:10px 0 15px; }
.feature-info { padding:70px 0 30px; }
.feature-info .icon { font-size:62px; line-height:1; height:74px; font-weight:bold; margin-bottom:25px; }
.feature-info .icon svg { width:62px; height:62px; } .feature-info .info-title { margin:0 0 20px; }
.feature-info p { font-size:18px; color:var(--muted); line-height:1.5; } .feature-info a { color:inherit; }
.section-image { position:relative; background-size:cover; background-position:center; isolation:isolate; }
.section-image::before { content:""; position:absolute; inset:0; background:#000b; z-index:-1; }
.story { padding:65px 0 30px; color:#fefefe; }
.story h2,.home-contact h2,.home-contact h4 { color:#fff; }
.story .content-columns { gap:9px; } .story p { font-size:18px; margin:24px 0 0; }
.story .content-image img { width:100%; } .story h2 { line-height:1.618; }
.home-resources { padding:65px 0 70px; } .home-resources-content { margin-top:60px; }
.card-blog { margin:30px 0; text-align:center; padding:0 5px; }
.card-image img { width:100%; border-radius:6px; box-shadow:0 5px 15px #0003; }
.card-blog .content { padding:15px 0; } .category { font-size:12px; text-transform:uppercase; font-weight:500; }
.category a { color:#89229b; } .card-blog h4 { margin:5px 0 10px; } .card-blog h4 a { color:var(--ink); }
.card-description { color:#999; font-size:18px; line-height:1.5; } .moretag { color:var(--ink); }
.home-contact { padding:90px 0 70px; color:#fff; } .home-contact::before { background:#000b; }
.home-contact .description { color:#aaa; } .home-contact .feature-info { display:flex; gap:20px; padding:25px 0 0; }
.home-contact .feature-info .icon { font-size:26px; color:#fff; width:32px; flex-shrink:0; margin:0; }
.home-contact .feature-info .info-title { margin:0 0 5px; } .home-contact .feature-info p { font-size:14px; margin:0 0 12px; color:#ddd; }
.card-contact { background:#fff; border-radius:6px; color:var(--body); padding:0 30px 20px; box-shadow:0 6px 20px #0005; }
.card-contact .header-raised { background:var(--green); border-radius:3px; padding:20px 15px; position:relative; top:-20px; margin:0 -10px; box-shadow:0 4px 8px #0003; }
.card-contact .card-title { margin:0; color:white; text-align:center; }
.contact-form { width:100%; } .contact-form label { display:block; font-size:16px; line-height:1.3; font-weight:700; margin-bottom:24px; color:var(--ink); }
.contact-form input,.contact-form textarea { display:block; border:0; border-bottom:1px solid #d2d2d2; border-radius:0; padding:7px 0; font-size:14px; font-weight:400; color:#555; background:transparent; margin-top:7px; }
.contact-form input { height:38px; width:60%; } .contact-form textarea { width:100%; resize:vertical; height:120px; min-height:110px; }
.required { color:#b52323; } .contact-form button { display:block; margin-left:auto; border:0; background:var(--green); color:white; border-radius:3px; padding:15px 33px; text-transform:uppercase; font-size:18px; box-shadow:0 2px 5px #0002; }
.home-form label { font-size:14px; margin-bottom:15px; } .home-form input { width:100%; } .home-form button { font-size:14px; }
.contact-form button:disabled { opacity:.7; cursor:default; } .contact-form .field-note { font-size:13px; line-height:1.4; }
.form-notice { font-size:12px; line-height:1.5; margin:16px 0 0; color:#666; } .contact-form-status { font-size:14px; margin-top:15px; } .contact-form-status:empty { display:none; }
.page-container { max-width:1170px; padding:111px 15px 60px; margin:0 auto; }
.page-content { width:780px; max-width:100%; padding:0 15px; margin:0 auto; font-size:18px; line-height:1.618; }
.page-content > .row:first-child h1 { margin:0 0 15px; line-height:1.3; }
.page-content h2,.page-content h3,.page-content h4 { font-weight:500; line-height:1.618; margin:0 0 15px; }
.page-content section h1 { color:inherit; }
.content-columns { display:flex; gap:9px; margin-bottom:1.75em; }
.content-column { flex:1 1 0; min-width:0; } .content-column[style*="flex-basis"] { flex-grow:0; flex-shrink:1; }
.content-column > .content-columns:last-child { margin-bottom:0; }
.content-image { margin:0; } .is-layout-flow > * + .content-image { margin-top:24px; }
.content-image img { width:100%; object-fit:contain; }
.has-text-align-center,.text-center { text-align:center; } .has-text-align-right { text-align:right; }
.has-medium-font-size { font-size:20px; } .has-large-font-size { font-size:36px; } .has-black-color { color:black; }
.photo-cover { position:relative; min-height:430px; padding:1em; display:flex; align-items:center; justify-content:center; color:#fff; isolation:isolate; height:100%; }
.photo-cover-image,.photo-cover-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.photo-cover-shade { background:rgba(0,0,0,.5); z-index:-1; } .photo-cover-content { width:100%; }
.photo-cover p { line-height:1.6; } .photo-cover .has-large-font-size { font-size:36px; }
.contact-split { display:flex; gap:28px; align-items:stretch; margin-top:18px; }
.contact-split > .col { flex:1 1 0; min-width:0; display:flex; }
.contact-left { width:100%; padding:18px; border:1px solid #0002; border-radius:12px; }
.contact-left .section { padding:40px 0 14px; border-bottom:1px solid #0002; } .contact-left .section:last-child { border:0; padding-bottom:0; }
.contact-left .label { margin-bottom:6px; font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:#2e7d32; font-weight:700; }
.contact-left p { margin:0 0 15px; color:#3f3f3f; line-height:1.618; }
.contact-left .muted { color:#6a6a6a; font-size:14px; } .contact-left a { color:#1e2d24; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.contact-links,.badge-row { display:flex; gap:10px; flex-wrap:wrap; align-items:center; margin-top:10px; }
.icon-link,.badge { display:inline-flex; align-items:center; gap:8px; padding:8px 10px; border:1px solid #0002; border-radius:10px; font-size:14px; }
.icon-link svg { width:18px; height:18px; flex-shrink:0; }
.form-wrap { width:100%; padding:18px; border:1px solid #0002; border-radius:12px; background:rgba(46,125,50,.04); }
.form-wrap h2 { margin:0 0 10px; font-size:32px; font-weight:800; color:#1e2d24; }
.form-accent { width:70px; height:4px; border-radius:2px; background:#2e7d32; margin:10px 0 16px; }
.with-sidebar { display:grid; grid-template-columns:25% 66.6667%; padding-left:0; padding-right:0; } .with-sidebar .page-content { width:100%; margin:0; }
.resource-sidebar { padding:10px 15px 0; font-size:14px; }
.resource-sidebar h5 { font-size:18px; font-weight:700; margin:38px 0 20px; }
.resource-sidebar ul { padding:0 10px; list-style:none; } .resource-sidebar li { margin-bottom:16px; line-height:1.9; } .resource-sidebar li a { color:var(--ink); }
.resource-sidebar form { display:flex; } .resource-sidebar input { width:100%; min-width:0; border:1px solid #ccc; padding:8px 10px; font:inherit; }
.resource-sidebar button { border:0; background:#323437; color:#fff; padding:6px 10px; font-size:12px; }
.resource-list-items { display:grid; gap:30px; }
.resource-card { display:flex; gap:0; padding:0; background:#f0f5fa; }
.resource-image { flex:0 0 33.3333%; padding-right:20px; align-self:stretch; } .resource-image a { display:block; height:100%; } .resource-image img { width:100%; height:100%; object-fit:cover; }
.resource-body { min-width:0; flex:1; padding:20px; } .resource-category { display:block; font-size:14px; } .resource-category a { color:var(--ink); }
.page-content .resource-title { font-size:27px; line-height:1.25; font-weight:500; margin:10px 0 15px; }
.resource-title a { color:var(--ink); } .resource-meta { font-size:12px; color:#777; } .resource-description { font-size:18px; margin-top:25px; }
.resource-description p { margin:0 0 15px; } .resource-list { margin-bottom:32px; }
.article-content > figure { margin-top:25px; } .article-content .author { font-size:14px; }
.site-footer { background:#323437; color:#fff; padding:30px 0 18px; }
.footer-top { display:flex; gap:30px; align-items:flex-start; padding-bottom:20px; }
.contact-details { flex:1; } .contact-details h5 { color:white; margin:0 0 20px; }
.contact-details p { margin:0 0 15px; } .site-footer a { color:white; }
.footer-logo { width:360px; height:auto; margin-right:30px; }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid #555; padding-top:25px; font-size:12px; }
.footer-bottom nav { display:flex; gap:30px; text-transform:uppercase; }
.skip-link { position:fixed; top:-80px; left:15px; z-index:200; padding:12px; background:white; color:#222; }
.skip-link:focus { top:8px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
@media (min-width:992px) and (max-width:1199px) {
 .container,.page-container { width:970px; } .hero h1 { font-size:55px; } .page-content { width:646.666px; }
}
@media (min-width:769px) and (max-width:991px) {
 .container,.page-container { width:750px; } #primary-navigation { gap:15px; } .brand { font-size:14px; } .brand small { font-size:10px; }
 .hero h1 { font-size:45px; } .page-content { width:100%; }
}
@media (max-width:900px) {
 .contact-split { flex-direction:column; } .contact-split > .col { display:block; }
}
@media (max-width:768px) {
 h1 { font-size:32px; } h2 { font-size:30px; }
 .container { width:100%; } .row { margin:0; } .row > [class*="col-"] { width:100%; padding:0; margin-left:0; }
 .header-inner { flex-wrap:wrap; min-height:70px; gap:0; padding:10px 15px; }
 .home .site-header:not(.scrolled) .header-inner { padding:10px 15px; }
 .brand { font-size:17px; font-weight:700; line-height:1.25; max-width:calc(100% - 50px); } .brand small { font-size:13px; font-weight:600; line-height:1.25; margin-top:3px; } .brand img { width:42px; height:42px; }
 .menu-toggle:not([hidden]) { display:block; }
 #primary-navigation { width:100%; flex-direction:column; align-items:stretch; gap:0; padding:10px 0; }
 #primary-navigation a { padding:10px 8px; }
 .navigation-enhanced #primary-navigation { display:none; } .navigation-enhanced #primary-navigation[data-open="true"] { display:flex; background:#fff; color:#555; }
 .hero { height:90vh; min-height:570px; padding:95px 20px 70px; }
 .hero-grid { display:flex; flex-direction:column; padding:0; gap:20px; }
 .hero-grid > img { width:65%; max-width:320px; padding:0; }
 .hero h1 { padding:0; font-size:36px; line-height:1.3; text-align:center; margin:0; }
 .raised { margin:-60px 15px 0; }
 .features { padding:50px 15px 30px; }
 .feature-info { padding:45px 0 15px; } .feature-info p { font-size:16px; }
 .story { padding:45px 15px 20px; } .story p { font-size:16px; }
 .content-columns { flex-direction:column; gap:24px; } .content-column { flex-basis:auto!important; }
 .story .content-columns { gap:18px; }
 .story .content-column:has(> .spacer + .content-image) > .spacer { height:0!important; }
 .story .content-column:has(img[src*="US-GA"]) { max-width:300px; align-self:center; }
 .home-resources { padding:40px 15px; } .home-resources-content { margin-top:20px; }
 .card-blog { max-width:450px; margin:30px auto; } .card-description { font-size:16px; }
 .home-contact { padding:50px 15px 30px; } .contact-form-column { margin-top:60px; }
 .page-container { padding:95px 15px 40px; } .page-content { padding:0; font-size:16px; }
 .page-content > .row:first-child h1 { margin:10px 0 20px; }
 .with-sidebar { display:flex; flex-direction:column-reverse; } .resource-sidebar { padding:25px 0; }
 .resource-card { flex-direction:column; } .resource-image { flex-basis:auto; padding-right:0; }
 .photo-cover { min-height:350px; } .photo-cover .has-large-font-size { font-size:30px; }
 .footer-top { flex-direction:column; } .footer-logo { max-width:300px; width:100%; margin:0 auto; }
 .footer-bottom { flex-direction:column; align-items:flex-start; } .footer-bottom nav { flex-wrap:wrap; gap:15px; }
 .page-content [style*="grid-template-columns"] { grid-template-columns:1fr!important; }
 .page-content [style*="min-width"] { min-width:0!important; }
 .page-content [style*="padding:130px"] { padding:70px 15px!important; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } * { transition:none!important; } }
