/* Current reference: Untitled (Copy).pdf, 29 September 2026, from the unified
   Figma file SplG4RANXDETREQn45h1gT. Wide frames use a 1280px content grid.
   Laptop layouts follow the CSS viewport, independently of device pixel ratio. */

/* Flexible partner grids preserve the wide layout without overflowing laptops. */
@media (min-width: 1025px) {
  .offer-v2 {
    grid-template-columns: minmax(0, 693fr) minmax(0, 515fr);
    column-gap: clamp(32px, 3.8vw, 73px);
    margin-left: 0;
  }
  .offer-v2__title { grid-column: 1; white-space: normal; }
  .offer-v2__lead { position: static; grid-column: 2; grid-row: 1; align-self: center; }
  .offer-v2__best { height: auto; min-height: 173px; padding-bottom: 28px; }
  .partners-v2__pair { height: auto; min-height: 444px; padding-bottom: 80px; }
  .partners-v2__pair-inner { grid-template-columns: minmax(0, 598fr) minmax(0, 682fr); gap: 40px; }
  .partners-v2__benefits { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-left: 0; }
  .benefit-v2 { height: auto; min-height: 312px; padding-bottom: 32px; }
  .benefit-v2:nth-child(3) { margin-left: 0; }
  .partners-v2__approach { grid-template-columns: minmax(0, 420fr) minmax(0, 820fr); gap: 40px; }
  .partners-v2__dark { height: auto; min-height: 1465px; overflow: visible; }
  .process-v2 { height: auto; min-height: 506px; padding-bottom: 64px; margin-left: 0; }
  .process-v2__steps { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 24px; margin-left: 0; }
  .process-v2__steps::before { width: 100%; }
  .partners-v2__talk { height: auto; min-height: 544px; padding-bottom: 70px; }
}

/* Preserve the single-line offer headings in the wide reference frames. */
@media (min-width: 1920px) {
  .offer-v2__title { grid-column: 1 / -1; white-space: nowrap; }
  .offer-v2__lead { position: absolute; top: 36.5px; right: 0; text-align: right; }
}

/* The source is wide desktop. Between tablet and 1920px, reduce display type
   and whitespace together. Body text stays at least 16px; no page zoom. */
