/* Sistema visual opt-in para herramientas generales/gratuitas.
   Uso mínimo: body.ld-tool-page + .tool-header + .tool-main.
   Los selectores de compatibilidad migran componentes existentes sin tocar JS. */

.ld-tool-page {
  background: var(--color-background);
  color: var(--color-text-primary);
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size:16.2px;
  line-height: 1.58;
}

.ld-tool-page button,
.ld-tool-page input,
.ld-tool-page select,
.ld-tool-page textarea { font-family: inherit; }

.ld-tool-page .tool-header {
  background: var(--color-navy);
  padding: calc(var(--header-height) + 24px) clamp(18px, 5vw, 72px) 28px;
  overflow: hidden;
}

.ld-tool-page .tool-header::before { display: none; }

.ld-tool-page .tool-header .page-hero-inner {
  max-width: var(--tool-max-width);
}

.ld-tool-page .tool-header .page-hero-label {
  margin-bottom: 7px;
  color: var(--blue-bright);
  font-size:9.9px;
  letter-spacing: .1em;
}

.ld-tool-page .tool-header h1 {
  max-width: 850px;
  margin-bottom: 0;
  font-size:clamp(25.2px, 3.2vw, 36px);
  line-height: 1.08;
}

.ld-tool-page .tool-header p {
  max-width: 720px;
  color: var(--on-ink-dim);
  font-size:13.1px;
  line-height: 1.5;
}

.ld-tool-page .tool-header-layout {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-lg);
}

.ld-tool-page .tool-header-title { min-width: 0; }
.ld-tool-page .tool-title-row { display: flex; align-items: center; gap: var(--space-sm); flex-wrap: wrap; }
.ld-tool-page .tool-header-meta {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 6px;
  background: rgba(255,255,255,.09);
  color: var(--on-ink-dim);
  font-size:10.4px;
  line-height: 1;
  white-space: nowrap;
}

.ld-tool-page .tool-main,
.ld-tool-page .tool-section,
.ld-tool-page .wrap,
.ld-tool-page .search-wrap,
.ld-tool-page .content {
  width: min(100%, calc(var(--tool-max-width) + 48px));
  max-width: none;
  margin-inline: auto;
  padding-inline: 24px;
}

.ld-tool-page .tool-main,
.ld-tool-page .tool-section,
.ld-tool-page .wrap { padding-top: var(--space-lg); padding-bottom: 64px; }

/* Primitivas para herramientas nuevas. Las vistas existentes conservan sus
   clases históricas y se mapean a este mismo lenguaje más abajo. */
.ld-tool-page .tool-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-md);
  margin-bottom: var(--space-md);
}
.ld-tool-page .tool-section-head h2 { color: var(--color-navy); font-size:19.8px; line-height: 1.2; }
.ld-tool-page .tool-metadata {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: var(--space-sm);
}
.ld-tool-page .tool-meta-item { color: var(--color-text-muted); font-size:10.8px; }
.ld-tool-page .tool-meta-item strong { display: block; color: var(--color-text-primary); font-size:12.6px; }
.ld-tool-page .tool-action-link {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: var(--blue-mid);
  font:700 11.7px 'Barlow', sans-serif;
  text-decoration: underline;
  text-underline-offset: 4px;
  cursor: pointer;
}
.ld-tool-page .ticker-chip {
  display: inline-flex;
  align-items: center;
  min-height: 27px;
  padding: 0 9px;
  border-radius: 7px;
  background: var(--color-navy);
  color: #fff;
  font-size:9.9px;
  font-weight: 800;
  letter-spacing: .03em;
}

/* Superficies */
.ld-tool-page .tool-card,
.ld-tool-page .calc-card,
.ld-tool-page .rf-panel,
.ld-tool-page .rec-card,
.ld-tool-page .rec-profile-head,
.ld-tool-page .grp-item {
  background: var(--color-surface);
  border: 1px solid transparent;
  border-radius: 8px;
  box-shadow: none;
}

