/*
Theme Name: Amateur Emergency Services Theme
Theme URI: https://example.com/
Author: OpenAI
Description: A professional, lightweight, responsive red, white and blue WordPress theme for amateur-radio emergency communications organizations.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL v2 or later
Text Domain: ares
Tags: custom-background, custom-logo, custom-menu, featured-images, footer-widgets, right-sidebar
*/
:root{
 --aes-red:#c8102e;
 --aes-blue:#003f7d;
 --aes-navy:#002b5c;
 --aes-white:#fff;
 --aes-light:#f3f6fa;
 --aes-text:#1d2733;
 --aes-button:#c8102e;
 --aes-button-hover:#003f7d;
 --aes-border:#d9e0e8;
 --aes-shadow:0 4px 18px rgba(0,0,0,.08);
 --aes-radius:4px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--aes-light);color:var(--aes-text);font-family:Arial,Helvetica,sans-serif;line-height:1.65;font-size:16px}
img{max-width:100%;height:auto}a{color:var(--aes-blue);text-decoration:none}a:hover,a:focus{text-decoration:underline}
button,input,textarea,select{font:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:10px;top:-50px;background:#fff;color:#000;padding:10px 15px;z-index:9999}.skip-link:focus{top:10px}

.site-header{background:#fff;border-bottom:5px solid var(--aes-red)}
.header-image{position:relative;min-height:155px;background-position:center center;background-size:contain;background-repeat:no-repeat;background-color:var(--aes-navy)}
.header-inner{position:relative;width:min(1180px,92%);height:100%;min-height:inherit;margin:0 auto;padding:0;display:block}
.custom-logo-link{position:absolute!important;left:0!important;bottom:10px!important;top:auto!important;right:auto!important;margin:0!important;transform:none!important;z-index:5;display:block}
.custom-logo-link .custom-logo{display:block;width:var(--aes-logo-width,180px);max-width:min(var(--aes-logo-width,180px),42vw);height:auto}
.site-branding{position:absolute;right:0;bottom:10px;max-width:60%;background:var(--aes-site-identity-bg,#fff);padding:12px 18px;border-left:6px solid var(--aes-red)}
.site-title{margin:0;color:var(--aes-site-title-color,var(--aes-navy));font-size:clamp(28px,4vw,46px);line-height:1.05;font-weight:800}
.site-description{margin:5px 0 0;color:var(--aes-site-tagline-color,#4b5563);font-weight:600}

.main-navigation{position:relative;z-index:100;background:var(--aes-navy)}
.main-navigation .menu-toggle{display:none;background:none;color:#fff;border:0;padding:13px 4%;font-weight:700}
.main-navigation ul{list-style:none;margin:0 auto;padding:0;width:min(1180px,92%);display:flex;flex-wrap:wrap;overflow:visible}
.main-navigation li{position:relative;margin:0}
.main-navigation a{display:block;color:#fff;font-weight:700;padding:14px 17px}
.main-navigation a:hover,.main-navigation a:focus,.main-navigation .current-menu-item>a{background:var(--aes-red);text-decoration:none}
.main-navigation ul ul{display:none;position:absolute;top:100%;left:0;z-index:999;min-width:220px;width:max-content;max-width:320px;margin:0;padding:0;background:var(--aes-navy);box-shadow:0 8px 18px rgba(0,0,0,.2);flex-direction:column}
.main-navigation ul ul li{width:100%}.main-navigation ul ul a{width:100%;padding:12px 16px;white-space:normal;border-top:1px solid rgba(255,255,255,.12)}
.main-navigation li:hover>ul,.main-navigation li:focus-within>ul{display:flex}.main-navigation ul ul ul{top:0;left:100%}
.main-navigation .submenu-toggle{display:none!important}

.emergency-banner{background:var(--aes-red);color:#fff;font-weight:800}
.emergency-inner{width:min(1180px,92%);margin:auto;padding:11px 0;display:flex;gap:10px;align-items:center}
.emergency-label{background:#fff;color:var(--aes-red);padding:3px 9px;border-radius:3px;font-size:.8rem;letter-spacing:.06em}.emergency-message{flex:1}

.action-bar{background:#fff;border-bottom:1px solid var(--aes-border);padding:20px 0}
.action-buttons{width:min(1180px,92%);margin:auto;display:flex;flex-wrap:wrap;gap:12px}
.aes-action-button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:12px 24px;background:var(--aes-button);color:#fff;border:2px solid var(--aes-button);border-radius:var(--aes-radius);font-size:1.05rem;font-weight:800;text-align:center;transition:.18s ease}
.aes-action-button:hover,.aes-action-button:focus{background:var(--aes-button-hover);border-color:var(--aes-button-hover);color:#fff;text-decoration:none;transform:translateY(-1px)}

.site-main{width:min(1180px,92%);margin:30px auto;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:30px}
.content-area,.widget-area .widget{background:#fff;border:1px solid var(--aes-border);box-shadow:var(--aes-shadow);border-radius:var(--aes-radius)}
.content-area{padding:28px}.widget-area{display:flex;flex-direction:column;gap:20px}.widget-area .widget{padding:20px;margin:0}
.widget-title{margin:0 0 13px;padding-bottom:8px;border-bottom:3px solid var(--aes-red);font-size:1.15rem;color:var(--aes-navy)}
.widget ul{padding-left:20px;margin-bottom:0}.entry-title,.page-title{color:var(--aes-navy);line-height:1.2;margin-top:0}
.entry-meta{color:#667085;font-size:.9rem}.entry-content h2,.entry-content h3{color:var(--aes-blue)}
.entry-content blockquote{border-left:5px solid var(--aes-red);margin:20px 0;padding:10px 20px;background:#f7f8fa}.post-thumbnail{margin-bottom:20px}

.social-links{display:flex;gap:10px;flex-wrap:wrap}.social-link{display:inline-flex;align-items:center;gap:8px;background:var(--aes-facebook-button,var(--aes-navy));color:var(--aes-facebook-text,#fff);font-weight:800;padding:9px 13px;border-radius:4px}
.social-link:hover,.social-link:focus{background:var(--aes-facebook-hover,var(--aes-red));color:#fff;text-decoration:none}.social-link svg{width:20px;height:20px;fill:currentColor}
.aes-sidebar-social{margin-top:0;padding:16px;background:#fff;border:1px solid var(--aes-border);box-shadow:var(--aes-shadow);border-radius:var(--aes-radius)}
.aes-sidebar-social .social-links{display:flex;flex-direction:column;gap:10px}.aes-sidebar-social .social-link{width:100%;justify-content:center}

.site-footer{background:var(--aes-navy);color:#fff;margin-top:30px}.footer-widgets{width:min(1180px,92%);margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:38px 0}
.footer-column .widget{background:transparent;border:0;box-shadow:none;padding:0;margin:0}.footer-column .widget-title{color:#fff;border-color:var(--aes-red)}.footer-column a{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.2);padding:18px 0;text-align:center;font-size:.9rem}.footer-bottom-inner{width:min(1180px,92%);margin:auto}

input[type=text],input[type=email],input[type=url],input[type=search],textarea,select{width:100%;border:1px solid #cbd5e1;padding:10px;border-radius:3px}
input[type=submit],.wp-block-button__link{background:var(--aes-red);color:#fff;border:0;padding:10px 18px;font-weight:700;border-radius:3px}

@media(max-width:850px){
 .site-main{grid-template-columns:1fr}.footer-widgets{grid-template-columns:1fr}
 .main-navigation .menu-toggle{display:block;width:100%;text-align:left}
 .main-navigation>div>ul,.main-navigation>ul{display:none;flex-direction:column}
 .main-navigation.toggled>div>ul,.main-navigation.toggled>ul{display:flex}
 .main-navigation a{padding:12px 4%}
 .main-navigation ul ul{position:static;display:none;min-width:0;width:100%;max-width:none;box-shadow:none;background:rgba(0,0,0,.16)}
 .main-navigation li:hover>ul{display:none}.main-navigation li.submenu-open>ul{display:flex}
 .main-navigation .submenu-toggle{display:flex!important;align-items:center;justify-content:center;position:absolute;right:0;top:0;width:48px;height:48px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;z-index:2}
 .main-navigation .submenu-toggle::before{content:"▾";font-size:18px;line-height:1;transition:transform .18s ease}.main-navigation li.submenu-open>.submenu-toggle::before{transform:rotate(180deg)}
 .main-navigation .menu-item-has-children>a{padding-right:52px}
 .custom-logo-link{left:0!important;bottom:8px!important}.custom-logo-link .custom-logo{max-width:min(var(--aes-logo-width,180px),48vw)}
 .site-branding{right:0;bottom:8px;max-width:48%}
}
@media(max-width:600px){
 .action-buttons{display:grid;grid-template-columns:1fr}.aes-action-button{width:100%}
 .content-area{padding:20px}.emergency-inner{align-items:flex-start;flex-direction:column}
 .custom-logo-link .custom-logo{max-width:min(var(--aes-logo-width,180px),52vw)}.site-branding{max-width:44%}
}
