/* =====================================================================
   Louisiana 529 (lad) — site styles
   Loaded after global bootstrap@5.3.3 + base-ui.css + lad/migration.css.
   Per-site (only on the LA 529 root node) so overrides of shared markup
   (navbar/footer/alert) are scoped to this site only.

   Component classes (.feature-card, .gradient-panel, .cta-banner, .eyebrow,
   .numbered, .lad-divider) are applied to Block Grid blocks via the block's
   ColumnsSettings "additionalClasses" or authored inside blockRichText.
   ===================================================================== */

/* ---------- Fonts (Circe is proprietary -> Mulish stand-in; swap when licensed) ---------- */
@import url("https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,400;0,700;0,800;1,400&family=Nunito+Sans:ital,opsz,wght@0,6..12,400;0,6..12,700;0,6..12,800&display=swap");

:root {
  --la-teal: #01847f;
  --la-teal-dark: #016b67;
  --la-green: #047940;
  --la-blue: #254490;
  --la-blue-deep: #054c70;
  --la-yellow: #fcd856;
  --la-orange: #fbb040;
  --la-text: #292929;
  --la-gray-60: #666666;
  --la-gray-50: #4c5c5c;
  --la-gray-20: #c3c3c3;
  --la-gray-10: #e6e6e6;
  --la-gray-05: #f2f2f2;
  --la-radius-btn: 4px;
  --la-radius-card: 8px;
  --la-shadow-card: 0 0 8px rgba(86, 92, 104, .15), 0 0 2px rgba(86, 92, 104, .10);
  --la-divider: linear-gradient(90deg, #01847f 0%, #254490 100%);
  --la-gradient-panel: linear-gradient(135deg, #254490 0%, #01847f 100%);
  --la-font-head: "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --la-font-body: "Mulish", "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --la-container: 75rem;
  --la-section-y: 5rem;
}

/* ---------- Typography (Figma: Nunito headings, Circe/Mulish body 18/22.5) ---------- */
body {
  font-family: var(--la-font-body);
  font-size: 1.125rem;
  line-height: 1.25;
  color: var(--la-text);
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4 {
  font-family: var(--la-font-head);
  line-height: 1.1;
}

h1,
.h1 {
  font-size: clamp(2.25rem, 1.5rem + 2.6vw, 3rem);
  font-weight: 800;
  color: var(--la-blue);
}

h2,
.h2 {
  font-size: clamp(1.75rem, 1.2rem + 1.8vw, 2.25rem);
  font-weight: 800;
  color: var(--la-teal);
  line-height: 1;
}

h3,
.h3 {
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--la-teal);
  line-height: 1.09;
}

p {
  margin-bottom: 1rem;
}

p:last-child {
  margin-bottom: 0;
}

.lead {
  font-size: 1.125rem;
  line-height: 1.25;
}

.eyebrow {
  font-family: var(--la-font-body);
  font-size: .875rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--la-teal);
  margin-bottom: .5rem;
}

.hero h1,
.hero .h1 {
  color: var(--la-teal);
  font-size: 2.25rem;
  line-height: 1;
}

.cta-banner h2 {
  color: var(--la-teal);
  font-size: 2.25rem;
  line-height: 1;
  margin: 0 0 1.5rem;
}

.cta-banner__content p {
  margin-bottom: 1.5rem;
}

.cta-banner .btn {
  margin: 0;
  padding: .5rem 1rem;
  min-height: 2.9375rem;
}

/* Figma nav: 24px vertical padding, logo 60px */
@media (min-width: 992px) {
  header.bg-white .navbar-main .container {
    max-width: var(--la-container);
    padding-block: 1.5rem;
  }
}

.btn {
  --bs-btn-border-radius: var(--la-radius-btn);
  font-family: var(--la-font-body);
  font-weight: 800;
  letter-spacing: .04em;
  padding: .75rem 1.4rem;
}

/* ---------- Focus ---------- */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--la-blue-deep);
  outline-offset: 2px;
  box-shadow: none;
}

/* ---------- Gradient divider (Figma: 23px under header) ---------- */
.lad-divider {
  height: 23px;
  border: 0;
  margin: 0;
  opacity: 1;
  background: var(--la-divider);
}

/* ---------- Section rhythm (Figma: 80px vertical padding, 1200px content) ---------- */
.section {
  padding-block: var(--la-section-y);
}

.section>.container {
  max-width: var(--la-container);
}

.section--gray {
  background: var(--la-gray-05);
}

/* ---------- Feature cards (icon badge + centered) ---------- */
.feature-card {
  height: 100%;
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-card);
  box-shadow: var(--la-shadow-card);
  padding: 2rem 1.75rem;
  text-align: center;
  background: #fff;
}

.feature-card .feature-card__icon {
  width: 64px;
  height: 64px;
  border-radius: var(--la-radius-card);
  background: var(--la-teal);
  color: #fff;
  display: inline-grid;
  place-items: center;
  margin-bottom: 1rem;
}

.feature-card .feature-card__icon svg {
  width: 32px;
  height: 32px;
}

.feature-card .feature-card__icon .bi {
  font-size: 2rem;
  line-height: 1;
}

.feature-card--horizontal .feature-card__icon .bi {
  font-size: 2.25rem;
}

.feature-card h3 {
  color: var(--la-teal);
}

.feature-card p:last-child {
  margin-bottom: 0;
}

.feature-card .btn {
  margin-top: 1.25rem;
}

.feature-card--start {
  text-align: start;
}

.feature-card--start .feature-card__icon {
  justify-self: start;
}

/* Bulleted lists inside cards use solid disc bullets (not the browser's nested circle) */
.feature-card ul {
  list-style-type: disc;
  padding-left: 1.25rem;
  margin: 0;
  display: grid;
  gap: .35rem;
}

/* ---------- Gradient panel + horizontal cards (Why choose) ---------- */
.gradient-panel {
  background: var(--la-gradient-panel);
  border-radius: var(--la-radius-card);
  padding: 2rem;
  display: grid;
  gap: 1.25rem;
}

.feature-card--horizontal {
  display: flex;
  align-items: center;
  gap: 1rem;
  text-align: start;
  padding: 1.5rem;
}

.feature-card--horizontal .feature-card__icon {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  background: transparent;
  color: var(--la-teal);
  margin: 0;
}

.feature-card--horizontal .feature-card__icon svg {
  width: 40px;
  height: 40px;
}

.feature-card--horizontal h3 {
  margin-bottom: .35rem;
  color: var(--la-text);
  font-size: 1.375rem;
}

.feature-card--horizontal .feature-card__icon {
  color: var(--la-teal);
}

.feature-card .card-footnote {
  font-size: .8125rem;
  color: var(--la-gray-60);
  margin-top: .5rem;
}

/* ---------- Numbered list (plain decimal numbers, per Figma) ---------- */
.numbered {
  list-style: decimal;
  display: grid;
  gap: 1.1rem;
  padding-left: 1.5rem;
  margin: 0;
}

.numbered>li {
  padding-left: .25rem;
}

.numbered ul {
  margin-top: .5rem;
  padding-left: 1.25rem;
  list-style: disc;
  display: grid;
  gap: .5rem;
}

/* ---------- CTA banner (Figma node 6188:6511) ---------- */
.section.section--cta {
  background: var(--la-gray-05);
  padding: 2.5rem clamp(1.5rem, 8vw, 7.5rem);
}

.section.section--cta>.container {
  max-width: var(--la-container);
  padding: 0;
}

.cta-banner {
  border: 1px solid var(--la-text);
  border-radius: var(--la-radius-card);
  overflow: hidden;
  background: #fff;
  max-width: var(--la-container);
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding-top: 1.5rem;
}

.cta-banner__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7.875rem;
  width: 100%;
  padding-inline: clamp(1.5rem, 4vw, 3rem);
}

.cta-banner__media {
  flex: 0 0 24rem;
  width: 24rem;
  max-width: 100%;
  height: 13.25rem;
  border-radius: var(--la-radius-card);
  overflow: hidden;
  position: relative;
}

.cta-banner__media img {
  position: absolute;
  left: 0;
  width: 100%;
  height: 271.66%;
  max-width: none;
  top: -83.52%;
  display: block;
}

.cta-banner__content {
  flex: 0 1 30.375rem;
  max-width: 30.375rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.cta-banner h2 {
  margin: 0;
}

.cta-banner__content p {
  margin: 0;
}

.cta-banner .btn {
  margin: 0;
  min-height: 2.9375rem;
  padding: .5rem 1rem;
  font-size: 1.125rem;
  letter-spacing: .02em;
}

.cta-banner__bar {
  height: 2rem;
  width: 100%;
  background: var(--la-divider);
  border-radius: 0 0 var(--la-radius-card) var(--la-radius-card);
}

@media (max-width: 991.98px) {
  .cta-banner__inner {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    gap: 1.5rem;
  }

  .cta-banner__media {
    flex: none;
    width: 100%;
    height: auto;
    aspect-ratio: 384 / 212;
  }

  .cta-banner__content {
    flex: none;
    max-width: none;
    align-items: center;
  }

  .cta-banner .btn {
    width: 100%;
    max-width: 20rem;
  }
}

/* ---------- Benefit / nav tiles (Figma home + landing pages) ---------- */
.benefit-card {
  height: 100%;
  border: 1px solid var(--la-text);
  border-radius: var(--la-radius-card);
  padding: 1.5rem;
  background: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}

.benefit-card__icon {
  width: 4.5rem;
  height: 4.5rem;
  border-radius: var(--la-radius-btn);
  background: var(--la-teal);
  color: #fff;
  display: grid;
  place-items: center;
}

.benefit-card__icon .lad-ico {
  width: 3rem;
  height: 3rem;
}

.benefit-card h3 {
  color: var(--la-teal);
  margin: 0;
}

.benefit-card p {
  margin: 0;
}

.nav-tile {
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-card);
  box-shadow: var(--la-shadow-card);
  padding: 2rem 1.75rem;
  text-align: center;
  background: #fff;
  color: inherit;
  transition: box-shadow .2s ease, transform .2s ease;
}

.nav-tile:hover {
  box-shadow: var(--la-shadow-card);
  transform: translateY(-2px);
}

