/* Nivata Wealth v3.17 — Education + dedicated calculator pages */

.nivata-educate-page,
.nivata-finance-guide-page,
.nivata-calculator-page {
  background: #f6f4ed;
  color: #13372f;
}

.nivata-educate-page main,
.nivata-finance-guide-page main,
.nivata-calculator-page main {
  overflow: clip;
}

.educate-hero,
.guide-hero,
.calculator-page-hero {
  position: relative;
  min-height: 560px;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: clamp(42px, 7vw, 110px);
  align-items: end;
  padding: clamp(132px, 13vw, 188px) clamp(28px, 7vw, 112px) clamp(72px, 8vw, 116px);
  background: #082c24;
  color: #f7f3e8;
  isolation: isolate;
}

.educate-hero__mesh,
.guide-hero__mesh,
.calculator-page-hero__grid {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .22;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    radial-gradient(circle at 82% 22%, rgba(219, 194, 126, .27), transparent 32%);
  background-size: 64px 64px, 64px 64px, auto;
}

.educate-hero__copy,
.guide-hero__copy,
.calculator-page-hero__copy {
  max-width: 820px;
}

.educate-hero .eyebrow,
.guide-hero .eyebrow,
.calculator-page-hero .eyebrow {
  color: rgba(247,243,232,.72);
}

.educate-hero h1,
.guide-hero h1,
.calculator-page-hero h1 {
  margin: 18px 0 26px;
  font-size: clamp(54px, 7.2vw, 110px);
  line-height: .91;
  letter-spacing: -.055em;
  font-weight: 520;
}

.educate-hero h1 em,
.guide-hero h1 em,
.calculator-page-hero h1 em {
  color: #dbc27e;
  font-style: italic;
  font-weight: 420;
}

.educate-hero__copy > p:last-of-type,
.guide-hero__copy > p:last-of-type,
.calculator-page-hero__copy > p:last-of-type {
  max-width: 660px;
  margin: 0;
  color: rgba(247,243,232,.78);
  font-size: clamp(17px, 1.6vw, 22px);
  line-height: 1.55;
}

.educate-hero__actions {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  margin-top: 34px;
}

.educate-hero .line-link,
.guide-hero .line-link {
  color: #f7f3e8;
}

.educate-hero__index,
.calculator-page-hero__stamp,
.guide-hero__formula {
  align-self: stretch;
  display: grid;
  align-content: end;
  border-left: 1px solid rgba(247,243,232,.18);
  padding-left: clamp(28px, 4vw, 56px);
}

.educate-hero__index {
  grid-template-columns: 46px 1fr;
  gap: 16px 18px;
}

.educate-hero__index span,
.educate-hero__index strong,
.calculator-page-hero__stamp span,
.calculator-page-hero__stamp small,
.guide-hero__formula span,
.guide-hero__formula small {
  color: rgba(247,243,232,.62);
}

.educate-hero__index span,
.calculator-page-hero__stamp span,
.guide-hero__formula span {
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.educate-hero__index strong {
  font-size: 18px;
  font-weight: 540;
}

.educate-primer,
.educate-glossary,
.guide-content,
.calculator-page-section,
.calculator-faq,
.calculator-related {
  background: #f6f4ed;
}

.educate-guides,
.educate-tools,
.calculator-explainer {
  background: #0e372f;
  color: #f7f3e8;
}

.educate-primer__intro,
.educate-guides__intro,
.educate-glossary__intro,
.educate-tools__intro,
.calculator-page-section__intro,
.calculator-faq__intro,
.calculator-explainer__grid,
.calculator-related {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .78fr);
  gap: clamp(38px, 7vw, 112px);
  align-items: start;
}

.educate-primer__intro h2,
.educate-guides__intro h2,
.educate-glossary__intro h2,
.educate-tools__intro h2,
.calculator-page-section__intro h2,
.calculator-faq__intro h2,
.calculator-explainer h2,
.calculator-related h2,
.guide-section h2,
.guide-faq h2,
.guide-related h2,
.guide-calculator-cta h2 {
  margin: 10px 0 0;
  font-size: clamp(42px, 5.4vw, 76px);
  line-height: .98;
  letter-spacing: -.045em;
  font-weight: 520;
}

.educate-primer__intro h2 em,
.educate-guides__intro h2 em,
.educate-glossary__intro h2 em,
.educate-tools__intro h2 em,
.calculator-page-section__intro h2 em,
.calculator-faq__intro h2 em,
.calculator-explainer h2 em,
.guide-section h2 em,
.guide-faq h2 em,
.guide-related h2 em,
.guide-calculator-cta h2 em {
  color: #9a7b35;
  font-style: italic;
  font-weight: 420;
}

.educate-guides__intro h2 em,
.educate-tools__intro h2 em,
.calculator-explainer h2 em,
.guide-section--dark h2 em {
  color: #dbc27e;
}

.educate-primer__intro > p,
.educate-guides__intro > p,
.educate-tools__intro > p,
.calculator-page-section__intro > p,
.calculator-faq__intro > p,
.calculator-related > nav,
.educate-glossary__intro > div:last-child,
.calculator-explainer__copy {
  font-size: 16px;
  line-height: 1.72;
}

.educate-guides__intro > p,
.educate-tools__intro > p,
.calculator-explainer__copy {
  color: rgba(247,243,232,.73);
}

