/* Custom CSS for this site. Managed via citAEOtion Options -> Custom CSS. */

/* Homepage hero full-bleed. The parent rule was orphaned in the unloaded
   parent style.css; this restores it through the child custom.css layer so
   the hero image stretches to the full hero area instead of sitting in a
   centered, gutter-bound box. */
.home-hero .hero-img { display: block; width: 100%; max-width: none; }
/* Block-center the answer block + tldr, leave text alignment alone */
.fcs-aeo-answer-block,
.intro {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 900px;
    text-align: left;  /* override anything that's centering text inside */
}
.fcs-aeo-tldr {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 900px;
    text-align: left;
}
.primary-nav > ul > li > a, .primary-nav > div > ul > li > a {
    display: block;
    font-size: 18px;
    color: var(--brand-primary);
    text-transform: none;
    position: relative;
    line-height: 30px;
    padding: 0px 24px;
    letter-spacing: 0.02em;
    font-weight: 700;
    text-decoration: none;
    transition: color 0.2s ease;
}
.fcs-blog-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    background-color: #000000;
}
.geo-where-question {display: none;}
h3.underline {
    color: var(--brand-primary);
    border-bottom: 3px solid var(--brand-accent);
    padding-bottom: .4rem;
    margin-top: 2.5rem;
    font-size: 24px;
}
.fcs-blog-card__more {
    align-self: flex-start;
    display: inline-block;
    padding: .5rem 1rem;
    background: var(--fcs-brand-primary, #ff0000);
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    font-size: .9rem;
    font-weight: 600;
    transition: background .15s ease;
}
.footer-widget-area-1 {text-align: center}
.footer-widget-area-2 {text-align: center}
.footer-widget-area-3 {text-align: center}
.footer-widget-area-4 {text-align: center}
.center {text-align: center;}
.white {color: #ffffff !important; text-align: center; }
h2.white {font-size: 24px !important; color: #ffffff !important; text-align: center; }
h3.white {font-size: 20px !important; color: #ffffff !important; text-align: center; }
.help-you {padding-right: 8%; padding-left: 8%;}
.homepage-testimonial {text-align: center; font-size: 24px!important; background-color:rgba(244,244,244,0.71)!important;}
.flex-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.flex-item {
  flex: 1 1 calc(25% - 1rem);
  box-sizing: border-box;
  padding: .25rem 1rem;
}
@media screen and (min-width: 769px) {
h1.smallTitle {
    font-size: 36px !important;
    margin-bottom: 7px;
    margin-left: 8%;
    margin-right: 8%;
    line-height: 1.2;
    color: var(--brand-white) !important;
    text-align: center !important;
}
h2.smallTitle {
    font-size: 24px !important;
    border-bottom: none !important;
    padding-bottom: 0px !important;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    margin-left: 8%;
    margin-right: 8%;
    color: var(--brand-white) !important;
    text-align: center !important;
}
.page-color-band {
    background: #00000;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    color: #ffffff;
    padding: 1.5rem 1rem;
    text-align: center;
}
.fcs-container {
    max-width: 84%;
    margin: 0 auto;
    padding: 2rem 1rem;
}
.multi-column-list {
  column-count: 2; /* Number of columns */
  column-gap: 20px; /* Space between columns */
  list-style-position: inside; /* Ensures bullets stay within columns */
}}
@media screen and (max-width: 768px) {
.flex-container { flex-direction: column; }
.page-color-band {
    background: #000000;
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    color: #ffffff;
    padding: 1.5rem 1rem;
    text-align: center;
}
}
/* Skip link / screen-reader text - off-screen until keyboard focus (WCAG 2.4.1) */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus,
.skip-link:focus {
	position: fixed;
	top: 8px;
	left: 8px;
	clip: auto;
	clip-path: none;
	height: auto;
	width: auto;
	margin: 0;
	padding: 12px 20px;
	background: #fff;
	color: #111;
	font-weight: 700;
	text-decoration: none;
	z-index: 100000;
	box-shadow: 0 0 6px rgba(0, 0, 0, .3);
}
/* [citaeotion_posts] — inverted light card grid */
.cae-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:8px 0}
.cae-post{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(8,19,32,.12);border-radius:14px;overflow:hidden;text-decoration:none;color:#0c1c2e;transition:.18s}
.cae-post:hover{transform:translateY(-3px);box-shadow:0 22px 44px -24px rgba(8,19,32,.32)}
.cae-post-img{display:block;aspect-ratio:16/10;overflow:hidden;background:#f5f8fa}
.cae-post-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}
.cae-post:hover .cae-post-img img{transform:scale(1.04)}
.cae-post-body{display:flex;flex-direction:column;flex:1;padding:22px}
.cae-post-date{font-size:13px;color:#5b6a78;margin-bottom:8px}
.cae-post-title{font-size:19px;font-weight:800;line-height:1.3;letter-spacing:-.01em;margin-bottom:10px}
.cae-post:hover .cae-post-title{color:#0098b5}
.cae-post-ex{font-size:14.5px;color:#5b6a78;line-height:1.6;margin-bottom:18px;flex:1}
.cae-post-more{align-self:flex-start;margin-top:auto;background:#0098b5;color:#fff;font-weight:700;font-size:14px;padding:10px 20px;border-radius:999px}
.cae-post:hover .cae-post-more{filter:brightness(1.06)}
@media(max-width:880px){.cae-posts{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.cae-posts{grid-template-columns:1fr}}