.nav-tile__icon {
  width: 4rem;
  height: 4rem;
  border-radius: var(--la-radius-card);
  background: var(--la-teal);
  color: #fff;
  display: inline-grid;
  place-items: center;
  margin-bottom: 1rem;
}

.nav-tile__icon .lad-ico {
  width: 2rem;
  height: 2rem;
}

.nav-tile h3 {
  color: var(--la-teal);
}

.btn-outline-teal {
  --bs-btn-color: var(--la-teal);
  --bs-btn-border-color: var(--la-teal);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--la-teal);
  --bs-btn-hover-border-color: var(--la-teal);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--la-teal-dark);
  --bs-btn-active-border-color: var(--la-teal-dark);
  background: #fff;
}

/* ---------- Savings chart (Contribute page) ---------- */
.savings-chart {
  max-width: 36rem;
}

.savings-chart__title {
  font-family: var(--la-font-head);
  font-size: 1.375rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1.5rem;
  color: var(--la-text);
}

.savings-chart__plot {
  margin-bottom: 1rem;
}

.savings-chart__label {
  font-size: .875rem;
  letter-spacing: .06em;
  margin-bottom: .5rem;
}

.savings-chart__bars {
  display: flex;
  align-items: flex-end;
  gap: 1.25rem;
  min-height: 16rem;
  padding-top: 2rem;
}

.savings-chart__bar {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
  min-width: 0;
}

.savings-chart__value {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  padding: .5rem .25rem 0;
  font-size: 1.125rem;
  text-align: center;
}

.savings-chart__age {
  font-size: .875rem;
  letter-spacing: .06em;
}

.savings-chart__bar--1 .savings-chart__value {
  background: var(--la-yellow);
  min-height: 2rem;
}

.savings-chart__bar--5 .savings-chart__value {
  background: var(--la-orange);
  min-height: 5.5rem;
}

.savings-chart__bar--10 .savings-chart__value {
  background: var(--la-blue);
  color: #fff;
  min-height: 10rem;
}

.savings-chart__bar--15 .savings-chart__value {
  background: var(--la-teal);
  color: #fff;
  min-height: 15.5rem;
}

.savings-chart__footnote {
  font-size: .875rem;
  line-height: 1.14;
  letter-spacing: .06em;
  color: #1a1a1a;
  margin: 0;
}

/* ---------- Numbered steps in gradient panel ---------- */
.lad-step {
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  border: 2px solid var(--la-teal);
  display: grid;
  place-items: center;
  font-family: var(--la-font-head);
  font-weight: 800;
  font-size: 1.125rem;
  color: var(--la-teal);
  background: #fff;
}

.lad-step::before {
  content: attr(data-step);
}

.section--gradient-slab .gradient-panel .feature-card--horizontal {
  background: #fff;
  border-radius: var(--la-radius-card);
  padding: 1rem;
  box-shadow: none;
}

/* ---------- Form list cards (Forms page) ---------- */
.form-list {
  display: grid;
  gap: 1rem;
}

.form-card {
  display: grid;
  grid-template-columns: 1fr auto;
  column-gap: 1.5rem;
  align-items: center;
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-card);
  padding: 1.25rem 1.5rem;
  background: #fff;
  box-shadow: var(--la-shadow-card);
  text-decoration: none;
  transition: border-color .15s ease;
}

.form-card:hover,
.form-card:focus-visible {
  border-color: var(--la-teal);
}

.form-card h3 {
  grid-column: 1;
  grid-row: 1;
  text-align: left;
  color: var(--la-teal);
  font-size: 1.0625rem;
  margin: 0 0 .35rem;
}

.form-card p {
  grid-column: 1;
  grid-row: 2;
  text-align: left;
  color: var(--la-text);
  margin: 0;
  font-size: .9375rem;
}

.form-card .form-card__icon {
  grid-column: 2;
  grid-row: 1 / 3;
  align-self: center;
  justify-self: end;
  color: var(--la-teal);
  font-size: 1.625rem;
  line-height: 1;
}

.form-category {
  font-family: var(--la-font-head);
  font-weight: 800;
  text-align: center;
  font-size: 1.5rem;
  margin: 2.75rem 0 1.25rem;
}

.form-category:first-child {
  margin-top: 0;
}

/* "View All Available Forms" disclosure — extra categories hidden until expanded */
.forms-disclosure {
  text-align: center;
  margin-top: 2.25rem;
}

.forms-disclosure>summary {
  display: inline-block;
  cursor: pointer;
  list-style: none;
}

.forms-disclosure>summary::-webkit-details-marker {
  display: none;
}

.forms-disclosure>summary::marker {
  content: "";
}

.forms-disclosure[open]>summary {
  display: none;
}

.forms-disclosure .forms-more {
  text-align: left;
}

.forms-disclosure .forms-more .form-category:first-child {
  margin-top: 0;
}

/* ---------- FAQ accordion (native details) ---------- */
.faq-accordion {
  display: grid;
  gap: 1rem;
}

.faq-accordion details {
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-card);
  background: #fff;
  box-shadow: var(--la-shadow-card);
}

.faq-accordion summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  cursor: pointer;
  list-style: none;
  padding: 1.1rem 1.5rem;
  font-family: var(--la-font-head);
  font-weight: 800;
  color: var(--la-text);
}

.faq-accordion summary::-webkit-details-marker {
  display: none;
}

.faq-accordion .faq-chevron {
  flex: 0 0 auto;
  color: var(--la-teal);
  transition: transform .2s ease;
}

.faq-accordion details[open] .faq-chevron {
  transform: rotate(180deg);
}

.faq-accordion details> :not(summary) {
  padding: 0 1.5rem 1.25rem;
  margin: 0;
}

.faq-accordion details>ul,
.faq-accordion details>ol {
  padding-left: 3rem;
}

/* ---------- LAD FAQ built-in accordion (Figma 6521:59740) ---------- */
/* Scoped to .lad-faq-detail-section only — does not change shared accordion for other plans. */
.lad-faq-detail-section {
  padding-block: 2.5rem 6.25rem;
  background: #fff;
}

.lad-faq-detail-section h3,
.lad-faq-detail-section h3.pt-3 {
  padding: 3rem .5rem 1rem !important;
  padding-top: 3rem !important;
}

.lad-faq-detail-section .accordion-container {
  max-width: 75rem;
  margin-inline: auto;
  width: 100%;
}

.lad-faq-detail-section .accordion {
  display: flex;
  flex-direction: column;
  gap: 2.5rem; /* 40px between items */
  --bs-accordion-border-width: 0;
  --bs-accordion-border-radius: 0;
  --bs-accordion-inner-border-radius: 8px;
  --bs-accordion-btn-padding-x: 1.5rem;
  --bs-accordion-btn-padding-y: 1.5rem;
  --bs-accordion-btn-color: #292929;
  --bs-accordion-btn-bg: #fff;
  --bs-accordion-active-color: #292929;
  --bs-accordion-active-bg: #fff;
  --bs-accordion-btn-focus-border-color: #292929;
  --bs-accordion-btn-focus-box-shadow: none;
  --bs-accordion-body-padding-x: 1rem;
  --bs-accordion-body-padding-y: 0;
}

.lad-faq-detail-section .accordion-item {
  background: transparent;
  border: 0;
}

.lad-faq-detail-section .accordion-header {
  margin: 0;
}

.lad-faq-detail-section .accordion-button {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  min-height: 4.5rem; /* 72px */
  padding: 1.5rem;
  font-family: var(--la-font-body, Circe, sans-serif);
  font-weight: 800;
  font-size: 1.125rem;
  line-height: 1.25;
  letter-spacing: 0.02em;
  color: #292929 !important;
  background-color: #fff !important;
  border: 1px solid #292929;
  border-radius: 8px !important;
  box-shadow: none !important;
}

/* Kill shared base-ui left accent bar / filled open state for LAD FAQ only */
.lad-faq-detail-section .accordion-button::before {
  content: none !important;
  display: none !important;
}

.lad-faq-detail-section .accordion-button:hover,
.lad-faq-detail-section .accordion-button:focus,
.lad-faq-detail-section .accordion-button:active,
.lad-faq-detail-section .accordion-button:not(.collapsed),
.lad-faq-detail-section .accordion-button:not(.collapsed):hover {
  color: #292929 !important;
  background-color: #fff !important;
  box-shadow: none !important;
}

.lad-faq-detail-section .accordion-button:focus-visible {
  outline: 3px solid var(--la-blue-deep, #1a3366);
  outline-offset: 3px;
}

/* Teal chevron: asset is chevron-up; point down when collapsed */
.lad-faq-detail-section .accordion-button::after {
  flex: 0 0 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  margin-left: auto;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.469 6.969a.75.75 0 0 1 1.062 0l9 9a.75.75 0 1 1-1.062 1.062L12 8.56l-8.469 8.47A.75.75 0 0 1 2.47 15.97l9-9Z' fill='%2301847F'/%3E%3C/svg%3E");
  background-size: 1.5rem 1.5rem;
  background-repeat: no-repeat;
  background-position: center;
  transform: rotate(180deg);
  transition: transform 0.2s ease;
}

.lad-faq-detail-section .accordion-button:not(.collapsed)::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.469 6.969a.75.75 0 0 1 1.062 0l9 9a.75.75 0 1 1-1.062 1.062L12 8.56l-8.469 8.47A.75.75 0 0 1 2.47 15.97l9-9Z' fill='%2301847F'/%3E%3C/svg%3E");
  transform: rotate(0deg);
}

/* Answer sits below the bordered trigger (Figma Answer Frame) */
.lad-faq-detail-section .accordion-collapse {
  border: 0;
}

.lad-faq-detail-section .accordion-body {
  padding: 1.5rem 1rem 0; /* 24px gap + 16px horizontal */
  font-size: 1.125rem;
  line-height: 1.25;
  color: #292929;
}

.lad-faq-detail-section .accordion-body > :first-child {
  margin-top: 0;
}

.lad-faq-detail-section .accordion-body > :last-child {
  margin-bottom: 0;
}

.lad-faq-detail-section .accordion-body p {
  margin: 0 0 1.125rem;
  font-size: 1.125rem;
  line-height: 1.25;
}

