/* --- Keep shared header visible even if its JS hasn't run --- */
body .v2-header { display: flex !important; }

/* --- Layout --- */
:root{
  --afcs-header-h: 70px;
  --afcs-adminbar-h: 32px;

  --afcs-ann-pad: 18px;
  --afcs-ann-pad-mobile: 12px;

  /* Falback variables */
  --afcs-ann-font-size: 26px;
  --afcs-ann-font-size-mobile: 18px;
  --afcs-ann-weight: 400;
  --afcs-ann-weight-mobile: 400;
}

/* --- Announcement bar under the header --- */
.afcs-announcement{
  width: 100%;
  box-sizing: border-box;
  background: var(--afcs-bar, #0B0F16);
  color: var(--afcs-text, #fff);
  line-height: 1.35;
  position: sticky;
  top: var(--afcs-header-h);
  z-index: 9999;
}

.admin-bar .afcs-announcement{
  top: calc(var(--afcs-header-h) + var(--afcs-adminbar-h));
}

/* Inner controls ALL typography for the strip */
.afcs-announcement .afcs-inner{
  max-width: 1240px;
  margin: 0 auto;
  padding: var(--afcs-ann-pad) 16px;
  text-align: center;

  font-family: inherit;
  font-weight: var(--afcs-ann-weight);
  font-size: var(--afcs-ann-font-size);
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: var(--afcs-container, transparent);
  color: var(--afcs-text, #fff);
}

/* Links */
.afcs-announcement .afcs-inner a,
.afcs-announcement .afcs-inner a:link,
.afcs-announcement .afcs-inner a:visited{
  font-family: inherit !important;
  font-weight: var(--afcs-ann-weight) !important;
  font-size: var(--afcs-ann-font-size) !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;

  color: var(--afcs-link, #fff) !important;
  display: inline;
  text-decoration: underline;
  text-underline-offset: 0.12em;
  text-decoration-thickness: 2px;
  text-decoration-skip-ink: auto;
}

/* Hover/focus */
.afcs-announcement .afcs-inner a:hover,
.afcs-announcement .afcs-inner a:focus{
  /* Dashboard Setting for the link hover */
  color: var(--afcs-link-hover, var(--afcs-link, #fff)) !important;
  text-decoration-thickness: 2px;
  outline: none;
}

/* Mobile overrides */
@media (max-width: 640px){
  .afcs-announcement .afcs-inner{
    padding: var(--afcs-ann-pad-mobile) 12px;
    font-size: var(--afcs-ann-font-size-mobile);
    font-weight: var(--afcs-ann-weight-mobile, var(--afcs-ann-weight));
  }
  .afcs-announcement .afcs-inner a,
  .afcs-announcement .afcs-inner a:link,
  .afcs-announcement .afcs-inner a:visited{
    font-size: var(--afcs-ann-font-size-mobile) !important;
    font-weight: var(--afcs-ann-weight-mobile, var(--afcs-ann-weight)) !important;
  }
}

.afcs-announcement,
.afcs-announcement *
{ box-sizing: border-box;
}

/* --- Images/icons inside the announcement text to keep the bar height consistent and not change because of the image added*/
.afcs-announcement .afcs-container img{
  height: 1em;            /* this makes the image stay within same height specs as the text and keeps things aligned */
  max-height: 1em;
  width: auto;
  display: inline;        
  vertical-align: -0.12em;
  margin: 0 .5em 0 0;     
}

/* If the editor wrapped the image in a figure/caption this is to force it inline too */
.afcs-announcement .afcs-container figure,
.afcs-announcement .afcs-container .wp-caption{
  display: inline;
  margin: 0 .5em 0 0;
}
.afcs-announcement .afcs-inner a:focus-visible{
  outline: 2px dashed currentColor;
  outline-offset: 2px;
}
.afcs-announcement .afcs-inner a:active{
  color: var(--afcs-link-hover, var(--afcs-link, #fff)) !important;
}
.afcs-announcement .afcs-container p{
  display: inline;
  margin: 0;
}
