
/* === AAF visual fix pack === */
/* Hide WP admin bar element ONLY — never .admin-bar (that class is on <body>
   and would blank the entire page with display:none) */
#wpadminbar{display:none!important}
html{margin-top:0!important}
html.admin-bar{margin-top:0!important}
body.admin-bar{padding-top:0!important}

/* Footer — legal links MUST be visible (were #f1f1f1 on white outside .bottom-footer) */
#colophon.site-footer{
  background:#2b2b2b!important;
  color:#f5f5f5!important;
  padding-top:8px;
}
#colophon .aaf-footer-legal{
  display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center;
  padding:14px 16px 8px;margin:0;background:#2b2b2b;
}
#colophon .aaf-footer-legal a{
  color:#ffffff!important;text-decoration:none;font-size:13px;
  border-bottom:1px solid transparent;
}
#colophon .aaf-footer-legal a:hover{
  color:#ffd7d0!important;border-bottom-color:#dc3522;
}
#colophon .bottom-footer{
  background:#222!important;color:#eee!important;padding:12px 0 18px;
}
#colophon .bottom-footer a,
#colophon .site-info,
#colophon .site-info a,
#colophon .ak-info,
#colophon .ak-info a{
  color:#eaeaea!important;
}
#colophon .ak-info{opacity:.85;font-size:13px}

/* Minimal header: logo + nav only */
.top-menu-wrapper{display:none!important}
.logo-ad-wrapper .header-ad, .logo-ad-wrapper .widget{display:none!important}
#masthead{background:#fff;border-bottom:1px solid #e6e6e6}
#masthead .site-title{color:#222!important}
#masthead .site-description{color:#666!important}

/* Nav — dark text on light, red active (reference style) */
.main-navigation{background:#f3f3f3!important;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}
.main-navigation ul#menu-aaf-primary > li > a{
  color:#333!important;background:transparent;
}
.main-navigation ul#menu-aaf-primary > li.current-menu-item > a,
.main-navigation ul#menu-aaf-primary > li.aaf-nav-active > a{
  background:#dc3522!important;color:#fff!important;
}
.main-navigation .aaf-nav-search a{color:#333!important}
.main-navigation .nav-toggle span{background:#333!important}

/* Search control fallback when icon font lags — still clearly visible */
.main-navigation .aaf-nav-search a::after{
  content:"Search";
  margin-left:6px;
  font-size:12px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.02em;
}
@media (max-width:980px){
  .main-navigation .aaf-nav-search a::after{content:none}
}
#site-navigation .search-icon > i.fa-search:before{content:"\f002"}
#site-navigation .random-post a .fa-random:before{content:"\f074"}

/* ============================================================
   Color-contrast fixes — search / random / header icons
   Problem: customizer used near-black blues (#000adb / #000683)
   so search submit blended into the form; transparent inputs
   (via -webkit-appearance:none) + dark text on dark form
   looked invisible. Random/search icons could also inherit
   weak contrast on the light nav (#f3f3f3).
   ============================================================ */

/* --- Inline nav search panel (#aaf-search-panel) --- */
#aaf-search-panel,
.aaf-search-panel,
.aaf-search-panel.is-open{
  display:block!important;
  background:#fff!important;
  border:1px solid #ccc!important;
  padding:12px!important;
  margin:8px 0 12px!important;
  box-shadow:0 2px 8px rgba(0,0,0,.08);
}
#aaf-search-panel input[type=search],
#aaf-search-panel input[type=text],
#aaf-search-panel .search-field,
.aaf-search-panel input[type=search],
.aaf-search-panel input[type=text]{
  background:#fff!important;
  color:#333!important;
  border:1px solid #ccc!important;
  padding:10px 12px!important;
  min-width:220px;
  width:70%;
  max-width:420px;
  -webkit-appearance:none;
  appearance:none;
  opacity:1!important;
}
#aaf-search-panel input::placeholder,
.aaf-search-panel input::placeholder{
  color:#666!important;
  opacity:1!important;
}
#aaf-search-panel button,
#aaf-search-panel input[type=submit],
#aaf-search-panel .search-submit,
.aaf-search-panel button,
.aaf-search-panel input[type=submit],
.aaf-search-panel .search-submit{
  background:#dc3522!important;
  color:#fff!important;
  border:0!important;
  padding:10px 16px!important;
  cursor:pointer;
  margin-left:8px;
  opacity:1!important;
}
#aaf-search-panel button:hover,
#aaf-search-panel .search-submit:hover,
.aaf-search-panel button:hover{
  background:#a5281b!important;
  color:#fff!important;
}

/* --- Legacy overlay search (.ak-search) — overrides #000adb/#000683 --- */
.ak-search .search-form{
  background:#fff!important;
  border:2px solid #dc3522!important;
  box-shadow:0 8px 28px rgba(0,0,0,.35);
  /* do NOT force opacity here — theme hides until .active */
}
.ak-search .search-form .search-field,
.ak-search .search-form input[type=search],
.ak-search .search-form input[type=text]{
  background:#f5f5f5!important;
  color:#333!important;
  border:1px solid #ccc!important;
  -webkit-appearance:none;
  appearance:none;
  opacity:1!important;
}
.ak-search .search-form .search-field::placeholder{
  color:#666!important;
  opacity:1!important;
}
.ak-search .search-form .search-submit,
.ak-search .search-form .search-submit:hover,
.ak-search .search-form button[type=submit]{
  background:#dc3522!important;
  color:#fff!important;
  border:0!important;
  opacity:1!important;
}
.ak-search .search-form .search-submit:hover,
.ak-search .search-form button[type=submit]:hover{
  background:#a5281b!important;
  color:#fff!important;
}
.ak-search .close{
  color:#dc3522!important;
  text-shadow:0 0 2px #fff;
}

/* --- Search / random icons in header nav --- */
#site-navigation .search-icon,
#site-navigation .search-icon > i,
#site-navigation .random-post,
#site-navigation .random-post a,
#site-navigation .random-post a .fa,
#site-navigation .random-post > .fa,
.main-navigation .aaf-nav-search a,
.main-navigation .aaf-nav-search .fa{
  color:#333!important;
  opacity:1!important;
  visibility:visible!important;
}
#site-navigation .search-icon > i:hover,
#site-navigation .random-post a:hover,
#site-navigation .random-post a:hover .fa,
.main-navigation .aaf-nav-search a:hover,
.main-navigation .aaf-nav-search a:hover .fa{
  color:#dc3522!important;
}
/* Random post — clearly readable control (not icon-only invisible) */
#site-navigation .random-post a{
  display:inline-flex!important;
  align-items:center;
  gap:6px;
  font-size:13px!important;
  font-weight:600;
  line-height:48px;
  text-decoration:none!important;
  text-transform:uppercase;
  letter-spacing:.02em;
}
#site-navigation .random-post a .fa{
  font-size:16px;
  line-height:1;
}
#site-navigation .random-post a::after{
  content:"View Random Post";
  color:inherit;
  white-space:nowrap;
}
/* Icon-only pages without <a> still show label via title parent */
#site-navigation .random-post > .fa{
  font-size:16px;
}
@media (max-width:980px){
  #site-navigation .random-post a::after{content:none}
  #site-navigation .random-post a{
    font-size:18px!important;
    padding:0 8px;
  }
}