.lad-faq-detail-section .accordion-body p:last-child {
  margin-bottom: 0;
}

.lad-faq-detail-section .accordion-body ul,
.lad-faq-detail-section .accordion-body ol {
  margin: 0;
  padding-left: 1.5rem;
}

.lad-faq-detail-section .accordion-body li {
  margin-bottom: 0.75rem;
}

.lad-faq-detail-section .accordion-body li:last-child {
  margin-bottom: 0;
}

@media (max-width: 991.98px) {
  .lad-faq-detail-section {
    padding-block: 2rem 4rem;
  }

  .lad-faq-detail-section .accordion {
    gap: 1.5rem;
  }

  .lad-faq-detail-section .accordion-button {
    min-height: 3.5rem;
    padding: 1rem 1.25rem;
    gap: 1rem;
    font-size: 1.0625rem;
  }
}

@media (max-width: 575.98px) {
  .lad-faq-detail-section .accordion-button {
    align-items: flex-start;
    padding: 1rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lad-faq-detail-section .accordion-button::after {
    transition: none;
  }
}

@media (forced-colors: active) {
  .lad-faq-detail-section .accordion-button {
    border: 2px solid CanvasText;
  }
}

/* ---------- Readable measure / note ---------- */
.measure {
  max-width: 48rem;
}

.note {
  font-size: .9375rem;
  color: var(--la-gray-60);
}

/* ---------- Header (shared _HeaderRegular markup; scoped to lab) ----------
   Shared markup: <header class="bg-white"> > [#skip-to-main] > .alert-banner > nav.navbar-main
   Figma order is nav THEN notice, with a gradient divider under the nav on every page.
   Reorder via flex + add the divider as the navbar's bottom border-image. */
header.bg-white {
  display: flex;
  flex-direction: column;
  background: #fff;
  position: relative;
  z-index: 1030;
}

/* Keep dropdown menus above page content (bleed images use position+z-index). */
.navbar-main {
  position: relative;
  z-index: 1031;
}

.navbar-main .dropdown-menu {
  z-index: 1032;
}

header.bg-white>#skip-to-main {
  order: 0;
}

header.bg-white>.navbar-main {
  order: 1;
  border-style: solid;
  border-width: 0 0 23px;
  border-image: var(--la-divider) 1;
}

header.bg-white>.alert-banner {
  order: 2;
}

.navbar-main .navbar-logo img {
  height: 60px;
  width: auto;
}

.navbar-main .nav-link {
  color: var(--la-text);
  font-weight: 700;
}

.navbar-main .nav-link:hover,
.navbar-main .nav-link:focus,
.navbar-main .show>.nav-link {
  color: var(--la-teal);
}

/* Active link: colour change only (no underline) — matches Figma. */
.navbar-main .nav-link.active {
  color: var(--la-teal);
}

/* Dropdown caret: a teal chevron (Figma) with breathing room from the label. */
.navbar-main .dropdown-toggle::after {
  display: inline-block;
  width: .45em;
  height: .45em;
  margin-left: .65em;
  border: 0;
  border-right: 2px solid var(--la-teal);
  border-bottom: 2px solid var(--la-teal);
  transform: translateY(-2px) rotate(45deg);
  vertical-align: middle;
}

.navbar-main .dropdown-menu {
  border-color: var(--la-gray-10);
  border-radius: var(--la-radius-card);
  box-shadow: var(--la-shadow-card);
}

.navbar-buttons .login {
  color: var(--la-teal);
  font-weight: 800;
  text-decoration: none;
}

.navbar-buttons .login:hover {
  color: var(--la-teal-dark);
  text-decoration: underline;
}

/* Figma 4786:10300 — nav items grouped to the right, with a vertical divider
   between the nav links and the Log In / Enroll action buttons (desktop only). */
@media (min-width: 992px) {
  header.bg-white .navbar-main .navbar-nav {
    margin-right: 0;
  }

  header.bg-white .navbar-main .navbar-buttons {
    margin-left: 1.5rem;
    padding-left: 1.5rem;
    border-left: 1px solid var(--la-gray-10);
  }
}

/* ---------- Notice / alert banner (rendered by shared header) ---------- */
.alert-banner {
  background: var(--la-teal);
  color: #fff;
}

.alert-banner :where(p, span, li, h2, h3, a) {
  color: #fff;
}

.alert-banner p {
  margin-bottom: 0;
}

.alert-banner .container {
  position: relative;
}

.alert-banner .col-md-12 {
  display: flex;
  align-items: center;
  gap: .85rem;
  padding-block: 1rem;
  padding-right: 2.5rem;
}

/* Alert-bar icon: Figma lightbulb SVG via CSS mask (recolors with currentColor; editor-safe). */
.alert-banner .alert-icon {
  display: inline-block;
  flex: 0 0 auto;
  width: 1.6rem;
  height: 1.6rem;
  line-height: 1;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M15 17.25V19.5C15 19.8978 14.842 20.2794 14.5607 20.5607C14.2794 20.842 13.8978 21 13.5 21H10.5C10.1022 21 9.72064 20.842 9.43934 20.5607C9.15804 20.2794 9 19.8978 9 19.5V17.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 0.75V2.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 11.25H3' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.75 3.75L4.85 4.807' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M22.5 11.25H21' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20.2504 3.75L19.1504 4.807' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.91456 17.25H15.0846C16.1988 16.6969 17.1341 15.8402 17.7825 14.7786C18.431 13.7171 18.7662 12.4938 18.7496 11.25C18.718 9.46966 17.9967 7.77106 16.7376 6.51197C15.4785 5.25289 13.7799 4.53159 11.9996 4.5C10.2185 4.53162 8.51936 5.25347 7.26017 6.51341C6.00097 7.77335 5.28012 9.47296 5.24956 11.254C5.23369 12.4972 5.56928 13.7195 6.21769 14.7803C6.86609 15.8411 7.80094 16.6972 8.91456 17.25Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 21V23.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 13.5V17.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.75 11.25L12 13.5L14.25 11.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M15 17.25V19.5C15 19.8978 14.842 20.2794 14.5607 20.5607C14.2794 20.842 13.8978 21 13.5 21H10.5C10.1022 21 9.72064 20.842 9.43934 20.5607C9.15804 20.2794 9 19.8978 9 19.5V17.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 0.75V2.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 11.25H3' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.75 3.75L4.85 4.807' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M22.5 11.25H21' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20.2504 3.75L19.1504 4.807' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.91456 17.25H15.0846C16.1988 16.6969 17.1341 15.8402 17.7825 14.7786C18.431 13.7171 18.7662 12.4938 18.7496 11.25C18.718 9.46966 17.9967 7.77106 16.7376 6.51197C15.4785 5.25289 13.7799 4.53159 11.9996 4.5C10.2185 4.53162 8.51936 5.25347 7.26017 6.51341C6.00097 7.77335 5.28012 9.47296 5.24956 11.254C5.23369 12.4972 5.56928 13.7195 6.21769 14.7803C6.86609 15.8411 7.80094 16.6972 8.91456 17.25Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 21V23.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 13.5V17.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9.75 11.25L12 13.5L14.25 11.25' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.alert-banner .alert-icon i {
  display: none;
}

.alert-banner .btn-close {
  position: absolute;
  top: 50%;
  right: calc(var(--bs-gutter-x, 1.5rem) * .5);
  transform: translateY(-50%);
  filter: invert(1) grayscale(1) brightness(2);
}

/* ---------- Footer (shared bare <footer>; footer container block uses .site-footer) ---------- */
footer {
  position: relative;
}

footer::before {
  content: "";
  display: block;
  height: 23px;
  background: var(--la-divider);
}

footer .site-footer {
  background: var(--la-gray-05);
  color: var(--la-text);
}

footer .brand img {
  height: 42px;
  width: auto;
}

footer h2 {
  font-family: var(--la-font-head);
  font-size: 1.0625rem;
  font-weight: 800;
  color: var(--la-text);
}

footer a {
  color: var(--la-text);
  text-decoration: none;
}

footer a:hover {
  color: var(--la-teal);
  text-decoration: underline;
}

/* ---------- Tables ---------- */
.table-wrap {
  overflow-x: auto;
}

table.data {
  width: 100%;
  border-collapse: collapse;
}

table.data th,
table.data td {
  text-align: left;
  padding: 12px 16px;
  border-bottom: 1px solid var(--la-gray-10);
}

table.data thead th {
  background: var(--la-teal);
  color: #fff;
  font-family: var(--la-font-head);
}

table.data th[scope="row"] {
  background: var(--la-gray-05);
  font-weight: 800;
}

.program-table table.data {
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-card);
  overflow: hidden;
}

.program-table table.data thead th {
  background: var(--la-teal);
  color: #fff;
  font-family: var(--la-font-head);
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.33;
}

.program-table table.data th[scope="row"] {
  background: var(--la-gray-05);
  font-weight: 400;
  width: 20%;
}

.program-table table.data th,
.program-table table.data td {
  border: 1px solid var(--la-gray-10);
  vertical-align: top;
}

.program-table table.data ul {
  margin: 0;
  padding-left: 1.25rem;
}

/* ---------- App promo band (Figma readysave-529, node 6188:6275) ---------- */
.section.section--app-promo {
  background: var(--la-teal);
  color: #fff;
  padding: 4.5rem 0 0;
}

.section.section--app-promo>.container {
  max-width: var(--la-container);
}

.lad-app-promo {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
  align-items: center;
}

@media (min-width: 992px) {
  .lad-app-promo {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 24rem;
    gap: 1.5rem;
    align-items: center;
  }
}

.lad-app-promo__intro {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  justify-content: center;
}