@media (min-width: 1025px) and (max-width: 1919px) {
  .home-hero__title, .partners-v2__title {
    font-size: clamp(64px, 5.28125vw, 101.4px);
    line-height: 1.06;
  }
  .home-v2 .v2-h2, .home-subscribe .v2-subscribe__title,
  .partners-v2__h2, .offer-v2__title {
    font-size: clamp(40px, 3.125vw, 60px);
    line-height: 1.2;
  }
  .home-hero { height: clamp(480px, 30.573vw, 587px); background-position: 50% 80px, 50% 100%, 0 0; }
  .home-hero__slide { padding-top: clamp(150px, 10.448vw, 200.6px); }
  .home-hero__dots { top: auto; bottom: 6px; }
  .home-hero__text, .partners-v2__lead, .partners-v2__text,
  .home-leaders__text, .home-subscribe .v2-subscribe__text {
    font-size: clamp(18px, 1.25vw, 24px);
    line-height: 1.5;
  }
  .home-features { padding-block: clamp(40px, 3.8vw, 73px); }
  .home-feature { padding-top: 24px; }
  .home-insights { padding-block: clamp(64px, 6.31vw, 121.17px); }
  .home-insights__grid { margin-top: clamp(32px, 3.012vw, 57.83px); gap: clamp(24px, 2.031vw, 39px); }
  .home-insights__list { padding-left: clamp(24px, 2.135vw, 41px); }
  .insight-lead__title { font-size: clamp(30px, 2.083vw, 40px); line-height: 1.3; margin-top: 24px; }
  .insight-row__title { font-size: clamp(20px, 1.25vw, 24px); line-height: 1.5; }
  .home-leaders { padding-block: clamp(64px, 5.22vw, 100px); }
  .home-leaders__grid { margin-top: 40px; }
  .home-leaders__aside { width: 42%; margin-top: 8px; }
  .home-leaders__text { width: 100%; }
  .home-leaders__button { margin-top: 16px; }
  .home-vision { padding-block: clamp(64px, 5.22vw, 100px); }
  .home-vision__card { display: grid; grid-template-columns: minmax(0, 346fr) minmax(0, 666fr); gap: 48px; height: auto; padding: 56px; }
  .home-vision__cover { position: static; width: 100%; height: auto; aspect-ratio: 346 / 490; align-self: center; }
  .home-vision__body { padding: 0; align-self: center; min-width: 0; }
  .home-vision__button { margin-top: 32px; }
  .home-subscribe { padding-block: clamp(64px, 5.22vw, 100px); }
  .partners-v2__hero { height: auto; min-height: clamp(520px, 37.604vw, 722px); padding-top: clamp(160px, 12.583vw, 241.6px); padding-bottom: 64px; }
  .partners-v2__lead { margin-top: 32px; }
  .partners-v2__cta { margin-top: 32px; }
  .partners-v2__ways, .partners-v2__offers, .partners-v2__pair, .partners-v2__talk { padding-block: clamp(64px, 5.22vw, 100px); }
  .offer-v2 + .offer-v2, .offer-v2 + .offer-v2 + .offer-v2 + .offer-v2 { margin-top: clamp(64px, 5.22vw, 100px); }
  .offer-v2__lead, .offer-v2__list { font-size: clamp(17px, 1.042vw, 20px); line-height: 1.5; }
  .offer-v2__best, .offer-v2__list { margin-top: 32px; }
  .offer-v2__best { padding: 28px 24px; }
  .offer-v2__best-icon { top: 28px; left: 24px; }
  .offer-v2__best-label, .offer-v2__best-text { margin-left: 34px; }
  .partners-v2__pair, .partners-v2__talk { min-height: 0; }
  .partners-v2__dark { min-height: 0; padding-top: clamp(64px, 5.22vw, 100px); }
  .partners-v2__benefits { margin-top: 48px; gap: 24px; }
  .benefit-v2 { min-height: 0; padding: 32px 24px; }
  .benefit-v2__title, .pair-v2__title { font-size: 22px; line-height: 1.4; }
  .benefit-v2__title { margin-top: 24px; }
  .partners-v2__approach { margin-top: 80px; }
  .process-v2 { min-height: 0; padding-top: 64px; margin-top: 80px; }
  .process-v2__text { line-height: 1.5; }
}

/* Keep navigation within the same content bounds on narrow desktop windows. */
@media (min-width: 1025px) and (max-width: 1240px) {
  .v2-wrap { width: calc(100% - 64px); }
  .site-header__nav { gap: 18px; margin-left: 28px; }
  .site-header__actions { gap: 12px; }
  .site-header__actions .v2-btn { padding-inline: 18px; }
  .home-vision__card { padding: 40px; gap: 32px; }
  .offer-v2__title { font-size: 36px; }
  .benefit-v2__title { font-size: 20px; }
}

/* Vision uses the same unscaled container as the header and footer.
   Fixed column count prevents one issue stretching across the entire row. */