.ld-tool-page .calc-card,
.ld-tool-page .rf-panel,
.ld-tool-page .rec-card,
.ld-tool-page .grp-item {
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.ld-tool-page .calc-card:hover,
.ld-tool-page .rf-panel:hover,
.ld-tool-page .rec-card:hover,
.ld-tool-page .grp-item:hover {
  border-color: transparent;
  box-shadow: var(--shadow-sm);
  transform: none;
}

/* Avisos compactos */
.ld-tool-page .tool-notice,
.ld-tool-page .rec-note,
.ld-tool-page .rf-note {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 var(--space-md);
  padding: 10px 14px;
  border: 1px solid #D7E4F5;
  border-radius: var(--radius-sm);
  background: #F8FBFF;
  color: var(--color-text-secondary);
  font-size:10.8px;
  line-height: 1.5;
}

.ld-tool-page .tool-notice-icon { color: var(--color-blue); flex: 0 0 auto; }

/* Inputs y foco */
.ld-tool-page input,
.ld-tool-page select,
.ld-tool-page textarea {
  border-color: var(--color-border);
  border-radius: var(--radius-sm);
  background: #FBFCFE;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.ld-tool-page .tool-intro {
  max-width: 760px;
  margin: 0 0 22px;
  color: var(--color-text-secondary);
  font-size:13.5px;
  line-height: 1.55;
}

.ld-tool-page input:focus,
.ld-tool-page select:focus,
.ld-tool-page textarea:focus {
  outline: none;
  border-color: var(--color-blue);
  background: var(--color-surface);
  box-shadow: 0 0 0 3px rgba(0,107,250,.12);
}

.ld-tool-page button:focus-visible,
.ld-tool-page a:focus-visible,
.ld-tool-page [tabindex]:focus-visible {
  outline: 3px solid rgba(0,107,250,.28);
  outline-offset: 3px;
}

/* Calculadoras: misma grilla, menor volumen y resultados coherentes. */
.ld-tool-page .calc-panel { padding: 28px; gap: 20px 28px; }
.ld-tool-page .result-box,
.ld-tool-page .mini-result,
.ld-tool-page .allocation-item {
  border-radius: 7px;
}
.ld-tool-page .result-box.real,
.ld-tool-page .mini-result,
.ld-tool-page .allocation-item,
.ld-tool-page .difference-box { border: 1px solid transparent; }
.ld-tool-page section.chart-section,
.ld-tool-page .subtool-card { margin-top: var(--space-md); }
.ld-tool-page .subtool-card { padding: 28px; }
.ld-tool-page .tool-cta { margin-top: var(--space-lg); border-radius: var(--radius-md); }
.ld-tool-page .calculate-button { border-radius: var(--radius-sm); box-shadow: none; }
.ld-tool-page .result-box .amount,
.ld-tool-page .mini-result strong,
.ld-tool-page .chart-summary-main strong,
.ld-tool-page .field label .val {
  font-family: 'Inter', sans-serif !important;
}
.ld-tool-page .result-box .amount { font-weight: 700 !important; }

.ld-tool-page .comparison-basics {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
}
.ld-tool-page .portfolio-toggle {
  border: 0;
  padding: 7px 0;
  background: transparent;
  color: var(--blue-mid);
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Tabs segmentados de recomendaciones. */
.ld-tool-page .tool-tabs,
.ld-tool-page .rec-tabs {
  display: inline-flex;
  flex-wrap: nowrap;
  gap: 3px;
  margin-bottom: var(--space-md);
  padding: 3px;
  border: 1px solid var(--color-border);
  border-radius: 10px;
  background: #EAF0F8;
}
.ld-tool-page .tool-tab,
.ld-tool-page .rec-tab {
  gap: 8px;
  min-height: 38px;
  padding: 8px 13px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--color-text-secondary);
  box-shadow: none;
}
.ld-tool-page .tool-tab:hover,
.ld-tool-page .rec-tab:hover { background: rgba(255,255,255,.58); }
.ld-tool-page .tool-tab[aria-selected="true"],
.ld-tool-page .rec-tab.active {
  background: var(--color-surface);
  color: var(--color-navy);
  box-shadow: 0 1px 4px rgba(0,19,58,.09);
}
.ld-tool-page .rec-tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 17px;
  height: 17px;
  color: currentColor;
  flex: 0 0 auto;
}
.ld-tool-page .rec-tab-icon svg { width: 15px; height: 15px; }
.ld-tool-page .rec-tab-count {
  min-width: 22px;
  padding: 1px 6px;
  background: transparent;
  color: var(--color-text-muted);
}
.ld-tool-page .rec-tab.active .rec-tab-count { background: var(--color-blue-soft); color: var(--blue-mid); }
.ld-tool-page .tool-header .rec-update { display: inline-flex; margin: 0; }
.ld-tool-page .tool-header .rec-update:empty { display: none; }
.ld-tool-page .tool-header .rec-tabs {
  flex: 0 0 auto;
  margin: 0;
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
}
.ld-tool-page .tool-header .rec-tab { color: var(--on-ink-dim); }
.ld-tool-page .tool-header .rec-tab:hover { background: rgba(255,255,255,.07); color: #fff; }
.ld-tool-page .tool-header .rec-tab.active {
  background: var(--color-blue);
  color: #fff;
  box-shadow: none;
}
.ld-tool-page .tool-header .rec-tab-count,
.ld-tool-page .tool-header .rec-tab.active .rec-tab-count { background: transparent; color: inherit; }
.ld-tool-page .rec-profile-head { padding: 18px 20px; margin-bottom: var(--space-md); }
.ld-tool-page .rec-profile-head > :last-child { flex: 1; min-width: 0; }
.ld-tool-page .rec-profile-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: var(--color-blue-soft);
  color: var(--color-blue);
  flex: 0 0 auto;
}
.ld-tool-page .rec-profile-icon svg { width: 18px; height: 18px; }
.ld-tool-page .rec-card-head { grid-template-columns: auto minmax(0,1fr) auto; }
.ld-tool-page .rec-card-ticker,
.ld-tool-page .rf-fund-ticker {
  width: auto;
  min-width: 48px;
  height: 27px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 9px;
  border-radius: 7px;
  background: var(--color-navy);
  color: #fff;
  line-height: 1;
}
.ld-tool-page .rec-card-ticker span,
.ld-tool-page .rf-fund-ticker { color: #fff; font-size:9.9px; letter-spacing: .03em; word-break: normal; }
/* Ticker de recomendaciones: contenedor sin esquinas redondeadas y tipografía
   remarcada (pedido explícito) — no toca .rf-fund-ticker, que comparte la
   caja base de arriba pero conserva su propio tamaño. */
.ld-tool-page .rec-card-ticker { border-radius: 0; min-width: 54px; height: 32px; padding: 0 11px; }
.ld-tool-page .rec-card-ticker span { font-size:13.5px; font-weight: 800; letter-spacing: .01em; }
.ld-tool-page .rec-chevron { background: transparent; }

/* Recomendador: panel más denso y opciones claramente distintas del CTA. */
.ld-tool-page .rf-panel { padding: 30px 32px; }
.ld-tool-page .rf-progress { margin-bottom: 24px; }
.ld-tool-page .rf-question { margin-bottom: 22px; }
.ld-tool-page .rf-options { gap: 10px; margin-bottom: 24px; }
.ld-tool-page .rf-option { padding: 15px 16px; border-radius: var(--radius-sm); }
.ld-tool-page .rf-option:hover { transform: none; background: #FBFCFE; }
.ld-tool-page .rf-option.is-selected { box-shadow: none; }
.ld-tool-page .rf-fund-card { border-radius: var(--radius-md); box-shadow: none; }
.ld-tool-page .rf-detail-toggle {
  justify-content: flex-start;
  width: max-content;
  padding: 7px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

/* Guía: jerarquía editorial, menos iconografía y menos cajas anidadas. */
.ld-tool-page .search-wrap { padding-top: var(--space-lg); }
.ld-tool-page .content { padding-top: var(--space-md); padding-bottom: 64px; }
.ld-tool-page .grp-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: var(--color-blue-soft);
  color: var(--color-blue);
  box-shadow: none;
}
.ld-tool-page .grp-icon::after { display: none; }
.ld-tool-page .grp-icon svg { width: 17px; height: 17px; }
.ld-tool-page .grp-icon svg[fill="#fff"] { fill: currentColor; }
.ld-tool-page .grp-icon svg [fill="#fff"] { fill: currentColor; }
.ld-tool-page .grp-icon svg[stroke="#fff"],
.ld-tool-page .grp-icon svg [stroke="#fff"] { stroke: currentColor; }
.ld-tool-page .grp-icon svg [fill="#00133A"] { fill: currentColor; }
.ld-tool-page .inst-icon { display: flex; }
.ld-tool-page .grp-btn { padding: 17px 20px; gap: 12px; }
.ld-tool-page .grp-chevron,
.ld-tool-page .inst-chevron,
.ld-tool-page .faq-chevron { background: transparent; }
.ld-tool-page .grp-item.open { box-shadow: var(--shadow-sm); }
.ld-tool-page .grp-body-inner { background: #F8FAFD; }
.ld-tool-page .inst-item,
.ld-tool-page .faq-item { border-width: 1px; }
.ld-tool-page .grp-item,
.ld-tool-page .inst-item,
.ld-tool-page .faq-item,
.ld-tool-page .rf-panel,
.ld-tool-page .rf-fund-card,
.ld-tool-page .rec-card,
.ld-tool-page .rec-profile-head,
.ld-tool-page .result-box,
.ld-tool-page .mini-result,
.ld-tool-page .allocation-item,
.ld-tool-page .chart-callout,
.ld-tool-page .portfolio-teaser,
.ld-tool-page .box {
  border-color: transparent !important;
  border-radius: 8px !important;
}
.ld-tool-page .pedagogy-note { font-style: normal; }

@media (max-width: 760px) {
  .ld-tool-page .tool-header {
    padding: calc(var(--header-height) + 20px) 18px 22px;
  }
  .ld-tool-page .tool-header h1 { font-size:clamp(23.4px, 8vw, 28.8px); }
  .ld-tool-page .tool-header p { font-size:12.2px; line-height: 1.45; }
  .ld-tool-page .tool-header-layout { display: block; }
  .ld-tool-page .tool-header-layout > :last-child { margin-top: 18px; }
  .ld-tool-page .tool-main,
  .ld-tool-page .tool-section,
  .ld-tool-page .wrap,
  .ld-tool-page .search-wrap,
  .ld-tool-page .content { padding-inline: 18px; }
  .ld-tool-page .tool-main,
  .ld-tool-page .tool-section,
  .ld-tool-page .wrap { padding-top: 24px; padding-bottom: 48px; }
  .ld-tool-page .calc-panel { padding: 22px 18px; }
  .ld-tool-page .subtool-card { padding: 22px 18px; }
  .ld-tool-page .rf-panel { padding: 24px 18px; }
  .ld-tool-page .tool-tabs,
  .ld-tool-page .rec-tabs {
    display: flex;
    width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .ld-tool-page .tool-header .rec-tabs { margin-top: 18px; }
  .ld-tool-page .tool-header .rec-tab {
    flex: 1 1 0;
    min-width: 0;
    gap: 4px;
    padding: 8px 6px;
    font-size:10.4px;
  }
  .ld-tool-page .tool-header .rec-tab-icon { width: 14px; height: 14px; }
  .ld-tool-page .tool-header .rec-tab-icon svg { width: 13px; height: 13px; }
  .ld-tool-page .tool-tab,
  .ld-tool-page .rec-tab { flex: 1 0 auto; justify-content: center; }
  .ld-tool-page .rec-card-head { grid-template-columns: auto minmax(0,1fr) 20px; }
  .ld-tool-page .rec-card-ticker { min-width: 42px; height: 25px; }
  .ld-tool-page .comparison-basics { grid-template-columns: 1fr; gap: 0; }
}

@media (max-width: 560px) {
  .ld-tool-page .tool-header p { max-width: 44ch; }
  .ld-tool-page .rf-options { grid-template-columns: 1fr; }
  .ld-tool-page .rf-option { padding: 14px; }
  .ld-tool-page .rec-profile-head { padding: 16px; }
  .ld-tool-page .rec-card-details { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .ld-tool-page .faq-answer-inner { padding-left: 16px; }
  .ld-tool-page .tool-section-head { display: block; }
  .ld-tool-page .tool-section-head > :last-child { margin-top: var(--space-sm); }
  .ld-tool-page .tool-metadata { grid-template-columns: repeat(2, minmax(0,1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .ld-tool-page *,
  .ld-tool-page *::before,
  .ld-tool-page *::after { scroll-behavior: auto !important; }
}

/* Escala tipográfica auditada para pantallas estándar y de baja resolución.
   Evita texto operativo menor a 14px; captions y ticker quedan como únicas
   excepciones porque son información secundaria y de pocas palabras. */
.ld-tool-page .tool-header .page-hero-label { font-size:11.7px; font-weight: 500; }
.ld-tool-page .tool-header h1 { font-size:clamp(30.6px, 3.5vw, 41.4px); font-weight: 600; }
.ld-tool-page .tool-header-meta { font-size:12.6px; }
.ld-tool-page .tool-intro { max-width: 860px; font-size:17.1px; line-height: 1.6; }

.ld-tool-page .tool-notice,
.ld-tool-page .rec-note,
.ld-tool-page .rf-note { font-size:14px; }
.ld-tool-page .tool-section-head h2,
.ld-tool-page section.chart-section h2,
.ld-tool-page .subtool-head h2,
.ld-tool-page .allocation-head h2,
.ld-tool-page .portfolio-teaser h2 { font-size:23.4px; font-weight: 600; }
.ld-tool-page .tool-meta-item { font-size:13.1px; }
.ld-tool-page .tool-meta-item strong { font-size:14.4px; }
.ld-tool-page .tool-action-link,
.ld-tool-page .portfolio-toggle,
.ld-tool-page .rf-detail-toggle,
.ld-tool-page .recalculate-all-button { font-family: inherit; font-size:14.4px; font-weight: 500; }

.ld-tool-page .field label { font-size:14.4px; }
.ld-tool-page .field label .val { font-size:15.3px; font-weight: 600; }
.ld-tool-page .field-help { font-size:14px; line-height: 1.55; }
.ld-tool-page input,
.ld-tool-page select,
.ld-tool-page textarea { font-size:15.3px; }
.ld-tool-page .calc-panel input[type="number"] { font-size:15.3px; }
.ld-tool-page .check-field { font-size:14.4px; }
.ld-tool-page .col-title { font-size:19.8px; font-weight: 600; }
.ld-tool-page .calculate-button { font-family: inherit; font-size:15.3px; font-weight: 600; }
.ld-tool-page .calc-processing,
.ld-tool-page .chart-callout,
.ld-tool-page .winner-banner,
.ld-tool-page .warning { font-size:14.4px; }

.ld-tool-page .result-box .label,
.ld-tool-page .mini-result .label { font-size:13.1px; }
.ld-tool-page .result-box .sub,
.ld-tool-page .mini-result span,
.ld-tool-page .allocation-item span { font-size:13.5px; line-height: 1.5; }
.ld-tool-page section.chart-section .desc,
.ld-tool-page .portfolio-teaser p,
.ld-tool-page .tool-cta p { font-size:15.3px; line-height: 1.65; }
.ld-tool-page .legend-row,
.ld-tool-page .portfolio-disclaimer,
.ld-tool-page .allocation-note,
.ld-tool-page .disclaimer { font-size:13.5px; line-height: 1.6; }
.ld-tool-page .portfolio-meta span { font-size:13.1px; }

.ld-tool-page .tool-tab,
.ld-tool-page .rec-tab { font-size:13.5px; font-weight: 500; }
.ld-tool-page .rec-update { font-size:13.1px; }
.ld-tool-page .rec-profile-title { font-size:21.6px; font-weight: 600; }
.ld-tool-page .rec-profile-desc { font-size:14.9px; line-height: 1.65; }
.ld-tool-page .rec-card-name { font-size:18px; font-weight: 600; }
.ld-tool-page .rec-card-desc { font-size:14.4px; }
.ld-tool-page .rec-detail-label { font-size:10.8px; font-weight: 600; }
.ld-tool-page .rec-detail-value { font-size:14.4px; }
.ld-tool-page .rec-badge { font-size:11.7px; }
.ld-tool-page .rec-comment-box,
.ld-tool-page .rec-empty-sub,
.ld-tool-page .rec-loading,
.ld-tool-page .rec-error { font-size:14.4px; }

.ld-tool-page .rf-eyebrow { font-size:11.7px; font-weight: 600; }
.ld-tool-page .rf-question,
.ld-tool-page .rf-results-title { font-size:clamp(25.2px, 3vw, 30.6px); font-weight: 600; }
.ld-tool-page .rf-option strong { font-size:16.2px; }
.ld-tool-page .rf-option span,
.ld-tool-page .rf-results-sub,
.ld-tool-page .rf-state p { font-size:14.4px; }
.ld-tool-page .rf-back { font-size:14.4px; }
.ld-tool-page .rf-fund-name { font-size:18.9px; font-weight: 600; }
.ld-tool-page .rf-fund-note,
.ld-tool-page .rf-objetivo-text { font-size:14.4px; }
.ld-tool-page .rf-detail-h,
.ld-tool-page .rf-stat-label { font-size:10.8px; }
.ld-tool-page .rf-stat-value { font-size:14.4px; }
.ld-tool-page .rf-perf-label,
.ld-tool-page .rf-perf-value,
.ld-tool-page .rf-comp-legend-item,
.ld-tool-page .rf-holdings-row { font-size:12.2px; }
.ld-tool-page .rf-disclaimer { font-size:13.5px; }

.ld-tool-page .search-box input { font-size:15.3px; }
.ld-tool-page .search-hint { font-size:13.1px; }
.ld-tool-page .grp-title { font-size:18px; font-weight: 600; }
.ld-tool-page .grp-sub { font-size:13.5px; }
.ld-tool-page .inst-title { font-size:15.3px; }
.ld-tool-page .faq-q-text { font-size:15.3px; }
.ld-tool-page .faq-answer p { font-size:15.3px; line-height: 1.75; }
.ld-tool-page .box,
.ld-tool-page .decision-block p,
.ld-tool-page .pedagogy-note { font-size:14px; }
.ld-tool-page .box-label { font-size:10.4px; }

@media (max-width: 760px) {
  .ld-tool-page .tool-header h1 { font-size:clamp(27.9px, 8vw, 32.4px); }
  .ld-tool-page .tool-intro { font-size:16.2px; }
  .ld-tool-page .tool-header .rec-tab { font-size:11.7px; }
  .ld-tool-page .tool-section-head h2,
  .ld-tool-page section.chart-section h2,
  .ld-tool-page .subtool-head h2,
  .ld-tool-page .allocation-head h2,
  .ld-tool-page .portfolio-teaser h2 { font-size:21.6px; }
}

/* Las calculadoras forman parte del lienzo de la página: los bloques grandes
   no agregan una tarjeta blanca alrededor de todo el contenido. */
.ld-tool-page .calc-card,
.ld-tool-page .calc-card:hover,
.ld-tool-page section.chart-section,
.ld-tool-page .subtool-card,
.ld-tool-page .portfolio-teaser {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.ld-tool-page .calc-panel { padding-inline: 0; }
.ld-tool-page section.chart-section,
.ld-tool-page .subtool-card,
.ld-tool-page .portfolio-teaser { padding-inline: 0; }