.lad-app-promo__copy {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.lad-app-promo__intro .eyebrow {
  color: #fff;
  margin: 0;
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 1.11;
  text-transform: uppercase;
}

.lad-app-promo__intro h2 {
  color: #fff;
  font-family: var(--la-font-head);
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1;
  margin: 0;
}

.lad-app-promo__stores {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  align-items: flex-start;
}

.lad-app-promo__stores img {
  display: block;
  height: auto;
  max-width: 100%;
}

.lad-app-promo__device {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  min-height: 29.0625rem;
}

.lad-app-phone {
  position: relative;
  width: 20.4375rem;
  height: 41.6875rem;
  transform: scale(0.697);
  transform-origin: top center;
  margin-bottom: -12.75rem;
}

.lad-app-phone__face {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.lad-app-phone__screen {
  position: absolute;
  top: .904rem;
  left: 1.031rem;
  width: 18.429rem;
  height: 39.878rem;
  overflow: hidden;
  /* Mask shape is defined inline in the markup (#lad-app-phone-mask) to avoid a cross-origin SVG fetch. */
  -webkit-mask-image: url("#lad-app-phone-mask");
  mask-image: url("#lad-app-phone-mask");
}

.lad-app-phone__screen img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lad-app-promo__features {
  display: grid;
  gap: 1.5rem;
  align-content: center;
}

.lad-app-card {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1rem;
  background: #fff;
  border-radius: var(--la-radius-card);
}

.lad-app-card__icon {
  flex: 0 0 3rem;
  width: 3rem;
  height: 3rem;
  display: block;
}

.lad-app-card__icon--coins {
  position: relative;
  display: block;
}

.lad-app-card__icon--coins img {
  position: absolute;
  display: block;
  max-width: none;
}

.lad-app-card__icon--coins img:first-child {
  inset: 3.13% 46.88% 9.37% 3.13%;
  width: auto;
  height: auto;
}

.lad-app-card__icon--coins img:last-child {
  inset: 41.67% 3.13% 3.13% 46.88%;
  width: auto;
  height: auto;
}

.lad-app-card h3 {
  margin: 0 0 .5rem;
  color: var(--la-text);
  font-family: var(--la-font-body);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.11;
}

.lad-app-card p {
  color: var(--la-gray-50);
  font-size: 1rem;
  line-height: 1.41;
}

@media (max-width: 991.98px) {
  .lad-app-phone {
    transform: scale(0.55);
    margin-bottom: -18rem;
  }

  .lad-app-promo__device {
    min-height: 20rem;
  }
}

.lad-fleur {
  opacity: .85;
}

.lad-fleur-inline {
  vertical-align: middle;
  opacity: .85;
}

/* ---------- Interior page header (Figma Header Block: 48px blue title, 40px padding) ---------- */
.section--page-header {
  padding-block: 2.5rem 1.25rem;
  background: #fff;
}

.lad-page-intro {
  max-width: 48rem;
  margin-inline: auto;
  margin-top: 1rem;
  font-size: 1.125rem;
  line-height: 1.25;
  color: var(--la-text);
}

.lad-page-title {
  color: var(--la-blue);
  font-family: var(--la-font-head);
  font-size: 3rem;
  font-weight: 800;
  line-height: 1.08;
  margin: 0;
}

/* ---------- Fleur-de-lis section intro (Learn page) ---------- */
.lad-section-intro--fleur {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  max-width: 60rem;
  margin-inline: auto;
  text-align: center;
}

.lad-section-intro--fleur .lad-fleur {
  flex: 0 0 5rem;
  width: 5rem;
  height: 5rem;
  object-fit: contain;
}

.lad-section-intro--fleur .lad-section-intro__copy {
  flex: 1 1 auto;
  min-width: 0;
}

.lad-section-intro--fleur h2 {
  margin-bottom: 1rem;
}

@media (max-width: 767.98px) {
  .lad-section-intro--fleur {
    flex-direction: column;
    gap: 1.5rem;
  }

  .lad-section-intro--fleur .lad-fleur {
    display: none;
  }
}

/* ---------- LAD page modules: Invest + Start/Enroll ---------- */
@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@500&display=swap");

.lad-invest-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  width: 100%;
  max-width: 75rem;
  margin: 1.75rem 0 0;
}

.lad-invest-tabset__input,
.lad-fund-switcher__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.lad-invest-tabs__tab {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 1rem 3rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Rubik", var(--la-font-body);
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.11;
  color: var(--la-text);
  border-bottom: 4px solid transparent;
  cursor: pointer;
  user-select: none;
}

#lad-invest-college:checked ~ .lad-invest-tabs label[for="lad-invest-college"],
#lad-invest-k12:checked ~ .lad-invest-tabs label[for="lad-invest-k12"] {
  color: var(--la-teal-dark);
  border-bottom-color: var(--la-teal);
}

.lad-invest-pane { display: none; }

#lad-invest-college:checked ~ .lad-invest-pane--college,
#lad-invest-k12:checked ~ .lad-invest-pane--k12 {
  display: block;
}

.lad-fund-layout {
  display: grid;
  grid-template-columns: 19.4375rem 1fr;
  gap: 2.25rem;
  align-items: stretch;
}

.lad-fund-nav {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 1rem;
  align-self: start;
  min-height: 100%;
}

.lad-fund-nav::before,
.lad-fund-nav::after {
  content: "";
  display: block;
  flex: 0 0 5.5rem;
  border-right: 1px solid var(--la-blue);
}

.lad-fund-nav::after {
  flex: 1 1 auto;
  min-height: 5.5rem;
}

.lad-fund-nav__link {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 2rem;
  min-height: 6.75rem;
  box-sizing: border-box;
  border: 0;
  border-right: 1px solid var(--la-blue);
  border-left: 8px solid transparent;
  background: #fff;
  color: #157e79;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-family: var(--la-font-head);
  font-weight: 700;
  font-size: 1.375rem;
  line-height: 1.09;
  cursor: pointer;
  user-select: none;
}

#college-fund-pp:checked ~ .lad-fund-layout label[for="college-fund-pp"],
#college-fund-age:checked ~ .lad-fund-layout label[for="college-fund-age"],
#college-fund-index:checked ~ .lad-fund-layout label[for="college-fund-index"],
#k12-fund-mm:checked ~ .lad-fund-layout label[for="k12-fund-mm"],
#k12-fund-index:checked ~ .lad-fund-layout label[for="k12-fund-index"] {
  color: var(--la-text);
  text-decoration: none;
  border-left-color: var(--la-blue);
  border-top: 1px solid var(--la-blue);
  border-bottom: 1px solid var(--la-blue);
  border-right-color: transparent;
}

.lad-fund-panels { min-width: 0; padding: 2rem 0; }

.lad-fund-panel { display: none; margin: 0; }

#college-fund-pp:checked ~ .lad-fund-layout .lad-fund-panel--pp,
#college-fund-age:checked ~ .lad-fund-layout .lad-fund-panel--age,
#college-fund-index:checked ~ .lad-fund-layout .lad-fund-panel--index,
#k12-fund-mm:checked ~ .lad-fund-layout .lad-fund-panel--mm,
#k12-fund-index:checked ~ .lad-fund-layout .lad-fund-panel--index {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lad-fund-panel__label,
.lad-fund-panel .eyebrow {
  margin: 0;
  font-family: var(--la-font-body);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.071em;
  text-transform: uppercase;
  color: var(--la-text);
}

.lad-fund-panel h3 {
  color: var(--la-teal);
  font-size: 1.375rem;
  font-weight: 700;
  margin: 0;
}

.lad-fund-panel > p {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.25;
}

.lad-fund-card {
  margin-top: 0.5rem;
  border: 1px solid var(--la-text);
  border-radius: var(--la-radius-card);
  background: #fff;
  overflow: hidden;
}

.lad-fund-card__row {
  display: flex;
  gap: 1rem;
  padding: 1rem;
}

.lad-fund-card__logo {
  width: 11.5rem;
  max-width: 40%;
  height: auto;
  object-fit: contain;
}

.lad-fund-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lad-fund-card__body p { margin: 0; font-size: 1.125rem; line-height: 1.25; }

.lad-fund-card__bar {
  display: block;
  height: 1rem;
  background: var(--la-divider);
}

.section--enroll {
  padding-top: 0;
  padding-bottom: 5rem;
}

.lad-enroll {
  background: var(--la-gray-05);
  border-radius: var(--la-radius-card);
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}

.lad-enroll__intro h2 {
  margin: 0 0 1.5rem;
  font-size: clamp(1.75rem, 1.2rem + 1.8vw, 2.25rem);
  font-weight: 800;
  line-height: 1;
  color: var(--la-teal);
}

.lad-enroll__intro p {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.25;
}

.lad-enroll__intro a {
  color: var(--la-teal);
  text-decoration: underline;
}

.lad-enroll__cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-items: stretch;
}

.lad-enroll-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
  background: #fff;
  border: 1px solid #bfbfbf;
  border-radius: var(--la-radius-card);
  padding: 2rem 1.5rem;
  height: 100%;
}

.lad-enroll-card__content {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lad-enroll-card h3 {
  margin: 0;
  text-align: center;
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--la-teal);
}

.lad-enroll-card p {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.25;
}

.lad-enroll-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.lad-enroll-list li {
  position: relative;
  padding-left: 2.25rem;
  font-size: 1rem;
  line-height: 1.4;
  color: #1a1c1c;
}

.lad-enroll-list li:first-child {
  font-size: 1.125rem;
  line-height: 1.25;
  color: var(--la-text);
}

.lad-enroll-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: var(--la-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M5.5 10.2 8.4 13l6.1-6.2' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 1.25rem 1.25rem no-repeat;
}

.lad-enroll-card__cta { text-align: center; }

.lad-enroll-card__cta .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.9375rem;
  padding: 0.5rem 1rem;
  font-weight: 800;
}

.lad-enroll__note {
  margin: 0 auto;
  max-width: 56.25rem;
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.25;
}

@media (max-width: 991.98px) {
  .lad-fund-layout,
  .lad-enroll__cards {
    grid-template-columns: 1fr;
  }

  .lad-fund-nav {
    position: static;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .lad-fund-nav::before,
  .lad-fund-nav::after { display: none; }

  .lad-fund-nav__link {
    flex: 1 1 auto;
    min-height: 0;
    padding: 1rem 1.25rem;
    font-size: 1.125rem;
    border-left-width: 0;
    border-right: 0;
    border-bottom: 3px solid transparent;
  }

  #college-fund-pp:checked ~ .lad-fund-layout label[for="college-fund-pp"],
  #college-fund-age:checked ~ .lad-fund-layout label[for="college-fund-age"],
  #college-fund-index:checked ~ .lad-fund-layout label[for="college-fund-index"],
  #k12-fund-mm:checked ~ .lad-fund-layout label[for="k12-fund-mm"],
  #k12-fund-index:checked ~ .lad-fund-layout label[for="k12-fund-index"] {
    border-left-color: transparent;
    border-top: 0;
    border-bottom: 3px solid var(--la-blue);
  }

  .lad-enroll { padding: 1.5rem; }
}