.educate-primer__grid {
  margin-top: clamp(44px, 6vw, 76px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(19,55,47,.16);
  border-bottom: 1px solid rgba(19,55,47,.16);
}

.educate-primer__grid article {
  min-height: 240px;
  padding: 30px 28px 32px;
  border-right: 1px solid rgba(19,55,47,.16);
}

.educate-primer__grid article:last-child { border-right: 0; }
.educate-primer__grid article > span { font-size: 11px; letter-spacing: .14em; opacity: .55; }
.educate-primer__grid h3 { margin: 58px 0 12px; font-size: 23px; line-height: 1.15; font-weight: 540; }
.educate-primer__grid p { margin: 0; font-size: 14px; line-height: 1.65; color: rgba(19,55,47,.72); }

.educate-guide-grid {
  margin-top: clamp(42px, 6vw, 76px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid rgba(247,243,232,.18);
}

.educate-guide-grid a {
  position: relative;
  min-height: 260px;
  padding: 30px 78px 34px 0;
  border-bottom: 1px solid rgba(247,243,232,.18);
  color: inherit;
  text-decoration: none;
}

.educate-guide-grid a:nth-child(odd) { border-right: 1px solid rgba(247,243,232,.18); padding-right: 42px; }
.educate-guide-grid a:nth-child(even) { padding-left: 42px; }
.educate-guide-grid a > span { font-size: 10px; letter-spacing: .14em; color: rgba(247,243,232,.5); }
.educate-guide-grid h3 { margin: 28px 0 14px; font-size: clamp(26px, 3vw, 42px); font-weight: 520; letter-spacing: -.03em; }
.educate-guide-grid p { margin: 0; max-width: 560px; color: rgba(247,243,232,.68); line-height: 1.62; font-size: 14px; }
.educate-guide-grid i { position: absolute; right: 26px; top: 30px; font-style: normal; font-size: 22px; }
.educate-guide-grid a:nth-child(even) i { right: 0; }
.educate-guide-grid a:hover h3 { color: #dbc27e; }

.educate-search {
  margin-top: 24px;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 16px;
  border: 1px solid rgba(19,55,47,.2);
  background: rgba(255,255,255,.42);
  border-radius: 2px;
}

.educate-search i { font-style: normal; opacity: .55; }
.educate-search input { width: 100%; border: 0; outline: 0; background: transparent; color: inherit; font: inherit; }
.educate-search input::placeholder { color: rgba(19,55,47,.5); }

.educate-category-nav {
  margin-top: 46px;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid rgba(19,55,47,.15);
  border-bottom: 1px solid rgba(19,55,47,.15);
}

.educate-category-nav a {
  display: inline-flex;
  gap: 10px;
  padding: 14px 18px;
  color: inherit;
  text-decoration: none;
  border-right: 1px solid rgba(19,55,47,.15);
  font-size: 12px;
}

.educate-category-nav a span { opacity: .45; font-size: 10px; }

.educate-glossary__groups { margin-top: 58px; }
.educate-glossary-group { scroll-margin-top: 110px; margin-bottom: 66px; }
.educate-glossary-group > header { display: grid; grid-template-columns: 44px 1fr auto; gap: 18px; align-items: baseline; padding-bottom: 18px; border-bottom: 1px solid rgba(19,55,47,.18); }
.educate-glossary-group > header span { font-size: 11px; opacity: .48; letter-spacing: .12em; }
.educate-glossary-group > header h3 { margin: 0; font-size: clamp(25px, 3vw, 38px); font-weight: 520; letter-spacing: -.025em; }
.educate-glossary-group > header small { opacity: .55; }

.educate-term-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); }
.educate-term { border-bottom: 1px solid rgba(19,55,47,.13); }
.educate-term:nth-child(odd) { border-right: 1px solid rgba(19,55,47,.13); }
.educate-term[hidden], .educate-glossary-group[hidden] { display: none !important; }
.educate-term summary { list-style: none; cursor: pointer; min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 28px 18px 0; }
.educate-term:nth-child(even) summary, .educate-term:nth-child(even) > div { padding-left: 28px; }
.educate-term summary::-webkit-details-marker { display: none; }
.educate-term summary strong { font-size: 17px; font-weight: 560; }
.educate-term summary span { font-size: 21px; font-weight: 300; transition: transform .2s ease; }
.educate-term[open] summary span { transform: rotate(45deg); }
.educate-term > div { padding: 0 32px 24px 0; }
.educate-term > div p { margin: 0; max-width: 660px; color: rgba(19,55,47,.72); line-height: 1.68; font-size: 14px; }
.educate-no-results { margin: 40px 0 0; padding: 24px; border: 1px solid rgba(19,55,47,.16); }

.educate-tool-links {
  margin-top: 50px;
  display: grid;
  grid-template-columns: repeat(5, minmax(0,1fr));
  border-top: 1px solid rgba(247,243,232,.18);
  border-bottom: 1px solid rgba(247,243,232,.18);
}

.educate-tool-links a {
  min-height: 180px;
  padding: 26px 22px;
  border-right: 1px solid rgba(247,243,232,.18);
  color: inherit;
  text-decoration: none;
  display: flex;
  flex-direction: column;
}
.educate-tool-links a:last-child { border-right: 0; }
.educate-tool-links strong { margin-top: auto; font-size: 18px; font-weight: 540; }
.educate-tool-links span { margin-top: 8px; color: rgba(247,243,232,.56); font-size: 12px; }
.educate-tool-links i { position: absolute; }
.educate-tool-links a:hover strong { color: #dbc27e; }

.educate-note {
  display: flex;
  justify-content: space-between;
  gap: 30px;
  padding: 28px clamp(28px, 7vw, 112px);
  background: #e9e4d7;
  border-top: 1px solid rgba(19,55,47,.12);
  color: #31534b;
  font-size: 12px;
  line-height: 1.6;
}
.educate-note p { margin: 0; max-width: 920px; }
.educate-note small { white-space: nowrap; }

/* Deep guide */
.guide-hero__formula { gap: 18px; }
.guide-hero__formula strong { color: #f7f3e8; font-size: clamp(22px, 2.3vw, 34px); line-height: 1.35; font-weight: 520; }
.guide-hero__formula small { max-width: 430px; font-size: 12px; line-height: 1.6; }

.guide-content { padding-left: clamp(28px, 7vw, 112px); padding-right: clamp(28px, 7vw, 112px); }
.guide-section { display: grid; grid-template-columns: minmax(160px,.32fr) minmax(0,1fr); gap: clamp(34px, 7vw, 120px); padding: clamp(70px, 8vw, 112px) 0; border-bottom: 1px solid rgba(19,55,47,.14); }
.guide-section__label span { display: block; margin-bottom: 16px; font-size: 11px; letter-spacing: .14em; opacity: .5; }
.guide-section__label p { margin: 0; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }
.guide-section__body { max-width: 850px; }
.guide-section__body > p { margin: 32px 0 0; font-size: 18px; line-height: 1.75; color: rgba(19,55,47,.76); }
.guide-section--dark { margin-left: calc(clamp(28px, 7vw, 112px) * -1); margin-right: calc(clamp(28px, 7vw, 112px) * -1); padding-left: clamp(28px, 7vw, 112px); padding-right: clamp(28px, 7vw, 112px); background: #0e372f; color: #f7f3e8; border: 0; }
.guide-section--dark .guide-section__body > p, .guide-section--dark .guide-section__label { color: rgba(247,243,232,.68); }
.guide-checks { list-style: none; padding: 0; margin: 34px 0 0; }
.guide-checks li { position: relative; padding: 18px 0 18px 34px; border-top: 1px solid rgba(247,243,232,.15); color: rgba(247,243,232,.8); line-height: 1.65; }
.guide-checks li:last-child { border-bottom: 1px solid rgba(247,243,232,.15); }
.guide-checks li::before { content: '↘'; position: absolute; left: 0; color: #dbc27e; }

.guide-faq { padding: clamp(78px, 8vw, 118px) 0; }
.guide-faq > h2 { margin-bottom: 42px; }
.guide-faq__list, .calculator-faq__list { border-top: 1px solid rgba(19,55,47,.16); }
.guide-faq details, .calculator-faq details { border-bottom: 1px solid rgba(19,55,47,.16); }
.guide-faq summary, .calculator-faq summary { list-style: none; cursor: pointer; min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.guide-faq summary::-webkit-details-marker, .calculator-faq summary::-webkit-details-marker { display: none; }
.guide-faq summary strong, .calculator-faq summary strong { font-size: 18px; font-weight: 540; }
.guide-faq summary span, .calculator-faq summary span { font-size: 22px; transition: transform .2s ease; }
.guide-faq details[open] summary span, .calculator-faq details[open] summary span { transform: rotate(45deg); }
.guide-faq details p, .calculator-faq details p { margin: 0; max-width: 780px; padding: 0 50px 26px 0; color: rgba(19,55,47,.72); line-height: 1.7; }

.guide-related { display: grid; grid-template-columns: minmax(0,.75fr) minmax(300px,1fr); gap: clamp(40px, 8vw, 120px); padding: 56px 0 12px; border-top: 1px solid rgba(19,55,47,.16); }
.guide-related__terms { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.guide-related__terms a { min-height: 72px; display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 0 16px; border-bottom: 1px solid rgba(19,55,47,.13); color: inherit; text-decoration: none; }
.guide-related__terms a:nth-child(odd) { border-right: 1px solid rgba(19,55,47,.13); }

.guide-calculator-cta { display: flex; justify-content: space-between; gap: 40px; align-items: end; background: #e9e4d7; }

/* Dedicated calculators */
.calculator-page-hero__stamp { gap: 16px; }
.calculator-page-hero__stamp strong { font-size: clamp(26px, 3vw, 42px); line-height: 1.12; font-weight: 520; }
.calculator-page-hero__stamp small { font-size: 12px; }

.single-calculator-shell {
  margin-top: 48px;
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(300px,.75fr);
  border: 1px solid rgba(19,55,47,.14);
  background: #fffdf7;
  box-shadow: 0 24px 70px rgba(8,44,36,.08);
}
.single-calculator-shell .calculator-page-form { padding: clamp(28px, 4vw, 52px); }
.single-calculator-shell .calculator-page-result { margin: 0; border-radius: 0; min-height: 100%; padding: clamp(30px,4vw,48px); background: #0e372f; color: #f7f3e8; }
.single-calculator-shell .calculator-page-result > span { color: rgba(247,243,232,.62); }
.single-calculator-shell .calculator-page-result > strong { color: #dbc27e; font-size: clamp(40px,5vw,68px); line-height: 1; }
.single-calculator-shell .calculator-page-result dl { border-color: rgba(247,243,232,.16); }
.single-calculator-shell .calculator-page-result dt { color: rgba(247,243,232,.55); }
.single-calculator-shell .calculator-page-result dd { color: #f7f3e8; }
.single-calculator-shell .calculator-page-result p { color: rgba(247,243,232,.62); border-color: rgba(247,243,232,.16); }
.single-calculator-shell .field-grid--retirement { grid-template-columns: repeat(2,minmax(0,1fr)); }

.calculator-explainer__copy h3 { margin: 0 0 8px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: #dbc27e; }
.calculator-explainer__copy p { margin: 0 0 30px; }
.calculator-explainer__copy .line-link { color: #f7f3e8; }

.calculator-faq__list { margin-top: 44px; }
.calculator-related { align-items: end; }
.calculator-related nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid rgba(19,55,47,.14); }
.calculator-related nav a { min-height: 90px; padding: 18px; display: grid; grid-template-columns: 1fr auto; grid-template-rows: auto auto; gap: 4px 18px; border-bottom: 1px solid rgba(19,55,47,.14); color: inherit; text-decoration: none; }
.calculator-related nav a:nth-child(odd) { border-right: 1px solid rgba(19,55,47,.14); }
.calculator-related nav strong { font-size: 16px; font-weight: 540; }
.calculator-related nav span { font-size: 11px; color: rgba(19,55,47,.55); }
.calculator-related nav i { grid-column: 2; grid-row: 1 / span 2; align-self: center; font-style: normal; }

/* Compact SEO/support sections added to established pages */
.nivata-seo-support {
  padding: clamp(72px,8vw,110px) clamp(28px,7vw,112px);
  background: #f6f4ed;
  color: #13372f;
  border-top: 1px solid rgba(19,55,47,.12);
}
.nivata-seo-support__intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.8fr); gap:clamp(38px,7vw,100px); }
.nivata-seo-support h2 { margin:10px 0 0; font-size:clamp(38px,4.8vw,66px); line-height:1; letter-spacing:-.04em; font-weight:520; }
.nivata-seo-support h2 em { color:#9a7b35; font-weight:420; }
.nivata-seo-support__intro > p { margin:0; font-size:15px; line-height:1.7; color:rgba(19,55,47,.72); }
.nivata-seo-support__grid { margin-top:42px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid rgba(19,55,47,.14); border-bottom:1px solid rgba(19,55,47,.14); }
.nivata-seo-support__grid article { padding:28px; min-height:190px; border-right:1px solid rgba(19,55,47,.14); }
.nivata-seo-support__grid article:last-child { border-right:0; }
.nivata-seo-support__grid h3 { margin:0 0 12px; font-size:19px; font-weight:540; }
.nivata-seo-support__grid p { margin:0; font-size:13px; line-height:1.65; color:rgba(19,55,47,.68); }
.nivata-seo-support__links { margin-top:28px; display:flex; flex-wrap:wrap; gap:10px 24px; }
.nivata-seo-support__links a { color:#13372f; text-underline-offset:4px; font-size:13px; }

/* v3.34.89.48 — Gold/Silver and Mutual Funds reuse the same editorial
   support system as the IPO page. Gold has four equally weighted guide
   items; Mutual Funds keeps the default three-column IPO grid. */
@media (min-width: 981px) {
  .nivata-bullion-page .bullion-editorial-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
.tools-dedicated-links { margin: 26px 0 36px; padding: 14px 0; border-top: 1px solid rgba(19,55,47,.12); border-bottom: 1px solid rgba(19,55,47,.12); }
.tools-dedicated-links a { text-decoration: none; }
.tools-dedicated-links a:hover { color: #7e6329; }

@media (max-width: 980px) {
  .educate-primer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .educate-primer__grid article:nth-child(2) { border-right:0; }
  .educate-primer__grid article:nth-child(-n+2) { border-bottom:1px solid rgba(19,55,47,.16); }
  .educate-tool-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .educate-tool-links a { border-bottom:1px solid rgba(247,243,232,.18); }
  .educate-tool-links a:nth-child(2n) { border-right:0; }
  .educate-tool-links a:last-child { grid-column:1 / -1; }
  .nivata-seo-support__grid { grid-template-columns:1fr; }
  .nivata-seo-support__grid article { border-right:0; border-bottom:1px solid rgba(19,55,47,.14); min-height:0; }
}

@media (max-width: 760px) {
  .educate-hero,
  .guide-hero,
  .calculator-page-hero {
    min-height: 0;
    grid-template-columns: 1fr;
    gap: 42px;
    padding: 118px 22px 58px;
  }
  .educate-hero h1,
  .guide-hero h1,
  .calculator-page-hero h1 { font-size: clamp(48px,15vw,72px); }
  .educate-hero__index,
  .calculator-page-hero__stamp,
  .guide-hero__formula { border-left:0; border-top:1px solid rgba(247,243,232,.18); padding:28px 0 0; }
  .educate-primer__intro,
  .educate-guides__intro,
  .educate-glossary__intro,
  .educate-tools__intro,
  .calculator-page-section__intro,
  .calculator-faq__intro,
  .calculator-explainer__grid,
  .calculator-related,
  .guide-related,
  .nivata-seo-support__intro { grid-template-columns:1fr; gap:26px; }
  .educate-primer__intro h2,
  .educate-guides__intro h2,
  .educate-glossary__intro h2,
  .educate-tools__intro h2,
  .calculator-page-section__intro h2,
  .calculator-faq__intro h2,
  .calculator-explainer h2,
  .calculator-related h2,
  .guide-section h2,
  .guide-faq h2,
  .guide-related h2,
  .guide-calculator-cta h2 { font-size: clamp(38px,12vw,54px); }
  .educate-primer__grid { grid-template-columns:1fr; }
  .educate-primer__grid article,
  .educate-primer__grid article:nth-child(2) { border-right:0; border-bottom:1px solid rgba(19,55,47,.16); min-height:190px; }
  .educate-primer__grid article:last-child { border-bottom:0; }
  .educate-primer__grid h3 { margin-top:36px; }
  .educate-guide-grid { grid-template-columns:1fr; }
  .educate-guide-grid a,
  .educate-guide-grid a:nth-child(odd),
  .educate-guide-grid a:nth-child(even) { min-height:220px; border-right:0; padding:26px 48px 28px 0; }
  .educate-guide-grid a:nth-child(even) i { right:26px; }
  .educate-category-nav { display:grid; grid-template-columns:1fr 1fr; }
  .educate-category-nav a { border-bottom:1px solid rgba(19,55,47,.12); }
  .educate-term-list { grid-template-columns:1fr; }
  .educate-term:nth-child(odd) { border-right:0; }
  .educate-term:nth-child(even) summary, .educate-term:nth-child(even) > div { padding-left:0; }
  .educate-tool-links { grid-template-columns:1fr; }
  .educate-tool-links a, .educate-tool-links a:nth-child(2n) { min-height:120px; border-right:0; }
  .educate-tool-links a:last-child { grid-column:auto; }
  .educate-note { flex-direction:column; padding:24px 22px; gap:10px; }
  .educate-note small { white-space:normal; }
  .guide-section { grid-template-columns:1fr; gap:24px; padding:66px 0; }
  .guide-section__body > p { font-size:16px; }
  .guide-related__terms { grid-template-columns:1fr; }
  .guide-related__terms a:nth-child(odd) { border-right:0; }
  .guide-calculator-cta { display:grid; gap:28px; align-items:start; }
  .single-calculator-shell { grid-template-columns:1fr; }
  .single-calculator-shell .field-grid--retirement { grid-template-columns:1fr; }
  .calculator-related nav { grid-template-columns:1fr; }
  .calculator-related nav a:nth-child(odd) { border-right:0; }
  .nivata-seo-support { padding-left:22px; padding-right:22px; }
}


/* Trust and transparency pages */
/* Trust pages are core legal/editorial information and must never depend on
   scroll-reveal JavaScript to become readable. Keep them immediately visible
   even if a parent-theme animation rule, script delay or cache mismatch occurs. */
.nivata-trust-page .trust-hero__copy,
.nivata-trust-page .trust-row {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.nivata-trust-page {
  background: #f6f4ed;
  color: #13372f;
}
.nivata-trust-page main { overflow: clip; }
.trust-hero {
  position: relative;
  min-height: 500px;
  display: grid;
  align-items: end;
  padding: clamp(132px, 13vw, 188px) clamp(28px, 7vw, 112px) clamp(70px, 8vw, 106px);
  background: #082c24;
  color: #f7f3e8;
  isolation: isolate;
}
.trust-hero__mesh {
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: .2;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px),
    radial-gradient(circle at 78% 24%, rgba(219,194,126,.25), transparent 31%);
  background-size: 64px 64px, 64px 64px, auto;
}
.trust-hero__copy { max-width: 880px; }
.trust-hero .eyebrow { color: rgba(247,243,232,.72); }
.trust-hero h1 {
  margin: 18px 0 24px;
  font-size: clamp(54px, 7vw, 104px);
  line-height: .92;
  letter-spacing: -.052em;
  font-weight: 520;
}
.trust-hero h1 em { color: #dbc27e; font-style: italic; font-weight: 420; }
.trust-hero__copy > p:last-child {
  margin: 0;
  max-width: 690px;
  color: rgba(247,243,232,.77);
  font-size: clamp(17px,1.6vw,21px);
  line-height: 1.6;
}
.trust-content { background: #f6f4ed; }
.trust-row {
  display: grid;
  grid-template-columns: 56px minmax(220px,.72fr) minmax(320px,1.28fr);
  gap: clamp(24px,4vw,66px);
  padding: 30px 0;
  border-top: 1px solid rgba(19,55,47,.14);
  align-items: start;
}
.trust-row:last-child { border-bottom: 1px solid rgba(19,55,47,.14); }
.trust-row > span { padding-top: 4px; font-size: 11px; letter-spacing: .14em; opacity: .5; }
.trust-row h2 { margin: 0; font-size: clamp(25px,3vw,38px); line-height: 1.08; letter-spacing: -.028em; font-weight: 520; }
.trust-row p { margin: 0; max-width: 780px; font-size: 15px; line-height: 1.75; color: rgba(19,55,47,.72); }
.trust-links {
  display: grid;
  grid-template-columns: minmax(0,.75fr) minmax(320px,1fr);
  gap: clamp(40px,8vw,120px);
  align-items: start;
  background: #e9e4d7;
}
.trust-links h2 { margin: 10px 0 0; font-size: clamp(40px,5vw,68px); line-height: .98; letter-spacing: -.04em; font-weight: 520; }
.trust-links h2 em { color: #9a7b35; font-weight: 420; }
.trust-links nav { border-top: 1px solid rgba(19,55,47,.16); }
.trust-links nav a {
  min-height: 68px;
  padding: 0 4px;
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  border-bottom: 1px solid rgba(19,55,47,.16);
  color: inherit;
  text-decoration: none;
  font-size: 14px;
}
.trust-links nav a:hover { color: #7e6329; }

@media (max-width: 760px) {
  .trust-hero { min-height: 0; padding: 118px 22px 58px; }
  .trust-hero h1 { font-size: clamp(48px,15vw,72px); }
  .trust-row { grid-template-columns: 36px 1fr; gap: 14px 18px; padding: 26px 0; }
  .trust-row p { grid-column: 2; }
  .trust-links { grid-template-columns: 1fr; gap: 30px; }
}


/* ================================================================
   v3.18.0 — Education Hub typography alignment
   Keep every new SEO/education surface inside the same restrained type
   system used across the rest of Nivata Wealth.
   ================================================================ */
.nivata-educate-page,
.nivata-finance-guide-page,
.nivata-calculator-page,
.nivata-trust-page,
.nivata-educate-page button,
.nivata-educate-page input,
.nivata-finance-guide-page button,
.nivata-finance-guide-page input,
.nivata-calculator-page button,
.nivata-calculator-page input,
.nivata-trust-page button,
.nivata-trust-page input {
  font-family: var(--sans);
}

.educate-hero h1,
.guide-hero h1,
.calculator-page-hero h1,
.trust-hero h1,
.educate-primer__intro h2,
.educate-guides__intro h2,
.educate-glossary__intro h2,
.educate-tools__intro h2,
.calculator-page-section__intro h2,
.calculator-faq__intro h2,
.calculator-explainer h2,
.calculator-related h2,
.guide-section h2,
.guide-faq h2,
.guide-related h2,
.guide-calculator-cta h2,
.trust-row h2,
.trust-links h2 {
  font-family: var(--sans);
  font-weight: 520;
}

.educate-hero h1 em,
.guide-hero h1 em,
.calculator-page-hero h1 em,
.trust-hero h1 em,
.educate-primer__intro h2 em,
.educate-guides__intro h2 em,
.educate-glossary__intro h2 em,
.educate-tools__intro h2 em,
.calculator-page-section__intro h2 em,
.calculator-faq__intro h2 em,
.calculator-explainer h2 em,
.guide-section h2 em,
.guide-faq h2 em,
.guide-related h2 em,
.guide-calculator-cta h2 em,
.trust-links h2 em {
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
}

/* Match the established Nivata hero and section scale rather than using a
   separate oversized editorial treatment for the learning area. */
.educate-hero h1,
.guide-hero h1,
.calculator-page-hero h1,
.trust-hero h1 {
  font-size: clamp(54px, 6.45vw, 104px);
  line-height: .96;
  letter-spacing: -.046em;
}

.educate-primer__intro h2,
.educate-guides__intro h2,
.educate-glossary__intro h2,
.educate-tools__intro h2,
.calculator-page-section__intro h2,
.calculator-faq__intro h2,
.calculator-explainer h2,
.calculator-related h2,
.guide-section h2,
.guide-faq h2,
.guide-related h2,
.guide-calculator-cta h2,
.trust-links h2 {
  font-size: clamp(38px, 5vw, 68px);
  line-height: 1.01;
  letter-spacing: -.046em;
}

@media (max-width: 760px) {
  .educate-hero h1,
  .guide-hero h1,
  .calculator-page-hero h1,
  .trust-hero h1 {
    font-size: clamp(39px, 10.4vw, 48px);
    line-height: 1.02;
  }

  .educate-primer__intro h2,
  .educate-guides__intro h2,
  .educate-glossary__intro h2,
  .educate-tools__intro h2,
  .calculator-page-section__intro h2,
  .calculator-faq__intro h2,
  .calculator-explainer h2,
  .calculator-related h2,
  .guide-section h2,
  .guide-faq h2,
  .guide-related h2,
  .guide-calculator-cta h2,
  .trust-links h2 {
    font-size: clamp(34px, 9.2vw, 43px);
    line-height: 1.04;
  }
}

/* ================================================================
   v3.19.0 — Education Hub organisation + advanced calculator options
   ================================================================ */

/* Keep all newly introduced controls on the established Nivata type system. */
.nivata-tools-page select,
.nivata-educate-page select,
.nivata-calculator-page select,
.educate-paths,
.educate-paths button,
.educate-paths input,
.educate-paths select {
  font-family: var(--sans);
}

/* Education Hub: guided learning paths make the large glossary easier to enter. */
.educate-paths {
  background: #ece8dc;
  color: #13372f;
}

.educate-paths__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, .78fr);
  gap: clamp(38px, 7vw, 112px);
  align-items: start;
}

.educate-paths__intro h2 {
  margin: 10px 0 0;
  font-family: var(--sans);
  font-size: clamp(38px, 5vw, 68px);
  line-height: 1.01;
  letter-spacing: -.046em;
  font-weight: 520;
}

.educate-paths__intro h2 em {
  color: #9a7b35;
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
}

.educate-paths__intro > p {
  margin: 0;
  font-size: 16px;
  line-height: 1.72;
  color: rgba(19,55,47,.72);
}

.educate-path-grid {
  margin-top: clamp(42px, 6vw, 70px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(19,55,47,.16);
  border-bottom: 1px solid rgba(19,55,47,.16);
}

.educate-path-grid article {
  min-height: 290px;
  padding: 28px 24px 26px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid rgba(19,55,47,.16);
}

.educate-path-grid article:last-child { border-right: 0; }
.educate-path-grid article > span { font-size: 10px; letter-spacing: .14em; opacity: .5; }
.educate-path-grid h3 { margin: 42px 0 12px; font-size: 22px; line-height: 1.16; font-weight: 560; letter-spacing: -.02em; }
.educate-path-grid p { margin: 0; color: rgba(19,55,47,.7); font-size: 13px; line-height: 1.62; }
.educate-path-grid nav { margin-top: auto; padding-top: 24px; display: flex; flex-wrap: wrap; gap: 8px; }
.educate-path-grid nav a {
  padding: 8px 10px;
  border: 1px solid rgba(19,55,47,.16);
  border-radius: 999px;
  color: #13372f;
  text-decoration: none;
  font-size: 11px;
  line-height: 1;
  background: rgba(255,255,255,.28);
}
.educate-path-grid nav a:hover { border-color: rgba(19,55,47,.4); background: rgba(255,255,255,.55); }

/* Glossary tools: search, category selection, popular concepts and result count. */
.educate-glossary-toolbar {
  margin-top: 24px;
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(190px,.65fr);
  gap: 10px;
}

.educate-glossary-toolbar .educate-search { margin-top: 0; }

.educate-category-select {
  display: flex;
  align-items: center;
  min-height: 52px;
  border: 1px solid rgba(19,55,47,.2);
  background: rgba(255,255,255,.42);
  border-radius: 2px;
  position: relative;
}

.educate-category-select::after {
  content: "⌄";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-54%);
  pointer-events: none;
  opacity: .55;
  font-size: 14px;
}

.educate-category-select select {
  width: 100%;
  min-height: 50px;
  padding: 0 36px 0 14px;
  border: 0;
  outline: 0;
  appearance: none;
  background: transparent;
  color: #13372f;
  font-size: 13px;
}

.educate-popular {
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  font-size: 11px;
}
.educate-popular > span { opacity: .56; margin-right: 2px; }
.educate-popular a {
  color: #13372f;
  text-decoration: none;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(19,55,47,.06);
}
.educate-popular a:hover { background: rgba(19,55,47,.1); }
.educate-result-count { margin: 12px 0 0; min-height: 18px; color: rgba(19,55,47,.56); font-size: 11px; }

/* Advanced calculator controls remain collapsed until requested. */
.calculator-advanced {
  margin-top: 14px;
  border: 1px solid rgba(19,55,47,.14);
  border-radius: 14px;
  background: rgba(19,55,47,.025);
  overflow: hidden;
}

.calculator-advanced > summary {
  list-style: none;
  min-height: 54px;
  padding: 0 16px;
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  color: #13372f;
}
.calculator-advanced > summary::-webkit-details-marker { display: none; }
.calculator-advanced > summary > span { font-size: 12px; font-weight: 620; letter-spacing: .015em; }
.calculator-advanced > summary > small { font-size: 10px; color: rgba(19,55,47,.55); }
.calculator-advanced > summary > i { font-style: normal; font-size: 18px; font-weight: 300; transition: transform .2s ease; }
.calculator-advanced[open] > summary > i { transform: rotate(45deg); }
.calculator-advanced[open] > summary { border-bottom: 1px solid rgba(19,55,47,.11); }

.calculator-advanced__grid {
  padding: 14px;
  margin: 0;
}

.calculator-advanced__grid label { background: rgba(255,255,255,.52); }

.calculator-select-label { position: relative; }
.calculator-select {
  width: 100%;
  min-height: 44px;
  margin-top: 6px;
  padding: 0 34px 0 0;
  border: 0;
  border-bottom: 1px solid rgba(19,55,47,.18);
  outline: 0;
  appearance: none;
  background: transparent;
  color: #13372f;
  font-size: 15px;
  font-weight: 520;
}
.calculator-select-label::after {
  content: "⌄";
  position: absolute;
  right: 15px;
  top: 46px;
  pointer-events: none;
  opacity: .55;
}

.calculator-result__advanced {
  display: none !important;
  margin-top: 0 !important;
  border-top: 0 !important;
}
.has-advanced-open .calculator-result__advanced {
  display: grid !important;
}
.calculator-result__advanced > div { min-width: 0; }
.calculator-result__advanced dd { overflow-wrap: anywhere; }

/* Keep all five mobile calculator tabs equal, compact and clearly separated. */
@media (max-width: 720px) {
  .tool-tabs {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows: 54px !important;
    gap: 6px !important;
    align-items: stretch !important;
  }
  .tool-tabs button,
  .tool-tabs button:nth-child(5),
  .tool-tabs button[aria-selected="true"],
  .tool-tabs button:nth-child(5)[aria-selected="true"] {
    grid-column: auto !important;
    width: 100% !important;
    height: 54px !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 4px !important;
    align-self: stretch !important;
    border: 1px solid rgba(247, 243, 232, .20) !important;
    border-radius: 11px !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .tool-tabs button[aria-selected="true"],
  .tool-tabs button:nth-child(5)[aria-selected="true"] {
    border-color: rgba(83, 214, 139, .72) !important;
    background: rgba(83, 214, 139, .12) !important;
    box-shadow: inset 0 0 0 1px rgba(83, 214, 139, .08) !important;
  }
  .tool-tabs button strong { line-height: 1.1; }
  .tool-tabs button small { line-height: 1.2; }

  .calculator-advanced > summary {
    min-height: 58px;
    padding: 0 14px;
    grid-template-columns: minmax(0,1fr) auto;
  }
  .calculator-advanced > summary > small { display: none; }
  .calculator-advanced__grid { grid-template-columns: 1fr !important; padding: 10px; gap: 8px; }
  .calculator-select { font-size: 14px; }
}

@media (max-width: 980px) {
  .educate-path-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .educate-path-grid article:nth-child(2) { border-right: 0; }
  .educate-path-grid article:nth-child(-n+2) { border-bottom: 1px solid rgba(19,55,47,.16); }
}

@media (max-width: 760px) {
  .educate-paths__intro { grid-template-columns: 1fr; gap: 26px; }
  .educate-paths__intro h2 { font-size: clamp(34px, 9.2vw, 43px); line-height: 1.04; }
  .educate-path-grid { grid-template-columns: 1fr; }
  .educate-path-grid article,
  .educate-path-grid article:nth-child(2) {
    min-height: 220px;
    border-right: 0;
    border-bottom: 1px solid rgba(19,55,47,.16);
  }
  .educate-path-grid article:last-child { border-bottom: 0; }
  .educate-path-grid h3 { margin-top: 30px; }
  .educate-glossary-toolbar { grid-template-columns: 1fr; }
  /* On phones the compact category selector replaces the long category rail. */
  .educate-category-nav { display: none; }
  .educate-glossary__groups { margin-top: 38px; }
  .educate-glossary-group { margin-bottom: 48px; }
}

/* ================================================================
   v3.20.0 — streamlined Education Hub + XIRR calculator
   ================================================================ */

/* The Hub now follows one simple path: topics → glossary → calculators. */
.educate-hero-search {
  margin-top: 18px;
  width: min(620px, 100%);
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  border: 1px solid rgba(247,243,232,.24);
  background: rgba(255,255,255,.06);
  border-radius: 12px;
  overflow: hidden;
}
.educate-hero-search label {
  min-height: 54px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 16px;
}
.educate-hero-search label > i { font-style: normal; color: rgba(247,243,232,.6); }
.educate-hero-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: #f7f3e8;
  font: inherit;
  font-size: 14px;
}
.educate-hero-search input::placeholder { color: rgba(247,243,232,.52); }
.educate-hero-search button {
  min-width: 94px;
  border: 0;
  border-left: 1px solid rgba(247,243,232,.18);
  background: rgba(247,243,232,.1);
  color: #f7f3e8;
  font: inherit;
  font-size: 12px;
  font-weight: 620;
  cursor: pointer;
}
.educate-hero-search button:hover { background: rgba(247,243,232,.16); }

.educate-paths { scroll-margin-top: 90px; }
.educate-path-grid article { min-height: 270px; }
.educate-path-grid h3 { max-width: 230px; }

/* The select replaces the old long category rail; one navigation system is clearer. */
.educate-glossary__groups { margin-top: 44px; }
.educate-term > div { display: grid; gap: 12px; }
.educate-term__guide {
  width: fit-content;
  color: #7e6329;
  text-decoration: none;
  font-size: 12px;
  font-weight: 620;
}
.educate-term__guide:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Related calculators stay useful without becoming another large dark feature section. */
.educate-tools.educate-tools--compact {
  background: #ece8dc;
  color: #13372f;
}
.educate-tools--compact .section-index { color: #13372f; }
.educate-tools__compact-head {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(260px,.7fr);
  gap: clamp(34px,6vw,90px);
  align-items: end;
}
.educate-tools__compact-head h2 {
  margin: 8px 0 0;
  font-family: var(--sans);
  font-size: clamp(34px,4.4vw,58px);
  line-height: 1.02;
  letter-spacing: -.04em;
  font-weight: 520;
}
.educate-tools__compact-head > p {
  margin: 0;
  color: rgba(19,55,47,.68);
  line-height: 1.65;
  font-size: 14px;
}
.educate-tools--compact .educate-tool-links {
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-color: rgba(19,55,47,.16);
}
.educate-tools--compact .educate-tool-links a {
  min-height: 136px;
  color: #13372f;
  border-color: rgba(19,55,47,.16);
}
.educate-tools--compact .educate-tool-links a:nth-child(3n) { border-right: 0; }
.educate-tools--compact .educate-tool-links a:nth-child(-n+3) { border-bottom: 1px solid rgba(19,55,47,.16); }
.educate-tools--compact .educate-tool-links span { color: rgba(19,55,47,.58); }
.educate-tools--compact .educate-tool-links a:hover strong { color: #7e6329; }

/* XIRR: advanced enough for real dated cash flows, but still calm and readable. */
.xirr-cashflow-head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 14px;
}
.xirr-cashflow-head strong { display: block; font-size: 14px; font-weight: 650; }
.xirr-cashflow-head small { display: block; margin-top: 4px; color: rgba(19,55,47,.58); font-size: 11px; }
.xirr-add-row {
  min-height: 38px;
  padding: 0 13px;
  border: 1px solid rgba(19,55,47,.18);
  border-radius: 999px;
  background: transparent;
  color: #13372f;
  font: inherit;
  font-size: 11px;
  font-weight: 620;
  cursor: pointer;
}
.xirr-add-row:hover { background: rgba(19,55,47,.05); }
.xirr-cashflows { display: grid; gap: 9px; }
.xirr-row {
  display: grid;
  grid-template-columns: minmax(145px,.85fr) minmax(150px,1fr) minmax(160px,.9fr) 38px;
  gap: 8px;
  align-items: stretch;
}
.xirr-row > label {
  min-width: 0;
  margin: 0;
  background: rgba(255,255,255,.55);
}
.xirr-row input[type="date"] { width: 100%; min-width: 0; }
.xirr-remove-row {
  align-self: stretch;
  border: 1px solid rgba(19,55,47,.14);
  border-radius: 12px;
  background: rgba(19,55,47,.025);
  color: rgba(19,55,47,.66);
  font: inherit;
  font-size: 20px;
  cursor: pointer;
}
.xirr-remove-row:hover:not(:disabled) { background: rgba(19,55,47,.07); }
.xirr-remove-row:disabled { opacity: .28; cursor: not-allowed; }
.xirr-helper { margin: 12px 0 0; color: rgba(19,55,47,.6); font-size: 11px; line-height: 1.5; }
.xirr-form .calculator-select-label::after { top: 45px; }

@media (max-width: 760px) {
  .educate-hero-search { grid-template-columns: minmax(0,1fr) 82px; border-radius: 10px; }
  .educate-hero-search label { min-height: 52px; padding: 0 13px; }
  .educate-hero-search button { min-width: 82px; }
  .educate-path-grid article { min-height: 190px; }
  .educate-path-grid h3 { max-width: none; }
  .educate-tools__compact-head { grid-template-columns: 1fr; gap: 18px; }
  .educate-tools--compact .educate-tool-links { grid-template-columns: 1fr; }
  .educate-tools--compact .educate-tool-links a,
  .educate-tools--compact .educate-tool-links a:nth-child(3n) {
    min-height: 104px;
    border-right: 0;
    border-bottom: 1px solid rgba(19,55,47,.16);
  }
  .educate-tools--compact .educate-tool-links a:last-child { border-bottom: 0; }
  .xirr-cashflow-head { align-items: flex-start; flex-direction: column; gap: 10px; }
  .xirr-row {
    grid-template-columns: 1fr 1fr;
    padding: 10px;
    border: 1px solid rgba(19,55,47,.13);
    border-radius: 14px;
    background: rgba(19,55,47,.02);
  }
  .xirr-row > label:nth-child(3) { grid-column: 1 / -1; }
  .xirr-remove-row { grid-column: 1 / -1; min-height: 36px; }
}

/* ================================================================
   v3.22.0 — mobile learning/calculator polish
   ================================================================ */
@media (max-width: 720px) {
  /* Education, guide, calculator and trust heroes use the same compact app rhythm. */
  .educate-hero,
  .guide-hero,
  .calculator-page-hero,
  .trust-hero {
    min-height: 0 !important;
    height: auto !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 96px 18px 42px !important;
  }

  .educate-hero h1,
  .guide-hero h1,
  .calculator-page-hero h1,
  .trust-hero h1 {
    margin: 14px 0 18px !important;
    font-size: clamp(39px, 10.8vw, 47px) !important;
    line-height: 1.01 !important;
  }

  .educate-hero__copy > p:last-of-type,
  .guide-hero__copy > p:last-of-type,
  .calculator-page-hero__copy > p:last-of-type {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .educate-hero__index,
  .calculator-page-hero__stamp {
    display: none !important;
  }

  .guide-hero__formula {
    margin-top: 2px;
    padding-top: 16px !important;
  }

  .educate-hero-search {
    margin-top: 16px !important;
    grid-template-columns: minmax(0, 1fr) 78px !important;
    border-radius: 12px !important;
  }

  .educate-hero-search label {
    min-height: 50px !important;
  }

  .educate-primer,
  .educate-paths,
  .educate-glossary,
  .educate-tools,
  .calculator-page-section,
  .calculator-faq,
  .calculator-related,
  .guide-content,
  .trust-content {
    padding-right: 18px !important;
    padding-left: 18px !important;
  }

  .educate-paths,
  .educate-glossary,
  .educate-tools,
  .calculator-page-section,
  .calculator-faq,
  .calculator-related,
  .nivata-seo-support {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .educate-paths__intro,
  .educate-glossary__intro,
  .educate-tools__compact-head,
  .calculator-page-section__intro,
  .calculator-faq__intro,
  .calculator-related,
  .nivata-seo-support__intro {
    gap: 18px !important;
  }

  .educate-path-grid {
    margin-top: 30px !important;
    gap: 10px !important;
    border: 0 !important;
  }

  .educate-path-grid article,
  .educate-path-grid article:nth-child(2) {
    min-height: 154px !important;
    padding: 20px !important;
    border: 1px solid rgba(19,55,47,.13) !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.36);
  }

  .educate-path-grid h3 {
    margin: 20px 0 8px !important;
    font-size: 20px !important;
  }

  .educate-path-grid p {
    font-size: 12.5px !important;
    line-height: 1.5 !important;
  }

  .educate-path-grid nav {
    padding-top: 14px !important;
  }

  .educate-glossary-toolbar {
    margin-top: 18px !important;
    gap: 8px !important;
  }

  .educate-search,
  .educate-category-select {
    min-height: 50px !important;
    border-radius: 12px !important;
  }

  .educate-popular {
    margin-top: 10px !important;
    gap: 6px !important;
  }

  .educate-glossary__groups {
    margin-top: 30px !important;
  }

  .educate-glossary-group {
    margin-bottom: 34px !important;
  }

  .educate-glossary-group > header {
    grid-template-columns: 34px 1fr auto !important;
    gap: 12px !important;
    padding-bottom: 12px !important;
  }

  .educate-term summary {
    min-height: 60px !important;
    padding: 14px 4px 14px 0 !important;
  }

  .educate-term summary strong {
    font-size: 15.5px !important;
  }

  .educate-tools--compact .educate-tool-links a,
  .educate-tools--compact .educate-tool-links a:nth-child(3n) {
    min-height: 84px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  .single-calculator-shell {
    gap: 12px !important;
  }

  .calculator-page-section__intro {
    margin-bottom: 26px !important;
  }

  /* XIRR cards: guaranteed containment at phone widths. */
  .xirr-cashflow-head {
    margin-bottom: 12px !important;
    gap: 8px !important;
  }

  .xirr-add-row {
    width: 100%;
    min-height: 42px !important;
    border-radius: 12px !important;
  }

  .xirr-cashflows {
    gap: 10px !important;
  }

  .xirr-row {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 9px !important;
    padding: 12px !important;
    border: 1px solid rgba(19,55,47,.13) !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,.48) !important;
    overflow: hidden;
  }

  .xirr-row > label {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-width: 0 !important;
    box-sizing: border-box;
    padding: 10px 10px 9px !important;
    border: 1px solid rgba(19,55,47,.1);
    border-radius: 11px;
    background: #fbfaf6 !important;
    overflow: hidden;
  }

  .xirr-row > label:nth-child(3) {
    grid-column: 1 / -1 !important;
  }

  .xirr-row label > span {
    display: block;
    margin-bottom: 5px;
    font-size: 11px !important;
    font-weight: 650;
    line-height: 1.25;
    color: rgba(19,55,47,.68);
  }

  .xirr-row input,
  .xirr-row select {
    display: block;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(19,55,47,.15) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #13372f !important;
    font-family: var(--sans) !important;
    font-size: 16px !important;
  }

  .xirr-row label > i {
    position: absolute;
    left: 11px;
    bottom: 17px;
    z-index: 1;
    font-style: normal;
    color: #2d8f68;
    pointer-events: none;
  }

  .xirr-row label > i + input {
    padding-left: 22px !important;
  }

  .xirr-row .calculator-select-label::after {
    right: 12px !important;
    top: auto !important;
    bottom: 18px !important;
  }

  .xirr-remove-row {
    grid-column: 1 / -1 !important;
    min-height: 38px !important;
    border-radius: 11px !important;
    font-size: 0 !important;
  }

  .xirr-remove-row::before {
    content: "Remove cash flow";
    font-size: 11px;
    font-weight: 620;
  }

  .xirr-helper {
    margin-top: 10px !important;
  }

  .xirr-form .calculator-actions {
    margin-top: 14px !important;
  }

  .guide-section {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
  }

  .guide-section__body > p {
    font-size: 15px !important;
    line-height: 1.62 !important;
  }

  .nivata-seo-support__grid {
    margin-top: 26px !important;
    gap: 8px;
    border: 0 !important;
  }

  .nivata-seo-support__grid article {
    min-height: 0 !important;
    padding: 18px !important;
    border: 1px solid rgba(19,55,47,.12) !important;
    border-radius: 14px !important;
  }
}

@media (max-width: 390px) {
  .xirr-row {
    grid-template-columns: 1fr !important;
  }
  .xirr-row > label:nth-child(3),
  .xirr-remove-row {
    grid-column: 1 !important;
  }
}

/* ================================================================
   v3.24.0 — compact learning/trust/calculator mobile rhythm
   Aligns every managed inner page with the tighter app-like page system.
   ================================================================ */
@media (max-width: 720px) {
  .educate-hero,
  .guide-hero,
  .calculator-page-hero,
  .trust-hero {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    gap: 16px !important;
    padding: 44px 18px 34px !important;
  }

  .educate-hero h1,
  .guide-hero h1,
  .calculator-page-hero h1,
  .trust-hero h1 {
    margin: 10px 0 14px !important;
    font-size: clamp(38px, 10.5vw, 46px) !important;
    line-height: 1.01 !important;
  }

  .educate-hero__copy > p:last-of-type,
  .guide-hero__copy > p:last-of-type,
  .calculator-page-hero__copy > p:last-of-type,
  .trust-hero__copy > p:last-child {
    margin-bottom: 0 !important;
    font-size: 14.5px !important;
    line-height: 1.52 !important;
  }

  .educate-hero-search {
    margin-top: 14px !important;
  }

  .educate-primer,
  .educate-paths,
  .educate-glossary,
  .educate-tools,
  .calculator-page-section,
  .calculator-faq,
  .calculator-related,
  .guide-section,
  .guide-faq,
  .guide-related,
  .trust-content,
  .nivata-seo-support {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .educate-paths,
  .educate-glossary,
  .educate-tools,
  .calculator-page-section,
  .calculator-faq,
  .calculator-related,
  .nivata-seo-support {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .educate-path-grid {
    margin-top: 20px !important;
  }

  .educate-glossary__groups {
    margin-top: 22px !important;
  }

  .calculator-page-section__intro {
    margin-bottom: 20px !important;
  }

  .guide-section {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
  }

  /* XIRR uses a single-column cash-flow card on phones. It is clearer and
     completely removes the possibility of date/amount fields overflowing. */
  .xirr-row {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 10px !important;
  }
  .xirr-row > label,
  .xirr-row > label:nth-child(3),
  .xirr-remove-row {
    grid-column: 1 !important;
  }
  .xirr-row > label {
    padding: 9px 10px 8px !important;
  }
  .xirr-row input,
  .xirr-row select {
    height: 36px !important;
    font-size: 16px !important;
  }
  .xirr-row label > i {
    bottom: 15px !important;
  }
  .xirr-row .calculator-select-label::after {
    bottom: 16px !important;
  }
  .xirr-remove-row {
    min-height: 36px !important;
  }
}

/* v3.24.0 — contextual Education Hub link */
.inline-education-link {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}
.inline-education-link:hover,
.inline-education-link:focus-visible {
  color: var(--nw-green, #218c63);
}

/* v3.24.4 — mobile calculator tabs + guide heading crop fix */
@media (max-width: 760px) {
  .nivata-tools-page .tool-tabs {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(92px, 1fr) !important;
    gap: 8px !important;
    padding: 10px !important;
    overflow-x: auto !important;
    overscroll-behavior-x: contain;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .nivata-tools-page .tool-tabs::-webkit-scrollbar {
    display: none;
  }

  .nivata-tools-page .tool-tabs button,
  .nivata-tools-page .tool-tabs button:nth-child(5),
  .nivata-tools-page .tool-tabs button[aria-selected="true"],
  .nivata-tools-page .tool-tabs button:nth-child(5)[aria-selected="true"] {
    min-width: 92px !important;
    width: 92px !important;
    height: 118px !important;
    min-height: 118px !important;
    padding: 11px 8px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    text-align: left !important;
    border-width: 1.2px !important;
    border-radius: 16px !important;
    scroll-snap-align: start;
  }

  .nivata-tools-page .tool-tabs button > span {
    display: block !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: .12em !important;
    color: rgba(247, 243, 232, .46) !important;
  }

  .nivata-tools-page .tool-tabs button strong {
    display: block !important;
    margin: auto 0 0 !important;
    font-size: 15px !important;
    line-height: 1.04 !important;
    font-weight: 650 !important;
    text-align: left !important;
    white-space: normal !important;
    text-wrap: balance;
  }

  .nivata-tools-page .tool-tabs button small {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-size: 9px !important;
    line-height: 1.18 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .nivata-tools-page .tool-tabs button::before {
    right: 12px !important;
    left: 12px !important;
    bottom: 7px !important;
  }

  .guide-section--dark {
    overflow: visible !important;
  }

  .guide-section--dark .guide-section__body {
    padding-left: 4px !important;
    padding-right: 2px !important;
  }

  .guide-section--dark .guide-section__body h2 {
    max-width: 9ch !important;
    font-size: clamp(31px, 8.8vw, 39px) !important;
    line-height: 1.07 !important;
    letter-spacing: -.03em !important;
    overflow: visible !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 420px) {
  .nivata-tools-page .tool-tabs {
    grid-auto-columns: 90px !important;
  }

  .nivata-tools-page .tool-tabs button,
  .nivata-tools-page .tool-tabs button:nth-child(5),
  .nivata-tools-page .tool-tabs button[aria-selected="true"],
  .nivata-tools-page .tool-tabs button:nth-child(5)[aria-selected="true"] {
    min-width: 90px !important;
    width: 90px !important;
    height: 116px !important;
    min-height: 116px !important;
  }

  .nivata-tools-page .tool-tabs button strong {
    font-size: 14px !important;
  }

  .nivata-tools-page .tool-tabs button small {
    font-size: 8.6px !important;
  }

  .guide-section--dark .guide-section__body h2 {
    max-width: 8.8ch !important;
    font-size: clamp(29px, 8.4vw, 36px) !important;
  }
}

/* v3.24.5 — phone guide alignment + tall tab-shaped calculator selector */
@media (max-width: 760px) {
  /* The guide-content wrapper uses 18px mobile gutters, so the dark section
     must bleed by exactly the same amount. The older 28px bleed pushed the
     whole section off the left edge on phones. */
  .nivata-finance-guide-page .guide-section--dark {
    margin-left: -18px !important;
    margin-right: -18px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .nivata-finance-guide-page .guide-section--dark .guide-section__label,
  .nivata-finance-guide-page .guide-section--dark .guide-section__body {
    min-width: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    transform: none !important;
  }

  .nivata-finance-guide-page .guide-section--dark .guide-section__body h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    color: #f7f3e8 !important;
    font-size: clamp(31px, 9.1vw, 39px) !important;
    line-height: 1.06 !important;
    letter-spacing: -.03em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .nivata-finance-guide-page .guide-section--dark .guide-section__body h2 em {
    color: #dbc27e !important;
  }

  /* Five equal, tall tab shapes inspired by page-marker sticky notes while
     staying inside Nivata's dark-green visual system. */
  .nivata-tools-page .tool-tabs {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows: 132px !important;
    gap: 7px !important;
    padding: 9px !important;
    overflow: visible !important;
    background: #0b332c !important;
  }

  .nivata-tools-page .tool-tabs button,
  .nivata-tools-page .tool-tabs button:nth-child(5),
  .nivata-tools-page .tool-tabs button[aria-selected="true"],
  .nivata-tools-page .tool-tabs button:nth-child(5)[aria-selected="true"] {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 132px !important;
    min-height: 132px !important;
    margin: 0 !important;
    padding: 11px 7px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 6px !important;
    text-align: left !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.025) !important;
    box-shadow: inset 0 0 0 1px rgba(232,239,235,.20) !important;
    clip-path: none !important;
    transform: none !important;
    overflow: hidden !important;
  }

  .nivata-tools-page .tool-tabs button::after {
    content: none !important;
    display: none !important;
  }

  .nivata-tools-page .tool-tabs button::before {
    content: '' !important;
    position: absolute !important;
    left: 8px !important;
    right: 8px !important;
    bottom: 7px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: rgba(247,243,232,.18) !important;
  }

  .nivata-tools-page .tool-tabs button[aria-selected="true"] {
    background: rgba(83,214,139,.13) !important;
    box-shadow:
      inset 0 0 0 1.5px rgba(83,214,139,.78),
      0 7px 15px rgba(0,0,0,.14) !important;
  }

  .nivata-tools-page .tool-tabs button[aria-selected="true"]::before {
    background: #54d88e !important;
  }

  .nivata-tools-page .tool-tabs button > span {
    display: block !important;
    margin: 0 !important;
    color: rgba(247,243,232,.48) !important;
    font-size: 9px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    letter-spacing: .11em !important;
  }

  .nivata-tools-page .tool-tabs button strong {
    display: block !important;
    width: 100% !important;
    margin: auto 0 0 !important;
    color: rgba(247,243,232,.92) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
    letter-spacing: -.015em !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .nivata-tools-page .tool-tabs button small {
    display: block !important;
    width: 100% !important;
    min-height: 31px !important;
    margin: 0 0 5px !important;
    color: rgba(247,243,232,.52) !important;
    font-size: 7.4px !important;
    font-weight: 650 !important;
    line-height: 1.18 !important;
    letter-spacing: .01em !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  .nivata-tools-page .tool-tabs button[aria-selected="true"] strong,
  .nivata-tools-page .tool-tabs button[aria-selected="true"] small,
  .nivata-tools-page .tool-tabs button[aria-selected="true"] > span {
    color: #74dfa1 !important;
  }
}

@media (max-width: 420px) {
  .nivata-tools-page .tool-tabs {
    grid-template-rows: 126px !important;
    gap: 6px !important;
    padding: 8px !important;
  }

  .nivata-tools-page .tool-tabs button,
  .nivata-tools-page .tool-tabs button:nth-child(5),
  .nivata-tools-page .tool-tabs button[aria-selected="true"],
  .nivata-tools-page .tool-tabs button:nth-child(5)[aria-selected="true"] {
    height: 126px !important;
    min-height: 126px !important;
    padding: 10px 6px 11px !important;
  }

  .nivata-tools-page .tool-tabs button strong {
    font-size: 12px !important;
  }

  .nivata-tools-page .tool-tabs button small {
    font-size: 7px !important;
  }
}

/* ================================================================
   v3.24.8 — desktop Tools parity + finance-guide desktop correction
   Desktop now uses the same clean calculator language as phone, with the
   selector intentionally retained as a left-hand rail.
   ================================================================ */
@media (min-width: 761px) {
  body.nivata-tools-page .tools-dedicated-links,
  body.nivata-tools-page .tools-section__intro {
    display: none !important;
  }

  body.nivata-tools-page .tools-section {
    padding-top: clamp(52px, 5vw, 76px) !important;
  }

  body.nivata-tools-page .calculator-workspace {
    width: min(1180px, 100%) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 208px minmax(0, 1fr) !important;
    align-items: stretch !important;
    overflow: hidden !important;
    border: 1px solid rgba(19,55,47,.14) !important;
    border-radius: 18px !important;
    background: #fffdf7 !important;
    box-shadow: 0 20px 64px rgba(8,44,36,.08) !important;
  }

  body.nivata-tools-page .tool-tabs {
    box-sizing: border-box !important;
    width: 208px !important;
    min-width: 208px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 12px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    overflow: visible !important;
    background: #0b332c !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  body.nivata-tools-page .tool-tabs button,
  body.nivata-tools-page .tool-tabs button:nth-child(5),
  body.nivata-tools-page .tool-tabs button[aria-selected="true"],
  body.nivata-tools-page .tool-tabs button:nth-child(5)[aria-selected="true"] {
    position: relative !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 88px !important;
    min-height: 88px !important;
    margin: 0 !important;
    padding: 13px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 7px !important;
    text-align: left !important;
    border: 1px solid rgba(247,243,232,.18) !important;
    border-radius: 13px !important;
    background: rgba(255,255,255,.018) !important;
    box-shadow: none !important;
    transform: none !important;
    clip-path: none !important;
    overflow: hidden !important;
  }

  body.nivata-tools-page .tool-tabs button[aria-selected="true"] {
    border-color: rgba(83,214,139,.72) !important;
    background: rgba(83,214,139,.12) !important;
    box-shadow: inset 0 0 0 1px rgba(83,214,139,.08) !important;
  }

  body.nivata-tools-page .tool-tabs button::after { content: none !important; display: none !important; }
  body.nivata-tools-page .tool-tabs button::before {
    content: '' !important;
    position: absolute !important;
    left: 13px !important;
    right: 13px !important;
    bottom: 7px !important;
    height: 2px !important;
    border-radius: 99px !important;
    background: rgba(247,243,232,.16) !important;
  }
  body.nivata-tools-page .tool-tabs button[aria-selected="true"]::before { background: #54d88e !important; }

  body.nivata-tools-page .tool-tabs button > span { display: none !important; }
  body.nivata-tools-page .tool-label-full { display: none !important; }
  body.nivata-tools-page .tool-label-mobile { display: inline !important; }
  body.nivata-tools-page .tool-tabs button strong {
    width: 100% !important;
    margin: 0 !important;
    color: rgba(247,243,232,.84) !important;
    font-size: 14px !important;
    font-weight: 650 !important;
    line-height: 1 !important;
    letter-spacing: -.01em !important;
    white-space: nowrap !important;
  }
  body.nivata-tools-page .tool-tabs button small {
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    color: rgba(247,243,232,.48) !important;
    font-size: 9px !important;
    font-weight: 600 !important;
    line-height: 1.25 !important;
    letter-spacing: .01em !important;
    text-align: left !important;
  }
  body.nivata-tools-page .tool-tabs button[aria-selected="true"] strong,
  body.nivata-tools-page .tool-tabs button[aria-selected="true"] small { color: #74dfa1 !important; }

  body.nivata-tools-page .tool-panels {
    min-width: 0 !important;
    width: 100% !important;
    background: #fffdf7 !important;
  }
  body.nivata-tools-page .tool-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: clamp(30px, 3.3vw, 48px) !important;
    border-radius: 0 !important;
  }
  body.nivata-tools-page .tool-panel__heading {
    width: 100% !important;
    max-width: 760px !important;
    margin: 0 0 26px !important;
  }
  body.nivata-tools-page .tool-panel__heading h3 {
    max-width: 760px !important;
    margin-top: 8px !important;
    font-size: clamp(34px, 3.1vw, 46px) !important;
    line-height: 1.04 !important;
    letter-spacing: -.035em !important;
  }
  body.nivata-tools-page .tool-panel__heading > p:last-child {
    max-width: 720px !important;
    margin-top: 13px !important;
    font-size: 14.5px !important;
    line-height: 1.58 !important;
  }

  body.nivata-tools-page .tool-panel__body,
  body.nivata-tools-page .tool-panel__body.xirr-tool-embedded {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 820px !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: start !important;
  }
  body.nivata-tools-page .calculator-form,
  body.nivata-tools-page .calculator-result {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
  body.nivata-tools-page .field-grid,
  body.nivata-tools-page .field-grid--two,
  body.nivata-tools-page .field-grid--retirement,
  body.nivata-tools-page .calculator-advanced__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  body.nivata-tools-page .field-grid label {
    box-sizing: border-box !important;
    min-width: 0 !important;
    padding: 14px 15px 12px !important;
    overflow: hidden !important;
    border-radius: 12px !important;
  }
  body.nivata-tools-page .field-grid input,
  body.nivata-tools-page .calculator-form input,
  body.nivata-tools-page .calculator-form select {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  body.nivata-tools-page .calculator-actions {
    width: 100% !important;
    display: flex !important;
    align-items: stretch !important;
    gap: 9px !important;
  }
  body.nivata-tools-page .calculator-actions .button,
  body.nivata-tools-page .calculator-actions .reset-button {
    min-height: 50px !important;
    border-radius: 12px !important;
  }
  body.nivata-tools-page .calculator-result {
    padding: 24px 24px 22px !important;
    border-radius: 16px !important;
  }
  body.nivata-tools-page .xirr-row {
    min-width: 0 !important;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) minmax(150px,.8fr) 38px !important;
    gap: 9px !important;
  }
}

/* Desktop guide heading must match the corrected phone treatment: the words
   Legacy contrast note retained for the earlier hero treatment. */
@media (min-width: 761px) {
  body.nivata-finance-guide-page .guide-section--dark {
    box-sizing: border-box !important;
    overflow: hidden !important;
  }
  body.nivata-finance-guide-page .guide-section--dark .guide-section__body {
    width: 100% !important;
    max-width: 850px !important;
    min-width: 0 !important;
  }
  body.nivata-finance-guide-page .guide-section--dark .guide-section__body h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 10px 0 0 !important;
    color: #f7f3e8 !important;
    font-size: clamp(42px, 5.4vw, 76px) !important;
    font-weight: 520 !important;
    line-height: .98 !important;
    letter-spacing: -.045em !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
  body.nivata-finance-guide-page .guide-section--dark .guide-section__body h2 em {
    color: #dbc27e !important;
    font-style: italic !important;
    font-weight: 420 !important;
  }
}

/* ================================================================
   v3.24.9 — unified calculator workspace + definitive desktop XIRR
   ================================================================ */
.guide-context-heading > span {
  color: #f7f3e8 !important;
  -webkit-text-fill-color: #f7f3e8 !important;
}
.guide-context-heading > em {
  color: #dbc27e !important;
  -webkit-text-fill-color: #dbc27e !important;
}

.calculator-unified-workspace {
  box-sizing: border-box;
  width: 100%;
  max-width: 1280px;
  margin: 44px auto 0;
  border: 1px solid rgba(19,55,47,.14);
  border-radius: 20px;
  overflow: hidden;
  background: #fffdf7;
  box-shadow: 0 24px 70px rgba(8,44,36,.08);
}
.calculator-tool-rail { box-sizing: border-box; }
.calculator-tool-rail__item {
  box-sizing: border-box;
  color: inherit;
  text-decoration: none;
}
.calculator-tool-rail__item span,
.calculator-tool-rail__item strong,
.calculator-tool-rail__item small { display: block; }

@media (min-width: 761px) {
  body.nivata-calculator-page .calculator-page-section {
    overflow: hidden;
  }
  body.nivata-calculator-page .calculator-unified-workspace {
    display: grid !important;
    grid-template-columns: 212px minmax(0,1fr) !important;
    align-items: stretch !important;
  }
  body.nivata-calculator-page .calculator-tool-rail {
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    min-width: 0 !important;
    padding: 12px !important;
    background: #0b332c !important;
    border-right: 1px solid rgba(247,243,232,.10) !important;
  }
  body.nivata-calculator-page .calculator-tool-rail__item {
    position: relative;
    min-height: 78px;
    display: grid;
    align-content: center;
    gap: 3px;
    padding: 12px 12px 11px;
    border: 1px solid rgba(247,243,232,.10);
    border-radius: 13px;
    background: rgba(247,243,232,.025);
    transition: background .18s ease, border-color .18s ease, transform .18s ease;
  }
  body.nivata-calculator-page .calculator-tool-rail__item:hover {
    background: rgba(247,243,232,.06);
    border-color: rgba(247,243,232,.18);
    transform: translateX(2px);
  }
  body.nivata-calculator-page .calculator-tool-rail__item.is-current {
    background: rgba(84,216,142,.09);
    border-color: rgba(84,216,142,.55);
  }
  body.nivata-calculator-page .calculator-tool-rail__item.is-current::after {
    content: "";
    position: absolute;
    left: 12px;
    right: 12px;
    bottom: 7px;
    height: 2px;
    border-radius: 10px;
    background: #54d88e;
  }
  body.nivata-calculator-page .calculator-tool-rail__item > span {
    color: rgba(247,243,232,.45);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
  }
  body.nivata-calculator-page .calculator-tool-rail__item > strong {
    color: rgba(247,243,232,.88);
    font-size: 13px;
    font-weight: 650;
    line-height: 1.15;
    letter-spacing: -.01em;
  }
  body.nivata-calculator-page .calculator-tool-rail__item > small {
    color: rgba(247,243,232,.45);
    font-size: 9px;
    line-height: 1.25;
  }
  body.nivata-calculator-page .calculator-tool-rail__item.is-current > span,
  body.nivata-calculator-page .calculator-tool-rail__item.is-current > strong,
  body.nivata-calculator-page .calculator-tool-rail__item.is-current > small {
    color: #75e0a2;
  }

  /* The generic Tools page and dedicated calculator pages share body classes.
     Reset the dedicated page here so its form cannot inherit the old landing-
     page widths/columns. */
  body.nivata-calculator-page .single-calculator-shell {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 0 !important;
    align-items: stretch !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #fffdf7 !important;
    overflow: hidden !important;
  }
  body.nivata-calculator-page .single-calculator-shell .calculator-page-form {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: clamp(28px,3.1vw,44px) !important;
    background: #fffdf7 !important;
  }
  body.nivata-calculator-page .single-calculator-shell .calculator-page-result {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: clamp(28px,3vw,42px) !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #0e372f !important;
    color: #f7f3e8 !important;
  }
  body.nivata-calculator-page .calculator-page-form .field-grid,
  body.nivata-calculator-page .calculator-page-form .field-grid--two,
  body.nivata-calculator-page .calculator-page-form .field-grid--retirement,
  body.nivata-calculator-page .calculator-page-form .calculator-advanced__grid {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 10px !important;
  }
  body.nivata-calculator-page .calculator-page-form .field-grid > label {
    box-sizing: border-box !important;
    min-width: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
  }
  body.nivata-calculator-page .calculator-page-form input,
  body.nivata-calculator-page .calculator-page-form select {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
  body.nivata-calculator-page .calculator-actions {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: stretch !important;
    gap: 9px !important;
  }

  /* XIRR deliberately uses the same contained cash-flow card structure as
     the phone. Each cash flow is vertically readable rather than squeezed
     into four desktop columns. */
  body.nivata-calculator-xirr .single-calculator-shell {
    grid-template-columns: minmax(0,1fr) !important;
  }
  body.nivata-calculator-xirr .xirr-cashflow-head {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 13px !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 16px !important;
  }
  body.nivata-calculator-xirr .xirr-add-row {
    flex: 0 0 auto !important;
    min-height: 42px !important;
    padding: 0 15px !important;
    border-radius: 12px !important;
  }
  body.nivata-calculator-xirr .xirr-cashflows {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.nivata-calculator-xirr .xirr-row {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 12px !important;
    border: 1px solid rgba(19,55,47,.13) !important;
    border-radius: 15px !important;
    background: rgba(19,55,47,.022) !important;
    overflow: hidden !important;
  }
  body.nivata-calculator-xirr .xirr-row > label,
  body.nivata-calculator-xirr .xirr-row > label:nth-child(3) {
    position: relative !important;
    grid-column: 1 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 10px 11px 9px !important;
    border: 1px solid rgba(19,55,47,.10) !important;
    border-radius: 11px !important;
    background: #fbfaf6 !important;
    overflow: hidden !important;
  }
  body.nivata-calculator-xirr .xirr-row label > span {
    display: block !important;
    margin: 0 0 5px !important;
    color: rgba(19,55,47,.68) !important;
    font-size: 11px !important;
    font-weight: 650 !important;
    line-height: 1.25 !important;
  }
  body.nivata-calculator-xirr .xirr-row input,
  body.nivata-calculator-xirr .xirr-row select {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(19,55,47,.15) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #13372f !important;
    font-family: var(--sans) !important;
    font-size: 16px !important;
    line-height: 38px !important;
  }
  body.nivata-calculator-xirr .xirr-row label > i {
    position: absolute !important;
    left: 11px !important;
    bottom: 17px !important;
    z-index: 1 !important;
    color: #2d8f68 !important;
    font-style: normal !important;
    pointer-events: none !important;
  }
  body.nivata-calculator-xirr .xirr-row label > i + input {
    padding-left: 22px !important;
  }
  body.nivata-calculator-xirr .xirr-row .calculator-select-label::after {
    top: auto !important;
    right: 12px !important;
    bottom: 18px !important;
  }
  body.nivata-calculator-xirr .xirr-remove-row {
    grid-column: 1 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 38px !important;
    border-radius: 11px !important;
    font-size: 0 !important;
  }
  body.nivata-calculator-xirr .xirr-remove-row::before {
    content: "Remove cash flow";
    font-size: 11px;
    font-weight: 650;
  }
  body.nivata-calculator-xirr .xirr-helper {
    margin-top: 13px !important;
  }
}

/* The main Tools workspace uses the same vertical form rhythm as phone on
   desktop; only the selector rail stays on the left. */
@media (min-width: 761px) {
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-panel__body,
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-panel__body.xirr-tool-embedded {
    grid-template-columns: minmax(0,1fr) !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .field-grid,
  body.nivata-tools-page:not(.nivata-calculator-page) .field-grid--two,
  body.nivata-tools-page:not(.nivata-calculator-page) .field-grid--retirement,
  body.nivata-tools-page:not(.nivata-calculator-page) .calculator-advanced__grid {
    grid-template-columns: minmax(0,1fr) !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 8px !important;
    padding: 12px !important;
    border: 1px solid rgba(19,55,47,.13) !important;
    border-radius: 15px !important;
    background: rgba(19,55,47,.022) !important;
    overflow: hidden !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label:nth-child(3) {
    grid-column: 1 !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 10px 11px 9px !important;
    border: 1px solid rgba(19,55,47,.10) !important;
    border-radius: 11px !important;
    background: #fbfaf6 !important;
    overflow: hidden !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-remove-row {
    grid-column: 1 !important;
    min-height: 38px !important;
    border-radius: 11px !important;
    font-size: 0 !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-remove-row::before {
    content: "Remove cash flow";
    font-size: 11px;
    font-weight: 650;
  }
}

@media (max-width: 760px) {
  body.nivata-calculator-page .calculator-unified-workspace {
    margin-top: 22px !important;
    display: block !important;
    border-radius: 17px !important;
  }
  body.nivata-calculator-page .calculator-tool-rail {
    display: grid !important;
    grid-auto-flow: column !important;
    grid-auto-columns: minmax(92px,1fr) !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 7px !important;
    overflow-x: auto !important;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
    background: #0b332c !important;
  }
  body.nivata-calculator-page .calculator-tool-rail::-webkit-scrollbar { display: none; }
  body.nivata-calculator-page .calculator-tool-rail__item {
    min-height: 68px !important;
    display: grid !important;
    align-content: center !important;
    gap: 2px !important;
    padding: 9px !important;
    border: 1px solid rgba(247,243,232,.10) !important;
    border-radius: 11px !important;
    background: rgba(247,243,232,.025) !important;
  }
  body.nivata-calculator-page .calculator-tool-rail__item.is-current {
    border-color: rgba(84,216,142,.55) !important;
    background: rgba(84,216,142,.09) !important;
  }
  body.nivata-calculator-page .calculator-tool-rail__item span { color: rgba(247,243,232,.42) !important; font-size: 8px !important; font-weight: 700 !important; }
  body.nivata-calculator-page .calculator-tool-rail__item strong { color: rgba(247,243,232,.88) !important; font-size: 11px !important; line-height: 1.1 !important; }
  body.nivata-calculator-page .calculator-tool-rail__item small { display: none !important; }
  body.nivata-calculator-page .calculator-tool-rail__item.is-current span,
  body.nivata-calculator-page .calculator-tool-rail__item.is-current strong { color: #75e0a2 !important; }
  body.nivata-calculator-page .single-calculator-shell {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }
  body.nivata-calculator-page .single-calculator-shell .calculator-page-form,
  body.nivata-calculator-page .single-calculator-shell .calculator-page-result {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }
}


/* v3.24.11 — unified XIRR field cards + easy date picker ------------------ */
body.nivata-calculator-xirr .xirr-row > label,
body.nivata-calculator-xirr .xirr-row > label:nth-child(3),
body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label,
body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label:nth-child(3) {
  background: var(--ivory-100, #fbf8f1) !important;
  border-color: rgba(18,59,50,.15) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}
body.nivata-calculator-xirr .xirr-row > label:focus-within,
body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label:focus-within {
  background: #fffdf8 !important;
  border-color: #299f62 !important;
  box-shadow: 0 8px 22px rgba(13,48,40,.075) !important;
}
.xirr-date-control {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
}
.xirr-date-control > input[type="date"] {
  min-width: 0 !important;
  padding-right: 4px !important;
}
.xirr-date-control > input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0;
  width: 0;
  margin: 0;
  padding: 0;
}
.xirr-date-trigger {
  min-height: 34px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid rgba(18,59,50,.16);
  border-radius: 9px;
  background: rgba(18,59,50,.065);
  color: #123b32;
  font: inherit;
  cursor: pointer;
  white-space: nowrap;
}
.xirr-date-trigger:hover,
.xirr-date-trigger:focus-visible {
  border-color: rgba(41,159,98,.62);
  background: rgba(41,159,98,.10);
  outline: 0;
}
.xirr-date-trigger > span { font-size: 15px; line-height: 1; }
.xirr-date-trigger > b { font-size: 10px; font-weight: 750; letter-spacing: .03em; }
@media (max-width: 520px) {
  .xirr-date-trigger { padding-inline: 9px; }
  .xirr-date-trigger > b { display: none; }
}


/* ================================================================
   v3.24.12 — definitive desktop XIRR + guide contrast
   ================================================================ */
/* Force the education dark-section heading colours at the element level so
   no inherited text-fill rule can darken the preceding hero copy on desktop. */
body.nivata-finance-guide-page h2.guide-context-heading > span {
  display: inline !important;
  color: #f7f3e8 !important;
  -webkit-text-fill-color: #f7f3e8 !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}
body.nivata-finance-guide-page h2.guide-context-heading > em {
  color: #dbc27e !important;
  -webkit-text-fill-color: #dbc27e !important;
  opacity: 1 !important;
}

/* XIRR now uses the same visual language as the standard field-grid inputs:
   ivory field cards, transparent controls, no browser-white inner boxes. */
body.nivata-calculator-xirr .xirr-row > label,
body.nivata-tools-page .xirr-row > label {
  background: var(--ivory-100, #f4efe3) !important;
  border: 1px solid rgba(18,59,50,.15) !important;
  box-shadow: none !important;
}
body.nivata-calculator-xirr .xirr-row input,
body.nivata-calculator-xirr .xirr-row select,
body.nivata-tools-page .xirr-row input,
body.nivata-tools-page .xirr-row select {
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  color: var(--forest-950, #123b32) !important;
  -webkit-box-shadow: none !important;
}
body.nivata-calculator-xirr .xirr-row input:-webkit-autofill,
body.nivata-tools-page .xirr-row input:-webkit-autofill {
  -webkit-text-fill-color: var(--forest-950, #123b32) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--ivory-100, #f4efe3) inset !important;
}

.xirr-date-control {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
}
.xirr-date-control > input[type="date"] {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
.xirr-date-control > input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}
.xirr-date-trigger {
  box-sizing: border-box !important;
  min-height: 38px !important;
  padding: 0 11px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  border: 1px solid rgba(18,59,50,.14) !important;
  border-radius: 9px !important;
  background: rgba(18,59,50,.055) !important;
  color: #123b32 !important;
  box-shadow: none !important;
  font-family: var(--sans) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.xirr-date-trigger:hover,
.xirr-date-trigger:focus-visible {
  border-color: rgba(41,159,98,.58) !important;
  background: rgba(41,159,98,.10) !important;
  outline: 0 !important;
}
.xirr-date-trigger > span { font-size: 16px !important; line-height: 1 !important; }
.xirr-date-trigger > b { font-size: 10px !important; font-weight: 750 !important; letter-spacing: .02em !important; }

@media (min-width: 761px) {
  /* On desktop each cash flow is a single compact row — Date, Amount, Type,
     Remove — rather than a phone-sized vertical stack. This matches the
     density and alignment of the other desktop calculators. */
  body.nivata-calculator-xirr .xirr-cashflows,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-cashflows {
    gap: 10px !important;
  }
  body.nivata-calculator-xirr .xirr-row,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row {
    display: grid !important;
    grid-template-columns: minmax(190px,.95fr) minmax(180px,.9fr) minmax(210px,1fr) 46px !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 10px !important;
    border: 1px solid rgba(18,59,50,.11) !important;
    border-radius: 14px !important;
    background: rgba(18,59,50,.018) !important;
    overflow: visible !important;
  }
  body.nivata-calculator-xirr .xirr-row > label,
  body.nivata-calculator-xirr .xirr-row > label:nth-child(3),
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row > label:nth-child(3) {
    grid-column: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 13px 14px 11px !important;
    border-radius: 12px !important;
    overflow: visible !important;
  }
  body.nivata-calculator-xirr .xirr-row label > span,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row label > span {
    min-height: 18px !important;
    margin: 0 0 5px !important;
    color: #5f6f68 !important;
    font-size: 10px !important;
    font-weight: 750 !important;
    letter-spacing: .10em !important;
    line-height: 1.35 !important;
    text-transform: uppercase !important;
  }
  body.nivata-calculator-xirr .xirr-row input,
  body.nivata-calculator-xirr .xirr-row select,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row input,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row select {
    height: 40px !important;
    line-height: 40px !important;
    font-family: var(--serif) !important;
    font-size: clamp(19px,1.45vw,24px) !important;
  }
  body.nivata-calculator-xirr .xirr-row label > i,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row label > i {
    left: 14px !important;
    bottom: 19px !important;
    font-size: 20px !important;
  }
  body.nivata-calculator-xirr .xirr-row label > i + input,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row label > i + input {
    padding-left: 19px !important;
  }
  body.nivata-calculator-xirr .xirr-row .calculator-select-label::after,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-row .calculator-select-label::after {
    right: 14px !important;
    bottom: 22px !important;
    top: auto !important;
  }
  body.nivata-calculator-xirr .xirr-remove-row,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-remove-row {
    grid-column: auto !important;
    width: 46px !important;
    min-width: 46px !important;
    min-height: 100% !important;
    border-radius: 12px !important;
    font-size: 22px !important;
  }
  body.nivata-calculator-xirr .xirr-remove-row::before,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-remove-row::before {
    content: none !important;
  }
  body.nivata-calculator-xirr .xirr-date-trigger > b,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-date-trigger > b {
    display: none !important;
  }
  body.nivata-calculator-xirr .xirr-date-trigger,
  body.nivata-tools-page:not(.nivata-calculator-page) .xirr-date-trigger {
    width: 38px !important;
    min-width: 38px !important;
    padding: 0 !important;
  }
}

@media (max-width: 760px) {
  body.nivata-calculator-xirr .xirr-row > label,
  body.nivata-tools-page .xirr-row > label {
    background: var(--ivory-100, #f4efe3) !important;
  }
  .xirr-date-trigger { min-width: 40px !important; }
}


/* v3.24.13 — guarantee a proper Indian rupee glyph in XIRR amount prefixes. */
body.nivata-calculator-xirr .xirr-row label > i,
body.nivata-tools-page .xirr-row label > i {
  font-family: Arial, "Noto Sans", "Segoe UI Symbol", sans-serif !important;
  font-style: normal !important;
  font-variant-numeric: tabular-nums;
  line-height: 1 !important;
}

/* ================================================================
   v3.24.29 — Education Hub learning system + crawlable guide library
   ================================================================ */

.educate-journeys {
  margin-top: clamp(42px, 6vw, 74px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid rgba(19,55,47,.16);
}
.educate-journey-card {
  min-width: 0;
  padding: 32px clamp(22px, 3vw, 42px) 38px 0;
  border-bottom: 1px solid rgba(19,55,47,.16);
}
.educate-journey-card:nth-child(odd) { border-right: 1px solid rgba(19,55,47,.16); }
.educate-journey-card:nth-child(even) { padding-left: clamp(22px, 3vw, 42px); padding-right: 0; }
.educate-journey-card header { display: flex; justify-content: space-between; gap: 18px; align-items: center; }
.educate-journey-card header span { font-size: 10px; letter-spacing: .14em; opacity: .5; }
.educate-journey-card header small { padding: 6px 9px; border: 1px solid rgba(19,55,47,.14); border-radius: 999px; color: rgba(19,55,47,.65); font-size: 10px; }
.educate-journey-card h3 { margin: 34px 0 12px; font-size: clamp(26px, 3vw, 38px); letter-spacing: -.035em; line-height: 1.05; font-weight: 560; }
.educate-journey-card > p { max-width: 610px; margin: 0; color: rgba(19,55,47,.7); font-size: 14px; line-height: 1.65; }
.educate-journey-card ol { margin: 28px 0 0; padding: 0; list-style: none; border-top: 1px solid rgba(19,55,47,.12); counter-reset: journey-step; }
.educate-journey-card li { counter-increment: journey-step; }
.educate-journey-card li a { min-height: 48px; display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; border-bottom: 1px solid rgba(19,55,47,.12); color: inherit; text-decoration: none; font-size: 13px; }
.educate-journey-card li a span::before { content: counter(journey-step, decimal-leading-zero) "  "; margin-right: 10px; color: rgba(19,55,47,.42); font-size: 9px; letter-spacing: .1em; }
.educate-journey-card li a i { font-style: normal; opacity: .45; }
.educate-journey-card li a:hover { color: #7e6329; }

.educate-flagship {
  background: #0e372f;
  color: #f7f3e8;
}
.educate-flagship .section-index { color: #f7f3e8; }
.educate-flagship__grid { display: grid; grid-template-columns: minmax(0, .92fr) minmax(380px, 1.08fr); gap: clamp(48px, 8vw, 128px); align-items: start; }
.educate-flagship__copy h2 { margin: 10px 0 24px; font-size: clamp(42px, 5vw, 72px); line-height: .98; letter-spacing: -.046em; font-weight: 520; }
.educate-flagship__copy h2 em { color: #dbc27e; font-style: normal; font-weight: inherit; }
.educate-flagship__copy > p { max-width: 680px; color: rgba(247,243,232,.72); font-size: 16px; line-height: 1.7; }
.educate-flagship__actions { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 18px 24px; align-items: center; }
.educate-flagship .line-link { color: #f7f3e8; }
.educate-framework { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(247,243,232,.18); }
.educate-framework li { min-height: 58px; display: grid; grid-template-columns: 50px 1fr; align-items: center; border-bottom: 1px solid rgba(247,243,232,.16); color: rgba(247,243,232,.82); font-size: 14px; }
.educate-framework li span { color: #dbc27e; font-size: 10px; letter-spacing: .13em; }

.educate-library { background: #f6f4ed; color: #13372f; scroll-margin-top: 90px; }
.educate-library__intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr); gap: clamp(38px, 7vw, 112px); align-items: start; }
.educate-library__intro h2 { margin: 10px 0 0; font-size: clamp(38px, 5vw, 68px); line-height: 1.01; letter-spacing: -.046em; font-weight: 520; }
.educate-library__intro h2 em { color: #9a7b35; font-style: normal; font-weight: inherit; }
.educate-library__intro > p { margin: 0; color: rgba(19,55,47,.7); font-size: 15px; line-height: 1.72; }
.educate-library__groups { margin-top: clamp(48px, 7vw, 86px); }
.educate-library-group { margin-bottom: clamp(56px, 7vw, 82px); scroll-margin-top: 100px; }
.educate-library-group > header { display: grid; grid-template-columns: 44px 1fr auto; gap: 18px; align-items: baseline; padding-bottom: 18px; border-bottom: 1px solid rgba(19,55,47,.18); }
.educate-library-group > header span { font-size: 10px; letter-spacing: .13em; opacity: .48; }
.educate-library-group > header h3 { margin: 0; font-size: clamp(26px, 3vw, 38px); letter-spacing: -.03em; font-weight: 560; }
.educate-library-group > header small { color: rgba(19,55,47,.55); font-size: 11px; }
.educate-library-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.educate-library-grid a { position: relative; min-height: 220px; padding: 26px 50px 28px 0; border-bottom: 1px solid rgba(19,55,47,.13); border-right: 1px solid rgba(19,55,47,.13); color: inherit; text-decoration: none; }
.educate-library-grid a:nth-child(3n+2), .educate-library-grid a:nth-child(3n+3) { padding-left: 28px; }
.educate-library-grid a:nth-child(3n) { border-right: 0; }
.educate-library-grid a > span { display: inline-block; padding: 5px 8px; border-radius: 999px; background: rgba(19,55,47,.05); color: rgba(19,55,47,.6); font-size: 9px; letter-spacing: .06em; text-transform: uppercase; }
.educate-library-grid a > strong { display: block; margin-top: 26px; font-size: 20px; line-height: 1.15; font-weight: 600; }
.educate-library-grid a > p { margin: 11px 0 0; max-width: 440px; color: rgba(19,55,47,.66); font-size: 12px; line-height: 1.58; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.educate-library-grid a > i { position: absolute; top: 26px; right: 22px; font-style: normal; opacity: .45; }
.educate-library-grid a:hover > strong { color: #7e6329; }

.guide-breadcrumb { position: relative; z-index: 2; padding: 94px clamp(28px, 7vw, 112px) 0; margin-bottom: -115px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; color: rgba(247,243,232,.62); font-size: 11px; background: #082c24; }
.guide-breadcrumb a { color: inherit; text-decoration: none; }
.guide-breadcrumb a:hover { color: #dbc27e; }
.guide-breadcrumb strong { color: rgba(247,243,232,.82); font-weight: 520; }
.guide-hero__actions { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px 24px; }
.guide-jump { position: sticky; top: 0; z-index: 18; min-height: 54px; display: flex; align-items: center; gap: 0; padding: 0 clamp(28px, 7vw, 112px); overflow-x: auto; scrollbar-width: none; background: rgba(246,244,237,.96); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(19,55,47,.13); }
.guide-jump::-webkit-scrollbar { display: none; }
.guide-jump span, .guide-jump a { flex: 0 0 auto; padding: 0 16px; min-height: 54px; display: inline-flex; align-items: center; border-right: 1px solid rgba(19,55,47,.11); font-size: 11px; color: rgba(19,55,47,.68); text-decoration: none; }
.guide-jump span { padding-left: 0; color: #13372f; font-weight: 650; text-transform: uppercase; letter-spacing: .08em; }
.guide-jump a:hover { color: #7e6329; }
.guide-content [id] { scroll-margin-top: 74px; }
.guide-context-heading span { color: #f7f3e8; -webkit-text-fill-color: #f7f3e8; }
.guide-context-heading em { color: #dbc27e; -webkit-text-fill-color: #dbc27e; }
.guide-practice { margin: clamp(60px, 7vw, 96px) 0 0; padding: clamp(34px, 4vw, 52px); display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 40px; align-items: end; background: #e9e4d7; border: 1px solid rgba(19,55,47,.1); }
.guide-practice h2 { margin: 8px 0 16px; font-size: clamp(34px, 4.2vw, 56px); line-height: 1.02; letter-spacing: -.04em; font-weight: 520; }
.guide-practice h2 em { color: #9a7b35; font-style: normal; }
.guide-practice p { max-width: 690px; margin: 0; color: rgba(19,55,47,.7); line-height: 1.68; font-size: 14px; }
.educate-note a { color: inherit; text-underline-offset: 3px; }

@media (max-width: 1020px) {
  .educate-library-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .educate-library-grid a, .educate-library-grid a:nth-child(3n+2), .educate-library-grid a:nth-child(3n+3) { padding-left: 24px; padding-right: 46px; border-right: 1px solid rgba(19,55,47,.13); }
  .educate-library-grid a:nth-child(2n) { border-right: 0; }
  .educate-flagship__grid { grid-template-columns: 1fr; }
  .educate-framework { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .educate-framework li:nth-child(odd) { border-right: 1px solid rgba(247,243,232,.16); }
}

@media (max-width: 760px) {
  .educate-journeys { grid-template-columns: 1fr; }
  .educate-journey-card,
  .educate-journey-card:nth-child(odd),
  .educate-journey-card:nth-child(even) { padding: 28px 0 32px; border-right: 0; }
  .educate-journey-card h3 { margin-top: 28px; }
  .educate-flagship__grid,
  .educate-library__intro { grid-template-columns: 1fr; gap: 28px; }
  .educate-flagship__copy h2,
  .educate-library__intro h2 { font-size: clamp(34px,9.2vw,43px); line-height:1.04; }
  .educate-framework { grid-template-columns: 1fr; }
  .educate-framework li:nth-child(odd) { border-right: 0; }
  .educate-library-grid { grid-template-columns: 1fr; }
  .educate-library-grid a,
  .educate-library-grid a:nth-child(3n+2),
  .educate-library-grid a:nth-child(3n+3),
  .educate-library-grid a:nth-child(2n) { min-height: 168px; padding: 22px 42px 24px 0; border-right: 0; }
  .educate-library-grid a > strong { margin-top: 20px; font-size: 19px; }
  .educate-library-grid a > p { -webkit-line-clamp: 2; }
  .educate-library-group > header { grid-template-columns: 32px 1fr; gap: 10px; }
  .educate-library-group > header small { grid-column: 2; }
  .guide-breadcrumb { padding: 84px 22px 14px; margin-bottom: -104px; white-space: nowrap; overflow-x: auto; }
  .guide-jump { padding: 0 22px; top: 0; }
  .guide-jump span, .guide-jump a { min-height: 50px; padding: 0 12px; }
  .guide-practice { grid-template-columns: 1fr; align-items: start; gap: 26px; padding: 28px 22px; }
  .guide-practice .button { width: fit-content; }
}

/* v3.24.30 — Education Academy depth and level-first learning */
.education-modal-open { overflow: hidden; }
.education-level-modal[hidden] { display: none !important; }
.education-level-modal { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 20px; }
.education-level-modal__backdrop { position: absolute; inset: 0; background: rgba(10,18,16,.76); backdrop-filter: blur(9px); }
.education-level-dialog { position: relative; width: min(900px, 100%); max-height: min(760px, calc(100vh - 40px)); overflow: auto; background: #fbfaf6; color: #12231f; border-radius: 28px; padding: clamp(28px,5vw,54px); box-shadow: 0 32px 90px rgba(0,0,0,.3); }
.education-level-dialog h2 { max-width: 680px; margin: 10px 0 12px; font-size: clamp(36px,5vw,62px); line-height: .98; letter-spacing: -.045em; }
.education-level-dialog > p:not(.overline) { max-width: 700px; margin: 0 0 28px; color: #55615d; font-size: 17px; line-height: 1.65; }
.education-level-options { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.education-level-options button { appearance: none; text-align: left; border: 1px solid #d8ddd8; background: #fff; border-radius: 18px; padding: 22px; color: #12231f; cursor: pointer; min-height: 190px; transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.education-level-options button:hover,.education-level-options button:focus-visible { transform: translateY(-3px); border-color: #5a756c; box-shadow: 0 12px 30px rgba(25,51,43,.1); outline: none; }
.education-level-options strong { display: block; font-size: 22px; margin-bottom: 12px; }
.education-level-options span { display: block; font-size: 15px; line-height: 1.55; }
.education-level-options small { display: block; margin-top: 18px; color: #687670; font-size: 12px; line-height: 1.45; }
.education-level-all { margin-top: 18px; appearance: none; border: 0; background: transparent; color: #365d50; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; font: inherit; }

.educate-hero--academy .educate-hero__copy { max-width: 850px; }
.educate-hero--academy .educate-hero__stats { align-self: end; }
.education-preference-bar { position: sticky; top: 0; z-index: 40; display: flex; justify-content: space-between; align-items: center; gap: 18px; width: min(1180px,calc(100% - 44px)); margin: 18px auto 0; padding: 12px 16px; background: rgba(251,250,246,.94); border: 1px solid rgba(18,35,31,.14); border-radius: 14px; backdrop-filter: blur(14px); }
.education-preference-bar[hidden] { display: none !important; }
.education-preference-bar div { display: flex; gap: 10px; align-items: baseline; }
.education-preference-bar span { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: #6c7773; }
.education-preference-bar strong { font-size: 15px; }
.education-preference-bar button { border: 0; background: none; padding: 6px 2px; font-weight: 700; color: #365d50; cursor: pointer; }
.education-section-head { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(280px,.65fr); gap: 48px; align-items: end; margin-bottom: 46px; }
.education-section-head h2 { margin: 5px 0 0; font-size: clamp(38px,5.2vw,68px); line-height: 1; letter-spacing: -.045em; }
.education-section-head > p { margin: 0; color: #69736f; font-size: 16px; line-height: 1.7; }
.education-level-track-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; align-items: start; }
.education-level-track { border: 1px solid rgba(18,35,31,.16); border-radius: 22px; background: #fff; overflow: hidden; transition: opacity .2s ease, transform .2s ease, box-shadow .2s ease; }
.education-level-track.is-recommended { order: -1; transform: translateY(-5px); box-shadow: 0 20px 48px rgba(18,35,31,.10); border-color: #5d756e; }
.education-level-track.is-secondary { opacity: .76; }
.education-level-track > header { padding: 26px 24px 22px; border-bottom: 1px solid rgba(18,35,31,.12); min-height: 200px; }
.education-level-track > header > span { display: inline-flex; border: 1px solid rgba(18,35,31,.16); border-radius: 99px; padding: 6px 9px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.education-level-track h3 { margin: 22px 0 9px; font-size: 27px; line-height: 1.08; }
.education-level-track p { margin: 0; color: #66716d; font-size: 14px; line-height: 1.6; }
.education-level-track ol { list-style: none; margin: 0; padding: 0; }
.education-level-track li + li { border-top: 1px solid rgba(18,35,31,.09); }
.education-level-track a { display: grid; grid-template-columns: 28px 1fr auto; grid-template-areas: 'num title icon' 'num meta icon'; gap: 3px 10px; align-items: center; padding: 14px 18px; color: inherit; text-decoration: none; }
.education-level-track a:hover strong { color: #285849; }
.education-level-track a > span { grid-area: num; color: #8a9490; font-size: 11px; }
.education-level-track a > strong { grid-area: title; font-size: 14px; }
.education-level-track a > small { grid-area: meta; color: #7c8581; font-size: 11px; }
.education-level-track a > i { grid-area: icon; font-style: normal; }
.education-flagship { display: grid; grid-template-columns: minmax(0,1fr) minmax(320px,.8fr); gap: clamp(36px,8vw,100px); align-items: center; background: #12231f; color: #f6f2e8; }
.education-flagship__copy h2 { margin: 8px 0 18px; color: #f6f2e8 !important; font-size: clamp(42px,5.5vw,72px); line-height: .98; letter-spacing: -.045em; }
.education-flagship__copy h2 em { color: #54df92 !important; font-family: Georgia,serif; font-weight: 400; }
.education-flagship__copy > p:not(.overline) { max-width: 680px; color: rgba(246,242,232,.72); line-height: 1.75; font-size: 16px; }
.education-flagship__copy .button { margin-top: 20px; }
.education-flagship__steps { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(246,242,232,.24); }
.education-flagship__steps span { min-height: 72px; display: flex; align-items: center; padding: 14px 16px; border-bottom: 1px solid rgba(246,242,232,.16); color: rgba(246,242,232,.9); font-size: 13px; }
.education-flagship__steps span:nth-child(odd) { border-right: 1px solid rgba(246,242,232,.16); }
.education-guide-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 36px; }
.education-guide-filters button { appearance: none; border: 1px solid rgba(18,35,31,.18); background: transparent; border-radius: 999px; padding: 9px 14px; color: #31403b; cursor: pointer; font-weight: 700; font-size: 13px; }
.education-guide-filters button.is-active { background: #12231f; color: #fff; border-color: #12231f; }
.education-guide-group[hidden],.education-guide-card[hidden] { display: none !important; }
.education-guide-group { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 34px; padding: 34px 0; border-top: 1px solid rgba(18,35,31,.14); }
.education-guide-group > header { display: flex; gap: 14px; align-items: flex-start; }
.education-guide-group > header > span { color: #89928f; font-size: 11px; padding-top: 5px; }
.education-guide-group h3 { margin: 0 0 5px; font-size: 20px; line-height: 1.15; }
.education-guide-group header small { color: #828b88; }
.education-guide-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.education-guide-card { min-height: 235px; display: flex; flex-direction: column; padding: 20px; border: 1px solid rgba(18,35,31,.12); border-radius: 16px; color: inherit; text-decoration: none; background: #fff; }
.education-guide-card:hover { border-color: #5e766e; transform: translateY(-2px); }
.education-guide-card > div { display: flex; justify-content: space-between; gap: 10px; }
.education-guide-card > div span,.education-guide-card > div small { font-size: 10px; text-transform: uppercase; letter-spacing: .07em; color: #66736e; }
.education-guide-card > div small { color: #416c5d; font-weight: 800; }
.education-guide-card h4 { margin: 23px 0 9px; font-size: 22px; line-height: 1.1; }
.education-guide-card p { margin: 0; color: #69736f; font-size: 13px; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.education-guide-card > strong { margin-top: auto; padding-top: 18px; font-size: 12px; }
.education-guide-card > strong i { font-style: normal; margin-left: 5px; }
.education-guide-empty { padding: 24px; background: #f4f2ec; border-radius: 14px; }

/* Deep guide typography and long-form reading */
.guide-hero--deep .guide-hero__copy h1 { max-width: 920px; font-size: clamp(48px,7vw,92px); line-height: .94; }
.guide-meta-line { display: flex; flex-wrap: wrap; gap: 9px 18px; margin-top: 22px; color: rgba(255,255,255,.66); font-size: 12px; }
.guide-meta-line span + span::before { content: '•'; margin-right: 18px; }
.guide-jump--deep { overflow-x: auto; white-space: nowrap; }
.guide-content--deep { max-width: 1180px; margin: 0 auto; }
.guide-editorial-intro { max-width: 850px; padding: 24px 0 62px; }
.guide-editorial-intro h2,.guide-longform-heading h2,.guide-two-column h2,.guide-checklist-card h2 { margin: 8px 0 18px; font-size: clamp(38px,5vw,62px); line-height: 1; letter-spacing: -.04em; }
.guide-editorial-intro .guide-lead { color: #1c2b27; font-size: clamp(20px,2.4vw,27px); line-height: 1.5; }
.guide-editorial-intro > p:last-child { color: #65706c; line-height: 1.8; font-size: 16px; }
.guide-takeaways { display: grid; grid-template-columns: minmax(240px,.65fr) minmax(0,1fr); gap: 55px; padding: 42px; margin-bottom: 70px; background: #edf1ed; border-radius: 22px; }
.guide-takeaways h2 { margin: 7px 0 0; font-size: 34px; line-height: 1.04; }
.guide-takeaways ul { list-style: none; margin: 0; padding: 0; }
.guide-takeaways li { position: relative; padding: 0 0 17px 24px; line-height: 1.65; }
.guide-takeaways li::before { content: '→'; position: absolute; left: 0; color: #416c5d; }
.guide-longform-heading { max-width: 850px; margin: 0 0 36px; }
.guide-longform-heading > p:last-child { max-width: 720px; color: #65706c; line-height: 1.75; }
.guide-essay-section { display: grid; grid-template-columns: 70px minmax(0,760px); justify-content: center; gap: 26px; padding: 44px 0; border-top: 1px solid rgba(18,35,31,.14); }
.guide-essay-section__index { color: #87918d; font-size: 12px; padding-top: 8px; }
.guide-essay-section h3 { margin: 0 0 18px; font-size: clamp(28px,3.2vw,40px); line-height: 1.08; letter-spacing: -.025em; }
.guide-essay-section p { margin: 0 0 16px; color: #3e4a46; font-size: 17px; line-height: 1.82; }
.guide-steps { margin: 80px 0; padding-top: 72px; border-top: 2px solid #12231f; }
.guide-step-list { list-style: none; margin: 0; padding: 0; }
.guide-step-card { display: grid; grid-template-columns: 86px minmax(0,1fr); gap: 30px; padding: 40px 0; border-top: 1px solid rgba(18,35,31,.14); }
.guide-step-card__number { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 50%; background: #12231f; color: #f6f2e8; font-size: 13px; }
.guide-step-card__body { max-width: 820px; }
.guide-step-card h3 { margin: 0 0 15px; font-size: clamp(27px,3vw,38px); line-height: 1.12; }
.guide-step-card__body > p { margin: 0; font-size: 17px; line-height: 1.82; color: #3e4a46; }
.guide-research-questions { margin-top: 24px; padding: 20px 22px; border-left: 3px solid #56766b; background: #f2f3ee; }
.guide-research-questions strong { display: block; margin-bottom: 9px; font-size: 12px; text-transform: uppercase; letter-spacing: .08em; }
.guide-research-questions ul { margin: 0; padding-left: 18px; }
.guide-research-questions li { margin: 7px 0; line-height: 1.55; }
.guide-section--example .guide-section__body h2,.guide-section--dark .guide-section__body h2 { font-size: clamp(36px,4.2vw,56px); }
.guide-two-column { display: grid; grid-template-columns: minmax(240px,.75fr) minmax(0,1fr); gap: 60px; margin: 78px 0; }
.guide-numbered-list { counter-reset: guideMistakes; list-style: none; margin: 0; padding: 0; }
.guide-numbered-list li { counter-increment: guideMistakes; position: relative; padding: 18px 0 18px 50px; border-top: 1px solid rgba(18,35,31,.14); font-size: 16px; line-height: 1.65; }
.guide-numbered-list li::before { content: counter(guideMistakes, decimal-leading-zero); position: absolute; left: 0; color: #81908b; font-size: 11px; }
.guide-checklist-card { display: grid; grid-template-columns: minmax(240px,.75fr) minmax(0,1fr); gap: 60px; padding: 42px; margin: 64px 0; border-radius: 22px; background: #12231f; color: #f6f2e8; }
.guide-checklist-card ul { list-style: none; padding: 0; margin: 0; }
.guide-checklist-card li { display: grid; grid-template-columns: 22px 1fr; gap: 10px; padding: 12px 0; border-bottom: 1px solid rgba(246,242,232,.14); line-height: 1.55; }
.guide-checklist-card li span { color: #9dc0b4; }
.guide-source-note { margin-top: 20px !important; padding-top: 18px; border-top: 1px solid currentColor; opacity: .78; font-size: 14px !important; line-height: 1.65 !important; }
.guide-faq h2 { max-width: 780px; }

@media (max-width: 900px) {
  .education-level-options,.education-level-track-grid { grid-template-columns: 1fr; }
  .education-level-track > header { min-height: 0; }
  .education-section-head,.education-flagship,.education-guide-group,.guide-takeaways,.guide-two-column,.guide-checklist-card { grid-template-columns: 1fr; gap: 24px; }
  .education-guide-grid { grid-template-columns: 1fr 1fr; }
  .education-level-track.is-recommended { order: -1; }
  .education-level-track.is-secondary { opacity: 1; }
}
@media (max-width: 700px) {
  .education-level-modal { padding: 10px; align-items: end; }
  .education-level-dialog { max-height: calc(100vh - 20px); border-radius: 24px 24px 12px 12px; padding: 26px 20px; }
  .education-level-dialog h2 { font-size: 37px; }
  .education-level-options button { min-height: 0; padding: 18px; }
  .education-level-options small { margin-top: 8px; }
  .education-preference-bar { width: calc(100% - 28px); margin-top: 10px; }
  .education-section-head { margin-bottom: 28px; }
  .education-section-head h2 { font-size: 39px; }
  .education-flagship { padding-left: 22px !important; padding-right: 22px !important; }
  .education-flagship__steps { grid-template-columns: 1fr; }
  .education-flagship__steps span:nth-child(odd) { border-right: 0; }
  .education-guide-grid { grid-template-columns: 1fr; }
  .education-guide-group { padding: 26px 0; }
  .education-guide-card { min-height: 210px; }
  .guide-meta-line span + span::before { display: none; }
  .guide-content--deep { padding-left: 22px !important; padding-right: 22px !important; }
  .guide-editorial-intro { padding-bottom: 44px; }
  .guide-takeaways,.guide-checklist-card { padding: 26px 22px; margin-bottom: 50px; }
  .guide-essay-section { grid-template-columns: 34px minmax(0,1fr); gap: 12px; padding: 34px 0; }
  .guide-essay-section p,.guide-step-card__body > p { font-size: 16px; line-height: 1.75; }
  .guide-step-card { grid-template-columns: 1fr; gap: 16px; padding: 32px 0; }
  .guide-step-card__number { width: 48px; height: 48px; }
  .guide-two-column { margin: 55px 0; }
  .guide-checklist-card h2,.guide-two-column h2,.guide-editorial-intro h2,.guide-longform-heading h2 { font-size: 38px; }
}

/* Mutual Fund Holdings explorer */
.mf-holdings-search-head,.mf-holdings-explain__intro,.mf-holdings-method { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.75fr); gap:54px; align-items:end; }
.mf-holdings-search-head h2,.mf-holdings-explain__intro h2,.mf-holdings-method h2,.mf-holdings-faq > h2 { margin:8px 0 0; font-size:clamp(38px,5.2vw,68px); line-height:1; letter-spacing:-.045em; }
.mf-holdings-search-head > p,.mf-holdings-explain__intro > p,.mf-holdings-method > div:last-child { color:#68736f; line-height:1.75; }
.mf-holdings-search { position:relative; max-width:920px; margin:42px 0 22px; }
.mf-holdings-search form > label { display:block; margin-bottom:9px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.mf-holdings-search__control { display:grid; grid-template-columns:minmax(0,1fr) auto; border:1px solid rgba(18,35,31,.22); border-radius:16px; overflow:hidden; background:#fff; }
.mf-holdings-search__control input { min-width:0; min-height:62px; padding:0 20px; border:0; outline:0; font:inherit; color:#12231f; background:transparent; }
.mf-holdings-search__control button { border:0; padding:0 22px; background:#12231f; color:#fff; font-weight:800; cursor:pointer; }
.mf-holdings-suggestions { position:absolute; z-index:30; left:0; right:0; top:100%; margin-top:7px; max-height:360px; overflow:auto; border:1px solid rgba(18,35,31,.15); background:#fff; border-radius:15px; box-shadow:0 18px 50px rgba(18,35,31,.15); }
.mf-holdings-suggestions[hidden] { display:none!important; }
.mf-holdings-suggestions button { width:100%; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:14px 17px; border:0; border-bottom:1px solid rgba(18,35,31,.08); background:#fff; color:#12231f; text-align:left; cursor:pointer; }
.mf-holdings-suggestions button:last-child { border-bottom:0; }
.mf-holdings-suggestions button:hover,.mf-holdings-suggestions button.is-active { background:#f0f3ef; }
.mf-holdings-suggestions strong,.mf-holdings-suggestions small { display:block; }
.mf-holdings-suggestions strong { font-size:14px; }
.mf-holdings-suggestions small { margin-top:3px; color:#737e7a; font-size:11px; }
.mf-holdings-suggestions i { font-style:normal; }
.mf-holdings-admin-note { margin:12px 0 0; padding:12px 14px; background:#fff4cf; border-radius:10px; font-size:13px; line-height:1.5; }
.mf-holdings-status { min-height:0; margin:14px 0 0; font-size:14px; }
.mf-holdings-status[hidden] { display:none; }
.mf-holdings-status[data-state="loading"] { color:#567067; }
.mf-holdings-status[data-state="error"] { color:#8d3b32; padding:14px 16px; background:#fbefed; border-radius:10px; max-width:900px; }
.mf-holdings-results { margin-top:46px; padding-top:46px; border-top:1px solid rgba(18,35,31,.17); }
.mf-holdings-results[hidden] { display:none!important; }
.mf-holdings-results__header { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:35px; align-items:end; margin-bottom:25px; }
.mf-holdings-results__header h2 { margin:6px 0 7px; font-size:clamp(32px,4.2vw,52px); line-height:1.05; }
.mf-holdings-results__header p { margin:0; color:#6d7773; line-height:1.6; }
.mf-holdings-summary { display:flex; gap:12px; }
.mf-holdings-summary > div { min-width:130px; padding:16px; background:#eef1ed; border-radius:12px; }
.mf-holdings-summary span,.mf-holdings-summary strong { display:block; }
.mf-holdings-summary span { color:#6c7773; font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.mf-holdings-summary strong { margin-top:8px; font-size:18px; }
.mf-holdings-table-wrap { overflow:auto; border:1px solid rgba(18,35,31,.12); border-radius:14px; background:#fff; }
.mf-holdings-table { width:100%; min-width:980px; border-collapse:collapse; }
.mf-holdings-table th { padding:13px 14px; background:#eef1ed; color:#5d6864; text-align:left; font-size:10px; text-transform:uppercase; letter-spacing:.065em; }
.mf-holdings-table td { padding:15px 14px; border-top:1px solid rgba(18,35,31,.08); vertical-align:top; font-size:13px; }
.mf-holdings-table td:first-child { min-width:270px; }
.mf-change.is-positive { color:#276348; font-weight:800; }
.mf-change.is-negative { color:#9a443b; font-weight:800; }
.mf-change.is-flat { color:#6e7774; }
.mf-holdings-empty-cell { padding:28px!important; color:#6b7571; }
.mf-holdings-table-note { margin:13px 0 0; color:#737c79; font-size:12px; line-height:1.6; }
.mf-holdings-explain { background:#f0f1ec; }
.mf-holdings-explain__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:46px; }
.mf-holdings-explain__grid article { padding:23px; border:1px solid rgba(18,35,31,.12); border-radius:16px; background:#fbfaf6; }
.mf-holdings-explain__grid article > span { color:#7d8984; font-size:11px; }
.mf-holdings-explain__grid h3 { margin:28px 0 10px; font-size:22px; line-height:1.1; }
.mf-holdings-explain__grid p { margin:0; color:#65706c; font-size:14px; line-height:1.68; }
.mf-holdings-method { align-items:start; border-top:1px solid rgba(18,35,31,.14); }
.mf-holdings-method p { margin:0 0 17px; }
.mf-holdings-method a { display:inline-flex; margin-top:8px; color:#345f51; font-weight:800; text-decoration:none; }
.mf-holdings-faq > h2 { max-width:850px; margin-bottom:30px; }

@media (max-width:900px) {
 .mf-holdings-search-head,.mf-holdings-explain__intro,.mf-holdings-method { grid-template-columns:1fr; gap:20px; }
 .mf-holdings-explain__grid { grid-template-columns:1fr 1fr; }
 .mf-holdings-results__header { grid-template-columns:1fr; }
}
@media (max-width:700px) {
 .mf-holdings-search__control { grid-template-columns:1fr; overflow:visible; border:0; background:transparent; gap:8px; }
 .mf-holdings-search__control input { min-height:56px; border:1px solid rgba(18,35,31,.22); border-radius:12px; background:#fff; }
 .mf-holdings-search__control button { min-height:52px; border-radius:12px; }
 .mf-holdings-suggestions { top:72px; }
 .mf-holdings-summary { width:100%; }
 .mf-holdings-summary > div { flex:1; min-width:0; }
 .mf-holdings-explain__grid { grid-template-columns:1fr; }
 .mf-holdings-table-wrap { overflow:visible; border:0; background:transparent; }
 .mf-holdings-table { min-width:0; display:block; }
 .mf-holdings-table thead { display:none; }
 .mf-holdings-table tbody,.mf-holdings-table tr,.mf-holdings-table td { display:block; width:100%; }
 .mf-holdings-table tr { margin-bottom:12px; padding:10px 14px; border:1px solid rgba(18,35,31,.12); border-radius:14px; background:#fff; }
 .mf-holdings-table td { display:grid; grid-template-columns:130px minmax(0,1fr); gap:12px; padding:8px 0; border-top:1px solid rgba(18,35,31,.07); }
 .mf-holdings-table td:first-child { min-width:0; border-top:0; grid-template-columns:1fr; padding-bottom:12px; font-size:15px; }
 .mf-holdings-table td:not(:first-child)::before { content:attr(data-label); color:#737d79; font-size:10px; text-transform:uppercase; letter-spacing:.06em; }
}

/* v3.24.30 long-form depth refinements */
.guide-practical-analysis { margin: 86px 0 24px; padding: 72px 0 10px; border-top: 2px solid #12231f; }
.guide-essay-section--practical { background: linear-gradient(90deg, rgba(239,242,237,.76), rgba(255,255,255,0)); padding-left: 22px; padding-right: 22px; border-radius: 16px; border-top-color: rgba(18,35,31,.10); }
.guide-step-evidence { margin-top: 18px; padding: 20px 22px; border: 1px solid rgba(18,35,31,.12); border-radius: 14px; background: #fff; }
.guide-step-evidence > strong,.guide-step-output > strong { display:block; margin-bottom:10px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
.guide-step-evidence ul { margin:0; padding-left:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 22px; }
.guide-step-evidence li { line-height:1.55; color:#4a5551; }
.guide-step-output { margin-top:14px; padding:18px 20px; border-radius:14px; background:#12231f; color:#f6f2e8; }
.guide-step-output p { margin:0; line-height:1.65; color:rgba(246,242,232,.84); }
.education-level-dialog .overline { color:#52665f; }
.education-level-options button strong { font-size:20px; }
.education-level-options button span { line-height:1.48; }

@media (max-width:700px){
  .guide-practical-analysis { margin-top:58px; padding-top:50px; }
  .guide-essay-section--practical { padding-left:12px; padding-right:12px; }
  .guide-step-evidence ul { grid-template-columns:1fr; gap:7px; }
}

/* ================================================================
   v3.24.31 — Education editorial cleanup + MF Holdings layout
   ================================================================ */

/* Guide hero contrast: labels must remain readable on the dark banner. */
.guide-hero--deep .guide-hero__formula > span {
  color: rgba(247,243,232,.96) !important;
  font-weight: 800;
  letter-spacing: .13em;
}
.guide-hero--deep .guide-hero__formula > small {
  color: rgba(247,243,232,.78) !important;
}

/* Mutual Fund Holdings: override the parent's narrow inner-page content width. */
body.nivata-mf-holdings-page main > .mf-holdings-explorer,
body.nivata-mf-holdings-page main > .mf-holdings-explain,
body.nivata-mf-holdings-page main > .mf-holdings-method,
body.nivata-mf-holdings-page main > .mf-holdings-faq {
  box-sizing: border-box !important;
  width: min(100%, 1600px) !important;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: clamp(28px, 4.5vw, 78px) !important;
  padding-right: clamp(28px, 4.5vw, 78px) !important;
}

body.nivata-mf-holdings-page main > .mf-holdings-explain {
  width: 100% !important;
  max-width: none !important;
  padding-left: max(clamp(28px, 4.5vw, 78px), calc((100vw - 1600px) / 2 + 78px)) !important;
  padding-right: max(clamp(28px, 4.5vw, 78px), calc((100vw - 1600px) / 2 + 78px)) !important;
}

.mf-holdings-search-head,
.mf-holdings-explain__intro,
.mf-holdings-method {
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
  gap: clamp(36px, 5vw, 86px);
}

.mf-holdings-search {
  width: 100%;
  max-width: 1180px;
  margin-top: 46px;
}
.mf-holdings-search form {
  width: 100%;
}
.mf-holdings-search__control {
  grid-template-columns: minmax(0, 1fr) minmax(180px, auto);
  min-height: 66px;
  border-radius: 18px;
  box-shadow: 0 10px 32px rgba(18,35,31,.055);
}
.mf-holdings-search__control input {
  min-height: 64px;
  font-size: 16px;
}
.mf-holdings-search__control button {
  min-width: 190px;
  padding: 0 28px;
  white-space: nowrap;
  font-size: 13px;
  letter-spacing: .01em;
}

.mf-holdings-results {
  width: 100%;
  margin-top: 52px;
}
.mf-holdings-results__header {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 48px;
}
.mf-holdings-table-wrap {
  width: 100%;
  box-shadow: 0 14px 42px rgba(18,35,31,.045);
}
.mf-holdings-table {
  min-width: 720px;
}
.mf-holdings-table th:nth-child(2),
.mf-holdings-table th:nth-child(3),
.mf-holdings-table td:nth-child(2),
.mf-holdings-table td:nth-child(3) {
  text-align: right;
}
.mf-holdings-table td:first-child {
  width: 62%;
  min-width: 340px;
}
.mf-holdings-table td {
  font-size: 14px;
  line-height: 1.5;
}
.mf-holdings-table td:first-child strong {
  font-size: 14px;
  font-weight: 720;
}

.mf-holdings-explain__grid {
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}
.mf-holdings-explain__grid article {
  min-height: 245px;
  padding: 28px;
}
.mf-holdings-explain__grid p {
  font-size: 14.5px;
}

@media (max-width: 1000px) {
  .mf-holdings-search-head,
  .mf-holdings-explain__intro,
  .mf-holdings-method {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .mf-holdings-explain__grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  body.nivata-mf-holdings-page main > .mf-holdings-explorer,
  body.nivata-mf-holdings-page main > .mf-holdings-explain,
  body.nivata-mf-holdings-page main > .mf-holdings-method,
  body.nivata-mf-holdings-page main > .mf-holdings-faq {
    width: 100% !important;
    max-width: none !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .mf-holdings-search__control button {
    min-width: 0;
    width: 100%;
  }
  .mf-holdings-explain__grid {
    grid-template-columns: 1fr;
  }
  .mf-holdings-explain__grid article {
    min-height: 0;
  }
  .mf-holdings-results__header {
    gap: 22px;
  }
  .mf-holdings-table tr {
    padding: 8px 15px;
  }
  .mf-holdings-table td:first-child {
    width: 100%;
    min-width: 0;
  }
  .mf-holdings-table td:nth-child(2),
  .mf-holdings-table td:nth-child(3) {
    text-align: left;
  }
}

/* ================================================================
   v3.24.31 release — guide contrast + Mutual Fund Holdings rebuild
   ================================================================ */

/* Long-form guide hero: all essential copy must remain legible on dark green. */
.guide-hero--deep .guide-hero__copy h1,
.guide-hero--deep .guide-hero__copy > p,
.guide-hero--deep .guide-hero__copy .eyebrow {
  color: #f7f3e8 !important;
}
.guide-hero--deep .guide-hero__copy > p {
  color: rgba(247,243,232,.82) !important;
}
.guide-hero--deep .guide-meta-line {
  color: rgba(247,243,232,.68) !important;
}
.guide-hero--deep .guide-hero__formula,
.guide-hero--deep .guide-hero__formula strong {
  color: #f7f3e8 !important;
}

/* Mutual Fund Holdings uses the same compact Market Data proportions as MF/IPO pages. */
body.nivata-mf-holdings-page .mf-holdings-hero {
  min-height: 0 !important;
  padding-bottom: clamp(58px, 7vw, 96px) !important;
}
body.nivata-mf-holdings-page .mf-holdings-hero .data-hero__copy {
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
}
body.nivata-mf-holdings-page .mf-holdings-hero h1 {
  max-width: 980px !important;
  font-size: clamp(56px, 7vw, 104px) !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}
body.nivata-mf-holdings-page .mf-holdings-hero .data-hero__copy > p:last-child {
  max-width: 900px !important;
  font-size: clamp(16px, 1.25vw, 19px) !important;
  line-height: 1.7 !important;
}

body.nivata-mf-holdings-page .mf-holdings-explorer,
body.nivata-mf-holdings-page .mf-holdings-method,
body.nivata-mf-holdings-page .mf-holdings-faq {
  width: min(100%, 1500px) !important;
  max-width: 1500px !important;
  margin-inline: auto !important;
  padding-inline: clamp(28px, 4.5vw, 72px) !important;
}
body.nivata-mf-holdings-page .mf-holdings-explain {
  width: 100% !important;
  max-width: none !important;
  padding-inline: max(clamp(28px, 4.5vw, 72px), calc((100vw - 1500px) / 2 + 72px)) !important;
}
body.nivata-mf-holdings-page .mf-holdings-search-head {
  align-items: start !important;
}
body.nivata-mf-holdings-page .mf-holdings-search-head > div:last-child > p:first-child {
  margin: 0;
  color: #68736f;
  line-height: 1.75;
}
.mf-holdings-disclosure {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0 0 !important;
}
.mf-holdings-disclosure strong,
.mf-holdings-disclosure span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border: 1px solid rgba(18,35,31,.14);
  border-radius: 999px;
  background: #f3f2ec;
  color: #3e4c47;
  font-size: 11px;
  font-weight: 750;
  line-height: 1;
}
.mf-holdings-disclosure strong {
  background: #12231f;
  border-color: #12231f;
  color: #f7f3e8;
}
body.nivata-mf-holdings-page .mf-holdings-search {
  max-width: none !important;
}
body.nivata-mf-holdings-page .mf-holdings-search__control {
  width: min(100%, 1160px);
}
body.nivata-mf-holdings-page .mf-holdings-results {
  width: 100%;
}
body.nivata-mf-holdings-page .mf-holdings-table {
  min-width: 700px;
}
body.nivata-mf-holdings-page .mf-holdings-table td:first-child {
  width: 62%;
}

@media (max-width: 900px) {
  body.nivata-mf-holdings-page .mf-holdings-hero h1 {
    font-size: clamp(40px, 10.5vw, 50px) !important;
    line-height: 1 !important;
  }
  body.nivata-mf-holdings-page .mf-holdings-explorer,
  body.nivata-mf-holdings-page .mf-holdings-explain,
  body.nivata-mf-holdings-page .mf-holdings-method,
  body.nivata-mf-holdings-page .mf-holdings-faq {
    width: 100% !important;
    max-width: none !important;
    padding-inline: 20px !important;
  }
  body.nivata-mf-holdings-page .mf-holdings-table {
    min-width: 0;
  }
  .mf-holdings-disclosure {
    gap: 6px;
  }
}

/* ================================================================
   v3.24.32 — Mutual Fund Holdings permanent desktop rebuild
   This page intentionally does not use the generic data-hero component.
   ================================================================ */
body.nivata-mf-holdings-page .mfh-page {
  background:#f8f6ef;
  color:#102a25;
  overflow:hidden;
}
body.nivata-mf-holdings-page .mfh-shell {
  box-sizing:border-box;
  width:min(100%, 1480px);
  margin-inline:auto;
  padding-inline:clamp(28px,4.6vw,76px);
}
body.nivata-mf-holdings-page .mfh-intro {
  position:relative;
  padding:clamp(42px,5vw,70px) 0 clamp(44px,5.2vw,76px);
  background:#f8f6ef;
}
body.nivata-mf-holdings-page .mfh-breadcrumb {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 0 30px;
  color:#72807a;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body.nivata-mf-holdings-page .mfh-breadcrumb::before {
  content:"";
  width:28px;
  height:1px;
  background:#58d990;
}
body.nivata-mf-holdings-page .mfh-breadcrumb b {
  color:#c6a86b;
  font-size:10px;
}
body.nivata-mf-holdings-page .mfh-intro__grid {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);
  gap:clamp(40px,6vw,92px);
  align-items:end;
}
body.nivata-mf-holdings-page .mfh-intro__copy .overline {
  margin:0 0 13px;
  color:#5b6f67;
}
body.nivata-mf-holdings-page .mfh-intro h1 {
  max-width:900px;
  margin:0;
  font-size:clamp(48px,5.3vw,78px);
  line-height:.97;
  letter-spacing:-.055em;
  color:#0e2a24;
}
body.nivata-mf-holdings-page .mfh-lede {
  max-width:850px;
  margin:24px 0 0;
  color:#53635e;
  font-size:clamp(16px,1.2vw,19px);
  line-height:1.65;
}
body.nivata-mf-holdings-page .mfh-context {
  display:grid;
  gap:1px;
  border:1px solid rgba(16,42,37,.11);
  border-radius:18px;
  overflow:hidden;
  background:rgba(16,42,37,.10);
}
body.nivata-mf-holdings-page .mfh-context > div {
  padding:18px 20px;
  background:#fbfaf5;
}
body.nivata-mf-holdings-page .mfh-context strong,
body.nivata-mf-holdings-page .mfh-context span {
  display:block;
}
body.nivata-mf-holdings-page .mfh-context strong {
  margin-bottom:5px;
  font-size:12px;
  letter-spacing:.02em;
  color:#17352e;
}
body.nivata-mf-holdings-page .mfh-context span {
  color:#697773;
  font-size:12px;
  line-height:1.45;
}
body.nivata-mf-holdings-page .mfh-search-panel {
  position:relative;
  z-index:5;
  width:100%;
  margin-top:clamp(32px,4vw,50px);
  padding:clamp(20px,2.2vw,30px);
  border:1px solid rgba(16,42,37,.13);
  border-radius:22px;
  background:#fff;
  box-shadow:0 20px 60px rgba(16,42,37,.06);
}
body.nivata-mf-holdings-page .mfh-search-panel__heading {
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:end;
  margin-bottom:18px;
}
body.nivata-mf-holdings-page .mfh-search-panel__heading span,
body.nivata-mf-holdings-page .mfh-search-panel__heading strong {
  display:block;
}
body.nivata-mf-holdings-page .mfh-search-panel__heading span {
  margin-bottom:4px;
  color:#708079;
  font-size:10px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
}
body.nivata-mf-holdings-page .mfh-search-panel__heading strong {
  font-size:20px;
  letter-spacing:-.02em;
}
body.nivata-mf-holdings-page .mfh-search-panel__heading p {
  margin:0;
  color:#78847f;
  font-size:12px;
}
body.nivata-mf-holdings-page .mfh-search-panel form {
  position:relative;
  width:100%;
}
body.nivata-mf-holdings-page .mfh-search-panel form > label {
  display:block;
  margin:0 0 8px;
  color:#17352e;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control {
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  width:100%;
  min-height:64px;
  border:1px solid rgba(16,42,37,.22);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  box-shadow:none;
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control input {
  min-width:0;
  min-height:62px;
  padding:0 20px;
  border:0;
  outline:0;
  background:#fff;
  color:#102a25;
  font:inherit;
  font-size:16px;
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control button {
  min-width:0;
  padding:0 24px;
  border:0;
  border-radius:0;
  background:#102a25;
  color:#fff;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-suggestions {
  top:calc(100% + 8px);
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-status {
  margin:14px 0 0;
}
body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-status[data-state="error"] {
  max-width:none;
}
body.nivata-mf-holdings-page .mfh-results-zone {
  padding:0 0 clamp(64px,7vw,100px);
}
body.nivata-mf-holdings-page .mfh-results-zone .mf-holdings-results {
  margin:0;
  padding:clamp(28px,3vw,42px) 0 0;
  border-top:1px solid rgba(16,42,37,.12);
}
body.nivata-mf-holdings-page .mfh-learning {
  padding:clamp(70px,8vw,112px) 0;
  background:#eff1eb;
}
body.nivata-mf-holdings-page .mfh-section-heading,
body.nivata-mf-holdings-page .mfh-method__grid {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.7fr);
  gap:clamp(40px,6vw,90px);
  align-items:start;
}
body.nivata-mf-holdings-page .mfh-section-heading h2,
body.nivata-mf-holdings-page .mfh-method h2,
body.nivata-mf-holdings-page .mfh-faq h2 {
  margin:7px 0 0;
  color:#102a25;
  font-size:clamp(36px,4vw,58px);
  line-height:1;
  letter-spacing:-.045em;
}
body.nivata-mf-holdings-page .mfh-section-heading > p,
body.nivata-mf-holdings-page .mfh-method__grid > div:last-child {
  margin:0;
  color:#64716d;
  line-height:1.72;
}
body.nivata-mf-holdings-page .mfh-learning .mf-holdings-explain__grid {
  margin-top:42px;
}
body.nivata-mf-holdings-page .mfh-method {
  padding:clamp(70px,8vw,112px) 0;
  background:#f8f6ef;
}
body.nivata-mf-holdings-page .mfh-method p {
  margin:0 0 17px;
}
body.nivata-mf-holdings-page .mfh-method a {
  display:inline-flex;
  margin-top:8px;
  color:#315f4f;
  font-weight:800;
  text-decoration:none;
}
body.nivata-mf-holdings-page .mfh-faq {
  padding:clamp(64px,7vw,96px) 0;
  background:#fff;
}
body.nivata-mf-holdings-page .mfh-faq h2 {
  max-width:780px;
  margin-bottom:30px;
}
body.nivata-mf-holdings-page .mfh-faq .guide-faq__list {
  max-width:1100px;
}

@media (max-width:1000px) {
  body.nivata-mf-holdings-page .mfh-intro__grid,
  body.nivata-mf-holdings-page .mfh-section-heading,
  body.nivata-mf-holdings-page .mfh-method__grid {
    grid-template-columns:1fr;
    gap:26px;
  }
  body.nivata-mf-holdings-page .mfh-context {
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width:700px) {
  body.nivata-mf-holdings-page .mfh-shell {
    width:100%;
    padding-inline:20px;
  }
  body.nivata-mf-holdings-page .mfh-intro {
    padding:28px 0 42px;
  }
  body.nivata-mf-holdings-page .mfh-breadcrumb {
    margin-bottom:22px;
    gap:8px;
    font-size:9px;
  }
  body.nivata-mf-holdings-page .mfh-intro h1 {
    font-size:clamp(39px,11vw,50px);
    line-height:1;
  }
  body.nivata-mf-holdings-page .mfh-lede {
    margin-top:18px;
    font-size:15px;
  }
  body.nivata-mf-holdings-page .mfh-context {
    grid-template-columns:1fr;
  }
  body.nivata-mf-holdings-page .mfh-search-panel {
    margin-top:26px;
    padding:17px;
    border-radius:17px;
  }
  body.nivata-mf-holdings-page .mfh-search-panel__heading {
    display:block;
  }
  body.nivata-mf-holdings-page .mfh-search-panel__heading p {
    margin-top:8px;
  }
  body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control {
    grid-template-columns:1fr;
    gap:8px;
    border:0;
    overflow:visible;
    background:transparent;
  }
  body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control input {
    min-height:54px;
    border:1px solid rgba(16,42,37,.22);
    border-radius:12px;
  }
  body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-search__control button {
    min-height:50px;
    border-radius:12px;
  }
  body.nivata-mf-holdings-page .mfh-search-panel .mf-holdings-suggestions {
    top:auto;
    margin-top:8px;
  }
}

/* ================================================================
   v3.24.33 — Mutual Fund Holdings aligned with Market Data system
   ================================================================ */
body.nivata-mf-holdings-page .mfh-live-section {
  position: relative;
}
body.nivata-mf-holdings-page .mfh-market-search {
  position: relative;
  margin: 24px 0 18px;
  max-width: none;
}
body.nivata-mf-holdings-page .mfh-market-search > label {
  display: block;
  margin: 0 0 9px;
}
body.nivata-mf-holdings-page .mfh-market-search > label span {
  display: block;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #12231f;
}
body.nivata-mf-holdings-page .mfh-market-search__field {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 62px;
  border: 1px solid rgba(18,35,31,.20);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(18,35,31,.05);
}
body.nivata-mf-holdings-page .mfh-market-search__icon {
  flex: 0 0 auto;
  margin-left: 18px;
  font-size: 22px;
  line-height: 1;
  color: rgba(18,35,31,.55);
}
body.nivata-mf-holdings-page .mfh-market-search__field input {
  width: 100%;
  min-width: 0;
  min-height: 60px;
  padding: 0 18px 0 12px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #12231f;
  font: inherit;
  font-size: clamp(16px, 1.2vw, 20px);
}
body.nivata-mf-holdings-page .mfh-market-search__field input::placeholder {
  color: rgba(18,35,31,.46);
}
body.nivata-mf-holdings-page .mfh-market-search__field:focus-within {
  border-color: rgba(18,35,31,.55);
  box-shadow: 0 0 0 3px rgba(79,224,143,.14), 0 14px 38px rgba(18,35,31,.07);
}
body.nivata-mf-holdings-page .mfh-market-suggestions {
  position: absolute;
  z-index: 40;
  top: calc(100% + 7px);
  left: 0;
  right: 0;
  max-height: 360px;
  overflow-y: auto;
  border: 1px solid rgba(18,35,31,.17);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 20px 48px rgba(18,35,31,.15);
}
body.nivata-mf-holdings-page .mfh-market-suggestions button {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 13px 16px;
  border: 0;
  border-bottom: 1px solid rgba(18,35,31,.08);
  background: transparent;
  text-align: left;
  color: #12231f;
  cursor: pointer;
}
body.nivata-mf-holdings-page .mfh-market-suggestions button:last-child { border-bottom: 0; }
body.nivata-mf-holdings-page .mfh-market-suggestions button:hover,
body.nivata-mf-holdings-page .mfh-market-suggestions button.is-active { background: rgba(79,224,143,.08); }
body.nivata-mf-holdings-page .mfh-market-suggestions button span { display: grid; gap: 2px; }
body.nivata-mf-holdings-page .mfh-market-suggestions strong { font-size: 14px; }
body.nivata-mf-holdings-page .mfh-market-suggestions small { font-size: 11px; color: rgba(18,35,31,.60); }
body.nivata-mf-holdings-page .mfh-market-suggestions i { font-style: normal; }
body.nivata-mf-holdings-page .mfh-market-search__help {
  margin: 8px 0 0;
  color: rgba(18,35,31,.62);
  font-size: 12px;
}
body.nivata-mf-holdings-page .mfh-market-status {
  margin: 14px 0 0;
}
body.nivata-mf-holdings-page .mfh-market-status.is-loading {
  color: rgba(18,35,31,.72);
}
body.nivata-mf-holdings-page .mfh-market-status.is-error {
  color: #8b342b;
  background: #fff1ee;
  border-color: rgba(139,52,43,.15);
}
body.nivata-mf-holdings-page .mfh-market-results {
  margin-top: 28px;
  scroll-margin-top: 96px;
}
body.nivata-mf-holdings-page .mfh-results-meta {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: end;
  gap: 24px;
}
body.nivata-mf-holdings-page .mfh-results-meta h3 {
  margin: 3px 0 5px;
  color: #12231f;
  font-size: clamp(24px, 2.4vw, 38px);
  line-height: 1.02;
}
body.nivata-mf-holdings-page .mfh-results-meta > div:first-child > p:last-child {
  margin: 0;
  max-width: 760px;
  color: rgba(18,35,31,.66);
}
body.nivata-mf-holdings-page .mfh-result-summary {
  display: flex;
  gap: 10px;
}
body.nivata-mf-holdings-page .mfh-result-summary > span {
  min-width: 124px;
  padding: 11px 13px;
  border: 1px solid rgba(18,35,31,.12);
  border-radius: 10px;
  background: rgba(255,255,255,.62);
}
body.nivata-mf-holdings-page .mfh-result-summary small,
body.nivata-mf-holdings-page .mfh-result-summary strong { display: block; }
body.nivata-mf-holdings-page .mfh-result-summary small {
  margin-bottom: 3px;
  color: rgba(18,35,31,.58);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}
body.nivata-mf-holdings-page .mfh-result-summary strong { color: #12231f; font-size: 15px; }
body.nivata-mf-holdings-page .mfh-table-wrap { margin-top: 16px; }
body.nivata-mf-holdings-page .mfh-table-note { margin-top: 10px; }
body.nivata-mf-holdings-page .mf-holdings-table td:first-child { width: 58%; }

/* Search fields should search as you type/choose. The Education Hub hero no longer
   allocates a dead second column for a submit button. */
.educate-hero-search { grid-template-columns: minmax(0,1fr) !important; }

@media (max-width: 760px) {
  body.nivata-mf-holdings-page .mfh-market-search { margin-top: 18px; }
  body.nivata-mf-holdings-page .mfh-market-search__field { min-height: 56px; border-radius: 10px; }
  body.nivata-mf-holdings-page .mfh-market-search__field input { min-height: 54px; font-size: 16px; }
  body.nivata-mf-holdings-page .mfh-market-search__icon { margin-left: 14px; font-size: 19px; }
  body.nivata-mf-holdings-page .mfh-results-meta { grid-template-columns: 1fr; align-items: start; gap: 13px; }
  body.nivata-mf-holdings-page .mfh-result-summary { width: 100%; }
  body.nivata-mf-holdings-page .mfh-result-summary > span { flex: 1 1 0; min-width: 0; }
}

/* v3.25.13 — Market Stories: 20 long-form case studies */
.nivata-market-story { background:#f6f4ed; color:#13372f; }
.nivata-market-story main { overflow:clip; }
.market-stories-hub { background:#f6f4ed; }
.market-story-category { margin-top:clamp(42px,6vw,74px); padding-top:34px; border-top:1px solid rgba(18,35,31,.16); }
.market-story-category__head { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:36px; align-items:end; margin-bottom:28px; }
.market-story-category__head > div { max-width:820px; }
.market-story-category__eyebrow { display:inline-flex; align-items:center; gap:8px; margin-bottom:8px; color:#557068; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.market-story-category__eyebrow::before { content:''; width:24px; height:1px; background:currentColor; }
.market-story-category__head h3 { margin:0 0 10px; font-size:clamp(31px,4vw,50px); line-height:1; letter-spacing:-.035em; }
.market-story-category__head p { max-width:760px; margin:0; color:#68736f; font-size:15px; line-height:1.72; }
.market-story-category__head > strong { align-self:start; padding:8px 11px; border:1px solid rgba(18,35,31,.15); border-radius:999px; font-size:11px; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
.market-story-category--collapse .market-story-category__eyebrow { color:#765b48; }
.market-story-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid rgba(18,35,31,.13); border-left:1px solid rgba(18,35,31,.13); }
.market-story-card { min-height:350px; display:flex; flex-direction:column; padding:25px 26px 23px; border-right:1px solid rgba(18,35,31,.13); border-bottom:1px solid rgba(18,35,31,.13); background:rgba(255,255,255,.55); color:inherit; text-decoration:none; transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.market-story-card:hover,.market-story-card:focus-visible { position:relative; z-index:2; transform:translateY(-3px); background:#fff; box-shadow:0 18px 42px rgba(18,35,31,.09); outline:none; }
.market-story-category--collapse .market-story-card { background:rgba(250,247,242,.72); }
.market-story-card__top { display:flex; justify-content:space-between; gap:18px; align-items:center; }
.market-story-card__top span { font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.market-story-card__top small { color:#7a8581; font-size:11px; }
.market-story-card__metric { display:grid; gap:2px; margin:29px 0 21px; }
.market-story-card__metric strong { font-size:clamp(30px,3.5vw,46px); line-height:.98; letter-spacing:-.04em; font-weight:540; }
.market-story-card__metric span { max-width:360px; color:#72807a; font-size:11px; line-height:1.35; }
.market-story-card h4 { max-width:620px; margin:0 0 10px; font-size:clamp(23px,2.5vw,31px); line-height:1.08; letter-spacing:-.025em; }
.market-story-card > p { max-width:650px; margin:0; color:#67726e; font-size:13px; line-height:1.62; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.market-story-card footer { display:flex; justify-content:space-between; align-items:end; gap:16px; margin-top:auto; padding-top:28px; }
.market-story-card footer > span { color:#8a938f; font-size:10px; text-transform:uppercase; letter-spacing:.07em; }
.market-story-card footer > strong { font-size:12px; }
.market-story-card footer i { margin-left:4px; font-style:normal; }

.market-story-hero { position:relative; min-height:610px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(270px,.55fr); gap:clamp(42px,7vw,100px); align-items:end; padding:clamp(132px,13vw,188px) clamp(28px,7vw,112px) clamp(72px,8vw,108px); background:#082c24; color:#f7f3e8; isolation:isolate; }
.market-story-hero__mesh { position:absolute; inset:0; z-index:-1; opacity:.22; background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),radial-gradient(circle at 82% 22%,rgba(219,194,126,.27),transparent 32%); background-size:64px 64px,64px 64px,auto; }
.nivata-market-story--collapse .market-story-hero__mesh { background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),radial-gradient(circle at 82% 22%,rgba(183,145,112,.24),transparent 32%); }
.market-story-hero__copy { max-width:900px; }
.market-story-hero .eyebrow { color:rgba(247,243,232,.7); }
.market-story-hero h1 { max-width:940px; margin:18px 0 24px; font-size:clamp(48px,6.5vw,92px); line-height:.94; letter-spacing:-.052em; font-weight:520; }
.market-story-hero__copy > p:not(.eyebrow) { max-width:760px; margin:0; color:rgba(247,243,232,.78); font-size:clamp(17px,1.55vw,21px); line-height:1.58; }
.market-story-hero .guide-meta-line { margin-top:22px; }
.market-story-hero__actions { display:flex; flex-wrap:wrap; gap:16px 25px; margin-top:27px; }
.market-story-hero .line-link { color:#f7f3e8; }
.market-story-hero__stat { align-self:stretch; display:grid; align-content:end; gap:8px; border-left:1px solid rgba(247,243,232,.18); padding-left:clamp(28px,4vw,52px); }
.market-story-hero__stat > span,.market-story-hero__stat > small,.market-story-hero__stat > i { color:rgba(247,243,232,.62); }
.market-story-hero__stat > span { font-size:11px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.market-story-hero__stat > strong { margin:8px 0 2px; color:#f7f3e8; font-size:clamp(37px,4.7vw,62px); line-height:.96; letter-spacing:-.045em; font-weight:520; }
.market-story-hero__stat > small { max-width:310px; font-size:13px; line-height:1.5; }
.market-story-hero__stat > i { margin-top:13px; font-style:normal; font-size:11px; letter-spacing:.09em; text-transform:uppercase; }
.market-story-jump { overflow-x:auto; white-space:nowrap; }
.market-story-content { max-width:1180px; margin:0 auto; }
.market-story-opening { max-width:850px; padding:22px 0 62px; }
.market-story-opening > p:not(.overline) { margin:0 0 17px; color:#263a34; font-size:clamp(19px,2vw,24px); line-height:1.62; }
.market-story-section { display:grid; grid-template-columns:70px minmax(0,790px); justify-content:center; gap:28px; padding:48px 0; border-top:1px solid rgba(18,35,31,.14); }
.market-story-section__index { padding-top:8px; color:#87918d; font-size:12px; }
.market-story-section h2 { margin:0 0 20px; font-size:clamp(31px,3.6vw,46px); line-height:1.04; letter-spacing:-.035em; }
.market-story-section p { margin:0 0 17px; color:#3e4a46; font-size:17px; line-height:1.84; }
.market-story-block-head { max-width:800px; margin-bottom:34px; }
.market-story-block-head h2,.market-story-hindsight h2,.market-story-questions h2,.market-story-lesson h2,.market-story-sources h2,.market-story-related h2 { margin:7px 0 12px; font-size:clamp(35px,4.4vw,56px); line-height:1; letter-spacing:-.04em; }
.market-story-block-head > p:last-child { max-width:700px; margin:0; color:#66726e; font-size:15px; line-height:1.7; }
.market-story-timeline { margin:75px 0; padding:55px 0 12px; border-top:2px solid #12231f; }
.market-story-timeline ol { list-style:none; margin:0; padding:0; }
.market-story-timeline li { display:grid; grid-template-columns:120px minmax(0,1fr); gap:28px; padding:25px 0; border-top:1px solid rgba(18,35,31,.13); }
.market-story-timeline time { color:#64716c; font-size:13px; font-weight:800; }
.market-story-timeline strong { display:block; margin-bottom:7px; font-size:21px; line-height:1.2; }
.market-story-timeline p { max-width:760px; margin:0; color:#5f6b67; line-height:1.7; }
.market-story-hindsight { display:grid; grid-template-columns:minmax(240px,.7fr) minmax(0,1fr); gap:58px; margin:74px 0; padding:42px; border-radius:22px; background:#edf1ed; }
.nivata-market-story--collapse .market-story-hindsight { background:#f1ece6; }
.market-story-hindsight p:not(.overline) { margin:0 0 16px; color:#44514d; font-size:16px; line-height:1.78; }
.market-story-notebook { margin:80px 0; }
.market-story-note-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.market-story-note { min-height:230px; padding:25px; border:1px solid rgba(18,35,31,.14); border-radius:17px; background:#fff; }
.market-story-note > span { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#173a31; color:#fff; font-weight:800; }
.nivata-market-story--collapse .market-story-note > span { background:#6e5545; }
.market-story-note h3 { margin:24px 0 9px; font-size:23px; line-height:1.1; }
.market-story-note p { margin:0; color:#65706c; font-size:14px; line-height:1.72; }
.market-story-questions { display:grid; grid-template-columns:minmax(250px,.75fr) minmax(0,1fr); gap:60px; margin:74px 0; }
.market-story-questions ol { counter-reset:storyQuestion; list-style:none; margin:0; padding:0; }
.market-story-questions li { counter-increment:storyQuestion; position:relative; padding:18px 0 18px 48px; border-top:1px solid rgba(18,35,31,.14); font-size:16px; line-height:1.62; }
.market-story-questions li::before { content:counter(storyQuestion,decimal-leading-zero); position:absolute; left:0; top:20px; color:#82908b; font-size:11px; }
.market-story-lesson { margin:76px 0; padding:clamp(32px,5vw,55px); border-radius:22px; background:#12231f; color:#f6f2e8; }
.market-story-lesson .overline { color:rgba(246,242,232,.64); }
.market-story-lesson h2 { max-width:800px; }
.market-story-lesson > p:last-child { max-width:850px; margin:18px 0 0; color:rgba(246,242,232,.78); font-size:18px; line-height:1.78; }
.market-story-sources { display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,1fr); gap:60px; margin:80px 0 72px; padding-top:55px; border-top:2px solid #12231f; }
.market-story-sources > div > p:last-child { color:#65706c; line-height:1.72; }
.market-story-sources ul { list-style:none; margin:0; padding:0; border-top:1px solid rgba(18,35,31,.14); }
.market-story-sources li { border-bottom:1px solid rgba(18,35,31,.12); }
.market-story-sources a { display:flex; justify-content:space-between; gap:18px; padding:17px 2px; color:inherit; text-decoration:none; }
.market-story-sources a:hover span { text-decoration:underline; text-underline-offset:4px; }
.market-story-sources i { font-style:normal; }
.market-story-related { margin-top:65px; padding-top:54px; border-top:1px solid rgba(18,35,31,.15); }
.market-story-related__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:28px; }
.market-story-related__grid a { min-height:190px; display:flex; flex-direction:column; padding:22px; border:1px solid rgba(18,35,31,.13); border-radius:16px; background:#fff; color:inherit; text-decoration:none; }
.market-story-related__grid a > span { color:#68756f; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.07em; }
.market-story-related__grid a > strong { margin:22px 0; font-size:20px; line-height:1.2; }
.market-story-related__grid a > small { margin-top:auto; color:#64716c; }
.market-story-related__grid i { font-style:normal; }

@media (max-width:900px) {
  .market-story-card-grid { grid-template-columns:1fr; }
  .market-story-hero { grid-template-columns:1fr; min-height:0; }
  .market-story-hero__stat { min-height:210px; border-left:0; border-top:1px solid rgba(247,243,232,.18); padding:28px 0 0; }
  .market-story-hindsight,.market-story-questions,.market-story-sources { grid-template-columns:1fr; gap:26px; }
  .market-story-related__grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .market-story-category__head { grid-template-columns:1fr; gap:17px; align-items:start; }
  .market-story-category__head > strong { justify-self:start; }
  .market-story-card { min-height:315px; padding:22px 20px; }
  .market-story-card__metric { margin:25px 0 18px; }
  .market-story-card h4 { font-size:26px; }
  .market-story-hero { padding:118px 22px 56px; gap:40px; }
  .market-story-hero h1 { font-size:clamp(43px,12vw,59px); }
  .market-story-hero__copy > p:not(.eyebrow) { font-size:17px; }
  .market-story-jump { padding-left:22px; padding-right:22px; top:0; }
  .market-story-content { padding-left:22px !important; padding-right:22px !important; }
  .market-story-opening { padding:18px 0 44px; }
  .market-story-section { grid-template-columns:34px minmax(0,1fr); gap:12px; padding:36px 0; }
  .market-story-section h2 { font-size:33px; }
  .market-story-section p { font-size:16px; line-height:1.76; }
  .market-story-timeline { margin:58px 0; padding-top:43px; }
  .market-story-timeline li { grid-template-columns:1fr; gap:9px; }
  .market-story-hindsight { margin:56px 0; padding:27px 22px; }
  .market-story-note-grid { grid-template-columns:1fr; }
  .market-story-note { min-height:0; }
  .market-story-questions { margin:56px 0; }
  .market-story-lesson { margin:56px 0; padding:30px 22px; }
  .market-story-sources { margin:56px 0; padding-top:42px; }
  .market-story-block-head h2,.market-story-hindsight h2,.market-story-questions h2,.market-story-lesson h2,.market-story-sources h2,.market-story-related h2 { font-size:37px; }
}


/* v3.25.14 — Dedicated Market Stories sub-page + Education Hub CTA */
.educate-market-stories-button {
  background:#54df92 !important;
  border-color:#54df92 !important;
  color:#082c24 !important;
}
.educate-market-stories-button:hover,
.educate-market-stories-button:focus-visible { background:#70e9a6 !important; border-color:#70e9a6 !important; }
.educate-glossary-link { margin-left:2px; }

.nivata-market-stories-page { background:#f6f4ed; color:#13372f; }
.nivata-market-stories-page main { overflow:clip; }
.market-stories-index-hero {
  position:relative;
  min-height:650px;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.65fr);
  gap:clamp(42px,7vw,110px);
  align-items:end;
  padding:clamp(132px,13vw,188px) clamp(28px,7vw,112px) clamp(72px,8vw,116px);
  background:#082c24;
  color:#f7f3e8;
  isolation:isolate;
}
.market-stories-index-hero__mesh {
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px),radial-gradient(circle at 82% 22%,rgba(84,223,146,.2),transparent 32%);
  background-size:64px 64px,64px 64px,auto;
}
.market-stories-index-hero__copy { max-width:900px; }
.market-stories-index-hero .eyebrow { color:rgba(247,243,232,.72); }
.market-stories-index-hero h1 { margin:18px 0 26px; color:#f7f3e8; font-size:clamp(54px,7.2vw,104px); line-height:.91; letter-spacing:-.055em; font-weight:520; }
.market-stories-index-hero h1 em { color:#54df92; font-family:Georgia,serif; font-style:italic; font-weight:420; }
.market-stories-index-hero__copy > p:last-of-type { max-width:760px; margin:0; color:rgba(247,243,232,.78); font-size:clamp(17px,1.5vw,21px); line-height:1.58; }
.market-stories-index-hero__actions { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:34px; }
.market-stories-index-hero .line-link { color:#f7f3e8; margin-left:8px; }
.market-stories-collapse-button { background:transparent !important; border:1px solid rgba(247,243,232,.42) !important; color:#f7f3e8 !important; }
.market-stories-collapse-button:hover,.market-stories-collapse-button:focus-visible { border-color:#f7f3e8 !important; background:rgba(247,243,232,.08) !important; }
.market-stories-index-hero__stats { display:grid; align-self:stretch; align-content:end; border-left:1px solid rgba(247,243,232,.18); padding-left:clamp(28px,4vw,56px); }
.market-stories-index-hero__stats > div { padding:20px 0; border-top:1px solid rgba(247,243,232,.16); }
.market-stories-index-hero__stats strong,.market-stories-index-hero__stats span { display:block; }
.market-stories-index-hero__stats strong { color:#f7f3e8; font-size:clamp(34px,4vw,56px); line-height:1; font-weight:520; }
.market-stories-index-hero__stats span { margin-top:7px; color:rgba(247,243,232,.62); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.market-stories-subnav { position:sticky; top:0; z-index:35; display:flex; align-items:center; gap:24px; overflow-x:auto; padding:13px clamp(22px,6vw,96px); border-bottom:1px solid rgba(18,35,31,.12); background:rgba(246,244,237,.94); backdrop-filter:blur(16px); white-space:nowrap; }
.market-stories-subnav span { color:#17352e; font-size:11px; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.market-stories-subnav a { color:#5f6d68; font-size:12px; font-weight:760; text-decoration:none; }
.market-stories-subnav a:hover { color:#17352e; }
.market-stories-hub--standalone { padding-top:clamp(70px,8vw,108px); }
.market-stories-hub--standalone .market-story-category { scroll-margin-top:78px; }
.market-stories-note { margin-top:0; }

@media (max-width:900px) {
  .market-stories-index-hero { grid-template-columns:1fr; min-height:0; }
  .market-stories-index-hero__stats { border-left:0; border-top:1px solid rgba(247,243,232,.18); padding:24px 0 0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
  .market-stories-index-hero__stats > div { padding:16px 0 0; }
}
@media (max-width:760px) {
  .educate-hero__actions { gap:10px; }
  .educate-hero__actions .button { width:auto; min-width:0; flex:1 1 calc(50% - 5px); justify-content:center; padding-left:16px; padding-right:16px; }
  .educate-hero__actions .educate-glossary-link { flex:1 0 100%; margin:5px 0 0; }
  .market-stories-index-hero { padding:118px 22px 58px; gap:38px; }
  .market-stories-index-hero h1 { font-size:clamp(46px,13vw,64px); }
  .market-stories-index-hero__copy > p:last-of-type { font-size:16px; }
  .market-stories-index-hero__actions { gap:10px; }
  .market-stories-index-hero__actions .button { width:100%; justify-content:center; }
  .market-stories-index-hero .line-link { width:100%; margin:4px 0 0; }
  .market-stories-index-hero__stats { grid-template-columns:1fr 1fr 1fr; gap:8px; }
  .market-stories-index-hero__stats strong { font-size:30px; }
  .market-stories-index-hero__stats span { font-size:9px; }
  .market-stories-subnav { gap:18px; padding-left:22px; padding-right:22px; }
}


/* v3.25.25 — remove decorative 01/02-style section numbering everywhere. */
.trust-row{grid-template-columns:minmax(220px,.72fr) minmax(320px,1.28fr)}
.market-story-section{grid-template-columns:minmax(0,790px)}
.guide-essay-section{grid-template-columns:minmax(0,760px)}
.guide-step-card{grid-template-columns:minmax(0,1fr)}
.education-level-track a{grid-template-columns:1fr auto;grid-template-areas:'title icon' 'meta icon'}
.education-guide-group>header{gap:0}
@media(max-width:760px){.trust-row{grid-template-columns:1fr}.trust-row p{grid-column:auto}}
@media(max-width:820px){.market-story-section,.guide-essay-section{grid-template-columns:minmax(0,1fr)}}


/* ================================================================
   v3.26.3 — Home Loan vs Invest calculator
   Adds a sixth Tools workspace tab and result treatment without changing
   any existing calculator mechanics or the XIRR implementation.
   ================================================================ */
.home-comparison-result .home-result-deck {
  margin: -2px 0 22px;
  color: rgba(18,35,31,.62);
  font-size: 12px;
  line-height: 1.55;
}
.home-comparison-result > strong {
  max-width: 100%;
  font-size: clamp(27px, 3vw, 42px);
  line-height: 1.02;
  overflow-wrap: anywhere;
}
.home-comparison-result dl {
  grid-template-columns: repeat(2, minmax(0,1fr));
}
@media (max-width: 760px) and (min-width: 481px) {
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0,1fr)) !important;
    grid-template-rows: 82px !important;
    gap: 5px !important;
  }
}
@media (max-width: 480px) {
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    grid-template-rows: repeat(2, 82px) !important;
    gap: 6px !important;
    overflow: visible !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button,
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button:nth-child(5),
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button:nth-child(6) {
    width: 100% !important;
    min-width: 0 !important;
    height: 82px !important;
    min-height: 82px !important;
  }
  .home-comparison-result dl { grid-template-columns: 1fr; }
  .home-comparison-result > strong { font-size: 28px; }
}


/* ================================================================
   v3.26.5 — Buy a Home or Invest calculator clarity redesign
   Keeps the audited financial engine; simplifies inputs and results.
   ================================================================ */
.home-decision-body { align-items:start; }
.home-decision-form { display:grid; gap:16px; }
.home-input-stage {
  border:1px solid rgba(18,35,31,.12);
  border-radius:18px;
  padding:20px;
  background:rgba(255,255,255,.45);
}
.home-input-stage > header {
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:0 0 18px;
}
.home-input-stage > header > b {
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:50%;
  background:#12231f;
  color:#fff;
  font-size:12px;
  line-height:1;
}
.home-input-stage > header h4,
.home-input-stage > header h3 { margin:0 0 3px; font-size:17px; line-height:1.25; color:#12231f; }
.home-input-stage > header p { margin:0; font-size:12px; line-height:1.5; color:rgba(18,35,31,.60); }
.home-assumptions { margin-top:0; }
.home-assumptions > summary > span { display:flex; flex-direction:column; gap:2px; }
.home-assumptions > summary > span > small { font-size:10px; font-weight:500; letter-spacing:0; text-transform:none; color:rgba(18,35,31,.54); }
.home-decision-result { padding:26px; }
.home-decision-kicker { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.home-decision-kicker > span { font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:rgba(18,35,31,.56); }
.home-decision-kicker > em { font-style:normal; font-size:9px; line-height:1; letter-spacing:.08em; text-transform:uppercase; border:1px solid rgba(18,35,31,.18); border-radius:999px; padding:6px 8px; color:rgba(18,35,31,.58); }
.home-decision-result > strong { font-size:clamp(29px,3.1vw,43px); line-height:1.04; letter-spacing:-.035em; }
.home-comparison-result .home-result-deck { margin:10px 0 24px; max-width:62ch; font-size:12px; line-height:1.55; }
.home-path-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 12px; }
.home-path-cards article { min-width:0; border:1px solid rgba(18,35,31,.12); border-radius:16px; padding:16px; background:rgba(255,255,255,.50); }
.home-path-cards article > span { display:block; margin-bottom:8px; font-size:9px; font-weight:800; letter-spacing:.12em; color:rgba(18,35,31,.55); }
.home-path-cards article > strong { display:block; font-size:23px; line-height:1.05; letter-spacing:-.025em; color:#12231f; overflow-wrap:anywhere; }
.home-path-cards article > small { display:block; margin-top:4px; font-size:10px; color:rgba(18,35,31,.56); }
.home-path-cards article > div { margin-top:15px; padding-top:13px; border-top:1px solid rgba(18,35,31,.10); }
.home-path-cards article > div b { display:block; font-size:16px; line-height:1.15; color:#12231f; overflow-wrap:anywhere; }
.home-path-cards article > div small { display:block; margin-top:4px; font-size:10px; line-height:1.35; color:rgba(18,35,31,.56); }
.home-flip-card { margin-top:12px; padding:17px; border-radius:16px; background:rgba(18,35,31,.055); }
.home-flip-card > span { display:block; font-size:9px; font-weight:800; letter-spacing:.12em; color:rgba(18,35,31,.55); }
.home-flip-card > p { margin:7px 0 13px; font-size:12px; line-height:1.55; color:#12231f; }
.home-flip-card > div { display:flex; flex-wrap:wrap; gap:7px; }
.home-flip-card > div > span { display:inline-flex; align-items:center; gap:5px; min-height:30px; padding:6px 9px; border:1px solid rgba(18,35,31,.12); border-radius:999px; background:rgba(255,255,255,.66); font-size:10px; color:rgba(18,35,31,.64); }
.home-flip-card > div b { color:#12231f; font-size:11px; }
.home-result-details { margin-top:14px; border-top:1px solid rgba(18,35,31,.12); }
.home-result-details > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 0 2px; cursor:pointer; list-style:none; font-size:11px; font-weight:700; color:#12231f; }
.home-result-details > summary::-webkit-details-marker { display:none; }
.home-result-details > summary i { font-style:normal; transition:transform .2s ease; }
.home-result-details[open] > summary i { transform:rotate(45deg); }
.home-result-details dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:14px 0 0; }
.home-result-details dl > div { padding:11px 0; border-top:1px solid rgba(18,35,31,.08); }
.home-result-details dl > div:nth-child(odd) { padding-right:12px; }
.home-result-details dl > div:nth-child(even) { padding-left:12px; }
.home-result-details dt { font-size:10px; color:rgba(18,35,31,.55); }
.home-result-details dd { margin:4px 0 0; font-size:14px; font-weight:700; color:#12231f; overflow-wrap:anywhere; }
.home-result-details > p { margin:13px 0 0; font-size:10px; line-height:1.55; color:rgba(18,35,31,.58); }
@media (max-width:760px) {
  .home-input-stage { padding:16px; border-radius:15px; }
  .home-decision-result { padding:20px; }
  .home-path-cards { grid-template-columns:1fr; }
  .home-path-cards article { padding:15px; }
  .home-decision-result > strong { font-size:30px; }
}
@media (max-width:480px) {
  .home-input-stage > header { gap:10px; }
  .home-input-stage > header > b { width:27px; height:27px; flex-basis:27px; }
  .home-input-stage > header h4,
  .home-input-stage > header h3 { font-size:16px; }
  .home-decision-kicker { align-items:flex-start; }
  .home-decision-result > strong { font-size:27px; }
  .home-result-details dl { grid-template-columns:1fr; }
  .home-result-details dl > div:nth-child(odd),
  .home-result-details dl > div:nth-child(even) { padding-left:0; padding-right:0; }
}
@media (max-width:520px) {
  body.nivata-tools-page .home-input-stage .field-grid,
  body.nivata-tools-page .home-input-stage .field-grid--two { grid-template-columns:1fr !important; }
  body.nivata-tools-page .home-decision-form .calculator-actions { flex-wrap:wrap !important; }
  body.nivata-tools-page .home-decision-form .calculator-actions .button { flex:1 0 100% !important; width:100% !important; }
  body.nivata-tools-page .home-decision-form .calculator-actions .reset-button { flex:1 0 100% !important; width:100% !important; }
}


/* v3.26.26 — Education Hub trust signals and source transparency. */
.guide-byline {
  margin: 10px 0 0;
  color: rgba(255,255,255,.68);
  font-size: 10px;
  line-height: 1.45;
}
.guide-byline strong { color: rgba(255,255,255,.86); font-weight: 600; }
.guide-sources {
  display: grid;
  grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
  gap: clamp(30px,5vw,64px);
  margin: clamp(58px,7vw,92px) 0 0;
  padding-top: clamp(38px,4vw,54px);
  border-top: 1px solid rgba(18,35,31,.18);
}
.guide-sources__intro h2 {
  margin: 8px 0 14px;
  font-size: clamp(32px,4vw,50px);
  line-height: 1.03;
  letter-spacing: -.04em;
  font-weight: 520;
}
.guide-sources__intro > p:last-child {
  margin: 0;
  color: rgba(19,55,47,.7);
  font-size: 14px;
  line-height: 1.72;
}
.guide-sources__links { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(18,35,31,.14); }
.guide-sources__links li { border-bottom: 1px solid rgba(18,35,31,.12); }
.guide-sources__links a { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding:16px 2px; color:inherit; text-decoration:none; }
.guide-sources__links a:hover strong { text-decoration: underline; text-underline-offset: 4px; }
.guide-sources__links span { display:grid; gap:5px; }
.guide-sources__links strong { font-size: 14px; font-weight: 620; }
.guide-sources__links small { max-width: 650px; color: rgba(19,55,47,.64); font-size: 12px; line-height: 1.55; }
.guide-sources__links i { font-style: normal; flex: 0 0 auto; }
@media (max-width: 760px) {
  .guide-sources { grid-template-columns: 1fr; gap: 24px; margin-top: 52px; padding-top: 36px; }
  .guide-sources__intro h2 { font-size: 36px; }
  .guide-sources__links a { padding: 15px 0; }
}


/* v3.26.28 — editorial copy visibility + compact guide byline. */
body.nivata-finance-guide-page .guide-hero--deep .guide-hero__copy > p.guide-byline {
  max-width: none !important;
  margin: 10px 0 0 !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
  color: rgba(247,243,232,.68) !important;
}
body.nivata-finance-guide-page .guide-byline strong {
  color: rgba(247,243,232,.86) !important;
}
body.nivata-trust-page .trust-hero__copy,
body.nivata-trust-page .trust-hero__copy > *,
body.nivata-trust-page .trust-content,
body.nivata-trust-page .trust-content .trust-row,
body.nivata-trust-page .trust-content .trust-row > * {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  clip-path: none !important;
  filter: none !important;
}
body.nivata-trust-page .trust-hero__copy { position: relative !important; z-index: 3 !important; }
body.nivata-trust-page .trust-hero .eyebrow { color: rgba(247,243,232,.72) !important; -webkit-text-fill-color: rgba(247,243,232,.72) !important; }
body.nivata-trust-page .trust-hero h1 { color: #f7f3e8 !important; -webkit-text-fill-color: #f7f3e8 !important; }
body.nivata-trust-page .trust-hero h1 em { color: #dbc27e !important; -webkit-text-fill-color: #dbc27e !important; }
body.nivata-trust-page .trust-hero__copy > p:last-child { color: rgba(247,243,232,.77) !important; -webkit-text-fill-color: rgba(247,243,232,.77) !important; }
body.nivata-trust-page .trust-row h2 { color: #13372f !important; -webkit-text-fill-color: #13372f !important; }
body.nivata-trust-page .trust-row p { color: rgba(19,55,47,.72) !important; -webkit-text-fill-color: rgba(19,55,47,.72) !important; }

/* ================================================================
   v3.26.42 — final eight-tool selector override
   This file loads after the mobile refinement sheet on Tools pages.
   ================================================================ */
body.nivata-tools-page .everyday-money-result > strong,
body.nivata-tools-page .everyday-money-result dd {
  max-width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width: 760px) {
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, 82px) !important;
    gap: 5px !important;
    padding: 6px !important;
    overflow: visible !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button,
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button:nth-child(n),
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button[aria-selected="true"] {
    width: 100% !important;
    min-width: 0 !important;
    height: 82px !important;
    min-height: 82px !important;
    padding: 8px 3px !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button strong {
    font-size: 10.8px !important;
    line-height: 1.05 !important;
    white-space: normal !important;
    text-align: center !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button small {
    font-size: 7px !important;
    line-height: 1.14 !important;
  }
}
@media (max-width: 390px) {
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs {
    gap: 4px !important;
    padding: 5px !important;
  }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button strong { font-size: 10px !important; }
  body.nivata-tools-page:not(.nivata-calculator-page) .tool-tabs button small { font-size: 6.6px !important; }
}

/* ================================================================
   v3.26.43 — trust-page consistency + blank-section guardrail
   Match the established Nivata dark-green market hero and remove the unused
   ghost grid column that could make Editorial Policy rows look empty.
   ================================================================ */
body.nivata-trust-page .trust-hero{
  position:relative;overflow:hidden;min-height:500px;
  background:linear-gradient(120deg,#062b24 0%,#083c31 54%,#115940 100%);
  color:#fff;isolation:isolate;
}
body.nivata-trust-page .trust-hero::before{
  content:"";position:absolute;inset:0;z-index:-2;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:64px 64px;
}
body.nivata-trust-page .trust-hero::after{
  content:"";position:absolute;z-index:-1;width:min(76vw,980px);aspect-ratio:1;
  right:-13vw;top:-30vw;border:1px solid rgba(91,218,143,.16);border-radius:50%;
  box-shadow:0 0 120px rgba(70,217,133,.06) inset;pointer-events:none;
}
body.nivata-trust-page .trust-hero__mesh{
  position:absolute;inset:0;z-index:-1;opacity:1;
  background:radial-gradient(circle at 80% 30%,rgba(81,214,134,.14),transparent 33%);
}
body.nivata-trust-page .trust-hero .eyebrow{color:rgba(255,255,255,.68)!important;-webkit-text-fill-color:rgba(255,255,255,.68)!important}
body.nivata-trust-page .trust-hero h1{color:#fff!important;-webkit-text-fill-color:#fff!important}
body.nivata-trust-page .trust-hero h1 em{color:#4fd887!important;-webkit-text-fill-color:#4fd887!important;font-style:normal!important;font-weight:520!important}
body.nivata-trust-page .trust-hero__copy>p:last-child{color:rgba(255,255,255,.76)!important;-webkit-text-fill-color:rgba(255,255,255,.76)!important}
body.nivata-trust-page .trust-content{position:relative;display:block!important;min-height:180px;background:#f5f1e7!important}
body.nivata-trust-page .trust-row{
  display:grid!important;grid-template-columns:minmax(220px,.72fr) minmax(320px,1.28fr)!important;
  gap:clamp(28px,6vw,92px)!important;opacity:1!important;visibility:visible!important;
  transform:none!important;content-visibility:visible!important;
}
body.nivata-trust-page .trust-row h2{grid-column:1!important;color:#0b332b!important;-webkit-text-fill-color:#0b332b!important}
body.nivata-trust-page .trust-row p{grid-column:2!important;color:rgba(11,51,43,.72)!important;-webkit-text-fill-color:rgba(11,51,43,.72)!important}
body.nivata-trust-page .trust-links{background:#eae5d8}
body.nivata-trust-page .trust-links h2 em{color:#17845e!important}
body.nivata-trust-page .trust-links nav a:hover{color:#17845e}
@media(max-width:760px){
  body.nivata-trust-page .trust-hero{min-height:0;padding:112px 22px 58px}
  body.nivata-trust-page .trust-hero::after{width:150vw;right:-95vw;top:-74vw}
  body.nivata-trust-page .trust-row{grid-template-columns:1fr!important;gap:12px!important;padding:26px 0!important}
  body.nivata-trust-page .trust-row h2,body.nivata-trust-page .trust-row p{grid-column:1!important}
}

/* v3.26.43 — consistent long-form treatment for Methodology / Disclaimer /
   Privacy / Terms, now rendered inside the same Nivata trust-page shell. */
body.nivata-trust-page .trust-content--document{padding-top:clamp(58px,7vw,92px)!important;padding-bottom:clamp(70px,8vw,112px)!important}
body.nivata-trust-page .trust-document{width:min(900px,100%);margin:0 auto;color:#0b332b}
body.nivata-trust-page .trust-document h2{margin:0;padding:34px 0 12px;border-top:1px solid rgba(11,51,43,.14);font-size:clamp(26px,3vw,38px);line-height:1.08;letter-spacing:-.035em;font-weight:560;color:#0b332b}
body.nivata-trust-page .trust-document h2:first-child{padding-top:0;border-top:0}
body.nivata-trust-page .trust-document p{margin:0 0 28px;color:rgba(11,51,43,.72);font-size:15px;line-height:1.78}
body.nivata-trust-page .trust-document a{color:#137b57;text-underline-offset:3px}
body.nivata-trust-page .trust-document strong{color:#0b332b}
@media(max-width:760px){body.nivata-trust-page .trust-content--document{padding-top:42px!important;padding-bottom:72px!important}body.nivata-trust-page .trust-document h2{padding-top:26px;font-size:27px}body.nivata-trust-page .trust-document p{font-size:14px;line-height:1.7}}

/* ================================================================
   v3.26.60 — search-intent answer cards
   A compact answer-first layer for search visitors. Visible to visitors and
   crawlers alike; never hidden keyword text.
   ================================================================ */
.search-answer-card{
  width:min(1120px,calc(100% - 48px));
  margin:clamp(34px,4.5vw,64px) auto;
  padding:clamp(26px,3.2vw,42px) clamp(24px,4vw,52px);
  border:1px solid rgba(11,51,43,.14);
  border-radius:22px;
  background:#f7f4ec;
  color:#0b332b;
  box-shadow:0 18px 55px rgba(11,51,43,.055);
}
.search-answer-card .overline{
  margin:0 0 10px;
  font-size:11px;
  line-height:1.2;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:700;
  color:#17845e;
}
.search-answer-card h2{
  margin:0;
  max-width:900px;
  font-size:clamp(25px,3.3vw,42px);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:560;
  color:#0b332b;
}
.search-answer-card>p:last-child{
  margin:14px 0 0;
  max-width:960px;
  font-size:clamp(14px,1.25vw,17px);
  line-height:1.72;
  color:rgba(11,51,43,.73);
}
.search-answer-card--guide{margin-top:40px;margin-bottom:28px}
.search-answer-card--calculator{margin-top:40px;margin-bottom:24px}
@media(max-width:760px){
  .search-answer-card{width:calc(100% - 32px);margin:26px auto;padding:22px 20px;border-radius:18px}
  .search-answer-card h2{font-size:25px}
  .search-answer-card>p:last-child{font-size:14px;line-height:1.68}
}

/* ================================================================
   v3.26.62 — tighter SEO answer-card handoff
   Keep answer-first search content close to the page's primary workspace.
   ================================================================ */
.search-answer-card {
  margin-bottom: clamp(14px, 1.5vw, 22px);
}

.search-answer-card + .section-pad,
.search-answer-card + .live-data-section,
.search-answer-card + .tools-section,
.search-answer-card + .wb-section,
.search-answer-card + .data-hub,
.search-answer-card + .company-lookup,
.search-answer-card + .calculator-page-section {
  padding-top: clamp(30px, 3vw, 46px) !important;
}

/* Education Hub inserts an optional preference bar between the search-answer
   card and the first real content section. Keep that handoff equally compact. */
.search-answer-card + .education-preference-bar + .education-paths {
  padding-top: clamp(30px, 3vw, 46px) !important;
}

/* Long-form guides place the sticky in-page navigation between the answer card
   and article. The article should not restart with a full section-sized void. */
.search-answer-card + .guide-jump + .guide-content {
  padding-top: clamp(34px, 3.5vw, 52px) !important;
}

@media (max-width: 760px) {
  .search-answer-card {
    margin-bottom: 12px;
  }

  .search-answer-card + .section-pad,
  .search-answer-card + .live-data-section,
  .search-answer-card + .tools-section,
  .search-answer-card + .wb-section,
  .search-answer-card + .data-hub,
  .search-answer-card + .company-lookup,
  .search-answer-card + .calculator-page-section,
  .search-answer-card + .education-preference-bar + .education-paths {
    padding-top: 22px !important;
  }

  .search-answer-card + .guide-jump + .guide-content {
    padding-top: 26px !important;
  }
}

/* ================================================================
   v3.26.63 — Smart Screener alignment + subtly tinted tool selector
   Company identity remains left-aligned; every numeric metric is centred.
   Desktop shows the complete ten-column table without horizontal clipping,
   while mobile keeps a tighter, swipeable metric grid.
   ================================================================ */
body.nivata-screener-page .nivata-screen-results-shell {
  width: calc(100% + 24px) !important;
  max-width: none !important;
  margin-left: -12px !important;
  margin-right: -12px !important;
}
body.nivata-screener-page .nivata-screen-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
body.nivata-screener-page .nivata-screen-table th,
body.nivata-screener-page .nivata-screen-table td {
  box-sizing: border-box !important;
  vertical-align: middle !important;
}
body.nivata-screener-page .nivata-screen-table th:first-child,
body.nivata-screener-page .nivata-screen-table td:first-child,
body.nivata-screener-page .nivata-screen-table td:first-child a,
body.nivata-screener-page .nivata-screen-table td:first-child small {
  text-align: left !important;
}
body.nivata-screener-page .nivata-screen-table th:not(:first-child),
body.nivata-screener-page .nivata-screen-table td:not(:first-child) {
  text-align: center !important;
  font-variant-numeric: tabular-nums;
}

@media (min-width: 821px) {
  body.nivata-screener-page .nivata-screen-table-wrap {
    overflow-x: hidden !important;
  }
  body.nivata-screener-page .nivata-screen-table {
    display: table !important;
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
  }
  body.nivata-screener-page .nivata-screen-table th,
  body.nivata-screener-page .nivata-screen-table td {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
  body.nivata-screener-page .nivata-screen-table th {
    white-space: normal !important;
    line-height: 1.25 !important;
    overflow-wrap: normal !important;
  }
  body.nivata-screener-page .nivata-screen-table td {
    white-space: nowrap !important;
  }
  body.nivata-screener-page .nivata-screen-table th:first-child,
  body.nivata-screener-page .nivata-screen-table td:first-child {
    width: 25% !important;
    min-width: 0 !important;
    padding-left: 18px !important;
  }
  body.nivata-screener-page .nivata-screen-table th:not(:first-child),
  body.nivata-screener-page .nivata-screen-table td:not(:first-child) {
    width: 8.333333% !important;
    min-width: 0 !important;
  }
  body.nivata-screener-page .nivata-screen-table td:first-child {
    white-space: normal !important;
  }
}

@media (max-width: 820px) {
  body.nivata-screener-page .nivata-screen-results-shell {
    width: calc(100% + 10px) !important;
    margin-left: -5px !important;
    margin-right: -5px !important;
  }
  body.nivata-screener-page .nivata-screen-table-wrap {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
  }
  body.nivata-screener-page .nivata-screen-table {
    width: auto !important;
    min-width: 860px !important;
    table-layout: auto !important;
  }
  body.nivata-screener-page .nivata-screen-table th,
  body.nivata-screener-page .nivata-screen-table td {
    padding-left: 7px !important;
    padding-right: 7px !important;
    white-space: nowrap !important;
  }
  body.nivata-screener-page .nivata-screen-table th {
    font-size: 9.5px !important;
  }
  body.nivata-screener-page .nivata-screen-table td {
    font-size: 12.5px !important;
  }
  body.nivata-screener-page .nivata-screen-table th:first-child,
  body.nivata-screener-page .nivata-screen-table td:first-child {
    width: 180px !important;
    min-width: 180px !important;
    padding-left: 10px !important;
    white-space: normal !important;
  }
  body.nivata-screener-page .nivata-screen-table th:nth-child(2),
  body.nivata-screener-page .nivata-screen-table td:nth-child(2) {
    width: 100px !important;
    min-width: 100px !important;
    text-align: center !important;
  }
  body.nivata-screener-page .nivata-screen-table th:nth-child(3),
  body.nivata-screener-page .nivata-screen-table td:nth-child(3),
  body.nivata-screener-page .nivata-screen-table th:nth-child(5),
  body.nivata-screener-page .nivata-screen-table td:nth-child(5),
  body.nivata-screener-page .nivata-screen-table th:nth-child(6),
  body.nivata-screener-page .nivata-screen-table td:nth-child(6) {
    min-width: 70px !important;
  }
  body.nivata-screener-page .nivata-screen-table th:nth-child(4),
  body.nivata-screener-page .nivata-screen-table td:nth-child(4) {
    min-width: 118px !important;
  }
  body.nivata-screener-page .nivata-screen-table th:nth-child(n+7),
  body.nivata-screener-page .nivata-screen-table td:nth-child(n+7) {
    min-width: 92px !important;
  }
  body.nivata-screener-page .nivata-screen-table td:first-child a {
    line-height: 1.25 !important;
  }
  body.nivata-screener-page .nivata-screen-table td:first-child small {
    margin-top: 3px !important;
    font-size: 10.5px !important;
  }
}

/* ================================================================
   v3.26.66 — mobile Education guide breadcrumb / hero separation
   Prevents the breadcrumb from overlapping and clipping the guide title.
   ================================================================ */
@media (max-width: 760px) {
  body.nivata-finance-guide-page .guide-breadcrumb {
    padding: 26px 18px 10px !important;
    margin-bottom: 0 !important;
    background: #082c24 !important;
  }

  body.nivata-finance-guide-page .guide-hero.guide-hero--deep {
    padding: 16px 18px 34px !important;
  }
}

/* v3.33.93: neutral state for an IPO whose source has not supplied a complete application window. */
.status-pill--unverified{background:#f2f3f1;color:#5f6964;border-color:#d8ddd9}

/* v3.34.14: IPO search-intent support and filing-digest FAQ. */
.nivata-ipos-page .ipo-details-support{padding-top:clamp(60px,8vw,110px)}
.nivata-ipos-page .ipo-query-faq{max-width:980px;margin:34px 0 0;border-top:1px solid rgba(19,55,47,.14)}
.nivata-ipos-page .ipo-query-faq details{border-bottom:1px solid rgba(19,55,47,.14)}
.nivata-ipos-page .ipo-query-faq summary{cursor:pointer;padding:18px 2px;color:#183d33;font-size:15px;font-weight:700}
.nivata-ipos-page .ipo-query-faq p{margin:0;padding:0 2px 18px;max-width:860px;color:rgba(19,55,47,.72);font-size:14px;line-height:1.7}
@media(max-width:680px){.nivata-ipos-page .ipo-details-support{padding-top:58px}.nivata-ipos-page .ipo-query-faq{margin-top:25px}}


/* v3.34.70 — compact GMP trend on the current IPO table. */
.nivata-ipos-page .ipo-gmp-trend-mini{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:5px;min-height:24px}
.nivata-ipos-page .ipo-gmp-trend-mini__copy,.nivata-ipos-page .ipo-gmp-trend-building{color:#71807a;font-size:9px;font-weight:750;line-height:1.2;white-space:nowrap}
.nivata-ipos-page .ipo-gmp-sparkline{display:block;width:92px;height:24px;overflow:visible}
.nivata-ipos-page .ipo-gmp-sparkline polyline{fill:none;stroke:#39735f;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nivata-ipos-page .ipo-gmp-cell.is-negative .ipo-gmp-sparkline polyline{stroke:#9a5149}
@media(max-width:700px){.nivata-ipos-page .ipo-gmp-trend-mini{gap:4px;margin-top:3px}.nivata-ipos-page .ipo-gmp-sparkline{width:54px;height:18px}.nivata-ipos-page .ipo-gmp-trend-mini__copy{font-size:7.5px}.nivata-ipos-page .ipo-gmp-trend-building{font-size:7.5px}}


/* ================================================================
   v3.34.76 — compact sitewide Quick Answer cards
   Preserve answer-first SEO content while making the card roughly half as
   tall and substantially calmer on both desktop and mobile.
   ================================================================ */
.search-answer-card{
  margin-top:clamp(18px,2vw,28px)!important;
  margin-bottom:clamp(10px,1vw,14px)!important;
  padding:clamp(14px,1.5vw,20px) clamp(18px,2.4vw,30px)!important;
  border-radius:16px!important;
  box-shadow:0 10px 30px rgba(11,51,43,.045)!important;
}
.search-answer-card .overline{
  margin-bottom:6px!important;
  font-size:10px!important;
  letter-spacing:.13em!important;
}
.search-answer-card h2{
  max-width:1000px!important;
  font-size:clamp(22px,2.2vw,30px)!important;
  line-height:1.08!important;
}
.search-answer-card>p:last-child{
  margin-top:8px!important;
  max-width:1040px!important;
  font-size:clamp(13px,1vw,15px)!important;
  line-height:1.55!important;
}
.search-answer-card--guide,
.search-answer-card--calculator{
  margin-top:clamp(18px,2vw,28px)!important;
  margin-bottom:clamp(10px,1vw,14px)!important;
}
@media(max-width:760px){
  .search-answer-card{
    width:calc(100% - 24px)!important;
    margin:16px auto 10px!important;
    padding:14px 14px!important;
    border-radius:14px!important;
  }
  .search-answer-card .overline{margin-bottom:5px!important;font-size:9px!important}
  .search-answer-card h2{font-size:21px!important;line-height:1.1!important}
  .search-answer-card>p:last-child{margin-top:7px!important;font-size:13px!important;line-height:1.52!important}
}


/* v3.34.89.98 — Education Hub hero: eliminate excess vertical air and
   keep the Quick Library CTA beside Market Stories. Hub-only; book pages
   and other templates retain their previous design. */
body.nivata-educate-page--academy .educate-hero--academy {
  min-height: 0;
  height: auto;
  align-items: center;
  gap: clamp(26px, 4vw, 66px);
  padding: clamp(58px, 5vw, 84px) clamp(28px, 7vw, 112px) clamp(44px, 4.5vw, 72px);
}
body.nivata-educate-page--academy .educate-hero--academy .educate-hero__copy {
  max-width: 900px;
}
body.nivata-educate-page--academy .educate-hero--academy h1 {
  margin-top: 14px;
  margin-bottom: 20px;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 12px;
  width: 100%;
  margin-top: 25px;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions > a.button {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 58px;
  padding: 15px clamp(12px, 1.25vw, 20px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  font-size: clamp(11px, .94vw, 14px);
  line-height: 1.2;
  letter-spacing: .065em;
  white-space: nowrap;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-quick-library-button {
  background: transparent;
  border: 1px solid rgba(247,243,232,.55);
  color: #f7f3e8;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-quick-library-button:hover,
body.nivata-educate-page--academy .educate-hero--academy .educate-quick-library-button:focus-visible {
  background: rgba(247,243,232,.12);
  border-color: #f7f3e8;
  color: #f7f3e8;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-glossary-link {
  grid-column: 1 / -1;
  margin: 0;
  width: fit-content;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-hero-search {
  margin-top: 18px;
}
body.nivata-educate-page--academy .educate-hero--academy .educate-hero__stats {
  align-self: center;
}
@media (min-width: 721px) and (max-width: 1099px) {
  body.nivata-educate-page--academy .educate-hero--academy {
    grid-template-columns: minmax(0, 1fr);
    gap: 25px;
  }
  body.nivata-educate-page--academy .educate-hero--academy .educate-hero__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
  }
}
@media (max-width: 720px) {
  body.nivata-educate-page--academy .educate-hero--academy {
    min-height: 0 !important;
    height: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    padding: 44px 18px 32px !important;
  }
  body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 20px;
  }
  body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions > a.button {
    flex: none;
    width: 100%;
    min-height: 52px;
    padding: 12px 13px;
    font-size: 11px;
    letter-spacing: .025em;
  }
  body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions > a.button:first-child {
    grid-column: 1 / -1;
  }
  body.nivata-educate-page--academy .educate-hero--academy .educate-glossary-link {
    grid-column: 1 / -1;
    margin: 2px 0 0;
  }
}
@media (max-width: 360px) {
  body.nivata-educate-page--academy .educate-hero--academy .educate-hero__actions > a.button {
    font-size: 10px;
    padding-left: 9px;
    padding-right: 9px;
  }
}


/* v3.34.89.99 — Breadcrumb remains above the compact guide hero.
   Previously a 94px breadcrumb padding + -115px overlap was balanced by a
   132–188px hero top inset. With compact heroes, it must be normal flow. */
body.nivata-finance-guide-page .guide-breadcrumb {
  padding-top: clamp(24px, 2.8vw, 42px) !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
body.nivata-finance-guide-page main > .guide-hero.guide-hero--deep {
  padding-top: 22px !important;
}
@media (max-width: 720px) {
  body.nivata-finance-guide-page .guide-breadcrumb {
    padding-top: 24px !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  body.nivata-finance-guide-page main > .guide-hero.guide-hero--deep {
    padding-top: 18px !important;
  }
}
