/* ============================================================================
   Faith Academy - shared header styles (quick-link bar, header buttons,
   announcement strip). Loaded on every page after style.css.
   ============================================================================ */

:root {
  --fa-navy: #001b60;
  --fa-navy-2: #0a2a7a;
  --fa-blue: #086db5;
  --fa-gold: #f2b705;
  --fa-ink: #353434;
}

/* ---------- quick-link bar (top of every page) ---------- */
#fa-topbar {
  background: var(--fa-navy);
  border-bottom: 3px solid var(--fa-gold);
  font-family: 'Open Sans', Arial, Helvetica, sans-serif;
  position: relative;
  z-index: 200;
}
.fa-topbar-inner { max-width: 1000px; margin: 0 auto; }
.fa-desk {
  display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center;
  margin: 0; padding: 0; list-style: none;
}
.fa-desk > li { position: relative; margin: 0; padding: 0; background: none; }
.fa-desk > li > a,
.fa-desk > li > button {
  display: flex; align-items: center; gap: 6px;
  padding: 9px 9px; color: #dbe4f5; font: 600 12px/18px 'Open Sans', Arial, sans-serif;
  text-decoration: none; background: none; border: 0; cursor: pointer;
  transition: color .2s, background .2s;
}
.fa-desk > li > a:hover,
.fa-desk > li > button:hover,
.fa-desk > li.fa-open > button { color: #fff; background: var(--fa-navy-2); }
.fa-desk .fa-ico { width: 15px; height: 15px; flex: none; opacity: .85; }
.fa-desk button .fa-ico:last-child { width: 12px; height: 12px; margin-left: -2px; }

/* Donate - gold pill */
.fa-desk > li.fa-hl > a {
  background: var(--fa-gold); color: var(--fa-navy); border-radius: 14px;
  padding: 4px 12px; margin: 0 4px 0 6px;
}
.fa-desk > li.fa-hl > a:hover { background: #ffd23f; color: var(--fa-navy); }
.fa-desk > li.fa-hl .fa-ico { opacity: 1; }

/* Facebook */
.fa-desk > li.fa-fb > a { padding: 9px 4px 9px 8px; }
.fa-desk > li.fa-fb .fa-ico { width: 17px; height: 17px; }

/* Orientation drop-down */
.fa-dd > ul {
  display: none; position: absolute; right: 0; top: 100%; min-width: 220px;
  margin: 3px 0 0; padding: 6px 0; list-style: none;
  background: #fff; border-radius: 6px; box-shadow: 0 8px 24px rgba(0,0,0,.18);
}
.fa-dd:hover > ul, .fa-dd.fa-open > ul, .fa-dd:focus-within > ul { display: block; }
.fa-dd > ul > li { background: none; margin: 0; padding: 0; }
.fa-dd > ul a {
  display: flex; align-items: center; gap: 8px; padding: 8px 16px;
  color: var(--fa-ink); font: 600 13px/18px 'Open Sans', Arial, sans-serif; text-decoration: none;
}
.fa-dd > ul a:hover { background: #eef4fb; color: var(--fa-blue); }
.fa-dd > ul .fa-ico { width: 16px; height: 16px; color: var(--fa-blue); }

/* phone grid hidden on computers */
.fa-phone { display: none; }

/* ---------- logo row ---------- */
header { padding-top: 22px; }
header > img { margin-left: 6px; }
.fa-header-btns {
  float: right; display: flex; gap: 10px; margin-top: 18px;
}
.fa-btn {
  display: inline-block; padding: 10px 18px; border-radius: 5px;
  font: 700 14px/18px 'Open Sans', Arial, sans-serif; text-decoration: none;
  transition: background .2s, color .2s, border-color .2s; white-space: nowrap;
}
.fa-btn-solid { background: var(--fa-blue); color: #fff; border: 2px solid var(--fa-blue); }
.fa-btn-solid:hover { background: var(--fa-navy); border-color: var(--fa-navy); color: #fff; }
.fa-btn-outline { background: #fff; color: var(--fa-navy); border: 2px solid var(--fa-navy); }
.fa-btn-outline:hover { background: var(--fa-navy); color: #fff; }

/* ---------- announcement strip (under the menu) ---------- */
.fa-announce { padding: 18px 30px 6px; }
.fa-announce .fa-gp,
.fa-announce .fa-notice {
  display: flex; align-items: center; gap: 18px; border-radius: 8px; margin-bottom: 12px;
  font-family: 'Open Sans', Arial, sans-serif;
}
.fa-gp {
  padding: 10px 22px; background: #eef5fb; border: 1px solid #d3e4f3;
  text-decoration: none; transition: background .2s;
}
.fa-gp:hover { background: #e2eef9; }
.fa-gp img { flex: none; width: 120px; height: auto; }
.fa-gp span { flex: 1; color: var(--fa-blue); font-size: 19px; line-height: 26px; font-weight: 600; }
.fa-gp em { font-style: normal; color: var(--fa-navy); font-weight: 700; font-size: 14px; white-space: nowrap; }

.fa-notice {
  padding: 14px 18px 14px 22px; background: #fff8e1; border: 1px solid #f5d77a;
  border-left: 6px solid var(--fa-gold);
}
.fa-notice-tag {
  flex: none; background: #c62828; color: #fff; text-transform: uppercase; letter-spacing: .06em;
  font-size: 11px; font-weight: 700; line-height: 16px; padding: 3px 9px; border-radius: 3px;
}
.fa-notice-text { flex: 1; color: var(--fa-ink); font-size: 17px; line-height: 24px; font-weight: 700; }
.fa-notice .fa-btn { flex: none; }

/* ---------- tablets ---------- */
@media only screen and (max-width: 995px) {
  .fa-desk { justify-content: center; }
  .fa-desk .fa-ico { display: none; }
  .fa-desk .fa-hl .fa-ico, .fa-desk .fa-fb .fa-ico { display: inline; }
  .fa-desk > li > a, .fa-desk > li > button { padding: 9px 6px; font-size: 11.5px; }
  .fa-desk > li.fa-hl > a { padding: 4px 10px; margin: 0 2px 0 4px; }
  .fa-desk > li.fa-fb > a { padding: 9px 2px 9px 4px; }
  .fa-header-btns { gap: 8px; margin-top: 20px; }
  .fa-header-btns .fa-btn { padding: 8px 12px; font-size: 13px; }
}

/* ---------- phones ---------- */
@media only screen and (max-width: 767px) {
  .fa-topbar-inner { display: none; }
  .fa-phone {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px;
    background: rgba(255,255,255,.12);
  }
  .fa-phone a {
    display: flex; flex-direction: column; align-items: center; gap: 4px;
    padding: 10px 2px 9px; background: var(--fa-navy); color: #fff; text-decoration: none;
    font: 600 11px/14px 'Open Sans', Arial, sans-serif; text-align: center;
  }
  .fa-phone a:active { background: var(--fa-navy-2); }
  .fa-phone .fa-ico { width: 22px; height: 22px; color: #9fc3ee; }
  .fa-phone a.fa-hl .fa-ico { color: var(--fa-gold); }

  header { padding-top: 16px; }
  .fa-header-btns { display: none; }
  .fa-announce { padding: 14px 12px 4px; }
  .fa-announce .fa-gp, .fa-announce .fa-notice { flex-direction: column; text-align: center; gap: 10px; }
  .fa-gp span { font-size: 16px; line-height: 22px; }
  .fa-notice { border-left-width: 1px; border-top: 6px solid var(--fa-gold); }
  .fa-notice-text { font-size: 15px; line-height: 21px; }
}
@media only screen and (max-width: 479px) {
  header > img { display: none; }
}

/* ============================================================================
   Page components (used on Contacts, Admissions, Academics, Transcript
   Request and Georgia Promise pages)
   ============================================================================ */
.fa-tel { color: inherit; text-decoration: none; border-bottom: 1px dotted currentColor; }
.fa-tel:hover { color: var(--fa-blue); }

/* Contacts - campus cards */
.fa-campus { display: flex; gap: 20px; padding: 0 0 22px; margin: 0 0 22px; border-bottom: 1px solid #e6e6e6; }
.fa-campus:last-child { border-bottom: 0; margin-bottom: 0; }
.fa-campus > figure { flex: none; margin: 0; }
.fa-campus > figure img { display: block; border-radius: 6px; }
.fa-campus h4 { margin: 0 0 6px; font: 600 20px/26px 'Open Sans', Arial, sans-serif; }
.fa-campus h4 a { color: var(--fa-blue); text-decoration: none; }
.fa-campus-info { flex: 1; min-width: 0; font: 13px/20px Arial, Helvetica, sans-serif; color: #555; }
.fa-campus-info .fa-addr { margin: 0 0 10px; }
.fa-campus-info .fa-addr b { color: #353434; }
.fa-btn-sm { display: inline-block; margin: 0 6px 12px 0; padding: 6px 12px; border-radius: 4px; font: 700 12px/16px 'Open Sans', Arial, sans-serif;
  text-decoration: none; background: var(--fa-blue); color: #fff; }
.fa-btn-sm:hover { background: var(--fa-navy); color: #fff; }
.fa-btn-sm.fa-ghost { background: #fff; color: var(--fa-navy); border: 1px solid #c9d3e3; }
.fa-btn-sm.fa-ghost:hover { background: #eef4fb; color: var(--fa-navy); }
.fa-hours-wrap { display: flex; flex-wrap: wrap; gap: 14px; }
.fa-hours { border-collapse: collapse; width: calc(50% - 7px); min-width: 180px; font: 13px/18px Arial, Helvetica, sans-serif; }
.fa-hours caption { text-align: left; padding: 0 0 6px; font: 700 12px/16px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; color: var(--fa-navy); }
.fa-hours td { padding: 4px 10px; border-top: 1px solid #eee; }
.fa-hours td:first-child { padding-left: 0; font-weight: bold; color: #353434; width: 84px; }
.fa-hours td { white-space: nowrap; }
.fa-hours .fa-closed td:last-child { color: #aaa; }

/* Callout box */
.fa-callout { display: flex; gap: 14px; align-items: flex-start; padding: 14px 18px; margin: 6px 0 16px;
  background: #fff8e1; border: 1px solid #f5d77a; border-left: 6px solid var(--fa-gold); border-radius: 8px;
  font: 14px/21px Arial, Helvetica, sans-serif; color: #353434; }
.fa-callout b { color: #353434; }
.fa-callout-icon { flex: none; width: 26px; height: 26px; border-radius: 50%; background: var(--fa-gold); color: var(--fa-navy);
  display: grid; place-items: center; font: 700 15px/1 Arial, sans-serif; }

/* Cards (prices, transcript options) */
.fa-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 14px; margin: 6px 0 18px; }
.fa-card { background: #fff; border: 1px solid #e3e3e3; border-top: 4px solid var(--fa-blue); border-radius: 8px; padding: 16px 18px;
  font: 13px/19px Arial, Helvetica, sans-serif; color: #555; }
.fa-card h5 { margin: 0 0 4px; font: 700 13px/18px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; color: var(--fa-navy); }
.fa-card .fa-price { display: block; margin: 2px 0 6px; font: 700 30px/36px 'Open Sans', Arial, sans-serif; color: #353434; }
.fa-card .fa-price small { display: block; font-size: 12px; line-height: 16px; font-weight: 600; color: #888; }
.fa-card.fa-gold { border-top-color: var(--fa-gold); }
.fa-card.fa-green { border-top-color: #2e7d32; }
.fa-card ul { margin: 8px 0 12px 18px; padding: 0; list-style: disc; }
.fa-card li { margin: 0 0 4px; padding: 0; background: none; }
.fa-card .fa-btn { margin-top: 4px; }
.fa-note { font: italic 13px/19px Arial, sans-serif; color: #777; margin: 0 0 6px; }

/* Simple data tables (graduation requirements, grading scale) */
.fa-table { width: 100%; border-collapse: collapse; margin: 8px 0 4px; font: 14px/20px Arial, Helvetica, sans-serif; }
.fa-table th { text-align: left; padding: 7px 10px; background: #eef4fb; color: var(--fa-navy); font: 700 12px/16px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .04em; }
.fa-table td { padding: 7px 10px; border-bottom: 1px solid #eee; color: #353434; }
.fa-table td.fa-num, .fa-table th.fa-num { text-align: center; width: 70px; }
.fa-table tr.fa-total td { font-weight: bold; background: #f7f7f7; border-bottom: 0; }
.fa-grades td.fa-letter { width: 44px; text-align: center; font: 700 16px/20px 'Open Sans', Arial, sans-serif; }
.fa-grades .g-a { color: #2e7d32; } .fa-grades .g-b { color: #086db5; } .fa-grades .g-c { color: #b8860b; }
.fa-grades .g-d { color: #d26a00; } .fa-grades .g-f { color: #c62828; }

/* Plain reading text + numbered steps */
.fa-prose { font: 15px/24px Arial, Helvetica, sans-serif; color: #444; }
.fa-prose h4 { margin: 24px 0 8px; font: 600 20px/26px 'Open Sans', Arial, sans-serif; color: #353434; }
.fa-prose p { margin: 0 0 12px; }
.fa-prose a { color: var(--fa-blue); font-weight: bold; }
.fa-prose a.fa-btn-solid { color: #fff; }
.fa-prose ul.fa-bullets { margin: 0 0 12px 20px; padding: 0; list-style: disc; }
.fa-prose ul.fa-bullets li { margin: 0 0 6px; background: none; padding: 0; }
.fa-steps { counter-reset: s; margin: 6px 0 12px; padding: 0; list-style: none; }
.fa-steps li { counter-increment: s; position: relative; margin: 0 0 12px; padding: 2px 0 0 44px; min-height: 30px; background: none; }
.fa-steps li::before { content: counter(s); position: absolute; left: 0; top: 0; width: 30px; height: 30px; border-radius: 50%;
  background: var(--fa-blue); color: #fff; display: grid; place-items: center; font: 700 14px/1 'Open Sans', Arial, sans-serif; }

@media only screen and (max-width: 767px) {
  .fa-campus { flex-direction: column; gap: 10px; }
  .fa-hours { width: 100%; }
  .fa-callout { font-size: 13px; }
}
.fa-card .fa-btn { white-space: normal; text-align: center; }

/* ---------- Home page story sections ---------- */
.fa-home { text-align: left; }
.fa-hs { display: flex; gap: 24px; align-items: flex-start; padding: 22px 0; border-top: 1px solid #e6e6e6; }
.fa-hs:first-child { border-top: 0; padding-top: 6px; }
.fa-hs > figure { position: relative; flex: none; width: 220px; margin: 0; }
.fa-hs > figure img { display: block; width: 100%; height: auto; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,.12); }
.fa-hs-body { flex: 1; min-width: 0; text-align: left; }
.fa-tag { display: inline-block; margin: 0 0 8px; padding: 3px 10px; border-radius: 12px; background: #eef4fb; color: var(--fa-blue);
  font: 700 11px/16px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .06em; }
.fa-hs h4 { margin: 0 0 8px; font: 600 21px/27px 'Open Sans', Arial, sans-serif; color: #353434; text-align: left; }
.fa-hs p { margin: 0 0 10px; font: 14px/22px Arial, Helvetica, sans-serif; color: #555; text-align: left; }
.fa-hs p b { color: #353434; }
.fa-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.fa-facts li { margin: 0; padding: 6px 12px; background: #f5f7fa; border: 1px solid #e3e9ef; border-radius: 6px; font: 12px/16px Arial, sans-serif; color: #666; }
.fa-facts b { display: block; font: 700 16px/20px 'Open Sans', Arial, sans-serif; color: var(--fa-navy); }
.fa-since { position: absolute; right: -10px; bottom: -10px; width: 64px; height: 64px; border-radius: 50%; background: var(--fa-gold); color: var(--fa-navy);
  display: flex; flex-direction: column; align-items: center; justify-content: center; font: 700 10px/12px 'Open Sans', Arial, sans-serif; text-transform: uppercase;
  box-shadow: 0 3px 8px rgba(0,0,0,.2); }
.fa-since b { font-size: 16px; line-height: 18px; }

.fa-hs-serve { padding-bottom: 12px; }
.fa-serve { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; margin: 0 0 6px; padding: 0 0 22px; list-style: none; }
.fa-serve li { margin: 0; padding: 14px 10px 12px; background: #fff; border: 1px solid #e3e3e3; border-top: 4px solid var(--fa-navy); border-radius: 8px;
  text-align: center; font: 12px/17px Arial, Helvetica, sans-serif; color: #666; }
.fa-serve li b { display: block; font: 700 30px/32px 'Open Sans', Arial, sans-serif; color: var(--fa-blue); }
.fa-serve li span { display: block; margin: 2px 0 6px; font: 700 12px/16px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .05em; color: var(--fa-navy); }
.fa-serve li:nth-child(even) { border-top-color: var(--fa-gold); }

.fa-points { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; margin: 0; padding: 0 0 10px; list-style: none; }
.fa-points li { position: relative; margin: 0; padding: 12px 14px 12px 44px; background: #f7f9fb; border-radius: 8px; font: 13px/19px Arial, Helvetica, sans-serif; color: #666; }
.fa-points li::before { content: "\2713"; position: absolute; left: 14px; top: 12px; width: 20px; height: 20px; border-radius: 50%; background: #2e7d32; color: #fff;
  display: grid; place-items: center; font: 700 12px/1 Arial, sans-serif; }
.fa-points b { display: block; margin-bottom: 2px; font: 700 14px/19px 'Open Sans', Arial, sans-serif; color: #353434; }

@media only screen and (max-width: 995px) {
  .fa-serve { grid-template-columns: repeat(3, 1fr); }
}
@media only screen and (max-width: 767px) {
  .fa-hs { flex-direction: column; gap: 14px; }
  .fa-hs > figure { width: 100%; max-width: 300px; }
  .fa-serve { grid-template-columns: repeat(2, 1fr); }
  .fa-points { grid-template-columns: 1fr; }
}

/* ---------- Academics page ---------- */
.fa-subhead { margin: 0 0 10px; font: 700 13px/18px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .06em; color: var(--fa-navy); }
.fa-callout-info { background: #eef5fb; border-color: #cfe0f0; border-left-color: var(--fa-blue); margin: 14px 0 6px; font-size: 13px; line-height: 20px; }
.fa-callout-info .fa-callout-icon { background: var(--fa-blue); color: #fff; font-style: italic; font-family: Georgia, serif; }
.fa-checks { margin: 4px 0 0; padding: 0; list-style: none; }
.fa-checks li { position: relative; margin: 0 0 8px; padding: 0 0 0 28px; background: none; font: 14px/20px Arial, Helvetica, sans-serif; color: #444; }
.fa-checks li::before { content: "\2713"; position: absolute; left: 0; top: 0; width: 20px; height: 20px; border-radius: 50%; background: #2e7d32; color: #fff;
  display: grid; place-items: center; font: 700 12px/1 Arial, sans-serif; }
.fa-hs .fa-table { margin-top: 4px; }
.fa-lead { font: 14px/22px Arial, Helvetica, sans-serif !important; color: #555; }

/* Courses Offered accordion */
#accordion1 > li { margin-bottom: 8px; border: 1px solid #e3e3e3; border-radius: 8px; background: #fff; }
#accordion1 > li > a { display: flex; align-items: center; padding: 11px 14px 11px 44px; font: 700 14px/20px 'Open Sans', Arial, sans-serif; color: #353434; }
#accordion1 > li > a i { top: 50%; left: 12px; width: 22px; height: 22px; margin-top: -11px; background: #eef4fb; border-radius: 50%; }
#accordion1 > li > a i::before, #accordion1 > li > a i::after { content: ""; position: absolute; left: 6px; top: 10px; width: 10px; height: 2px; background: var(--fa-blue); transition: transform .2s; }
#accordion1 > li > a i::after { transform: rotate(90deg); }
#accordion1 > li > a.active i::after { transform: rotate(0deg); }
#accordion1 > li > a.active i { background: var(--fa-blue); }
#accordion1 > li > a.active i::before, #accordion1 > li > a.active i::after { background: #fff; }
#accordion1 .fa-count { margin-left: auto; min-width: 26px; padding: 1px 8px; border-radius: 10px; background: #f0f0f0; color: #666; font: 700 11px/18px Arial, sans-serif; text-align: center; font-style: normal; }
#accordion1 .accordion_content { padding: 0 14px 12px; }
.fa-course-list { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.fa-course-list li { margin: 0; padding: 4px 10px; background: #f5f7fa; border: 1px solid #e3e9ef; border-radius: 14px; font: 12px/16px Arial, sans-serif; color: #444; }
.fa-course-note { margin: 8px 0 0; font: italic 11px/15px Arial, sans-serif; color: #888; }

/* FAQ accordion (home page) */
#accordion1 .accordion_content { font: 13px/20px Arial, Helvetica, sans-serif; color: #555; }
#accordion1 .accordion_content b { color: #353434; }
.fa-faq-label { display: block; margin: 0 0 8px; }
#accordion1 .fa-checks li { font-size: 13px; line-height: 19px; color: #555; }
.fa-faq-note { margin: 6px 0 0; font: italic 12px/18px Arial, sans-serif; color: #777; }

/* ---------- Accreditation page ---------- */
.fa-accr-hero { display: flex; gap: 26px; align-items: center; padding: 20px 22px; margin: 0 0 24px; background: #fff; border: 1px solid #e3e3e3; border-top: 4px solid var(--fa-navy); border-radius: 10px; }
.fa-accr-hero > figure { flex: none; width: 190px; margin: 0; }
.fa-accr-hero > figure img { display: block; width: 100%; height: auto; }
.fa-accr-hero h4 { margin: 0 0 8px; font: 600 21px/27px 'Open Sans', Arial, sans-serif; color: #353434; }
.fa-accr-hero p { margin: 0 0 10px; font: 14px/22px Arial, Helvetica, sans-serif; color: #555; }
.fa-accr-hero p b { color: #353434; }
.fa-callout a { color: var(--fa-blue); font-weight: bold; }
.fa-prog { margin: 0 0 18px; }
.fa-prog img { display: block; width: 100%; height: auto; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,.12); }
.fa-prog h5 { margin: 12px 0 4px; font: 700 15px/20px 'Open Sans', Arial, sans-serif; color: #353434; }
.fa-prog p { margin: 0; font: 13px/20px Arial, Helvetica, sans-serif; color: #555; }
@media only screen and (max-width: 767px) {
  .fa-accr-hero { flex-direction: column; text-align: center; }
  .fa-accr-hero .fa-facts { justify-content: center; }
}
.fa-tel { white-space: nowrap; }

/* ---------- Admissions page ---------- */
.fa-why { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.fa-why-card { background: linear-gradient(160deg, #0a5aa8, #001b60); color: #dbe6f5; border-radius: 10px; padding: 22px 22px 20px;
  box-shadow: 0 6px 16px rgba(0,27,96,.18); font: 14px/22px Arial, Helvetica, sans-serif; }
.fa-why-icon { display: grid; place-items: center; width: 52px; height: 52px; margin-bottom: 12px; border-radius: 12px; background: rgba(255,255,255,.12); }
.fa-why-icon img { max-width: 34px; max-height: 34px; }
.fa-why-text { font-size: 26px; color: var(--fa-gold); }
.fa-why-card h4 { margin: 0 0 6px; font: 700 20px/24px 'Open Sans', Arial, sans-serif; color: #fff; text-transform: uppercase; letter-spacing: -.3px; }
.fa-why-card p { margin: 0; }
.fa-why-card a { color: var(--fa-gold); font-weight: bold; }

.fa-apply { margin-top: 6px; }
.fa-steps-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 4px 0 16px; }
.fa-steps-row li { margin: 0; padding: 12px 14px 12px 54px; background: #fff; border: 1px solid #e3e3e3; border-radius: 8px; font: 13px/19px Arial, Helvetica, sans-serif; color: #555; }
.fa-steps-row li::before { left: 14px; top: 12px; }
.fa-steps-row li b { color: #353434; }
.fa-steps-row a { color: var(--fa-blue); font-weight: bold; }
.fa-apply-btns { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }

.fa-legal { margin: 26px 0 0; padding: 14px 16px; background: #f7f7f7; border-radius: 8px; }
.fa-legal h5 { margin: 0 0 4px; font: 700 12px/16px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .05em; color: #666; }
.fa-legal p { margin: 0; font: 12px/18px Arial, Helvetica, sans-serif; color: #777; }

/* Testimonials */
.testimonials_box { background: #fff; border: 1px solid #e3e3e3; border-top: 4px solid var(--fa-gold); border-radius: 10px; }
.testimonials > li { position: relative; }
.testimonials blockquote { position: relative; padding-left: 0 !important; background: none !important; font: italic 14px/22px Georgia, 'Times New Roman', serif !important; color: #444 !important; }
.testimonials blockquote:before, .testimonials blockquote::before { content: "\201C"; display: block; float: none; width: auto; height: 28px; margin: 0; background: none; font: 700 54px/54px Georgia, serif; color: var(--fa-gold); }
.testimonials h4.var1 { font: 700 14px/20px 'Open Sans', Arial, sans-serif !important; color: var(--fa-navy) !important; }
.testimonials h4.var1::before { content: "\2014\00a0"; }

@media only screen and (max-width: 995px) {
  .fa-steps-row { grid-template-columns: 1fr; }
}
@media only screen and (max-width: 767px) {
  .fa-why { grid-template-columns: 1fr; }
}
.fa-apply-btns .fa-btn, .fa-prose .fa-btn, .fa-hs .fa-btn, .fa-accr-hero .fa-btn { white-space: normal; text-align: center; }

/* ---------- Privacy policy ---------- */
.fa-policy { max-width: 780px; }
.fa-policy h4 { padding-top: 14px; border-top: 1px solid #ececec; font-size: 18px; line-height: 24px; }
.fa-policy .fa-callout { font-size: 14px; }

/* ---------- Home page Locations box ---------- */
.fa-locs { margin: 0; padding: 0; list-style: none; text-align: left; }
.fa-loc { display: flex; gap: 14px; align-items: flex-start; margin: 0 0 14px; padding: 0 0 14px; border-bottom: 1px solid rgba(255,255,255,.14); background: none; }
.fa-loc img { flex: none; width: 64px; height: auto; border-radius: 6px; border: 2px solid rgba(255,255,255,.85); }
.fa-loc div { min-width: 0; font: 12px/17px Arial, Helvetica, sans-serif; color: #b9c8e4; }
.fa-loc b { display: block; margin-bottom: 2px; font: 700 14px/18px 'Open Sans', Arial, sans-serif; color: #fff; }
.fa-loc .fa-loc-phone { display: block; font: 700 16px/22px 'Open Sans', Arial, sans-serif; color: var(--fa-gold); text-decoration: none; white-space: nowrap; }
.fa-loc .fa-loc-phone:hover { color: #ffd23f; }
.fa-loc-links { margin: 6px 0 0; display: flex; flex-wrap: wrap; gap: 6px; }
.fa-loc-links a { padding: 2px 9px; border: 1px solid rgba(255,255,255,.35); border-radius: 12px; color: #fff; font: 600 11px/16px 'Open Sans', Arial, sans-serif; text-decoration: none; }
.fa-loc-links a:hover { background: rgba(255,255,255,.15); color: #fff; }
.fa-loc-all { margin: 0; padding: 0; background: none; }
.fa-loc-all a { color: var(--fa-gold); font: 700 13px/18px 'Open Sans', Arial, sans-serif; text-decoration: none; }

/* ---------- Home page slider ---------- */
.fa-hero { border-radius: 10px; overflow: hidden; box-shadow: 0 6px 18px rgba(0,0,0,.15); }
.fa-hero .slides > li { position: relative; }
.fa-hero .fa-cap { position: absolute; left: 0; right: 0; bottom: 0; padding: 70px 120px 24px 28px; text-align: left;
  background: linear-gradient(to top, rgba(0,15,45,.88) 0%, rgba(0,15,45,.55) 55%, rgba(0,15,45,0) 100%); }
.fa-hero .fa-cap h4 { margin: 0 0 4px; font: 700 26px/31px 'Open Sans', Arial, sans-serif; color: #fff; text-shadow: 0 1px 3px rgba(0,0,0,.4); }
.fa-hero .fa-cap p { margin: 0 0 12px; font: 14px/20px Arial, Helvetica, sans-serif; color: #e3eaf5; max-width: 440px; }
.fa-hero .fa-cap .fa-btn { padding: 8px 16px; font-size: 13px; }
.fa-hero .fa-cap .fa-btn-solid { background: var(--fa-gold); border-color: var(--fa-gold); color: var(--fa-navy); }
.fa-hero .fa-cap .fa-btn-solid:hover { background: #ffd23f; border-color: #ffd23f; color: var(--fa-navy); }
.fa-hero .flex-control-nav { right: 22px; bottom: 26px; top: auto; z-index: 5; }
.fa-hero .flex-control-paging li a { width: 10px; height: 10px; margin-left: 4px; border-radius: 50%; background: rgba(255,255,255,.45); text-indent: -9999px; }
.fa-hero .flex-control-paging li a.flex-active, .fa-hero .flex-control-paging li a:hover { background: var(--fa-gold); }
@media only screen and (max-width: 767px) {
  .fa-hero .fa-cap { padding: 50px 16px 14px; }
  .fa-hero .fa-cap h4 { font-size: 18px; line-height: 23px; }
  .fa-hero .fa-cap p { display: none; }
  .fa-hero .flex-control-nav { bottom: 12px; right: 12px; }
}
@media only screen and (max-width: 479px) {
  .fa-hero .fa-cap .fa-btn { padding: 6px 12px; font-size: 12px; }
}

/* ---------- Footer ---------- */
footer.fa-foot { margin-top: 10px; background: var(--fa-navy); border-top: 4px solid var(--fa-gold); border-radius: 0 0 6px 6px; color: #b9c8e4; }
footer.fa-foot .container_12, footer.fa-foot .pad_box { width: auto; margin: 0; padding: 0; }
footer.fa-foot article { display: block; }
footer.fa-foot .wrapper, footer.fa-foot article { margin: 0; float: none; width: auto; }
#fa-foot-cols { display: grid; grid-template-columns: 1.2fr 1.2fr 1fr; gap: 30px; padding: 30px 30px 24px; text-align: left; }
.fa-fc h5 { margin: 0 0 12px; font: 700 13px/18px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .08em; color: var(--fa-gold); }
.fa-fc p { margin: 0 0 12px; font: 13px/20px Arial, Helvetica, sans-serif; color: #b9c8e4; }
.fa-fc-about img { display: block; margin: 0 0 8px; }
.fa-fc-about h5 { color: #fff; font-size: 16px; letter-spacing: .02em; margin-bottom: 6px; }
.fa-badges { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; padding: 0; list-style: none; }
.fa-badges li { margin: 0; padding: 3px 9px; border: 1px solid rgba(255,255,255,.25); border-radius: 12px; background: none; font: 600 11px/15px 'Open Sans', Arial, sans-serif; color: #fff; }
.fa-foot-fb { display: inline-flex; align-items: center; gap: 6px; color: #fff; font: 600 13px/18px 'Open Sans', Arial, sans-serif; text-decoration: none; }
.fa-foot-fb .fa-ico { width: 16px; height: 16px; }
.fa-foot-fb:hover { color: var(--fa-gold); }
.fa-foot-camp, .fa-foot-links { margin: 0; padding: 0; list-style: none; }
.fa-foot-camp li { margin: 0 0 14px; padding: 0; background: none; font: 12px/17px Arial, Helvetica, sans-serif; }
.fa-foot-camp b { display: block; color: #fff; font: 700 13px/18px 'Open Sans', Arial, sans-serif; }
.fa-foot-camp span { display: block; color: #9fb2d4; }
.fa-foot-camp a { color: var(--fa-gold); font: 700 14px/20px 'Open Sans', Arial, sans-serif; text-decoration: none; white-space: nowrap; }
.fa-foot-links li { margin: 0 0 7px; padding: 0; background: none; }
.fa-foot-links a { color: #dbe4f5; font: 13px/18px Arial, Helvetica, sans-serif; text-decoration: none; }
.fa-foot-links a:hover { color: var(--fa-gold); }
footer.fa-foot .footer { margin: 0; padding: 14px 30px 16px; border-top: 1px solid rgba(255,255,255,.12); background: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px; }
footer.fa-foot .footer_menu { display: flex !important; flex-wrap: wrap; gap: 4px 16px; margin: 0; padding: 0; float: none; }
footer.fa-foot .footer_menu > li { margin: 0; padding: 0; float: none; background: none; }
footer.fa-foot .footer_menu a { color: #dbe4f5; font: 700 12px/18px 'Open Sans', Arial, sans-serif; text-transform: uppercase; letter-spacing: .03em; }
footer.fa-foot .footer_menu a:hover, footer.fa-foot .footer_menu .current a { color: var(--fa-gold); }
footer.fa-foot .privacy { margin: 0; padding: 0; float: none; color: #8ea3c9; font: 12px/18px Arial, sans-serif; }
footer.fa-foot .privacy a { color: #dbe4f5; }
@media only screen and (max-width: 995px) {
  #fa-foot-cols { grid-template-columns: 1fr 1fr; }
  .fa-fc-about { grid-column: 1 / -1; }
}
@media only screen and (max-width: 767px) {
  #fa-foot-cols { grid-template-columns: 1fr; gap: 22px; padding: 24px 18px 18px; }
  footer.fa-foot .footer { padding: 14px 18px; }
}
footer.fa-foot { padding: 0; } footer.fa-foot a:hover { color: var(--fa-gold); }

/* Top bar: keep everything on one line (live site uses the wider Open Sans font) */
.fa-topbar-inner { max-width: 1180px; padding: 0 16px; }
.fa-desk { flex-wrap: nowrap; }
.fa-desk > li > a, .fa-desk > li > button { white-space: nowrap; }
@media only screen and (max-width: 1199px) {
  .fa-desk > li:not(.fa-hl):not(.fa-fb) > a > .fa-ico:first-child,
  .fa-desk > li > button > .fa-ico:first-child { display: none; }
  .fa-desk > li > a, .fa-desk > li > button { padding-left: 8px; padding-right: 8px; }
}
@media only screen and (max-width: 995px) {
  .fa-desk { flex-wrap: wrap; }
}
/* Center the top-bar links over the page */
.fa-desk { justify-content: center; }