/* ---------- Vertical cards (Figma Use page) ---------- */
.vertical-card {
  background: #fff;
  border: 1px solid #000;
  border-radius: var(--la-radius-card);
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.vertical-card__media {
  position: relative;
  height: 18.75rem;
  overflow: hidden;
  flex: 0 0 auto;
}

.vertical-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.vertical-card__media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1rem;
  background: var(--la-divider);
}

.vertical-card__body {
  padding: 1.5rem 2.5rem 2rem;
  flex: 1 1 auto;
}

.vertical-card__body h3 {
  text-align: center;
  margin-bottom: 1rem;
}

.vertical-card__body ul {
  padding-left: 1.25rem;
  margin-bottom: 1rem;
}

.vertical-card__footnote {
  font-size: .875rem;
  line-height: 1.14;
  letter-spacing: .06em;
  margin-top: 1rem;
}

/* ---------- Split media blocks (Figma Flexible Content Block) ---------- */
.lad-media {
  position: relative;
  overflow: hidden;
  border-radius: var(--la-radius-card);
  min-height: 31.25rem;
}

.lad-media img {
  width: 100%;
  height: 100%;
  min-height: 31.25rem;
  object-fit: cover;
  display: block;
}

.lad-media::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2rem;
  background: var(--la-divider);
}

.lad-heading-with-fleur {
  display: flex;
  align-items: center;
  gap: .5rem;
}

.lad-heading-with-fleur .lad-fleur-inline {
  width: 2.5rem;
  height: 2.5rem;
  flex: 0 0 auto;
}

.lad-split-img {
  width: 100%;
  object-fit: cover;
  max-height: 31rem;
}

.lad-forms-list .list-group-item {
  background: transparent;
  border-color: var(--la-gray-10);
  padding-block: 1rem;
}

.feature-card[href] {
  color: inherit;
  transition: box-shadow .2s ease, transform .2s ease;
}

.feature-card[href]:hover {
  box-shadow: var(--la-shadow-card);
  transform: translateY(-2px);
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
}

/* =====================================================================
   Figma home-page layout matches (LA 529 Home, node 4783:6420)
   Desktop (>=lg). First pass — tuned live against the real markup.
   ===================================================================== */
html {
  overflow-x: clip;
}

