
body.ftesub-active #masthead,
body.ftesub-active #site-navigation,
body.ftesub-active .site-footer,
body.ftesub-active .site-info,
body.ftesub-active .footer-widgets,
body.ftesub-active .entry-header,
body.ftesub-active .page-header,
body.ftesub-active h1.entry-title,
body.ftesub-active .entry-title {
  display:none !important;
}

body.ftesub-active .site,
body.ftesub-active .site-content,
body.ftesub-active .content-area,
body.ftesub-active .site-main,
body.ftesub-active article,
body.ftesub-active .inside-article,
body.ftesub-active .entry-content {
  max-width:none !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
}

.ftesub,.ftesub * { box-sizing:border-box; }

.ftesub {
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#111827;
  background:#fff;
}

.ftesub a { text-decoration:none; }

.ftesub-wrap {
  width:min(1240px,calc(100% - 40px));
  margin:0 auto;
}

.ftesub-hero {
  padding:92px 0 84px;
  background:linear-gradient(180deg,#F8FAFC 0%,#FFFFFF 100%);
  border-bottom:1px solid #EDF2F7;
}

.ftesub-kicker {
  display:inline-block;
  color:#2563EB;
  font-size:13px;
  line-height:1.4;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

.ftesub h1,.ftesub h2,.ftesub h3,.ftesub p { margin:0; }

.ftesub h1 {
  margin-top:14px;
  max-width:930px;
  color:#0B1220;
  font-size:clamp(46px,5.7vw,70px);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:800;
}

.ftesub-hero p {
  margin-top:26px;
  max-width:790px;
  color:#64748B;
  font-size:19px;
  line-height:1.72;
}

.ftesub-section { padding:84px 0; }
.ftesub-soft { background:#F8FAFC; }

.ftesub-section-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:50px;
  margin-bottom:34px;
}

.ftesub-section-head h2,
.ftesub-learning h2,
.ftetool-info h2 {
  margin-top:8px;
  color:#0B1220;
  font-size:clamp(30px,3.8vw,44px);
  line-height:1.08;
  letter-spacing:-.035em;
}

.ftesub-section-head > p {
  max-width:430px;
  color:#64748B;
  font-size:16px;
  line-height:1.7;
}

.ftesub-concept-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.ftesub-concept {
  min-height:205px;
  padding:27px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-concept--expanded { min-height:330px; }

.ftesub-concept-label {
  display:block;
  margin-bottom:8px;
  color:#2563EB;
  font-size:12px;
  line-height:1.4;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.ftesub-dot {
  display:block;
  width:10px;
  height:10px;
  margin-bottom:22px;
  border-radius:50%;
  background:#2563EB;
  box-shadow:0 0 0 7px #EFF6FF;
}

.ftesub-concept h3 {
  margin-bottom:10px;
  color:#0B1220;
  font-size:20px;
  line-height:1.2;
}

.ftesub-concept p {
  color:#64748B;
  font-size:14px;
  line-height:1.67;
}

.ftesub-concept .ftesub-concept-why {
  margin-top:13px;
  color:#334155;
  font-size:13px;
}

.ftesub-fund-type-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.ftesub-fund-type-card {
  min-height:350px;
  padding:27px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-fund-type-card h3 {
  margin:0 0 10px;
  color:#0B1220;
  font-size:20px;
  line-height:1.2;
}

.ftesub-fund-type-card p {
  margin:0;
  color:#64748B;
  font-size:14px;
  line-height:1.67;
}

.ftesub-fund-type-card .ftesub-fund-type-example {
  margin-top:13px;
  color:#334155;
}

.ftesub-fund-type-card .ftesub-fund-type-use {
  margin-top:13px;
  padding-top:13px;
  border-top:1px solid #E2E8F0;
  color:#475569;
  font-size:13px;
}

.ftesub-beginner-note {
  margin-top:22px;
  padding:25px 27px;
  border:1px solid #DBEAFE;
  border-radius:14px;
  background:#EFF6FF;
}

.ftesub-beginner-note h3 {
  margin:0 0 8px;
  color:#0B1220;
  font-size:20px;
  line-height:1.25;
}

.ftesub-beginner-note p {
  margin:0;
  color:#475569;
  font-size:14px;
  line-height:1.67;
}

.ftesub-beginner-note strong {
  display:block;
  margin-top:12px;
  color:#1E3A8A;
  font-size:14px;
  line-height:1.6;
}

.ftesub-fund-check-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.ftesub-fund-check-card {
  min-height:405px;
  padding:27px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-fund-check-card:last-child:nth-child(odd) { grid-column:1 / -1; }

.ftesub-check-number {
  display:inline-flex;
  width:39px;
  height:39px;
  align-items:center;
  justify-content:center;
  margin-bottom:20px;
  border-radius:10px;
  background:#EFF6FF;
  color:#2563EB;
  font-size:12px;
  font-weight:800;
}

.ftesub-fund-check-card h3 {
  margin:0 0 10px;
  color:#0B1220;
  font-size:20px;
  line-height:1.25;
}

.ftesub-fund-check-card p {
  margin:0;
  color:#64748B;
  font-size:14px;
  line-height:1.67;
}

.ftesub-fund-check-card .ftesub-check-question {
  margin-bottom:11px;
  color:#334155;
  font-weight:700;
}

.ftesub-fund-check-card .ftesub-check-example {
  margin-top:12px;
  color:#475569;
  font-size:13px;
}

.ftesub-check-takeaway {
  display:block;
  margin-top:15px;
  padding:13px 14px;
  border-radius:9px;
  background:#F8FAFC;
  color:#1E3A8A;
  font-size:13px;
  line-height:1.55;
}

.ftesub-quick-checklist {
  display:grid;
  grid-template-columns:.55fr 1.45fr;
  gap:40px;
  align-items:start;
  margin-top:22px;
  padding:27px;
  border:1px solid #DBEAFE;
  border-radius:14px;
  background:#EFF6FF;
}

.ftesub-quick-checklist h3 {
  margin:8px 0 0;
  color:#0B1220;
  font-size:22px;
  line-height:1.2;
}

.ftesub-quick-checklist ul {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 18px;
  margin:0;
  padding:0;
  list-style:none;
}

.ftesub-quick-checklist li {
  display:flex;
  gap:9px;
  align-items:flex-start;
  color:#334155;
  font-size:14px;
  line-height:1.5;
}

.ftesub-quick-checklist li span {
  display:inline-flex;
  width:20px;
  height:20px;
  flex:0 0 20px;
  align-items:center;
  justify-content:center;
  border:1px solid #93C5FD;
  border-radius:5px;
  background:#fff;
  color:#2563EB;
  font-size:12px;
  font-weight:800;
}

.ftesub-finance-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ftesub-finance-card {
  padding:28px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-finance-card:last-child:nth-child(odd) { grid-column:1 / -1; }

.ftesub-finance-card h3 {
  margin:0 0 11px;
  color:#0B1220;
  font-size:21px;
  line-height:1.25;
}

.ftesub-finance-card p {
  margin:0;
  color:#64748B;
  font-size:14px;
  line-height:1.7;
}

.ftesub-finance-card .ftesub-finance-example {
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid #E2E8F0;
  color:#334155;
}

.ftesub-roadmap {
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:roadmap;
}

.ftesub-roadmap li {
  position:relative;
  min-height:138px;
  padding:22px 16px;
  border:1px solid #DBEAFE;
  border-radius:14px;
  background:#F8FAFC;
  counter-increment:roadmap;
}

.ftesub-roadmap li::before {
  content:counter(roadmap);
  display:flex;
  width:30px;
  height:30px;
  align-items:center;
  justify-content:center;
  margin-bottom:16px;
  border-radius:50%;
  background:#2563EB;
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.ftesub-roadmap li:not(:last-child)::after {
  content:'→';
  position:absolute;
  z-index:2;
  top:50%;
  right:-19px;
  color:#2563EB;
  font-weight:800;
  transform:translateY(-50%);
}

.ftesub-roadmap span {
  color:#0B1220;
  font-size:14px;
  line-height:1.45;
  font-weight:700;
}

.ftesub-finance-checklist { margin-top:0; }
.ftesub-finance-checklist h2 { margin:8px 0 0; }
.ftesub-finance-checklist li span { color:transparent; }

.ftesub-learning {
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:70px;
  align-items:start;
}

.ftesub-learning > div > p {
  margin-top:16px;
  max-width:450px;
  color:#64748B;
  font-size:16px;
  line-height:1.7;
}

.ftesub-related {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}

.ftesub-related a {
  display:flex;
  justify-content:space-between;
  gap:14px;
  padding:18px 19px;
  border:1px solid #E2E8F0;
  border-radius:10px;
  background:#fff;
  color:#0B1220 !important;
  font-size:14px;
  font-weight:700;
}

.ftesub-related a span { color:#2563EB; }

.ftesub-disclaimer {
  padding:20px 0;
  background:#0B1220;
  color:#9FB0C7;
  font-size:12px;
  line-height:1.6;
}

.ftesub-disclaimer strong { color:#fff; }

/* Stock investing learning hub */
.ftesub--stocks { overflow:hidden; }
.ftesub--stocks [id] { scroll-margin-top:24px; }
.ftesub--stocks a:focus-visible,
.ftesub--stocks summary:focus-visible { outline:3px solid rgba(37,99,235,.35); outline-offset:3px; }

.ftesub-stock-hero {
  padding:64px 0 54px;
  background:radial-gradient(circle at 52% 35%,#EFF6FF 0,rgba(239,246,255,0) 38%),#fff;
}

.ftesub-stock-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr) minmax(190px,.48fr);
  gap:26px;
  align-items:center;
}

.ftesub-stock-hero-copy h1 { max-width:580px; font-size:clamp(44px,4.6vw,66px); }
.ftesub-stock-hero-copy > p { max-width:570px; font-size:17px; line-height:1.7; }

.ftesub-stock-hero-media { min-width:0; }
.ftesub-stock-hero-media picture { display:block; }
.ftesub-stock-hero-media img {
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 24px rgba(37,99,235,.08));
}

.ftesub-stock-toc {
  align-self:start;
  position:sticky;
  top:24px;
  max-height:610px;
  padding:20px;
  overflow:auto;
  border:1px solid #DBEAFE;
  border-radius:14px;
  background:rgba(255,255,255,.94);
  box-shadow:0 12px 34px rgba(15,23,42,.07);
}

.ftesub-stock-toc h2 { margin:0 0 12px; color:#0B1220; font-size:17px; line-height:1.2; }
.ftesub-stock-toc nav { display:grid; }
.ftesub-stock-toc a { padding:7px 0; border-bottom:1px solid #F1F5F9; color:#475569 !important; font-size:12px; line-height:1.35; font-weight:650; }
.ftesub-stock-toc a:hover { color:#2563EB !important; }
.ftesub-stock-toc-mobile { display:none; }

.ftesub--stocks #core-stock-concepts .ftesub-concept-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ftesub--stocks #core-stock-concepts .ftesub-concept { min-height:320px; padding:24px; }
.ftesub--stocks #core-stock-concepts .ftesub-concept:nth-child(3n+2) .ftesub-concept-label { color:#15803D; }
.ftesub--stocks #core-stock-concepts .ftesub-concept:nth-child(3n) .ftesub-concept-label { color:#B45309; }

.ftesub-hero-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}

.ftesub-button {
  display:inline-flex;
  min-height:48px;
  align-items:center;
  justify-content:center;
  padding:12px 19px;
  border:1px solid #2563EB;
  border-radius:9px;
  font-size:14px;
  font-weight:800;
}

.ftesub-button--primary { background:#2563EB; color:#fff !important; }
.ftesub-button--secondary { background:#fff; color:#1D4ED8 !important; }

.ftesub-hero-trust {
  margin-top:18px;
  color:#64748B;
  font-size:13px;
  line-height:1.6;
  font-weight:650;
}

.ftesub-hero-trust span { padding:0 5px; color:#2563EB; }

.ftesub-stock-owner-grid,
.ftesub-compare,
.ftesub-finance-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ftesub-stock-callout,
.ftesub-compare article,
.ftesub-mini-grid article,
.ftesub-style-grid article,
.ftesub-mistake-grid article,
.ftesub-source-grid article,
.ftesub-source-grid > a {
  padding:26px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-stock-callout h3,
.ftesub-compare h3,
.ftesub-mini-grid h3,
.ftesub-style-grid h3,
.ftesub-mistake-grid h3,
.ftesub-source-grid h3 {
  margin:0 0 9px;
  color:#0B1220;
  font-size:20px;
  line-height:1.25;
}

.ftesub-stock-callout p,
.ftesub-compare p,
.ftesub-mini-grid p,
.ftesub-style-grid p,
.ftesub-mistake-grid p,
.ftesub-source-grid p {
  margin:0;
  color:#64748B;
  font-size:14px;
  line-height:1.68;
}

.ftesub-flow {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-top:24px;
  padding:24px;
  overflow-x:auto;
  border:1px solid #DBEAFE;
  border-radius:14px;
  background:#EFF6FF;
}

.ftesub-flow span {
  flex:0 0 auto;
  padding:11px 14px;
  border-radius:9px;
  background:#fff;
  color:#0B1220;
  font-size:13px;
  font-weight:750;
  box-shadow:0 1px 2px rgba(15,23,42,.05);
}

.ftesub-flow b { color:#2563EB; }
.ftesub-flow--wide { margin-top:0; margin-bottom:22px; }

.ftesub-warning,
.ftesub-rule {
  margin-top:22px;
  padding:20px 22px;
  border-left:4px solid #2563EB;
  border-radius:0 12px 12px 0;
  background:#F8FAFC;
  color:#334155;
  font-size:14px;
  line-height:1.7;
}

.ftesub-warning strong,
.ftesub-rule strong { color:#0B1220; }

.ftesub-warning--red { border-left-color:#DC2626; background:#FEF2F2; }

.ftesub-start-panel {
  margin-top:22px;
  padding:25px;
  border:1px solid #BBF7D0;
  border-radius:14px;
  background:#F0FDF4;
}

.ftesub-start-panel h3 { margin:0 0 16px; color:#0B1220; font-size:19px; }
.ftesub-start-panel ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px 20px; margin:0; padding:0; list-style:none; }
.ftesub-start-panel li { position:relative; padding-left:25px; color:#334155; font-size:14px; font-weight:700; }
.ftesub-start-panel li::before { content:'✓'; position:absolute; left:0; color:#16A34A; font-weight:900; }
.ftesub-start-panel p { margin:18px 0 0; padding-top:16px; border-top:1px solid #BBF7D0; color:#475569; font-size:13px; line-height:1.65; }

.ftesub-mini-grid,
.ftesub-style-grid,
.ftesub-mistake-grid,
.ftesub-source-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.ftesub-mini-grid--five { grid-template-columns:repeat(5,minmax(0,1fr)); }
.ftesub-mini-grid--five article { padding:22px; }

.ftesub-compare dl { margin:18px 0 0; }
.ftesub-compare dt { margin-top:15px; color:#0B1220; font-size:13px; font-weight:800; }
.ftesub-compare dd { margin:5px 0 0; color:#64748B; font-size:14px; line-height:1.68; }
.ftesub-compare a { color:#2563EB !important; font-weight:750; }
.ftesub-compare { position:relative; }
.ftesub-compare article:first-child { border-color:#BBF7D0; background:#F0FDF4; }
.ftesub-compare article:last-child { border-color:#BFDBFE; background:#EFF6FF; }
.ftesub-compare::after {
  content:'VS';
  position:absolute;
  top:50%;
  left:50%;
  display:flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  border:4px solid #F8FAFC;
  border-radius:50%;
  background:#0B1220;
  color:#fff;
  font-size:11px;
  font-weight:900;
  transform:translate(-50%,-50%);
}

.ftesub-research-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.ftesub-research-grid article {
  padding:27px;
  border:1px solid #E2E8F0;
  border-radius:14px;
  background:#fff;
}

.ftesub-research-grid article:last-child:nth-child(odd) { grid-column:1 / -1; }
.ftesub-research-grid h3 { margin:0 0 10px; color:#0B1220; font-size:20px; }
.ftesub-research-grid p { margin:0; color:#64748B; font-size:14px; line-height:1.68; }
.ftesub-research-grid strong { display:block; margin-top:14px; padding-top:14px; border-top:1px solid #E2E8F0; color:#1E3A8A; font-size:13px; line-height:1.6; }

.ftesub-statement-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.ftesub-statement-grid article {
  padding:28px;
  border:1px solid #DBEAFE;
  border-radius:15px;
  background:#fff;
  text-align:center;
}

.ftesub-statement-grid h3 { margin:0 0 10px; color:#0B1220; font-size:21px; }
.ftesub-statement-grid strong { display:block; min-height:42px; color:#2563EB; font-size:13px; line-height:1.55; }
.ftesub-statement-grid p { margin:18px 0 0; color:#475569; font-size:14px; line-height:1.8; }

.ftesub-style-grid article > strong { display:block; margin-top:15px; color:#0B1220; font-size:13px; }
.ftesub-mistake-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ftesub-mistake-grid article { padding:22px 24px; }
.ftesub-mistake-grid h3 { font-size:17px; }

.ftesub-source-grid > a {
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:#0B1220 !important;
  font-size:15px;
  font-weight:800;
}

.ftesub-source-grid > a span { color:#2563EB; }
.ftesub-stock-checklist { margin-top:0; }
.ftesub-stock-checklist h2 { margin-top:8px; }
.ftesub-stock-checklist li span { color:transparent; }
.ftesub-inline-resources { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.ftesub-inline-resources a { padding:10px 13px; border:1px solid #DBEAFE; border-radius:8px; background:#fff; color:#1D4ED8 !important; font-size:13px; font-weight:750; }

.ftesub-stock-roadmap {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:stock-roadmap;
}

.ftesub-stock-roadmap li {
  display:flex;
  min-height:76px;
  gap:13px;
  align-items:center;
  padding:17px;
  border:1px solid #DBEAFE;
  border-radius:12px;
  background:#F8FAFC;
  counter-increment:stock-roadmap;
}

.ftesub-stock-roadmap li::before {
  content:counter(stock-roadmap);
  display:flex;
  width:32px;
  height:32px;
  flex:0 0 32px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#2563EB;
  color:#fff;
  font-size:12px;
  font-weight:800;
}

.ftesub-stock-roadmap span { color:#0B1220; font-size:14px; line-height:1.45; font-weight:750; }

.ftesub-faq-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }
.ftesub-faq-list details { border:1px solid #E2E8F0; border-radius:12px; background:#fff; }
.ftesub-faq-list summary { padding:18px 45px 18px 19px; color:#0B1220; font-size:15px; line-height:1.45; font-weight:750; cursor:pointer; }
.ftesub-faq-list p { padding:0 19px 19px; color:#64748B; font-size:14px; line-height:1.68; }

.ftesub-trust-block {
  padding:34px;
  border:1px solid #DBEAFE;
  border-radius:16px;
  background:#fff;
}

.ftesub-trust-block h2 { margin:8px 0 14px; color:#0B1220; font-size:clamp(28px,3.5vw,40px); line-height:1.1; letter-spacing:-.03em; }
.ftesub-trust-block > p { max-width:850px; color:#64748B; font-size:15px; line-height:1.72; }
.ftesub-trust-links { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.ftesub-trust-links a { padding:11px 13px; border:1px solid #DBEAFE; border-radius:8px; background:#F8FAFC; color:#1D4ED8 !important; font-size:13px; font-weight:750; }
.ftesub-trust-block .ftesub-trust-note { margin-top:18px; font-size:12px; }
.ftesub-editorial-meta { display:flex; flex-wrap:wrap; gap:12px; margin:22px 0 0; }
.ftesub-editorial-meta div { min-width:170px; padding:12px 14px; border:1px solid #E2E8F0; border-radius:9px; background:#F8FAFC; }
.ftesub-editorial-meta dt { color:#64748B; font-size:11px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.ftesub-editorial-meta dd { margin:4px 0 0; color:#0B1220; font-size:14px; font-weight:750; }

.ftesub-learning-cta { padding:72px 0; background:#0B1220; color:#fff; }
.ftesub-learning-cta .ftesub-kicker { color:#60A5FA; }
.ftesub-learning-cta-head { max-width:760px; }
.ftesub-learning-cta h2 { margin:8px 0 13px; color:#fff; font-size:clamp(30px,3.8vw,44px); line-height:1.08; letter-spacing:-.035em; }
.ftesub-learning-cta-head p { margin:0; color:#AFC0D5; font-size:16px; line-height:1.7; }
.ftesub-learning-cta-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:30px; }
.ftesub-learning-cta-grid a { position:relative; min-height:142px; padding:23px; border:1px solid #334155; border-radius:14px; background:#111C30; color:#fff !important; }
.ftesub-learning-cta-grid a:hover { border-color:#60A5FA; background:#16243C; }
.ftesub-learning-cta-grid strong { display:block; font-size:17px; }
.ftesub-learning-cta-grid span { display:block; margin-top:8px; padding-right:25px; color:#AFC0D5; font-size:13px; line-height:1.55; }
.ftesub-learning-cta-grid b { position:absolute; right:20px; bottom:18px; color:#60A5FA; }

/* Tool pages */
.ftetool-hero {
  background:linear-gradient(180deg,#EEF4FF 0%,#FFFFFF 100%);
}

.ftetool-layout {
  display:grid;
  grid-template-columns:1.05fr .75fr;
  gap:70px;
  align-items:start;
}

.ftetool-panel {
  padding:30px;
  border:1px solid #E2E8F0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 55px rgba(15,23,42,.07);
}

.ftetool-form {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}

.ftetool-form label {
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#334155;
  font-size:13px;
  font-weight:700;
}

.ftetool-form input,
.ftetool-form select {
  width:100%;
  min-height:48px;
  padding:10px 12px;
  border:1px solid #CBD5E1;
  border-radius:8px;
  background:#fff;
  color:#0B1220;
  font:inherit;
  font-weight:500;
  outline:none;
}

.ftetool-form input:focus,
.ftetool-form select:focus {
  border-color:#2563EB;
  box-shadow:0 0 0 3px rgba(37,99,235,.1);
}

.ftetool-form button {
  min-height:50px;
  padding:13px 20px;
  border:0;
  border-radius:9px;
  background:#2563EB;
  color:#fff;
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}

.ftetool-result {
  grid-column:1 / -1;
  min-height:72px;
  padding:20px;
  border-radius:12px;
  background:#F8FAFC;
  border:1px solid #E2E8F0;
  color:#0B1220;
  font-size:14px;
  line-height:1.7;
}

.ftetool-result strong {
  display:block;
  font-size:25px;
  line-height:1.2;
  letter-spacing:-.03em;
}

.ftetool-info > p {
  margin-top:18px;
  color:#64748B;
  font-size:16px;
  line-height:1.75;
}

.ftetool-note {
  margin-top:25px;
  padding:20px;
  border:1px solid #DBEAFE;
  border-radius:12px;
  background:#EFF6FF;
  color:#475569;
  font-size:13px;
  line-height:1.65;
}

.ftetool-note strong {
  display:block;
  margin-bottom:5px;
  color:#0B1220;
}

@media (max-width:1024px) {
  .ftesub-concept-grid,
  .ftesub-fund-type-grid { grid-template-columns:repeat(2,1fr); }
  .ftesub-learning,
  .ftetool-layout,
  .ftesub-quick-checklist { grid-template-columns:1fr; gap:40px; }
  .ftesub-roadmap { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-roadmap li { min-height:120px; }
  .ftesub-roadmap li::after { display:none; }
  .ftesub-mini-grid,
  .ftesub-style-grid,
  .ftesub-source-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-mini-grid--five { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-statement-grid { grid-template-columns:1fr; }
  .ftesub-stock-roadmap { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-stock-hero-grid { grid-template-columns:1fr 1fr; }
  .ftesub-stock-toc { display:none; }
  .ftesub-stock-toc-mobile { display:block; grid-column:1 / -1; border:1px solid #DBEAFE; border-radius:12px; background:#fff; }
  .ftesub-stock-toc-mobile summary { padding:15px 18px; color:#0B1220; font-size:14px; font-weight:800; cursor:pointer; }
  .ftesub-stock-toc-mobile nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px 18px; padding:0 18px 18px; }
  .ftesub-stock-toc-mobile a { padding:7px 0; color:#475569 !important; font-size:12px; }
  .ftesub--stocks #core-stock-concepts .ftesub-concept-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-learning-cta-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:700px) {
  .ftesub-wrap { width:min(100% - 32px,1240px); }
  .ftesub-hero { padding:64px 0 56px; }
  .ftesub h1 { font-size:42px; }
  .ftesub-hero p { font-size:17px; }
  .ftesub-section { padding:58px 0; }
  .ftesub-section-head { display:block; }
  .ftesub-section-head > p { margin-top:14px; }
  .ftesub-concept-grid,
  .ftesub-fund-type-grid,
  .ftesub-fund-check-grid,
  .ftesub-finance-grid,
  .ftesub-roadmap,
  .ftesub-stock-owner-grid,
  .ftesub-compare,
  .ftesub-mini-grid,
  .ftesub-mini-grid--five,
  .ftesub-style-grid,
  .ftesub-mistake-grid,
  .ftesub-source-grid,
  .ftesub-research-grid,
  .ftesub-stock-roadmap,
  .ftesub-faq-list,
  .ftesub-related,
  .ftetool-form { grid-template-columns:1fr; }
  .ftesub-concept--expanded { min-height:0; }
  .ftesub-fund-type-card { min-height:0; }
  .ftesub-fund-check-card { min-height:0; }
  .ftesub-fund-check-card:last-child:nth-child(odd) { grid-column:auto; }
  .ftesub-finance-card:last-child:nth-child(odd) { grid-column:auto; }
  .ftesub-research-grid article:last-child:nth-child(odd) { grid-column:auto; }
  .ftesub-quick-checklist { gap:22px; }
  .ftesub-quick-checklist ul { grid-template-columns:1fr; }
  .ftetool-panel { padding:22px; }
  .ftesub-flow { justify-content:flex-start; }
  .ftesub-button { width:100%; }
  .ftesub-trust-block { padding:24px; }
  .ftesub-stock-hero { padding:54px 0 42px; }
  .ftesub-stock-hero-grid { grid-template-columns:1fr; gap:26px; }
  .ftesub-stock-hero-copy { order:1; }
  .ftesub-stock-hero-media { order:2; }
  .ftesub-stock-toc-mobile { order:3; grid-column:auto; }
  .ftesub-stock-toc-mobile nav { grid-template-columns:1fr; }
  .ftesub--stocks #core-stock-concepts .ftesub-concept-grid { grid-template-columns:1fr; }
  .ftesub--stocks #core-stock-concepts .ftesub-concept { min-height:0; }
  .ftesub-start-panel ul { grid-template-columns:1fr; }
  .ftesub-compare::after { top:50%; transform:translate(-50%,-50%); }
  .ftesub-learning-cta-grid { grid-template-columns:1fr; }
}

/* Markets: Basics and News (v1.0.10) */
.ftesub--market-basics,.ftesub--market-news { overflow:hidden; }
.ftesub--market-basics [id],.ftesub--market-news [id],.ftesub-news-anchor { scroll-margin-top:24px; }
.ftesub-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.ftesub-button { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:12px 19px; border:1px solid #2563EB; border-radius:10px; font-size:14px; font-weight:800; }
.ftesub-button--primary { background:#2563EB; color:#fff!important; box-shadow:0 10px 24px rgba(37,99,235,.2); }
.ftesub-button--secondary { background:#fff; color:#1D4ED8!important; }
.ftesub-prose { max-width:900px; margin:0 0 28px!important; color:#475569; font-size:16px; line-height:1.75; }
.ftesub-basics-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.ftesub-basics-grid article,.ftesub-risk-grid article { padding:24px; border:1px solid #E2E8F0; border-radius:14px; background:#fff; box-shadow:0 8px 25px rgba(15,23,42,.045); }
.ftesub-basics-grid h3,.ftesub-risk-grid h3 { margin:0 0 9px; color:#0B1220; font-size:18px; line-height:1.3; }
.ftesub-basics-grid p,.ftesub-risk-grid p,.ftesub-market-regimes p { margin:0; color:#64748B; font-size:14px; line-height:1.65; }
.ftesub-formula { margin:0 0 24px; padding:22px; border:1px solid #BFDBFE; border-radius:14px; background:#EFF6FF; color:#1E3A8A; text-align:center; font-size:clamp(20px,3vw,28px); font-weight:800; letter-spacing:-.02em; }
.ftesub-chip-list { display:flex; flex-wrap:wrap; gap:10px; }
.ftesub-chip-list span { padding:11px 15px; border:1px solid #DBEAFE; border-radius:999px; background:#F8FAFC; color:#1E3A8A; font-size:14px; font-weight:750; }
.ftesub-risk-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ftesub-risk-grid article { border-top:3px solid #F59E0B; }
.ftesub-risk-grid article>span { display:block; margin-bottom:10px; color:#B45309; font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.ftesub-mistake-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.ftesub-mistake-list li { display:flex; min-height:64px; align-items:center; gap:14px; padding:16px 18px; border:1px solid #E2E8F0; border-radius:12px; background:#fff; color:#334155; font-size:14px; font-weight:700; }
.ftesub-mistake-list li span { color:#2563EB; font-size:12px; font-weight:850; }
.ftesub-roadmap--eight { grid-template-columns:repeat(4,minmax(0,1fr)); }
.ftesub-glossary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0; }
.ftesub-glossary div { padding:17px 19px; border:1px solid #E2E8F0; border-radius:12px; background:#fff; }
.ftesub-glossary dt { color:#0B1220; font-weight:800; }
.ftesub-glossary dd { margin:5px 0 0; color:#64748B; font-size:13px; line-height:1.55; }
.ftesub-mini-grid a { color:#1D4ED8!important; }

.ftesub-news-hero { padding-bottom:60px; }
.ftesub-news-nav { display:flex; flex-wrap:wrap; gap:9px; margin-top:28px; }
.ftesub-news-nav a { padding:9px 13px; border:1px solid #DBEAFE; border-radius:999px; background:#fff; color:#1D4ED8!important; font-size:13px; font-weight:750; }
.ftesub-news-lead { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr); gap:22px; align-items:start; }
.ftesub-news-latest { display:grid; gap:14px; }
.ftesub-news-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.ftesub-news-more { display:flex; justify-content:flex-end; margin-top:24px; }
.ftesub-news-more a { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:10px 0; color:#1D4ED8; font-size:15px; line-height:1.5; font-weight:600; }
.ftesub-news-more a:hover,.ftesub-news-more a:focus-visible { text-decoration:underline; text-underline-offset:4px; }
.ftesub-news-more a:focus-visible { outline:2px solid #1D4ED8; outline-offset:4px; }
.ftesub-news-card { overflow:hidden; border:1px solid #E2E8F0; border-radius:14px; background:#fff; box-shadow:0 10px 28px rgba(15,23,42,.055); }
.ftesub-news-latest .ftesub-news-card { display:grid; grid-template-columns:112px minmax(0,1fr); }
.ftesub-news-image { display:block; min-height:150px; background:#E2E8F0; }
.ftesub-news-image img { display:block; width:100%; height:100%; min-height:150px; object-fit:cover; }
.ftesub-news-latest .ftesub-news-image,.ftesub-news-latest .ftesub-news-image img { min-height:100%; }
.ftesub-news-body { padding:19px; }
.ftesub-news-latest .ftesub-news-body { padding:14px; }
.ftesub-news-category { display:block; margin-bottom:8px; color:#2563EB; font-size:11px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.ftesub-news-card h3 { margin:0 0 9px; color:#0B1220; font-size:18px; line-height:1.3; }
.ftesub-news-card--featured h3 { font-size:clamp(25px,3vw,36px); letter-spacing:-.025em; }
.ftesub-news-card h3 a { color:inherit!important; }
.ftesub-news-card p { margin:0; color:#64748B; font-size:13px; line-height:1.6; }
.ftesub-news-meta { display:flex; flex-wrap:wrap; gap:5px 11px; margin-top:13px; color:#94A3B8; font-size:11px; line-height:1.4; }
.ftesub-read-more { display:inline-flex; gap:6px; margin-top:14px; color:#1D4ED8!important; font-size:13px; font-weight:800; }
.ftesub-news-latest .ftesub-news-card p,.ftesub-news-latest .ftesub-news-meta { display:none; }
.ftesub-empty { padding:26px; border:1px dashed #CBD5E1; border-radius:14px; background:#F8FAFC; color:#64748B; font-size:14px; line-height:1.6; }
.ftesub-news-anchor.ftesub-soft>.ftesub-section { background:#F8FAFC; }
.ftesub-newsletter { background:#0B1220; }
.ftesub-newsletter-grid { display:grid; grid-template-columns:1fr .85fr; gap:60px; align-items:center; }
.ftesub-newsletter h2 { margin:8px 0 13px; color:#fff; font-size:clamp(30px,3.8vw,44px); line-height:1.08; letter-spacing:-.035em; }
.ftesub-newsletter p { margin:0; color:#AFC0D5; font-size:16px; line-height:1.7; }
.ftesub-newsletter-form { padding:24px; border:1px solid #334155; border-radius:14px; background:#111C30; }
.ftesub-newsletter-form .mc4wp-form-fields { display:grid; grid-template-columns:1fr auto; gap:10px; }
.ftesub-newsletter-form p { margin:0; }
.ftesub-newsletter-form label { color:#fff; font-size:12px; }
.ftesub-newsletter-form input[type=email] { width:100%; min-height:48px; padding:10px 12px; border:1px solid #475569; border-radius:8px; }
.ftesub-newsletter-form input[type=submit],.ftesub-newsletter-form button { min-height:48px; padding:10px 17px; border:0; border-radius:8px; background:#2563EB; color:#fff; font-weight:800; cursor:pointer; }

@media (max-width:1024px) {
  .ftesub-basics-grid,.ftesub-news-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-risk-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ftesub-news-lead,.ftesub-newsletter-grid { grid-template-columns:1fr; gap:32px; }
}
@media (max-width:700px) {
  .ftesub-basics-grid,.ftesub-risk-grid,.ftesub-mistake-list,.ftesub-roadmap--eight,.ftesub-glossary,.ftesub-news-grid { grid-template-columns:1fr; }
  .ftesub-news-latest .ftesub-news-card { grid-template-columns:92px minmax(0,1fr); }
  .ftesub-news-more { justify-content:flex-start; }
  .ftesub-news-card h3 { font-size:17px; }
  .ftesub-newsletter-form .mc4wp-form-fields { grid-template-columns:1fr; }
  .ftesub-newsletter-form input[type=submit],.ftesub-newsletter-form button { width:100%; }
}

/* Education system, phase one. All additions are scoped to migrated pages. */
.ftesub-edu [id] { scroll-margin-top:100px; }
.ftesub-edu :is(a,summary):focus-visible { outline:3px solid #2563eb; outline-offset:4px; }
.ftesub-edu .ftesub-edu-hero { padding:48px 0; background:#fff; }
.ftesub-edu .ftesub-edu-hero-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) minmax(0,1fr); gap:28px; align-items:center; }
.ftesub-edu .ftesub-edu-copy, .ftesub-edu .ftesub-edu-media { min-width:0; }
.ftesub-edu .ftesub-edu-copy h1 { font-size:clamp(38px,4.2vw,58px); line-height:1.06; letter-spacing:-.045em; }
.ftesub-edu .ftesub-edu-copy > p { margin-top:20px; font-size:16px; line-height:1.65; }
.ftesub-edu .ftesub-edu-parent { display:block; width:fit-content; margin-bottom:14px; color:#475569; font-size:13px; padding:8px 0; }
.ftesub-edu .ftesub-edu-parent span { padding-left:8px; color:#94a3b8; }
.ftesub-edu .ftesub-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.ftesub-edu .ftesub-button { min-height:44px; padding:13px 16px; font-size:13px; line-height:1.4; text-align:center; }
.ftesub-edu .ftesub-edu-source-line { margin-top:18px; color:#64748b; font-size:12px; line-height:1.6; }
.ftesub-edu .ftesub-edu-media img { display:block; width:100%; height:auto; object-fit:contain; }
.ftesub-edu .ftesub-edu-visual { padding:30px 24px; border:1px solid #dbeafe; border-radius:16px; background:#f8fafc; }
.ftesub-edu .ftesub-edu-visual h2 { margin:14px 0 24px; font-size:28px; line-height:1.2; letter-spacing:-.03em; color:#0b1220; }
.ftesub-edu .ftesub-edu-visual ol { display:grid; gap:12px; list-style:none; margin:0; padding:0; }
.ftesub-edu .ftesub-edu-visual li { display:flex; align-items:center; gap:12px; padding:13px 12px; background:#fff; border:1px solid #e2e8f0; border-radius:8px; font-size:14px; font-weight:600; color:#334155; }
.ftesub-edu .ftesub-edu-visual li span { color:#2563eb; font-size:12px; }
.ftesub-edu .ftesub-edu-toc { align-self:center; max-height:440px; overflow:auto; padding:18px; border:1px solid #e2e8f0; border-radius:12px; background:#fff; }
.ftesub-edu .ftesub-edu-toc h2 { margin:0 0 10px; font-size:17px; line-height:1.3; }
.ftesub-edu .ftesub-edu-toc nav, .ftesub-edu .ftesub-edu-toc-mobile nav { display:grid; }
.ftesub-edu .ftesub-edu-toc a, .ftesub-edu .ftesub-edu-toc-mobile a { padding:12px 2px; min-height:44px; border-bottom:1px solid #f1f5f9; font-size:12px; font-weight:600; line-height:1.5; color:#475569; }
.ftesub-edu .ftesub-edu-toc a:hover, .ftesub-edu .ftesub-edu-toc-mobile a:hover { color:#2563eb; }
.ftesub-edu .ftesub-edu-toc-mobile { display:none; }
.ftesub-edu .ftesub-edu-highlights { background:#f8fafc; border-block:1px solid #e2e8f0; }
.ftesub-edu .ftesub-edu-highlights ul { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; padding:24px 0; gap:20px; }
.ftesub-edu .ftesub-edu-highlights li { display:flex; gap:10px; min-width:0; margin:0; }
.ftesub-edu .ftesub-edu-symbol { color:#2563eb; font-size:11px; font-weight:700; padding-top:4px; }
.ftesub-edu .ftesub-edu-highlights strong { display:block; color:#0b1220; font-size:13px; line-height:1.5; }
.ftesub-edu .ftesub-edu-highlights p { margin-top:4px; color:#64748b; font-size:12px; line-height:1.55; }
.ftesub-edu .ftesub-edu-section { padding:64px 0; }
.ftesub-edu .ftesub-edu-reading { max-width:780px; margin-inline:auto; }
.ftesub-edu .ftesub-edu-reading h2 { margin:10px 0 22px; color:#0b1220; font-size:clamp(28px,3vw,38px); line-height:1.15; letter-spacing:-.03em; }
.ftesub-edu .ftesub-edu-reading p { margin:16px 0 0; font-size:17px; line-height:1.8; color:#475569; }
.ftesub-edu .ftesub-edu-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:28px 0; }
.ftesub-edu .ftesub-edu-cards > article, body.ftesub-active .ftesub-edu .ftesub-edu-cards > article { padding:24px !important; background:#fff !important; border:1px solid #e2e8f0; border-radius:12px; min-width:0; }
.ftesub-edu .ftesub-edu-cards h3 { color:#0b1220; font-size:19px; line-height:1.3; }
.ftesub-edu .ftesub-edu-cards p { margin-top:14px; color:#475569; font-size:14px; line-height:1.75; }
.ftesub-edu .ftesub-edu-formula { margin-top:24px; padding:24px; border-left:3px solid #2563eb; background:#eff6ff; color:#0b1220; font-weight:650; font-size:18px; line-height:1.6; overflow-wrap:anywhere; }
.ftesub-edu .ftesub-edu-example { margin-top:26px; padding:24px; border:1px solid #dbeafe; border-radius:10px; background:#fff; }
.ftesub-edu .ftesub-edu-example h3 { font-size:16px; color:#2563eb; }
.ftesub-edu .ftesub-edu-checklist { padding:0 0 0 22px; margin:24px 0 0; }
.ftesub-edu .ftesub-edu-checklist li { margin:12px 0; padding-left:6px; color:#334155; line-height:1.7; }
.ftesub-edu .ftesub-edu-related h3 { margin:32px 0 16px; font-size:22px; }
.ftesub-edu .ftesub-edu-related p { color:#64748b; line-height:1.65; }
.ftesub-edu .ftesub-edu-articles { padding-left:20px; }
.ftesub-edu .ftesub-edu-articles a, .ftesub-edu .ftesub-edu-all-articles { display:inline-block; padding:12px 0; color:#2563eb; line-height:1.6; }
.ftesub-edu .ftesub-trust-links a, .ftesub-edu .ftesub-inline-resources a { min-height:44px; display:inline-flex; align-items:center; padding-block:10px; }
.ftesub-edu .ftesub-edu-faq .ftesub-wrap { max-width:900px; }
.ftesub-edu .ftesub-edu-faq summary { min-height:48px; }
@media (max-width:1024px) {
  .ftesub-edu .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:24px; }
  .ftesub-edu .ftesub-edu-toc { display:none; }
  .ftesub-edu .ftesub-edu-toc-mobile { display:block; grid-column:1/-1; padding:0 16px; border:1px solid #e2e8f0; border-radius:9px; }
  .ftesub-edu .ftesub-edu-toc-mobile summary { min-height:48px; padding:14px 0; cursor:pointer; font-weight:650; }
  .ftesub-edu .ftesub-edu-highlights ul { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .ftesub-edu .ftesub-edu-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .ftesub-edu .ftesub-edu-hero { padding:28px 0; }
  .ftesub-edu .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
  .ftesub-edu .ftesub-edu-copy h1 { font-size:clamp(36px,9vw,46px); }
  .ftesub-edu .ftesub-edu-copy > p { font-size:15px; margin-top:16px; }
  .ftesub-edu .ftesub-edu-media { width:100%; max-width:440px; margin:auto; }
  .ftesub-edu .ftesub-edu-media img { max-height:220px; }
  .ftesub-edu .ftesub-edu-visual { padding:20px; }
  .ftesub-edu .ftesub-edu-visual h2 { font-size:23px; margin:10px 0 16px; }
  .ftesub-edu .ftesub-edu-visual ol { gap:7px; }
  .ftesub-edu .ftesub-edu-visual li { padding:9px 10px; }
  .ftesub-edu .ftesub-edu-highlights ul { grid-template-columns:1fr; gap:16px; padding:22px 0; }
  .ftesub-edu .ftesub-edu-highlights li { padding-bottom:12px; border-bottom:1px solid #e2e8f0; }
  .ftesub-edu .ftesub-edu-highlights li:last-child { padding-bottom:0; border-bottom:0; }
  .ftesub-edu .ftesub-edu-section { padding:42px 0; }
  .ftesub-edu .ftesub-edu-reading p { font-size:16px; line-height:1.75; }
  .ftesub-edu .ftesub-edu-cards { grid-template-columns:minmax(0,1fr); }
  .ftesub-edu .ftesub-edu-formula { font-size:16px; padding:18px; }
}
/* Keep stock research cards insulated from the theme's blanket article reset. */
body.ftesub-active .ftesub-edu.ftesub--stocks article { padding:24px !important; background:#fff !important; }

/* Mutual Funds prototype: archive-card visual language, scoped to this page. */
.ftesub--mutual-funds .fe2-archive-kicker { display:block; color:var(--fte20-primary,#2563EB); font-size:12px; font-weight:700; line-height:1.5; letter-spacing:.075em; text-transform:uppercase; }
.ftesub--mutual-funds .fe2-archive-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ftesub--mutual-funds .fe2-archive-card { display:flex; flex-direction:column; min-width:0; margin:0; padding:0; background:#fff; border:1px solid var(--fte20-border,#E2E8F0); border-radius:var(--fte20-radius,14px); box-shadow:0 3px 14px rgba(15,23,42,.04); }
.ftesub--mutual-funds .fe2-archive-image { display:block; aspect-ratio:16/9; border-radius:13px 13px 0 0; background:var(--fte20-bg,#F8FAFC); }
.ftesub--mutual-funds .fe2-archive-image img { display:block; width:100%; height:100%; aspect-ratio:16/9; object-fit:cover; border-radius:inherit; }
.ftesub--mutual-funds .fe2-archive-placeholder { display:flex; height:100%; padding:20px; flex-direction:column; align-items:center; justify-content:center; color:var(--fte20-dark,#0B1220); font-size:24px; font-weight:800; letter-spacing:-.03em; border-top:3px solid var(--fte20-primary,#2563EB); border-radius:inherit; }
.ftesub--mutual-funds .fe2-archive-placeholder span { margin-top:5px; color:var(--fte20-muted,#64748B); font-size:11px; font-weight:500; letter-spacing:.02em; }
.ftesub--mutual-funds .fe2-archive-card-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:22px; }
.ftesub--mutual-funds .fe2-archive-card h3 { margin:9px 0 12px; font-size:22px; font-weight:700; line-height:1.3; letter-spacing:-.02em; overflow-wrap:anywhere; }
.ftesub--mutual-funds .fe2-archive-card h3 a { color:var(--fte20-dark,#0B1220); }
.ftesub--mutual-funds .fe2-archive-excerpt { margin:0 0 18px; color:var(--fte20-muted,#64748B); font-size:15px; line-height:1.65; overflow-wrap:anywhere; }
.ftesub--mutual-funds .fe2-archive-meta { display:flex; flex-wrap:wrap; gap:4px 8px; margin-top:auto; color:var(--fte20-muted,#64748B); font-size:12px; line-height:1.6; }
.ftesub--mutual-funds .fe2-archive-read { display:inline-flex; align-items:center; gap:8px; min-height:44px; margin-top:8px; font-size:14px; font-weight:650; }

.ftesub--mutual-funds .ftesub-fund-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding-top:20px; font-size:13px; }
.ftesub--mutual-funds .ftesub-fund-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; }
.ftesub--mutual-funds .ftesub-edu-hero { padding-top:28px; }
.ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); }
.ftesub--mutual-funds .ftesub-edu-toc { grid-column:1/-1; }
.ftesub--mutual-funds .ftesub-edu-toc nav { display:flex; flex-wrap:wrap; gap:8px 24px; }
.ftesub--mutual-funds .ftesub-fund-guides { border-bottom:1px solid var(--fte20-border); }
.ftesub--mutual-funds .fe2-archive-card:hover { border-color:#94a3b8; }
.ftesub--mutual-funds .fe2-archive-image { overflow:hidden; }
.ftesub--mutual-funds .fe2-archive-card-body h3 { margin:9px 0 18px; }
.ftesub--mutual-funds .fe2-archive-kicker { color:var(--fte20-primary); }
.ftesub--mutual-funds .fe2-archive-card a { text-decoration:none; }
.ftesub--mutual-funds .fe2-archive-card a:hover { text-decoration:underline; }
.ftesub--mutual-funds .ftesub-fund-all { display:inline-flex; align-items:center; min-height:44px; margin-top:24px; font-weight:600; }
.ftesub--mutual-funds .ftesub-fund-intro { padding:56px 0 24px; }
.ftesub--mutual-funds .ftesub-fund-intro h2 { margin-top:10px; }
.ftesub--mutual-funds .ftesub-fund-icon { flex:0 0 36px; width:36px; height:36px; display:grid; place-items:center; color:var(--fte20-primary); background:#eff6ff; border-radius:8px; }
.ftesub--mutual-funds .ftesub-fund-icon svg { width:22px; height:22px; }
.ftesub--mutual-funds a:focus-visible { outline:3px solid var(--fte20-primary); outline-offset:3px; }
@media(max-width:1024px) { .ftesub--mutual-funds .fe2-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) { .ftesub--mutual-funds .fe2-archive-grid,.ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1fr); } .ftesub--mutual-funds .ftesub-edu-media { max-width:none; } .ftesub--mutual-funds .ftesub-edu-media img { max-height:none; } }
/* Approved Mutual Funds master layout only. */
.ftesub--mutual-funds .ftesub-edu-hero { padding:30px 0 48px; }
.ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:48px; }
.ftesub--mutual-funds .ftesub-edu-copy h1 { font-size:clamp(38px,3.8vw,54px); line-height:1.09; max-width:680px; }
.ftesub--mutual-funds .ftesub-edu-copy > p { max-width:660px; font-size:17px; line-height:1.7; }
.ftesub--mutual-funds .ftesub-edu-media img { aspect-ratio:3/2; border-radius:14px; object-fit:contain; }
.ftesub--mutual-funds .ftesub-fund-guides { padding:54px 0 38px; background:var(--fte20-bg,#f8fafc); border-block:1px solid var(--fte20-border); }
.ftesub--mutual-funds .ftesub-section-head { margin-bottom:28px; }
.ftesub--mutual-funds .ftesub-fund-guides h2 { font-size:clamp(28px,3vw,38px); }
.ftesub--mutual-funds .fe2-archive-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.ftesub--mutual-funds .fe2-archive-card { box-shadow:none; }
.ftesub--mutual-funds .fe2-archive-card-body { padding:18px; }
.ftesub--mutual-funds .fe2-archive-card h3 { font-size:19px; line-height:1.35; }
.ftesub--mutual-funds .ftesub-fund-all { display:flex; width:fit-content; gap:7px; margin:20px 0 0 auto; }
.ftesub--mutual-funds .ftesub-fund-toc { padding-top:36px; }
.ftesub--mutual-funds .ftesub-edu-toc { max-height:none; overflow:visible; padding:22px 26px; border-radius:10px; }
.ftesub--mutual-funds .ftesub-edu-toc nav { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 24px; }
.ftesub--mutual-funds .ftesub-edu-toc a { font-size:13px; }
.ftesub--mutual-funds .ftesub-fund-intro { padding:60px 0 30px; }
.ftesub--mutual-funds .ftesub-fund-intro h2 { font-size:clamp(28px,3vw,38px); }
.ftesub--mutual-funds .ftesub-fund-intro p { max-width:720px; color:var(--fte20-muted); margin-top:16px; line-height:1.7; }
.ftesub--mutual-funds .ftesub-edu-highlights { border:0; background:#fff; padding-bottom:30px; }
.ftesub--mutual-funds .ftesub-edu-highlights ul { border-block:1px solid var(--fte20-border); padding-block:26px; }
.ftesub--mutual-funds .ftesub-edu-highlights li { flex-direction:column; gap:12px; }
.ftesub--mutual-funds .ftesub-edu-highlights strong { font-size:15px; }
.ftesub--mutual-funds .ftesub-edu-highlights p { font-size:13px; }
.ftesub--mutual-funds .ftesub-fund-selection { padding:68px 0; background:var(--fte20-bg); }
.ftesub--mutual-funds .ftesub-fund-steps { max-width:1040px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 52px; list-style:none; padding:0; margin:32px auto; counter-reset:fund-step; }
.ftesub--mutual-funds .ftesub-fund-steps li { padding:24px 0; border-top:1px solid var(--fte20-border); counter-increment:fund-step; }
.ftesub--mutual-funds .ftesub-fund-steps li::before { content:counter(fund-step,decimal-leading-zero); display:block; margin-bottom:12px; color:var(--fte20-primary); font-size:13px; font-weight:700; }
.ftesub--mutual-funds .ftesub-fund-steps h3 { font-size:22px; line-height:1.3; color:var(--fte20-dark); }
.ftesub--mutual-funds .ftesub-fund-steps p { margin-top:12px; font-size:15px; line-height:1.75; color:#475569; }
.ftesub--mutual-funds .ftesub-fund-context-link { display:inline-flex; align-items:center; min-height:44px; margin-top:14px; }
.ftesub--mutual-funds .ftesub-fund-sources { padding:30px 0; }
.ftesub--mutual-funds .ftesub-fund-sources h2 { font-size:24px; margin-block:8px 12px; }
@media(max-width:1100px) {
 .ftesub--mutual-funds .fe2-archive-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .ftesub--mutual-funds .ftesub-edu-hero-grid { gap:28px; }
 .ftesub--mutual-funds .ftesub-edu-copy h1 { font-size:42px; }
}
@media(max-width:800px) {
 .ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:1fr; }
 .ftesub--mutual-funds .ftesub-edu-media { max-width:520px; margin-inline:auto; }
}
@media(max-width:700px) {
 .ftesub--mutual-funds .ftesub-edu-hero { padding:20px 0 32px; }
 .ftesub--mutual-funds .ftesub-edu-copy h1 { font-size:clamp(34px,9vw,42px); }
 .ftesub--mutual-funds .ftesub-edu-copy > p { font-size:16px; line-height:1.65; }
 .ftesub--mutual-funds .ftesub-edu-media { max-width:360px; }
 .ftesub--mutual-funds .fe2-archive-grid { grid-template-columns:1fr; }
 .ftesub--mutual-funds .ftesub-fund-guides { padding:36px 0 24px; }
 .ftesub--mutual-funds .ftesub-fund-all { margin-left:0; }
 .ftesub--mutual-funds .ftesub-fund-intro { padding:40px 0 22px; }
 .ftesub--mutual-funds .ftesub-edu-highlights li { flex-direction:row; align-items:flex-start; }
 .ftesub--mutual-funds .ftesub-fund-steps { grid-template-columns:1fr; gap:0; }
 .ftesub--mutual-funds .ftesub-fund-selection { padding:42px 0; }
}


/* Preserve the supplied hero image without cropping or rounded masking. */
.ftesub--mutual-funds .ftesub-edu-media img { aspect-ratio:auto; border-radius:0; }
/* Mutual Funds approved mock: copy, illustration, TOC; highlights; guides. */
.ftesub--mutual-funds .ftesub-edu-hero { padding:28px 0 24px; background:#f8fbff; }
.ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1.3fr) minmax(0,.9fr) minmax(0,.85fr); gap:30px; align-items:center; }
.ftesub--mutual-funds .ftesub-edu-copy h1 { font-size:clamp(36px,3.35vw,48px); line-height:1.08; }
.ftesub--mutual-funds .ftesub-edu-copy > p { font-size:15px; line-height:1.75; }
.ftesub--mutual-funds .ftesub-edu-media img { width:100%; height:auto; border-radius:10px; }
.ftesub--mutual-funds .ftesub-edu-toc { grid-column:auto; max-height:none; overflow:visible; padding:18px; border:1px solid #dbeafe; box-shadow:0 2px 12px rgba(37,99,235,.04); }
.ftesub--mutual-funds .ftesub-edu-toc nav { display:grid; grid-template-columns:1fr; gap:0; }
.ftesub--mutual-funds .ftesub-edu-toc a { min-height:29px; padding:6px 0; font-size:11px; line-height:1.4; }
.ftesub--mutual-funds .ftesub-edu-highlights { padding:18px 0 30px; background:#f8fbff; }
.ftesub--mutual-funds .ftesub-edu-highlights ul { border:1px solid #dbeafe; border-radius:12px; background:#fff; padding:24px 16px; gap:0; }
.ftesub--mutual-funds .ftesub-edu-highlights li { align-items:center; text-align:center; padding:0 14px; border-right:1px solid #edf2f7; }
.ftesub--mutual-funds .ftesub-edu-highlights li:last-child { border-right:0; }
.ftesub--mutual-funds .ftesub-fund-icon { width:44px; height:44px; flex-basis:44px; border-radius:50%; }
.ftesub--mutual-funds .ftesub-edu-highlights strong { font-size:13px; }
.ftesub--mutual-funds .ftesub-edu-highlights p { font-size:12px; }
.ftesub--mutual-funds .ftesub-fund-guides { background:#fff; }
@media(max-width:1024px) {
 .ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); }
 .ftesub--mutual-funds .ftesub-edu-toc-mobile { grid-column:1/-1; background:#fff; }
 .ftesub--mutual-funds .ftesub-edu-highlights ul { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 0; }
}
@media(max-width:700px) {
 .ftesub--mutual-funds .ftesub-edu-hero-grid { grid-template-columns:1fr; gap:22px; }
 .ftesub--mutual-funds .ftesub-edu-copy h1 { font-size:clamp(34px,9vw,42px); }
 .ftesub--mutual-funds .ftesub-edu-media { width:100%; max-width:300px; }
 .ftesub--mutual-funds .ftesub-edu-highlights ul { grid-template-columns:1fr; gap:0; padding:12px 18px; }
 .ftesub--mutual-funds .ftesub-edu-highlights li { flex-direction:row; align-items:center; text-align:left; border-right:0; border-bottom:1px solid #edf2f7; padding:14px 0; }
 .ftesub--mutual-funds .ftesub-edu-highlights li:last-child { padding:14px 0; border-bottom:0; }
}