.visions-v2 { font-family: var(--v2-font); padding-block: 64px 80px; gap: 56px; }
.visions-v2 .visions-page__list { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.visions-v2 .visions-page__item { min-width: 0; }
.visions-v2 .vision-card { width: 100%; max-width: none; gap: 24px; padding: 20px; }
.visions-v2 .vision-card__cover { flex-shrink: 0; }
.visions-v2 .vision-card__image { object-fit: contain; }
.visions-v2 .vision-card__body { flex: 1; padding: 0; }
.visions-v2 .vision-card__footer { margin-top: auto; padding-top: 8px; }
.visions-v2 .vision-card__title { line-height: 1.3; }
.visions-v2 .vision-card__description { font-size: 16px; line-height: 1.5; }
@media (max-width: 1024px) {
  .visions-v2 { padding-block: 40px 56px; gap: 40px; }
  .visions-v2 .visions-page__list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 600px) {
  .visions-v2 .visions-page__list { grid-template-columns: minmax(0, 1fr); }
}

/* Insight article, PDF pages 1–3: 720px story + 64px gap + 374px sidebar. */
.story--sidebar { padding-top: 120px; }
.story--sidebar > .v2-wrap { max-width: 1158px; }
.story__layout { display: grid; grid-template-columns: minmax(0, 720fr) minmax(0, 374fr); gap: 64px; align-items: start; }
.story__main, .story__sidebar { min-width: 0; }
.story--sidebar .story__head { display: block; margin-top: 0; padding: 0; }
.story--sidebar .story__title { max-width: 610px; }
.story--sidebar .story__lead { margin-top: 32px; padding: 0; }
.story--sidebar .story__meta { align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 32px; padding: 0; }
.story--sidebar .story__meta .v2-kicker { margin-right: auto; }
.story__author { display: flex; align-items: center; gap: 10px; font-size: 16px; }
.story__author img { width: 36px; height: 36px; object-fit: cover; }
.story__author + .story__date { border-left: 1px solid var(--v2-rule); padding-left: 16px; }
.story--sidebar .story__cover { position: relative; margin: 32px 0 0; aspect-ratio: 720 / 405; }
.story--sidebar .story__cover .story__share { position: absolute; bottom: 0; right: 0; }
.story__share--standalone { margin-top: 24px; }
.story--sidebar .story__body { margin-top: 32px; line-height: 24px; }
.story--sidebar .story__body p + p { margin-top: 16px; }
.story--sidebar .story__body h2 { line-height: 1.2; }
.story__sidebar { display: flex; flex-direction: column; gap: 28px; }
.story__sidebar .v2-subscribe--card { float: none; clear: none; width: 100%; max-width: none; margin: 0; padding: 40px 18px; }
.story__sidebar .v2-subscribe__title { font-size: 36px; line-height: 40px; }
.story__sidebar .v2-subscribe__text { font-size: 14px; line-height: 20px; margin-top: 16px; }
.story__sidebar .v2-subscribe__form { margin-top: 24px; width: 100%; }
.story__sidebar .v2-subscribe__consent { font-size: 11px; line-height: 17px; margin-top: 12px; }
.story__sidebar .sidebar-banner { display: block; width: 100%; }
.story__sidebar .sidebar-banner__image { width: 100%; height: auto; }
.story__socials { display: grid; gap: 12px; }
.story__socials a { display: flex; gap: 12px; align-items: center; padding: 12px 20px; background: var(--v2-blue); color: #fff; font-size: 16px; }
.story__socials .icon, .story__socials svg { width: 20px; height: 20px; }
@media (min-width: 1025px) and (max-width: 1279px) {
  .story--sidebar { padding-top: 64px; }
  .story__layout { gap: 32px; }
  .story--sidebar .story__title { font-size: 48px; line-height: 1.2; }
  .story--sidebar .story__lead { font-size: 20px; line-height: 1.5; }
  .story__sidebar .v2-subscribe__title { font-size: 28px; line-height: 32px; }
}
@media (max-width: 1024px) {
  .story--sidebar { padding-top: 40px; }
  .story__layout { grid-template-columns: minmax(0, 1fr); gap: 48px; }
  .story--sidebar .story__title { max-width: none; }
  .story--sidebar .story__meta { gap: 12px; }
  .story--sidebar .story__lead { margin-top: 24px; }
  .story__sidebar { max-width: 520px; width: 100%; margin-inline: auto; }
  .story__sidebar .v2-subscribe__title { font-size: 32px; line-height: 36px; }
}