/* contain edge-bleeds without breaking sticky header or scroll root */
/* Full-bleed: let an in-container section span the full viewport width (e.g. gray bands). Pair with an inner .container to re-center content. */
.lad-fullbleed {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* Interior pages (How Tos, Helpful Links) reuse the .hero card inside the
   template's .container > .row > .col-md-12 wrapper. Neutralize the nested
   container so the hero aligns with the page's other sections. */
.col-md-12 .hero>.container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

@media (min-width: 992px) {

  /* Hero (block5050): grey rounded card with the photo overlapping to the right
     (Figma 4783:6424 — card behind, photo lifted on top with a gradient strip). */
  .hero>.container>.row {
    position: relative;
    --bs-gutter-x: 0;
    align-items: center;
  }

  /* Grey card sits BEHIND, anchored to the left and ~74.5% of the container
     wide, so the photo overlaps its right portion (rather than butting up
     against a same-width card). */
  .hero>.container>.row::before {
    content: "";
    position: absolute;
    z-index: 0;
    left: 0;
    top: 0;
    bottom: 0;
    width: 74.5%;
    background: var(--la-gray-05);
    border-radius: var(--la-radius-card);
  }

  .hero>.container>.row>.col-lg-6 {
    position: relative;
    z-index: 1;
  }

  .hero>.container>.row>.col-lg-6:first-child {
    padding: 3rem 2.5rem 3rem 3rem;
  }

  /* Photo column: no side padding so the photo sits flush to the container's
     right edge; vertical padding insets it within the taller grey card. */
  .hero>.container>.row>.col-lg-6:last-child {
    padding: 1.75rem 0;
  }

  .hero>.container>.row>.col-lg-6:last-child img {
    display: block;
    width: 100%;
    max-width: none;
    border-radius: var(--la-radius-card);
    box-shadow: var(--la-shadow-card);
  }

  .hero>.container>.row>.col-lg-6:last-child::after {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: 1.75rem;
    height: 10px;
    background: var(--la-divider);
    border-radius: 0 0 var(--la-radius-card) var(--la-radius-card);
  }

  /* "Why choose" gradient panel: anchor its right edge to the viewport edge.
     The panel lives in a col-lg-7, whose left sits left of the viewport
     midpoint, so a plain 50vw falls short; this calc cancels out the
     container width across breakpoints (gutter assumed 1.5rem). */
  .gradient-panel {
    width: calc(50vw + 100% / 7 - 16px);
    border-radius: var(--la-radius-card) 0 0 var(--la-radius-card);
    /* Gradient background bleeds to the edge, but the white cards stay inset and
       end at the content/container right edge (Figma 4783:6431) — they do not bleed. */
    padding-right: calc(50vw - 100% * 6 / 7 - 16px);
  }

  /* Split-section photo bleeds to the RIGHT screen edge (e.g. Who is eligible).
     A narrower image column (col-lg-5) starts further right, so the visible
     photo is ~42vw — matching the Figma proportion (image doesn't dominate). */
  .section:not(.hero) .col-lg-6:last-child>img:only-child,
  .section:not(.hero) .col-lg-5:last-child>img:only-child,
  .section--split .col-lg-6:last-child .lad-media,
  .section--split .col-lg-5:last-child .lad-media {
    width: 50vw;
    max-width: none;
    height: 100%;
    object-fit: cover;
    border-radius: var(--la-radius-card) 0 0 var(--la-radius-card);
  }

  .section:not(.hero) .col-lg-6:first-child>img:only-child,
  .section:not(.hero) .col-lg-5:first-child>img:only-child,
  .section--split .col-lg-6:first-child .lad-media,
  .section--split .col-lg-5:first-child .lad-media {
    width: 50vw;
    max-width: none;
    height: 100%;
    object-fit: cover;
    margin-left: calc(100% - 50vw);
    border-radius: 0 var(--la-radius-card) var(--la-radius-card) 0;
  }

  .section:not(.hero) .col-lg-6:last-child:has(> img:only-child),
  .section:not(.hero) .col-lg-5:last-child:has(> img:only-child),
  .section--split .col-lg-6:last-child:has(.lad-media),
  .section--split .col-lg-5:last-child:has(.lad-media),
  .section:not(.hero) .col-lg-6:first-child:has(> img:only-child),
  .section:not(.hero) .col-lg-5:first-child:has(> img:only-child),
  .section--split .col-lg-6:first-child:has(.lad-media),
  .section--split .col-lg-5:first-child:has(.lad-media) {
    position: relative;
  }

  .section--split .lad-media::after {
    height: 2rem;
  }

  .section:not(.hero) .col-lg-6:last-child:has(> img:only-child)::after,
  .section:not(.hero) .col-lg-5:last-child:has(> img:only-child)::after {
    content: "";
    position: absolute;
    z-index: 2;
    height: 2rem;
    bottom: 0;
    left: calc(var(--bs-gutter-x, 1.5rem) * .5);
    width: 50vw;
    background: var(--la-divider);
    border-radius: 0 0 0 var(--la-radius-card);
  }

  .section:not(.hero) .col-lg-6:first-child:has(> img:only-child)::after,
  .section:not(.hero) .col-lg-5:first-child:has(> img:only-child)::after {
    content: "";
    position: absolute;
    z-index: 2;
    height: 2rem;
    bottom: 0;
    right: calc(var(--bs-gutter-x, 1.5rem) * .5);
    width: 50vw;
    background: var(--la-divider);
    border-radius: 0 0 var(--la-radius-card) 0;
  }
}

/* Home-page icons: Figma SVGs rendered via CSS mask (recolor with currentColor; editor-safe). */
.lad-ico {
  display: inline-block;
  flex: 0 0 auto;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.lad-ico::before {
  content: none !important;
}

.feature-card__icon .lad-ico {
  width: 2rem;
  height: 2rem;
}

.feature-card--horizontal .feature-card__icon .lad-ico {
  width: 2.5rem;
  height: 2.5rem;
}

.lad-ico-save {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke-width='1.5'%3E%3Cpath d='M3.00781 17.5L10.0078 10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.00781 27.5L10.0078 34.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21 34.5H4C3.73478 34.5 3.48043 34.3946 3.29289 34.2071C3.10536 34.0196 3 33.7652 3 33.5V11.5C3 11.2348 3.10536 10.9804 3.29289 10.7929C3.48043 10.6054 3.73478 10.5 4 10.5H44C44.2652 10.5 44.5196 10.6054 44.7071 10.7929C44.8946 10.9804 45 11.2348 45 11.5V32.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M45.0078 17.5L38.0078 10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13.2842 39.088L15.0082 41.5V46.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 9.5V9.424C17 8.62835 16.6839 7.86528 16.1213 7.30268C15.5587 6.74007 14.7956 6.424 14 6.424C13.2044 6.424 12.4413 6.74007 11.8787 7.30268C11.3161 7.86528 11 8.62835 11 9.424V9.5V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23 10.5V7.5V7.424C23 6.62835 22.6839 5.86528 22.1213 5.30268C21.5587 4.74007 20.7956 4.424 20 4.424C19.2044 4.424 18.4413 4.74007 17.8787 5.30268C17.3161 5.86528 17 6.62835 17 7.424V7.5V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29 10.5V4.576V4.5C29 3.70435 28.6839 2.94129 28.1213 2.37868C27.5587 1.81607 26.7956 1.5 26 1.5C25.2044 1.5 24.4413 1.81607 23.8787 2.37868C23.3161 2.94129 23 3.70435 23 4.5V4.576V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M35 10.5V7.5V7.424C35 6.62835 34.6839 5.86528 34.1213 5.30268C33.5587 4.74007 32.7956 4.424 32 4.424C31.2044 4.424 30.4413 4.74007 29.8787 5.30268C29.3161 5.86528 29 6.62835 29 7.424V7.5V9.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 46.5V44.5C33 43.879 33.1446 43.2666 33.4223 42.7111C33.7 42.1557 34.1032 41.6726 34.6 41.3L39.4 37.7C39.8968 37.3274 40.3 36.8443 40.5777 36.2889C40.8554 35.7334 41 35.121 41 34.5V25.438C41 25.424 40.99 25.412 40.99 25.398C40.9569 24.6697 40.6598 23.9783 40.1541 23.4532C39.6484 22.928 38.9687 22.605 38.2422 22.5444C37.5156 22.4839 36.7919 22.69 36.2062 23.1243C35.6206 23.5585 35.2131 24.1912 35.06 24.904C34.9695 25.0693 34.9022 25.2463 34.86 25.43L34.26 29.564C34.1738 30.1667 33.9512 30.7417 33.6091 31.2453C33.267 31.7489 32.8145 32.1678 32.286 32.47L29 34.348C28.3905 34.6999 27.8846 35.2064 27.5334 35.8164C27.1823 36.4264 26.9983 37.1182 27 37.822V40.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.0078 16.5V14.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M25.9999 16.5H21.9419C21.3188 16.5004 20.7152 16.7177 20.2347 17.1145C19.7542 17.5113 19.4268 18.0629 19.3085 18.6747C19.1903 19.2865 19.2886 19.9204 19.5866 20.4676C19.8846 21.0149 20.3638 21.4414 20.9419 21.674L25.0699 23.326C25.648 23.5586 26.1271 23.9851 26.4252 24.5324C26.7232 25.0796 26.8215 25.7135 26.7033 26.3253C26.585 26.9371 26.2576 27.4887 25.7771 27.8855C25.2966 28.2823 24.693 28.4996 24.0699 28.5H19.9999' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.0078 30.5V28.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none' stroke-width='1.5'%3E%3Cpath d='M3.00781 17.5L10.0078 10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M3.00781 27.5L10.0078 34.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21 34.5H4C3.73478 34.5 3.48043 34.3946 3.29289 34.2071C3.10536 34.0196 3 33.7652 3 33.5V11.5C3 11.2348 3.10536 10.9804 3.29289 10.7929C3.48043 10.6054 3.73478 10.5 4 10.5H44C44.2652 10.5 44.5196 10.6054 44.7071 10.7929C44.8946 10.9804 45 11.2348 45 11.5V32.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M45.0078 17.5L38.0078 10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M13.2842 39.088L15.0082 41.5V46.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M17 9.5V9.424C17 8.62835 16.6839 7.86528 16.1213 7.30268C15.5587 6.74007 14.7956 6.424 14 6.424C13.2044 6.424 12.4413 6.74007 11.8787 7.30268C11.3161 7.86528 11 8.62835 11 9.424V9.5V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23 10.5V7.5V7.424C23 6.62835 22.6839 5.86528 22.1213 5.30268C21.5587 4.74007 20.7956 4.424 20 4.424C19.2044 4.424 18.4413 4.74007 17.8787 5.30268C17.3161 5.86528 17 6.62835 17 7.424V7.5V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29 10.5V4.576V4.5C29 3.70435 28.6839 2.94129 28.1213 2.37868C27.5587 1.81607 26.7956 1.5 26 1.5C25.2044 1.5 24.4413 1.81607 23.8787 2.37868C23.3161 2.94129 23 3.70435 23 4.5V4.576V10.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M35 10.5V7.5V7.424C35 6.62835 34.6839 5.86528 34.1213 5.30268C33.5587 4.74007 32.7956 4.424 32 4.424C31.2044 4.424 30.4413 4.74007 29.8787 5.30268C29.3161 5.86528 29 6.62835 29 7.424V7.5V9.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 46.5V44.5C33 43.879 33.1446 43.2666 33.4223 42.7111C33.7 42.1557 34.1032 41.6726 34.6 41.3L39.4 37.7C39.8968 37.3274 40.3 36.8443 40.5777 36.2889C40.8554 35.7334 41 35.121 41 34.5V25.438C41 25.424 40.99 25.412 40.99 25.398C40.9569 24.6697 40.6598 23.9783 40.1541 23.4532C39.6484 22.928 38.9687 22.605 38.2422 22.5444C37.5156 22.4839 36.7919 22.69 36.2062 23.1243C35.6206 23.5585 35.2131 24.1912 35.06 24.904C34.9695 25.0693 34.9022 25.2463 34.86 25.43L34.26 29.564C34.1738 30.1667 33.9512 30.7417 33.6091 31.2453C33.267 31.7489 32.8145 32.1678 32.286 32.47L29 34.348C28.3905 34.6999 27.8846 35.2064 27.5334 35.8164C27.1823 36.4264 26.9983 37.1182 27 37.822V40.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.0078 16.5V14.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M25.9999 16.5H21.9419C21.3188 16.5004 20.7152 16.7177 20.2347 17.1145C19.7542 17.5113 19.4268 18.0629 19.3085 18.6747C19.1903 19.2865 19.2886 19.9204 19.5866 20.4676C19.8846 21.0149 20.3638 21.4414 20.9419 21.674L25.0699 23.326C25.648 23.5586 26.1271 23.9851 26.4252 24.5324C26.7232 25.0796 26.8215 25.7135 26.7033 26.3253C26.585 26.9371 26.2576 27.4887 25.7771 27.8855C25.2966 28.2823 24.693 28.4996 24.0699 28.5H19.9999' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M23.0078 30.5V28.5' stroke='%23000' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lad-ico-taxfree {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M46.5 18C46.5 19.5913 45.8678 21.1174 44.7426 22.2426C43.6174 23.3678 42.0912 24 40.5 24' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 15H26' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12.627 22.49C12.2127 22.49 11.877 22.1542 11.877 21.74C11.877 21.3258 12.2127 20.99 12.627 20.99' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M12.627 22.49C13.0412 22.49 13.377 22.1542 13.377 21.74C13.377 21.3258 13.0412 20.99 12.627 20.99' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M15.8 8.76C13.46 4.52 7.5 4.5 7.5 4.5L8.76 13.26C7.1105 15.0395 5.89244 17.1745 5.2 19.5H1.5V31.5H6.48C7.50874 33.3138 8.86502 34.921 10.48 36.24V42C10.4852 42.3962 10.6449 42.7748 10.9251 43.055C11.2053 43.3352 11.5838 43.4948 11.98 43.5H15C15.3962 43.4948 15.7747 43.3352 16.0549 43.055C16.3351 42.7748 16.4948 42.3962 16.5 42V39.52C20.3954 40.8134 24.6046 40.8134 28.5 39.52V42C28.5052 42.3962 28.6648 42.7748 28.945 43.055C29.2252 43.3352 29.6038 43.4948 30 43.5H33C33.3962 43.4948 33.7748 43.3352 34.055 43.055C34.3352 42.7748 34.4948 42.3962 34.5 42V36.28C36.3512 34.809 37.8506 32.943 38.8888 30.8186C39.9268 28.694 40.4772 26.3644 40.5 24C40.5 11.02 26.4 5.22 15.8 8.76Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M46.5 18C46.5 19.5913 45.8678 21.1174 44.7426 22.2426C43.6174 23.3678 42.0912 24 40.5 24' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 15H26' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12.627 22.49C12.2127 22.49 11.877 22.1542 11.877 21.74C11.877 21.3258 12.2127 20.99 12.627 20.99' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M12.627 22.49C13.0412 22.49 13.377 22.1542 13.377 21.74C13.377 21.3258 13.0412 20.99 12.627 20.99' stroke='%23000' stroke-width='1.5'/%3E%3Cpath d='M15.8 8.76C13.46 4.52 7.5 4.5 7.5 4.5L8.76 13.26C7.1105 15.0395 5.89244 17.1745 5.2 19.5H1.5V31.5H6.48C7.50874 33.3138 8.86502 34.921 10.48 36.24V42C10.4852 42.3962 10.6449 42.7748 10.9251 43.055C11.2053 43.3352 11.5838 43.4948 11.98 43.5H15C15.3962 43.4948 15.7747 43.3352 16.0549 43.055C16.3351 42.7748 16.4948 42.3962 16.5 42V39.52C20.3954 40.8134 24.6046 40.8134 28.5 39.52V42C28.5052 42.3962 28.6648 42.7748 28.945 43.055C29.2252 43.3352 29.6038 43.4948 30 43.5H33C33.3962 43.4948 33.7748 43.3352 34.055 43.055C34.3352 42.7748 34.4948 42.3962 34.5 42V36.28C36.3512 34.809 37.8506 32.943 38.8888 30.8186C39.9268 28.694 40.4772 26.3644 40.5 24C40.5 11.02 26.4 5.22 15.8 8.76Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lad-ico-nofees {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M1.5 24C1.5 29.9674 3.87053 35.6903 8.0901 39.9099C12.3097 44.1295 18.0326 46.5 24 46.5C29.9674 46.5 35.6903 44.1295 39.9099 39.9099C44.1295 35.6903 46.5 29.9674 46.5 24C46.5 18.0326 44.1295 12.3097 39.9099 8.0901C35.6903 3.87053 29.9674 1.5 24 1.5C18.0326 1.5 12.3097 3.87053 8.0901 8.0901C3.87053 12.3097 1.5 18.0326 1.5 24Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19.5 28.5C19.5 29.39 19.7639 30.26 20.2584 31.0001C20.7529 31.7401 21.4557 32.3169 22.2779 32.6575C23.1002 32.9981 24.005 33.0872 24.8779 32.9135C25.7508 32.7399 26.5526 32.3113 27.182 31.682C27.8113 31.0526 28.2399 30.2508 28.4135 29.3779C28.5872 28.505 28.4981 27.6002 28.1575 26.7779C27.8169 25.9557 27.2401 25.2529 26.5001 24.7584C25.76 24.2639 24.89 24 24 24C23.11 24 22.24 23.7361 21.4999 23.2416C20.7599 22.7471 20.1831 22.0443 19.8425 21.2221C19.502 20.3998 19.4128 19.495 19.5865 18.6221C19.7601 17.7492 20.1887 16.9474 20.818 16.318C21.4474 15.6887 22.2492 15.2601 23.1221 15.0865C23.995 14.9128 24.8998 15.0019 25.7221 15.3425C26.5443 15.6831 27.2471 16.2599 27.7416 16.9999C28.2361 17.74 28.5 18.61 28.5 19.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M24 12V15' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M24 33V36' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M1.5 24C1.5 29.9674 3.87053 35.6903 8.0901 39.9099C12.3097 44.1295 18.0326 46.5 24 46.5C29.9674 46.5 35.6903 44.1295 39.9099 39.9099C44.1295 35.6903 46.5 29.9674 46.5 24C46.5 18.0326 44.1295 12.3097 39.9099 8.0901C35.6903 3.87053 29.9674 1.5 24 1.5C18.0326 1.5 12.3097 3.87053 8.0901 8.0901C3.87053 12.3097 1.5 18.0326 1.5 24Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19.5 28.5C19.5 29.39 19.7639 30.26 20.2584 31.0001C20.7529 31.7401 21.4557 32.3169 22.2779 32.6575C23.1002 32.9981 24.005 33.0872 24.8779 32.9135C25.7508 32.7399 26.5526 32.3113 27.182 31.682C27.8113 31.0526 28.2399 30.2508 28.4135 29.3779C28.5872 28.505 28.4981 27.6002 28.1575 26.7779C27.8169 25.9557 27.2401 25.2529 26.5001 24.7584C25.76 24.2639 24.89 24 24 24C23.11 24 22.24 23.7361 21.4999 23.2416C20.7599 22.7471 20.1831 22.0443 19.8425 21.2221C19.502 20.3998 19.4128 19.495 19.5865 18.6221C19.7601 17.7492 20.1887 16.9474 20.818 16.318C21.4474 15.6887 22.2492 15.2601 23.1221 15.0865C23.995 14.9128 24.8998 15.0019 25.7221 15.3425C26.5443 15.6831 27.2471 16.2599 27.7416 16.9999C28.2361 17.74 28.5 18.61 28.5 19.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M24 12V15' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M24 33V36' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lad-ico-contribute {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M34.3823 8.31002H31.0463C30.5335 8.30782 30.0359 8.48488 29.6398 8.81059C29.2436 9.13631 28.9737 9.5902 28.8766 10.0938C28.7796 10.5974 28.8616 11.1191 29.1084 11.5687C29.3552 12.0183 29.7514 12.3675 30.2283 12.556L33.6143 13.91C34.0897 14.0992 34.4842 14.4482 34.7301 14.8969C34.9759 15.3456 35.0577 15.866 34.9613 16.3684C34.8649 16.8709 34.5964 17.3241 34.202 17.65C33.8076 17.9758 33.312 18.1541 32.8003 18.154H29.4603' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9219 8.31003V5.92603' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9219 20.282V18.154' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9216 24.512C38.1514 24.512 43.2016 19.4618 43.2016 13.232C43.2016 7.00225 38.1514 1.95203 31.9216 1.95203C25.6918 1.95203 20.6416 7.00225 20.6416 13.232C20.6416 19.4618 25.6918 24.512 31.9216 24.512Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M30.4 34.84L42.834 30.868L42.92 30.844C43.6194 30.6907 44.3507 30.7972 44.9774 31.1436C45.604 31.4899 46.0832 32.0525 46.3254 32.7263C46.5676 33.4001 46.5564 34.139 46.2937 34.8051C46.031 35.4712 45.535 36.0189 44.898 36.346C20.624 48.914 26.816 48.346 1.49805 39.912' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 24.512H5.9C11.0142 24.4598 15.9755 26.2551 19.872 29.568L19.954 29.64H28.154C28.9719 29.64 29.7564 29.9649 30.3347 30.5433C30.9131 31.1216 31.238 31.906 31.238 32.724C31.2385 33.5395 30.9161 34.322 30.3411 34.9003C29.7661 35.4787 28.9855 35.8057 28.17 35.81L15.702 35.872' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M34.3823 8.31002H31.0463C30.5335 8.30782 30.0359 8.48488 29.6398 8.81059C29.2436 9.13631 28.9737 9.5902 28.8766 10.0938C28.7796 10.5974 28.8616 11.1191 29.1084 11.5687C29.3552 12.0183 29.7514 12.3675 30.2283 12.556L33.6143 13.91C34.0897 14.0992 34.4842 14.4482 34.7301 14.8969C34.9759 15.3456 35.0577 15.866 34.9613 16.3684C34.8649 16.8709 34.5964 17.3241 34.202 17.65C33.8076 17.9758 33.312 18.1541 32.8003 18.154H29.4603' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9219 8.31003V5.92603' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9219 20.282V18.154' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M31.9216 24.512C38.1514 24.512 43.2016 19.4618 43.2016 13.232C43.2016 7.00225 38.1514 1.95203 31.9216 1.95203C25.6918 1.95203 20.6416 7.00225 20.6416 13.232C20.6416 19.4618 25.6918 24.512 31.9216 24.512Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M30.4 34.84L42.834 30.868L42.92 30.844C43.6194 30.6907 44.3507 30.7972 44.9774 31.1436C45.604 31.4899 46.0832 32.0525 46.3254 32.7263C46.5676 33.4001 46.5564 34.139 46.2937 34.8051C46.031 35.4712 45.535 36.0189 44.898 36.346C20.624 48.914 26.816 48.346 1.49805 39.912' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 24.512H5.9C11.0142 24.4598 15.9755 26.2551 19.872 29.568L19.954 29.64H28.154C28.9719 29.64 29.7564 29.9649 30.3347 30.5433C30.9131 31.1216 31.238 31.906 31.238 32.724C31.2385 33.5395 30.9161 34.322 30.3411 34.9003C29.7661 35.4787 28.9855 35.8057 28.17 35.81L15.702 35.872' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lad-ico-explore {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M1.5 46.5H46.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 32.5H6C5.60379 32.5052 5.22526 32.6649 4.94507 32.9451C4.66488 33.2253 4.50518 33.6038 4.5 34V46.5H13.5V34C13.4948 33.6038 13.3351 33.2253 13.0549 32.9451C12.7747 32.6649 12.3962 32.5052 12 32.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M27 24.5H21C20.6038 24.5052 20.2253 24.6649 19.9451 24.9451C19.6649 25.2253 19.5052 25.6038 19.5 26V46.5H28.5V26C28.4948 25.6038 28.3351 25.2253 28.0549 24.9451C27.7747 24.6649 27.3962 24.5052 27 24.5V24.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M42 16.5H36C35.6038 16.5052 35.2253 16.6649 34.9451 16.9451C34.6649 17.2253 34.5052 17.6038 34.5 18V46.5H43.5V18C43.4948 17.6038 43.3351 17.2253 43.0549 16.9451C42.7747 16.6649 42.3962 16.5052 42 16.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.36035 18.48L40.5004 3.88' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M38.1196 10.26L40.4996 3.88L34.1396 1.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M1.5 46.5H46.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 32.5H6C5.60379 32.5052 5.22526 32.6649 4.94507 32.9451C4.66488 33.2253 4.50518 33.6038 4.5 34V46.5H13.5V34C13.4948 33.6038 13.3351 33.2253 13.0549 32.9451C12.7747 32.6649 12.3962 32.5052 12 32.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M27 24.5H21C20.6038 24.5052 20.2253 24.6649 19.9451 24.9451C19.6649 25.2253 19.5052 25.6038 19.5 26V46.5H28.5V26C28.4948 25.6038 28.3351 25.2253 28.0549 24.9451C27.7747 24.6649 27.3962 24.5052 27 24.5V24.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M42 16.5H36C35.6038 16.5052 35.2253 16.6649 34.9451 16.9451C34.6649 17.2253 34.5052 17.6038 34.5 18V46.5H43.5V18C43.4948 17.6038 43.3351 17.2253 43.0549 16.9451C42.7747 16.6649 42.3962 16.5052 42 16.5Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.36035 18.48L40.5004 3.88' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M38.1196 10.26L40.4996 3.88L34.1396 1.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.lad-ico-use {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M36.3759 21.2L39.9139 15.146C40.0117 14.9796 40.0632 14.79 40.0632 14.597C40.0632 14.404 40.0117 14.2145 39.9139 14.048C39.813 13.8801 39.6702 13.7412 39.4994 13.6452C39.3286 13.5491 39.1358 13.4991 38.9399 13.5H27.0639C26.868 13.4991 26.6752 13.5491 26.5044 13.6452C26.3337 13.7412 26.1908 13.8801 26.0899 14.048C25.9921 14.2145 25.9406 14.404 25.9406 14.597C25.9406 14.79 25.9921 14.9796 26.0899 15.146L29.6299 21.2C27.8519 22.336 19.5039 25.4 19.5039 34.4C19.5039 41.386 25.6719 46.5 32.8159 46.5C39.9599 46.5 46.5039 41.386 46.5039 34.4C46.4999 25.75 38.3159 22.67 36.3759 21.2Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M39 7.50001V3.73601C38.9947 3.14012 38.7539 2.57052 38.3301 2.15158C37.9063 1.73264 37.3339 1.49841 36.738 1.50001H3.75C3.15711 1.49788 2.58751 1.73068 2.16583 2.14748C1.74416 2.56428 1.50476 3.13114 1.5 3.72401V30.762C1.50528 31.3581 1.74605 31.9279 2.1698 32.3472C2.59355 32.7664 3.1659 33.0011 3.762 33H12' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 9H22.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29.284 38.188C29.7168 38.7573 30.2806 39.2136 30.9276 39.5183C31.5745 39.823 32.2855 39.9669 33 39.938C35.278 39.938 37.126 38.552 37.126 36.844C37.126 35.136 35.278 33.75 33 33.75C30.722 33.75 28.876 32.364 28.876 30.654C28.876 28.944 30.722 27.56 33 27.56C33.7144 27.5315 34.4252 27.6757 35.0721 27.9804C35.7189 28.285 36.2828 28.7411 36.716 29.31' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 39.938V42' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 25.5V27.56' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48' fill='none'%3E%3Cpath d='M36.3759 21.2L39.9139 15.146C40.0117 14.9796 40.0632 14.79 40.0632 14.597C40.0632 14.404 40.0117 14.2145 39.9139 14.048C39.813 13.8801 39.6702 13.7412 39.4994 13.6452C39.3286 13.5491 39.1358 13.4991 38.9399 13.5H27.0639C26.868 13.4991 26.6752 13.5491 26.5044 13.6452C26.3337 13.7412 26.1908 13.8801 26.0899 14.048C25.9921 14.2145 25.9406 14.404 25.9406 14.597C25.9406 14.79 25.9921 14.9796 26.0899 15.146L29.6299 21.2C27.8519 22.336 19.5039 25.4 19.5039 34.4C19.5039 41.386 25.6719 46.5 32.8159 46.5C39.9599 46.5 46.5039 41.386 46.5039 34.4C46.4999 25.75 38.3159 22.67 36.3759 21.2Z' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M39 7.50001V3.73601C38.9947 3.14012 38.7539 2.57052 38.3301 2.15158C37.9063 1.73264 37.3339 1.49841 36.738 1.50001H3.75C3.15711 1.49788 2.58751 1.73068 2.16583 2.14748C1.74416 2.56428 1.50476 3.13114 1.5 3.72401V30.762C1.50528 31.3581 1.74605 31.9279 2.1698 32.3472C2.59355 32.7664 3.1659 33.0011 3.762 33H12' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M1.5 9H22.5' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M29.284 38.188C29.7168 38.7573 30.2806 39.2136 30.9276 39.5183C31.5745 39.823 32.2855 39.9669 33 39.938C35.278 39.938 37.126 38.552 37.126 36.844C37.126 35.136 35.278 33.75 33 33.75C30.722 33.75 28.876 32.364 28.876 30.654C28.876 28.944 30.722 27.56 33 27.56C33.7144 27.5315 34.4252 27.6757 35.0721 27.9804C35.7189 28.285 36.2828 28.7411 36.716 29.31' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 39.938V42' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M33 25.5V27.56' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* =====================================================================
   LAD Portfolio Prices & Performance (node-specific section class only)
   Scoped to .lad-pp-section — does not affect Tabs Container elsewhere.
   ===================================================================== */
/* White canvas for portfolio prices page only (section uses .lad-pp-section) */
main:has(.lad-pp-section) {
  background: #fff;
}

.section--page-header:has(+ .section.lad-pp-section) {
  background: #fff;
}

.lad-pp-section,
.lad-pp-section.section--gray {
  padding-top: 0;
  padding-bottom: var(--la-section-y);
  background: #fff !important;
}

.lad-pp-section > .container {
  max-width: var(--la-container);
}

/* Program tabs + period toggles (grid places filters above tab nav) */
.lad-pp-section .lad-pp-program-tabs {
  display: grid;
  grid-template-areas:
    "period"
    "tabs"
    "table";
  grid-template-columns: minmax(0, 1fr);
  margin-top: 0.5rem;
  row-gap: 1.25rem;
}

.lad-pp-section .lad-pp-program-tabs .tab-content {
  display: contents;
}

.lad-pp-section .lad-pp-program-tabs .tab-pane.active.show {
  display: contents;
}

.lad-pp-section .lad-pp-program-tabs .tab-pane.active.show .pp_data {
  display: contents;
}

.lad-pp-section .lad-pp-program-tabs .tab-pane.active.show .pp-table-filters {
  grid-area: period;
}

.lad-pp-section .lad-pp-program-tabs .tab-pane.active.show .pp_data > :not(.pp-table-filters) {
  grid-area: table;
}

.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav {
  grid-area: tabs;
  display: flex;
  flex-wrap: wrap;
  gap: 0 2.5rem;
  border: none;
  margin: 0;
  padding: 0;
}

.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-item {
  margin: 0;
  flex: 1 1 0;
  min-width: min(100%, 16rem);
}

.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link {
  width: 100%;
  margin: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  color: var(--la-text);
  font-family: var(--la-font-body);
  font-size: clamp(0.6875rem, 0.55rem + 0.55vw, 0.875rem);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-transform: uppercase;
  text-align: center;
  padding: 0.875rem 0.5rem 0.75rem;
  border-bottom: 4px solid transparent;
  transition: color 0.15s ease, border-color 0.15s ease;
}

/* Global base-ui draws a second underline via ::after — disable here */
.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link::before,
.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link::after {
  content: none !important;
  display: none !important;
}

.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link:hover:not(.active),
.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link:focus,
.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link:focus-visible {
  color: var(--la-text);
  background: transparent;
  border-color: transparent;
}

.lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link.active {
  background: transparent;
  color: var(--la-teal);
  border-bottom: 4px solid var(--la-teal);
}

/* Monthly / quarterly toggle (above program tabs) */
.lad-pp-section .pp-table-filters {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  margin: 0;
  max-width: none;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}

.lad-pp-section .pp-table-filters .d-flex {
  width: 100%;
  align-items: flex-end;
}

.lad-pp-section .pp-table-filters .btn-group-custom {
  display: inline-flex;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
  margin-left: auto;
  margin-bottom: 0 !important;
  padding: 0;
  gap: 0;
  background: #fff;
  border: 1px solid var(--la-gray-10);
  border-radius: var(--la-radius-btn);
  box-shadow: none;
  overflow: hidden;
}

.lad-pp-section .pp-table-filters .btn-group-custom > .btn {
  flex: 0 0 auto;
  font-family: var(--la-font-body);
  font-size: 0.8125rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--la-teal-dark) !important;
  background: #fff !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0.625rem 1.25rem;
  min-width: 0;
  white-space: nowrap;
}

.lad-pp-section .pp-table-filters .btn-group-custom > .btn + .btn {
  border-left: 1px solid var(--la-gray-10) !important;
}

.lad-pp-section .pp-table-filters .btn-group-custom > .btn.active {
  background: var(--la-teal) !important;
  color: #fff !important;
}

.lad-pp-section .pp-table-filters .btn-group-custom > .btn::before,
.lad-pp-section .pp-table-filters .btn-group-custom > .btn::after {
  content: none !important;
  display: none !important;
}

.lad-pp-section .pp-table-filters .btn-group-custom > .btn:hover:not(.active) {
  background: var(--la-gray-05) !important;
  color: var(--la-teal-dark) !important;
}

/* Column header row — match page title blue */
.lad-pp-section .pp-table thead tr:nth-child(2) th {
  background-color: var(--la-blue);
  color: #fff;
  font-weight: 700;
  vertical-align: middle;
  border-color: var(--la-blue);
}

/* Name column needs room in Monthly view (more columns) */
.lad-pp-section .pp-table {
  table-layout: auto;
}

.lad-pp-section .pp-table thead tr:nth-child(2) th:first-child,
.lad-pp-section .pp-table tbody th[scope="row"] {
  min-width: 18rem;
  width: 22%;
  max-width: 28rem;
  white-space: normal;
  word-break: break-word;
}

@media (max-width: 575.98px) {
  .lad-pp-section .nav-tabs.lad-pp-program-tabs__nav {
    gap: 0;
  }

  .lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-item {
    flex: 1 1 100%;
  }

  .lad-pp-section .nav-tabs.lad-pp-program-tabs__nav .nav-link {
    padding: 0.75rem 0.5rem 0.875rem;
  }

  .lad-pp-section .pp-table-filters {
    justify-content: stretch;
  }

  .lad-pp-section .pp-table-filters .btn-group-custom {
    width: auto;
    max-width: 100%;
  }

  .lad-pp-section .pp-table-filters .btn-group-custom > .btn {
    flex: 1 1 auto;
    padding-inline: 0.75rem;
  }
}

/* Alpine LAD widget (rich-text marker) — same page family */
.lad-pp { margin-top: 1.5rem; }
.lad-pp__toolbar {
  display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: center;
  justify-content: space-between; margin-bottom: 2rem;
}
.lad-pp__period .btn.active,
.lad-pp__classes .btn.active { font-weight: 600; }
.lad-pp__layout {
  display: grid; gap: 2rem;
  grid-template-columns: minmax(12rem, 16rem) 1fr;
}
.lad-pp__tabs {
  display: flex; flex-direction: column; gap: 0.25rem;
  border-right: 1px solid var(--la-border, #d9e8e6);
  padding-right: 1.25rem;
}
.lad-pp__tab {
  appearance: none; border: 0; background: transparent; text-align: left;
  padding: 0.75rem 1rem; border-radius: 0.375rem 0 0 0.375rem;
  font-weight: 600; color: var(--la-teal-dark, #0d4f4f); cursor: pointer;
  border-left: 4px solid transparent;
}
.lad-pp__tab:hover { background: rgba(13, 79, 79, 0.06); }
.lad-pp__tab--active {
  background: var(--la-teal, #1a8a8a); color: #fff;
  border-left-color: var(--la-gold, #c4a035);
}
.lad-pp__panel-title { font-size: 1.5rem; margin-bottom: 1.5rem; }
.lad-pp__tables { display: flex; flex-direction: column; gap: 2.5rem; }
.lad-pp__table-heading { font-size: 1.125rem; margin-bottom: 0.75rem; }
.lad-pp-table { font-size: 0.875rem; margin-bottom: 0; }
.lad-pp-table__head { background: var(--la-teal-dark, #0d4f4f); color: #fff; }
.lad-pp-table__head th { color: #fff; font-weight: 600; vertical-align: middle; }
.lad-pp-table tbody tr:nth-child(even) { background: rgba(13, 79, 79, 0.04); }
.lad-pp-fund-name { font-weight: 600; min-width: 12rem; }
.lad-pp .pp-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
@media (max-width: 991.98px) {
  .lad-pp__layout { grid-template-columns: 1fr; }
  .lad-pp__tabs {
    flex-direction: row; flex-wrap: wrap; border-right: 0;
    padding-right: 0; border-bottom: 1px solid var(--la-border, #d9e8e6);
    padding-bottom: 0.75rem;
  }
  .lad-pp__tab { border-left: 0; border-bottom: 3px solid transparent; border-radius: 0.375rem; }
  .lad-pp__tab--active { border-bottom-color: var(--la-gold, #c4a035); }
}
