/* FSTC hub — overrides for FundEDU/Divi parent-theme conflicts on www. */

/* 1) Kill theme-forced list bullets on the section-nav. */
.eftc-section-nav .eftc-section-nav__list,
.eftc-section-nav .eftc-section-nav__list > li { list-style: none !important; }
.eftc-section-nav .eftc-section-nav__list > li::marker { content: none !important; }
.eftc-page.eftc-v2 ul.eftc-accordion,
.eftc-page.eftc-v2 ul.eftc-accordion > li { list-style: none !important; }

/* 2) Remove the shadow around the "State Status Map" card. */
.eftc-v2-map-sec .eftc-v2-card { box-shadow: none !important; }

/* 3) Newsletter form is on navy — force label text white. */
.fstc-hub-newsletter .gform_wrapper .gfield_label,
.fstc-hub-newsletter .gform_wrapper legend.gfield_label,
.fstc-hub-newsletter .gform_wrapper .gfield_description,
.fstc-hub-newsletter .gform_wrapper .gform_required_legend,
.fstc-hub-newsletter .gform_wrapper label,
.fstc-hub-newsletter .gform_wrapper .gsection_title { color: #ffffff !important; }

/* 4) Section-nav: centered, thin, equal top/bottom padding, hidden on mobile. */
.eftc-section-nav .eftc-section-nav__bar { justify-content: center !important; }
.eftc-section-nav .eftc-section-nav__list { justify-content: center !important; flex-wrap: wrap; }
.eftc-section-nav .eftc-section-nav__item > a {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
    line-height: 1.2 !important;
}
@media (max-width: 991px) { .eftc-section-nav { display: none !important; } }

/* Unit 01: vertical breathing room between the advocacy banner and the step
   tracker. Scoped to the advocacy page (3177) so calculator/navigator, which
   also use .eftc-wizard-steps, are untouched (ACCEPTANCE 3). */
body.page-id-3177 #eftc-wizard-steps.eftc-wizard-steps {
    margin-top: clamp(28px, 5vw, 56px) !important;
}

/* Unit 02: state-status map on the overview (self-hosted). */
#eftc-map-container { width: 100%; }
#eftc-map-container svg { width: 100%; height: auto; display: block; }
#eftc-map-container path.eftc-map-state { transition: opacity .15s ease; cursor: default; outline: none; }
#eftc-map-container path.eftc-map-state:hover, #eftc-map-container path.eftc-map-state:focus { opacity: .82; }
.eftc-map-legend { display: flex; flex-wrap: wrap; gap: 10px 20px; justify-content: center; margin-top: 18px; }
.eftc-map-legend__item { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--eftc-gray-600, #4B5563); }
.eftc-map-legend__swatch { width: 14px; height: 14px; border-radius: 3px; display: inline-block; border: 1px solid rgba(15,37,64,.12); }

/* Unit 05: newsletter page (/fstc/newsletter/) split layout, self-contained (no v2 dep). */
.fstc-nl-layout { display: grid; grid-template-columns: 1.05fr .95fr; gap: 48px; align-items: start; }
.fstc-nl-eyebrow { font-family: 'Gilroy', sans-serif; text-transform: uppercase; letter-spacing: .08em; font-size: .8rem; font-weight: 700; color: #c49832; margin: 0 0 .5rem; }
.fstc-nl-title { font-family: 'Gilroy', sans-serif; font-size: 2.4rem; line-height: 1.1; color: #0f2540; margin: 0 0 1rem; }
.fstc-nl-sub { font-size: 1.05rem; color: #4B5563; margin: 0 0 1rem; }
.fstc-nl-kicker { font-family: 'Gilroy', sans-serif; text-transform: uppercase; letter-spacing: .06em; font-size: .85rem; font-weight: 700; color: #c49832; margin: 1.5rem 0 .5rem; }
.fstc-nl-list { list-style: none !important; margin: 0 0 1rem; padding: 0; }
.fstc-nl-list li { position: relative; padding-left: 28px; margin-bottom: 10px; color: #33475b; }
.fstc-nl-list li::before { content: ""; position: absolute; left: 0; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: #234C8A; }
.fstc-nl-list li::marker { content: none !important; }
.fstc-nl-form-wrap { background: #fff; border: 1px solid rgba(15,37,64,.1); border-radius: 14px; padding: 28px; box-shadow: 0 1px 4px rgba(0,0,0,.06); }
.fstc-nl-note { font-size: .8125rem; color: #4B5563; margin-top: 12px; }
@media (max-width: 860px) { .fstc-nl-layout { grid-template-columns: 1fr; gap: 28px; } }