/* Mobile hamburger / submenu caret */
.main-navigation .nav-toggle span{background:#333!important}
#site-navigation .sub-toggle{
  background:#dc3522!important;
  color:#fff!important;
}
/* Dropdown caret underline / submenu hover stay brand-red on light */
#site-navigation ul.menu > li:hover > a:after,
#site-navigation ul.menu > li.current-menu-item > a:after,
#site-navigation ul.menu > li.current-menu-ancestor > a:after{
  border-bottom-color:#dc3522!important;
}
#site-navigation ul.sub-menu{
  background:#fff!important;
}
#site-navigation ul.sub-menu li a{
  color:#333!important;
}
#site-navigation ul.sub-menu li:hover,
#site-navigation ul.sub-menu li.current-menu-item{
  background:#dc3522!important;
}
#site-navigation ul.sub-menu li:hover > a,
#site-navigation ul.sub-menu li.current-menu-item > a{
  color:#fff!important;
}

/* Homepage hero */
.aaf-home-hero{width:100%;margin:0 0 1.25em;overflow:hidden;background:#1a1a1a}
.aaf-home-hero picture,.aaf-home-hero img{
  display:block;width:100%;height:auto;max-height:420px;object-fit:cover;
}

/* Kill leftover red placeholders (if any slip through) */
img[src*="img-"][width="900"]{max-width:100%}

/* Header always above page content (prevents hero/image takeover) */
#masthead,
.site-header,
header#masthead{
  position:relative!important;
  z-index:999!important;
  overflow:visible;
  background:#fff;
}
#masthead .site-branding,
#masthead .sitetext-wrap,
#masthead .sitelogo-wrap{
  position:relative;
  z-index:1000;
}
#site-navigation,
.main-navigation{
  position:relative;
  z-index:1001;
}
/* Featured images must NEVER live inside the header */
#masthead .aaf-featured-wrap{display:none!important}
/* Featured/hero images in normal document flow below header */
.aaf-featured-wrap{
  position:relative!important;
  z-index:1!important;
  margin:0 0 1.25em;
  top:auto!important;
  left:auto!important;
  width:100%;
  max-width:100%;
}
/* Cap only the hero media — keep related-reading asides outside the crop */
.aaf-featured-wrap > picture{
  display:block;
  width:100%;
  max-width:100%;
  height:min(450px,55vw);
  max-height:450px;
  overflow:hidden;
}
.aaf-featured-wrap > picture img,
.aaf-featured-wrap > img{
  position:relative!important;
  z-index:1!important;
  display:block;
  width:100%;
  max-width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

/* Static image gallery (replaces broken Elementor/Swiper carousels) */
.aaf-image-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  width:100%;
  margin:0;
}
.aaf-image-gallery .aaf-gallery-item{
  margin:0;
  overflow:hidden;
}
.aaf-image-gallery img{
  display:block;
  width:100%;
  height:auto;
  vertical-align:middle;
}
@media (max-width:1024px){
  .aaf-image-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:640px){
  .aaf-image-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}
