  body:has(.msb-lp) .site-header { display: none; }
  html:has(.msb-lp) { background: #fff; }
  html:has(.msb-lp) body:has(.msb-lp) { background: #fff; }

  .msb-lp {
    --msb-navy: #0f2850;
    --msb-secondary: #2d4a7a;
    --msb-royal: #1850b0;
    --msb-royal-hover: #1343a0;
    --msb-surface: #eef2ff;
    --msb-line: #d1dbf0;
    --msb-cream: #fdf6e9;
    --msb-white: #fff;
    --msb-whatsapp: #25d366;

    --motion-duration-halo-cycle: 1750ms;

    --msb-state-focus-ring: var(--msb-royal);

    background: var(--msb-white);
    color: var(--msb-navy);
    font-family: "Nunito Sans", sans-serif;
    overflow: clip;
  }

  @media (prefers-reduced-motion: reduce) {
    .msb-lp {
      --motion-duration-halo-cycle: 0ms;
    }
  }

  .msb-lp *,
  .msb-lp *::before,
  .msb-lp *::after { box-sizing: border-box; }

  .msb-lp :where(h1, h2, h3, p, ol, figure) { margin: 0; }
  .msb-lp a { color: inherit; text-decoration: none; }

  .msb-lp img { display: block; height: auto; max-width: 100%; }

  .msb-lp .msb-lp-shell {
    margin-inline: auto;
    width: min(1140px, calc(100% - 48px));
  }

  .msb-lp .msb-lp-section { padding: 80px 0; }
  .msb-lp .msb-lp-section--surface { background: var(--msb-surface); }
  .msb-lp .msb-lp-section--compact { padding: 64px 0; }

  .msb-lp .msb-lp-eyebrow {
    align-items: center;
    color: var(--msb-royal);
    display: flex;

    font-size: 14px;
    font-weight: 700;
    gap: 12px;
    letter-spacing: .12em;
    line-height: 1;
    text-transform: uppercase;
  }

  .msb-lp .msb-lp-eyebrow::before {
    background: currentColor;
    content: "";
    display: block;
    height: 2px;
    width: 28px;
  }

  .msb-lp .msb-lp-eyebrow--reveal::before {
    transform: scaleX(1);
    transform-origin: left center;
  }
  @supports (animation-timeline: view()) {
    @media (prefers-reduced-motion: no-preference) {
      .msb-lp .msb-lp-eyebrow--reveal::before {
        animation: msb-lp-timeline-draw var(--motion-duration-xl) var(--motion-ease-entrance) both;
        animation-range: entry 10% cover 20%;
        animation-timeline: view();
        transform: scaleX(0);
      }
    }
  }

  .msb-lp .msb-lp-heading {
    color: var(--msb-navy);
    font-family: Merriweather, Georgia, serif;
    letter-spacing: -.02em;
  }

  .msb-lp .msb-lp-section-heading {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.25;
    margin-top: 16px;
    max-width: 680px;
  }

  .msb-lp .msb-lp-body {
    color: var(--msb-navy);
    font-size: 18px;
    line-height: 1.65;
  }

  .msb-lp .msb-lp-body--muted { color: var(--msb-secondary); }

  .msb-lp .msb-lp-button {
    align-items: center;
    border: 0;
    border-radius: 999px;
    display: inline-flex;

    font-size: 18px;
    font-weight: 700;
    justify-content: center;
    letter-spacing: .02em;
    line-height: 1.2;
    min-height: 64px;
    padding: 16px 32px;
    text-align: center;
    transition:
      box-shadow var(--motion-duration-sm) var(--motion-ease-standard),
      filter var(--motion-duration-sm) var(--motion-ease-standard),
      background-color var(--motion-duration-sm) var(--motion-ease-standard);
  }

  .msb-lp .msb-lp-button--whatsapp {
    background: var(--msb-whatsapp);
    color: var(--msb-navy);
  }

  .msb-lp .msb-lp-button--whatsapp:hover { filter: brightness(.92); }
  .msb-lp .msb-lp-button--whatsapp:active { box-shadow: inset 0 2px 0 rgba(15, 40, 80, .13); }
  .msb-lp :is(a, summary):focus-visible {
    outline: 3px solid var(--msb-state-focus-ring);
    outline-offset: 2px;
  }

  .msb-lp .msb-lp-hero {
    padding: 96px 0;
    scroll-margin-top: 96px;
  }
  .msb-lp .msb-lp-hero__grid {
    align-items: center;
    display: grid;
    gap: 48px;
    grid-template-columns: minmax(0, 1fr);
  }
  .msb-lp .msb-lp-hero__content { max-width: 680px; }
  .msb-lp .msb-lp-hero h1 {
    font-size: 52px;
    font-weight: 900;
    line-height: 1.15;
    margin-top: 20px;

    max-width: 25ch;
  }
  .msb-lp .msb-lp-hero__lead {
    color: var(--msb-secondary);
    font-size: 20px;
    line-height: 1.65;
    margin-top: 24px;
    max-width: 650px;
  }
  .msb-lp .msb-lp-hero__action { margin-top: 32px; }
  .msb-lp .msb-lp-hero__portrait {
    background: var(--msb-white);
    border: 1px solid var(--msb-line);
    border-radius: 16px;
    box-shadow: 0 2px 10px rgba(15, 40, 80, .08);
    overflow: hidden;
  }
  .msb-lp .msb-lp-hero__portrait img { aspect-ratio: 3 / 4; object-fit: cover; width: 100%; }

  @media (min-width: 1024px) {

    .msb-lp .msb-lp-hero__grid {
      grid-template-columns: minmax(0, 1fr) clamp(320px, 30vw, 420px);
      gap: 48px;
    }
  }

  .msb-lp .msb-lp-recognition__grid {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 40px;
  }
  .msb-lp .msb-lp-recognition__card {
    background: var(--msb-white);
    border: 1px solid transparent;
    border-radius: 12px;
    padding: 28px 24px;
    position: relative;
    transition:
      border-color var(--motion-duration-md) var(--motion-ease-standard),
      box-shadow var(--motion-duration-md) var(--motion-ease-standard),
      transform var(--motion-duration-md) var(--motion-ease-standard);
  }
  .msb-lp .msb-lp-recognition__index {
    color: var(--msb-royal);
    font-family: Merriweather, Georgia, serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .04em;
    position: absolute;
    right: 20px;
    top: 20px;
  }
  .msb-lp .msb-lp-icon {
    align-items: center;
    background: var(--msb-surface);
    border-radius: 999px;
    color: var(--msb-royal);
    display: flex;
    height: 48px;
    justify-content: center;
    width: 48px;
  }
  .msb-lp .msb-lp-icon svg { height: 23px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; width: 23px; }
  .msb-lp .msb-lp-recognition__card p { margin-top: 20px; padding-right: 24px; }

  .msb-lp .msb-lp-timeline { margin-top: 44px; position: relative; }
  .msb-lp .msb-lp-timeline::before {
    background: var(--msb-line);
    content: "";
    height: 2px;
    left: 7%;
    position: absolute;
    right: 7%;
    top: 27px;
  }
  .msb-lp .msb-lp-timeline::after {
    background: var(--msb-royal);
    content: "";
    height: 2px;
    left: 7%;
    position: absolute;
    right: 7%;
    top: 27px;
    transform: scaleX(1);
    transform-origin: left center;
  }
  .msb-lp .msb-lp-timeline__list {
    display: grid;
    gap: 28px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    list-style: none;
    padding: 0;
    position: relative;
  }
  .msb-lp .msb-lp-timeline__item { position: relative; }

  .msb-lp .msb-lp-timeline__number {
    align-items: center;
    background: var(--msb-royal);
    border: 4px solid var(--msb-white);
    border-radius: 999px;
    color: var(--msb-white);
    display: flex;
    font-family: Merriweather, Georgia, serif;
    font-size: 20px;
    font-weight: 700;
    height: 56px;
    justify-content: center;
    line-height: 1;
    position: relative;
    width: 56px;
    z-index: 1;
  }
  .msb-lp .msb-lp-timeline__item h3 {
    color: var(--msb-navy);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    margin-top: 20px;
  }
  .msb-lp .msb-lp-timeline__item p {
    color: var(--msb-secondary);
    font-size: 18px;
    line-height: 1.5;
    margin-top: 10px;
  }
  .msb-lp .msb-lp-section-cta { margin-top: 48px; }

  @supports (animation-timeline: view()) {
    @media (prefers-reduced-motion: no-preference) {
      .msb-lp .msb-lp-timeline::after {
        transform: scaleX(0);
        animation: msb-lp-timeline-draw var(--motion-duration-xl) var(--motion-ease-entrance) both;
        animation-range: entry 20% cover 30%;
        animation-timeline: view();
      }
    }
  }
  @keyframes msb-lp-timeline-draw { to { transform: scaleX(1); } }

  .msb-lp .msb-lp-process__grid {
    align-items: start;
    display: grid;
    gap: 40px;
    grid-template-columns: minmax(0, 1fr);
  }
  .msb-lp .msb-lp-process__photo {
    background: var(--msb-white);
    border: 1px solid var(--msb-line);
    border-radius: 16px;
    box-shadow: 0 2px 10px rgba(15, 40, 80, .08);
    overflow: hidden;
  }
  .msb-lp .msb-lp-process__photo img { aspect-ratio: 3 / 4; object-fit: cover; width: 100%; }

  @media (min-width: 1024px) {
    .msb-lp .msb-lp-process__grid {
      grid-template-columns: minmax(0, 1fr) clamp(260px, 26vw, 340px);
      gap: 48px;
    }
  }

  .msb-lp .msb-lp-attorney__grid {
    align-items: center;
    display: grid;
    gap: 56px;
    grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr);
  }
  .msb-lp .msb-lp-attorney__frame { grid-column: 1; grid-row: 1; }
  .msb-lp .msb-lp-attorney__body { grid-column: 2; grid-row: 1; }
  .msb-lp .msb-lp-attorney__frame {
    background: var(--msb-white);
    border: 1px solid var(--msb-line);
    border-radius: 16px;
    box-shadow: 0 2px 10px rgba(15, 40, 80, .08);
    overflow: hidden;
  }
  .msb-lp .msb-lp-attorney__frame img { aspect-ratio: 3 / 4; object-fit: cover; width: 100%; }
  .msb-lp .msb-lp-attorney__name { font-size: 32px; margin-top: 16px; }
  .msb-lp .msb-lp-attorney__credential { color: var(--msb-secondary); font-size: 18px; font-weight: 600; line-height: 1.4; margin-top: 14px; }
  .msb-lp .msb-lp-attorney__bio { margin-top: 20px; }

  .msb-lp .msb-lp-faq { margin-inline: auto; margin-top: 40px; max-width: 860px; }
  .msb-lp .msb-lp-faq details {
    background: var(--msb-white);
    border: 1px solid var(--msb-line);
    border-radius: 8px;
    color: var(--msb-navy);
    margin-top: 12px;
    overflow: hidden;

    interpolate-size: allow-keywords;
  }
  .msb-lp .msb-lp-faq details[open] { background: var(--msb-surface); }
  .msb-lp .msb-lp-faq summary {
    align-items: center;
    cursor: pointer;
    display: flex;
    font-size: 18px;
    font-weight: 600;
    gap: 16px;
    justify-content: space-between;
    line-height: 1.45;
    list-style: none;
    min-height: 64px;
    padding: 16px 20px;
  }
  .msb-lp .msb-lp-faq summary::-webkit-details-marker { display: none; }
  .msb-lp .msb-lp-faq summary::after {
    color: var(--msb-royal);
    content: "+";
    flex: 0 0 auto;
    font-size: 28px;
    font-weight: 400;
    line-height: 1;
    transition: transform var(--motion-duration-lg) var(--motion-ease-standard);
  }
  .msb-lp .msb-lp-faq details[open] summary::after { content: "−"; transform: rotate(180deg); }

  @supports (selector(::details-content)) and (interpolate-size: allow-keywords) {
    @media (prefers-reduced-motion: no-preference) {
      .msb-lp .msb-lp-faq details::details-content {
        block-size: 0;
        overflow-y: clip;
        transition: content-visibility var(--motion-duration-lg) allow-discrete,
                    block-size var(--motion-duration-lg) var(--motion-ease-standard);
      }
      .msb-lp .msb-lp-faq details[open]::details-content {
        block-size: auto;
      }
    }
  }

  .msb-lp .msb-lp-faq__answer { padding: 0 20px 22px; }
  .msb-lp .msb-lp-faq__answer p { font-size: 18px; line-height: 1.65; }

  .msb-lp .msb-lp-final {
    background: var(--msb-royal);
    padding: 96px 0;
    text-align: center;
    --msb-state-focus-ring: #fff;
  }
  .msb-lp .msb-lp-final__content { margin-inline: auto; max-width: 720px; }
  .msb-lp .msb-lp-final__rule { background: var(--msb-white); height: 2px; margin: 0 auto 24px; opacity: .72; width: 42px; }
  .msb-lp .msb-lp-final h2 { color: var(--msb-white); font-size: 30px; font-weight: 700; }
  .msb-lp .msb-lp-final .msb-lp-button { margin-top: 28px; }

  .msb-lp .msb-lp-final .msb-lp-button { position: relative; }
  .msb-lp .msb-lp-final .msb-lp-button::after {
    border-radius: inherit;
    box-shadow: 0 0 0 0 rgba(255, 255, 255, .5);
    content: "";
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    z-index: -1;
  }
  .msb-lp .msb-lp-final .msb-lp-button.msb-lp-halo-active::after {
    animation: msb-lp-halo-pulse var(--motion-duration-halo-cycle) var(--motion-ease-standard) 2;
  }
  @keyframes msb-lp-halo-pulse {
    0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .5); opacity: .9; }
    70% { box-shadow: 0 0 0 18px rgba(255, 255, 255, 0); opacity: 0; }
    100% { box-shadow: 0 0 0 18px rgba(255, 255, 255, 0); opacity: 0; }
  }

  @media (hover: hover) and (pointer: fine) {
    .msb-lp .msb-lp-recognition__card:hover {
      border-color: var(--msb-royal);
      box-shadow: 0 4px 16px rgba(15, 40, 80, .10);
      transform: translateY(-2px);
    }

    .msb-lp .msb-lp-hero__portrait img,
    .msb-lp .msb-lp-attorney__frame img,
    .msb-lp .msb-lp-process__photo img {
      transition: transform var(--motion-duration-md) var(--motion-ease-standard);
    }
    .msb-lp .msb-lp-hero__portrait:hover img,
    .msb-lp .msb-lp-attorney__frame:hover img,
    .msb-lp .msb-lp-process__photo:hover img {
      transform: scale(var(--motion-scale-hover-subtle));
    }
  }

  @media (max-width: 1024px) {
    .msb-lp .msb-lp-section:not(.msb-lp-hero):not(.msb-lp-final):not(.msb-lp-section--compact) {
      padding: 64px 0;
    }
    .msb-lp .msb-lp-timeline__list { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 40px; }
    .msb-lp .msb-lp-timeline::before,
    .msb-lp .msb-lp-timeline::after { display: none; }
  }

  @media (min-width: 1025px) {
    .msb-lp .msb-lp-timeline__list { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 40px; }
    .msb-lp .msb-lp-timeline::before,
    .msb-lp .msb-lp-timeline::after { display: none; }
  }

  @media (max-width: 767px) {
    .msb-lp .msb-lp-shell { width: min(100% - 32px, 1140px); }
    .msb-lp .msb-lp-section { padding: 48px 0; }
    .msb-lp .msb-lp-section--compact { padding: 40px 0; }
    .msb-lp .msb-lp-hero { padding: 56px 0; }

    .msb-lp .msb-lp-final { padding: 56px 0; }
    .msb-lp .msb-lp-hero h1 { font-size: 36px; }
    .msb-lp .msb-lp-hero__lead { font-size: 18px; }

    .msb-lp .msb-lp-section-heading { font-size: 24px; }
    .msb-lp .msb-lp-hero__action .msb-lp-button,
    .msb-lp .msb-lp-section-cta .msb-lp-button,
    .msb-lp .msb-lp-final .msb-lp-button { width: 100%; }
    .msb-lp .msb-lp-recognition__grid,
    .msb-lp .msb-lp-timeline__list,
    .msb-lp .msb-lp-attorney__grid { grid-template-columns: 1fr; }
    .msb-lp .msb-lp-timeline__list { gap: 24px; }
    .msb-lp .msb-lp-timeline__item {
      align-items: start;
      column-gap: 20px;
      display: grid;
      grid-template-columns: 56px 1fr;
      padding-bottom: 8px;
    }
    .msb-lp .msb-lp-timeline__item::before {
      background: var(--msb-line);
      bottom: 0;
      content: "";
      left: 27px;
      position: absolute;
      top: 0;
      width: 2px;
    }
    .msb-lp .msb-lp-timeline__number { grid-column: 1; grid-row: 1; }
    .msb-lp .msb-lp-timeline__item h3 { grid-column: 2; grid-row: 1; margin-top: 0; }
    .msb-lp .msb-lp-timeline__item p { grid-column: 2; grid-row: 2; }
    .msb-lp .msb-lp-attorney__grid { gap: 32px; }
    .msb-lp .msb-lp-attorney__frame,
    .msb-lp .msb-lp-attorney__body { grid-column: 1; grid-row: auto; }
    .msb-lp .msb-lp-attorney__frame { margin-inline: auto; max-width: 340px; }
    .msb-lp .msb-lp-attorney__name { font-size: 28px; }
  }

  @media (prefers-reduced-motion: reduce) {
    .msb-lp *,
    .msb-lp *::before,
    .msb-lp *::after {
      animation-duration: .01ms !important;
      animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
      transition-duration: .01ms !important;
    }
    .msb-lp .msb-lp-timeline::after { transform: scaleX(1); }

    .msb-lp .msb-lp-eyebrow--reveal::before { transform: scaleX(1); }
    .msb-lp .msb-lp-final .msb-lp-button.msb-lp-halo-active::after { animation: none; opacity: 0; }
  }
