/* ==========================================================================
   Athios — platform home page (/)
   Layers on home.css: Gilroy, tokens, buttons, eyebrow, headings, chips and
   the open-call card come from there. Blocks follow the content-block deck:
   hero V2, proof V2, problem V2, solution V5, features V3, case study V1,
   comparison V3, FAQ V1, final CTA V3.
   ========================================================================== */

.pl-page {
  --pl-cream: #f8f6ef;
  --pl-green-wash: #e8f1d6;
  --pl-green-soft: #f1f6e6;
  --pl-line: #e2e5dd;
  --pl-green: #2f9e44;
  --pl-amber: #d99a1e;
  --pl-red: #d93a3a;
  --hm-body: 1.125rem;
  background: var(--pl-cream);
}

.pl-page .hm-lead { font-size: 1.1875rem; line-height: 1.6; }
.pl-h2 { font-size: clamp(2.125rem, 3.8vw, 3.25rem); }
.pl-center { text-align: center; }
.pl-lead--center { max-width: 640px; margin: 1rem auto 0; }
.pl-fine { margin: 1.5rem 0 0; font-size: 0.75rem; color: var(--hm-ink-muted); }
.pl-eyebrow--green { color: var(--pl-green); }
.pl-eyebrow--mono { letter-spacing: 0.16em; }

.pl-btn--lg { padding: 1rem 1.625rem; font-size: 0.8125rem; }
.pl-btn--ink { border-color: var(--hm-ink); color: var(--hm-ink); }
.pl-btn--ink:hover { background: var(--hm-ink); color: var(--hm-white); border-color: var(--hm-ink); }
.pl-btn--light { border-color: rgba(255, 255, 255, .5); color: var(--hm-white); }
.pl-btn--light:hover { background: var(--hm-white); color: var(--hm-ink); border-color: var(--hm-white); }
.pl-btn--dark { background: var(--hm-dark); color: var(--hm-white); }
.pl-btn--dark:hover { background: #2a2f37; }

/* The two tier illustrations carry a "TIER n" label and a name banner.
   This window shows only the monster (roughly 10% to 78% of the height). */
.pl-crop { position: relative; overflow: hidden; }
.pl-crop img {
  position: absolute !important;
  left: 50%;
  top: -13%;
  height: 161% !important;
  width: auto !important;
  max-width: none !important;
  max-height: none !important;
  transform: translateX(-50%) !important;
}

.pl-kicker {
  margin: 0 0 0.375rem;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.pl-kicker--green { color: var(--pl-green); }

/* --------------------------------------------------------------------------
   00 Beta bar + 01 Nav (light)
   -------------------------------------------------------------------------- */

.pl-beta { background: var(--pl-green-wash); border-bottom: 1px solid var(--pl-line); }
.pl-beta__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem 1rem;
  padding-block: 0.5rem;
}
.pl-beta__text { margin: 0; font-size: 0.9375rem; color: var(--hm-ink); }

.pl-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(248, 246, 239, .92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--pl-line);
}
.pl-nav__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; min-height: 72px; }
.pl-nav__logo img { display: block; height: 30px; width: auto; }
.pl-nav__links { display: flex; gap: 0.25rem; }
.pl-nav__links a {
  padding: 0.5rem 0.875rem;
  border-radius: 999px;
  font-size: 0.9375rem;
  font-weight: 700;
  text-decoration: none;
  color: var(--hm-ink-muted);
}
.pl-nav__links a:hover { color: var(--hm-ink); }
.pl-nav__links a[aria-current="page"] { color: var(--hm-ink); background: var(--pl-green-wash); }
.pl-nav__actions { display: flex; align-items: center; gap: 0.625rem; }
.pl-nav__actions .hm-btn { white-space: nowrap; }

@media (max-width: 900px) {
  .pl-nav__links { display: none; }
  .pl-nav__inner { min-height: 64px; }
  .pl-nav__logo img { height: 26px; }
}

/* --------------------------------------------------------------------------
   02 Hero (V2)
   -------------------------------------------------------------------------- */

.pl-hero { padding-block: clamp(2rem, 5vw, 4.5rem) clamp(2rem, 5vw, 4rem); overflow: hidden; }
.pl-hero__grid { display: grid; grid-template-columns: 1fr; gap: 3rem; align-items: center; }
.pl-hero__title { font-size: clamp(2.5rem, 4.8vw, 4rem); }
.pl-hero__title { max-width: 620px; font-size: clamp(2.5rem, 4.6vw, 3.875rem); line-height: 1.04; }
.pl-hero__lead { max-width: 560px; margin: 1.25rem 0 0; }

.pl-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.75rem; }

.pl-paths { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-top: 1.75rem; padding-top: 1.25rem; border-top: 1px solid var(--pl-line); }
/* Label on its own line, three pills in one row beneath it at every width. */
.pl-paths__label { flex: 0 0 100%; margin-bottom: 0.25rem; }
.pl-path { flex: 1 1 0; min-width: 0; justify-content: center; white-space: nowrap; text-align: center; }
@media (max-width: 480px) {
  .pl-paths { gap: 0.375rem; }
  .pl-path { padding: 0.5rem 0.375rem; font-size: 0.6875rem; }
  .pl-path__icon { display: none; }
}
.pl-paths__label { margin-right: 0.25rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--hm-ink-muted); }
.pl-path {
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--pl-line);
  border-radius: 999px;
  background: var(--hm-white);
  font-size: 0.8125rem;
  font-weight: 700;
  text-decoration: none;
  color: var(--hm-ink);
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.pl-path:hover { border-color: var(--hm-ink); }
.pl-path--active { background: var(--pl-green-wash); border-color: transparent; }

/* Stage: green blob, call card centre, monsters around it */
.pl-hero__stage { position: relative; min-height: 600px; }
.pl-hero__blob {
  position: absolute;
  inset: 8% -4% 4% -6%;
  border-radius: 48% 52% 46% 54% / 55% 45% 55% 45%;
  background: var(--pl-green-wash);
}
.pl-hero__stage img { position: absolute; height: auto; }
.pl-hero__crown { left: 40%; top: -6%; z-index: 1; width: 56%; }
.pl-hero__ball { left: -6%; bottom: 6%; z-index: 3; width: 38%; }
.pl-hero__bunny { right: -8%; bottom: 0; z-index: 3; width: 48%; }

.pl-call {
  position: absolute;
  left: 24%;
  top: 20%;
  z-index: 2;
  width: 54%;
  min-width: 250px;
  padding: 1rem 1rem 1.125rem;
}
.pl-call__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 0.625rem; }
.pl-call__label { font-size: 0.75rem; font-weight: 700; }
.pl-call__dots { color: var(--hm-ink-muted); letter-spacing: .1em; }
.pl-call__media {
  position: relative;
  display: flex;
  align-items: flex-start;
  height: 120px;
  padding: 0.625rem;
  border-radius: 12px;
  overflow: hidden;
  background: #1f3b2a;
  margin-bottom: 0.75rem;
}
.pl-call__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 60%; }
.pl-call__media .hm-chip { position: relative; z-index: 1; }
.pl-call .hm-call__title { font-size: 1.25rem; }
.pl-call__meta { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; margin-top: 0.25rem; font-size: 0.75rem; font-weight: 700; }
.pl-call__match { color: var(--pl-green); }
.pl-call__closes { color: var(--hm-orange); }
.pl-call__foot { display: flex; align-items: center; gap: 0.5rem; margin-top: 0.75rem; font-size: 0.75rem; color: var(--hm-ink-muted); }
.pl-avatars { display: inline-flex; }
.pl-avatars i { width: 20px; height: 20px; margin-right: -6px; border: 2px solid #fff; border-radius: 50%; background: #c7d8b0; }
.pl-avatars i:nth-child(2) { background: #f3c9a6; }
.pl-avatars i:nth-child(3) { background: #9fd3c9; }
.pl-avatars i:nth-child(4) { background: #e8b4d9; }
.pl-call__btn { width: 100%; margin-top: 0.875rem; padding: 0.75rem 1rem; font-size: 0.6875rem; }

.pl-chip {
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
  padding: 0.75rem 0.875rem;
  border-radius: 14px;
  background: var(--hm-white);
  color: var(--hm-ink);
  box-shadow: 0 16px 36px rgba(20, 23, 28, .14);
}
.pl-chip__check { flex: 0 0 auto; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: var(--pl-green); color: #fff; font-size: 0.75rem; font-weight: 900; }
.pl-chip__text { display: flex; flex-direction: column; line-height: 1.3; }
.pl-chip__text b { font-size: 0.875rem; font-weight: 900; }
.pl-chip__text small { font-size: 0.6875rem; color: var(--hm-ink-muted); }
.pl-hero__chip { position: absolute; left: 50%; bottom: -2%; z-index: 4; width: 300px; max-width: 90%; transform: translateX(-50%); }

@media (min-width: 960px) {
  .pl-hero__grid { grid-template-columns: 0.95fr 1.05fr; gap: 2.5rem; }
  .pl-hero__stage { margin-right: -3rem; }
}
@media (max-width: 760px) {
  .pl-hero__stage { min-height: 0; aspect-ratio: 1 / 1.05; padding-bottom: 4.5rem; box-sizing: content-box; }
  .pl-hero__blob { bottom: 3.5rem; }
  .pl-call { left: 22%; top: 10%; width: 58%; }
  .pl-hero__ball, .pl-hero__bunny { bottom: 4.5rem; }
  .pl-hero__chip { left: 0; right: 0; bottom: 0; width: auto; max-width: none; transform: none; }
  .pl-actions .hm-btn { width: 100%; }
}

/* --------------------------------------------------------------------------
   03 Proof (V3, deck page 8): green panel with headline + stacked stats on
   the left; logo grid, two video cards and a dark testimonial bar on the right.
   -------------------------------------------------------------------------- */

.pl-proof { background: var(--pl-cream); padding-block: clamp(2rem, 4vw, 3rem); }
.pl-proof__grid { display: grid; grid-template-columns: 1fr; gap: 1rem; align-items: stretch; }

.pl-proof__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: clamp(1.25rem, 2vw, 1.75rem) clamp(1.25rem, 2vw, 1.75rem) 0;
  border: 1px solid var(--pl-line);
  border-radius: var(--hm-radius-lg);
  background: var(--pl-green-wash);
}
.pl-proof__title { margin: 0; font-size: clamp(1.75rem, 2.5vw, 2.25rem); line-height: 1.08; }
.pl-proof__title .hm-accent { display: inline; }
.pl-proof__title::after { content: ""; display: block; width: 120px; height: 4px; margin-top: 0.875rem; border-radius: 2px; background: var(--hm-orange); }

.pl-vstats { margin: 1.125rem 0 0; padding: 0; list-style: none; }
.pl-vstats li { display: flex; align-items: center; gap: 0.875rem; padding: 0.625rem 0; border-top: 1px solid rgba(20, 23, 28, .14); }
.pl-vstats li:first-child { border-top: 0; padding-top: 0.25rem; }
.pl-vstats__icon { flex: 0 0 auto; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; background: var(--hm-orange); color: #fff; font-size: 1.375rem; }
.pl-vstats__icon svg { width: 28px; height: 28px; display: block; }
.pl-vstats b { display: block; font-size: clamp(1.75rem, 2.6vw, 2.25rem); font-weight: 900; line-height: 1; }
.pl-vstats small { display: block; margin-top: 0.25rem; font-size: 1rem; font-weight: 700; color: var(--hm-ink); }
.pl-proof__note { margin: 0; font-size: 0.6875rem; color: var(--hm-ink-muted); }
.pl-proof__foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 0.75rem; margin-top: auto; padding-top: 0.75rem; }
.pl-proof__mascot { display: block; width: 38%; max-width: 120px; height: auto; margin-bottom: -2px; }
.pl-proof__foot .pl-proof__note { padding-bottom: 1rem; text-align: right; }

.pl-proof__side { display: grid; grid-template-rows: auto 1fr auto; gap: 1rem; }

.pl-logogrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.75rem; margin: 0; padding: 0; list-style: none; }
.pl-logogrid li { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 0.625rem; min-height: 60px; padding: 0.625rem 0.875rem; border: 1px solid var(--pl-line); border-radius: 16px; background: var(--hm-white); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--hm-ink); }
.pl-logogrid i { font-style: normal; font-size: 1.25rem; line-height: 1; }

.pl-videos { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.pl-vcard { position: relative; overflow: hidden; min-height: 200px; max-height: 340px; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--pl-green-wash); }
.pl-vcard__scene { position: absolute; inset: 0; background: linear-gradient(180deg, #e9f5d8 0%, #e9f5d8 60%, #e2b57e 60%, #d9a86f 100%); }
.pl-vcard__scene--studio { background: linear-gradient(180deg, #e9f5d8 0%, #dfeccb 70%, #cfe0b4 100%); }
.pl-vcard__scene--studio::before { content: ""; position: absolute; left: 70%; right: 10%; top: 18%; height: 34%; border-radius: 6px; background: rgba(255,255,255,.65); }
.pl-vcard__tag { position: absolute; left: 0.875rem; top: 0.875rem; z-index: 3; display: inline-flex; align-items: center; gap: 0.375rem; padding: 0.375rem 0.625rem; border-radius: 999px; background: rgba(255,255,255,.95); font-size: 0.6875rem; font-weight: 700; }
.pl-vcard__tag i { font-style: normal; font-size: 0.5625rem; color: var(--hm-orange); }
.pl-vcard__art { position: absolute; left: 50%; bottom: -4%; z-index: 1; width: 92%; height: auto; transform: translateX(-50%); }
.pl-vcard__art--brand { width: 66%; left: 56%; bottom: 10%; }
.pl-vcard__cap { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; padding: 1.75rem 0.875rem 0.75rem; background: linear-gradient(180deg, rgba(18,21,26,0) 0%, rgba(18,21,26,.85) 60%); color: #fff; }
.pl-vcard__cap b { display: block; font-size: 1.0625rem; font-weight: 900; }
.pl-vcard__cap small { display: block; font-size: 0.8125rem; color: rgba(255,255,255,.8); }

.pl-play {
  position: absolute; left: 50%; top: 50%; z-index: 4;
  display: grid; place-items: center; width: 72px; height: 72px;
  border: 0; border-radius: 50%; background: var(--hm-white); color: var(--hm-orange);
  font-size: 1.375rem; transform: translate(-50%, -50%);
  box-shadow: 0 12px 30px rgba(0,0,0,.2); cursor: pointer;
}
.pl-play--sm { width: 56px; height: 56px; font-size: 1.0625rem; top: 46%; }

.pl-tbar { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 0.875rem; margin: 0; padding: 1rem 8.5rem 1rem 1.25rem; overflow: hidden; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-tbar__mark { font-size: 3.5rem; line-height: 0.8; font-weight: 900; color: var(--hm-orange); }
.pl-tbar__text { margin: 0; font-size: 1.125rem; font-weight: 900; line-height: 1.3; }
.pl-tbar__chip { display: inline-block; margin-top: 0.75rem; padding: 0.375rem 0.75rem; border: 1px solid rgba(255,255,255,.25); border-radius: 999px; font-size: 0.6875rem; font-weight: 700; }
.pl-tbar__who { margin-top: 0.625rem; font-size: 0.8125rem; color: var(--hm-on-dark-muted); }
.pl-tbar__mascot { position: absolute; right: -0.5rem; bottom: -0.75rem; width: 130px; height: auto; }

/* Legacy story card styles kept for the audience pages. */
.pl-story { position: relative; overflow: hidden; min-height: 300px; border-radius: var(--hm-radius-lg); background: var(--pl-green-wash); }
.pl-story--brand { min-height: 220px; }
.pl-story__tag { position: absolute; left: 1rem; top: 1rem; z-index: 2; padding: 0.5rem 0.875rem; border-radius: 999px; background: var(--hm-orange); color: #fff; font-size: 0.8125rem; font-weight: 900; }
.pl-story__video { position: absolute; left: 1rem; top: 3.25rem; z-index: 2; padding: 0.375rem 0.625rem; border-radius: 999px; background: rgba(255,255,255,.9); font-size: 0.6875rem; font-weight: 700; }
.pl-story__art { position: absolute; inset: 0; display: grid; place-items: end center; }
.pl-story__art img { display: block; width: 72%; max-width: 420px; height: auto; }
.pl-story__who { position: absolute; left: 1rem; bottom: 1rem; z-index: 2; display: flex; align-items: center; gap: 0.625rem; padding: 0.5rem 0.875rem 0.5rem 0.5rem; border-radius: 999px; background: var(--hm-dark); color: #fff; }
.pl-story__avatar { width: 30px; height: 30px; border-radius: 50%; background: #3a3f48; }
.pl-story__who b { display: block; font-size: 0.8125rem; }
.pl-story__who small { display: block; font-size: 0.6875rem; color: var(--hm-on-dark-muted); }
.pl-stats { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; padding: 1.25rem 1.5rem 2rem; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-stat b { display: block; font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 900; line-height: 1; color: var(--hm-orange); }
.pl-stat span { display: block; margin-top: 0.375rem; font-size: 0.8125rem; font-weight: 700; }
.pl-stats__note { position: absolute; left: 1.5rem; bottom: 0.625rem; margin: 0; font-size: 0.6875rem; color: var(--hm-on-dark-muted); }
.pl-quote { position: relative; margin: 0; padding: 1.25rem 7rem 1.25rem 1.5rem; border: 1.5px solid var(--hm-orange); border-radius: var(--hm-radius-lg); background: var(--hm-white); overflow: hidden; }
.pl-quote__mark { position: absolute; left: 1rem; top: 0.25rem; font-size: 3rem; line-height: 1; color: var(--hm-orange); font-weight: 900; }
.pl-quote__text { margin: 0.5rem 0 0 1.75rem; font-size: 1.125rem; font-weight: 900; line-height: 1.3; }
.pl-quote__who { margin: 0.75rem 0 0 1.75rem; font-size: 0.8125rem; }
.pl-quote__who b { display: block; }
.pl-quote__who small { color: var(--hm-ink-muted); }
.pl-quote__mascot { position: absolute; right: -0.5rem; bottom: -0.75rem; width: 110px; height: auto; }
.pl-logos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.75rem; margin: 1.5rem 0 0; padding: 0; list-style: none; }
.pl-logos li { padding: 1.125rem; border: 1px dashed var(--pl-line); border-radius: 14px; background: var(--pl-green-soft); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; text-align: center; color: var(--hm-ink-muted); }

@media (min-width: 900px) {
  .pl-proof__grid { grid-template-columns: 0.6fr 1.4fr; }
  .pl-proof__side { grid-template-rows: auto 1fr auto; }
  .pl-logogrid { grid-template-columns: repeat(3, 1fr); }
  .pl-videos { grid-template-columns: 1fr 1fr; }
  .pl-logos { grid-template-columns: repeat(6, 1fr); }
}

/* --------------------------------------------------------------------------
   04 Problem (V2)
   -------------------------------------------------------------------------- */

.pl-problem { background: var(--pl-cream); }
.pl-problem__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: start; }
.pl-problem__copy .pl-h2 { max-width: 520px; }
.pl-problem__art { margin-top: 1.5rem; }
.pl-problem__art img { display: block; width: 100%; max-width: 520px; height: auto; }

.pl-problem__cards { display: grid; grid-template-columns: 1fr; gap: 1rem; }
.pl-pcard { padding: 1.25rem; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--pl-green-soft); }
.pl-pcard__art { display: grid; place-items: center; height: 150px; overflow: hidden; border-radius: 14px; background: var(--hm-white); }
.pl-pcard__art img { display: block; max-height: 130px; width: auto; max-width: 90%; }
.pl-pcard__title { margin: 1rem 0 0.375rem; font-size: 1.5rem; font-weight: 900; }
.pl-pcard__body { margin: 0; font-size: 1.0625rem; line-height: 1.6; color: var(--hm-ink-muted); }

@media (min-width: 900px) {
  .pl-problem__grid { grid-template-columns: 1fr 1.15fr; gap: 3rem; }
  .pl-problem__cards { grid-template-columns: 1fr 1fr; }
  .pl-problem__cards .pl-pcard:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: 220px 1fr; column-gap: 1.25rem; align-items: center; }
  .pl-problem__cards .pl-pcard:last-child .pl-pcard__art { grid-row: 1 / 3; height: 200px; }
  .pl-problem__cards .pl-pcard:last-child .pl-pcard__title { margin-top: 0; }
}

/* --------------------------------------------------------------------------
   05 Solution (V5)
   -------------------------------------------------------------------------- */

.pl-solution { background: linear-gradient(180deg, var(--hm-green) 0%, var(--hm-green-pale) 100%); }
.pl-steps { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2.5rem; }
.pl-scard { display: grid; grid-template-rows: auto 1fr; padding: 1.25rem; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--hm-white); }
.pl-scard__head { display: flex; gap: 0.875rem; }
.pl-num { flex: 0 0 auto; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--hm-dark); color: #fff; font-weight: 900; }
.pl-scard__title { margin: 0.25rem 0 0.25rem; font-size: 1.375rem; font-weight: 900; }
.pl-scard__body { margin: 0; font-size: 1.0625rem; line-height: 1.55; color: var(--hm-ink-muted); }
.pl-scard__art { display: grid; place-items: end center; height: 190px; margin-top: 1rem; overflow: hidden; border-radius: 14px; background: var(--pl-green-soft); }
.pl-scard__art img { display: block; max-height: 170px; width: auto; max-width: 85%; }

.pl-status { position: relative; display: flex; align-items: center; gap: 1rem; margin-top: 2rem; }
.pl-status__left, .pl-status__right { display: none; width: 150px; height: auto; flex: 0 0 auto; }
.pl-status__card { flex: 1; padding: 1.25rem 1.5rem; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-status__head { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.pl-status__title { margin: 0; font-size: 1.25rem; font-weight: 900; }
.pl-status__note { font-size: 0.6875rem; color: var(--hm-on-dark-muted); }
.pl-track { display: grid; grid-template-columns: repeat(6, 1fr); margin: 1.25rem 0 0; padding: 0; list-style: none; }
.pl-track li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 0.5rem; text-align: center; font-size: 0.75rem; font-weight: 700; }
.pl-track li::before { content: ""; position: absolute; left: 50%; right: -50%; top: 16px; height: 3px; background: #3a3f48; }
.pl-track li.is-done::before { background: var(--pl-green); }
.pl-track li:last-child::before { display: none; }
.pl-track__dot { position: relative; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: #3a3f48; color: #fff; font-size: 0.75rem; }
.pl-track li.is-done .pl-track__dot { background: var(--pl-green); }
.pl-track li.is-now .pl-track__dot { background: #fff; box-shadow: inset 0 0 0 4px var(--hm-orange); }
.pl-solution__cta { margin-top: 2rem; }

@media (min-width: 900px) {
  .pl-steps { grid-template-columns: repeat(3, 1fr); grid-template-rows: auto auto; }
  .pl-scard { grid-template-rows: subgrid; grid-row: span 2; }
  .pl-scard__art { align-self: end; }
  .pl-status__left, .pl-status__right { display: block; }
}
@media (max-width: 640px) {
  .pl-track { grid-template-columns: repeat(3, 1fr); row-gap: 1.25rem; }
  .pl-track li:nth-child(3)::before { display: none; }
}

/* --------------------------------------------------------------------------
   06 Features (V3)
   -------------------------------------------------------------------------- */

.pl-features { background: var(--hm-white); }
.pl-fgrid { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2.5rem; }
.pl-fcard { padding: 1rem 1rem 1.375rem; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--pl-cream); }
.pl-fcard__art { display: grid; place-items: end center; height: 200px; overflow: hidden; border-radius: 14px; background: var(--pl-green-wash); }
.pl-fcard__art img { display: block; max-height: 180px; width: auto; max-width: 85%; }
.pl-fcard__title { margin: 1rem 0.25rem 0.375rem; font-size: 1.5rem; font-weight: 900; }
.pl-fcard__body { margin: 0 0.25rem; font-size: 1.0625rem; line-height: 1.6; color: var(--hm-ink-muted); }

@media (min-width: 700px) { .pl-fgrid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .pl-fgrid { grid-template-columns: repeat(3, 1fr); } }

/* --------------------------------------------------------------------------
   07 Case study (V1)
   -------------------------------------------------------------------------- */

.pl-case { background: var(--pl-cream); }
.pl-case .pl-h2 { max-width: 800px; }
.pl-case__grid { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2rem; }
.pl-ccard { padding: 1.25rem; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-ccard__art { position: relative; display: grid; place-items: end center; height: 260px; overflow: hidden; border-radius: 14px; background: var(--pl-green-wash); }
.pl-ccard__art img { display: block; width: 90%; max-width: 520px; height: auto; }
.pl-ccard__note { position: absolute; left: 0.75rem; bottom: 0.5rem; font-size: 0.625rem; color: var(--hm-ink-muted); }
.pl-ccard__label { display: block; margin-top: 1.25rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--hm-on-dark-muted); }
.pl-ccard__title { margin: 0.375rem 0 0; font-size: 1.75rem; font-weight: 900; }
.pl-ccard__stat { margin: 0.5rem 0 0; font-size: 1rem; color: var(--hm-on-dark-muted); }
.pl-ccard__stat b { font-size: 3rem; font-weight: 900; line-height: 1; color: var(--hm-orange); margin-right: 0.5rem; }
.pl-ccard__body { margin: 0.75rem 0 1.25rem; font-size: 0.9375rem; line-height: 1.6; color: var(--hm-on-dark-muted); }

.pl-quotes { display: grid; gap: 1rem; }
.pl-qcard { display: grid; grid-template-columns: 64px 1fr; column-gap: 1rem; align-items: start; margin: 0; padding: 1.25rem; border-radius: var(--hm-radius-lg); background: var(--pl-green-wash); }
.pl-qcard__avatar { grid-row: 1 / 3; display: grid; place-items: center; width: 64px; height: 64px; overflow: hidden; border-radius: 50%; background: var(--hm-white); }
.pl-qcard__avatar img { width: 48px; height: 48px; object-fit: contain; }
.pl-qcard p { margin: 0; font-size: 1.0625rem; line-height: 1.5; }
.pl-qcard footer { margin-top: 0.5rem; font-size: 0.8125rem; }
.pl-qcard footer b { display: block; }
.pl-qcard footer small { color: var(--hm-ink-muted); }

@media (min-width: 900px) { .pl-case__grid { grid-template-columns: 1.3fr 1fr; } }

/* --------------------------------------------------------------------------
   08 Comparison (V3)
   -------------------------------------------------------------------------- */

.pl-compare { background: linear-gradient(180deg, var(--hm-green) 0%, var(--hm-green-pale) 100%); }
.pl-compare__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: start; }
.pl-compare__copy .pl-h2 { max-width: 360px; }
.pl-compare__mascot { display: block; width: 200px; height: auto; margin-top: 1.5rem; }

.pl-table-wrap { min-width: 0; overflow-x: auto; }
.pl-compare__grid > * { min-width: 0; }
.pl-table { width: 100%; min-width: 640px; border-collapse: separate; border-spacing: 0; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--hm-white); overflow: hidden; font-size: 1rem; }
.pl-table th, .pl-table td { padding: 0.875rem 1rem; border-bottom: 1px solid var(--pl-line); text-align: left; vertical-align: middle; }
.pl-table tbody tr:last-child th, .pl-table tbody tr:last-child td { border-bottom: 0; }
.pl-table thead th { font-size: 0.9375rem; font-weight: 900; }
.pl-table tbody th { font-weight: 900; }
.pl-table .is-athios { background: var(--hm-dark); color: #fff; }
.pl-table thead .is-athios { position: relative; font-size: 1.125rem; }
.pl-table__badge { position: absolute; left: 50%; top: 0.5rem; transform: translateX(-50%); white-space: nowrap; padding: 0.3rem 0.625rem; border-radius: 999px; background: var(--hm-orange); color: #fff; font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.pl-table thead { padding-top: 1rem; }
.pl-table thead tr th { padding-top: 2.25rem; }
.pl-mark { display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 0.5rem; border-radius: 50%; vertical-align: -5px; color: #fff; font-style: normal; font-size: 0.6875rem; font-weight: 900; }
.pl-mark--yes { background: var(--pl-green); } .pl-mark--yes::before { content: "\2713"; }
.pl-mark--part { background: var(--pl-amber); } .pl-mark--part::before { content: "\2013"; }
.pl-mark--no { background: var(--pl-red); } .pl-mark--no::before { content: "\2715"; }
.pl-table__outcome td { padding-top: 1rem; padding-bottom: 1rem; }
.pl-table__outcome b { display: block; font-weight: 900; }
.pl-table__outcome small { display: block; font-size: 0.75rem; color: var(--hm-ink-muted); }
.pl-table__outcome .is-athios small { color: var(--hm-on-dark-muted); }
.pl-pips { display: inline-flex; gap: 4px; margin-bottom: 0.375rem; }
.pl-pips i { width: 26px; height: 9px; border-radius: 999px; background: #e0e3e8; }
.pl-pips i.is-red { background: var(--pl-red); }
.pl-pips i.is-green { background: var(--pl-green); }
.pl-legend { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin: 1rem 0 0; padding: 0.875rem 1rem; border: 1px solid var(--pl-line); border-radius: 14px; background: var(--hm-white); font-size: 0.8125rem; font-weight: 700; }

@media (min-width: 900px) { .pl-compare__grid { grid-template-columns: 280px 1fr; gap: 3rem; } }

/* --------------------------------------------------------------------------
   09 FAQ (V1)
   -------------------------------------------------------------------------- */

.pl-faq { background: var(--hm-white); }
.pl-faq__grid { display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: start; }
.pl-faq__list { padding: 0.5rem 1.5rem; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--pl-cream); }
.pl-q { border-bottom: 1px solid var(--pl-line); }
.pl-q:last-child { border-bottom: 0; }
.pl-q summary { display: flex; align-items: center; gap: 0.875rem; padding: 1.125rem 0; font-size: 1.25rem; font-weight: 900; list-style: none; cursor: pointer; }
.pl-q summary::-webkit-details-marker { display: none; }
.pl-q summary::before { content: "+"; flex: 0 0 auto; display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--hm-orange); color: #fff; font-size: 1.125rem; line-height: 1; }
.pl-q[open] summary::before { content: "\2013"; }
.pl-q p { margin: 0 0 1.125rem 2.75rem; font-size: 1.0625rem; line-height: 1.6; color: var(--hm-ink-muted); }

.pl-faq__panel { position: relative; overflow: hidden; padding: 2rem 1.5rem 0; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-faq__title { font-size: clamp(2rem, 3.4vw, 2.75rem); }
.pl-faq__lead { margin: 1rem 0 1.5rem; font-size: 1.0625rem; color: var(--hm-on-dark-muted); }
.pl-faq__mascots { display: flex; align-items: flex-end; justify-content: center; gap: 0.5rem; margin-top: 1.5rem; }
.pl-faq__mascots img { height: auto; }
.pl-faq__mascots img:nth-child(1) { width: 32%; }
.pl-faq__mascots img:nth-child(2) { width: 26%; }
.pl-faq__mascots img:nth-child(3) { width: 42%; }

@media (min-width: 900px) {
  .pl-faq__grid { grid-template-columns: 1.5fr 1fr; gap: 2rem; }
  .pl-faq__panel { position: sticky; top: 6rem; }
}

/* --------------------------------------------------------------------------
   10 Final CTA (V3)
   -------------------------------------------------------------------------- */

.pl-final { background: var(--pl-cream); }
.pl-final__band { display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: center; padding: clamp(1.5rem, 3.5vw, 2.5rem); border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-final__title { max-width: 620px; }
.pl-final__lead { margin: 0.875rem 0 0; max-width: 560px; color: var(--hm-on-dark-muted); }
.pl-final__actions { display: grid; gap: 0.75rem; }

.pl-guide { display: grid; grid-template-columns: 1fr; gap: 1.5rem; align-items: center; margin-top: 1rem; padding: clamp(1.25rem, 3vw, 2rem); border-radius: var(--hm-radius-lg); background: var(--pl-green-wash); }
.pl-guide__art { position: relative; height: 220px; }
.pl-guide__art img { position: absolute; bottom: 0; height: auto; }
.pl-guide__m1 { left: 4%; width: 36%; max-width: 170px; }
.pl-guide__m2 { right: 0; width: 50%; max-width: 220px; }
.pl-guide__title { margin: 0.25rem 0 0; font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 900; line-height: 1.05; letter-spacing: -.015em; }
.pl-guide__lead { margin: 0.875rem 0 0; font-size: 1.0625rem; line-height: 1.6; color: var(--hm-ink-muted); }

.pl-form { padding: 1.25rem; border: 1.5px solid var(--hm-ink); border-radius: var(--hm-radius-lg); background: var(--hm-white); }
.pl-field { display: block; margin-bottom: 0.875rem; }
.pl-field span { display: block; margin-bottom: 0.375rem; font-size: 0.8125rem; font-weight: 900; }
.pl-field input, .pl-field select { width: 100%; padding: 0.8125rem 0.9375rem; border: 1.5px solid var(--pl-line); border-radius: 12px; font-family: inherit; font-size: 1rem; color: var(--hm-ink); background: var(--hm-white); }
.pl-field input:focus, .pl-field select:focus { outline: none; border-color: var(--hm-orange); }
.pl-form__submit { width: 100%; }
.pl-form__fine { margin: 0.75rem 0 0; font-size: 0.75rem; text-align: center; color: var(--hm-ink-muted); }

@media (min-width: 900px) {
  .pl-final__band { grid-template-columns: 1.4fr auto; }
  .pl-guide { grid-template-columns: 1fr 1.2fr 1fr; }
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */

.pl-footer { padding-block: 2.5rem; border-top: 1px solid var(--pl-line); background: var(--pl-cream); }
.pl-footer__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.pl-footer__brand { grid-column: 1 / -1; }
.pl-footer__logo img { display: block; height: 32px; width: auto; }
.pl-footer__tag { margin: 0.75rem 0 0; font-size: 0.9375rem; color: var(--hm-ink-muted); }
.pl-social { display: flex; gap: 0.5rem; margin-top: 1rem; }
.pl-social a { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--hm-dark); color: #fff; font-size: 0.6875rem; font-weight: 900; text-decoration: none; text-transform: lowercase; }
.pl-footer__legal { margin: 1.25rem 0 0; font-size: 0.75rem; color: var(--hm-ink-muted); }
.pl-footer__col { display: flex; flex-direction: column; gap: 0.5rem; }
.pl-footer__col h4 { margin: 0 0 0.25rem; font-size: 0.9375rem; font-weight: 900; }
.pl-footer__col a { font-size: 0.9375rem; text-decoration: none; color: var(--hm-ink-muted); }
.pl-footer__col a:hover { color: var(--hm-ink); }

@media (min-width: 900px) {
  .pl-footer__grid { grid-template-columns: 1.6fr repeat(4, 1fr); }
  .pl-footer__brand { grid-column: auto; }
}

/* Anchored jumps land below the sticky nav. */
.pl-solution, .pl-features, .pl-faq, .pl-final, .pl-form { scroll-margin-top: 84px; }

/* ==========================================================================
   Audience pages (/for-athletes, /for-brands, /for-universities, /partners)
   Blocks these pages add on top of the home page system.
   ========================================================================== */

.pl-placeholder {
  padding: 0 0.3em;
  border-radius: 6px;
  background: rgba(244, 104, 43, .16);
  color: var(--hm-orange);
  font-style: normal;
  font-weight: 700;
}
.pl-mt { margin-top: 2rem; }
.pl-h2--wide { max-width: 820px; }

/* Hero chip row (divisions, partner types, athlete tiers) */
.pl-chipset { display: flex; flex-wrap: wrap; align-items: center; gap: 0.5rem; margin-top: 1.5rem; }
.pl-chipset--center { justify-content: center; margin: 1.5rem 0 1rem; }
.pl-chipset__label { flex: 0 0 100%; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--hm-ink-muted); }
.pl-chipset--center .pl-chipset__label { display: none; }
.pl-chipset__chip { padding: 0.5rem 0.875rem; border: 1px solid var(--pl-line); border-radius: 999px; background: var(--hm-white); font-size: 0.8125rem; font-weight: 700; }
.pl-chipset__chip.is-on { background: var(--hm-dark); border-color: var(--hm-dark); color: #fff; }
.pl-chipset__chip.is-all { background: var(--hm-white); border-color: var(--pl-line); color: var(--hm-ink); }

/* Hero cards */
.pl-call__brief { margin: 0.25rem 0 0; font-size: 0.8125rem; line-height: 1.5; color: var(--hm-ink-muted); }
.pl-call--list .pl-panel__rows { margin-top: 0.25rem; }
.pl-prog { margin: 0.5rem 0 0.75rem; }
.pl-prog__row { display: flex; justify-content: space-between; font-size: 0.75rem; font-weight: 700; margin-bottom: 0.375rem; }
.pl-prog__row b { color: var(--pl-green); }
.pl-prog__track { display: block; height: 8px; border-radius: 999px; background: #e6e9ec; }
.pl-prog__track i { display: block; height: 100%; border-radius: 999px; background: var(--pl-green); }

/* Light stats row */
.pl-stats--light { background: var(--hm-white); border: 1px solid var(--pl-line); color: var(--hm-ink); text-align: center; }
.pl-stats--light .pl-stat b { color: var(--hm-ink); }
.pl-stats--light .pl-stat b .pl-placeholder { font-size: 0.7em; }
.pl-stats--light .pl-stats__note { color: var(--hm-ink-muted); left: 0; right: 0; text-align: center; }

.pl-photos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.75rem; margin: 0; padding: 0; list-style: none; }
.pl-photos li { display: grid; place-items: center; aspect-ratio: 4 / 3; border: 1px dashed var(--pl-line); border-radius: 14px; background: var(--pl-green-soft); font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--hm-ink-muted); }
@media (min-width: 760px) { .pl-photos { grid-template-columns: repeat(4, 1fr); } }

/* Testimonial trio: video, quote, video */
.pl-trio { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 1.5rem; }
.pl-trio .pl-story { min-height: 320px; }
.pl-quote--tall { padding: 2rem 1.5rem 5.5rem; }
@media (min-width: 900px) { .pl-trio { grid-template-columns: 1fr 1fr 1fr; } }

/* Problem cards without the two-column layout */
.pl-pcards { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2rem; }
.pl-pcard--plain .pl-pcard__art { height: 170px; }
@media (min-width: 760px) { .pl-pcards { grid-template-columns: repeat(3, 1fr); } .pl-pcards--4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .pl-pcards--4 { grid-template-columns: repeat(4, 1fr); } }

/* Solution split: copy and numbered list left, visual right */
.pl-split { display: grid; grid-template-columns: 1fr; gap: 2.5rem; align-items: center; }
.pl-split__lead { max-width: 560px; margin: 1rem 0 0; }
.pl-list { margin: 1.75rem 0 2rem; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 1.25rem; }
.pl-list li { display: flex; gap: 1rem; align-items: flex-start; }
.pl-list h3 { margin: 0.25rem 0 0.25rem; font-size: 1.25rem; font-weight: 900; }
.pl-list p { margin: 0; font-size: 1rem; line-height: 1.55; color: var(--hm-ink-muted); }
.pl-split__visual { display: flex; }
.pl-split__visual > * { flex: 1; }
.pl-status__card--tall { position: relative; padding-bottom: 1.5rem; }
.pl-status__card--tall .pl-track { grid-template-columns: repeat(3, 1fr); row-gap: 1.5rem; margin-top: 1.75rem; }
.pl-status__card--tall .pl-track li:nth-child(3)::before { display: none; }
.pl-status__mascots { display: flex; justify-content: center; align-items: flex-end; gap: 1rem; margin-top: 1.5rem; }
.pl-status__mascots img { width: 38%; max-width: 180px; height: auto; }
.pl-status__crop { object-fit: cover; object-position: 50% 30%; height: 150px; width: 40% !important; border-radius: 12px; }

.pl-panel { position: relative; overflow: hidden; padding: 1.25rem 1.5rem 1.5rem; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-panel__rows { margin: 1.25rem 0 0; padding: 0; list-style: none; }
.pl-panel__rows li { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 0.875rem 0; border-top: 1px solid rgba(255,255,255,.12); font-size: 0.9375rem; }
.pl-panel__rows li b { font-size: 1.25rem; font-weight: 900; color: #fff; }
.pl-panel__rows--tight li { padding: 0.625rem 0; border-color: var(--pl-line); font-size: 0.8125rem; }
.pl-panel__rows--tight li b { font-size: 0.9375rem; color: var(--hm-ink); }
.pl-call .pl-panel__rows--tight li:first-child { border-top: 0; }
.pl-panel__foot { margin: 1rem 0 0; font-size: 0.8125rem; color: var(--hm-on-dark-muted); }
.pl-panel__mascot { position: absolute; right: -0.5rem; bottom: -0.75rem; width: 130px; height: auto; }
.pl-panel .pl-panel__rows { padding-right: 6rem; }
@media (min-width: 900px) { .pl-split { grid-template-columns: 1.05fr 1fr; gap: 4rem; } }

/* Three-ways cards and tier cards (title, bullets, art) */
.pl-wgrid, .pl-tiers { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: 2rem; }
.pl-wcard, .pl-tcard, .pl-rcard { display: flex; flex-direction: column; padding: 1.5rem; border: 1px solid var(--pl-line); border-radius: var(--hm-radius-lg); background: var(--hm-white); }
.pl-wcard__label { font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--hm-orange); }
.pl-wcard__title { margin: 0.5rem 0 0.375rem; font-size: 1.5rem; font-weight: 900; }
.pl-wcard__body { margin: 0; font-size: 1rem; line-height: 1.55; color: var(--hm-ink-muted); }
.pl-bullets { margin: 1rem 0 0; padding-left: 1.125rem; font-size: 0.9375rem; line-height: 1.5; color: var(--hm-ink); }
.pl-bullets li + li { margin-top: 0.375rem; }
.pl-bullets li::marker { color: var(--hm-orange); }
.pl-wcard__art, .pl-tcard__art { display: grid; place-items: end center; height: 170px; margin-top: auto; padding-top: 1.25rem; overflow: hidden; border-radius: 14px; background: var(--pl-green-soft); }
.pl-wcard__art img, .pl-tcard__art img { display: block; max-height: 150px; width: auto; max-width: 85%; }
.pl-wcard__art.pl-crop, .pl-tcard__art.pl-crop { padding-top: 0; }
.pl-tcard { background: var(--pl-cream); }
.pl-tcard__art { height: 220px; }
.pl-tiers { margin-bottom: 1rem; }
@media (min-width: 900px) { .pl-wgrid { grid-template-columns: repeat(3, 1fr); } .pl-tiers { grid-template-columns: 1fr 1fr; } }

/* Partner role cards */
.pl-roles { display: grid; grid-template-columns: 1fr; gap: 1rem; margin: 2rem 0 1rem; }
.pl-rcard { background: var(--pl-cream); }
@media (min-width: 700px) { .pl-roles { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1000px) { .pl-roles { grid-template-columns: repeat(4, 1fr); } }

/* Four small benefit tiles under the tiers */
.pl-fgrid--mini { margin-top: 1rem; }
.pl-fgrid--mini .pl-fcard__art { height: 140px; }
.pl-fgrid--mini .pl-fcard__art img { max-height: 120px; }
.pl-fgrid--mini .pl-fcard__title { font-size: 1.25rem; }
@media (min-width: 1000px) { .pl-fgrid--mini { grid-template-columns: repeat(4, 1fr); } }

/* Final band note + amber pips */
.pl-final__fine { margin: 1rem 0 0; font-size: 0.875rem; color: var(--hm-on-dark-muted); }
.pl-pips i.is-amber { background: var(--pl-amber); }

/* Story cards are tall, so the tier crop only needs a gentle zoom there. */
.pl-story__art.pl-crop img { top: -6% !important; height: 118% !important; }

/* Placeholder frame for a monster that has not been drawn yet. Swap the div
   for an <img> once the file lands; see design/monsters-brief.md. */
.pl-slot {
  display: grid;
  place-content: center;
  gap: 0.25rem;
  border: 2px dashed #b9c7a3;
  background: repeating-linear-gradient(-45deg, var(--pl-green-soft) 0 10px, #eef4e2 10px 20px);
  text-align: center;
}
.pl-slot span { font-size: 0.625rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--hm-ink-muted); }
.pl-slot b { font-size: 1rem; font-weight: 900; color: var(--hm-ink); }

/* ==========================================================================
   Early-access popup (injected by js/landing.js)
   ========================================================================== */

.pl-ea-open { overflow: hidden; }
.pl-ea { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 1rem; }
.pl-ea[hidden] { display: none; }
.pl-ea__backdrop { position: absolute; inset: 0; background: rgba(18, 21, 26, .62); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.pl-ea__dialog {
  position: relative;
  width: min(560px, 100%);
  max-height: calc(100vh - 2rem);
  overflow: auto;
  padding: clamp(1.5rem, 4vw, 2.5rem);
  border-radius: var(--hm-radius-lg);
  background: var(--pl-cream);
  box-shadow: 0 30px 80px rgba(0, 0, 0, .35);
  font-family: Gilroy, "Helvetica Neue", Arial, sans-serif;
  color: var(--hm-ink);
}
.pl-ea__close {
  position: absolute; right: 0.875rem; top: 0.875rem;
  width: 36px; height: 36px; border: 0; border-radius: 50%;
  background: var(--hm-white); color: var(--hm-ink); font-size: 1.375rem; line-height: 1; cursor: pointer;
}
.pl-ea__kicker { margin: 0 0 0.5rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--pl-green); }
.pl-ea__title { margin: 0 2.5rem 1.25rem 0; font-size: clamp(1.625rem, 3.4vw, 2.125rem); font-weight: 900; line-height: 1.1; letter-spacing: -.015em; }
.pl-ea__tiles { display: grid; grid-template-columns: 1fr; gap: 0.75rem; }
.pl-ea__tile {
  display: flex; flex-direction: column; gap: 0.25rem; align-items: flex-start;
  padding: 1rem 1.125rem; border: 1.5px solid var(--pl-line); border-radius: 16px;
  background: var(--hm-white); font-family: inherit; text-align: left; cursor: pointer;
  transition: border-color .15s ease, transform .15s ease;
}
.pl-ea__tile:hover { border-color: var(--hm-ink); transform: translateY(-1px); }
.pl-ea__tile:focus-visible { outline: 2px solid var(--hm-orange); outline-offset: 2px; }
.pl-ea__tile.is-on { border-color: var(--hm-orange); }
.pl-ea__tile b { font-size: 1.125rem; font-weight: 900; }
.pl-ea__tile small { font-size: 0.875rem; color: var(--hm-ink-muted); }
.pl-ea__picked { margin: 0 0 1rem; font-size: 0.9375rem; }
.pl-ea__change { padding: 0; border: 0; background: none; font: inherit; font-weight: 700; color: var(--hm-orange); text-decoration: underline; cursor: pointer; }
.pl-ea__field { display: block; margin-bottom: 1rem; }
.pl-ea__field span { display: block; margin-bottom: 0.375rem; font-size: 0.8125rem; font-weight: 900; }
.pl-ea__field input { width: 100%; padding: 0.875rem 1rem; border: 1.5px solid var(--pl-line); border-radius: 12px; font-family: inherit; font-size: 1rem; color: var(--hm-ink); background: var(--hm-white); }
.pl-ea__field input:focus { outline: none; border-color: var(--hm-orange); }
.pl-ea__submit { width: 100%; padding: 1rem 1.5rem; font-size: 0.8125rem; }
.pl-ea__fine { margin: 0.875rem 0 0; font-size: 0.8125rem; text-align: center; color: var(--hm-ink-muted); }
.pl-ea__fine a { color: var(--hm-ink); font-weight: 700; }
@media (min-width: 560px) { .pl-ea__tiles { grid-template-columns: repeat(3, 1fr); } .pl-ea__tile { padding: 1.125rem 1rem; } }

.pl-ea-thanks {
  position: fixed; left: 50%; bottom: 1.25rem; z-index: 90; transform: translateX(-50%);
  display: flex; align-items: center; gap: 0.75rem; max-width: calc(100% - 2rem);
  padding: 0.875rem 1rem 0.875rem 1.25rem; border-radius: 999px;
  background: var(--hm-dark); color: #fff; font-family: Gilroy, "Helvetica Neue", Arial, sans-serif; font-size: 0.9375rem;
  box-shadow: 0 16px 40px rgba(0,0,0,.3);
}
.pl-ea-thanks button { border: 0; background: rgba(255,255,255,.15); color: #fff; width: 28px; height: 28px; border-radius: 50%; font-size: 1.125rem; line-height: 1; cursor: pointer; }

/* ==========================================================================
   Home hero: fanned content cards (deck block 02 V3 on the light theme)
   ========================================================================== */

.pl-fan { min-height: 600px; }
.pl-fan .pl-hero__blob { inset: 12% -6% 2% -8%; }
.pl-fan__crown { position: absolute; left: 50%; top: -4%; z-index: 1; width: 46%; height: auto; transform: translateX(-52%); }

.pl-tcard-hero {
  position: absolute;
  bottom: 4%;
  width: 46%;
  padding: 0.75rem 0.875rem 1rem;
  border: 2px solid var(--hm-ink);
  border-radius: 20px;
  background: var(--hm-white);
  box-shadow: 0 18px 40px rgba(20, 23, 28, .18);
  transform-origin: 50% 100%;
}
.pl-tcard-hero--left   { left: -2%; z-index: 2; transform: rotate(-11deg) translateY(14%); }
.pl-tcard-hero--center { left: 50%; z-index: 4; width: 50%; transform: translateX(-50%) translateY(-22%); }
.pl-tcard-hero--right  { right: -2%; z-index: 3; transform: rotate(11deg) translateY(14%); }

.pl-tcard-hero__heart { position: absolute; right: 0.75rem; top: 0.625rem; z-index: 1; font-size: 1rem; color: var(--hm-ink); }
.pl-tcard-hero__art {
  display: grid;
  place-items: end center;
  aspect-ratio: 1 / 0.8;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(180deg, var(--pl-green-wash) 0%, #d6e8c0 100%);
}
.pl-tcard-hero__art img { display: block; width: 78%; max-height: 92%; height: auto; object-fit: contain; }
.pl-tcard-hero--center .pl-tcard-hero__art { aspect-ratio: 1 / 1; }
.pl-tcard-hero--center .pl-tcard-hero__art img { width: 84%; }
.pl-tcard-hero__title { margin: 0.75rem 0 0.25rem; font-size: clamp(1.125rem, 1.9vw, 1.625rem); font-weight: 900; letter-spacing: -.01em; }
.pl-tcard-hero--center .pl-tcard-hero__title { font-size: clamp(1.375rem, 2.3vw, 2rem); }
.pl-tcard-hero__meta { display: flex; flex-direction: column; gap: 0.2rem; margin: 0; font-size: 0.75rem; font-weight: 700; color: var(--hm-ink-muted); }
.pl-tcard-hero__meta .is-orange { color: var(--hm-orange); }

.pl-fan__badge {
  position: absolute;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.875rem;
  border: 1.5px solid var(--hm-ink);
  border-radius: 999px;
  background: var(--hm-white);
  font-size: 0.8125rem;
  font-weight: 900;
  box-shadow: 0 10px 24px rgba(20, 23, 28, .14);
  white-space: nowrap;
}
.pl-fan__badge--offers { right: -2%; top: 6%; }
.pl-fan__badge--match { left: 2%; top: 30%; background: var(--hm-dark); color: #c8f135; border-color: var(--hm-dark); }
.pl-fan__bars { display: inline-flex; align-items: flex-end; gap: 2px; height: 14px; }
.pl-fan__bars i { width: 4px; border-radius: 2px; background: var(--hm-orange); }
.pl-fan__bars i:nth-child(1) { height: 6px; } .pl-fan__bars i:nth-child(2) { height: 10px; } .pl-fan__bars i:nth-child(3) { height: 14px; }

@media (max-width: 760px) {
  .pl-fan { min-height: 0; aspect-ratio: 1 / 1.08; padding-bottom: 0; }
  .pl-fan .pl-hero__blob { bottom: 0; }
  .pl-tcard-hero { width: 48%; padding: 0.5rem 0.625rem 0.75rem; }
  .pl-tcard-hero--center { width: 54%; }
  .pl-tcard-hero--left { left: -3%; }
  .pl-tcard-hero--right { right: -3%; }
  .pl-tcard-hero__meta { font-size: 0.6875rem; }
  .pl-fan__badge { font-size: 0.6875rem; padding: 0.5rem 0.75rem; }
  .pl-fan__badge--offers { right: 0; top: 4%; }
  .pl-fan__badge--match { left: 0; top: 26%; }
}

/* Hero accent cards (deck page 3): match card, offer-accepted card, heart, sparks */

.pl-mcard {
  position: absolute;
  left: -6%;
  top: 13%;
  z-index: 5;
  width: 236px;
  padding: 0.75rem 0.875rem 0.875rem;
  border-radius: 16px;
  background: var(--hm-white);
  box-shadow: 0 16px 36px rgba(20, 23, 28, .16);
  transform: rotate(-4deg);
}
.pl-mcard__top { display: flex; align-items: center; gap: 0.625rem; }
.pl-mcard__top b { flex: 1; font-size: 1.0625rem; font-weight: 900; }
.pl-mcard__icon { display: inline-flex; align-items: flex-end; gap: 3px; width: 34px; height: 34px; padding: 8px 7px; border-radius: 10px; background: var(--pl-green-wash); }
.pl-mcard__icon i { width: 5px; border-radius: 2px; background: var(--pl-green); }
.pl-mcard__icon i:nth-child(1) { height: 35%; } .pl-mcard__icon i:nth-child(2) { height: 65%; } .pl-mcard__icon i:nth-child(3) { height: 100%; }
.pl-mcard__go { font-size: 1.375rem; line-height: 1; color: var(--hm-ink-muted); }
.pl-mcard__chips { display: flex; flex-wrap: wrap; gap: 0.375rem; margin-top: 0.625rem; }
.pl-mcard__chips span { padding: 0.3rem 0.5rem; border-radius: 999px; background: var(--pl-green-soft); font-size: 0.6875rem; font-weight: 700; color: #2d6a1f; }

.pl-ocard {
  position: absolute;
  right: -5%;
  top: 30%;
  z-index: 6;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 250px;
  padding: 0.875rem 1rem;
  border-radius: 16px;
  background: var(--hm-white);
  box-shadow: 0 16px 36px rgba(20, 23, 28, .16);
  transform: rotate(3deg);
}
.pl-ocard__check { flex: 0 0 auto; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--hm-orange); color: #fff; font-size: 1.25rem; font-weight: 900; }
.pl-ocard__text { display: flex; flex-direction: column; line-height: 1.3; }
.pl-ocard__text b { font-size: 0.9375rem; font-weight: 900; }
.pl-ocard__text small { font-size: 0.75rem; color: var(--hm-ink-muted); }

.pl-heart {
  position: absolute;
  right: 3%;
  bottom: 2%;
  z-index: 5;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--hm-white);
  color: #ff5a7a;
  font-size: 1rem;
  box-shadow: 0 10px 24px rgba(20, 23, 28, .14);
  transform: rotate(6deg);
}

/* Short orange accent strokes, like the marks around the mock's monsters. */
.pl-spark { position: absolute; z-index: 1; width: 22px; height: 4px; border-radius: 2px; background: var(--hm-orange); }
.pl-spark--1 { left: 30%; top: 12%; transform: rotate(-55deg); }
.pl-spark--2 { left: 34%; top: 9%; transform: rotate(-20deg); }
.pl-spark--3 { right: 8%; top: 62%; transform: rotate(40deg); background: var(--pl-green); }

@media (max-width: 760px) {
  /* Phones: the stage is too tight for the two accent cards; keep the pill and heart. */
  .pl-mcard, .pl-ocard { display: none; }
  .pl-mcard { left: 0; top: 6%; width: 182px; padding: 0.625rem 0.75rem; }
  .pl-mcard__top b { font-size: 0.9375rem; }
  .pl-mcard__chips span { font-size: 0.625rem; padding: 0.25rem 0.5rem; }
  .pl-ocard { right: -2%; top: 30%; width: 186px; padding: 0.625rem 0.75rem; }
  .pl-ocard__check { width: 34px; height: 34px; font-size: 1rem; }
  .pl-ocard__text b { font-size: 0.8125rem; }
  .pl-ocard__text small { font-size: 0.6875rem; }
  .pl-heart { right: 2%; bottom: 4%; width: 30px; height: 30px; }
  .pl-fan { padding-bottom: 2rem; }
}

/* Live partnership bar in the proof block */
.pl-live { display: grid; grid-template-columns: 1fr; gap: 0.875rem; align-items: center; padding: 1rem 1.25rem; border-radius: var(--hm-radius-lg); background: var(--hm-dark); color: #fff; }
.pl-live__kicker { display: block; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: #c8f562; }
.pl-live__who b { display: block; font-size: clamp(1.375rem, 2.2vw, 1.875rem); font-weight: 900; line-height: 1.1; }
.pl-live__seal { display: block; width: 88px; height: 88px; border-radius: 50%; background: #fff; object-fit: contain; }
.pl-live__what b { display: block; font-size: 1.125rem; font-weight: 900; }
.pl-live__what span { display: block; font-size: 0.9375rem; color: var(--hm-on-dark-muted); }
@media (min-width: 640px) { .pl-live { grid-template-columns: 1fr auto 1fr; gap: 1.5rem; padding: 1rem 1.75rem; } }

/* Proof video card rendered from a single image */
.pl-vcard--image { background: #e9f5d8; aspect-ratio: 944 / 744; }
.pl-vcard__full { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 50%; }

/* Brand story placeholder: a monster making an appearance at a restaurant */
.pl-vcard--cafe { background: #f3e3c3; align-self: stretch; }
.pl-cafe { position: absolute; inset: 0; background: linear-gradient(180deg, #f6ead0 0%, #f0dcb4 70%, #e2b57e 70%, #d9a86f 100%); }
.pl-cafe__awning { position: absolute; left: 0; right: 0; top: 0; height: 16%; background: repeating-linear-gradient(90deg, #f4682b 0 12%, #fff 12% 24%); border-bottom: 3px solid #14171c; box-shadow: 0 6px 0 rgba(20,23,28,.08); }
.pl-cafe__sign { position: absolute; right: 8%; top: 24%; padding: 0.25rem 0.625rem; border: 2px solid #14171c; border-radius: 8px; background: #fff; font-size: 0.75rem; font-weight: 900; letter-spacing: 0.14em; text-transform: uppercase; transform: rotate(4deg); }
.pl-cafe__window { position: absolute; left: 6%; top: 24%; width: 24%; height: 30%; border: 3px solid #14171c; border-radius: 8px; background: linear-gradient(135deg, #cfe5f0 0%, #eaf4f8 100%); }
.pl-cafe__monster { position: absolute; left: 66%; bottom: 24%; width: 36%; height: auto; transform: translateX(-50%); z-index: 1; }
.pl-cafe__table { position: absolute; left: 44%; right: 6%; bottom: 20%; height: 8%; border: 3px solid #14171c; border-radius: 8px 8px 0 0; background: #fff; z-index: 2; }
.pl-cafe__plate { position: absolute; left: 62%; bottom: 27%; width: 12%; height: 3%; border: 2px solid #14171c; border-radius: 50%; background: #f4f4f4; z-index: 3; }
.pl-vcard--cafe .pl-vcard__cap { z-index: 4; }

.pl-vcard--cafe .pl-play { left: 26%; top: 56%; }

/* Live text over the baked-in label and name pill of the athlete story art */
.pl-vcard--image { container-type: inline-size; }
.pl-vcard__cover { position: absolute; z-index: 2; display: flex; align-items: center; }
.pl-vcard__cover--label { left: 2.1%; top: 14.4%; width: 31%; height: 9.2%; gap: 1.8cqw; padding-left: 3cqw; border-radius: 1.8cqw; background: #fbf8ef; font-size: 2.9cqw; white-space: nowrap; font-weight: 700; color: #14171c; }
.pl-vcard__cover--label svg { flex: 0 0 auto; width: 4cqw; height: 4cqw; }
.pl-vcard__cover--name { left: 2.1%; top: 83.8%; width: 50.2%; height: 13.6%; gap: 3cqw; padding-left: 2.4cqw; border-radius: 2.2cqw; background: #14171c; color: #fff; }
.pl-vcard__avatar { flex: 0 0 auto; width: 8cqw; height: 8cqw; border-radius: 50%; background: #d8dce0; }
.pl-vcard__cover--name b { display: block; font-size: 3.6cqw; font-weight: 900; line-height: 1.2; }
.pl-vcard__cover--name small { display: block; font-size: 3.1cqw; color: rgba(255,255,255,.8); line-height: 1.2; }

/* Brand story card from a single image, live text over the baked-in tag and caption */
.pl-vcard--bimage { background: #5a3a22; container-type: inline-size; aspect-ratio: 944 / 744; max-height: none; }
.pl-vcard--bimage .pl-vcard__full { object-position: 50% 35%; }
.pl-bcover { position: absolute; z-index: 2; }
.pl-bcover--tag { left: 5.5%; top: 5%; width: 52.5%; height: 10.5%; display: flex; align-items: center; gap: 2.2cqw; padding-left: 4.4cqw; border-radius: 999px; background: #fbf8ef; white-space: nowrap; font-size: 3.6cqw; font-weight: 700; color: #14171c; }
.pl-bcover--tag i { font-style: normal; font-size: 3cqw; color: var(--hm-orange); }
.pl-bcover--cap { left: 0; right: 0; bottom: 0; height: 34%; display: flex; flex-direction: column; justify-content: flex-end; padding: 0 6cqw 5cqw; background: linear-gradient(180deg, rgba(20,16,12,0) 0%, #14100c 30%, #14100c 100%); color: #fff; }
.pl-bcover--cap b { display: block; font-size: 6.4cqw; font-weight: 900; line-height: 1.1; }
.pl-bcover--cap small { display: block; margin-top: 0.8cqw; font-size: 3.2cqw; color: rgba(255,255,255,.88); }

.pl-vcard__avatar--school { background: none; display: grid; place-items: center; }
.pl-vcard__avatar--school svg { width: 100%; height: 100%; display: block; }

/* ==========================================================================
   04 Problem (V1, deck page 9): dark band with four cream audience cards
   ========================================================================== */

.pl-prob { background: var(--hm-dark); color: #fff; padding-block: clamp(3rem, 6vw, 5rem); }
.pl-prob__eyebrow { display: flex; align-items: center; justify-content: center; gap: 1rem; margin: 0 0 1.25rem; font-size: 0.9375rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: #e9f5d8; }
.pl-prob__eyebrow i { width: 4px; height: 20px; border-radius: 2px; background: var(--hm-orange); transform: rotate(-25deg); }
.pl-prob__eyebrow i:last-child { transform: rotate(25deg); }
.pl-prob__title { margin: 0 auto; max-width: 1080px; text-align: center; font-size: clamp(1.875rem, 4vw, 3.375rem); font-weight: 900; line-height: 1.04; letter-spacing: -.025em; }
.pl-prob__orange { display: block; color: var(--hm-orange); }
.pl-prob__ul { text-decoration: underline; text-decoration-thickness: 4px; text-underline-offset: 0.14em; text-decoration-color: var(--hm-orange); }

.pl-prob__grid { display: grid; grid-template-columns: 1fr; gap: 1rem; margin-top: clamp(2rem, 4vw, 3rem); }
.pl-pc { padding: 1rem 1rem 1.5rem; border-radius: 22px; background: #fbf8ec; color: var(--hm-ink); }
.pl-pc__art { position: relative; height: 250px; overflow: hidden; border-radius: 16px; background: radial-gradient(ellipse at 50% 60%, #e2efc9 0%, #fbf8ec 72%); }
.pl-pc__monster { position: absolute; left: 50%; bottom: 0; z-index: 2; height: auto; transform: translateX(-50%); }
.pl-pc__art--ath .pl-pc__monster { width: 56%; left: 38%; }
.pl-pc__art--brand .pl-pc__monster { width: 78%; left: 56%; bottom: 0; }
.pl-pc__art--uni .pl-pc__monster { width: 78%; left: 64%; bottom: 0; }

.pl-pc__bub { position: absolute; z-index: 1; display: flex; align-items: center; gap: 0.375rem; padding: 0.375rem 0.5rem; border: 1.5px solid var(--hm-ink); border-radius: 10px; background: #fff; box-shadow: 2px 3px 0 rgba(20,23,28,.12); }
.pl-pc__bub i { flex: 0 0 auto; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; font-style: normal; font-size: 0.75rem; font-weight: 900; color: #fff; }
.pl-pc__bub i.is-ig { background: linear-gradient(135deg, #f9a03a, #e1306c 55%, #7a3fd1); }
.pl-pc__bub i.is-msg { background: #3a96f0; }
.pl-pc__bub i.is-x { background: #14171c; }
.pl-pc__bub em { display: block; width: 36px; height: 4px; border-radius: 2px; background: #cfd4d9; }
.pl-pc__bub em + em { margin-left: -2px; }
.pl-pc__bub--a { right: 6%; top: 8%; } .pl-pc__bub--b { right: 2%; top: 38%; } .pl-pc__bub--c { right: 12%; top: 66%; }

.pl-pc__sheet { position: absolute; left: 4%; top: 10%; z-index: 1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 3px; width: 38%; padding: 0.375rem; border: 1.5px solid var(--hm-ink); border-radius: 8px; background: #fff; }
.pl-pc__sheet i { height: 10px; background: #d9e6c6; } .pl-pc__sheet i:nth-child(2) { background: #f7a86a; } .pl-pc__sheet i:nth-child(5) { background: #8fc77a; }
.pl-pc__doc { position: absolute; right: 4%; top: 6%; z-index: 1; width: 40%; padding: 0.5rem 0.625rem; border: 1.5px solid var(--hm-ink); border-radius: 8px; background: #fff; transform: rotate(3deg); }
.pl-pc__doc b { display: block; font-size: 0.5625rem; font-weight: 900; letter-spacing: 0.06em; text-transform: uppercase; }
.pl-pc__doc em { display: block; height: 4px; margin-top: 5px; border-radius: 2px; background: #cfd4d9; }
.pl-pc__doc span { position: absolute; right: 0.5rem; bottom: 0.125rem; font-size: 1.5rem; font-weight: 900; }

.pl-pc__clip { position: absolute; left: 6%; top: 6%; z-index: 1; width: 44%; padding: 0.5rem 0.625rem 0.75rem; border: 2px solid var(--hm-ink); border-radius: 8px; background: #fff; }
.pl-pc__clip b { display: block; font-size: 0.625rem; font-weight: 900; }
.pl-pc__clip i { display: inline-block; width: 12px; height: 12px; margin: 6px 4px 0 0; border: 1.5px solid #9aa4b1; border-radius: 50%; }
.pl-pc__clip i.is-warn { background: var(--hm-orange); border-color: var(--hm-orange); color: #fff; font-size: 0.5rem; font-style: normal; line-height: 9px; text-align: center; }
.pl-pc__stack { position: absolute; left: 3%; bottom: 0; z-index: 1; width: 26%; height: 44%; border: 1.5px solid var(--hm-ink); border-radius: 4px 4px 0 0; background: repeating-linear-gradient(180deg, #fff 0 5px, #dfe3e6 5px 6px); }

.pl-pc__folder { position: absolute; z-index: 1; display: grid; place-items: center; width: 50px; height: 40px; border: 1.5px solid var(--hm-ink); border-radius: 8px; font-size: 1.25rem; box-shadow: 2px 3px 0 rgba(20,23,28,.12); }
.pl-pc__folder--a { left: 8%; top: 12%; background: #f8d77a; } .pl-pc__folder--b { left: 42%; top: 4%; background: #8ec3f0; }
.pl-pc__folder--c { right: 6%; top: 18%; background: #8fd08c; } .pl-pc__folder--d { right: 16%; top: 44%; background: #c9a8ee; }
.pl-pc__q { position: absolute; left: 36%; top: 38%; z-index: 1; font-size: 1.75rem; font-weight: 900; }
.pl-pc__trio { position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; display: flex; align-items: flex-end; justify-content: center; gap: 0.25rem; }
.pl-pc__trio img { height: auto; } .pl-pc__trio img:nth-child(1) { width: 38%; } .pl-pc__trio img:nth-child(2) { width: 40%; } .pl-pc__trio img:nth-child(3) { width: 40%; }

.pl-pc__dash { display: block; width: 28px; height: 8px; margin: 1.125rem 0 0.75rem 0.375rem; border-radius: 4px; background: var(--hm-orange); }
.pl-pc__title { margin: 0 0.375rem 0.375rem; font-size: 1.75rem; font-weight: 900; letter-spacing: -.02em; }
.pl-pc__body { margin: 0 0.375rem; font-size: 1.0625rem; line-height: 1.5; color: #3a3f47; }

@media (min-width: 700px) { .pl-prob__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1100px) { .pl-prob__grid { grid-template-columns: repeat(4, 1fr); } }

/* Problem cards now use the supplied illustrations; sized so the block fits one screen */
.pl-prob { padding-block: clamp(2rem, 3.5vw, 3rem); }
.pl-prob__grid { margin-top: clamp(1.25rem, 2.5vw, 2rem); }
.pl-pc { padding: 0.5rem 0.5rem 1.125rem; }
.pl-pc__img { display: block; width: 100%; height: auto; border-radius: 16px; }
.pl-pc__dash { margin: 0.5rem 0 0.5rem 0.875rem; }
.pl-pc__title { margin: 0 0.875rem 0.25rem; font-size: 1.625rem; }
.pl-pc__body { margin: 0 0.875rem; font-size: 1rem; line-height: 1.45; }

/* ==========================================================================
   05 Solution: V2 copy structure on the left, V1 dark-court hero on the right
   ========================================================================== */

.pl-sol { background: var(--pl-cream); padding-block: clamp(2rem, 4vw, 3.5rem); }
.pl-sol__grid { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: center; }

.pl-sol__eyebrow { display: inline-flex; align-items: flex-start; gap: 0.5rem; margin: 0 0 0.875rem; font-size: 0.875rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--hm-orange); }
.pl-sol__eyebrow span { width: 4px; height: 16px; border-radius: 2px; background: var(--pl-green); transform: rotate(25deg); }
.pl-sol__title { margin: 0; font-size: clamp(2rem, 3.8vw, 3.25rem); font-weight: 900; line-height: 1.04; letter-spacing: -.025em; }
.pl-sol__hl { display: inline-block; padding: 0 0.3em; margin-left: -0.3em; border-radius: 0.3em; background: #e9f5d8; }
.pl-sol__lead { max-width: 520px; margin: 1.25rem 0 0; font-size: 1.125rem; line-height: 1.55; color: #3a3f47; }

.pl-sol__steps { margin: 1.5rem 0 1.75rem; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 1.125rem; }
.pl-sol__steps li { display: flex; gap: 1rem; align-items: flex-start; }
.pl-sol__num { flex: 0 0 auto; display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: #e9f5d8; font-size: 1.5rem; font-weight: 900; }
.pl-sol__steps h3 { margin: 0 0 0.125rem; font-size: 1.375rem; font-weight: 900; letter-spacing: -.01em; }
.pl-sol__steps p { margin: 0; font-size: 1.0625rem; line-height: 1.4; color: #3a3f47; }

.pl-sol__stage { position: relative; min-height: 560px; padding: 8.5rem 1.25rem 1.5rem; border-radius: 28px; background: var(--hm-dark); overflow: hidden; }
.pl-sol__court { position: absolute; inset: 0; background:
    radial-gradient(ellipse 70% 38% at 50% 98%, transparent 62%, rgba(255,255,255,.07) 63%, rgba(255,255,255,.07) 64%, transparent 65%),
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.05) 0 28%, transparent 29%),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px) 0 0 / 100% 14%; }
.pl-sol__ball { position: absolute; right: 3%; top: 0.5rem; z-index: 1; width: 40%; max-width: 250px; height: auto; }
.pl-sol__crown { position: absolute; left: 0; bottom: 0; z-index: 3; width: 30%; max-width: 210px; height: auto; }

.pl-co { position: relative; z-index: 2; margin-left: auto; width: 70%; padding: 1rem 1.125rem 1.25rem; border-radius: 22px; background: #fbf8ec; color: var(--hm-ink); box-shadow: 0 24px 50px rgba(0,0,0,.4); }
.pl-co__head { display: flex; align-items: center; gap: 0.75rem; }
.pl-co__head b { display: block; font-size: 1.375rem; font-weight: 900; letter-spacing: -.01em; }
.pl-co__head small { display: block; font-size: 0.8125rem; color: var(--hm-ink-muted); }
.pl-co__avatar { flex: 0 0 auto; display: grid; place-items: end center; width: 56px; height: 56px; overflow: hidden; border-radius: 50%; background: #f6c7d8; }
.pl-co__avatar img { width: 120%; height: auto; max-width: none; transform: translateY(10%); }
.pl-co__count { margin: 1rem 0 0.375rem; font-size: 1rem; font-weight: 900; }
.pl-co__bar { display: block; height: 10px; border-radius: 999px; background: #e3e1d6; overflow: hidden; }
.pl-co__bar i { display: block; width: 33%; height: 100%; border-radius: 999px; background: var(--hm-orange); }
.pl-co__list { margin: 0.875rem 0 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 0.4rem; }
.pl-co__row { display: flex; align-items: center; gap: 0.625rem; padding: 0.5rem 0.625rem; border: 1px solid #eceadf; border-radius: 12px; background: #fff; }
.pl-co__ic { flex: 0 0 auto; display: grid; place-items: center; width: 22px; height: 22px; border: 2px solid #9aa4b1; border-radius: 50%; font-size: 0.75rem; font-weight: 900; color: #fff; }
.pl-co__ic.is-done { background: #2f8f3a; border-color: #2f8f3a; }
.pl-co__ic.is-now { border-color: var(--hm-orange); border-right-color: #f2d6c4; }
.pl-co__name { flex: 1; font-size: 1rem; font-weight: 700; }
.pl-co__pill { padding: 0.25rem 0.75rem; border-radius: 999px; background: #ebebeb; font-size: 0.8125rem; font-weight: 700; color: #5f6670; }
.pl-co__pill.is-done { background: #d9ecd0; color: #2d6a1f; }
.pl-co__pill.is-now { background: #fde3d2; color: #c2531a; }

@media (min-width: 960px) { .pl-sol__grid { grid-template-columns: 0.82fr 1.18fr; gap: 2.5rem; } }
@media (max-width: 760px) { .pl-sol__stage { padding-top: 6rem; min-height: 0; } .pl-sol__crown { width: 22%; } .pl-co { width: 80%; } }

/* Solution hero rendered from the supplied scene art */
.pl-sol__stage--art { min-height: 0; padding: 0; background: #11151b; }
.pl-sol__stage--art img { display: block; width: 100%; height: auto; }

/* ==========================================================================
   One block per screen (home page): each content block is sized to fit a
   laptop viewport without scrolling. Spacing scales with viewport height.
   ========================================================================== */

.pl-page main > .hm-section,
.pl-page main > .ld-section { padding-block: clamp(1.25rem, 3.2vh, 2.5rem); }

/* Solution: balance both columns around one centre line */
.pl-sol__grid { align-items: center; }
.pl-sol__copy { max-width: 560px; }
.pl-sol__title { font-size: clamp(1.875rem, 3.4vw, 2.875rem); }
.pl-sol__steps { margin: 1.125rem 0 1.5rem; gap: 0.875rem; }
.pl-sol__stage--art img { max-height: calc(100vh - 150px); width: auto; max-width: 100%; margin-inline: auto; }
.pl-sol__stage--art { display: grid; place-items: center; }

/* Features: six compact cards in three columns */
.pl-features .pl-h2 { font-size: clamp(1.875rem, 3.2vw, 2.75rem); }
.pl-features .pl-lead--center { margin-top: 0.5rem; font-size: 1.0625rem; }
.pl-features .pl-fgrid { margin-top: 1.25rem; gap: 0.75rem; }
.pl-features .pl-fcard { padding: 0.75rem 0.75rem 1rem; }
.pl-features .pl-fcard__art { height: clamp(110px, 17vh, 160px); }
.pl-features .pl-fcard__art img { max-height: clamp(96px, 15vh, 144px); }
.pl-features .pl-fcard__title { margin: 0.625rem 0.25rem 0.25rem; font-size: 1.3125rem; }
.pl-features .pl-fcard__body { font-size: 1rem; line-height: 1.45; }
.pl-features .pl-fine { margin-top: 0.75rem; }

/* Case study */
.pl-case .pl-h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.pl-case__grid { margin-top: 1.25rem; }
.pl-ccard { padding: 1rem; }
.pl-ccard__art { height: clamp(150px, 24vh, 220px); }
.pl-ccard__title { font-size: 1.5rem; }
.pl-ccard__stat b { font-size: 2.5rem; }
.pl-ccard__body { margin: 0.5rem 0 1rem; }
.pl-qcard { padding: 1rem; }

/* Comparison */
.pl-compare .pl-h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.pl-compare__mascot { width: clamp(120px, 20vh, 170px); margin-top: 1rem; }
.pl-table th, .pl-table td { padding: 0.5rem 0.875rem; }
.pl-table__outcome td { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.pl-legend { margin-top: 0.625rem; padding: 0.625rem 0.875rem; }

/* FAQ and final CTA */
.pl-q summary { padding-block: 0.875rem; }
.pl-q p { margin-bottom: 0.875rem; }
.pl-final__band { padding: clamp(1.25rem, 3vh, 2rem); }
.pl-guide { padding: clamp(1rem, 2.5vh, 1.5rem); }
.pl-guide__art { height: clamp(150px, 22vh, 200px); }

/* Features: final trim so six cards plus heading fit one screen */
.pl-features .pl-fcard__art { height: clamp(96px, 13.5vh, 140px); }
.pl-features .pl-fcard__art img { max-height: clamp(84px, 12vh, 124px); }
.pl-features .pl-fcard__body { font-size: 0.9375rem; line-height: 1.4; }
.pl-features .pl-fcard__title { font-size: 1.1875rem; margin-top: 0.5rem; }
.pl-features .pl-h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); }
.pl-features .pl-fgrid { margin-top: 1rem; }

/* ==========================================================================
   05 Solution (V5, deck page 16)
   ========================================================================== */

.pl-s5 { position: relative; overflow: hidden; background: #fbf8ec; text-align: center; }
.pl-s5::before, .pl-s5::after { content: ""; position: absolute; width: 220px; height: 120px; border-radius: 60px; background: #e6f1cf; opacity: .7; transform: rotate(-24deg); pointer-events: none; }
.pl-s5::before { left: -60px; top: 6%; } .pl-s5::after { right: -60px; top: 12%; transform: rotate(20deg); }
.pl-s5 .hm-shell { position: relative; z-index: 1; }

.pl-s5__eyebrow { display: inline-flex; align-items: center; gap: 0.875rem; margin: 0 0 0.5rem; font-size: 0.875rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--hm-orange); }
.pl-s5__eyebrow i { width: 4px; height: 18px; border-radius: 2px; background: var(--hm-orange); transform: rotate(-30deg); }
.pl-s5__eyebrow i:last-child { transform: rotate(30deg); }
.pl-s5__title { margin: 0 auto; max-width: 1000px; font-size: clamp(1.875rem, 4.2vw, 3.5rem); font-weight: 900; line-height: 1.04; letter-spacing: -.025em; }
.pl-s5__orange { display: block; color: var(--hm-orange); text-decoration: underline; text-decoration-thickness: 4px; text-underline-offset: 0.12em; }
.pl-s5__lead { max-width: 720px; margin: 0.75rem auto 0; font-size: 1.125rem; line-height: 1.45; color: #3a3f47; }

.pl-s5__cards { display: grid; grid-template-columns: 1fr; gap: 0.875rem; margin-top: 1.25rem; text-align: left; }
.pl-s5__card { position: relative; display: flex; flex-direction: column; padding: 1rem 1.125rem 0; overflow: hidden; border: 1px solid #e6e2d2; border-radius: 20px; background: #fffdf6; }
.pl-s5__n { position: absolute; left: 1rem; top: 1rem; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--hm-dark); color: #fff; font-size: 1.125rem; font-weight: 900; }
.pl-s5__card h3 { margin: 0 0 0.25rem 3.25rem; padding-top: 0.5rem; font-size: 1.375rem; font-weight: 900; letter-spacing: -.01em; }
.pl-s5__card p { margin: 0 0 0 3.25rem; font-size: 1rem; line-height: 1.4; color: #3a3f47; }
.pl-s5__art { position: relative; height: clamp(110px, 17vh, 160px); margin-top: 0.5rem; }
.pl-s5__art img { position: absolute; left: 4%; bottom: 0; height: 100%; width: auto; max-width: 52%; object-fit: contain; object-position: left bottom; }

.pl-s5__panel { position: absolute; right: 3%; bottom: 8%; display: grid; grid-template-columns: 24px 1fr 28px; gap: 0.375rem 0.5rem; align-items: center; width: 44%; padding: 0.5rem 0.625rem; border: 1.5px solid var(--hm-ink); border-radius: 12px; background: #fff; }
.pl-s5__panel i { width: 22px; height: 22px; border-radius: 50%; background: #9fd3c9; font-style: normal; }
.pl-s5__panel i.is-b { background: #f6c7d8; } .pl-s5__panel i.is-c { display: grid; place-items: center; background: var(--hm-orange); color: #fff; font-weight: 900; line-height: 1; }
.pl-s5__panel em { height: 5px; border-radius: 3px; background: #cfd4d9; }
.pl-s5__panel b { height: 12px; border-radius: 4px; background: var(--hm-orange); } .pl-s5__panel b.is-soft { background: #f9cdb3; }

.pl-s5__doc { position: absolute; right: 8%; bottom: 8%; width: 36%; height: 84%; padding: 0.625rem 0.75rem; border: 1.5px solid var(--hm-ink); border-radius: 8px; background: #fff; transform: rotate(4deg); }
.pl-s5__doc em { display: block; height: 5px; margin-bottom: 7px; border-radius: 3px; background: #cfd4d9; }
.pl-s5__tick { position: absolute; right: -14px; bottom: -6px; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #2f8f3a; color: #fff; font-size: 1.25rem; font-weight: 900; box-shadow: 0 0 0 3px #fff; }

.pl-s5__chart { position: absolute; right: 3%; bottom: 8%; width: 46%; height: 82%; padding: 0.5rem; border: 1.5px solid var(--hm-ink); border-radius: 10px; background: #fff; }
.pl-s5__vid { display: grid; place-items: center; width: 56%; height: 60%; border-radius: 6px; background: #cfe5c4; font-size: 0.875rem; color: var(--hm-ink); }
.pl-s5__bars { position: absolute; right: 8%; bottom: 10%; display: flex; align-items: flex-end; gap: 4px; height: 60%; }
.pl-s5__bars i { width: 9px; border-radius: 3px; background: var(--hm-orange); }
.pl-s5__bars i:nth-child(1) { height: 30%; } .pl-s5__bars i:nth-child(2) { height: 50%; } .pl-s5__bars i:nth-child(3) { height: 75%; } .pl-s5__bars i:nth-child(4) { height: 100%; }

.pl-s5__bar { position: relative; display: flex; align-items: center; margin-top: 0.875rem; }
.pl-s5__side { position: absolute; z-index: 2; height: auto; }
.pl-s5__side--l { left: -1%; bottom: -6%; width: clamp(110px, 12vw, 170px); }
.pl-s5__side--r { right: -1%; bottom: -6%; width: clamp(80px, 9vw, 130px); }
.pl-s5__status { position: relative; z-index: 1; width: calc(100% - clamp(150px, 15vw, 220px)); margin-inline: auto; padding: 0.875rem 1.5rem 1rem; border-radius: 16px; background: #14171c; color: #fff; text-align: left; }
.pl-s5__shead { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; }
.pl-s5__shead b { font-size: 1.375rem; font-weight: 900; } .pl-s5__shead small { font-size: 0.75rem; color: #9ba2ad; }
.pl-s5__track { display: grid; grid-template-columns: repeat(6, 1fr); margin: 0.75rem 0 0; padding: 0; list-style: none; }
.pl-s5__track li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 0.375rem; text-align: center; font-size: 0.8125rem; font-weight: 700; }
.pl-s5__track li::before { content: ""; position: absolute; left: 50%; right: -50%; top: 15px; height: 3px; background: #4a4f58; }
.pl-s5__track li.is-done::before { background: #2f9e44; } .pl-s5__track li:last-child::before { display: none; }
.pl-s5__dot { position: relative; z-index: 1; display: grid; place-items: center; width: 32px; height: 32px; border: 3px solid #fff; border-radius: 50%; background: #6b717b; color: #fff; font-size: 0.875rem; font-weight: 900; }
.pl-s5__track li.is-done .pl-s5__dot { background: #2f9e44; }
.pl-s5__track li.is-now .pl-s5__dot { background: var(--hm-orange); box-shadow: 0 0 0 4px rgba(244,104,43,.3); }
.pl-s5__cta { margin-top: 0.875rem; }

@media (min-width: 900px) { .pl-s5__cards { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) {
  .pl-s5__track { grid-template-columns: repeat(3, 1fr); row-gap: 0.875rem; }
  .pl-s5__track li:nth-child(3)::before { display: none; }
  .pl-s5__status { width: 100%; }
  .pl-s5__side { display: none; }
}
.pl-s5__status { padding-inline: clamp(1.5rem, 5vw, 4.5rem); }
.pl-s5__shead { margin-left: 0; }
@media (max-width: 760px) { .pl-s5__status { padding-inline: 1rem; } }

/* V5 art: supplied card illustrations and timeline strip */
.pl-s5__card { padding-bottom: 0; }
.pl-s5__pic { display: block; width: calc(100% + 2.25rem); max-width: none; height: auto; margin: 0.5rem -1.125rem 0; }
.pl-s5__bar { display: block; margin-top: 0.75rem; }
.pl-s5__bar img { display: block; width: 100%; height: auto; }
.pl-s5__pic, .pl-s5__bar img { mix-blend-mode: multiply; }
.pl-s5__card { background: #fbf8ec; }
/* Match the supplied art's own background so no edges show */
.pl-s5 { background: #fdfbef; }
.pl-s5 .pl-s5__card { background: #fefbee; border-color: #ebe6d3; }
.pl-s5 .pl-s5__pic { max-width: none; width: calc(100% + 2.25rem); mix-blend-mode: normal; }
.pl-s5 .pl-s5__bar img { mix-blend-mode: normal; max-width: 100%; }

/* Solution: the whole block (title through the button) is sized to the window
   height so it reads on one screen. Phones keep the normal stacked layout. */
@media (min-width: 900px) {
  .pl-s5 { padding-block: clamp(0.5rem, 1.6vh, 1.25rem); }
  .pl-s5__eyebrow { margin-bottom: 0.25rem; font-size: clamp(0.6875rem, 1.6vh, 0.875rem); }
  .pl-s5__title { font-size: clamp(1.5rem, 6.4vh, 3.25rem); line-height: 1.02; }
  .pl-s5__lead { margin-top: 0.5rem; font-size: clamp(0.875rem, 2.1vh, 1.125rem); line-height: 1.35; }
  .pl-s5__cards { margin-top: clamp(0.5rem, 1.8vh, 1rem); gap: 0.75rem; }
  .pl-s5__card { padding: clamp(0.5rem, 1.6vh, 0.875rem) 1rem 0; }
  .pl-s5__n { left: 0.875rem; top: clamp(0.5rem, 1.6vh, 0.875rem); width: clamp(30px, 4.6vh, 40px); height: clamp(30px, 4.6vh, 40px); font-size: clamp(0.875rem, 2vh, 1.125rem); }
  .pl-s5__card h3 { margin-left: clamp(2.5rem, 6vh, 3.25rem); padding-top: 0.25rem; font-size: clamp(1.0625rem, 2.9vh, 1.375rem); }
  .pl-s5__card p { margin-left: clamp(2.5rem, 6vh, 3.25rem); font-size: clamp(0.8125rem, 2vh, 1rem); line-height: 1.3; }
  .pl-s5 .pl-s5__pic { height: clamp(90px, 20vh, 190px); width: calc(100% + 2rem); margin: 0.375rem -1rem 0; object-fit: cover; object-position: 50% 100%; }
  .pl-s5__bar { margin-top: clamp(0.375rem, 1.2vh, 0.75rem); text-align: center; }
  .pl-s5 .pl-s5__bar img { height: clamp(84px, 17vh, 170px); width: auto; max-width: 100%; margin-inline: auto; }
  .pl-s5__cta { margin-top: clamp(0.375rem, 1.2vh, 0.75rem); }
  .pl-s5__cta .hm-btn { padding-block: clamp(0.625rem, 1.8vh, 1rem); }
}
@media (min-width: 900px) {
  .pl-s5__title { font-size: clamp(1.5rem, 5.8vh, 3.25rem); }
  .pl-s5 .pl-s5__pic { height: clamp(84px, 18vh, 180px); }
  .pl-s5 .pl-s5__bar img { height: clamp(78px, 15.5vh, 160px); }
  .pl-s5__lead { font-size: clamp(0.875rem, 1.95vh, 1.0625rem); }
}

/* ==========================================================================
   06 Marketplace features: six cards, art left (~70%), copy right (~30%)
   ========================================================================== */

.pl-mf { background: #fff; text-align: center; }
.pl-mf__eyebrow { margin: 0 0 0.25rem; font-size: clamp(0.6875rem, 1.6vh, 0.8125rem); font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--pl-green); }
.pl-mf__title { margin: 0; font-size: clamp(1.5rem, 5vh, 2.75rem); font-weight: 900; line-height: 1.05; letter-spacing: -.02em; }
.pl-mf__title span { color: var(--hm-orange); }
.pl-mf__grid { display: grid; grid-template-columns: 1fr; gap: 0.75rem; margin-top: clamp(0.625rem, 2vh, 1.25rem); text-align: left; }
.pl-mf__card { display: grid; grid-template-columns: 1fr; overflow: hidden; border: 1px solid #e6e2d2; border-radius: 18px; background: #fbf8ec; }
.pl-mf__art { display: block; width: 100%; height: auto; }
.pl-mf__copy { padding: 0.875rem 1rem 1.125rem; }
.pl-mf__dash { display: block; width: 32px; height: 8px; margin-bottom: 0.5rem; border-radius: 4px; background: var(--hm-orange); }
.pl-mf__copy h3 { margin: 0 0 0.25rem; font-size: 1.25rem; font-weight: 900; letter-spacing: -.01em; }
.pl-mf__copy p { margin: 0; font-size: 1rem; line-height: 1.4; color: #3a3f47; }

@media (min-width: 900px) {
  .pl-mf { padding-block: clamp(0.5rem, 1.6vh, 1.25rem); }
  .pl-mf__grid { grid-template-columns: 1fr 1fr; gap: clamp(0.5rem, 1.4vh, 0.875rem) 1rem; }
  .pl-mf__card { grid-template-columns: 70fr 30fr; align-items: stretch; }
  .pl-mf__art { height: 100%; max-height: clamp(96px, 19.5vh, 190px); width: 100%; object-fit: cover; object-position: 50% 50%; }
  .pl-mf__copy { align-self: center; padding: 0.375rem 0.875rem 0.375rem 0.75rem; }
  .pl-mf__dash { width: 28px; height: 7px; margin-bottom: clamp(0.25rem, 1vh, 0.5rem); }
  .pl-mf__copy h3 { font-size: clamp(0.9375rem, 2.5vh, 1.1875rem); line-height: 1.12; }
  .pl-mf__copy p { margin-top: 0.25rem; font-size: clamp(0.75rem, 1.8vh, 0.9375rem); line-height: 1.3; }
}
@media (min-width: 900px) {
  .pl-mf__grid { max-width: calc(1.73 * (100vh - 213px) + 1rem); margin-inline: auto; }
  .pl-mf__art { height: auto; max-height: none; object-fit: contain; align-self: center; }
  .pl-mf__card { align-items: center; }
  .pl-mf__copy { padding: 0.25rem 0.75rem 0.25rem 0.5rem; }
  .pl-mf__copy h3 { font-size: clamp(0.875rem, 2.2vh, 1.125rem); }
  .pl-mf__copy p { font-size: clamp(0.6875rem, 1.6vh, 0.875rem); line-height: 1.3; }
}
@media (min-width: 900px) {
  .pl-mf__grid { max-width: calc(1.73 * (100vh - 292px) + 1rem); }
}

.pl-mf__sub { max-width: 760px; margin: 0.25rem auto 0; font-size: clamp(0.875rem, 2.1vh, 1.125rem); line-height: 1.35; color: #3a3f47; }
@media (min-width: 900px) {
  .pl-mf__title { font-size: clamp(1.5rem, 4.6vh, 2.5rem); }
  .pl-mf__grid { max-width: calc(1.73 * (100vh - 322px) + 1rem); margin-top: clamp(0.5rem, 1.6vh, 1rem); }
}
/* Shorter laptop windows: give the copy a bit more width so cards stay short */
@media (min-width: 900px) and (max-height: 800px) {
  .pl-mf__card { grid-template-columns: 62fr 38fr; }
  .pl-mf__grid { max-width: calc(1.9 * (100vh - 300px) + 1rem); }
  .pl-mf__copy p { font-size: 0.75rem; line-height: 1.25; }
  .pl-mf__copy h3 { font-size: 0.9375rem; }
  .pl-mf__sub { font-size: 0.875rem; }
}

/* Features: full content width (matches the blocks above); card height follows the window */
@media (min-width: 900px) {
  .pl-mf__grid { max-width: none; margin-inline: 0; }
  .pl-mf__art { height: clamp(104px, calc((100vh - 330px) / 3), 230px); max-height: none; object-fit: cover; object-position: 50% 35%; }
}
@media (min-width: 900px) and (max-height: 800px) {
  .pl-mf__grid { max-width: none; }
}
@media (min-width: 900px) {
  .pl-mf__art { height: clamp(104px, calc((100vh - 268px) / 3), 240px); object-position: 50% 45%; }
}
.pl-mf__sub { max-width: 920px; }

.pl-mf__title u { text-decoration: underline; text-decoration-color: var(--hm-orange); text-decoration-thickness: 0.09em; text-underline-offset: 0.14em; }
.pl-page .pl-mf__title u { text-decoration: none; background: linear-gradient(var(--hm-orange), var(--hm-orange)) 0 100% / 100% 0.09em no-repeat; padding-bottom: 0.1em; }

.pl-s5__orange--inline { display: inline; }
.pl-s5__lead { max-width: 960px; }

/* Marketplace features: larger copy, a little more room for it */
@media (min-width: 900px) {
  .pl-mf__card { grid-template-columns: 62fr 38fr; }
  .pl-mf__copy { padding: 0.25rem 1rem 0.25rem 0.75rem; }
  .pl-mf__copy h3 { font-size: clamp(1.0625rem, 2.7vh, 1.375rem); line-height: 1.1; }
  .pl-mf__copy p { font-size: clamp(0.8125rem, 2vh, 1.0625rem); line-height: 1.3; margin-top: 0.3rem; }
  .pl-mf__sub { font-size: clamp(0.9375rem, 2.3vh, 1.25rem); }
}
@media (min-width: 900px) and (max-height: 800px) {
  .pl-mf__card { grid-template-columns: 58fr 42fr; }
  .pl-mf__copy h3 { font-size: 1rem; }
  .pl-mf__copy p { font-size: 0.8125rem; line-height: 1.25; }
  .pl-mf__sub { font-size: 0.9375rem; }
}
@media (min-width: 900px) {
  .pl-mf__art { height: clamp(104px, calc((100vh - 278px) / 3), 240px); }
}
@media (min-width: 900px) and (max-height: 800px) {
  .pl-mf__card { grid-template-columns: 55fr 45fr; }
  .pl-mf__copy h3 { font-size: 1.0625rem; }
  .pl-mf__copy p { font-size: 0.875rem; line-height: 1.25; }
}

/* ==========================================================================
   07 Proof and case study: headline + monster left, case card right,
   dark three-quote band below. Sized to the window height on desktop.
   ========================================================================== */

.pl-cs { background: linear-gradient(180deg, #e9f5d8 0%, #d7e9bd 100%); }
.pl-cs__top { display: grid; grid-template-columns: 1fr; gap: 1rem; align-items: stretch; }
.pl-cs__intro { position: relative; }
.pl-cs__eyebrow { margin: 0 0 0.5rem; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: #3a3f47; }
.pl-cs__title { margin: 0; font-size: clamp(1.875rem, 3.4vw, 3rem); font-weight: 900; line-height: 1.02; letter-spacing: -.025em; }
.pl-cs__title u { text-decoration: none; background: linear-gradient(var(--hm-orange), var(--hm-orange)) 0 100% / 100% 0.07em no-repeat; padding-bottom: 0.08em; }
.pl-cs__monster { display: block; width: clamp(180px, 62%, 300px); height: auto; margin-top: 0.75rem; }

.pl-cs__card { display: grid; grid-template-columns: 1fr; overflow: hidden; border: 2px solid var(--hm-ink); border-radius: 22px; background: #fbf8ec; }
.pl-cs__photo { display: block; width: 100%; height: auto; padding: 0.75rem 0.75rem 0; border-radius: 22px; }
.pl-cs__body { padding: 1rem 1.25rem 1.25rem; }
.pl-cs__label { margin: 0 0 0.5rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: #3a3f47; }
.pl-cs__name { margin: 0; font-size: clamp(1.375rem, 2.4vw, 2rem); font-weight: 900; line-height: 1.05; letter-spacing: -.02em; }
.pl-cs__stat { display: flex; align-items: baseline; gap: 0.75rem; margin: 0.25rem 0 0; }
.pl-cs__stat b { font-size: clamp(3rem, 6.5vw, 5.5rem); font-weight: 900; line-height: 1; letter-spacing: -.04em; }
.pl-cs__stat span { font-size: clamp(1.125rem, 2vw, 1.75rem); font-weight: 900; color: var(--hm-orange); }
.pl-cs__text { margin: 0.5rem 0 1rem; font-size: 1.0625rem; line-height: 1.4; color: #3a3f47; }
.pl-cs__btn { display: inline-flex; align-items: center; gap: 0.75rem; padding: 1rem 1.75rem; border-radius: 14px; background: var(--hm-dark); color: #fff; font-size: 1.0625rem; font-weight: 700; text-decoration: none; }
.pl-cs__btn:hover { background: #2a2f37; }

.pl-cs__quotes { display: grid; grid-template-columns: 1fr; margin-top: 1rem; padding: 1.25rem 1.5rem; border-radius: 22px; background: var(--hm-dark); color: #fff; }
.pl-cs__q { position: relative; display: grid; grid-template-columns: 64px 1fr; align-items: center; gap: 0.25rem 0.875rem; margin: 0; padding: 1rem 0; }
.pl-cs__q + .pl-cs__q { border-top: 1px solid rgba(255,255,255,.16); }
.pl-cs__av { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; }
.pl-cs__q footer b { display: block; color: #f6f1d0; font-size: 1.125rem; font-weight: 900; }
.pl-cs__q footer small { display: block; font-size: 0.9375rem; color: #d7dadf; }
.pl-cs__q p { grid-column: 1 / -1; margin: 0.375rem 0 0; font-size: 1.0625rem; line-height: 1.35; color: #eef0f2; }

@media (min-width: 900px) {
  .pl-cs { padding-block: clamp(0.75rem, 2.4vh, 1.75rem); }
  .pl-cs__top { grid-template-columns: 0.78fr 1.62fr; gap: 1.25rem; }
  .pl-cs__title { font-size: clamp(1.75rem, 4.6vh, 3rem); }
  .pl-cs__monster { width: clamp(150px, 26vh, 290px); margin-top: clamp(0.25rem, 1.4vh, 0.75rem); }
  .pl-cs__card { grid-template-columns: 1.08fr 1fr; align-items: center; }
  .pl-cs__photo { height: clamp(190px, 41vh, 440px); width: 100%; object-fit: cover; }
  .pl-cs__body { padding: 1rem 1.25rem; }
  .pl-cs__stat b { font-size: clamp(2.75rem, 9vh, 5rem); }
  .pl-cs__text { font-size: clamp(0.875rem, 2vh, 1.0625rem); margin-bottom: clamp(0.5rem, 1.6vh, 1rem); }
  .pl-cs__btn { padding: clamp(0.625rem, 1.8vh, 1rem) 1.5rem; font-size: clamp(0.9375rem, 2vh, 1.0625rem); }
  .pl-cs__quotes { grid-template-columns: repeat(3, 1fr); margin-top: clamp(0.5rem, 1.6vh, 1rem); padding: clamp(0.75rem, 2vh, 1.25rem) 0.5rem; }
  .pl-cs__q { align-content: start; padding: 0.25rem 1.25rem; }
  .pl-cs__q + .pl-cs__q { border-top: 0; border-left: 1px solid rgba(255,255,255,.16); }
  .pl-cs__av { width: clamp(48px, 9vh, 76px); height: clamp(48px, 9vh, 76px); }
  .pl-cs__q { grid-template-columns: clamp(48px, 9vh, 76px) 1fr; }
  .pl-cs__q p { font-size: clamp(0.875rem, 2vh, 1.0625rem); }
}
.pl-cs__title u { white-space: nowrap; }
@media (min-width: 900px) {
  .pl-cs__top { grid-template-columns: 0.95fr 1.55fr; }
  .pl-cs__title { font-size: clamp(1.75rem, 4.4vh, 2.75rem); }
  .pl-cs__monster { width: clamp(160px, 32vh, 340px); }
  .pl-cs__photo { height: clamp(200px, 47vh, 500px); }
}
@media (min-width: 900px) {
  .pl-cs__card { grid-template-columns: auto 1fr; }
  .pl-cs__photo { width: auto; height: clamp(190px, 40vh, 430px); max-width: 58%; object-fit: contain; }
}
@media (min-width: 900px) {
  .pl-cs__top { grid-template-columns: 0.74fr 1.8fr; gap: 0.75rem; }
  .pl-cs__card { grid-template-columns: 1.18fr 1fr; }
  .pl-cs__photo { width: 100%; max-width: none; height: clamp(210px, 50vh, 520px); object-fit: cover; object-position: 50% 60%; }
  .pl-cs__monster { width: clamp(150px, 29vh, 310px); }
}
@media (min-width: 900px) {
  .pl-cs__top { grid-template-columns: 0.86fr 1.7fr; }
  .pl-cs__title { font-size: clamp(1.625rem, 4vh, 2.5rem); }
  .pl-cs__photo { object-position: 0% 70%; }
}

/* Why Athios: layout from the supplied art (no legend, orange-outlined Athios column, two monsters) */
.pl-compare { background: linear-gradient(180deg, #e9f5d8 0%, #dcebc6 100%); }
.pl-compare__mascot { width: clamp(150px, 30vh, 300px); margin-top: 0.5rem; }
.pl-table__outcome th small { display: block; margin-top: 0.25rem; font-size: 0.75rem; font-weight: 500; color: var(--hm-ink-muted); line-height: 1.25; }
.pl-table .is-athios { box-shadow: inset 3px 0 0 var(--hm-orange), inset -3px 0 0 var(--hm-orange); }
.pl-table tbody tr:last-child .is-athios { box-shadow: inset 3px 0 0 var(--hm-orange), inset -3px 0 0 var(--hm-orange), inset 0 -3px 0 var(--hm-orange); }
@media (min-width: 900px) {
  .pl-compare { padding-block: clamp(0.75rem, 2.4vh, 1.75rem); }
  .pl-compare__grid { grid-template-columns: 0.8fr 2fr; gap: 1.5rem; align-items: center; }
  .pl-compare .pl-h2 { font-size: clamp(1.75rem, 5.2vh, 3rem); }
  .pl-table { min-width: 0; font-size: clamp(0.8125rem, 1.9vh, 1rem); }
  .pl-table th, .pl-table td { padding: clamp(0.3rem, 1vh, 0.625rem) 0.875rem; }
}
.pl-table__outcome td b { font-size: 1.0625rem; }
.pl-table__outcome td small { font-size: 0.8125rem; line-height: 1.25; }
.pl-table__outcome .pl-pips i { width: 30px; height: 10px; }

/* Why Athios: header row on top, full-width table, every cell on one line */
.pl-compare__grid { display: block; }
.pl-compare__head { display: flex; align-items: center; gap: 1.25rem; margin-bottom: 0.875rem; }
.pl-compare__head .pl-compare__mascot { width: clamp(84px, 14vh, 140px); margin: 0; flex: 0 0 auto; }
.pl-compare__head .pl-h2 { max-width: none; font-size: clamp(1.5rem, 4.6vh, 2.5rem); }
.pl-compare__head .hm-eyebrow { margin-bottom: 0.25rem; }
.pl-table-wrap { width: 100%; }
.pl-table { table-layout: fixed; }
.pl-table th:first-child { width: 17%; }
.pl-cell { display: flex; align-items: center; gap: 0.625rem; white-space: nowrap; }
.pl-cell .pl-mark { flex: 0 0 auto; margin: 0; vertical-align: 0; }
.pl-cell span { overflow: hidden; text-overflow: clip; }
@media (min-width: 900px) {
  .pl-compare__grid { display: block; }
  .pl-table { font-size: clamp(0.8125rem, 1.95vh, 1.0625rem); min-width: 0; }
  .pl-table th, .pl-table td { padding: clamp(0.3rem, 1vh, 0.625rem) 0.875rem; }
}
@media (max-width: 899px) {
  .pl-table { table-layout: auto; min-width: 640px; }
  .pl-table-wrap { overflow-x: auto; }
}
.pl-cell span { overflow: visible; }
@media (min-width: 900px) {
  .pl-table th:nth-child(1) { width: 15%; }
  .pl-table th:nth-child(2) { width: 25%; }
  .pl-table th:nth-child(3) { width: 36%; }
  .pl-table th:nth-child(4) { width: 24%; }
}

/* Why Athios (final): headline + monsters on the left, table on the right, one line per cell */
@media (min-width: 900px) {
  .pl-compare__grid { display: grid; grid-template-columns: 0.78fr 2.1fr; gap: 1.75rem; align-items: center; }
  .pl-compare__copy .pl-h2 { font-size: clamp(1.75rem, 5.4vh, 3.1rem); line-height: 1.04; }
  .pl-compare__copy .pl-compare__mascot { display: block; width: clamp(150px, 31vh, 300px); margin-top: clamp(0.5rem, 2vh, 1.25rem); }
  .pl-table th:nth-child(1) { width: 18%; }
  .pl-table th:nth-child(2) { width: 27%; }
  .pl-table th:nth-child(3) { width: 29%; }
  .pl-table th:nth-child(4) { width: 26%; }
  .pl-table { font-size: clamp(0.875rem, 2.1vh, 1.0625rem); }
  .pl-table th, .pl-table td { padding: clamp(0.4rem, 1.5vh, 0.875rem) 0.875rem; }
  .pl-table thead th { padding-top: 2.25rem; }
}
@media (min-width: 900px) {
  .pl-table tbody th { white-space: nowrap; }
  .pl-table th:nth-child(1) { width: 20%; }
  .pl-table th:nth-child(2) { width: 29%; }
  .pl-table th:nth-child(3) { width: 26%; }
  .pl-table th:nth-child(4) { width: 25%; }
}
@media (min-width: 900px) {
  .pl-table th:nth-child(1) { width: 19%; }
  .pl-table th:nth-child(2) { width: 28%; }
  .pl-table th:nth-child(3) { width: 28%; }
  .pl-table th:nth-child(4) { width: 25%; }
  .pl-table { font-size: clamp(0.875rem, 2vh, 1rem); }
}

/* ==========================================================================
   09 FAQ (supplied layout): monsters flank the headline, two-column cards,
   a wide closing card, and an Ask Us Anything button with a monster.
   ========================================================================== */

.pl-fq { background: #fdfbef; }
.pl-fq__head { position: relative; display: grid; grid-template-columns: 1fr; justify-items: center; text-align: center; }
.pl-fq__mL, .pl-fq__mR { display: none; }
.pl-fq__eyebrow { display: inline-flex; align-items: center; gap: 1rem; margin: 0 0 0.25rem; font-size: 0.875rem; font-weight: 900; letter-spacing: 0.3em; text-transform: uppercase; }
.pl-fq__eyebrow i { width: 4px; height: 18px; border-radius: 2px; background: var(--hm-orange); transform: rotate(-30deg); }
.pl-fq__eyebrow i:last-child { transform: rotate(30deg); }
.pl-fq__title h2 { margin: 0; font-size: clamp(2rem, 4.6vw, 3.75rem); font-weight: 900; line-height: 1.02; letter-spacing: -.03em; }
.pl-fq__title h2 span { color: var(--hm-orange); }
.pl-fq__sub { margin: 0.5rem 0 0; font-size: 1.125rem; color: #3a3f47; }

.pl-fq__grid { display: grid; grid-template-columns: 1fr; gap: 0.75rem; margin-top: 1rem; }
.pl-fq__card { position: relative; padding: 1rem 3.5rem 1.125rem 1.25rem; border: 2px solid var(--hm-ink); border-radius: 16px; background: #eef4de; }
.pl-fq__card h3 { margin: 0 0 0.375rem; font-size: 1.25rem; font-weight: 900; letter-spacing: -.02em; }
.pl-fq__card p { margin: 0; font-size: 1.0625rem; line-height: 1.4; color: #3a3f47; }
.pl-fq__ic { position: absolute; right: 1rem; top: 1rem; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--hm-orange); }
.pl-fq__ic::before { content: ""; width: 14px; height: 3px; border-radius: 2px; background: #fff; }

.pl-fq__cta { display: flex; align-items: flex-end; justify-content: center; gap: 0.5rem; margin-top: 0.75rem; }
.pl-fq__cta img { display: block; width: clamp(80px, 12vh, 130px); height: auto; margin-bottom: -4px; }
.pl-fq__cta .hm-btn { margin-bottom: 0.5rem; }

@media (min-width: 900px) {
  .pl-fq { padding-block: clamp(0.5rem, 1.6vh, 1.25rem); }
  .pl-fq__head { grid-template-columns: auto 1fr auto; align-items: end; }
  .pl-fq__mL, .pl-fq__mR { display: block; height: auto; }
  .pl-fq__mL { width: clamp(110px, 21vh, 230px); margin-bottom: -2px; }
  .pl-fq__mR { width: clamp(150px, 29vh, 320px); margin-bottom: -2px; }
  .pl-fq__title { padding-bottom: clamp(0.25rem, 1.5vh, 1rem); }
  .pl-fq__title h2 { font-size: clamp(1.75rem, 6.6vh, 3.75rem); white-space: nowrap; }
  .pl-fq__sub { font-size: clamp(0.875rem, 2.2vh, 1.125rem); }
  .pl-fq__grid { grid-template-columns: 1fr 1fr; gap: clamp(0.4rem, 1.2vh, 0.75rem) 0.875rem; margin-top: 0; }
  .pl-fq__card--wide { grid-column: 1 / -1; }
  .pl-fq__card { padding: clamp(0.5rem, 1.6vh, 1rem) 3.25rem clamp(0.5rem, 1.6vh, 1rem) 1.125rem; }
  .pl-fq__card h3 { font-size: clamp(0.9375rem, 2.5vh, 1.25rem); }
  .pl-fq__card p { font-size: clamp(0.8125rem, 1.95vh, 1.0625rem); line-height: 1.35; }
  .pl-fq__ic { top: clamp(0.5rem, 1.6vh, 1rem); width: clamp(26px, 4vh, 34px); height: clamp(26px, 4vh, 34px); }
  .pl-fq__cta { margin-top: clamp(0.25rem, 1vh, 0.75rem); }
  .pl-fq__cta .hm-btn { padding-block: clamp(0.625rem, 1.8vh, 1rem); }
}
@media (min-width: 900px) {
  .pl-fq__card { padding: clamp(0.4rem, 1.2vh, 0.75rem) 3rem clamp(0.4rem, 1.2vh, 0.75rem) 1rem; }
  .pl-fq__card h3 { font-size: clamp(0.9rem, 2.3vh, 1.1875rem); margin-bottom: 0.25rem; }
  .pl-fq__card p { font-size: clamp(0.75rem, 1.7vh, 1rem); line-height: 1.3; }
  .pl-fq__ic { top: clamp(0.4rem, 1.2vh, 0.75rem); right: 0.75rem; }
  .pl-fq__title h2 { font-size: clamp(1.625rem, 6vh, 3.5rem); line-height: 1.08; }
  .pl-fq__eyebrow { margin-bottom: 0.5rem; }
  .pl-fq__mL { width: clamp(100px, 19vh, 210px); }
  .pl-fq__mR { width: clamp(150px, 27vh, 300px); }
  .pl-fq__sub { margin-top: 0.25rem; }
  .pl-fq__cta img { width: clamp(70px, 10vh, 112px); }
  .pl-fq__cta .hm-btn { padding-block: clamp(0.5rem, 1.5vh, 0.875rem); margin-bottom: 0.25rem; }
}

/* ==========================================================================
   10 Final CTA + free guide band + footer (supplied layouts)
   ========================================================================== */

.pl-final { background: #fdfbef; padding-block: clamp(0.75rem, 2.4vh, 1.75rem); }
.pl-final__row { display: grid; grid-template-columns: 1fr; gap: 1rem; align-items: center; }
.pl-final__h { position: relative; margin: 0; max-width: 820px; font-size: clamp(1.75rem, 4.4vw, 3.5rem); font-weight: 900; line-height: 1.02; letter-spacing: -.03em; }
.pl-final__o { color: var(--hm-orange); text-decoration: underline; text-decoration-thickness: 0.06em; text-underline-offset: 0.12em; }
.pl-final__sp { position: absolute; width: 22px; height: 4px; border-radius: 2px; background: var(--hm-orange); }
.pl-final__sp--l { left: -30px; bottom: 0.55em; transform: rotate(-35deg); }
.pl-final__sp--r { right: -8px; bottom: 0.6em; transform: rotate(35deg); }
.pl-final__p { margin: 0.5rem 0 0; max-width: 640px; font-size: 1.125rem; line-height: 1.4; color: #3a3f47; }
.pl-final__btns { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.pl-final__ghost { border: 2px solid var(--hm-ink); background: transparent; color: var(--hm-ink); }
.pl-final__ghost:hover { background: var(--hm-ink); color: #fff; }

.pl-gb { background: linear-gradient(180deg, #e4f4d4 0%, #d6ecc0 100%); padding-block: clamp(0.75rem, 2.2vh, 1.5rem); }
.pl-gb__grid { display: grid; grid-template-columns: 1fr; gap: 1.25rem; align-items: center; }
.pl-gb__art { display: block; width: min(100%, 420px); height: auto; margin-inline: auto; }
.pl-gb__dash { display: block; width: 44px; height: 12px; margin-bottom: 0.625rem; border-radius: 6px; background: var(--hm-orange); }
.pl-gb__eyebrow { margin: 0 0 0.25rem; font-size: 0.9375rem; font-weight: 900; letter-spacing: 0.16em; text-transform: uppercase; color: var(--hm-orange); }
.pl-gb__title { margin: 0; font-size: clamp(1.75rem, 3.4vw, 3rem); font-weight: 900; line-height: 1.02; letter-spacing: -.03em; }
.pl-gb__lead { margin: 0.75rem 0 0; font-size: 1.0625rem; line-height: 1.45; color: #3a3f47; }

.pl-gb__form { position: relative; padding: 1.25rem 1.5rem 1.5rem; border: 2px solid var(--hm-ink); border-radius: 20px; background: #fdfbef; }
.pl-gb__sparks::before, .pl-gb__sparks::after { content: ""; position: absolute; right: 1.25rem; top: 1rem; width: 16px; height: 4px; border-radius: 2px; background: var(--hm-orange); transform: rotate(-55deg); }
.pl-gb__sparks::after { right: 0.75rem; top: 1.5rem; transform: rotate(-30deg); }
.pl-gb__f { display: block; margin-bottom: 0.75rem; }
.pl-gb__f span { display: block; margin-bottom: 0.375rem; font-size: 1rem; font-weight: 900; }
.pl-gb__f input, .pl-gb__f select { width: 100%; padding: 0.875rem 1rem; border: 1.5px solid #c5cbd2; border-radius: 10px; background: #fff; font-family: inherit; font-size: 1rem; color: var(--hm-ink); }
.pl-gb__f input:focus, .pl-gb__f select:focus { outline: none; border-color: var(--hm-orange); }
.pl-gb__submit { width: 100%; margin-top: 0.25rem; }

.pl-ft { padding-block: clamp(1rem, 3vh, 2rem); background: #fdfbef; }
.pl-ft__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.pl-ft__brand { grid-column: 1 / -1; }
.pl-ft__logo img { display: block; height: 38px; width: auto; }
.pl-ft__tag { margin: 0.375rem 0 0.75rem; font-size: 1.0625rem; color: #3a3f47; }
.pl-ft__social { display: flex; gap: 0.625rem; }
.pl-ft__social a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #ecebe2; color: var(--hm-ink); }
.pl-ft__social a:hover { background: var(--hm-ink); color: #fff; }
.pl-ft__social svg { width: 20px; height: 20px; }
.pl-ft__legal { margin: 0.875rem 0 0; font-size: 0.9375rem; color: #3a3f47; }
.pl-ft__col { display: flex; flex-direction: column; gap: 0.5rem; }
.pl-ft__col h4 { margin: 0 0 0.25rem; font-size: 1.0625rem; font-weight: 900; }
.pl-ft__col a { font-size: 1rem; text-decoration: none; color: #3a3f47; }
.pl-ft__col a:hover { color: var(--hm-ink); text-decoration: underline; }

@media (min-width: 900px) {
  .pl-final__row { grid-template-columns: 1fr auto; gap: 2rem; }
  .pl-final__h { font-size: clamp(1.625rem, 5.6vh, 3.5rem); }
  .pl-final__p { font-size: clamp(0.9375rem, 2.2vh, 1.125rem); }
  .pl-final__btns { flex-wrap: nowrap; }
  .pl-gb__grid { grid-template-columns: 0.95fr 1.05fr 1fr; gap: 1.5rem; }
  .pl-gb__art { width: 100%; max-height: clamp(180px, 40vh, 420px); object-fit: contain; }
  .pl-gb__title { font-size: clamp(1.5rem, 4.8vh, 2.75rem); }
  .pl-gb__lead { font-size: clamp(0.875rem, 2vh, 1.0625rem); }
  .pl-gb__form { padding: clamp(0.75rem, 2.2vh, 1.25rem) 1.5rem clamp(0.75rem, 2.4vh, 1.5rem); }
  .pl-gb__f { margin-bottom: clamp(0.4rem, 1.4vh, 0.75rem); }
  .pl-gb__f input, .pl-gb__f select { padding-block: clamp(0.5rem, 1.7vh, 0.875rem); }
  .pl-ft__grid { grid-template-columns: 1.7fr repeat(4, 1fr); gap: 1.5rem; }
  .pl-ft__brand { grid-column: auto; }
  .pl-ft__col { gap: clamp(0.25rem, 1vh, 0.5rem); }
  .pl-ft__col a { font-size: clamp(0.875rem, 1.9vh, 1rem); }
}
.pl-final__sp--r { display: none; }
.pl-final__o { position: relative; }
.pl-final__o::after { content: ""; position: absolute; right: -0.55em; top: 0.35em; width: 0.4em; height: 4px; border-radius: 2px; background: var(--hm-orange); transform: rotate(35deg); }
@media (min-width: 900px) and (max-height: 780px) {
  .pl-final { padding-block: 0.5rem; }
  .pl-gb { padding-block: 0.5rem; }
  .pl-gb__art { max-height: 33vh; }
  .pl-ft { padding-block: 0.625rem; }
  .pl-ft__tag { margin-bottom: 0.5rem; }
  .pl-ft__legal { margin-top: 0.5rem; }
}

/* ==========================================================================
   Legal pages (/terms-conditions, /privacy-policy)
   Text is the approved legal copy; styling only.
   ========================================================================== */
.pl-legal { padding-block: clamp(2.5rem, 7vh, 5rem); }
.pl-legal__shell { max-width: 52rem; }
.pl-legal__title { margin-bottom: 0.5rem; }
.pl-legal__eff { color: var(--hm-ink-muted); font-size: 1.0625rem; margin-bottom: 2.5rem; }
.pl-legal__body { font-size: 1.0625rem; line-height: 1.7; color: var(--hm-ink); }
.pl-legal__body h2 { font-size: clamp(1.375rem, 2.4vw, 1.75rem); line-height: 1.25; margin: 2.5rem 0 0.875rem; scroll-margin-top: 5.5rem; }
.pl-legal__body h3 { font-size: 1.1875rem; line-height: 1.3; margin: 1.75rem 0 0.625rem; }
.pl-legal__body p { margin: 0 0 1rem; }
.pl-legal__body ul { margin: 0 0 1rem; padding-left: 1.5rem; }
.pl-legal__body ul ul { margin: 0.5rem 0 0; list-style: circle; }
.pl-legal__body li { margin-bottom: 0.5rem; }
.pl-legal__body a { color: var(--hm-orange, #f4682b); text-decoration: underline; text-underline-offset: 2px; overflow-wrap: anywhere; }
.pl-legal__table { overflow-x: auto; margin: 1rem 0 1.5rem; border: 1px solid #e3e1d6; border-radius: 0.75rem; }
.pl-legal__table table { width: 100%; border-collapse: collapse; font-size: 1rem; line-height: 1.5; }
.pl-legal__table th, .pl-legal__table td { text-align: left; vertical-align: top; padding: 0.75rem 1rem; border-bottom: 1px solid #e3e1d6; }
.pl-legal__table th { background: #f4f3ea; font-weight: 700; }
.pl-legal__table tr:last-child td { border-bottom: 0; }

/* ==========================================================================
   Site type scale (home, athlete, brand, university, partner)
   One set of sizes for headers, sub copy, card titles and body copy so every
   page reads the same. Sizes follow window height so each block fits one screen, and
   shrink with window width so narrower screens never crowd a column.
   ========================================================================== */
.pl-page {
  --t-h: clamp(2.125rem, min(6.2vh, 3.9vw), 3.75rem);        /* every section header and hero headline */
  --t-lead: clamp(1.0625rem, min(2.6vh, 1.65vw), 1.4375rem);   /* sub copy under headers */
  --t-card: clamp(1.1875rem, min(3.2vh, 2vw), 1.875rem);   /* card titles */
  --t-body: clamp(1rem, min(2.3vh, 1.45vw), 1.25rem);    /* card and list copy */
  --t-small: clamp(0.9375rem, min(2.1vh, 1.32vw), 1.125rem);       /* dense copy: tables, FAQ answers */
  --t-q: clamp(1.0625rem, min(2.6vh, 1.65vw), 1.375rem);       /* FAQ questions */
}

/* Home, university and partner pages pick up the shared scale. The athlete
   (pa-) and brand (pb-) pages map the same variables in their own stylesheets. */
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) main :is(h1, h2, .pl-gb__title, .pl-guide__title) {
  font-size: var(--t-h); line-height: 1.04; letter-spacing: -.035em;
}
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-hero__lead, .pl-s5__lead, .pl-mf__sub, .pl-fq__sub, .pl-final__p, .pl-gb__lead,
  .pl-split__lead, .pl-faq__lead, .pl-final__lead, .pl-guide__lead) {
  font-size: var(--t-lead); line-height: 1.4;
}
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-pc__title, .pl-pcard__title, .pl-wcard__title, .pl-cs__name, .pl-s5__card h3) {
  font-size: var(--t-card); line-height: 1.1;
}
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-pc__body, .pl-pcard__body, .pl-fcard__body, .pl-ccard__body, .pl-s5__card p) {
  font-size: var(--t-body); line-height: 1.38;
}
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-fq__card h3, .pl-faq__panel h3) { font-size: var(--t-q); line-height: 1.15; }
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-fq__card p, .pl-faq__panel p) { font-size: var(--t-small); line-height: 1.38; }

/* home features grid: dense cards keep a smaller card size so the art stays large */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy h3 { font-size: clamp(1rem, 2.3vh, 1.25rem); line-height: 1.12; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy p { font-size: clamp(0.875rem, 1.9vh, 1rem); line-height: 1.3; }
  .pl-page .pl-mf__sub { max-width: 1120px; }
  .pl-page .pl-mf__grid { max-width: none; margin-inline: 0; }
  .pl-page .pl-mf__card { grid-template-columns: 64fr 36fr; }
  .pl-page .pl-mf__art { height: clamp(100px, 18.2vh, 200px); max-height: none; object-fit: cover; object-position: 50% 45%; }
}

/* fit tuning after the shared scale: keep each block inside one screen */
@media (min-width: 900px) {
  .pl-page .pl-fq__card { padding-block: clamp(0.4rem, 1vh, 0.7rem); }
  .pl-page .pl-fq__grid { gap: clamp(0.3rem, 0.9vh, 0.6rem) 0.875rem; }
  .pl-page .pl-features .pl-wcard__title { font-size: var(--t-q); margin-block: 0.25rem; }
  .pl-page .pl-features .pl-wcard { padding: 1rem 1.25rem; }
  .pl-page .pl-features :is(.pl-wcard__art, .pl-slot) { height: clamp(96px, 16vh, 150px); }
  .pl-page .pl-features .pl-wcard__art img { max-height: clamp(84px, 14vh, 130px); }
  .pl-page .pl-features .pl-fcard__title { font-size: var(--t-q); }
  .pl-page .pl-features .pl-fcard__body { font-size: var(--t-small); line-height: 1.35; }
  .pl-page .pl-features .pl-fcard__art { height: clamp(90px, 14vh, 130px); }
  .pl-page .pl-features .pl-fcard__art img { max-height: clamp(80px, 12vh, 112px); }
}
@media (min-width: 900px) {
  .pl-page .pl-features .pl-tcard__art { height: clamp(90px, 15vh, 140px); }
  .pl-page .pl-features .pl-tcard__art img { max-height: clamp(80px, 13vh, 126px); }
  .pl-page .pl-features .pl-tcard { padding: 0.875rem 1.25rem; }
  .pl-page .pl-features .pl-tiers { margin-top: 0.75rem; gap: 0.75rem; }
  .pl-page .pl-features .pl-fgrid--mini { margin-top: 0.75rem; }
}
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) main .pl-guide .pl-guide__title { font-size: clamp(1.625rem, 4.4vh, 2.5rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) main .pl-guide .pl-guide__lead { font-size: var(--t-small); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) main .pl-final__band .pl-final__title { font-size: clamp(1.75rem, 5vh, 3rem); }
}
@media (min-width: 900px) {
  .pl-page .pl-features .pl-fgrid:not(.pl-fgrid--mini) .pl-fcard__art { height: clamp(64px, 8.5vh, 90px); }
  .pl-page .pl-features .pl-fgrid:not(.pl-fgrid--mini) .pl-fcard__art img { max-height: clamp(56px, 7.5vh, 80px); }
  .pl-page .pl-features .pl-roles { margin-top: 0.5rem; gap: 0.5rem; }
}
@media (min-width: 900px) {
  .pl-page .pl-fq__mL { width: clamp(90px, 15vh, 170px); }
  .pl-page .pl-fq__mR { width: clamp(120px, 22vh, 250px); }
}
/* the proof headline lives in a narrow side panel, so it keeps a smaller size */
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) main .pl-proof__title { font-size: clamp(1.75rem, 4vh, 2.5rem); letter-spacing: -.02em; }
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__lead { max-width: 30rem; }
}

/* ==========================================================================
   Alignment rule: a section header that stands alone above full-width content is
   centered, with its eyebrow and sub copy. Headers beside art or a table (hero,
   problem, solution, compare, FAQ side panel, final CTA) stay left in their column.
   ========================================================================== */
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-problem, .pl-features, .pl-case) > .hm-shell > :is(.hm-eyebrow, .pl-h2, .pl-lead) { text-align: center; margin-inline: auto; }
.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) :is(.pl-problem, .pl-features, .pl-case) > .hm-shell > .pl-h2 { max-width: none; }

/* tier cards: room between the bullet list and the art */
.pl-page .pl-tcard .pl-bullets { margin-top: 0.625rem; margin-bottom: clamp(0.75rem, 2.2vh, 1.375rem); }
.pl-page .pl-tcard .pl-bullets li + li { margin-top: 0.25rem; }
.pl-page .pl-tcard .pl-wcard__title { margin-bottom: 0.125rem; }

/* program stories header sits on one line on wide screens */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-case .pl-h2 { font-size: min(var(--t-h), 2.9vw); white-space: nowrap; }
}

/* long testimonial: full-width text, no mascot */
.pl-tbar { padding-right: 1.5rem; }
.pl-tbar .pl-tbar__text { font-size: clamp(0.9375rem, 2vh, 1.125rem); font-weight: 700; line-height: 1.38; }
.pl-tbar .pl-tbar__who { margin-top: 0.5rem; }
.pl-tbar .pl-tbar__who b { color: #fff; }
.pl-live__what b { text-wrap: balance; }

/* home proof: with the quote bar gone, the two story cards fill the column under the Maryland bar */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__side { grid-template-rows: auto 1fr; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-videos { min-height: 0; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image, .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { aspect-ratio: auto; height: 100%; max-height: none; min-height: 0; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image .pl-vcard__full { object-position: 22% 50%; }
}

/* partner popup extras */
.pl-ea__field select, .pl-ea__field textarea { width: 100%; padding: 0.875rem 1rem; border: 1.5px solid var(--pl-line); border-radius: 12px; background: #fff; font-family: inherit; font-size: 1rem; color: var(--hm-ink); }
.pl-ea__field textarea { resize: vertical; min-height: 3.5rem; }
.pl-ea__field select:focus, .pl-ea__field textarea:focus { outline: none; border-color: var(--hm-orange); }
.pl-ea__field small { font-weight: 600; color: var(--hm-ink-muted); }
.pl-ea--partner .pl-ea__dialog { max-height: calc(100vh - 2rem); overflow-y: auto; }
.pl-ea--partner .pl-ea__field { margin-bottom: 0.75rem; }

/* ==========================================================================
   Home page: new monster cast (experiment branch). Rules are scoped to the
   home-only ph- classes or to selectors that only exist on the home page.
   ========================================================================== */
.ph-prob .pl-pc__img { aspect-ratio: 1 / 1; object-fit: contain; object-position: 50% 100%; padding: 0.375rem 0.5rem 0; border-radius: 0; }
.pl-proof__mascot { max-width: 150px; }
.pl-cs__av { background: #c9ccd2; }
.pl-fq__head { grid-template-columns: 1fr !important; }
.pl-fq__cta img { display: none; }
.ph-final { position: relative; overflow: hidden; }
.ph-final__m { display: none; height: auto; }
@media (min-width: 900px) {
  .ph-final__m { display: block; position: absolute; bottom: 0; width: clamp(130px, 22vh, 220px); z-index: 1; }
  .ph-final__m--l { left: clamp(0.5rem, 1.5vw, 1.5rem); }
  .ph-final__m--r { right: clamp(0.5rem, 1.5vw, 1.5rem); }
  .ph-final .pl-final__row { padding-inline: clamp(150px, 16vw, 250px); position: relative; z-index: 2; }
  .ph-final { padding-block: clamp(1.25rem, 4vh, 2.5rem) !important; }
}
@media (max-width: 899px) {
  .ph-final__m { display: block; width: 38%; max-width: 170px; }
  .ph-final .hm-shell::before { content: ""; display: block; }
  .ph-final__mobile { display: flex; justify-content: center; gap: 1rem; align-items: flex-end; }
}
/* home: size fixes after first review */
.pl-proof__mascot { max-width: 190px; width: 52%; }
@media (min-width: 900px) {
  .pl-cs__intro .pl-cs__monster { width: auto !important; height: clamp(130px, 24vh, 240px); }
  .ph-final .pl-final__row { grid-template-columns: 1fr; justify-items: center; text-align: center; gap: 1rem; padding-inline: clamp(170px, 18vw, 270px); }
  .ph-final .pl-final__h { max-width: 820px; }
  .ph-final .pl-final__p { margin-inline: auto; }
  .ph-final .pl-final__btns { justify-content: center; }
  .ph-final__m { width: clamp(120px, 20vh, 200px); }
  .ph-final__m--l { left: clamp(1rem, 3vw, 3rem); }
  .ph-final__m--r { right: clamp(1rem, 3vw, 3rem); }
  .ph-final .pl-final__sp { display: none; }
}
@media (min-width: 900px) { .pl-proof__mascot { width: auto; max-width: none; height: clamp(110px, 21vh, 210px); } }
@media (max-width: 899px) {
  .ph-final { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-end; gap: 0 1.25rem; }
  .ph-final .pl-final__row { flex: 0 0 100%; order: -1; }
  .ph-final__m { display: block; width: 40%; max-width: 180px; margin-top: 0.75rem; }
}

/* Phone hero: panel plus two monsters, instead of the wide laptop composite */
.hero-m { display: none; }
@media (max-width: 899px) {
  .pa-hero__art, .pb-hero__art, .pt-hero__art { display: none !important; }
  .hero-m { display: block; }
  .hero-m__panel { display: block; width: 100%; height: auto; }
  .hero-m__mons { display: flex; justify-content: center; align-items: flex-end; gap: 1rem; margin-top: 0.25rem; }
  .hero-m__mon { display: block; width: 42%; max-width: 190px; height: auto; }
}
@media (max-width: 899px) { .hero-m .hero-m__panel { display: block !important; } }

/* home hero headline: three balanced rows */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__grid { grid-template-columns: 1.08fr 0.92fr; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title { font-size: min(var(--t-h), 3.7vw); text-wrap: balance; max-width: none; }
}
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__grid { grid-template-columns: 1.15fr 0.85fr; gap: 3rem; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title { font-size: min(var(--t-h), 3.45vw); }
}

/* home proof panel: lacrosse player larger and centered under the stats */
.pl-proof__foot { justify-content: center; }
.pl-proof__foot .pl-proof__mascot { margin-inline: auto; }
@media (min-width: 900px) { .pl-proof__mascot { height: clamp(150px, 26vh, 250px) !important; width: auto !important; max-width: none; } }

/* home hero: keep the accent cards clear of the monster faces and inside the stage */
@media (min-width: 761px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-fan__badge--offers { right: 2%; top: 1%; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-ocard { right: -3%; top: 17%; width: 178px; padding: 0.625rem 0.75rem; gap: 0.5rem; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-ocard__check { width: 32px; height: 32px; font-size: 0.9375rem; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-ocard__text b { font-size: 0.8125rem; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-ocard__text small { font-size: 0.6875rem; }
}
@media (min-width: 761px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-fan__badge--offers { right: 6%; top: 8%; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-ocard { top: 22%; }
}

/* home solution: equal cards, images on one row, live status strip */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__cards { align-items: stretch; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__card p { min-height: calc(4 * 1.3em); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { margin-top: auto; height: clamp(110px, 23vh, 270px); width: calc(100% + 2rem); object-fit: cover; object-position: 50% 100%; }
}
.pl-strip { max-width: 980px; margin: clamp(0.5rem, 1.6vh, 1rem) auto 0; padding: clamp(0.5rem, 1.4vh, 0.875rem) clamp(0.875rem, 2vw, 1.5rem); border-radius: 16px; background: #14171c; color: #fff; text-align: left; }
.pl-strip__title { margin: 0 0 clamp(0.375rem, 1vh, 0.625rem); display: flex; justify-content: space-between; align-items: baseline; font-size: clamp(0.875rem, 1.9vh, 1.0625rem); font-weight: 900; }
.pl-strip__title small { font-size: 0.6875rem; font-weight: 600; color: rgba(255,255,255,.6); }
.pl-strip__steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, 1fr); }
.pl-strip__steps li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 0.3rem; text-align: center; font-size: clamp(0.6875rem, 1.5vh, 0.8125rem); font-weight: 600; color: rgba(255,255,255,.88); }
.pl-strip__steps li i { display: grid; place-items: center; width: clamp(22px, 3.8vh, 30px); height: clamp(22px, 3.8vh, 30px); border-radius: 50%; background: #5b6068; color: #fff; font-style: normal; font-size: 0.75rem; font-weight: 900; z-index: 1; }
.pl-strip__steps li::before { content: ""; position: absolute; left: -50%; right: 50%; top: calc(clamp(22px, 3.8vh, 30px) / 2 - 2px); height: 4px; background: #5b6068; }
.pl-strip__steps li:first-child::before { display: none; }
.pl-strip__steps li.is-done i { background: #2f9e44; }
.pl-strip__steps li.is-done::before, .pl-strip__steps li.is-now::before { background: #2f9e44; }
.pl-strip__steps li.is-now i { background: var(--hm-orange); box-shadow: 0 0 0 3px #14171c, 0 0 0 5px var(--hm-orange); }
@media (max-width: 899px) { .pl-strip__steps { grid-template-columns: repeat(3, 1fr); row-gap: 0.75rem; } .pl-strip__steps li:nth-child(4)::before { display: none; } }
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { height: auto; aspect-ratio: 1144 / 484; object-fit: contain; }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__card p { margin-bottom: 0.5rem; }
}
/* final call: the two monsters are the same height */
@media (min-width: 900px) { .ph-final__m { width: auto !important; height: clamp(150px, 25vh, 240px); } }
.ph-final .pl-final__o::after { display: none; }
/* home Why Athios: the two monsters larger */
@media (min-width: 900px) {
  .pl-compare__copy .pl-compare__mascot { width: clamp(230px, 44vh, 340px); max-width: none; margin-top: clamp(0.25rem, 1.4vh, 0.75rem); margin-left: -0.5rem; }
}
/* final call: bigger monsters filling the block */
@media (min-width: 900px) {
  .ph-final { padding-block: clamp(1.25rem, 4vh, 2.5rem) 0 !important; min-height: clamp(260px, 42vh, 400px); }
  .ph-final__m { height: clamp(210px, 36vh, 350px) !important; }
  .ph-final__m--l { left: clamp(1.5rem, 4vw, 4rem); }
  .ph-final__m--r { right: clamp(1.5rem, 4vw, 4rem); }
  .ph-final .pl-final__row { padding-inline: clamp(260px, 26vw, 420px); padding-bottom: clamp(1.25rem, 4vh, 2.5rem); }
}
@media (min-width: 900px) { .ph-final__m { height: clamp(230px, 40vh, 380px) !important; } .ph-final { min-height: clamp(280px, 46vh, 430px); } .ph-final .pl-final__row { padding-inline: clamp(300px, 29vw, 460px); } }

/* ==========================================================================
   Home features: live panels (sharp at any size) beside the new monsters.
   Sized in container units so every card keeps the same proportions.
   ========================================================================== */
.mf-art { position: relative; container-type: size; overflow: hidden; background: linear-gradient(180deg, #fbf8ec, #f3efdd); aspect-ratio: 2 / 1; height: auto; width: 100%; }
.mf-panel { position: absolute; left: 4cqw; top: 50%; transform: translateY(-50%); width: 56cqw; padding: 6cqh 4.2cqw 6.5cqh; border: 1.5px solid #e1ddcc; border-radius: 7cqh; background: #fff; box-shadow: 0 1.6cqh 3.4cqh rgba(20,23,28,.12); font-size: 7.6cqh; line-height: 1.2; color: #14171c; }
.mf-mon { position: absolute; right: 2cqw; bottom: 0; height: 96cqh; width: auto; max-width: 40cqw; object-fit: contain; object-position: 50% 100%; }
.mf-t { margin: 0 0 4cqh; font-size: 8.8cqh; font-weight: 900; letter-spacing: -.02em; }
.mf-t--alert { display: flex; align-items: center; gap: 2.4cqw; padding: 2.6cqh 2.4cqw; border: 1.5px solid #14171c; border-radius: 5cqh; }
.mf-t--alert b { display: grid; place-items: center; width: 10cqh; height: 10cqh; border-radius: 50%; background: var(--hm-orange); color: #fff; font-size: 7.4cqh; }
.mf-mods, .mf-bars, .mf-list, .mf-pay { list-style: none; margin: 0; padding: 0; display: grid; gap: 3.4cqh; }
.mf-mods li { display: grid; grid-template-columns: 1fr; gap: 1.2cqh; font-weight: 700; }
.mf-mods i, .mf-bars i { display: block; height: 3.4cqh; border-radius: 99px; background: #ece9de; position: relative; }
.mf-mods i::after, .mf-bars i::after { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: var(--v); border-radius: inherit; background: #8fd13a; }
.mf-bars li { display: grid; gap: 1.2cqh; font-weight: 600; }
.mf-bars i.o::after { background: #f4682b; } .mf-bars i.t::after { background: #1fb5c0; } .mf-bars i.g::after { background: #8fd13a; }
.mf-list li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 2cqw; font-weight: 600; }
.mf-list em { font-style: normal; font-weight: 500; color: #5f6670; }
.mf-ck { width: 8cqh; height: 8cqh; border-radius: 2cqh; background: #2f9e44 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 12.5l4.2 4.2 8.8-9.4'/%3E%3C/svg%3E") center/70% no-repeat; }
.mf-dot { width: 7cqh; height: 7cqh; border-radius: 50%; background: #d6d9de; } .mf-dot.is-on { background: var(--hm-orange); }
.mf-list--q { padding: 3cqh 2.4cqw; border: 1.5px solid #e1ddcc; border-radius: 4cqh; gap: 3cqh; margin-top: 3cqh; }
.mf-chart { display: flex; align-items: flex-end; gap: 3cqw; height: 40cqh; padding-bottom: 0; border-bottom: 1.5px solid #14171c; }
.mf-chart i { flex: 1; height: var(--v); border-radius: 1cqh 1cqh 0 0; }
.mf-chart .o { background: #f4682b; } .mf-chart .o2 { background: #ff9a3c; } .mf-chart .g1 { background: #b6e37c; } .mf-chart .g2 { background: #8fd13a; } .mf-chart .t { background: #1fb5c0; }
.mf-leg { display: flex; align-items: center; gap: 1.4cqw; margin: 3cqh 0 0; font-size: 6.4cqh; font-weight: 600; }
.mf-leg span { width: 5.4cqh; height: 5.4cqh; border-radius: 50%; background: #f4682b; margin-left: 1.4cqw; } .mf-leg span:first-child { margin-left: 0; } .mf-leg span.t { background: #1fb5c0; }
.mf-pay li { display: flex; align-items: center; gap: 2.2cqw; font-weight: 600; }
.mf-pay b { display: grid; place-items: center; width: 11cqh; height: 11cqh; border-radius: 3cqh; color: #fff; font-size: 6.8cqh; }
.mf-pay .g { background: #2f9e44; } .mf-pay .o { background: #f4682b; } .mf-pay .t { background: #1fb5c0; } .mf-pay .g2 { background: #15a07a; }
@media (min-width: 900px) { .pl-page .pl-mf__art.mf-art { height: clamp(104px, 18.2vh, 200px); aspect-ratio: auto; width: 100%; object-fit: initial; } }
.mf-panel { left: 3cqw; width: 53cqw; padding: 5.5cqh 3.4cqw 6cqh; font-size: 6.6cqh; }
.mf-mon { right: 1cqw; max-width: 41cqw; height: 94cqh; }
.mf-t { font-size: 8cqh; margin-bottom: 3.4cqh; }
.mf-t--alert { gap: 1.8cqw; padding: 2.2cqh 1.8cqw; } .mf-t--alert b { width: 9cqh; height: 9cqh; font-size: 6.6cqh; }
.mf-list li { gap: 1.4cqw; } .mf-list--q { padding: 2.6cqh 1.8cqw; gap: 2.4cqh; }
.mf-list--q span { white-space: nowrap; }
.mf-mods, .mf-bars, .mf-list, .mf-pay { gap: 3cqh; }
.mf-pay li { white-space: nowrap; gap: 1.6cqw; } .mf-pay b { width: 10cqh; height: 10cqh; font-size: 6cqh; }
.mf-ck { width: 7.4cqh; height: 7.4cqh; }
.mf-art .mf-mon { width: 41cqw !important; max-width: none !important; height: 94cqh !important; right: 1cqw; bottom: 0; object-fit: contain; object-position: 50% 100%; }
.mf-panel { width: 51cqw; font-size: 6.9cqh; padding: 6.2cqh 3.2cqw 6.6cqh; }
.mf-art .mf-mon { width: 46cqw !important; height: 98cqh !important; right: 0; }
.mf-t { font-size: 8.4cqh; }
.mf-list--q em { display: none; }

/* home problem cards: tall struggling poses shown whole */
.ph-prob .pl-pc__img { aspect-ratio: 4 / 5; object-fit: contain; object-position: 50% 100%; padding: 0.25rem 0.5rem 0; }
@media (min-width: 900px) { .ph-prob .pl-pc__img { aspect-ratio: auto; height: clamp(150px, 31vh, 330px); width: 100%; } }
/* home proof: new story scenes */
.pl-page .pl-vcard--image .pl-vcard__full, .pl-page .pl-vcard--bimage .pl-vcard__full { object-fit: cover; object-position: 50% 30%; }
.pl-bcover--cap { height: 24%; background: linear-gradient(180deg, rgba(20,16,12,0) 0%, rgba(20,16,12,.78) 55%, rgba(20,16,12,.92) 100%); }
.pl-bcover--cap b { font-size: 5.6cqw; } .pl-bcover--cap small { font-size: 3cqw; }
.pl-vcard--bimage { background: #f08a3c; } .pl-vcard--image { background: #a9d870; }
/* story card overlays: smaller pills that stay off the monsters */
.pl-vcard__cover--label { top: 3.2% !important; left: 3% !important; width: 33% !important; height: 6.4% !important; }
.pl-vcard__cover--name { top: auto !important; bottom: 2.6% !important; left: 3% !important; width: 52% !important; height: 8.6% !important; opacity: .94; }
.pl-bcover--tag { top: 3.2% !important; left: 3% !important; width: 36% !important; height: 6.4% !important; padding-left: 3.2cqw !important; font-size: 3.2cqw !important; }

/* final call: headline on two rows, smaller monsters, volleyball player not pinned to the edge */
@media (min-width: 900px) {
  .ph-final { min-height: clamp(230px, 36vh, 340px); }
  .ph-final__m { height: clamp(150px, 26vh, 250px) !important; }
  .ph-final__m--l { left: clamp(1rem, 3vw, 3rem); }
  .ph-final__m--r { right: clamp(3rem, 9vw, 9rem); }
  .ph-final .pl-final__row { padding-inline: clamp(110px, 12vw, 220px); }
  .ph-final .pl-final__h { max-width: none; font-size: min(var(--t-h), 3.7vw); }
  .ph-final .pl-final__h { text-wrap: balance; }
}
/* home proof panel without the monster: more room for the copy */
@media (min-width: 900px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__panel { justify-content: center; padding: clamp(1.5rem, 4vh, 2.5rem) clamp(1.5rem, 2.4vw, 2.25rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__title { font-size: clamp(2.125rem, 4.6vh, 2.75rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats { margin-top: clamp(1.25rem, 4vh, 2.5rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li { padding-block: clamp(0.875rem, 2.8vh, 1.5rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats b { font-size: clamp(2.25rem, 5.4vh, 3rem); }
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats small { font-size: clamp(1rem, 2.2vh, 1.1875rem); }
}
/* story card pills sit at the bottom */
.pl-vcard__cover--label { top: auto !important; bottom: 3.2% !important; left: 3% !important; width: 34% !important; height: 6.8% !important; }
.pl-bcover--tag { top: auto !important; bottom: 3.2% !important; left: 3% !important; width: 34% !important; height: 6.8% !important; }
.pl-vcard__cover--label, .pl-bcover--tag { left: 4% !important; bottom: 3.6% !important; width: 33% !important; height: 6.4% !important; padding-left: 3.4cqw !important; gap: 1.6cqw; font-size: 3.2cqw !important; z-index: 3; }
.pl-vcard__cover--label { border-radius: 999px !important; background: #fbf8ef; }
.pl-vcard--image .pl-vcard__full { object-position: 50% 12%; }
@media (min-width: 900px) { .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { aspect-ratio: 1080 / 600; } }
@media (min-width: 900px) and (max-height: 760px) { .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { aspect-ratio: auto; height: clamp(84px, 15.5vh, 130px); object-fit: contain; } }

/* ==========================================================================
   HOME PAGE, PHONES AND SMALL TABLETS (<= 899px)
   Compact blocks that read like the Marketplace feature cards: smaller type,
   shorter pictures, side-by-side cards where they fit, no oversized monsters.
   ========================================================================== */
@media (max-width: 899px) {
  .ph-home .hm-section { padding-block: 1.75rem; }
  .ph-home h2, .ph-home .hm-h2 { font-size: clamp(1.625rem, 8vw, 2.125rem) !important; line-height: 1.06; }
  /* hero */
  .ph-home .pl-hero { padding-block: 1.25rem 1.5rem; }
  .ph-home .pl-hero__title { font-size: clamp(1.875rem, 9vw, 2.375rem) !important; max-width: none; }
  .ph-home .pl-hero__lead { font-size: 1.0625rem; line-height: 1.45; margin-top: 0.75rem; }
  .ph-home .pl-actions { margin-top: 1.125rem; gap: 0.625rem; }
  .ph-home .pl-hero__grid { gap: 1.25rem; }
  .ph-home .pl-hero__stage { min-height: 0; max-width: 360px; margin-inline: auto; padding-bottom: 0; }
  /* proof */
  .ph-home .pl-proof__grid { gap: 0.75rem; }
  .ph-home .pl-proof__panel { padding: 1.25rem 1.125rem; }
  .ph-home .pl-proof__title { font-size: 1.625rem !important; }
  .ph-home .pl-vstats li { padding-block: 0.5rem; }
  .ph-home .pl-vstats b { font-size: 1.75rem; }
  .ph-home .pl-vstats small { font-size: 0.9375rem; }
  .ph-home .pl-live { padding: 0.875rem 1rem; gap: 0.5rem; grid-template-columns: 1fr auto; }
  .ph-home .pl-live__who b { font-size: 1.25rem; }
  .ph-home .pl-live__seal { width: 64px; height: 64px; }
  .ph-home .pl-live__what { grid-column: 1 / -1; }
  .ph-home .pl-videos { grid-template-columns: 1fr 1fr; gap: 0.625rem; }
  .ph-home .pl-vcard--image, .ph-home .pl-vcard--bimage { aspect-ratio: 3 / 4; min-height: 0; max-height: none; }
  .ph-home .pl-vcard--image .pl-vcard__full, .ph-home .pl-vcard--bimage .pl-vcard__full { object-position: 50% 20%; }
  .ph-home .pl-vcard__cover--label, .ph-home .pl-bcover--tag { font-size: 3.6cqw !important; width: 62% !important; height: 8.4% !important; left: 5% !important; bottom: 4% !important; }
  /* problem: horizontal cards */
  .ph-home .pl-prob { padding-block: 1.75rem; }
  .ph-home .pl-prob__grid { gap: 0.625rem; }
  .ph-home .pl-pc { display: grid; grid-template-columns: 38% 1fr; column-gap: 0.75rem; align-items: center; padding: 0.625rem 0.875rem 0.625rem 0.5rem; }
  .ph-home .pl-pc .pl-pc__img { grid-row: 1 / 4; width: 100%; height: auto; aspect-ratio: 4 / 5; max-height: 170px; padding: 0; object-fit: contain; object-position: 50% 100%; }
  .ph-home .pl-pc__dash { display: none; }
  .ph-home .pl-pc__title { font-size: 1.25rem !important; margin: 0; }
  .ph-home .pl-pc__body { font-size: 0.9375rem !important; line-height: 1.35; margin: 0.125rem 0 0; }
  /* solution */
  .ph-home .pl-s5__cards { gap: 0.625rem; margin-top: 0.875rem; }
  .ph-home .pl-s5 .pl-s5__pic { height: auto !important; aspect-ratio: 1080 / 600; object-fit: contain; margin-top: 0.25rem; max-height: 190px; }
  .ph-home .pl-s5__card h3 { font-size: 1.25rem !important; } .ph-home .pl-s5__card p { font-size: 0.9375rem !important; min-height: 0; }
  /* features: two-up compact */
  .ph-home .pl-mf__grid { gap: 0.625rem; }
  .ph-home .pl-mf .pl-mf__art.mf-art { aspect-ratio: 2 / 1; height: auto !important; }
  .ph-home .pl-mf__copy h3 { font-size: 1.125rem !important; } .ph-home .pl-mf__copy p { font-size: 0.9375rem !important; line-height: 1.35; }
  /* why athios: no monsters, table fits the screen */
  .pl-std .pl-compare__mascot { display: none !important; }
  .pl-std .pl-table-wrap { overflow: visible; }
  .pl-std .pl-table { min-width: 0; width: 100%; table-layout: fixed; font-size: 0.75rem; line-height: 1.25; }
  .pl-std .pl-table th, .pl-std .pl-table td { padding: 0.5rem 0.3rem; vertical-align: middle; }
  .pl-std .pl-table thead th { font-size: 0.625rem; line-height: 1.15; padding-top: 0.625rem; vertical-align: bottom; }
  .pl-std .pl-table thead .is-athios { font-size: 0.875rem; padding-top: 2.2rem; }
  .pl-std .pl-table__badge { font-size: 0.4375rem; padding: 0.2rem 0.4rem; white-space: normal; text-align: center; line-height: 1.1; width: 90%; top: 0.35rem; letter-spacing: 0.04em; }
  .pl-std .pl-table tbody th { white-space: normal; font-size: 0.6875rem; }
  .pl-std .pl-table th:nth-child(1) { width: 22%; } .pl-std .pl-table th:nth-child(2) { width: 24%; } .pl-std .pl-table th:nth-child(3) { width: 28%; } .pl-std .pl-table th:nth-child(4) { width: 26%; }
  .pl-std .pl-cell { flex-direction: column; align-items: flex-start; gap: 0.25rem; white-space: normal; }
  .pl-std .pl-cell span { overflow: visible; overflow-wrap: break-word; }
  .pl-std .pl-mark { width: 16px; height: 16px; font-size: 0.5625rem; }
  /* faq */
  .pl-std .pl-fq__title h2 { font-size: clamp(1.625rem, 8vw, 2.125rem) !important; }
  .pl-std .pl-fq__sub { font-size: 1rem; }
  /* final call: copy only, no monsters */
  .ph-home .ph-final__m { display: none !important; }
  .ph-home .pl-final__h { font-size: clamp(1.625rem, 8vw, 2.125rem) !important; }
  /* guide band: small monster, form first */
  .pl-std .pl-gb__art { width: auto; max-width: 150px; max-height: 190px; margin-inline: auto; }
  .pl-std .pl-gb__title { font-size: 1.75rem !important; }
  .pl-std .pl-gb__lead { font-size: 1rem; }
}
@media (max-width: 899px) {
  .ph-home .pl-hero__stage { width: 100%; max-width: 380px; min-height: 0; padding-bottom: 0; aspect-ratio: 1 / 1.02; }
  .ph-home .pl-fan__badge--offers { right: 4%; top: 2%; }
}
@media (max-width: 899px) {
  .ph-home .pl-cs__monster { width: auto !important; height: 120px; margin-top: 0.5rem; }
  .ph-home .pl-cs__photo { height: auto !important; max-height: 260px; object-fit: contain; width: 100%; }
  .ph-home .pl-cs__q { padding: 0.75rem 0.875rem; }
  .pl-std .pl-fq__card { padding: 0.75rem 3.25rem 0.875rem 0.875rem; }
  .pl-std .pl-fq__card h3 { font-size: 1.0625rem !important; }
  .pl-std .pl-fq__card p { font-size: 0.9375rem !important; line-height: 1.35; }
  .pl-std .pl-fq__grid { gap: 0.5rem; }
  .ph-home .pl-mf .pl-mf__art.mf-art { max-height: 160px; }
  .ph-home .pl-mf__sub { font-size: 1rem; }
  .ph-home .pl-s5__lead { font-size: 1rem; }
  .ph-home .pl-s5 { padding-top: 1.5rem; }
}

/* ==========================================================================
   All pages, phones: oversized monsters are capped, and the ones that sit
   beside comparison tables are dropped so the tables get the full width.
   ========================================================================== */
@media (max-width: 899px) {
  .pl-gb__art { width: auto !important; max-width: 150px !important; max-height: 190px !important; margin-inline: auto; }
  .pb-pc__art { max-height: 210px !important; height: auto; object-fit: contain !important; }
  .pb-feat__teal, .pt-feat__bear { width: auto !important; height: 170px !important; max-width: none; margin-inline: auto; }
  .pb-sol__tablet { max-height: 320px; width: auto; margin-inline: auto; }
  .pa-why__crown, .pa-why__teal, .pa-why__bunny, .pb-why__crown, .pb-why__teal, .pb-why__bunny, .pt-why__teal, .pt-why__orange { display: none !important; }
  .pt-final__teal, .pt-final__orange { width: auto !important; height: 190px !important; max-width: 46% !important; margin-inline: auto; }
  .pt-final__row { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-end; gap: 0.75rem; }
  .pt-final__copy { flex: 0 0 100%; order: -1; }
  .pa-final__teal, .pa-final__right { height: 170px !important; width: auto !important; max-width: 44% !important; }
  .pb-final__duo .pb-mon { height: 170px; width: auto; max-width: 44%; }
}
@media (max-width: 899px) {
  .pl-page { --t-h: clamp(1.75rem, 8.4vw, 2.25rem); --pa-h: clamp(1.75rem, 8.4vw, 2.25rem); --t-lead: 1.0625rem; --pa-lead: 1.0625rem; --t-card: 1.3125rem; --pa-card-h: 1.3125rem; }
  .pt-final__copy h2, .pb-final__copy h2, .pa-final__copy h2, .pu-final__copy h2, .pa-h2, .pt-h, .pb-prob__copy h2, .pb-sol__copy h2, .pb-why__h, .pb-faq__side h2 { font-size: var(--t-h) !important; line-height: 1.06; }
}

/* home hero (laptop): side cards sit higher so the stage lines up with the headline and copy */
@media (min-width: 761px) {
  .ph-home .pl-tcard-hero { bottom: 9%; }
  .ph-home .pl-tcard-hero--left { transform: rotate(-9deg) translateY(-4%); left: -1%; }
  .ph-home .pl-tcard-hero--right { transform: rotate(9deg) translateY(-4%); right: -1%; }
  .ph-home .pl-tcard-hero--center { transform: translateX(-50%) translateY(-34%); }
  .ph-home .pl-mcard { top: 8%; }
  .ph-home .pl-ocard { top: 14%; }
  .ph-home .pl-fan__badge--offers { top: 0; }
}
@media (min-width: 761px) {
  .ph-home .pl-tcard-hero--center { transform: translateX(-50%) translateY(-27%); }
  .ph-home .pl-mcard { top: 2%; left: -4%; }
  .ph-home .pl-ocard { top: 9%; right: -5%; }
  .ph-home .pl-fan__badge--offers { top: -3%; right: 3%; }
}
@media (min-width: 761px) {
  .ph-home .pl-tcard-hero { bottom: 6%; }
  .ph-home .pl-tcard-hero--left, .ph-home .pl-tcard-hero--right { transform-origin: 50% 100%; }
  .ph-home .pl-tcard-hero--left { transform: rotate(-9deg) translateY(-2%); }
  .ph-home .pl-tcard-hero--right { transform: rotate(9deg) translateY(-2%); }
  .ph-home .pl-tcard-hero--center { transform: translateX(-50%) translateY(-42%); }
  .ph-home .pl-mcard { top: 0; left: -6%; width: 210px; }
  .ph-home .pl-fan__badge--offers { top: -5%; }
}
@media (min-width: 761px) { .ph-home .pl-mcard { width: 246px; left: -8%; } }

/* ==========================================================================
   Phones: the page tabs (Marketplace, Athletes, Brands, Universities) show
   as a second row in the header instead of being hidden.
   ========================================================================== */
@media (max-width: 900px) {
  .pl-nav__inner { flex-wrap: wrap; row-gap: 0; padding-top: 0.5rem; min-height: 0; }
  .pl-nav__links { display: flex !important; order: 3; flex: 0 0 100%; justify-content: space-between; gap: 0.25rem; margin: 0.375rem -0.25rem 0; padding: 0.375rem 0.25rem 0.5rem; border-top: 1px solid var(--pl-line); overflow-x: auto; scrollbar-width: none; }
  .pl-nav__links::-webkit-scrollbar { display: none; }
  .pl-nav__links a { flex: 1 1 auto; text-align: center; padding: 0.5rem 0.5rem; font-size: 0.875rem; white-space: nowrap; }
  .pl-nav__actions { gap: 0.5rem; }
  html { scroll-padding-top: 118px; }
}
@media (max-width: 900px) {
  .pl-nav__inner { column-gap: 0.5rem; justify-content: space-between; }
  .pl-nav__logo { flex: 0 0 auto; }
  .pl-nav__actions { flex: 0 1 auto; flex-wrap: nowrap; }
  .pl-nav__actions .hm-btn { padding-inline: 0.875rem; }
}
@media (max-width: 380px) { .pl-nav__actions .hm-btn { padding-inline: 0.625rem; font-size: 0.6875rem; } .pl-nav__logo img { height: 22px; } .pl-nav__links a { font-size: 0.8125rem; padding-inline: 0.375rem; } }
@media (max-width: 899px) {
  .ph-home .pl-pc { align-content: center; grid-template-rows: auto auto; }
  .ph-home .pl-pc .pl-pc__img { grid-row: 1 / 3; max-height: 150px; align-self: center; }
  .ph-home .pl-pc__title { align-self: end; }
  .ph-home .pl-pc__body { align-self: start; }
}
.pl-ea--talk .pl-ea__tiles { grid-template-columns: 1fr 1fr; }
@media (max-width: 420px) { .pl-ea--talk .pl-ea__tiles { grid-template-columns: 1fr; } }
/* home final call: copy only, wider headline and subcopy */
@media (min-width: 900px) {
  .ph-final { min-height: 0 !important; padding-block: clamp(2rem, 6vh, 3.5rem) !important; }
  .ph-final .pl-final__row { padding-inline: 0 !important; padding-bottom: 0 !important; }
  .ph-final .pl-final__h { max-width: 1020px !important; font-size: min(var(--t-h), 4.1vw) !important; }
  .ph-final .pl-final__p { max-width: 760px; font-size: var(--t-lead); }
}
@media (min-width: 1100px) {
  .ph-final .pl-final__h { max-width: none !important; width: 100%; font-size: min(var(--t-h), 3.35vw) !important; white-space: nowrap; text-wrap: nowrap; }
  .ph-final .pl-final__p { max-width: none; width: 100%; white-space: nowrap; }
}
.pl-ea [hidden] { display: none !important; }

/* beta bar on phones: copy on the left, button on the right of its last line */
@media (max-width: 899px) {
  .pl-beta__inner { display: flex; align-items: flex-end; justify-content: space-between; gap: 0.625rem; padding-block: 0.5rem; }
  .pl-beta__text { flex: 1 1 auto; font-size: 0.8125rem; line-height: 1.3; }
  .pl-beta__inner .hm-btn { flex: 0 0 auto; padding: 0.5rem 0.75rem; font-size: 0.625rem; white-space: nowrap; }
}
@media (max-width: 899px) {
  .pl-beta__inner { flex-wrap: nowrap !important; }
  .pl-beta__text { min-width: 0; }
}
@media (min-width: 361px) and (max-width: 899px) {
  .pl-beta__inner { position: relative; display: block !important; padding-block: 0.5rem !important; }
  .pl-beta__text { font-size: 0.75rem; line-height: 1.35; padding-right: 0; }
  .pl-beta__inner .hm-btn { position: absolute; right: 1rem; bottom: 0.5rem; padding: 0.4375rem 0.75rem; font-size: 0.625rem; }
}
@media (min-width: 600px) and (max-width: 899px) { .pl-beta__inner { display: flex !important; align-items: center; justify-content: center; } .pl-beta__inner .hm-btn { position: static; } .pl-beta__text { font-size: 0.875rem; } }
.pl-beta__br { display: none; }
@media (min-width: 361px) and (max-width: 599px) { .pl-beta__br { display: inline; } .pl-beta__text { font-size: 0.75rem; white-space: nowrap; } }
@media (min-width: 361px) and (max-width: 599px) {
  .pl-beta__inner { padding-bottom: 0.875rem !important; }
  .pl-beta__inner .hm-btn { bottom: 0.4375rem; padding: 0.3125rem 0.75rem; line-height: 1.2; }
}

/* home solution cards: on desktop the art grows with the screen height (side padding in the art is cropped) */
@media (min-width: 900px) and (min-height: 761px) {
  .pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { aspect-ratio: auto; height: clamp(190px, 24vh, 250px); object-fit: cover; object-position: 50% 100%; }
}

/* home problem: Brands card uses a full-scene photo instead of a cutout */
.ph-prob .pl-pc .pl-pc__img--scene { object-fit: cover; object-position: 50% 30%; padding: 0; border-radius: 16px; }

/* ==== HOME BLOCKS 1-6 (hm3) (home-only, scoped to .ph-home) ==== */
/* ---- Block 1: hero ---- */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .hh-rule { display: block; width: 56px; height: 4px; margin: 0.625rem 0 1rem; border-radius: 2px; background: var(--hm-orange); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title span { display: block; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title em { font-style: normal; color: var(--hm-orange); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title { max-width: none; text-wrap: initial; line-height: 1.03; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__lead { max-width: 31rem; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__grid { grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr); gap: 1rem; align-items: center; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero__title { font-size: min(var(--t-h), 3.55vw); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-hero { padding-block: clamp(1.5rem, 4vh, 3rem); }
}
.ph-home .hh-stage { position: relative; margin-right: calc(-1 * max(0px, (100vw - 1112px) / 2 - 1rem)); width: auto; container-type: inline-size; aspect-ratio: 1060 / 740; }
.ph-home .hh-blob { position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(circle 8cqw at 66% 3%, #e9f5d8 97%, transparent),
    radial-gradient(ellipse 19cqw 5.5cqw at 46% 99%, #e9f5d8 97%, transparent),
    radial-gradient(circle 15cqw at 106% 80%, #e9f5d8 97%, transparent); }
.ph-home .hh-cards { display: contents; }
.ph-home .hh-card { position: absolute; width: 32.5cqw; padding: 0.7cqw 0.7cqw 1.5cqw; border-radius: 2.4cqw; background: #fff; box-shadow: 0 1.4cqw 3.2cqw rgba(20,23,28,.14), 0 0 0 1px rgba(20,23,28,.04); }
.ph-home .hh-card--left { left: 17.6%; top: 51.5%; z-index: 3; transform: translate(-50%, -50%) rotate(-5deg); }
.ph-home .hh-card--center { left: 52.5%; top: 46%; z-index: 2; width: 33.5cqw; transform: translate(-50%, -50%) rotate(6deg); }
.ph-home .hh-card--right { left: 80%; top: 65%; z-index: 4; transform: translate(-50%, -50%) rotate(9deg); }
.ph-home .hh-card__img { display: block; width: 100%; height: auto; border-radius: 1.7cqw; }
.ph-home .hh-card__row { display: flex; align-items: center; justify-content: space-between; gap: 1cqw; margin: 1.5cqw 1.2cqw 0.6cqw 1cqw; }
.ph-home .hh-card h3 { margin: 0; font-size: max(13px, 2.6cqw); line-height: 1.1; font-weight: 900; letter-spacing: -.02em; color: var(--hm-ink); }
.ph-home .hh-go { flex: 0 0 auto; display: grid; place-items: center; width: max(22px, 3.3cqw); height: max(22px, 3.3cqw); border: 1px solid #e6e2d2; border-radius: 50%; background: #f7f4ea; font-size: max(15px, 2.4cqw); line-height: 1; font-weight: 700; color: var(--hm-ink); padding-bottom: 0.2cqw; }
.ph-home .hh-card ul { list-style: none; margin: 0 1cqw; padding: 0; display: grid; gap: 0.35cqw; font-size: max(10.5px, 1.6cqw); line-height: 1.3; color: #5c626c; }
.ph-home .hh-card li { position: relative; padding-left: 1.4cqw; }
.ph-home .hh-card li::before { content: ""; position: absolute; left: 0; top: 0.62em; width: 0.5cqw; min-width: 4px; height: 0.5cqw; min-height: 4px; border-radius: 50%; background: #8d939c; }
.ph-home .hh-meta { display: flex; align-items: center; gap: 0.7cqw; margin: 1cqw 1cqw 0; font-size: max(11px, 1.75cqw); font-weight: 700; color: var(--hm-orange); }
.ph-home .hh-meta svg { width: max(12px, 1.9cqw); height: max(12px, 1.9cqw); fill: none; stroke: var(--hm-orange); stroke-width: 2.4; stroke-linecap: round; }
.ph-home .hh-pill { position: absolute; left: 65.4%; top: 3%; z-index: 6; display: inline-flex; align-items: center; gap: 0.9cqw; padding: 1.1cqw 1.8cqw; border: 1.5px solid var(--hm-ink); border-radius: 999px; background: #fff; font-size: max(11px, 1.75cqw); font-weight: 900; white-space: nowrap; transform: rotate(2.5deg); box-shadow: 0 0.8cqw 2cqw rgba(20,23,28,.12); }
.ph-home .hh-match { position: absolute; left: 0.8%; top: 2%; z-index: 6; width: 27cqw; padding: 1.1cqw 1.3cqw 1.2cqw; border-radius: 1.8cqw; background: #fff; box-shadow: 0 1.2cqw 2.8cqw rgba(20,23,28,.14); transform: rotate(-6deg); }
.ph-home .hh-match__top { display: flex; align-items: center; gap: 1cqw; }
.ph-home .hh-match__top b { flex: 1; font-size: max(13px, 1.85cqw); font-weight: 900; }
.ph-home .hh-match .pl-mcard__icon { width: max(26px, 3.5cqw); height: max(26px, 3.5cqw); padding: 0.8cqw; gap: 0.3cqw; border-radius: 0.9cqw; }
.ph-home .hh-match .pl-mcard__icon i { width: 0.55cqw; min-width: 3px; }
.ph-home .hh-match__go { font-size: max(15px, 2.2cqw); line-height: 1; color: var(--hm-ink-muted); }
.ph-home .hh-match__chips { display: flex; flex-wrap: wrap; gap: 0.5cqw; margin-top: 0.9cqw; }
.ph-home .hh-match__chips span { padding: 0.3cqw 0.7cqw; border-radius: 999px; background: #e3f2d3; font-size: max(9px, 1.05cqw); white-space: nowrap; font-weight: 700; color: #2d6a1f; }
.ph-home .hh-offer { position: absolute; right: -0.6%; top: 14.5%; z-index: 6; display: flex; align-items: center; gap: 1.3cqw; width: 24cqw; padding: 1.4cqw 1.6cqw; border-radius: 1.8cqw; background: #fff; box-shadow: 0 1.2cqw 2.8cqw rgba(20,23,28,.14); transform: rotate(3deg); }
.ph-home .hh-offer__check { flex: 0 0 auto; display: grid; place-items: center; width: max(26px, 3.6cqw); height: max(26px, 3.6cqw); border-radius: 50%; background: #2f9e44; color: #fff; font-size: max(13px, 1.9cqw); font-weight: 900; }
.ph-home .hh-offer__text { display: flex; flex-direction: column; line-height: 1.3; }
.ph-home .hh-offer__text b { font-size: max(11.5px, 1.6cqw); font-weight: 900; }
.ph-home .hh-offer__text small { font-size: max(9.5px, 1.3cqw); color: var(--hm-ink-muted); }
.ph-home .hh-sp { position: absolute; z-index: 1; width: 5cqw; height: 5cqw; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44' fill='none' stroke='%23f4682b' stroke-width='4' stroke-linecap='round'%3E%3Cpath d='M4 30l6-10M17 35l5-14M30 36l3-13'/%3E%3C/svg%3E") center / contain no-repeat; }
.ph-home .hh-sp--a { left: 24%; top: 8%; transform: rotate(35deg); }
.ph-home .hh-sp--b { left: 66%; top: 19%; transform: rotate(15deg); }
.ph-home .hh-sp--c { left: -2%; top: 38%; transform: rotate(-70deg); }
.ph-home .hh-sp--d { left: 93.5%; top: 30%; transform: rotate(40deg); }
.ph-home .hh-sp--e { left: 94.5%; top: 53%; transform: rotate(50deg); }
@media (max-width: 899px) {
  .ph-home .hh-stage { aspect-ratio: auto; max-width: min(100%, 560px); margin-inline: auto; margin-right: auto; width: 100%; padding-bottom: 0.25rem; }
  .ph-home .hh-blob { background: radial-gradient(ellipse 60% 50% at 50% 60%, #e3f0d3 96%, transparent); }
  .ph-home .hh-match, .ph-home .hh-offer, .ph-home .hh-sp { display: none; }
  .ph-home .hh-pill { position: relative; left: auto; top: auto; display: flex; width: max-content; margin: 0 auto 0.75rem; font-size: 0.8125rem; padding: 0.5rem 0.875rem; transform: none; }
  .ph-home .hh-cards { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; align-items: start; }
  .ph-home .hh-card { position: static; width: auto; padding: 0.3rem 0.3rem 0.5rem; border-radius: 0.875rem; }
  .ph-home .hh-card--left { transform: rotate(-3deg); } .ph-home .hh-card--center { width: auto; transform: translateY(-0.25rem) rotate(2deg); } .ph-home .hh-card--right { transform: rotate(4deg); }
  .ph-home .hh-card__img { border-radius: 0.625rem; }
  .ph-home .hh-card__row { margin: 0.5rem 0.25rem 0; }
  .ph-home .hh-card h3 { font-size: 0.8125rem; }
  .ph-home .hh-card ul, .ph-home .hh-go { display: none; }
  .ph-home .hh-meta { display: none; }
}

/* ---- Block 2: proof ---- */
@media (min-width: 900px) { .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__grid { grid-template-columns: 0.58fr 1.42fr; } }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { container-type: size; --s: max(calc(100cqh / var(--ih)), calc(100cqw / var(--iw))); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image { --iw: 551; --ih: 696; --px: 0.05; --py: 0.5; --pl: 9; --pb: 21; --pw: 255; --ph: 78; --pt: 30; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { --iw: 582; --ih: 696; --px: 0.78; --py: 0.5; --pl: 14; --pb: 21; --pw: 236; --ph: 78; --pt: 26; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image .pl-vcard__full, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage .pl-vcard__full { object-fit: cover; object-position: calc(var(--px) * 100%) calc(var(--py) * 100%); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard__cover--label, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-bcover--tag {
  position: absolute; z-index: 3; display: flex; align-items: center; box-sizing: border-box;
  --hid: calc((var(--iw) * var(--s) - 100cqw) * var(--px));
  --L: max(calc(var(--s) * 14), calc(var(--s) * var(--pl) - var(--hid)));
  left: var(--L) !important;
  bottom: calc(var(--s) * var(--pb) - (var(--ih) * var(--s) - 100cqh) * (1 - var(--py))) !important;
  top: auto !important;
  width: auto !important; min-width: calc(var(--s) * (var(--pl) + var(--pw)) - var(--hid) - var(--L)); height: calc(var(--s) * var(--ph)) !important;
  padding: 0 calc(var(--s) * var(--pt)) !important; gap: 0;
  border-radius: 999px !important; background: #e8f2d9 !important; box-shadow: none;
  font-size: calc(var(--s) * 24) !important; font-weight: 700 !important; line-height: 1; color: #14171c; white-space: nowrap;
}
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-bcover--tag i { display: none; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { min-height: 320px; }
}
@media (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard__cover--label, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-bcover--tag { font-size: 0.6875rem !important; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image { aspect-ratio: 551 / 696 !important; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { aspect-ratio: 582 / 696 !important; }
}

/* ---- Block 3: problem ---- */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .ph-prob .pl-pc { padding: 0.5rem 0.5rem 1.25rem; border-radius: 22px; background: #fbf8ec; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .ph-prob .pl-pc .pl-pc__img--scene { display: block; width: 100%; padding: 0; border-radius: 16px; object-fit: cover; object-position: 50% 35%; aspect-ratio: 372 / 392; height: auto; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .ph-prob .pl-pc .pl-pc__img--scene { aspect-ratio: auto; height: clamp(150px, 31vh, 330px); }
}
@media (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .ph-prob .pl-pc .pl-pc__img--scene { aspect-ratio: 372 / 392; height: auto; max-height: none; grid-row: 1 / 3; align-self: center; }
}

/* ---- Block 4: solution ---- */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__eyebrow i { display: inline-block; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { aspect-ratio: auto; height: clamp(110px, 24vh, 300px); width: calc(100% + 2rem); max-width: none; margin: auto -1rem 0; object-fit: cover; object-position: 50% 30%; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-strip { max-width: none; width: 91%; }
}
@media (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5 .pl-s5__pic { height: auto !important; max-height: none !important; aspect-ratio: 484 / 320; object-fit: cover; object-position: 50% 30%; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-strip { max-width: none; }
}
@media (min-width: 600px) and (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__card h3 { font-size: 1.0625rem !important; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-s5__card p { font-size: 0.875rem !important; }
}

/* ---- Block 5: marketplace features (photo art + live panels) ---- */
.ph-home .mp-art { position: relative; container-type: inline-size; line-height: 0; min-width: 0; }
.ph-home .mp-photo { display: block; width: 100%; height: auto; }
.ph-home .mp-panel { position: absolute; box-sizing: border-box; left: calc(var(--x) * 1cqw); top: calc(var(--y) * 1cqw); width: calc(var(--w) * 1cqw); height: calc(var(--h) * 1cqw);
  display: flex; flex-direction: column; padding: 2.4cqw 3cqw 1cqw 3cqw; border-radius: 2.3cqw; background: #fff; color: #14171c; line-height: 1.15; text-align: left;
  box-shadow: 0 0 0 0.45cqw #fff, 0 1.2cqw 3cqw rgba(20,23,28,.14); }
.ph-home .mp-t { margin: 0 0 1.1cqw; font-size: 3.25cqw; line-height: 1.15; font-weight: 800; letter-spacing: -.01em; white-space: nowrap; }
.ph-home .mp-rows, .ph-home .mp-pay, .ph-home .mp-q, .ph-home .mp-bars { list-style: none; margin: 0; padding: 0; }
.ph-home .mp-rows { flex: 1; display: flex; flex-direction: column; }
.ph-home .mp-rows li { flex: 1; display: flex; align-items: center; gap: 2cqw; font-size: calc(2.75cqw * var(--k, 1)); font-weight: 500; white-space: nowrap; border-top: 1px solid #eceae2; }
.ph-home .mp-rows li:first-child { border-top: 0; }
.ph-home .mp-ck, .ph-home .mp-ring { flex: 0 0 auto; width: 3.8cqw; height: 3.8cqw; border-radius: 50%; }
.ph-home .mp-ck { background: #2f9e44 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 12.5l4.2 4.2 8.8-9.4'/%3E%3C/svg%3E") center / 72% no-repeat; }
.ph-home .mp-ring { border: 1.5px solid #b9bdc4; background: #f4f4f1; box-sizing: border-box; }
.ph-home .mp-bar { flex: 1; height: 1.7cqw; margin-left: 1.2cqw; border-radius: 99px; background: linear-gradient(90deg, #5fc23a var(--v), #e9e8e1 var(--v)); }
.ph-home .mp-bars { flex: 1; display: flex; flex-direction: column; justify-content: space-between; padding-bottom: 0.4cqw; }
.ph-home .mp-bars li { font-size: calc(2.75cqw * var(--k, 1)); font-weight: 500; }
.ph-home .mp-bars span { display: block; margin-bottom: 0.9cqw; }
.ph-home .mp-bars b { display: block; height: 1.6cqw; border-radius: 99px; background: linear-gradient(90deg, var(--c) var(--v), #e9e8e1 var(--v)); }
.ph-home .mp-bars b.o { --c: #f4682b; } .ph-home .mp-bars b.t { --c: #1ea7f0; } .ph-home .mp-bars b.g { --c: #22b45a; }
.ph-home .mp-panel--alert { padding: 2cqw 2.2cqw 1.2cqw; }
.ph-home .mp-alert { display: flex; align-items: center; gap: 1.6cqw; margin: 0 0 1.6cqw; padding: 0.9cqw 1.6cqw; border: 1.5px solid #b6b7c2; border-radius: 2cqw; font-size: 2.9cqw; font-weight: 700; white-space: nowrap; }
.ph-home .mp-alert i { flex: 0 0 auto; display: grid; place-items: center; width: 3.9cqw; height: 3.9cqw; border-radius: 50%; background: #f4682b; color: #fff; font-style: normal; font-size: 2.6cqw; font-weight: 900; line-height: 1; }
.ph-home .mp-q { flex: 1; display: flex; flex-direction: column; padding: 0 1.8cqw; border: 1px solid #e9e8e1; border-radius: 1.8cqw; }
.ph-home .mp-q li { flex: 1; display: flex; align-items: center; gap: 1.8cqw; font-size: calc(2.55cqw * var(--k, 1)); font-weight: 500; white-space: nowrap; }
.ph-home .mp-dot { flex: 0 0 auto; width: 3.4cqw; height: 3.4cqw; border-radius: 50%; background: #dfe0e4; border: 1px solid #c9cbd1; box-sizing: border-box; }
.ph-home .mp-dot.is-on { background: #f4682b; border-color: #f4682b; }
.ph-home .mp-chart { flex: 1; display: flex; align-items: flex-end; gap: 2.4cqw; margin: 0 2.4cqw 0 0.2cqw; max-height: 12.4cqw; border-bottom: 1px solid #e3e1d8; }
.ph-home .mp-chart i { flex: 1; height: var(--v); border-radius: 0.5cqw 0.5cqw 0 0; }
.ph-home .mp-chart .o { background: #f4682b; } .ph-home .mp-chart .o2 { background: #ffa240; } .ph-home .mp-chart .g1 { background: #a9e068; } .ph-home .mp-chart .g2 { background: #52c26d; } .ph-home .mp-chart .t { background: #1ea7f0; }
.ph-home .mp-leg { display: flex; align-items: center; gap: 1.2cqw; margin: 2cqw 0 0.8cqw; font-size: calc(2.6cqw * var(--k, 1)); font-weight: 500; }
.ph-home .mp-leg span { width: 2.2cqw; height: 2.2cqw; border-radius: 50%; background: #f4682b; margin-left: 2.4cqw; } .ph-home .mp-leg span:first-child { margin-left: 0; } .ph-home .mp-leg span.t { background: #1ea7f0; }
.ph-home .mp-pay { flex: 1; display: flex; flex-direction: column; }
.ph-home .mp-pay li { flex: 1; display: flex; align-items: center; gap: 2.7cqw; font-size: calc(2.6cqw * var(--k, 1)); font-weight: 500; white-space: nowrap; }
.ph-home .mp-ic { flex: 0 0 auto; display: grid; place-items: center; width: 4cqw; height: 4cqw; border-radius: 0.9cqw; color: #fff; font-style: normal; font-size: 2.5cqw; font-weight: 800; line-height: 1; }
.ph-home .mp-ic svg { width: 76%; height: 76%; fill: none; stroke: #fff; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.ph-home .mp-ic.g { background: #2f9e44; } .ph-home .mp-ic.o { background: #f4682b; } .ph-home .mp-ic.b { background: #22a7f2; } .ph-home .mp-ic.p { background: #7a4dff; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card { grid-template-columns: 66fr 34fr; align-items: center; background: #fbf8ec; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__grid { gap: clamp(0.5rem, 1.4vh, 0.875rem) 1rem; max-width: 140vh; margin-inline: auto; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy { padding: 0.25rem 0.75rem 0.25rem 0.75rem; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy h3 { font-size: clamp(0.9375rem, 2.15vh, 1.125rem); line-height: 1.1; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy p { font-size: clamp(0.75rem, 1.6vh, 0.9375rem); line-height: 1.28; margin-top: 0.25rem; }
}
@media (max-width: 899px) { .ph-home .mp-art { --k: 1.12; } }

/* ---- Block 6: proof / case study ---- */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs { background: #dff0d0; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__av { background: none; object-fit: cover; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__phwrap { position: relative; padding: clamp(0.6rem, 1.8vh, 1.1rem); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__photo { width: 100%; height: auto; padding: 0; border-radius: 14px; object-fit: cover; object-position: 50% 35%; max-width: none; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__card { background: #fbf8ec; border-radius: 22px; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__q footer b { color: #fff; }
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__intro .pl-cs__monster { width: auto !important; height: clamp(110px, 22vh, 230px); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__card { grid-template-columns: 1.05fr 1fr; align-items: stretch; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__body { align-self: center; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__phwrap { min-height: clamp(210px, 42vh, 450px); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__photo { position: absolute; left: clamp(0.6rem, 1.8vh, 1.1rem); top: clamp(0.6rem, 1.8vh, 1.1rem); width: calc(100% - 2 * clamp(0.6rem, 1.8vh, 1.1rem)); height: calc(100% - 2 * clamp(0.6rem, 1.8vh, 1.1rem)); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__q p { font-size: clamp(0.8125rem, 1.85vh, 1rem); }
}
@media (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__photo { height: auto !important; max-height: none !important; aspect-ratio: 1 / 1; object-fit: cover; object-position: 50% 30%; width: 100%; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__monster { height: 150px !important; }
}


/* ==== HOME blocks 7-8: comparison without mascots, guide band per mockup ==== */
.pl-std .pl-compare__copy { align-self: start; }
@media (min-width: 900px) {
  .pl-std .pl-compare__grid { align-items: center; }
  .pl-std .pl-table tbody th, .pl-std .pl-table tbody td { padding-block: clamp(0.4rem, 1.7vh, 0.9rem); }
  .pl-std .pl-table thead th { padding-top: 2.4rem; padding-bottom: 0.6rem; }
}
.pl-std .pl-gb { background: linear-gradient(180deg, #e9f5d8 0%, #e9f5d8 100%); position: relative; overflow: hidden; }
.pl-std .pl-gb::before { content: ""; position: absolute; right: -4%; top: -20%; width: 46%; height: 140%; border-radius: 46% 54% 40% 60%; background: rgba(168, 222, 110, 0.28); transform: rotate(14deg); pointer-events: none; }
.pl-std .pl-gb__grid { position: relative; }
.pl-std .pl-gb__form { border-radius: 26px; background: #fdfbef; box-shadow: none; }
.pl-std .pl-gb__sparks { display: none; }
.pl-std .pl-gb__f span { font-size: 1.0625rem; }
.pl-std .pl-gb__f input, .pl-std .pl-gb__f select { border-radius: 14px; border-color: #d3d0c4; }
.pl-std .pl-gb__submit { border-radius: 999px; }
@media (min-width: 900px) {
  .pl-std .pl-gb__grid { grid-template-columns: 1.15fr 0.85fr; gap: clamp(2rem, 5vw, 5rem); }
  .pl-std .pl-gb__title { font-size: min(var(--t-h), 3.6vw); }
  .pl-std .pl-gb__lead { font-size: min(var(--t-lead), 1.6vw); }
}

/* home proof pills: label size independent of the artwork scale */
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-vcard__cover--label, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-bcover--tag { font-size: clamp(1.0625rem, 1.5vw, 1.3125rem) !important; }
}

/* home proof pills: pinned to the bottom-left of the card at every card height */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-vcard--image .pl-vcard__cover--label,
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-vcard--bimage .pl-bcover--tag {
  bottom: 14px !important; left: 14px !important;
}

/* ==== HOME revisions: proof copy centered, smaller pills, compact live bar, centered comparison ==== */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__panel { align-items: center; text-align: center; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__title::after { margin-inline: auto; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats { width: fit-content; max-width: 100%; margin-inline: auto; text-align: left; }

.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-vcard--image .pl-vcard__cover--label,
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page).pl-page .pl-vcard--bimage .pl-bcover--tag {
  min-width: 0; height: auto !important; padding: 0.4rem 0.875rem !important;
  font-size: clamp(0.75rem, 0.95vw, 0.9375rem) !important;
}

.ph-home .pl-live { padding: 0.625rem 1.25rem; gap: 1rem; }
.ph-home .pl-live__who b { font-size: clamp(1.125rem, 1.6vw, 1.5rem); }
.ph-home .pl-live__seal { width: 64px; height: 64px; }
.ph-home .pl-live__what b { font-size: 1rem; }
.ph-home .pl-live__what span { font-size: 0.875rem; }

.pl-std .pl-table-wrap { padding-top: 2.25rem; }
.pl-std .pl-table { overflow: visible; }
.pl-std .pl-table thead tr th, .pl-std .pl-table thead .is-athios { padding-top: 0.875rem; }
.pl-std .pl-table__badge { top: 0; transform: translate(-50%, calc(-100% - 0.5rem)); width: auto; padding: 0.375rem 0.875rem; font-size: 0.6875rem; letter-spacing: 0.1em; white-space: nowrap; }
@media (min-width: 900px) { .pl-std .pl-table thead th { padding-top: 0.875rem; } }

/* ==== Monsters alternate sides within a row ==== */
/* Home problem row: athlete L, brand R, university L, partner R. The brand art has no text, so it mirrors. */
.ph-home .pl-pc__img--scene[src$="hm3-prob-brand.jpg"] { transform: scaleX(-1); }
/* Home features (cropped to athlete and monster): coach L, match R, ncaa L (mirrored), assist R, perf L, pay R. */
.ph-home .pl-mf__card:nth-child(3) .mp-photo { transform: scaleX(-1); }
/* Universities problem row: alone L, manual R, prove L. */
.pu-pc__scene[src$="un3-prob-manual.jpg"] { transform: scaleX(-1); }

/* Home comparison: mark sits left of its text; every cell and header shares one left inset so the marks form straight columns */
.pl-std .pl-table th, .pl-std .pl-table td { text-align: left; padding-left: clamp(0.75rem, 1.6vw, 1.5rem); padding-right: 0.5rem; }
.pl-std .pl-table .pl-cell { flex-direction: row; justify-content: flex-start; align-items: center; gap: 0.625rem; white-space: normal; text-align: left; }
.pl-std .pl-table .pl-cell .pl-mark { flex: 0 0 auto; margin: 0; }
.pl-std .pl-table th:not(:first-child), .pl-std .pl-table td { width: 27%; }
.pl-std .pl-table th:first-child { width: 19%; }
@media (min-width: 900px) { .pl-std .pl-table tbody th, .pl-std .pl-table tbody td { padding-block: clamp(0.45rem, 1.6vh, 0.875rem); } }
@media (max-width: 899px) { .pl-std .pl-table th, .pl-std .pl-table td { padding-left: 0.5rem; } .pl-std .pl-table .pl-cell { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .pl-std .pl-table .pl-cell span { overflow-wrap: normal; word-break: normal; hyphens: none; } }

/* ==== Home features: 40% creative, 60% copy. The photo crops to the athlete and monster; the copy carries the feature. ==== */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card { grid-template-columns: 40fr 60fr; align-items: stretch; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-art { height: 100%; min-height: clamp(120px, 17vh, 180px); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-art { overflow: hidden; }
/* The photo is twice the cell width so only its right half (athlete and monster) shows; the mirrored card anchors left so the flip lands the same half in view. */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-photo { position: absolute; top: 0; right: 0; width: 200%; max-width: none; height: 100%; object-fit: cover; object-position: 50% 35%; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:nth-child(3) .mp-photo { right: auto; left: 0; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-panel { display: none; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy { align-self: center; padding: 0.875rem 1.125rem; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy h3 { font-size: clamp(1.125rem, 2.5vh, 1.375rem) !important; line-height: 1.12; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__copy p { font-size: clamp(0.9375rem, 1.9vh, 1.0625rem) !important; line-height: 1.38; margin-top: 0.375rem; }

/* ==== Home collaboration status: full width, larger steps, live current step ==== */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-strip {
  width: 100%; max-width: none; margin-top: clamp(0.75rem, 2vh, 1.25rem); padding: clamp(0.875rem, 2vh, 1.25rem) clamp(1rem, 2.4vw, 2rem);
  border: 2px solid var(--hm-orange); border-radius: 20px;
  background: radial-gradient(120% 140% at 50% 0%, #22262d 0%, #14171c 60%);
  box-shadow: 0 14px 36px rgba(244, 104, 43, .22);
}
.ph-home .pl-strip__title { align-items: center; margin-bottom: clamp(0.625rem, 1.6vh, 1rem); font-size: clamp(1.0625rem, 2.3vh, 1.375rem); }
.ph-home .pl-strip__title span { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; }
.ph-home .pl-strip__count { padding: 0.25rem 0.625rem; border-radius: 999px; background: rgba(168, 224, 85, .16); color: #c8f562; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.04em; }
.ph-home .pl-strip__steps li { --d: clamp(30px, 4.6vh, 40px); font-size: clamp(0.75rem, 1.7vh, 0.9375rem); font-weight: 700; color: #fff; }
.ph-home .pl-strip__steps li i { width: var(--d); height: var(--d); font-size: 0.9375rem; }
.ph-home .pl-strip__steps li::before { top: calc(var(--d) / 2 - 2px); }
.ph-home .pl-strip__steps li:not(.is-done):not(.is-now) { color: rgba(255,255,255,.6); }
.ph-home .pl-strip__steps li.is-done i { background: #2f9e44; }
.ph-home .pl-strip__steps li.is-now { color: var(--hm-orange); }
.ph-home .pl-strip__steps li.is-now i { box-shadow: 0 0 0 4px #14171c, 0 0 0 6px var(--hm-orange); animation: pl-strip-pulse 1.8s ease-out infinite; }
@keyframes pl-strip-pulse { 0% { box-shadow: 0 0 0 4px #14171c, 0 0 0 6px var(--hm-orange), 0 0 0 6px rgba(244,104,43,.5); } 100% { box-shadow: 0 0 0 4px #14171c, 0 0 0 6px var(--hm-orange), 0 0 0 18px rgba(244,104,43,0); } }
@media (prefers-reduced-motion: reduce) { .ph-home .pl-strip__steps li.is-now i { animation: none; } }

/* ==== Home social proof: tighter stats panel, so the photo cards beside it come out shorter ==== */
@media (min-width: 900px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__panel { padding: clamp(1rem, 2.4vh, 1.5rem) clamp(1rem, 1.8vw, 1.5rem); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__title { font-size: clamp(1.625rem, 3.4vh, 2.125rem) !important; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__title::after { margin-top: 0.625rem; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats { margin-top: clamp(0.5rem, 1.6vh, 1rem); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li { padding-block: clamp(0.375rem, 1.1vh, 0.625rem); gap: 0.75rem; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats b { font-size: clamp(1.75rem, 3.6vh, 2.25rem); }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats small { font-size: 0.9375rem; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats__icon { width: 40px; height: 40px; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--image, .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vcard--bimage { min-height: 260px; }
}

/* Home features on phones: photo stacked above the copy, zoomed to the athlete and monster */
@media (max-width: 899px) {
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card { grid-template-columns: 1fr; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-art { height: clamp(180px, 52vw, 240px); min-height: 0; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card .mp-photo { top: -25%; width: auto; height: 150%; object-fit: fill; }
}

/* "Example" tag on illustrative case studies and testimonials (shared by every landing page) */
.ex-tag { display: inline-block; width: fit-content; margin: 0 0 0.375rem; padding: 0.1875rem 0.5rem; border: 1px dashed currentColor; border-radius: 999px; font-family: inherit; font-size: 0.625rem; font-style: normal; font-weight: 700; letter-spacing: 0.1em; line-height: 1.2; text-transform: uppercase; opacity: .7; vertical-align: middle; white-space: nowrap; }
blockquote > .ex-tag { display: block; }
.pu-cq > .ex-tag { grid-column: 1 / -1; justify-self: start; height: auto; }

/* ==== Home proof stats: number with its label to the right ==== */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li > span:last-child { display: flex; align-items: center; gap: 0.75rem; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats b { flex: 0 0 auto; min-width: 2.6ch; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats small { margin-top: 0; max-width: 15ch; line-height: 1.2; }

/* ==== Home bottom proof (case study + quotes): compact, to match the top proof block ==== */
@media (min-width: 900px) {
  .ph-home .pl-cs__title { font-size: clamp(1.625rem, 3.4vh, 2.25rem) !important; }
  .ph-home .pl-cs__monster { width: auto !important; height: clamp(110px, 18vh, 180px) !important; }
  .ph-home .pl-cs__photo { height: clamp(190px, 30vh, 290px) !important; }
  .ph-home .pl-cs__name { font-size: clamp(1.25rem, 2.6vh, 1.625rem); }
  .ph-home .pl-cs__stat b { font-size: clamp(2.25rem, 6vh, 3.5rem); }
  .ph-home .pl-cs__stat span { font-size: 1.25rem; }
  .ph-home .pl-cs__text { font-size: clamp(0.875rem, 1.8vh, 1rem); margin: 0.375rem 0 0.75rem; }
  .ph-home .pl-cs__btn { padding: 0.625rem 1.25rem; font-size: 0.9375rem; border-radius: 12px; }
  .ph-home .pl-cs__quotes { padding: 0.75rem 0.5rem; }
  .ph-home .pl-cs__q { grid-template-columns: 52px 1fr; align-items: center; }
  .ph-home .pl-cs__av { width: 52px; height: 52px; }
  .ph-home .pl-cs__q footer b { font-size: 1rem; }
  .ph-home .pl-cs__q footer small { font-size: 0.8125rem; }
  .ph-home .pl-cs__q p { font-size: clamp(0.8125rem, 1.7vh, 0.9375rem); }
  .ph-home .pl-cs__q > .ex-tag { grid-column: 1 / -1; }
}
@media (min-width: 900px) {
  .ph-home .pl-cs__card { align-items: stretch; }
  .ph-home .pl-cs__photo { height: 100% !important; min-height: 220px; padding-bottom: 0.75rem; object-fit: cover; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats small { max-width: 20ch; }
}

/* ==== Shared sections (comparison, FAQ, free guide) on every landing page ====
   The home page's type scale for these sections, applied wherever body has .pl-std. */
.pl-std main :is(.pl-compare, .pl-fq, .pl-gb) :is(h2, .pl-gb__title) { font-size: var(--t-h); line-height: 1.04; letter-spacing: -.035em; }
.pl-std :is(.pl-fq__sub, .pl-gb__lead) { font-size: var(--t-lead); line-height: 1.4; }
.pl-std .pl-fq__card h3 { font-size: var(--t-q); line-height: 1.15; }
.pl-std .pl-fq__card p { font-size: var(--t-small); line-height: 1.38; }
.pl-std .pl-compare .pl-h2 { font-size: clamp(1.75rem, 5.4vh, 3.1rem); line-height: 1.04; }

/* ==== Brand palette ====
   Primary: lime #c8f562, leaf #8fd13a, mint #e9f5d8, white/cream, black #14171c.
   Secondary: navy #0f1c3d (only behind artwork that is navy), orange #f4682b for calls to action.
   Dark content sections use black, matching the home page. */
:root { --br-lime: #c8f562; --br-leaf: #8fd13a; --br-mint: #e9f5d8; --br-black: #14171c; --br-navy: #0f1c3d; --br-orange: #f4682b; }
.pb-prob, .pb-feat { background: var(--br-black) !important; }

/* ==== Fluid layout safety: decorative art never pushes the page sideways ==== */
.pl-page main { overflow-x: clip; }
@media (min-width: 900px) and (max-width: 1199px) {
  .pu-sol__runner { width: min(clamp(190px, 33vh, 340px), 24vw) !important; }
}
@media (min-width: 900px) and (max-width: 1199px) {
  .pu-path { width: min(clamp(250px, 36vh, 330px), 27vw) !important; }
  .pu-sol__runner { width: min(clamp(190px, 33vh, 340px), 15vw) !important; margin-left: -1.25rem !important; }
}
@media (max-width: 899px) {
  .pl-std .pl-table th:first-child { width: 25% !important; }
  .pl-std .pl-table th:not(:first-child), .pl-std .pl-table td { width: 25% !important; }
  .pl-std .pl-table tbody th { font-size: 0.625rem !important; overflow-wrap: anywhere; hyphens: auto; padding-right: 0.25rem; }
}
@media (max-width: 899px) {
  .pl-std .pl-table th:first-child { width: 27% !important; }
  .pl-std .pl-table th:not(:first-child), .pl-std .pl-table td { width: 24.33% !important; }
  .pl-std .pl-table th, .pl-std .pl-table td { padding-left: 0.375rem !important; padding-right: 0.25rem !important; }
  .pl-std .pl-table tbody th { overflow-wrap: normal; hyphens: none; }
  .pl-std .pl-table td { font-size: 0.6875rem; }
}

/* ==== Home proof: "Ways to earn" as a stacked list ==== */
.pl-vstats__list { margin: 0.25rem 0 0; padding: 0; list-style: none; font-weight: 600; color: #3a3f47; }
.pl-vstats__list li { position: relative; padding-left: 0.875rem; line-height: 1.3; }
.pl-vstats__list li::before { content: ""; position: absolute; left: 0; top: 0.5em; width: 6px; height: 6px; border-radius: 50%; background: var(--br-orange); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li:last-child > span:last-child { align-items: flex-start; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li:last-child small { max-width: none; padding-top: 0.25rem; }

/* ==== Home proof: licensing infographic + full-view appearance photo ==== */
.pl-info { display: flex; flex-direction: column; justify-content: center; padding: clamp(1rem, 2.4vh, 1.5rem) clamp(1rem, 1.6vw, 1.5rem); border-radius: 22px; background: var(--br-mint); border: 1px solid #d6e6bf; }
.pl-info__kicker { margin: 0; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.pl-info__title { margin: 0.25rem 0 clamp(0.5rem, 1.6vh, 1rem); font-size: clamp(1.125rem, min(2.6vh, 1.6vw), 1.5rem); font-weight: 900; line-height: 1.1; color: var(--br-black); }
.pl-info__steps { position: relative; margin: 0; padding: 0; list-style: none; display: grid; gap: clamp(0.375rem, 1.2vh, 0.75rem); }
.pl-info__steps::before { content: ""; position: absolute; left: 15px; top: 16px; bottom: 16px; width: 2px; background: repeating-linear-gradient(var(--br-leaf) 0 6px, transparent 6px 11px); }
.pl-info__steps li { position: relative; display: flex; align-items: center; gap: 0.75rem; }
.pl-info__steps i { flex: 0 0 32px; display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #fff; border: 2px solid var(--br-leaf); font-style: normal; font-weight: 900; font-size: 0.875rem; color: var(--br-black); }
.pl-info__steps li.is-win i { background: var(--br-orange); border-color: var(--br-orange); color: #fff; }
.pl-info__steps b { display: block; font-size: clamp(0.9375rem, 1.9vh, 1.0625rem); line-height: 1.15; color: var(--br-black); }
.pl-info__steps span { display: block; font-size: clamp(0.8125rem, 1.6vh, 0.9375rem); line-height: 1.25; color: #3a3f47; }
.ph-home .pl-videos { align-items: stretch; }
.ph-home .pl-vcard--bimage .pl-vcard__full { object-position: 50% 30% !important; }

/* ==== Home problem cards: audience, one-line pain, three scannable bullets ==== */
.ph-home .ph-prob .pl-pc { display: flex; flex-direction: column; }
.ph-home .ph-prob .pl-pc__aud { margin: 0.875rem 0.75rem 0.125rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.ph-home .ph-prob .pl-pc__title { margin: 0 0.75rem 0.5rem !important; font-size: clamp(1.0625rem, min(2.5vh, 1.55vw), 1.3125rem) !important; line-height: 1.15; }
.ph-home .ph-prob .pl-pc__pains { margin: 0 0.75rem; padding: 0; list-style: none; display: grid; gap: 0.3rem; }
.ph-home .ph-prob .pl-pc__pains li { position: relative; padding-left: 1.5rem; font-size: clamp(0.875rem, min(1.9vh, 1.15vw), 1rem); line-height: 1.3; color: #3a3f47; }
.ph-home .ph-prob .pl-pc__pains li::before { content: "\2715"; position: absolute; left: 0; top: 0.1em; display: grid; place-items: center; width: 1.05rem; height: 1.05rem; border-radius: 50%; background: #fde0d2; color: #d9480f; font-size: 0.5625rem; font-weight: 900; }

/* ==== Home marketplace cards: picture first, then what it is and why it matters ==== */
.ph-home .pl-s5__card { display: flex !important; flex-direction: column; padding: 0 !important; overflow: hidden; }
.ph-home .pl-s5__card .pl-s5__pic { order: -1; width: 100%; height: clamp(150px, 24vh, 240px) !important; object-fit: cover; object-position: 50% 30%; margin: 0 !important; border-radius: 0 !important; mix-blend-mode: normal; }
.ph-home .pl-s5__body { padding: clamp(0.75rem, 1.8vh, 1.125rem) clamp(0.875rem, 1.4vw, 1.25rem) clamp(0.875rem, 2vh, 1.25rem); text-align: left; }
.ph-home .pl-s5__tag { display: flex; align-items: center; gap: 0.5rem; margin: 0 0 0.375rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.ph-home .pl-s5__tag .pl-s5__n { position: static !important; display: grid; place-items: center; width: 22px; height: 22px; margin: 0; border-radius: 50%; background: var(--br-black); color: #fff; font-size: 0.6875rem; letter-spacing: 0; }
.ph-home .pl-s5__body h3 { margin: 0 0 0.375rem !important; font-size: clamp(1.125rem, min(2.6vh, 1.6vw), 1.4375rem) !important; line-height: 1.12; }
.ph-home .pl-s5__body p:last-child { margin: 0; font-size: clamp(0.9375rem, min(2vh, 1.2vw), 1.0625rem); line-height: 1.38; color: #3a3f47; }

/* ==== Home collaboration tracker: light, with room before the button ==== */
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-strip { background: #fff !important; color: var(--br-black); border: 2px solid var(--br-black); box-shadow: 0 10px 28px rgba(20,23,28,.08); }
.ph-home .pl-strip__title small { color: #6b7079; }
.ph-home .pl-strip__steps li { color: var(--br-black); }
.ph-home .pl-strip__steps li:not(.is-done):not(.is-now) { color: #8a8f98; }
.ph-home .pl-strip__steps li i { background: #d9dce1; }
.ph-home .pl-strip__steps li::before { background: #d9dce1; }
.ph-home .pl-strip__steps li.is-done::before, .ph-home .pl-strip__steps li.is-now::before { background: #2f9e44; }
.ph-home .pl-strip__count { background: var(--br-mint); color: #2d6a1f; }
.ph-home .pl-strip__steps li.is-now i { animation-name: pl-strip-pulse-light; }
@keyframes pl-strip-pulse-light { 0% { box-shadow: 0 0 0 4px #fff, 0 0 0 6px var(--br-orange), 0 0 0 6px rgba(244,104,43,.45); } 100% { box-shadow: 0 0 0 4px #fff, 0 0 0 6px var(--br-orange), 0 0 0 18px rgba(244,104,43,0); } }
.ph-home .pl-s5__cta { margin-top: clamp(1.25rem, 3.6vh, 2.25rem) !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li:last-child { align-items: flex-start; }
.ph-home .pl-s5__body > * { margin-top: 0 !important; padding: 0 !important; min-height: 0 !important; }
.ph-home .pl-s5__body .pl-s5__tag { margin-bottom: 0.375rem !important; line-height: 1.2; }
.ph-home .pl-s5__body h3 { margin-bottom: 0.375rem !important; }
.ph-home .pl-s5__card { justify-content: flex-start !important; height: auto !important; }
.ph-home .pl-strip__steps li.is-now i { background: var(--br-orange) !important; }

/* Comparison charts on every page: column headings centered over their columns */
.pl-std .pl-table thead th { text-align: center !important; }
.pl-std .pl-table thead th:first-child { text-align: left !important; }
.ph-home .pl-s5__card { min-width: 0; }
.ph-home .pl-s5__card .pl-s5__pic { max-width: 100% !important; }
@media (max-width: 899px) {
  .ph-home .pl-videos { display: grid !important; grid-template-columns: 1fr !important; gap: 0.75rem; height: auto !important; }
  .ph-home .pl-vcard--bimage { width: 100% !important; aspect-ratio: 4 / 3 !important; }
}

/* "Ways to earn" stacked list on the athlete, brand and partner proof stats */
.pa-stat .pl-vstats__list, .pb-pstat .pl-vstats__list, .pt-stats .pl-vstats__list { text-align: left; font-size: 0.9375em; }
.pb-pstat .pl-vstats__list { display: inline-block; margin-top: 0.375rem; }
.pa-stat .pl-vstats__list li, .pt-stats .pl-vstats__list li { color: inherit; }
.pt-stats .pl-vstats__list { color: rgba(255,255,255,.85); }
.pb-pstat > span:has(.pl-vstats__list) { display: flex !important; flex-direction: column; align-items: center; }
.pb-pstat .pl-vstats__list { margin-top: 0.25rem; }
.pb-proof__stats { align-items: start; }

/* ==== Athletes problem cards: one card style, matching the home problem cards ==== */
.pa-page .pa-prob__grid { align-items: stretch; gap: clamp(0.75rem, 1.4vw, 1.25rem); }
.pa-page .pa-pc, .pa-page .pa-pc--cream, .pa-page .pa-pc--lime, .pa-page .pa-pc--peach { display: flex; flex-direction: column; padding: 0.5rem 0.5rem 1rem; border: 1px solid #e6e2d2; border-radius: 22px; background: #fbf8ec !important; overflow: hidden; }
.pa-page .pa-pc__img { display: block; width: 100%; height: auto !important; aspect-ratio: 583 / 350; object-fit: cover; object-position: 50% 40%; border-radius: 16px; margin: 0; }
.pa-page .pa-pc__body { padding: 0.875rem 0.625rem 0 !important; }
.pa-page .pa-pc__body h3 { position: relative; margin: 0 0 0.375rem; padding-top: 0.875rem; font-size: clamp(1.125rem, min(2.6vh, 1.6vw), 1.375rem); line-height: 1.15; }
.pa-page .pa-pc__body h3::before { content: ""; position: absolute; left: 0; top: 0; width: 28px; height: 6px; border-radius: 3px; background: var(--br-orange); }
.pa-page .pa-pc__body p { margin: 0; font-size: clamp(0.9375rem, min(2vh, 1.2vw), 1.0625rem); line-height: 1.4; color: #3a3f47; }
@media (max-width: 899px) { .pa-page .pa-pc__body h3 { font-size: 1.1875rem; } .pa-page .pa-pc__body p { font-size: 1rem; } }

/* ==== Athletes "Three ways to earn": compact rows ==== */
@media (min-width: 900px) {
  .pa-page .pa-ways__list { max-width: 1040px; margin-inline: auto; --pw: 240px !important; gap: 0.625rem; }
  .pa-page .pa-way { grid-template-columns: 240px minmax(0, 1fr) minmax(0, 1fr) !important; min-height: 0; }
  .pa-page .pa-way__stage, .pa-page .pa-way--lime .pa-way__stage, .pa-page .pa-way--peach .pa-way__stage, .pa-page .pa-way--pink .pa-way__stage { aspect-ratio: auto !important; min-height: 150px; height: 100%; }
  .pa-page .pa-way__stage img { object-fit: cover; object-position: 35% 35%; }
  .pa-page .pa-way__mid { padding: 0.75rem 1.125rem !important; }
  .pa-page .pa-way h3 { font-size: clamp(1.125rem, min(2.5vh, 1.5vw), 1.3125rem) !important; margin: 0.375rem 0 0.25rem; }
  .pa-page .pa-way p { font-size: clamp(0.875rem, min(1.9vh, 1.1vw), 0.9375rem) !important; line-height: 1.35; }
  .pa-page .pa-way .pa-checks { padding: 0.625rem 1.125rem !important; font-size: clamp(0.8125rem, min(1.8vh, 1.05vw), 0.9375rem) !important; gap: 0.25rem; }
  .pa-page .pa-way .pa-checks li { line-height: 1.3; }
}

/* ==== Athletes catalog stat bar: compact, three equal columns ==== */
@media (min-width: 900px) {
  .pa-page .pa-stats { display: grid !important; grid-template-columns: repeat(3, 1fr); max-width: 860px; margin-inline: auto; padding: 0.75rem 1rem !important; gap: 0 !important; border-width: 1.5px; }
  .pa-page .pa-stat { justify-content: center; gap: 0.625rem; padding: 0 0.75rem !important; min-width: 0; }
  .pa-page .pa-stat + .pa-stat { border-left: 1px solid #d8d4c4; }
  .pa-page .pa-stat__ic { width: 40px !important; height: 40px !important; }
  .pa-page .pa-stat b { font-size: clamp(1.625rem, 4vh, 2.125rem) !important; }
  .pa-page .pa-stat small { font-size: 0.875rem !important; }
}
/* the third stat keeps its list, laid out on one line so the three columns stay even */
.pa-stat .pl-vstats__list { display: flex; flex-wrap: wrap; gap: 0 0.75rem; margin-top: 0.125rem; font-size: 0.8125rem; }
.pa-stat .pl-vstats__list li { padding-left: 0.625rem; }
.pa-stat .pl-vstats__list li::before { width: 5px; height: 5px; top: 0.55em; }
@media (max-width: 899px) {
  .pa-page .pa-stats { align-items: stretch !important; }
  .pa-page .pa-stat small { display: block !important; }
  .pa-page .pa-stat b { display: block !important; }
}
@media (min-width: 900px) {
  .pa-page .pa-stats { max-width: 960px; }
  .pa-stat .pl-vstats__list { flex-wrap: nowrap; white-space: nowrap; gap: 0 0.5rem; font-size: 0.75rem; }
}

/* Comparison charts: the "Built for ..." badge is a tab attached to the top of the Athios column */
.pl-std .pl-table__badge {
  top: 0 !important; left: 0 !important; right: 0 !important; width: auto !important;
  transform: translateY(-100%) !important;
  padding: 0.375rem 0.5rem !important; border-radius: 10px 10px 0 0 !important;
  text-align: center; white-space: normal !important; line-height: 1.15;
  font-size: 0.625rem !important; letter-spacing: 0.08em !important;
}
.pl-std .pl-table-wrap { padding-top: 2rem; }

/* ==== Social proof blocks: compact on every page (grow them once real proof exists) ==== */
@media (min-width: 900px) {
  :is(.pa-story, .pb-case, .pu-case, .pt-case, .pt-proof, .pu-proof, .pl-cs) { padding-block: clamp(1.25rem, 3.2vh, 2rem) !important; }
  :is(.pa-story, .pb-case, .pu-case, .pt-case) :is(.pa-h, .pb-h, .pu-h, .pt-h), .pu-proof :is(h2, .pu-h) { font-size: clamp(1.5rem, min(4vh, 2.6vw), 2.25rem) !important; margin-bottom: 0.25rem; }
  :is(.pa-story, .pb-case, .pu-case, .pt-case) :is(.pa-eyebrow, .pb-eyebrow, .pu-eyebrow, .pt-eyebrow) { margin-bottom: 0.25rem; }

  /* featured story: photo capped, copy tighter */
  :is(.pa-feat__photo, .pb-cs__photo, .pu-cs__photo, .pt-cs__photo) { min-height: 0 !important; max-height: 250px; overflow: hidden; }
  :is(.pa-feat__photo, .pb-cs__photo, .pu-cs__photo, .pt-cs__photo) img, .pb-cs__img, .pu-cs__scene { height: 100% !important; max-height: 250px; width: 100%; object-fit: cover; object-position: 50% 35%; }
  :is(.pa-feat, .pb-cs, .pu-cs, .pt-cs) { margin-top: 0.75rem !important; }
  :is(.pa-feat__copy, .pb-cs__copy, .pu-cs__copy, .pt-cs__copy) { padding: 0.875rem 1.25rem !important; }
  :is(.pa-feat__copy, .pb-cs__copy, .pu-cs__copy, .pt-cs__copy) h3 { font-size: clamp(1.125rem, min(2.6vh, 1.6vw), 1.375rem) !important; margin: 0.25rem 0 !important; }
  :is(.pa-feat__copy, .pb-cs__copy, .pu-cs__copy, .pt-cs__copy) p { font-size: clamp(0.875rem, min(1.9vh, 1.15vw), 1rem) !important; margin: 0.25rem 0 0.625rem !important; }
  .pb-cs__stat { padding: 0.25rem 0.75rem !important; margin: 0.25rem 0 !important; }
  .pb-cs__stat b { font-size: clamp(2rem, 5vh, 2.75rem) !important; }

  /* quotes: small cards */
  :is(.pa-quotes, .pb-cq, .pu-cs__quotes, .pt-cs__quotes) { gap: 0.5rem !important; margin-top: 0.5rem !important; }
  :is(.pa-q, .pb-quote, .pu-cq, .pt-cq) { padding: 0.625rem 0.875rem !important; }
  :is(.pa-q, .pb-quote, .pu-cq, .pt-cq) p { font-size: clamp(0.8125rem, min(1.8vh, 1.05vw), 0.9375rem) !important; line-height: 1.35; margin-top: 0.25rem !important; }
  :is(.pa-q, .pb-quote, .pu-cq, .pt-cq) footer b, .pt-cq b { font-size: 0.9375rem !important; }
  :is(.pa-q, .pb-quote, .pu-cq, .pt-cq) footer small, .pt-cq small { font-size: 0.8125rem !important; }
  :is(.pa-q__av, .pb-quote__av, .pu-av, .pt-av) { width: 40px !important; height: 40px !important; }
  :is(.pa-q__mark, .pt-cq__mark) { font-size: 1.25rem !important; }

  /* partners top proof: shorter panels */
  .pt-proof__grid { align-items: start; }
  .pt-proof__card { padding: 1rem 1.25rem !important; }
  .pt-proof__card h2 { font-size: clamp(1.25rem, min(3.2vh, 2vw), 1.75rem) !important; }
  .pt-proof__img { max-height: 170px; width: auto; max-width: 100%; object-fit: contain; }
  .pt-stats b { font-size: clamp(1.5rem, 3.6vh, 2rem) !important; }
  :is(.pt-quote, .pt-quote--main) { padding: 1rem 1.25rem !important; }
  :is(.pt-quote, .pt-quote--main) p { font-size: clamp(0.9375rem, min(2vh, 1.25vw), 1.0625rem) !important; line-height: 1.35; }
  .pt-quote--main p { font-size: clamp(1.0625rem, min(2.4vh, 1.5vw), 1.25rem) !important; }
}
@media (min-width: 900px) {
  :is(.pu-cs__photo, .pt-cs__photo), :is(.pu-cs__photo, .pt-cs__photo) img, .pu-cs__scene { max-height: 170px !important; }
  :is(.pu-cq, .pt-cq) { padding-block: 0.5rem !important; }
  :is(.pu-cs__quotes, .pt-cs__quotes) { justify-content: start; }
  .pb-cs { align-items: center; }
  .pb-cs__photo, .pb-cs__img { max-height: 230px !important; }
  .pb-cs__copy { padding-block: 0.625rem !important; }
  .pb-quote { padding-block: 0.5rem !important; }
  .pb-quote footer { margin-bottom: 0.25rem; }
  .ph-home .pl-cs__photo { max-height: 270px !important; min-height: 0 !important; }
  .ph-home .pl-cs__card { align-items: center !important; }
  .ph-home .pl-cs__monster { height: clamp(90px, 14vh, 140px) !important; }
  .pt-proof__grid { align-items: stretch; }
  .pt-proof__card { gap: 0.5rem; }
  .pt-stats { gap: 0.25rem !important; }
  .pt-stats li { padding-block: 0.25rem !important; }
  .pt-proof__img { max-height: 130px; }
  .pt-proof__stack { gap: 0.5rem !important; }
}
@media (min-width: 900px) {
  :is(.pu-cq, .pt-cq) { gap: 0.125rem 0.625rem !important; }
  :is(.pu-cq, .pt-cq) > .ex-tag { margin-bottom: 0.125rem; }
  .pb-cs__photo, .pb-cs__img { max-height: 200px !important; }
  .pb-cs__copy h3 { margin-top: 0 !important; }
  .ph-home .pl-cs__photo { max-height: 230px !important; }
  .ph-home .pl-cs__quotes { padding: 0.5rem 0.5rem !important; margin-top: 0.5rem !important; }
  .ph-home .pl-cs__q { padding-block: 0.125rem !important; }
  .ph-home .pl-cs__av { width: 40px !important; height: 40px !important; }
  .ph-home .pl-cs__q { grid-template-columns: 40px 1fr !important; }
}
@media (min-width: 900px) {
  :is(.pu-page .pu-cq, .pt-page .pt-cq) { padding: 0.5rem 0.875rem !important; align-content: center; }
}
@media (min-width: 900px) {
  :is(.pu-page .pu-cs__photo, .pt-page .pt-cs__photo) { height: 200px !important; max-height: none !important; }
  :is(.pu-page .pu-cs__photo, .pt-page .pt-cs__photo) img, .pu-page .pu-cs__scene { height: 100% !important; max-height: none !important; object-fit: cover; object-position: 50% 45%; }
}

/* ==== Closing block (same on every page): image + get-started infographic + CTAs, then the free guide ==== */
.pl-end { padding-block: clamp(1.25rem, 3.4vh, 2.25rem) !important; background: var(--hm-page, #fefcf6); }
.pl-end__band { display: grid; grid-template-columns: 1fr; overflow: hidden; border-radius: 26px; background: var(--br-black); color: #fff; }
.pl-end__img { display: block; width: 100%; height: 220px; object-fit: cover; }
.pl-end__copy { padding: clamp(1.25rem, 3vh, 2rem) clamp(1.25rem, 3vw, 2.5rem); }
.pl-end__h { margin: 0; font-size: clamp(1.625rem, min(4.4vh, 2.8vw), 2.5rem) !important; font-weight: 900; line-height: 1.06; letter-spacing: -.03em; color: #fff; }
.pl-end__h span { color: var(--br-lime); }
.pl-end__p { margin: 0.5rem 0 0; font-size: clamp(0.9375rem, min(2vh, 1.25vw), 1.0625rem); line-height: 1.4; color: rgba(255,255,255,.78); }
.pl-end__steps { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.75rem; margin: clamp(1rem, 2.6vh, 1.5rem) 0; padding: 0; list-style: none; }
.pl-end__steps::before { content: ""; position: absolute; left: 18px; right: calc(33.33% - 18px); top: 17px; height: 2px; background: repeating-linear-gradient(90deg, var(--br-lime) 0 7px, transparent 7px 13px); }
.pl-end__steps li { position: relative; display: flex; flex-direction: column; gap: 0.5rem; }
.pl-end__steps i { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; background: var(--br-lime); color: var(--br-black); font-style: normal; font-weight: 900; font-size: 0.9375rem; box-shadow: 0 0 0 4px var(--br-black); }
.pl-end__steps li:last-child i { background: var(--br-orange); color: #fff; }
.pl-end__steps b { display: block; font-size: clamp(0.9375rem, min(2vh, 1.2vw), 1.0625rem); line-height: 1.2; color: #fff; }
.pl-end__steps span { display: block; margin-top: 0.125rem; font-size: clamp(0.8125rem, min(1.7vh, 1vw), 0.875rem); line-height: 1.3; color: rgba(255,255,255,.66); }
.pl-end__btns { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.pl-end__ghost { border: 2px solid #fff; color: #fff; background: transparent; }
.pl-end__ghost:hover { background: #fff; color: var(--br-black); }
@media (min-width: 900px) {
  .pl-end__band { grid-template-columns: 0.85fr 1.15fr; align-items: stretch; }
  .pl-end__img { height: 100%; min-height: 300px; }
}
@media (max-width: 599px) {
  .pl-end__steps { grid-template-columns: 1fr; gap: 0.625rem; }
  .pl-end__steps::before { left: 17px; right: auto; top: 18px; bottom: 18px; width: 2px; height: auto; background: repeating-linear-gradient(var(--br-lime) 0 7px, transparent 7px 13px); }
  .pl-end__steps li { flex-direction: row; align-items: center; gap: 0.75rem; }
  .pl-end__btns .hm-btn { flex: 1 1 100%; justify-content: center; }
}
.pl-end > .hm-shell { width: min(1200px, 100% - 2rem) !important; max-width: none !important; margin-inline: auto !important; padding-inline: 0 !important; }

/* ==========================================================================
   Spacing and type rhythm (all landing pages)
   One section padding scale, equal top and bottom, so blocks are evenly spaced.
   Headlines balance across at most two lines; sub copy stays to two lines.
   ========================================================================== */
.pl-page { --sec-y: clamp(2.5rem, 5vw, 4.5rem); --sec-y-compact: clamp(2rem, 3.5vw, 3rem); --head-gap: clamp(1.25rem, 2.4vw, 2rem); }
.pl-page main > section:not(:first-child) { padding-block: var(--sec-y) !important; }
.pl-page main > section:is(.pl-proof, .pb-proof, .pu-proof, .pt-proof, .pa-catalog, .pl-cs, .pa-story, .pb-case, .pu-case, .pt-case, .pl-end, .pl-gb) { padding-block: var(--sec-y-compact) !important; }
/* sections that sit flush against the one before keep a seam-free join */
.pl-page main > section.pl-gb { padding-top: 0 !important; }

/* headlines: balanced, two lines max at desktop widths */
.pl-page main h2 { text-wrap: balance; }
.pl-page main :is(h2 + p, .pl-s5__lead, .pl-mf__sub, .pl-fq__sub, .pl-end__p, .pl-gb__lead, [class*="__lead"], [class*="__sub"]) { text-wrap: pretty; max-width: 62ch; }
.pl-page main :is([class*="__head"], [class*="prob__"], section > .hm-shell) > h2 + p { margin-top: 0.75rem; }
.pl-page main :is(.pl-prob__eyebrow, .pl-s5__eyebrow, .pl-fq__eyebrow, .pl-mf__eyebrow, .pa-eyebrow, .pb-eyebrow, .pu-eyebrow, .pt-eyebrow, .hm-eyebrow) { margin-bottom: 0.5rem; }
.pl-page main [style*="text-align: center"] > p, .pl-page main :is(.pl-s5, .pl-mf, .pl-fq__title, .pa-ways, .pa-prob, .pa-sol) :is(h2 + p, [class*="__lead"], [class*="__sub"]) { margin-inline: auto; }

/* comparison: headline sits above the full-width table, so it stays on one or two lines */
@media (min-width: 900px) {
  .pl-std .pl-compare__grid { display: block !important; }
  .pl-std .pl-compare__copy { margin-bottom: var(--head-gap); text-align: center; }
  .pl-std .pl-compare__copy .pl-h2 { max-width: none !important; font-size: var(--t-h) !important; }
  .pl-std .pl-compare__copy .hm-accent { display: inline; }
  .pl-std .pl-table-wrap { max-width: 1100px; margin-inline: auto; }
}
/* headlines that share a row with artwork use a slightly smaller size so they hold to two lines */
@media (min-width: 900px) { .pl-page :is(.pb-prob, .pb-sol, .pt-sol, .pu-sol, .pa-sol) h2 { font-size: min(var(--t-h), 3.3vw) !important; } }
@media (min-width: 900px) {
  .pl-page .pb-prob h2 { font-size: min(var(--t-h), 2.75vw) !important; }
  .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof__title { font-size: clamp(1.375rem, min(3.2vh, 1.9vw), 1.875rem) !important; }
  .pt-proof__card h2 { font-size: clamp(1.125rem, min(3vh, 1.75vw), 1.625rem) !important; }
}

/* Closing block infographic (replaces the photo): a small product card on a lime panel */
.pl-end__viz { position: relative; display: grid; place-items: center; padding: clamp(1.25rem, 3vh, 2rem); background: radial-gradient(120% 120% at 20% 10%, #dcf7a0 0%, var(--br-lime) 55%, #b6e64a 100%); }
.pl-end__card { width: min(100%, 340px); padding: 1rem 1.125rem; border-radius: 18px; background: #fff; color: var(--br-black); box-shadow: 0 18px 40px rgba(20,23,28,.18); transform: rotate(-2deg); }
.pl-end__cardk { margin: 0; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.pl-end__cardt { margin: 0.125rem 0 0.75rem; font-size: 1.125rem; font-weight: 900; line-height: 1.15; }
.pl-end__rows { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.5rem; }
.pl-end__rows li { display: grid; grid-template-columns: 10px 1fr auto; align-items: center; gap: 0.625rem; padding: 0.5rem 0.625rem; border-radius: 10px; background: #f6f5ee; font-size: 0.875rem; }
.pl-end__rows i { width: 10px; height: 10px; border-radius: 50%; }
.pl-end__rows i.is-lime { background: var(--br-leaf); } .pl-end__rows i.is-orange { background: var(--br-orange); } .pl-end__rows i.is-navy { background: var(--br-navy); }
.pl-end__rows span { color: #3a3f47; } .pl-end__rows b { font-weight: 900; }
.pl-end__foot { display: flex; justify-content: space-between; gap: 0.5rem; margin: 0.75rem 0 0; padding-top: 0.625rem; border-top: 1px dashed #d9dce1; font-size: 0.8125rem; color: #3a3f47; }
.pl-end__foot b { color: #2f9e44; }
.pl-end__note { position: absolute; right: 0.875rem; bottom: 0.625rem; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(20,23,28,.55); }
@media (max-width: 899px) { .pl-end__viz { padding-bottom: 2rem; } .pl-end__card { transform: none; } }

/* ==== Universities + partners top proof: compact, content-sized, scales with the window ==== */
@media (min-width: 900px) {
  .pt-proof > .hm-shell, .pu-proof > .hm-shell { max-width: min(1120px, 100% - 3rem) !important; margin-inline: auto; }

  /* partners: stats panel sets a modest height; quotes size to their text and center */
  .pt-page .pt-proof__grid { grid-template-columns: minmax(260px, 0.8fr) 1.7fr !important; align-items: stretch; }
  .pt-page .pt-proof__card { justify-content: center; }
  .pt-page .pt-proof__img { display: none; }
  .pt-page .pt-proof__quotes { grid-template-columns: 1.1fr 0.9fr !important; align-items: stretch; }
  .pt-page .pt-quote--main { display: flex; flex-direction: column; justify-content: center; }
  .pt-page .pt-proof__stack { grid-template-rows: auto auto !important; align-content: stretch; }
  .pt-page .pt-proof__stack .pt-quote { display: flex; flex-direction: column; justify-content: center; }
  .pt-page :is(.pt-quote, .pt-quote--main) footer { margin-top: 0.625rem !important; padding-top: 0.625rem !important; }
  .pt-page .pt-quote p { font-size: clamp(0.875rem, min(1.9vh, 1.15vw), 1rem) !important; }
  .pt-page .pt-quote--main p { font-size: clamp(1rem, min(2.4vh, 1.45vw), 1.25rem) !important; }

  /* universities: quote row sized to content, main quote centered */
  .pu-page .pu-proof h2 { margin-bottom: 0.75rem; }
  .pu-page .pu-proof :is(.pu-quote, .pu-quote--main) { padding: 0.875rem 1.125rem !important; }
  .pu-page .pu-proof .pu-quote p { font-size: clamp(0.875rem, min(1.9vh, 1.15vw), 1rem) !important; }
  .pu-page .pu-proof .pu-quote--main p { font-size: clamp(0.9375rem, min(2vh, 1.25vw), 1.0625rem) !important; }
  .pu-page .pu-proof .pu-quote__mark { font-size: 2rem; }
  .pu-page .pu-proof .pl-live { padding-block: 0.625rem !important; }
  .pu-page .pu-proof .pl-live__seal { width: 64px !important; height: 64px !important; }
}
@media (min-width: 900px) { .pt-page .pt-proof__img { display: none !important; } .pt-page .pt-proof__card { justify-content: center !important; } }

/* ==== Universities + partners heroes: quieter image, dashboard as the focus ==== */
:is(.pu-hero__stage, .pt-hero__stage) { position: relative; }
:is(.pu-hero__pic, .pt-hero__fig) { position: relative; }
:is(.pu-hero__pic, .pt-hero__fig)::after { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(90deg, rgba(6,25,58,.72) 0%, rgba(6,25,58,0) 26%, rgba(6,25,58,0) 74%, rgba(6,25,58,.72) 100%); }
@media (max-width: 899px) { :is(.pu-hero__pic, .pt-hero__fig)::after { display: none; } }
.pu-hero__text, .pt-hero__text { position: relative; z-index: 3; }
/* partners top proof: three quotes in one row beside a compact stats panel */
@media (min-width: 900px) {
  .pt-page .pt-proof__grid { grid-template-columns: minmax(240px, 0.75fr) 2.25fr !important; }
  .pt-page .pt-proof__quotes { grid-template-columns: repeat(3, 1fr) !important; }
  .pt-page .pt-proof__stack { display: contents !important; }
  .pt-page .pt-proof__card { padding: 1rem 1.125rem !important; }
  .pt-page .pt-stats li { padding-block: 0.125rem !important; }
  .pt-page .pt-quote--main p { font-size: clamp(0.875rem, min(1.9vh, 1.15vw), 1rem) !important; }
}

/* ==== Universities + partners stories: same footprint as the marketplace proof block ==== */
@media (min-width: 900px) {
  :is(.pu-case, .pt-case) > .hm-shell { max-width: min(1120px, 100% - 3rem) !important; margin-inline: auto; }
  :is(.pu-case, .pt-case) :is(.pu-h, .pt-h) { margin-bottom: 0 !important; }
  .pu-page .pu-case__grid, .pt-page .pt-case__grid { margin-top: 0.875rem !important; align-items: stretch; gap: 0.75rem !important; }
  :is(.pu-page .pu-cs__photo, .pt-page .pt-cs__photo) { height: 150px !important; }
  :is(.pu-cs__copy, .pt-cs__copy) { padding: 0.625rem 0.875rem 0.5rem !important; }
  :is(.pu-cs__copy, .pt-cs__copy) :is(.pu-tag, .pt-tag) { font-size: 0.625rem; padding: 0.2rem 0.5rem; }
  :is(.pu-cs__copy, .pt-cs__copy) .ex-tag { margin: 0.25rem 0 0; }
  :is(.pu-cs__copy, .pt-cs__copy) h3 { font-size: clamp(1rem, min(2.3vh, 1.4vw), 1.1875rem) !important; margin: 0.375rem 0 0.25rem !important; }
  :is(.pu-cs__copy, .pt-cs__copy) p { font-size: clamp(0.8125rem, min(1.8vh, 1.05vw), 0.9375rem) !important; margin: 0 0 0.5rem !important; line-height: 1.35; }
  :is(.pu-cs__copy, .pt-cs__copy) .hm-btn { padding: 0.5rem 1rem !important; font-size: 0.75rem !important; }
  :is(.pu-cs__quotes, .pt-cs__quotes) { gap: 0.5rem !important; margin: 0 !important; }
  :is(.pu-page .pu-cq, .pt-page .pt-cq) { padding: 0.5rem 0.875rem !important; gap: 0.125rem 0.625rem !important; }
  :is(.pu-cq, .pt-cq) p { font-size: clamp(0.8125rem, min(1.7vh, 1vw), 0.875rem) !important; line-height: 1.32; margin: 0.125rem 0 0 !important; }
  :is(.pu-cq, .pt-cq) footer b, .pt-cq b { font-size: 0.875rem !important; }
  :is(.pu-cq, .pt-cq) footer small, .pt-cq small { font-size: 0.75rem !important; }
  :is(.pu-av, .pt-av) { width: 34px !important; height: 34px !important; }
  .pt-cq__mark { display: none !important; }
  .pt-cq footer { margin-top: 0.25rem !important; padding-top: 0.25rem !important; }
}
@media (min-width: 900px) { .pt-page .pt-cq > .ex-tag { grid-column: 1 / -1; justify-self: start; height: auto; margin-bottom: 0.25rem; } }
@media (min-width: 900px) { .pu-page .pu-hero__text { padding-top: 6.5cqw !important; } }
@media (min-width: 900px) { .pu-page .pu-hero__lead { max-width: 44cqw !important; margin-inline: auto !important; } .pu-page .pu-hero__text { padding-top: 5.5cqw !important; } }

/* ==== Athios Squad (replaces the mascots): media-day athlete cards ==== */
.sq-card { display: block; height: auto; aspect-ratio: 370 / 688; object-fit: cover; object-position: 50% 0; border-radius: 16px; background: #dfe1e3; box-shadow: 0 8px 22px rgba(20,23,28,.12); }
.pa-page .pa-cat__row.sq-row { position: static !important; display: flex !important; justify-content: center; align-items: flex-end; gap: clamp(0.5rem, 1.4vw, 1rem); width: auto !important; max-width: 100%; height: auto !important; margin: clamp(0.75rem, 2vh, 1.25rem) auto clamp(0.75rem, 2vh, 1.25rem) !important; }
.pa-page .sq-row .sq-card { width: clamp(84px, 13vw, 168px); }
.pa-page .sq-row .sq-card:nth-child(even) { transform: translateY(-10px); }
@media (max-width: 599px) { .pa-page .sq-row .sq-card:nth-child(n+5) { display: none; } .pa-page .sq-row .sq-card { width: 22vw; } }
.pl-cs__monster.sq-card { width: clamp(110px, 12vw, 160px) !important; height: auto !important; margin-top: 0.75rem; }
.pb-proof__mon.sq-card { width: clamp(90px, 10vw, 140px) !important; height: auto !important; }
.ph-home .pl-cs__intro .pl-cs__monster.sq-card { width: clamp(110px, 11vw, 150px) !important; height: auto !important; max-width: none; margin-top: 0.75rem; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-cs__intro img.pl-cs__monster.sq-card { width: clamp(110px, 11vw, 150px) !important; height: auto !important; max-height: none !important; aspect-ratio: 370 / 688; }

/* ==========================================================================
   Mascot photos on hold (2026-10-14). Every image that still shows a mascot
   carries data-mascot and is hidden; its card falls back to a text card.
   To restore a slot: drop the new photo in with the same filename and delete
   data-mascot from its <img>.
   ========================================================================== */
img[data-mascot] { display: none !important; }
:is(.mp-art, .pb-pc__stage, .pb-way__stage, .pu-pc__stage, .pu-cs__photo, .pb-cs__photo, .pa-step__stage, picture):has(> img[data-mascot]) { display: none !important; }
.mp-art:has(img[data-mascot]) { display: none !important; }

/* text cards: a lime bar on top stands in for the photo */
:is(.pl-pc, .pa-pc, .pb-pc, .pb-fc, .pu-pc, .pb-way, .pl-mf__card, .pa-step):has(img[data-mascot]) { position: relative; border-top: 6px solid var(--br-lime) !important; padding-top: 0.75rem !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:has(img[data-mascot]) { grid-template-columns: 1fr !important; }
.pl-mf__card:has(img[data-mascot]) .pl-mf__copy { padding: 1rem 1.25rem !important; }
.pb-fc:has(img[data-mascot]) { display: block !important; }
.pb-fc:has(img[data-mascot]) .pb-fc__copy { padding: 1rem 1.25rem !important; }

/* brand solution: steps take the full row */
.pb-sol__grid:has(img.pb-sol__scene[data-mascot]) { grid-template-columns: 1fr !important; max-width: 760px; margin-inline: auto; }

/* heroes without photos: text in flow, squad lineup underneath */
.sq-lineup { display: none; }
:is(.pb-hero__stage, .pu-hero__stage):has(img[data-mascot]) .sq-lineup { display: flex; justify-content: center; align-items: flex-end; gap: clamp(0.5rem, 1.4vw, 1rem); margin: clamp(1.25rem, 3vh, 2rem) auto 0; padding-bottom: clamp(1.5rem, 4vh, 2.5rem); }
.sq-lineup .sq-card { width: clamp(80px, 12vw, 170px); }
.sq-lineup .sq-card:nth-child(even) { transform: translateY(-12px); }
@media (max-width: 599px) { .sq-lineup .sq-card:nth-child(n+5) { display: none; } .sq-lineup .sq-card { width: 21vw; } }
.pb-hero__stage:has(img[data-mascot]) { width: auto !important; container-type: normal !important; }
.pb-hero__stage:has(img[data-mascot]) .pb-hero__text { position: static !important; padding: clamp(2rem, 5vh, 3.5rem) 1rem 0 !important; text-align: center; }
.pb-hero:has(img[data-mascot]) { background: linear-gradient(180deg, #fefcf6 0%, var(--br-mint) 100%) !important; }
.pb-hero__stage:has(img[data-mascot]) .pb-hero__text h1 { font-size: var(--t-h) !important; }
.pb-hero__stage:has(img[data-mascot]) .pb-hero__lead { font-size: var(--t-lead) !important; margin-inline: auto; }
.pb-hero__stage:has(img[data-mascot]) .pb-hero__btns { justify-content: center; margin-top: 1.25rem !important; }
.pb-hero__stage:has(img[data-mascot]) .pb-hero__btns .hm-btn { padding: 0.875rem 1.75rem !important; }
.pu-hero__stage:has(img[data-mascot]) { width: auto !important; container-type: normal !important; }
.pu-hero__stage:has(img[data-mascot]) .pu-hero__text { position: static !important; padding: clamp(2rem, 5vh, 3.5rem) 1rem 0 !important; }
.pu-hero__stage:has(img[data-mascot]) .pu-hero__text h1 { font-size: var(--t-h) !important; }
.pu-hero__stage:has(img[data-mascot]) .pu-hero__lead { max-width: 640px !important; font-size: var(--t-lead) !important; }
.pu-hero:has(img[data-mascot]) .pu-hero__pic::after { display: none; }
@media (max-width: 899px) { .pu-hero__stage:has(img[data-mascot]) .pu-hero__text h1 { font-size: clamp(1.625rem, 7.4vw, 2.25rem) !important; } .pu-hero__stage:has(img[data-mascot]) .pu-hero__text h1 span { white-space: normal !important; display: inline !important; } }

/* ==========================================================================
   Tighter system (2026-10-14): one content width, smaller spacing and type,
   compact cards. Applies to every landing page.
   ========================================================================== */
.pl-page { --sec-y: clamp(2rem, 3.6vw, 3.25rem); --sec-y-compact: clamp(1.5rem, 2.6vw, 2.25rem); --head-gap: clamp(1rem, 1.8vw, 1.5rem);
  --t-h: clamp(1.75rem, min(5vh, 3.2vw), 2.875rem);
  --t-lead: clamp(1rem, min(2.2vh, 1.4vw), 1.1875rem);
  --t-card: clamp(1.0625rem, min(2.6vh, 1.6vw), 1.375rem);
  --t-body: clamp(0.9375rem, min(2vh, 1.2vw), 1.0625rem);
  --t-small: clamp(0.875rem, min(1.9vh, 1.1vw), 1rem);
  --t-q: clamp(1rem, min(2.2vh, 1.4vw), 1.1875rem);
  --pa-h: var(--t-h); --pa-lead: var(--t-lead); --pa-card-h: var(--t-card); }
@media (max-width: 899px) { .pl-page { --t-h: clamp(1.625rem, 7.4vw, 2.125rem); --t-lead: 1rem; --t-card: 1.1875rem; --t-body: 0.9375rem; --t-small: 0.9375rem; --t-q: 1.0625rem; } }

/* one content width everywhere (home already uses 1160) */
@media (min-width: 900px) {
  .pl-page main .hm-shell { max-width: min(1160px, 100% - 3rem) !important; margin-inline: auto; }
  .pl-page main :is(.pa-hero, .pu-hero, .pt-hero, .pb-hero) .hm-shell { max-width: min(1240px, 100% - 3rem) !important; }
  .pl-page main .pl-hero .hm-shell { max-width: var(--hm-max) !important; }
}

/* headings sit closer to their content */
.pl-page main section h2 { margin-bottom: 0; }
.pl-page main section :is(h2 + p, [class*="__lead"], [class*="__sub"]) { margin-top: 0.5rem !important; }
.pl-page main section :is([class*="__grid"], [class*="__cards"], [class*="__list"], [class*="__rows"], .pl-table-wrap, .pa-steps, .pa-ways__list, .pl-s5__cards, .pl-mf__grid, .pl-fq__grid) { margin-top: var(--head-gap) !important; }

/* grids and cards: smaller gaps and padding */
.pl-page main :is(.pl-prob__grid, .pa-prob__grid, .pb-prob__grid, .pu-prob__grid, .pt-prob__grid, .pl-s5__cards, .pl-mf__grid, .pl-fq__grid, .pa-steps, .pb-feat__cards, .pu-feat__grid, .pt-feat__grid, .pb-three__grid) { gap: clamp(0.625rem, 1.1vw, 0.875rem) !important; }
.pl-page main :is(.pl-pc, .pa-pc, .pb-pc, .pu-pc, .pt-pc, .pb-fc, .pa-step, .pb-way, .pa-way, .pl-fq__card, .pt-fi, .pa-tile, .pu-mini li, .pt-role) { border-radius: 16px !important; }
.pl-page main :is(.pa-pc__body, .pb-fc__copy, .pa-step__top, .pb-way__copy, .pt-role, .pa-tile) { padding: clamp(0.625rem, 1.2vw, 0.875rem) clamp(0.75rem, 1.3vw, 1rem) !important; }
.pl-page main .pl-fq__card { padding: 0.75rem 3rem 0.75rem 0.875rem !important; }
.pl-page main :is(.pl-fq__card, .pa-pc, .pb-pc, .pu-pc, .pb-fc, .pa-step) h3 { margin-bottom: 0.25rem !important; }
.pl-page main .pl-fq__cta, .pl-page main [class*="__cta"]:not(section):not(.pl-end__btns) { margin-top: clamp(0.875rem, 1.8vw, 1.25rem) !important; }

/* buttons a touch smaller */
.pl-page main .pl-btn--lg { padding: 0.75rem 1.5rem !important; font-size: 0.8125rem !important; }

/* comparison: denser rows */
@media (min-width: 900px) { .pl-std .pl-table tbody :is(th, td) { padding-block: clamp(0.35rem, 1.1vh, 0.6rem) !important; } .pl-std .pl-table-wrap { max-width: 1000px !important; } }

/* closing block and guide band */
.pl-end__copy { padding: clamp(1rem, 2.4vh, 1.5rem) clamp(1rem, 2.4vw, 2rem) !important; }
.pl-end__steps { margin: clamp(0.75rem, 2vh, 1.125rem) 0 !important; }
.pl-end > .hm-shell { width: min(1160px, 100% - 3rem) !important; }
.pl-gb__grid { gap: clamp(1rem, 3vw, 2.5rem) !important; }
.pl-gb__form { padding: clamp(0.875rem, 2vw, 1.25rem) !important; }
@media (max-width: 599px) { .pl-page main .pl-btn--lg { padding: 0.75rem 1rem !important; font-size: 0.75rem !important; } .pl-page main :is(.pa-hero__btns, .pt-hero__btns, .pu-hero__btns, .pb-hero__btns, .pl-actions) { flex-wrap: wrap; justify-content: center; gap: 0.5rem !important; } }
.pb-pc:has(img[data-mascot]) { min-height: 0 !important; height: auto !important; padding: 0.875rem 1rem !important; display: block !important; }
.pb-pc:has(img[data-mascot]) .pb-pc__t { padding: 0 !important; margin: 0 !important; max-width: none !important; position: static !important; }
.pb-prob__grid:has(img[data-mascot]), .pb-prob__list:has(img[data-mascot]) { align-content: center; gap: 0.625rem !important; }
.pb-three :is(h2 + p, .pb-lead) { margin-inline: auto !important; text-align: center; }

/* ==== Home on tablets and phones: keep photos in proportion ==== */
@media (max-width: 899px) {
  .ph-home .pl-vcard--bimage { aspect-ratio: 4 / 3 !important; max-height: 340px; height: auto !important; }
  .ph-home .pl-vcard--bimage .pl-vcard__full { width: 100%; height: 100% !important; object-fit: cover !important; object-position: 50% 25% !important; }
  .ph-home .pl-cs__photo { width: 100% !important; height: auto !important; aspect-ratio: 16 / 10; max-height: 320px !important; object-fit: cover !important; object-position: 50% 30% !important; padding: 0.5rem 0.5rem 0 !important; }
  .ph-home .pl-cs__card { grid-template-columns: 1fr !important; }
  .ph-home .pl-cs__intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; }
  .ph-home .pl-cs__q { grid-template-columns: 44px minmax(0, 1fr) !important; }
  .ph-home .pl-cs__q footer { min-width: 0; }
  .ph-home .pl-cs__q footer b, .ph-home .pl-cs__q footer small { white-space: normal; word-break: normal; }
  .ph-home .ph-prob .pl-pc { text-align: left !important; }
  .ph-home .ph-prob .pl-pc__pains { justify-items: start; }
}
@media (min-width: 600px) and (max-width: 899px) {
  .ph-home .pl-cs__quotes { grid-template-columns: 1fr 1fr 1fr !important; gap: 0 !important; }
  .ph-home .pl-cs__q { grid-template-columns: 1fr !important; padding: 0.5rem 0.75rem !important; }
  .ph-home .pl-cs__q + .pl-cs__q { border-top: 0 !important; border-left: 1px solid rgba(255,255,255,.16); }
}
/* Home hero art: stop bleeding to the window edge on wide or zoomed-out screens */
@media (min-width: 900px) { .ph-home .hh-stage { margin-right: calc(-1 * min(max(0px, (100vw - 1112px) / 2 - 1rem), 140px)) !important; max-width: 860px; } }
@media (min-width: 900px) { .ph-home .pl-cs__card { align-items: center !important; } .ph-home .pl-cs__phwrap, .ph-home .pl-cs__photo { height: auto !important; } }
@media (max-width: 599px) {
  .ph-home .ph-prob .pl-pc, .ph-home .ph-prob .pl-pc * { text-align: left !important; }
  .ph-home .ph-prob .pl-pc__aud, .ph-home .ph-prob .pl-pc__title, .ph-home .ph-prob .pl-pc__pains { margin-left: 0.75rem !important; margin-right: 0.75rem !important; justify-self: stretch; }
  .ph-home .pl-cs__intro { display: block !important; }
  .ph-home .pl-cs__intro .pl-cs__monster { display: none !important; }
  .ph-home .pl-cs__title { font-size: 1.625rem !important; }
  .ph-home .pl-cs__q { grid-template-columns: 44px minmax(0, 1fr) !important; column-gap: 0.75rem !important; }
  .ph-home .pl-cs__q > .ex-tag { grid-column: 1 / -1; }
  .ph-home .pl-cs__q footer { grid-column: 2; }
  .ph-home .pl-cs__q p { grid-column: 1 / -1; }
}
.ph-home .ph-prob .pl-pc { align-items: stretch !important; } .ph-home .ph-prob .pl-pc > * { align-self: stretch !important; }
@media (max-width: 599px) {
  .pa-page .pa-cat__row.sq-row { flex-wrap: nowrap !important; gap: 0.375rem !important; }
  .pa-page .sq-row .sq-card { width: 20vw !important; }
  .pa-page .sq-row .sq-card:nth-child(n+5) { display: none !important; }
  .pb-proof__mon.sq-card { display: none !important; }
}
/* "Ways to …" stat lists: no row dividers inside the list, tight under the label; icons align to the top */
.pl-vstats .pl-vstats__list li { border-top: 0 !important; padding: 0 0 0 0.875rem !important; display: block !important; line-height: 1.35 !important; }
.pl-vstats .pl-vstats__list { margin-top: 0.25rem !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li:last-child > span:last-child { align-items: flex-start !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats li:last-child small { padding-top: 0.3rem !important; }
.pl-vstats li:has(.pl-vstats__list) { align-items: flex-start !important; }
.pt-stats li:has(.pl-vstats__list) { align-items: flex-start !important; }

/* Home proof: sourced market stat in place of the athlete photo */
.pl-stat { margin-top: 1rem; padding: 1rem 1.125rem; border-radius: 16px; background: #fff; border: 1px solid #d6e6bf; max-width: 300px; }
.pl-stat__k { margin: 0; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.pl-stat__n { margin: 0.125rem 0 0; font-size: clamp(2.25rem, 4vw, 3rem); font-weight: 900; line-height: 1; letter-spacing: -.03em; color: var(--br-black); }
.pl-stat__t { margin: 0.25rem 0 0.625rem; font-size: 0.9375rem; font-weight: 700; line-height: 1.3; color: var(--br-black); }
.pl-stat__bar { height: 10px; border-radius: 999px; background: #eef0e6; overflow: hidden; }
.pl-stat__bar i { display: block; width: var(--v); height: 100%; border-radius: 999px; background: var(--br-leaf); }
.pl-stat__why { margin: 0.625rem 0 0; font-size: 0.8125rem; line-height: 1.35; color: #3a3f47; }
.pl-stat__src { margin: 0.5rem 0 0; font-size: 0.6875rem; color: #6b7079; }
@media (max-width: 899px) { .pl-stat { max-width: none; } }

/* ==== Social proof infographics (replace the featured-story photos on every page) ==== */
.pl-ig { position: relative; display: flex; flex-direction: column; justify-content: center; height: 100%; min-height: 200px; box-sizing: border-box; padding: clamp(1rem, 2vw, 1.375rem); border-radius: 14px; background: radial-gradient(120% 130% at 15% 0%, #f4fde4 0%, var(--br-mint) 60%, #dcefc2 100%); color: var(--br-black); text-align: left; }
.pl-ig__k { margin: 0; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.pl-ig__t { margin: 0.125rem 0 0.75rem; font-size: clamp(1rem, 1.6vw, 1.1875rem); font-weight: 900; line-height: 1.15; }
.pl-ig__steps { position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.pl-ig__steps::before { content: ""; position: absolute; left: 16px; right: calc(33.33% - 16px); top: 15px; height: 2px; background: repeating-linear-gradient(90deg, var(--br-leaf) 0 6px, transparent 6px 11px); }
.pl-ig__steps li { position: relative; display: flex; flex-direction: column; gap: 0.375rem; min-width: 0; }
.pl-ig__steps i { display: grid; place-items: center; min-width: 32px; width: fit-content; height: 32px; padding: 0 0.375rem; box-sizing: border-box; border-radius: 999px; background: #fff; border: 2px solid var(--br-leaf); font-style: normal; font-weight: 900; font-size: 0.8125rem; }
.pl-ig__steps li:last-child i { background: var(--br-orange); border-color: var(--br-orange); color: #fff; }
.pl-ig__steps b { display: block; font-size: 0.875rem; line-height: 1.2; }
.pl-ig__steps span { display: block; margin-top: 0.125rem; font-size: 0.75rem; line-height: 1.3; color: #3a3f47; }
.pl-ig__res { display: flex; justify-content: space-between; align-items: baseline; gap: 0.5rem; margin: 0.875rem 0 0; padding-top: 0.625rem; border-top: 1px dashed #b9d39a; font-size: 0.8125rem; color: #3a3f47; }
.pl-ig__res b { font-size: clamp(1.375rem, 2.4vw, 1.75rem); font-weight: 900; line-height: 1; color: var(--br-black); }
.pl-ig__note { position: absolute; right: 0.75rem; top: 0.625rem; font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(20,23,28,.5); }
/* containers that used to crop photos: size to the infographic instead */
:is(.pl-cs__phwrap, .pa-feat__photo--ig, .pb-cs__photo--ig, .pu-cs__photo--ig, .pt-cs__photo--ig) { height: auto !important; min-height: 0 !important; max-height: none !important; padding: 0 !important; background: none !important; overflow: visible !important; display: block !important; }
.pa-feat__photo--ig { padding: 0.5rem !important; align-self: stretch; }
.pa-feat__photo--ig .pl-ig { height: 100%; }
.pl-vcard--ig { container-type: normal !important; aspect-ratio: auto !important; height: auto !important; background: none !important; overflow: visible !important; }
.pl-vcard--ig .pl-ig { height: 100%; }
.ph-home .pl-videos:has(.pl-vcard--ig) { height: auto !important; align-items: stretch; }
@media (max-width: 899px) { .pl-vcard--ig { aspect-ratio: auto !important; max-height: none !important; } }
@media (max-width: 479px) {
  .pl-ig__steps { grid-template-columns: 1fr; gap: 0.5rem; }
  .pl-ig__steps::before { left: 15px; right: auto; top: 16px; bottom: 16px; width: 2px; height: auto; background: repeating-linear-gradient(var(--br-leaf) 0 6px, transparent 6px 11px); }
  .pl-ig__steps li { flex-direction: row; align-items: center; gap: 0.625rem; }
}
.pl-ig__res b:not(:only-child) { white-space: nowrap; }
.pt-cs__photo--ig .pl-ig__res b { font-size: 1rem; }
.pb-cs:has(.pb-cs__photo--ig) { align-items: center !important; }

/* ==== Even rhythm: content-to-content gap between blocks is the same everywhere ==== */
.pl-page { --sec-y: clamp(2rem, 3.4vw, 3rem); }
.pl-page main > section:not(:first-child) { padding-block: var(--sec-y) !important; margin-block: 0 !important; }
.pl-page main > section > .hm-shell, .pl-page main > section > div { margin-block: 0 !important; padding-block: 0 !important; }
.pl-page main > section:not(:first-child) > .hm-shell > :first-child, .pl-page main > section:not(:first-child) > div > :first-child { margin-top: 0 !important; }
.pl-page main > section:not(:first-child) > .hm-shell > :last-child, .pl-page main > section:not(:first-child) > div > :last-child { margin-bottom: 0 !important; }
/* decorative bars above eyebrows add no meaning; drop them so blocks start at the eyebrow */
.pl-page main .pa-bar { display: none !important; }
/* inner CTA rows sit a consistent distance below the content */
.pl-page main :is(.pl-s5__cta, .pa-sol__cta, .pa-ways__cta, .pb-sol__cta, .pb-three__cta, .pl-fq__cta) { margin-top: 1.25rem !important; margin-bottom: 0 !important; }
@media (min-width: 900px) {
  .pb-prob__grid, .pb-sol__grid { align-items: start !important; }
}
.pb-sol__grid:has(img.pb-sol__scene[data-mascot]) { margin-inline: auto !important; justify-items: center; text-align: center; }
.pb-sol__grid:has(img.pb-sol__scene[data-mascot]) :is(.pb-h, .pb-lead, h2 + p) { margin-inline: auto !important; }
.pb-sol__grid:has(img.pb-sol__scene[data-mascot]) ol, .pb-sol__grid:has(img.pb-sol__scene[data-mascot]) ul { text-align: left; }
.pb-sol__grid:has(img.pb-sol__scene[data-mascot]) .pb-eyebrow { margin-inline: auto; }
@media (min-width: 900px) { .pt-page .pt-cs { grid-template-rows: auto auto !important; align-content: center; } }

/* Heroes sized from their own width (cqw): cap the stage so very wide or zoomed-out windows keep text and art in proportion */
@media (min-width: 900px) {
  .pt-page .pt-hero__stage, .pu-page .pu-hero__stage, .pb-page .pb-hero__stage, .pa-page .pa-hero__stage { max-width: min(calc((100vh - 73px) * 2), 1600px) !important; margin-inline: auto !important; }
  .pt-page .pt-hero__stage .hm-shell, .pu-page .pu-hero__stage .hm-shell, .pb-page .pb-hero__stage .hm-shell { max-width: none !important; }
  .pt-hero, .pu-hero, .pb-hero { overflow: hidden; }
}
@media (min-width: 1601px) {
  .pt-page .pt-hero__fig, .pu-page .pu-hero__pic { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 6%, #000 94%, transparent 100%); }
}
@media (min-width: 900px) {
  .pt-page .pt-proof__quotes { align-items: stretch !important; }
  .pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) { justify-content: flex-start !important; padding-top: 1rem !important; }
  .pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) footer { margin-top: auto !important; }
}
@media (min-width: 900px) {
  .pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) { justify-content: center !important; padding-block: 1rem !important; }
  .pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) footer { margin-top: 0.75rem !important; }
  .pt-page .pt-proof__card { padding-block: 1rem !important; }
  .pt-page .pt-stats { gap: 0.125rem !important; }
}

/* ==== Symmetry: items in a row start at the same line, so headlines align across the row ==== */
.pl-page main :is(.pa-tiles, .pa-quotes, .pb-cq, .pu-trio, .pu-mini, .pt-proof__quotes, .pt-proof__stack, .pu-cs__quotes, .pt-cs__quotes, .pl-cs__quotes, .pt-feat__grid, .pa-steps) { align-items: stretch !important; }
.pl-page main :is(.pa-tile, .pa-q, .pb-quote, .pu-quote, .pu-mini li, .pt-quote, .pt-cq, .pu-cq, .pt-fi, .pl-cs__q) { align-items: flex-start !important; align-content: start !important; justify-content: flex-start !important; }
.pl-page main .pu-mini li > div, .pl-page main .pa-tile > div, .pl-page main .pt-fi > div { align-self: flex-start !important; }
.pl-page main :is(.pu-mini li, .pa-tile, .pt-fi) > img, .pl-page main :is(.pu-mini li, .pa-tile, .pt-fi) > span:first-child { align-self: flex-start !important; margin-top: 0 !important; }
.pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) { justify-content: flex-start !important; }
.ex-tag--real { border-style: solid; color: #2d6a1f; opacity: 1; }
.pu-quote > .ex-tag { margin-inline: auto; display: block; width: fit-content; }
@media (min-width: 900px) {
  .pt-page .pt-stats .pl-vstats__list { display: flex; flex-wrap: wrap; gap: 0 0.75rem; }
  .pt-page .pt-stats li { padding-block: 0 !important; }
  .pt-page .pt-proof__card { gap: 0.375rem !important; }
  .pt-page .pt-proof__card h2 { margin-bottom: 0.25rem !important; }
}
@media (min-width: 900px) { .pt-page .pt-stats .pl-vstats__list { flex-direction: row !important; } .pt-page .pt-stats .pl-vstats__list li { flex: 0 0 auto !important; width: auto !important; } }

/* ==== TEST (new image direction): photo + live app card, home "One Marketplace" block ==== */
.ph-home .pl-s5__card .sx-media { order: -1; position: relative; overflow: hidden; }
.ph-home .sx-media .pl-s5__pic { display: block; width: 100%; height: clamp(170px, 26vh, 250px) !important; object-fit: cover; object-position: 60% 35%; margin: 0 !important; }
.sx-card { position: absolute; right: 10px; bottom: 10px; min-width: 150px; padding: 0.5rem 0.625rem; border-radius: 12px; background: #fff; box-shadow: 0 8px 22px rgba(20,23,28,.18); font-size: 0.75rem; line-height: 1.25; color: var(--br-black); text-align: left; }
.sx-card__t { display: flex; align-items: center; gap: 0.375rem; margin: 0; font-weight: 800; font-size: 0.8125rem; }
.sx-card__s { margin: 0.125rem 0 0; color: #6b7079; }
.sx-card__row { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; margin: 0.375rem 0 0; }
.sx-card__row b { font-size: 0.9375rem; color: var(--br-orange); }
.sx-btn { padding: 0.25rem 0.625rem; border-radius: 999px; background: #2f9e44; color: #fff; font-weight: 700; font-size: 0.6875rem; }
.sx-ic { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 6px; font-style: normal; font-size: 0.6875rem; color: #fff; }
.sx-ic--g { background: var(--br-leaf); } .sx-ic--o { background: var(--br-orange); }
.sx-card--list ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.3rem; }
.sx-card--list li { display: flex; align-items: center; gap: 0.4rem; font-weight: 700; }
.sx-card--list li i { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: #2f9e44; color: #fff; font-style: normal; font-size: 0.5625rem; }
.ph-home .pl-s5__card .sx-card { width: auto !important; max-width: 70%; height: auto !important; min-height: 0 !important; left: auto !important; top: auto !important; padding: 0.5rem 0.625rem !important; }
.ph-home .pl-s5__card .sx-card p { margin: 0 !important; padding: 0 !important; font-size: 0.75rem !important; line-height: 1.3 !important; color: #6b7079; text-align: left !important; min-height: 0 !important; }
.ph-home .pl-s5__card .sx-card p.sx-card__t { font-size: 0.8125rem !important; font-weight: 800; color: var(--br-black); }
.ph-home .pl-s5__card .sx-card p.sx-card__row { margin-top: 0.375rem !important; display: flex !important; }
.ph-home .pl-s5__card .sx-card p.sx-card__s { margin-top: 0.125rem !important; }
/* features grid: photo (40%) with live card, copy (60%) */
.ph-home .sx-media--mf { position: relative; overflow: hidden; min-height: clamp(140px, 18vh, 190px); height: 100%; border-radius: 14px 0 0 14px; }
.ph-home .sx-media--mf > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 30%; }
.ph-home .sx-media--mf .sx-card { right: 8px; bottom: 8px; min-width: 0; max-width: 85%; padding: 0.375rem 0.5rem; }
.ph-home .sx-media--mf .sx-card p { margin: 0 !important; font-size: 0.6875rem !important; line-height: 1.3 !important; color: #6b7079; }
.ph-home .sx-media--mf .sx-card p.sx-card__t { font-size: 0.75rem !important; font-weight: 800; color: var(--br-black); }
.ph-home .sx-media--mf .sx-card__row { display: flex; gap: 0.5rem; justify-content: space-between; }
.ph-home .sx-media--mf .sx-card--list li { font-size: 0.6875rem; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:has(.sx-media--mf) { grid-template-columns: 40fr 60fr !important; border-top: 1px solid #e6e2d2 !important; padding-top: 0 !important; }
@media (max-width: 899px) { .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:has(.sx-media--mf) { grid-template-columns: 1fr !important; } .ph-home .sx-media--mf { min-height: 200px; border-radius: 14px 14px 0 0; } }

/* ==== Closing block: sourced market snapshot (same on every page) ==== */
.pl-end__viz--mkt { display: flex !important; align-items: center; justify-content: center; padding: clamp(1rem, 2.4vw, 1.75rem) !important; }
.pl-mkt { width: 100%; max-width: 380px; padding: 1rem 1.125rem; border-radius: 16px; background: #fff; color: var(--br-black); box-shadow: 0 14px 34px rgba(20,23,28,.16); }
.pl-mkt__k { margin: 0 0 0.5rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange); }
.pl-mkt__row { padding: 0.5rem 0; border-top: 1px solid #eceee6; }
.pl-mkt__row:first-of-type { border-top: 0; padding-top: 0; }
.pl-mkt__row b { display: block; font-size: clamp(1.5rem, 2.4vw, 1.875rem); font-weight: 900; line-height: 1; letter-spacing: -.02em; }
.pl-mkt__row span { display: block; margin-top: 0.125rem; font-size: 0.8125rem; font-weight: 700; line-height: 1.3; }
.pl-mkt__row small { display: block; margin-top: 0.125rem; font-size: 0.625rem; color: #6b7079; }
.pl-mkt__bar { height: 6px; margin-top: 0.375rem; border-radius: 999px; background: #eef0e6; overflow: hidden; }
.pl-mkt__bar i { display: block; width: var(--v); height: 100%; background: var(--br-leaf); border-radius: 999px; }
.pl-mkt__why { margin: 0.5rem 0 0; padding-top: 0.5rem; border-top: 1px dashed #c9d8b2; font-size: 0.75rem; line-height: 1.35; color: #3a3f47; }

/* Free guide: what is inside, one line per audience */
.pl-gb__inside { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem 1rem; margin: 0.875rem 0 0; padding: 0; list-style: none; }
.pl-gb__inside li { padding: 0.5rem 0.625rem; border-radius: 12px; background: rgba(255,255,255,.7); border: 1px solid #d6e6bf; }
.pl-gb__inside b { display: block; font-size: 0.8125rem; color: var(--br-orange); }
.pl-gb__inside span { display: block; margin-top: 0.125rem; font-size: 0.8125rem; line-height: 1.3; color: var(--br-black); }
@media (max-width: 479px) { .pl-gb__inside { grid-template-columns: 1fr; } }
.pl-gb__dash { display: none !important; }

/* ==== Marketplace features: product-screen placeholders (swap for real product shots later) ==== */
.ph-home .pl-mf__card .pp { position: relative; display: flex; align-items: center; justify-content: center; height: 100%; min-height: clamp(150px, 19vh, 200px); padding: 0.75rem; box-sizing: border-box; border-radius: 14px 0 0 14px; background: radial-gradient(120% 120% at 20% 0%, #f4fde4 0%, var(--br-mint) 65%, #dcefc2 100%); }
.pp__win { width: 100%; max-width: 260px; border-radius: 10px; background: #fff; box-shadow: 0 8px 22px rgba(20,23,28,.12); overflow: hidden; font-size: 0.6875rem; color: var(--br-black); }
.pp__bar { display: flex; align-items: center; gap: 4px; margin: 0; padding: 0.375rem 0.5rem; border-bottom: 1px solid #eef0e6; background: #fafaf6; }
.pp__bar i { width: 6px; height: 6px; border-radius: 50%; background: #d9dce1; }
.pp__bar span { margin-left: 0.375rem; font-weight: 800; font-size: 0.6875rem; }
.pp__body { padding: 0.5rem 0.625rem 0.625rem; }
.pp-list { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.3rem; }
.pp-list li { display: flex; align-items: center; gap: 0.4rem; padding: 0.25rem 0.375rem; border-radius: 6px; background: #f6f5ee; font-weight: 700; }
.pp-list li small { margin-left: auto; color: #6b7079; font-weight: 600; }
.pp-ck { display: grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; background: #2f9e44; color: #fff; font-style: normal; font-size: 0.5rem; flex: 0 0 auto; }
.pp-dot { width: 10px; height: 10px; border-radius: 50%; border: 2px solid #c9ccd2; flex: 0 0 auto; }
.pp-dot--o { border-color: var(--br-orange); background: var(--br-orange); }
.pp-bars { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.4rem; }
.pp-bars li { display: grid; grid-template-columns: 52px 1fr 28px; align-items: center; gap: 0.375rem; font-weight: 700; }
.pp-bar { height: 7px; border-radius: 999px; background: #eef0e6; overflow: hidden; }
.pp-bar i { display: block; height: 100%; width: var(--v); border-radius: 999px; }
.pp-bar--g i { background: var(--br-leaf); } .pp-bar--o i { background: var(--br-orange); }
.pp-bars b { text-align: right; }
.pp-alert { display: flex; align-items: center; gap: 0.4rem; margin-bottom: 0.375rem; padding: 0.3rem 0.4rem; border-radius: 6px; background: #fdecdf; font-weight: 800; }
.pp-alert b { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: var(--br-orange); color: #fff; font-size: 0.625rem; }
.pp-list--q li { background: none; padding: 0.125rem 0.25rem; font-weight: 600; }
.pp-chart { display: flex; align-items: flex-end; gap: 5px; height: 54px; padding: 0 0.125rem; border-bottom: 1px solid #eef0e6; }
.pp-chart i { flex: 1; height: var(--v); border-radius: 3px 3px 0 0; background: var(--br-leaf); }
.pp-chart i:last-child { background: var(--br-orange); }
.pp-kpi { display: flex; justify-content: space-between; margin: 0.375rem 0 0; color: #6b7079; }
.pp-kpi span { display: flex; flex-direction: column; } .pp-kpi b { font-size: 0.875rem; color: var(--br-black); }
.pp-list--pay li { justify-content: space-between; } .pp-list--pay b { font-weight: 900; } .pp-list--pay li:nth-child(2) b { color: #2f9e44; }
.pp__note { position: absolute; left: 0.625rem; bottom: 0.375rem; font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(20,23,28,.45); }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:has(.pp) { grid-template-columns: 40fr 60fr !important; border-top: 1px solid #e6e2d2 !important; padding-top: 0 !important; }
@media (max-width: 899px) { .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-mf__card:has(.pp) { grid-template-columns: 1fr !important; } .ph-home .pl-mf__card .pp { border-radius: 14px 14px 0 0; padding-bottom: 1.5rem; } }

/* ==== Athletes page: new image direction ==== */
.sx-media { position: relative; }
.sx-media .sx-card p { margin: 0 !important; font-size: 0.75rem; line-height: 1.3; color: #6b7079; text-align: left; }
.sx-media .sx-card p.sx-card__t { font-size: 0.8125rem; font-weight: 800; color: var(--br-black); }
.sx-media .sx-card__row { display: flex; gap: 0.5rem; justify-content: space-between; align-items: center; margin-top: 0.25rem !important; }
.pa-page .sx-media--cat { max-width: 960px; margin: clamp(0.75rem, 2vh, 1.25rem) auto; border-radius: 20px; overflow: hidden; }
.pa-page .sx-media--cat > img { display: block; width: 100%; height: clamp(240px, 36vh, 380px); object-fit: cover; object-position: 50% 30%; }
.pa-page .sx-media--cat .sx-card { right: 14px; bottom: 14px; }
.pa-page .sx-media--step { margin-top: auto; overflow: hidden; border-radius: 0 0 16px 16px; }
.pa-page .sx-media--step > img { display: block !important; width: 100%; height: clamp(150px, 22vh, 210px) !important; object-fit: cover; object-position: 50% 25%; }
.pa-page .pa-step:has(.sx-media--step) { border-top: 0 !important; padding-top: 0 !important; display: flex; flex-direction: column; }
.pa-page .sx-media--step .sx-card { right: 10px; bottom: 10px; max-width: 85%; }
.pa-page .pa-way__stage img { object-position: 60% 35% !important; }
.pa-page .pa-step--3 .sx-media--step > img { object-position: 50% 12% !important; }

/* Athletes catalog: product-screen placeholder */
.pa-page .pc { position: relative; max-width: 960px; margin: clamp(0.75rem, 2vh, 1.25rem) auto; padding: clamp(0.875rem, 2vw, 1.5rem) clamp(0.875rem, 2vw, 1.5rem) 1.75rem; border-radius: 20px; background: radial-gradient(120% 120% at 20% 0%, #f8fef0 0%, #eef8dc 70%, #e1f2c8 100%); border: 1px solid #d6e6bf; }
.pc__win { border-radius: 14px; background: #fff; box-shadow: 0 12px 30px rgba(20,23,28,.10); overflow: hidden; text-align: left; }
.pc__filters { display: flex; flex-wrap: wrap; gap: 0.375rem; padding: 0.625rem 0.75rem; border-bottom: 1px solid #eef0e6; }
.pc__filters span { padding: 0.25rem 0.625rem; border-radius: 999px; background: #f4f3ea; font-size: 0.75rem; font-weight: 700; color: #3a3f47; }
.pc__filters .is-on { background: var(--br-black); color: #fff; }
.pc__filters .pc__sp { margin-left: auto; background: #fff; border: 1px solid #e3e1d6; }
.pc__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.625rem; margin: 0; padding: 0.75rem; list-style: none; }
.pc-card { padding: 0.75rem; border-radius: 12px; border: 1px solid #eceee6; background: #fdfdf8; }
.pc-av { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; color: #fff; font-weight: 900; font-size: 0.875rem; }
.pc-av--g { background: var(--br-leaf); } .pc-av--o { background: var(--br-orange); } .pc-av--n { background: var(--br-black); }
.pc-card b { display: block; margin-top: 0.5rem; font-size: 0.9375rem; color: var(--br-black); }
.pc-card small { display: block; font-size: 0.75rem; color: #6b7079; }
.pc-card dl { display: grid; grid-template-columns: 1fr 1fr; gap: 0.25rem; margin: 0.5rem 0 0; }
.pc-card dt { font-size: 0.625rem; color: #6b7079; } .pc-card dd { margin: 0; font-size: 0.875rem; font-weight: 900; color: var(--br-black); }
.pc-tags { display: flex; flex-wrap: wrap; gap: 0.25rem; margin: 0.5rem 0 0; }
.pc-tags span { padding: 0.125rem 0.375rem; border-radius: 6px; background: var(--br-mint); font-size: 0.625rem; font-weight: 700; color: #2d6a1f; }
.pa-page .pc .pp__note { left: auto; right: 1rem; bottom: 0.5rem; }
@media (max-width: 899px) { .pc__grid { grid-template-columns: 1fr 1fr; } }

/* ==== Athletes: problem infographics + solution product shots ==== */
.pa-page .pg { margin: 0 0 0.25rem; padding: 0.75rem 0.875rem; border-radius: 12px; background: #fff; border: 1px solid #ece7d6; text-align: left; font-size: 0.75rem; }
.pg__t { margin: 0 0 0.5rem; font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: var(--br-orange); }
.pg-bars { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.5rem; }
.pg-bars li { display: grid; gap: 0.25rem; font-weight: 700; color: var(--br-black); }
.pg-flat { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
.pg-flat > div { padding: 0.5rem; border-radius: 8px; background: #f6f5ee; }
.pg-flat small { display: block; color: #6b7079; } .pg-flat b { display: block; font-size: 1.125rem; font-weight: 900; color: var(--br-black); } .pg-flat span { font-weight: 700; color: #3a3f47; }
.pg-x { display: grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; background: #fde0d2; color: #d9480f; font-style: normal; font-size: 0.5rem; flex: 0 0 auto; }
.pa-page .pa-pc:has(.pg) { border-top: 1px solid #e6e2d2 !important; padding: 0.5rem 0.5rem 0.875rem !important; }
.pa-page .pp--step { margin-top: auto; padding: 0.75rem; border-radius: 0 0 16px 16px; background: radial-gradient(120% 120% at 20% 0%, #f4fde4 0%, var(--br-mint) 65%, #dcefc2 100%); display: flex; justify-content: center; }
.pa-page .pp--step .pp__win { max-width: 300px; }
.pa-page .pa-step:has(.pp--step) { border-top: 0 !important; padding-top: 0 !important; display: flex; flex-direction: column; }
.pp-offer { display: flex; align-items: center; gap: 0.5rem; } .pp-offer .pc-av { width: 30px; height: 30px; font-size: 0.6875rem; }
.pp-offer b { display: block; font-size: 0.75rem; } .pp-offer small { display: block; color: #6b7079; font-size: 0.625rem; }
.pp-actions { flex-direction: row !important; gap: 0.25rem; align-items: flex-end; }
.pp-actions em { padding: 0.2rem 0.5rem; border-radius: 999px; font-style: normal; font-weight: 700; font-size: 0.625rem; }
.pp-no { background: #f1f1ec; color: #3a3f47; } .pp-yes { background: #2f9e44; color: #fff; }
.pp-up { color: #2f9e44 !important; }
.pa-page .pg p.pg__t { margin: 0 0 0.5rem !important; font-size: 0.625rem !important; line-height: 1.3 !important; letter-spacing: 0.12em; font-weight: 700; color: var(--br-orange) !important; }
.pa-page .pg { min-height: 112px; box-sizing: border-box; }
.pa-page .pg-bars li span { font-size: 0.75rem; }
.pa-page :is(.pp--step, .pg) :is(p, span, small, b) { line-height: 1.3; }
.pa-page .pp--step p.pp-kpi { margin: 0.375rem 0 0 !important; font-size: 0.6875rem !important; color: #6b7079 !important; }
.pa-page .pp--step p.pp-kpi b { font-size: 0.875rem; color: var(--br-black); }
.pa-page .pp--step p.pp__bar { margin: 0 !important; font-size: 0.6875rem !important; }
.pa-page .pp--step .pp-offer b, .pa-page .pp--step .pp-offer small { text-align: left; }
.pa-page .pa-steps { align-items: stretch; }
@media (min-width: 900px) { .pa-page .pg { height: 150px; min-height: 0; } .pa-page .pp--step .pp__win { min-height: 150px; } }

/* ==== White-space pass ==== */
/* brands stats: smaller numbers, list inline so the three columns are the same height */
.pb-proof .pb-pstat b { font-size: clamp(2.25rem, min(6vh, 4vw), 3.25rem) !important; line-height: 1 !important; }
.pb-proof .pb-pstat span { font-size: 0.9375rem !important; }
.pb-proof .pb-pstat .pl-vstats__list { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 0 0.75rem; margin-top: 0.25rem !important; font-size: 0.8125rem; font-weight: 600; }
.pb-proof .pb-proof__stats { margin-top: 0.75rem !important; align-items: start; }
/* closing block: copy centered in its panel; panel heights follow content */
.pl-end__band { align-items: stretch; }
.pl-end__copy { display: flex; flex-direction: column; justify-content: center; }
@media (min-width: 900px) { .pl-end__band { grid-template-columns: 0.8fr 1.2fr !important; } .pl-end__viz--mkt { padding: 1.25rem !important; } .pl-mkt { padding: 0.875rem 1rem; } .pl-mkt__row { padding: 0.375rem 0; } }
/* FAQ: tighter cards */
.pl-std .pl-fq__card { padding: 0.75rem 3rem 0.75rem 1rem !important; }
.pl-std .pl-fq__grid { gap: 0.5rem 0.75rem !important; }
/* home proof: infographic card fits its content */
.ph-home .pl-videos:has(.pl-vcard--ig) { align-items: start !important; }

/* ==== Brands: product screens + infographics in place of hidden photos ==== */
.pb-page .pb-pc__stage:has(.pg) { display: block !important; height: auto !important; min-height: 0 !important; padding: 0 !important; background: none !important; }
.pb-page .pb-pc:has(.pg) { border-top: 1px solid #e6e2d2 !important; padding: 0.5rem 0.5rem 0.875rem !important; }
.pb-page .pg--b { color: var(--br-black); }
.pb-page .pg--b p.pg__t { margin: 0 0 0.5rem !important; font-size: 0.625rem !important; line-height: 1.3 !important; letter-spacing: 0.12em; font-weight: 700; color: var(--br-orange) !important; }
.pb-page .pg-flat b { font-size: 0.875rem; }
@media (min-width: 900px) { .pb-page .pg--b { height: 128px; box-sizing: border-box; } }
.pb-page .pb-fc:has(.pp--b) { display: grid !important; grid-template-columns: 44fr 56fr; align-items: stretch; border-top: 1px solid #e6e2d2 !important; padding: 0 !important; overflow: hidden; }
.pb-page .pp--b { display: flex; align-items: center; justify-content: center; padding: 0.75rem; background: radial-gradient(120% 120% at 20% 0%, #f4fde4 0%, var(--br-mint) 65%, #dcefc2 100%); }
.pb-page .pp--b .pp__win { max-width: 240px; }
.pb-page .pp--b p { margin: 0 !important; font-size: 0.6875rem !important; line-height: 1.3 !important; }
.pb-page .pp--b p.pp-kpi { margin-top: 0.375rem !important; color: #6b7079; }
.pb-page .pb-fc:has(.pp--b) .pb-fc__copy { align-self: center; }
@media (max-width: 599px) { .pb-page .pb-fc:has(.pp--b) { grid-template-columns: 1fr; } }
.pb-page .pg--b { height: auto !important; padding: 0.625rem 0.75rem !important; }
.pb-page .pg--b .pp-list li, .pb-page .pg--b .pp-list span { font-size: 0.75rem !important; line-height: 1.3 !important; }
.pb-page .pg--b .pp-list { gap: 0.25rem; }
.pb-page .pg--b .pg-flat small, .pb-page .pg--b .pg-flat b { font-size: 0.75rem !important; line-height: 1.3 !important; }
.pb-page .pb-pc:has(.pg) { align-items: center !important; min-height: 0 !important; }
/* Brands hero: product-review photo with live license card */
.pb-hero__stage:has(img[data-mascot]) .sx-media--bhero { width: min(420px, 86vw); margin: clamp(1.25rem, 3vh, 2rem) auto clamp(1.5rem, 4vh, 2.5rem); border-radius: 20px; overflow: hidden; box-shadow: 0 16px 40px rgba(20,23,28,.14); }
.sx-media--bhero > img { display: block; width: 100%; height: clamp(260px, 38vh, 380px); object-fit: cover; object-position: 50% 30%; }
.sx-media--bhero .sx-card { right: 12px; bottom: 12px; }
.sx-card--list ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 0.3rem; }
.sx-card--list li { display: flex; align-items: center; gap: 0.4rem; font-weight: 700; font-size: 0.75rem; }
.sx-card--list li i { display: grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: #2f9e44; color: #fff; font-style: normal; font-size: 0.5625rem; }
.pb-page .pb-way__stage img { object-position: 50% 30% !important; }
/* Universities problem infographics */
.pu-page .pu-pc__stage:has(.pg) { height: auto !important; min-height: 0 !important; aspect-ratio: auto !important; padding: 0 !important; background: none !important; display: block !important; }
.pu-page .pu-pc:has(.pg) { border-top: 1px solid #e6e2d2 !important; padding: 0.5rem 0.5rem 0.875rem !important; }
.pu-page .pg--u { margin-bottom: 0.625rem; padding: 0.75rem 0.875rem; border-radius: 12px; background: #fff; border: 1px solid #ece7d6; text-align: left; color: var(--br-black); }
.pu-page .pg--u p.pg__t { margin: 0 0 0.5rem !important; font-size: 0.625rem !important; line-height: 1.3 !important; letter-spacing: 0.12em; font-weight: 700; color: var(--br-orange) !important; }
.pu-page .pg--u .pp-list li, .pu-page .pg--u .pp-list span, .pu-page .pg--u small { font-size: 0.75rem !important; line-height: 1.3; }
.pu-page .pg--u .pg-flat b { font-size: 1.25rem; }
@media (min-width: 900px) { .pu-page .pg--u { height: 128px; box-sizing: border-box; } }
.pu-page .pu-pc:has(.pg) > :is(h3, p) { padding-inline: 0.5rem; }
.pu-page .pu-pc:has(.pg) { align-items: stretch !important; text-align: left !important; } .pu-page .pu-pc__stage:has(.pg) { width: 100% !important; align-self: stretch !important; } .pu-page .pg--u { width: 100%; box-sizing: border-box; }

/* ==== Brands hero: split layout (copy left, photo with live cards right) ==== */
@media (min-width: 900px) {
  .pb-hero:has(img[data-mascot]) { background: linear-gradient(120deg, #fefcf6 0%, #fefcf6 45%, var(--br-mint) 100%) !important; }
  .pb-hero__stage:has(img[data-mascot]) { display: grid !important; grid-template-columns: 1.05fr 0.95fr; align-items: center; gap: clamp(1.5rem, 4vw, 4rem); max-width: min(1160px, 100% - 3rem) !important; margin-inline: auto !important; padding-block: clamp(2rem, 5vh, 3.5rem) !important; }
  .pb-hero__stage:has(img[data-mascot]) .pb-hero__text { padding: 0 !important; text-align: left !important; }
  .pb-hero__stage:has(img[data-mascot]) .pb-hero__text h1 { font-size: clamp(2.25rem, min(6vh, 4vw), 3.5rem) !important; line-height: 1.02; }
  .pb-hero__stage:has(img[data-mascot]) .pb-hero__text h1 span { display: block; }
  .pb-hero__stage:has(img[data-mascot]) .pb-hero__lead { margin-inline: 0 !important; max-width: 30rem; }
  .pb-hero__stage:has(img[data-mascot]) .pb-hero__btns { justify-content: flex-start !important; }
  .pb-hero__stage:has(img[data-mascot]) .sx-media--bhero { width: 100% !important; max-width: 520px; margin: 0 0 0 auto !important; overflow: visible !important; box-shadow: none !important; }
  .sx-media--bhero > img { height: clamp(380px, 58vh, 520px) !important; border-radius: 24px; box-shadow: 0 20px 50px rgba(20,23,28,.16); }
  .sx-media--bhero .sx-card--list { right: -18px !important; bottom: 28px !important; }
  .sx-media--bhero .sx-card--top { left: -28px; right: auto !important; top: 28px; bottom: auto !important; min-width: 160px; }
}
.sx-media--bhero .sx-card p { margin: 0 !important; font-size: 0.75rem; color: #6b7079; }
.sx-media--bhero .sx-card p.sx-card__t { font-size: 0.8125rem; font-weight: 800; color: var(--br-black); margin-bottom: 0.25rem !important; }
.sx-media--bhero .sx-card__row { display: flex; justify-content: space-between; gap: 1rem; }
.sx-media--bhero .sx-card__row b { color: var(--br-black); font-size: 0.875rem; }
@media (max-width: 899px) { .sx-media--bhero .sx-card--top { display: none; } }

/* ==== Brands blocks 1-3: cleaner layouts ==== */
/* 1. Stats band: headline left, three tiles right */
@media (min-width: 900px) {
  .pb-proof .pb-proof__inner { display: grid !important; grid-template-columns: 0.9fr 1.1fr; align-items: center; gap: 2rem; text-align: left; }
  .pb-proof .pb-h { font-size: clamp(1.5rem, min(4vh, 2.6vw), 2.25rem) !important; text-align: left; margin: 0; }
  .pb-proof .pb-proof__stats { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 0.625rem !important; margin: 0 !important; }
}
.pb-proof .pb-pstat { padding: 0.875rem 0.75rem !important; border: 1px solid #e6e2d2 !important; border-radius: 16px; background: #fff; text-align: center; }
.pb-proof .pb-pstat + .pb-pstat { border-left: 1px solid #e6e2d2 !important; }
.pb-proof .pb-pstat b { font-size: clamp(1.875rem, min(5vh, 3vw), 2.5rem) !important; }
.pb-proof .pb-pstat span { font-size: 0.8125rem !important; }
.pb-proof .pb-pstat .pl-vstats__list { font-size: 0.6875rem !important; gap: 0 0.5rem; }

/* 2. Problem: centered headline, three equal vertical cards */
.pb-prob .pb-prob__grid { display: block !important; }
.pb-prob .pb-prob__copy { text-align: center; max-width: 760px; margin: 0 auto; }
.pb-prob .pb-prob__copy .pb-h br { display: none; }
.pb-prob .pb-prob__cards { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem !important; margin-top: var(--head-gap) !important; }
.pb-prob .pb-pc { display: flex !important; flex-direction: column; align-items: stretch !important; padding: 0.5rem 0.5rem 1rem !important; }
.pb-prob .pb-pc__stage { width: 100% !important; }
.pb-prob .pb-pc__t { padding: 0.75rem 0.5rem 0 !important; text-align: left; }
.pb-prob .pb-pc__t h3 { margin: 0 0 0.25rem !important; font-size: var(--t-card) !important; }
.pb-prob .pb-pc__t p { margin: 0 !important; font-size: var(--t-body) !important; line-height: 1.4; }
@media (min-width: 900px) { .pb-page .pg--b { height: 132px !important; } }
@media (max-width: 899px) { .pb-prob .pb-prob__cards { grid-template-columns: 1fr; } }

/* 3. Solution: three step cards in a row with arrows */
.pb-sol .pb-steps { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.75rem !important; margin: var(--head-gap) 0 0 !important; padding: 0 !important; list-style: none; width: 100%; max-width: 1000px; }
.pb-sol .pb-steps li { position: relative; display: flex !important; flex-direction: column; align-items: flex-start; gap: 0.5rem; padding: 1rem 1.125rem !important; border: 1px solid #e6e2d2; border-radius: 16px; background: #fff; text-align: left; }
.pb-sol .pb-steps li + li::before { content: "\2192"; position: absolute; left: -1.4rem; top: 50%; transform: translateY(-50%); color: var(--br-orange); font-weight: 900; font-size: 1.125rem; }
.pb-sol .pb-steps__n { position: absolute; top: 0.875rem; right: 0.875rem; width: 26px !important; height: 26px !important; font-size: 0.8125rem !important; }
.pb-sol .pb-steps__ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--br-mint); color: var(--br-black); }
.pb-sol .pb-steps__ic svg { width: 22px; height: 22px; }
.pb-sol .pb-steps li > div { display: block; }
.pb-sol .pb-steps h3 { margin: 0 0 0.25rem !important; font-size: var(--t-card) !important; line-height: 1.15; }
.pb-sol .pb-steps p { margin: 0 !important; font-size: var(--t-body) !important; line-height: 1.4; color: #3a3f47; }
.pb-sol .pb-sol__copy { display: flex; flex-direction: column; align-items: center; }
.pb-sol .pb-sol__copy > .hm-btn { margin-top: 1.25rem; }
@media (max-width: 899px) { .pb-sol .pb-steps { grid-template-columns: 1fr; gap: 0.75rem !important; } .pb-sol .pb-steps li + li::before { display: none; } }
@media (min-width: 900px) {
  .pb-proof .pb-proof__inner { display: flex !important; align-items: center; justify-content: space-between; gap: 2.5rem; }
  .pb-proof .pb-proof__inner::before, .pb-proof .pb-proof__inner::after { display: none !important; }
  .pb-proof .pb-h { flex: 0 1 420px; text-align: left !important; }
  .pb-proof .pb-proof__stats { flex: 1 1 auto; max-width: 620px; }
}
.pb-proof .pb-pstat { display: flex !important; flex-direction: column; justify-content: center; }
.pb-proof .pb-pstat .pl-vstats__list { justify-content: center; }
.pb-prob .pb-pc__stage, .pb-prob .pb-pc__stage--scene { height: auto !important; min-height: 0 !important; max-height: none !important; aspect-ratio: auto !important; overflow: visible !important; position: static !important; }
.pb-prob .pb-prob__copy, .pb-prob .pb-prob__copy * { text-align: center !important; }
.pb-prob .pb-prob__copy .pb-h { margin-inline: auto !important; max-width: none !important; }
.pb-prob .pb-pc__t, .pb-prob .pb-pc .pg { position: static !important; inset: auto !important; transform: none !important; }
.pb-prob .pb-pc .pg { display: block !important; margin: 0 !important; }
.pb-prob .pb-pc { min-height: 0 !important; height: auto !important; }
.pb-proof .pb-pstat .pl-vstats__list li:last-child { display: inline; }
.pb-proof .pb-pstat .pl-vstats__list { flex-wrap: nowrap !important; white-space: nowrap; font-size: 0.625rem !important; }
.pb-proof .pb-proof__stats { align-items: stretch !important; } .pb-page .pg--b { background: #fff !important; border: 1px solid #ece7d6; }

/* ==========================================================================
   Flow: every content block opens with the same centered head
   (eyebrow, headline, lead), then its content. Applies on every page.
   ========================================================================== */
.pl-page main .sec-head { text-align: center !important; margin-bottom: 0 !important; }
.pl-page main .sec-head > * { margin-inline: auto !important; text-align: center !important; }
.pl-page main .sec-head h2 { max-width: 22ch; margin-top: 0 !important; margin-bottom: 0 !important; }
.pl-page main .sec-head h2::after { margin-inline: auto !important; }
.pl-page main .sec-head p:not(:first-child) { margin-top: 0.5rem !important; max-width: 60ch; }
.pl-page main .sec-head + * { margin-top: var(--head-gap) !important; }
.pl-page main .sec-head .pu-ln { display: inline !important; white-space: normal !important; }
/* the blocks whose head moved up: their content now fills the row */
.ph-home .pl-proof__panel { justify-content: center; }
.pt-page .pt-proof__card { justify-content: center !important; }
.pu-page .pu-sol__copy, .pt-page .pt-sol__copy { align-self: center; }
/* Brands stats: centered headline, three equal tiles under it */
.pb-proof .pb-proof__inner { display: block !important; text-align: center !important; }
.pb-proof .pb-h { text-align: center !important; margin: 0 auto !important; max-width: 24ch; flex: none !important; }
.pb-proof .pb-proof__stats { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; max-width: 760px !important; margin: var(--head-gap) auto 0 !important; }
.pb-sol .pb-sol__copy, .pb-sol .pb-sol__copy > :is(h2, p, span) { text-align: center !important; }
@media (max-width: 599px) { .pb-proof .pb-proof__stats { gap: 0.375rem !important; } .pb-proof .pb-pstat { padding: 0.625rem 0.25rem !important; } .pb-proof .pb-pstat .pl-vstats__list { flex-wrap: wrap !important; white-space: normal; } }

/* sec-head headlines share the section headline style everywhere */
.pl-page main .sec-head h2 { font-size: var(--t-h) !important; font-weight: 900 !important; line-height: 1.04 !important; letter-spacing: -.03em !important; }
.pl-page main .sec-head h2 span:not(.pu-ln):not(.hm-accent) { color: var(--br-orange); }

/* ==========================================================================
   Campaign example (social proof template, same on every page)
   ========================================================================== */
.pl-camp { background: linear-gradient(180deg, #fefcf6 0%, var(--br-mint) 100%); }
.pl-camp__eyebrow { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--br-orange); margin: 0 0 0.5rem !important; }
.pl-camp__lead { font-size: var(--t-lead); color: #3a3f47; }
.cx { display: grid; grid-template-columns: 1.35fr 1fr; gap: 0.75rem; }
.cx__brief { padding: clamp(1rem, 2vw, 1.5rem); border-radius: 22px; background: #fff; border: 1px solid #e3ecd2; box-shadow: 0 10px 28px rgba(20,23,28,.06); }
.cx__tag { margin: 0 0 0.375rem; } .cx__tag .ex-tag { margin: 0; }
.cx__name { margin: 0; font-size: clamp(1.375rem, min(3.2vh, 2.2vw), 1.875rem); font-weight: 900; line-height: 1.1; letter-spacing: -.02em; color: var(--br-black); }
.cx__meta { display: flex; flex-wrap: wrap; gap: 0.375rem; margin: 0.625rem 0 0; }
.cx__meta span { padding: 0.25rem 0.625rem; border-radius: 999px; background: #f4f3ea; font-size: 0.75rem; font-weight: 700; color: #3a3f47; }
.cx__plan { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.625rem; margin: 1.125rem 0 0; padding: 0; list-style: none; }
.cx__plan::before { content: ""; position: absolute; left: 22px; right: calc(25% - 22px); top: 22px; height: 2px; background: repeating-linear-gradient(90deg, var(--br-leaf) 0 7px, transparent 7px 13px); }
.cx__plan li { position: relative; display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; }
.cx-ic { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; background: var(--br-mint); border: 2px solid #fff; box-shadow: 0 4px 12px rgba(20,23,28,.08); font-size: 1.25rem; }
.cx__plan li:nth-child(2) .cx-ic { background: #fde4d4; } .cx__plan li:nth-child(3) .cx-ic { background: #fff3c4; } .cx__plan li:last-child .cx-ic { background: var(--br-orange); }
.cx__plan b { margin-top: 0.25rem; font-size: 0.9375rem; color: var(--br-black); }
.cx__plan small { font-size: 0.8125rem; line-height: 1.3; color: #3a3f47; }
.cx__res { padding: clamp(1rem, 2vw, 1.5rem); border-radius: 22px; background: var(--br-black); color: #fff; }
.cx__res-k { margin: 0 0 0.75rem; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--br-lime); }
.cx__res ul { display: grid; grid-template-columns: 1fr 1fr; gap: 0.625rem; margin: 0; padding: 0; list-style: none; }
.cx__res li { padding: 0.75rem; border-radius: 14px; background: rgba(255,255,255,.07); }
.cx__res li:first-child { background: var(--br-lime); color: var(--br-black); }
.cx__res b { display: block; font-size: clamp(1.5rem, min(3.6vh, 2.4vw), 2.125rem); font-weight: 900; line-height: 1; letter-spacing: -.02em; }
.cx__res span { display: block; margin-top: 0.25rem; font-size: 0.8125rem; line-height: 1.25; opacity: .85; }
.cx-quotes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.75rem; margin-top: 0.75rem; }
.cx-q { display: flex; flex-direction: column; margin: 0; padding: 1rem 1.125rem; border-radius: 20px; background: #fff; border: 1px solid #e3ecd2; }
.cx-q__role { align-self: flex-start; margin: 0 0 0.625rem; padding: 0.2rem 0.625rem; border-radius: 999px; font-size: 0.6875rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.cx-q--lime .cx-q__role { background: var(--br-lime); color: var(--br-black); }
.cx-q--orange .cx-q__role { background: var(--br-orange); color: #fff; }
.cx-q--navy .cx-q__role { background: var(--br-navy); color: #fff; }
.cx-q__t { margin: 0; font-size: var(--t-body); font-weight: 700; line-height: 1.4; color: var(--br-black); }
.cx-q footer { display: flex; align-items: center; gap: 0.625rem; margin-top: auto; padding-top: 0.875rem; }
.cx-av { display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border-radius: 50%; font-weight: 900; font-size: 0.8125rem; }
.cx-q--lime .cx-av { background: var(--br-mint); color: #2d6a1f; } .cx-q--orange .cx-av { background: #fde4d4; color: #c2410c; } .cx-q--navy .cx-av { background: #dfe6f5; color: var(--br-navy); }
.cx-q footer b { display: block; font-size: 0.875rem; color: var(--br-black); }
.cx-q footer small { display: block; font-size: 0.75rem; color: #6b7079; }
@media (max-width: 899px) {
  .cx { grid-template-columns: 1fr; }
  .cx-quotes { grid-template-columns: 1fr; }
  .cx__plan { grid-template-columns: 1fr 1fr; row-gap: 0.875rem; }
  .cx__plan::before { display: none; }
}
.pl-page main section.pl-camp { background: linear-gradient(180deg, #fefcf6 0%, var(--br-mint) 100%) !important; color: var(--br-black); }
.cx-q--lime { order: 1; } .cx-q--orange { order: 2; } .cx-q--navy { order: 3; }

/* ==========================================================================
   Fun problem infographics (sticky notes, stamped contract, broken link)
   ========================================================================== */
.fx { position: relative; box-sizing: border-box; padding: 0.875rem 0.875rem 1rem; border-radius: 16px; text-align: left; color: var(--br-black); overflow: hidden; }
.fx--peach { background: linear-gradient(160deg, #fff4ec 0%, #fde4d4 100%); }
.fx--butter { background: linear-gradient(160deg, #fffbe8 0%, #fff0b8 100%); }
.fx--lime { background: linear-gradient(160deg, #f6fde6 0%, #def5b4 100%); }
.pl-page main .fx p.fx__t { margin: 0 0 0.625rem !important; font-size: 0.625rem !important; line-height: 1.3 !important; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; color: var(--br-orange) !important; }
@media (min-width: 900px) { .fx { height: 156px; } }
/* sticky notes */
.fx-notes { display: grid; gap: 0.375rem; margin: 0; padding: 0; list-style: none; }
.fx-note { display: flex; align-items: center; gap: 0.5rem; width: fit-content; max-width: 100%; padding: 0.375rem 0.75rem 0.375rem 0.5rem; border-radius: 10px; background: #fff; box-shadow: 0 4px 10px rgba(20,23,28,.08); font-size: 0.8125rem; font-weight: 800; line-height: 1.2; }
.fx-note:nth-child(1) { transform: rotate(-2deg); }
.fx-note:nth-child(2) { transform: rotate(1.5deg); margin-left: 1rem; }
.fx-note:nth-child(3) { transform: rotate(-1deg); margin-left: 0.375rem; }
.fx-note span { font-size: 1rem; }
/* stamped contract */
.fx-doc { position: relative; display: grid; grid-template-columns: auto 1fr; gap: 0.25rem 0.625rem; align-items: start; padding: 0.625rem 0.75rem; border-radius: 12px; background: #fff; box-shadow: 0 4px 10px rgba(20,23,28,.08); }
.fx-doc__ic { font-size: 1.375rem; line-height: 1; }
.fx-doc__lines { display: grid; gap: 5px; padding-top: 4px; }
.fx-doc__lines i { display: block; height: 5px; border-radius: 3px; background: #ecebe2; } .fx-doc__lines i:nth-child(2) { width: 80%; } .fx-doc__lines i:nth-child(3) { width: 60%; }
.fx-doc__chips { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 0.25rem; margin-top: 0.25rem; }
.fx-doc__chips span { padding: 0.15rem 0.5rem; border-radius: 999px; background: #f4f3ea; font-size: 0.6875rem; font-weight: 700; }
.fx-stamp { position: absolute; right: 0.5rem; top: 0.375rem; padding: 0.15rem 0.5rem; border: 2px solid #e03e1a; border-radius: 6px; color: #e03e1a; font-size: 0.6875rem; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; transform: rotate(-9deg); background: rgba(255,255,255,.85); }
/* two tools, broken link */
.fx-tools { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 0.375rem; }
.fx-tool { padding: 0.5rem 0.625rem; border-radius: 12px; background: #fff; box-shadow: 0 4px 10px rgba(20,23,28,.08); text-align: center; }
.fx-tool span { display: block; font-size: 1.25rem; line-height: 1.1; }
.fx-tool b { display: block; margin-top: 0.125rem; font-size: 0.875rem; font-weight: 900; }
.fx-tool small { display: block; font-size: 0.6875rem; color: #6b7079; }
.fx-tool:first-child { transform: rotate(-2deg); } .fx-tool:last-child { transform: rotate(2deg); }
.fx-break { position: relative; display: grid; place-items: center; width: 34px; height: 34px; }
.fx-break::before { content: ""; position: absolute; left: -6px; right: -6px; top: 50%; border-top: 2px dashed #e03e1a; }
.fx-break i { position: relative; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--br-orange); color: #fff; font-style: normal; font-weight: 900; font-size: 1rem; box-shadow: 0 4px 10px rgba(244,104,43,.35); }
/* card wrappers */
.pb-page .pb-pc:has(.fx), .pa-page .pa-pc:has(.fx), .pu-page .pu-pc:has(.fx) { border-top: 1px solid #e6e2d2 !important; padding: 0.5rem 0.5rem 1rem !important; }
.pb-prob .pb-pc__stage:has(.fx), .pu-page .pu-pc__stage:has(.fx) { height: auto !important; min-height: 0 !important; aspect-ratio: auto !important; padding: 0 !important; background: none !important; display: block !important; width: 100% !important; overflow: visible !important; position: static !important; }
.pu-page .pu-pc:has(.fx) { align-items: stretch !important; text-align: left !important; }
.pu-page .pu-pc:has(.fx) .fx { margin-bottom: 0.625rem; }
.pu-page .pu-pc:has(.fx) > :is(h3, p) { padding-inline: 0.5rem; }
.pa-page .pa-pc:has(.fx) .fx { margin-bottom: 0.25rem; }
.pu-page .pu-pc .fx { width: 100% !important; align-self: stretch !important; }

/* Brands hero: Marketplace product shot with floating live cards */
.shot { border-radius: 16px; background: #fff; box-shadow: 0 24px 60px rgba(20,23,28,.18); overflow: hidden; border: 1px solid #e6e2d2; }
.shot__bar { margin: 0 !important; }
.shot img { display: block; width: 100%; height: auto !important; border-radius: 0 !important; box-shadow: none !important; }
.sx-media--shot { position: relative; }
@media (min-width: 900px) {
  .pb-hero__stage:has(img[data-mascot]) { grid-template-columns: 0.85fr 1.15fr !important; }
  .pb-hero__stage:has(img[data-mascot]) .sx-media--shot { max-width: 680px !important; transform: rotate(1deg); }
}
.sx-media--shot .sx-card--top { left: -22px !important; top: 52px !important; right: auto !important; bottom: auto !important; transform: rotate(-3deg); }
.sx-media--shot .sx-card--list { right: -16px !important; bottom: -18px !important; top: auto !important; transform: rotate(2deg); }
.shot__sticker { position: absolute; right: 18px; top: -16px; padding: 0.45rem 0.875rem; border-radius: 999px; background: var(--br-lime); color: var(--br-black); font-weight: 900; font-size: 0.8125rem; box-shadow: 0 8px 20px rgba(20,23,28,.15); transform: rotate(3deg); white-space: nowrap; }
.shot__note { position: absolute; left: 12px; bottom: -22px; font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(20,23,28,.45); }
@media (max-width: 899px) { .sx-media--shot .sx-card--list { right: 6px !important; bottom: -14px !important; } .shot__sticker { right: 8px; top: -14px; font-size: 0.75rem; } .pb-hero__stage:has(img[data-mascot]) .sx-media--bhero { width: min(560px, 92vw) !important; } }
@media (min-width: 900px) { .sx-media--shot .sx-card--top { top: 46% !important; left: -34px !important; } }
@media (max-width: 899px) {
  .sx-media--shot .shot__sticker { display: none; }
  .sx-media--shot .sx-card--list { position: static !important; transform: none !important; width: fit-content; margin: 0.75rem auto 0; }
  .sx-media--shot .shot__note { position: static; display: block; text-align: center; margin-top: 0.375rem; }
}

/* ==== Partners hero: split layout (copy left, photo with live cards right) ==== */
.pt-page .pt-hero:has(.pt-hero__fig--split) { background: linear-gradient(120deg, #06193a 0%, #0b2552 100%) !important; }
@media (min-width: 900px) {
  .pt-page .pt-hero__stage:has(.pt-hero__fig--split) { display: grid !important; grid-template-columns: 1.05fr 0.95fr; align-items: center; gap: clamp(1.5rem, 4vw, 4rem); max-width: min(1160px, 100% - 3rem) !important; margin-inline: auto !important; padding-block: clamp(2rem, 5vh, 3.5rem) !important; container-type: normal !important; }
  .pt-page .pt-hero__stage:has(.pt-hero__fig--split) .pt-hero__text { position: static !important; padding: 0 !important; text-align: left !important; max-width: none !important; }
  .pt-page .pt-hero__stage:has(.pt-hero__fig--split) .pt-hero__text h1 { font-size: clamp(2.25rem, min(6vh, 4vw), 3.5rem) !important; line-height: 1.02; }
  .pt-page .pt-hero__stage:has(.pt-hero__fig--split) .pt-hero__lead { margin-inline: 0 !important; max-width: 30rem; }
  .pt-page .pt-hero__stage:has(.pt-hero__fig--split) .pt-hero__btns { justify-content: flex-start !important; }
  .pt-page .pt-hero__fig--split { aspect-ratio: auto !important; overflow: visible !important; margin: 0 !important; -webkit-mask-image: none !important; mask-image: none !important; }
  .pt-page .pt-hero__fig--split::after { display: none !important; }
}
.sx-media--pt { position: relative; max-width: 440px; margin: 0 auto; }
.sx-media--pt > img { display: block; width: 100%; height: clamp(340px, 54vh, 480px); object-fit: cover; object-position: 50% 30%; border-radius: 24px; box-shadow: 0 24px 60px rgba(0,0,0,.35); }
.sx-media--pt .sx-card p { margin: 0 !important; font-size: 0.75rem; color: #6b7079; }
.sx-media--pt .sx-card p.sx-card__t { font-size: 0.8125rem; font-weight: 800; color: var(--br-black); margin-bottom: 0.125rem !important; }
.sx-media--pt .sx-card__row { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-top: 0.375rem !important; }
.sx-media--pt .sx-card__row b { color: var(--br-orange); font-size: 1rem; }
.sx-media--pt .sx-btn { background: var(--br-orange); }
.sx-media--pt .sx-card--top { left: -34px; right: auto; top: 30px; bottom: auto; transform: rotate(-3deg); min-width: 190px; }
.sx-media--pt .sx-card--list { right: -24px; bottom: 34px; transform: rotate(2deg); }
.sx-media--pt .shot__note { color: rgba(255,255,255,.55); }
@media (max-width: 899px) {
  .pt-page .pt-hero__fig--split { padding: 0 1rem 1.5rem; }
  .sx-media--pt .sx-card--top { left: 8px; top: 12px; }
  .sx-media--pt .sx-card--list { right: 8px; bottom: 12px; }
  .sx-media--pt .shot__note { position: static; display: block; text-align: center; margin-top: 0.375rem; }
}
.pt-page .pt-hero__fig--split { aspect-ratio: auto !important; overflow: visible !important; height: auto !important; max-height: none !important; -webkit-mask-image: none !important; mask-image: none !important; } .pt-page .pt-hero:has(.pt-hero__fig--split), .pt-page .pt-hero:has(.pt-hero__fig--split) .pt-hero__stage { height: auto !important; max-height: none !important; }
/* Universities features: real product screenshots in a browser frame */
.pu-page .pu-fc2:has(.pu-shot) { padding-top: 0.75rem !important; }
.pu-shot { margin: 0 0.75rem; box-shadow: 0 14px 34px rgba(20,23,28,.12); }
.pu-shot .shot__bar { font-size: 0.6875rem; }
.pu-shot__img { display: block; width: 100%; height: clamp(220px, 30vh, 300px) !important; object-fit: cover; object-position: 50% 0; }
.pu-page .pu-fc2:has(.pu-shot) { display: flex !important; flex-direction: column; padding: 0.75rem 0 1.125rem !important; height: auto !important; aspect-ratio: auto !important; }
.pu-page .pu-fc2:has(.pu-shot) .pu-fc2__text { position: static !important; inset: auto !important; transform: none !important; width: auto !important; max-width: none !important; padding: 1rem 1.25rem 0 !important; background: none !important; }
.pu-page .pu-feat__cards:has(.pu-shot) { align-items: stretch !important; }
.pu-shot__img { height: 300px !important; } @media (max-width: 899px) { .pu-shot__img { height: 210px !important; } }
.pl-page img.pu-shot__img { height: 290px !important; min-height: 290px !important; aspect-ratio: auto !important; width: 100% !important; object-fit: cover !important; object-position: 50% 0 !important; } @media (max-width: 899px) { .pl-page img.pu-shot__img { height: 210px !important; min-height: 210px !important; } }
.pl-page .pu-fc2--blue img.pu-shot__img { object-fit: contain !important; background: #fbfaf5; } .pu-page .pu-fc2--blue .pu-shot { display: flex; flex-direction: column; } 
/* Brands hero: who it is for */
.pb-biz { display: flex; flex-wrap: wrap; gap: 0.375rem; margin: 0.875rem 0 0; padding: 0; list-style: none; }
.pb-biz li { padding: 0.3rem 0.75rem; border-radius: 999px; background: #fff; border: 1px solid #e3ecd2; font-size: 0.8125rem; font-weight: 700; color: var(--br-black); }
@media (max-width: 899px) { .pb-biz { justify-content: center; } }
.cx-q__head { display: flex; align-items: center; justify-content: space-between; gap: 0.5rem; margin: 0 0 0.625rem !important; }
.cx-q__head .cx-q__role { margin: 0 !important; }
.cx-q__head .ex-tag { margin: 0 !important; }
.cx__res-k { color: var(--br-lime); }
/* who-it-is-for chips: two even rows of three */
.pb-biz { display: grid !important; grid-template-columns: repeat(3, max-content); gap: 0.375rem; }
.pb-biz li { text-align: center; }
@media (max-width: 899px) { .pb-biz { justify-content: center; } }
@media (max-width: 420px) { .pb-biz { grid-template-columns: repeat(3, auto); } .pb-biz li { padding-inline: 0.5rem; font-size: 0.75rem; } }

/* ==== Universities hero: split layout with product shot (matches brands) ==== */
.pu-hero.pu-hero--split { background: linear-gradient(120deg, #fefcf6 0%, #fefcf6 45%, #e6edf8 100%) !important; color: var(--br-black) !important; padding: 0 !important; }
.pu-split { display: grid; grid-template-columns: 1fr; gap: 2rem; width: min(1160px, 100% - 2rem); margin: 0 auto; padding: clamp(1.75rem, 4vh, 3rem) 0 clamp(2rem, 5vh, 3.5rem); }
.pu-split__eyebrow { margin: 0 0 0.5rem; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.24em; text-transform: uppercase; color: var(--br-orange); }
.pu-split__text h1 { margin: 0; font-size: clamp(2rem, min(6vh, 4vw), 3.25rem); font-weight: 900; line-height: 1.04; letter-spacing: -.035em; color: var(--br-black); }
.pu-split__text h1 b { color: var(--br-orange); }
.pu-split .pu-hero__lead { margin: 0.75rem 0 0 !important; max-width: 30rem; color: #3a3f47 !important; font-size: var(--t-lead); }
.pu-split .pu-hero__btns { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 1.25rem; justify-content: flex-start; }
.pu-split .pu-ghost { border: 2px solid var(--br-black) !important; color: var(--br-black) !important; background: transparent !important; }
.sx-media--uhero .sx-card p { margin: 0 !important; font-size: 0.75rem; color: #6b7079; }
.sx-media--uhero .sx-card p.sx-card__t { font-size: 0.8125rem; font-weight: 800; color: var(--br-black); margin-bottom: 0.25rem !important; }
.sx-media--uhero .sx-card__row { display: flex; justify-content: space-between; gap: 1rem; }
.sx-media--uhero .sx-card__row b { color: var(--br-black); font-size: 0.875rem; }
@media (min-width: 900px) {
  .pu-split { grid-template-columns: 0.85fr 1.15fr; align-items: center; gap: clamp(1.5rem, 4vw, 4rem); }
  .sx-media--uhero { max-width: 680px; transform: rotate(1deg); }
  .sx-media--uhero .sx-card--top { left: -34px !important; top: 46% !important; right: auto !important; bottom: auto !important; transform: rotate(-3deg); }
  .sx-media--uhero .sx-card--list { right: -16px !important; bottom: -18px !important; top: auto !important; transform: rotate(2deg); }
}
@media (max-width: 899px) {
  .pu-split__text { text-align: center; }
  .pu-split .pu-hero__lead { margin-inline: auto !important; }
  .pu-split .pu-hero__btns { justify-content: center; }
  .sx-media--uhero .sx-card--top, .sx-media--uhero .shot__sticker { display: none; }
  .sx-media--uhero .sx-card--list { position: static !important; transform: none !important; width: fit-content; margin: 0.75rem auto 0; }
  .sx-media--uhero .shot__note { position: static; display: block; text-align: center; margin-top: 0.375rem; }
}
.pl-page main > section.pu-hero--split > .pu-split { padding-block: clamp(2rem, 5vh, 3.5rem) !important; }

/* ==== Partners hero: roster hub infographic ==== */
.hub { position: relative; width: min(460px, 92vw); aspect-ratio: 1 / 1; margin: 0 auto; }
.hub__lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.hub__lines path { fill: none; stroke: var(--br-lime); stroke-width: 2.5; stroke-dasharray: 7 7; opacity: .7; }
.hub__core { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 40%; aspect-ratio: 1; border-radius: 50%; background: var(--br-lime); color: var(--br-black); text-align: center; box-shadow: 0 0 0 10px rgba(200,245,98,.18), 0 0 0 22px rgba(200,245,98,.08), 0 18px 40px rgba(0,0,0,.3); }
.hub__core span { font-size: 1.5rem; line-height: 1; }
.hub__core b { display: block; font-size: clamp(1rem, 2vw, 1.25rem); font-weight: 900; line-height: 1.05; }
.hub__core small { display: block; font-size: 0.6875rem; font-weight: 700; opacity: .7; }
.hub__core { align-content: center; gap: 0.125rem; }
.hub__node { position: absolute; width: 38%; padding: 0.625rem 0.75rem; border-radius: 16px; background: #fff; color: var(--br-black); box-shadow: 0 14px 30px rgba(0,0,0,.28); text-align: left; }
.hub__node--a { left: 0; top: 4%; transform: rotate(-3deg); } .hub__node--b { right: 0; top: 4%; transform: rotate(2deg); }
.hub__node--c { left: 0; bottom: 4%; transform: rotate(2deg); } .hub__node--d { right: 0; bottom: 4%; transform: rotate(-2deg); }
.hub__ic { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 10px; background: var(--br-mint); font-size: 1rem; }
.hub__node--b .hub__ic { background: #fde4d4; } .hub__node--c .hub__ic { background: #dfe6f5; } .hub__node--d .hub__ic { background: #fff3c4; }
.hub__node b { display: block; margin-top: 0.375rem; font-size: 0.75rem; font-weight: 700; color: #6b7079; }
.hub__node strong { display: block; font-size: clamp(1.375rem, 2.6vw, 1.75rem); font-weight: 900; line-height: 1.05; letter-spacing: -.02em; }
.hub__node--d strong { color: var(--br-orange); }
.hub__node small { display: block; font-size: 0.6875rem; color: #6b7079; }
.hub__note { position: absolute; left: 50%; bottom: -1.5rem; transform: translateX(-50%); font-size: 0.5625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(255,255,255,.55); white-space: nowrap; }
.pt-page .pt-hero__fig--split { padding-bottom: 1.75rem !important; }

/* ==== Athletes: "Your offers" phone product shot with callouts ==== */
.pa-page .pa-catalog { background: linear-gradient(180deg, #fefcf6 0%, var(--br-mint) 100%) !important; }
.ph-wrap { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: clamp(1rem, 3vw, 2.5rem); max-width: 1000px; margin: var(--head-gap) auto 0; }
.pcx-col { display: grid; gap: 1rem; margin: 0; padding: 0; list-style: none; }
.pcx { display: flex; align-items: flex-start; gap: 0.75rem; padding: 0.875rem 1rem; border-radius: 18px; background: #fff; border: 1px solid #e3ecd2; box-shadow: 0 10px 24px rgba(20,23,28,.06); text-align: left; }
.pcx--l:nth-child(1) { transform: rotate(-1.5deg); } .pcx--l:nth-child(2) { transform: rotate(1deg); margin-left: 1.5rem; }
.pcx--r:nth-child(1) { transform: rotate(1.5deg); } .pcx--r:nth-child(2) { transform: rotate(-1deg); margin-right: 1.5rem; }
.pcx__ic { display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 12px; background: var(--br-mint); font-size: 1.25rem; }
.pcx--r .pcx__ic { background: #fde4d4; }
.pcx b { display: block; font-size: 1rem; font-weight: 900; color: var(--br-black); }
.pcx span:not(.pcx__ic) { display: block; margin-top: 0.125rem; font-size: 0.875rem; line-height: 1.35; color: #3a3f47; }
/* phone */
.ph { position: relative; width: 290px; padding: 10px; border-radius: 42px; background: #14171c; box-shadow: 0 30px 60px rgba(20,23,28,.28); }
.ph__notch { position: absolute; left: 50%; top: 18px; transform: translateX(-50%); width: 84px; height: 22px; border-radius: 999px; background: #14171c; z-index: 2; }
.ph__screen { border-radius: 33px; background: #fafaf6; overflow: hidden; padding: 0.625rem 0.75rem 0; text-align: left; color: var(--br-black); }
.ph__status { display: flex; justify-content: space-between; margin: 0 0.25rem 0.375rem; font-size: 0.6875rem; font-weight: 800; }
.ph__brand { margin: 0.25rem 0 0; } .ph__brand img { height: 16px; width: auto; display: block; }
.ph__title { margin: 0.375rem 0 0; font-size: 1.5rem; font-weight: 900; letter-spacing: -.02em; }
.ph__sub { margin: 0; font-size: 0.6875rem; color: #6b7079; }
.ph__tabs { display: flex; gap: 0.25rem; margin: 0.5rem 0; overflow: hidden; }
.ph__tabs span { flex: 0 0 auto; padding: 0.2rem 0.5rem; border-radius: 999px; border: 1px solid #e3e1d6; font-size: 0.625rem; font-weight: 700; background: #fff; }
.ph__tabs .is-on { background: var(--br-lime); border-color: var(--br-lime); }
.ph__list { display: grid; gap: 0.5rem; margin: 0; padding: 0; list-style: none; }
.ph-offer { border-radius: 14px; overflow: hidden; background: #fff; box-shadow: 0 4px 12px rgba(20,23,28,.08); }
.ph-offer__top { position: relative; height: 44px; display: flex; align-items: center; justify-content: space-between; padding: 0 0.5rem; }
.ph-offer__top--lime { background: linear-gradient(120deg, #2a3a1a, #6a8f2c); } .ph-offer__top--orange { background: linear-gradient(120deg, #4a2412, #d9571e); } .ph-offer__top--navy { background: linear-gradient(120deg, #0f1c3d, #3a5a9a); }
.ph-offer__logo { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #fff; font-size: 1rem; }
.ph-fit { padding: 0.15rem 0.45rem; border-radius: 999px; background: var(--br-lime); font-size: 0.625rem; font-weight: 800; }
.ph-offer__body { position: relative; padding: 0.375rem 0.5rem 0.5rem; }
.ph-offer__body b { display: block; font-size: 0.8125rem; font-weight: 900; }
.ph-offer__body small { display: block; font-size: 0.625rem; color: #6b7079; }
.ph-offer__row { display: flex; flex-wrap: wrap; gap: 0.125rem 0.5rem; margin-top: 0.25rem; font-size: 0.5625rem; color: #3a3f47; }
.ph-offer__row em { font-style: normal; margin-right: 0.15rem; }
.ph-view { position: absolute; right: 0.5rem; top: 0.375rem; padding: 0.15rem 0.45rem; border-radius: 8px; background: var(--br-lime); font-size: 0.5625rem; font-weight: 800; }
.ph__nav { display: flex; justify-content: space-around; margin: 0.5rem -0.75rem 0; padding: 0.5rem 0 0.75rem; border-top: 1px solid #eceee6; background: #fff; font-size: 1rem; color: #8a8f98; }
.ph__nav .is-on { color: var(--br-black); }
.ph-note { margin: 1rem auto 0; text-align: center; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: rgba(20,23,28,.45); }
@media (max-width: 899px) {
  .ph-wrap { grid-template-columns: 1fr; justify-items: center; }
  .ph-wrap > .pcx-col:first-child { order: 2; } .ph-wrap > .ph { order: 1; } .ph-wrap > .pcx-col:last-child { order: 3; }
  .pcx-col { width: 100%; max-width: 420px; }
  .pcx { transform: none !important; margin: 0 !important; }
}

/* ==== Partners hero: "Retire the group chat" before/after ==== */
.pt-page .pt-hero__text h1 b { color: var(--br-lime) !important; text-decoration: line-through; text-decoration-color: var(--br-orange); text-decoration-thickness: 0.09em; }
.vs { position: relative; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 0.75rem; width: min(560px, 94vw); margin: 0 auto; padding: 1rem 0 1.75rem; }
.gc { position: relative; padding: 0.75rem; border-radius: 20px; background: #1d2a44; transform: rotate(-3deg); box-shadow: 0 18px 40px rgba(0,0,0,.35); }
.gc__top { display: flex; justify-content: space-between; align-items: center; margin: 0 0 0.5rem; font-size: 0.75rem; font-weight: 800; color: #fff; }
.gc__top em { padding: 0.1rem 0.4rem; border-radius: 999px; background: #e03e1a; font-style: normal; font-size: 0.625rem; }
.gc ul { display: grid; gap: 0.3rem; margin: 0; padding: 0; list-style: none; }
.gc__b { justify-self: start; max-width: 92%; padding: 0.35rem 0.55rem; border-radius: 12px 12px 12px 4px; background: #2e3c5c; color: #e6ebf5; font-size: 0.6875rem; line-height: 1.25; }
.gc__b b { display: block; font-size: 0.5625rem; color: #9fb0d4; }
.gc__b--me { justify-self: end; border-radius: 12px 12px 4px 12px; background: #3d5aa8; }
.gc__b--file { background: #fff3c4; color: var(--br-black); } .gc__b--file b { color: #8a6d1a; }
.gc__stamp { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-14deg); padding: 0.3rem 0.875rem; border: 3px solid var(--br-orange); border-radius: 10px; background: rgba(6,25,58,.82); color: var(--br-orange); font-size: 1.25rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; }
.vs__arrow { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--br-lime); color: var(--br-black); font-weight: 900; font-size: 1.25rem; box-shadow: 0 0 0 6px rgba(200,245,98,.18); }
.vs-board { padding: 0.75rem; border-radius: 20px; background: #fff; color: var(--br-black); transform: rotate(2deg); box-shadow: 0 18px 40px rgba(0,0,0,.35); text-align: left; }
.vs-board__top { display: flex; align-items: center; justify-content: space-between; margin: 0 0 0.5rem; font-size: 0.75rem; font-weight: 800; }
.vs-board__top img { height: 14px; width: auto; }
.vs-board ul { display: grid; gap: 0.375rem; margin: 0; padding: 0; list-style: none; }
.vs-board li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0.4rem; padding: 0.375rem 0.4rem; border-radius: 10px; background: #f6f5ee; }
.vs-av { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--br-mint); font-size: 0.5625rem; font-weight: 900; }
.vs-who b { display: block; font-size: 0.625rem; line-height: 1.2; } .vs-who small { display: block; font-size: 0.5625rem; color: #6b7079; }
.vs-st { padding: 0.1rem 0.4rem; border-radius: 999px; font-size: 0.5625rem; font-weight: 800; white-space: nowrap; }
.vs-st--paid { background: #2f9e44; color: #fff; } .vs-st--ok { background: var(--br-lime); } .vs-st--rev { background: #fde4d4; color: #c2410c; }
.vs-board__foot { display: flex; justify-content: space-between; align-items: baseline; margin: 0.5rem 0 0; padding-top: 0.4rem; border-top: 1px dashed #d9dce1; font-size: 0.625rem; color: #6b7079; }
.vs-board__foot b { font-size: 1.125rem; font-weight: 900; color: var(--br-orange); }
.vs__sticker { position: absolute; right: -4px; top: -6px; padding: 0.35rem 0.75rem; border-radius: 999px; background: var(--br-orange); color: #fff; font-size: 0.75rem; font-weight: 900; transform: rotate(5deg); box-shadow: 0 8px 18px rgba(0,0,0,.3); white-space: nowrap; }
.vs .hub__note { bottom: 0; }
@media (max-width: 520px) {
  .vs { grid-template-columns: 1fr; justify-items: stretch; }
  .vs__arrow { justify-self: center; transform: rotate(90deg); }
  .gc, .vs-board { transform: none; }
  .vs__sticker { right: 8px; }
}
.ph__seg { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; margin: 0.375rem 0 0; padding: 3px; border-radius: 10px; background: #eceee6; }
.ph__seg span { padding: 0.25rem 0; border-radius: 8px; text-align: center; font-size: 0.625rem; font-weight: 800; color: #6b7079; }
.ph__seg .is-on { background: #fff; color: var(--br-black); box-shadow: 0 1px 3px rgba(20,23,28,.1); }
.ph-offer:last-child .ph-view { background: var(--br-orange); color: #fff; }

/* ==== Symmetry pass (first principles) ==== */
/* infographics: content centered in a fixed-height box, so every card in a row reads the same */
.fx { display: flex; flex-direction: column; }
.fx > :not(.fx__t) { margin-block: auto; }
/* problem cards: one card style on every page (cream, same padding, same text inset) */
.pu-page .pu-pc, .pu-page .pu-pc--green, .pu-page .pu-pc--cream, .pu-page .pu-pc--peach { background: #fbf8ec !important; border: 1px solid #e6e2d2 !important; }
.pl-page main :is(.pa-pc, .pb-pc, .pu-pc):has(.fx) { padding: 0.5rem 0.5rem 1rem !important; display: flex !important; flex-direction: column; }
.pl-page main :is(.pa-pc__body, .pb-pc__t) { padding: 0.875rem 0.625rem 0 !important; }
.pu-page .pu-pc:has(.fx) > :is(h3, p) { padding-inline: 0.625rem !important; margin-left: 0 !important; margin-right: 0 !important; }
.pu-page .pu-pc:has(.fx) > h3 { margin-top: 0.875rem !important; }
.pl-page main :is(.pa-pc, .pb-pc, .pu-pc):has(.fx) h3::before { display: none !important; }
.pl-page main :is(.pa-pc__body, .pb-pc__t, .pu-pc) h3 { font-size: var(--t-card) !important; line-height: 1.15 !important; margin: 0 0 0.375rem !important; }
.pu-page .pu-pc:has(.fx) > h3 { margin-top: 0.875rem !important; }
.pl-page main :is(.pa-pc__body, .pb-pc__t) p, .pu-page .pu-pc:has(.fx) > p { font-size: var(--t-body) !important; line-height: 1.4 !important; margin: 0 !important; }

/* ==== Home "One Marketplace": cheeky infographics ==== */
.mk { position: relative; order: -1; display: flex; align-items: center; justify-content: center; gap: 0.625rem; height: 210px; padding: 1.25rem 1rem 1.5rem; box-sizing: border-box; overflow: hidden; }
.mk--lime { background: linear-gradient(160deg, #f6fde6 0%, #def5b4 100%); } .mk--peach { background: linear-gradient(160deg, #fff4ec 0%, #fde4d4 100%); } .mk--butter { background: linear-gradient(160deg, #fffbe8 0%, #fff0b8 100%); }
.mk :is(b, small, p) { margin: 0; text-align: left; }
.mk-box, .mk-post, .mk-ad, .mk-ticket { padding: 0.625rem 0.75rem; border-radius: 14px; background: #fff; box-shadow: 0 8px 18px rgba(20,23,28,.1); color: var(--br-black); }
.mk-box { transform: rotate(-4deg); } .mk-box span { font-size: 1.75rem; line-height: 1; }
.mk-box b, .mk-post b, .mk-ad b, .mk-ticket b { display: block; margin-top: 0.25rem; font-size: 0.8125rem; font-weight: 900; line-height: 1.2; }
.mk-box small, .mk-post small, .mk-ticket small { display: block; font-size: 0.6875rem; color: #6b7079; }
.mk-post { transform: rotate(3deg); width: 104px; }
.mk-post__img { display: grid; place-items: center; height: 56px; border-radius: 10px; background: linear-gradient(135deg, #1d2a44, #3d5aa8); font-size: 1.75rem; }
.mk-arrow { display: grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 50%; background: var(--br-orange); color: #fff; font-weight: 900; }
.mk-ad { transform: rotate(-2deg); width: 128px; } .mk-ad__k { font-size: 0.5625rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; color: #6b7079; }
.mk-ad ul { margin: 0.375rem 0 0; padding: 0; list-style: none; font-size: 0.6875rem; font-weight: 700; color: #2f9e44; }
.mk-ticket { position: relative; transform: rotate(-3deg); width: 130px; border-left: 6px dashed #fde4d4; }
.mk-ticket__k { font-size: 0.5625rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; color: #2f9e44; }
.mk-ticket__pay { margin-top: 0.25rem !important; font-size: 1.25rem !important; font-weight: 900; color: var(--br-orange); }
.mk-fans { display: flex; flex-wrap: wrap; width: 92px; gap: 2px; font-size: 1.375rem; transform: rotate(3deg); }
.mk-fans em { flex-basis: 100%; font-style: normal; font-size: 0.6875rem; font-weight: 900; color: var(--br-black); }
.mk-sticker { position: absolute; left: 50%; bottom: 10px; transform: translateX(-50%) rotate(-2deg); padding: 0.25rem 0.75rem; border-radius: 999px; background: var(--br-black); color: var(--br-lime); font-size: 0.6875rem; font-weight: 900; white-space: nowrap; box-shadow: 0 6px 14px rgba(20,23,28,.18); }
.ph-home .pl-s5__card:has(.mk) { padding: 0 !important; }

/* Home problem: cheeky infographics, same card as other pages */
.ph-home .ph-prob .pl-pc:has(.fx) { padding: 0.5rem 0.5rem 1rem !important; }
.ph-home .ph-prob .pl-pc .fx { margin-bottom: 0.25rem; }
@media (min-width: 900px) { .ph-home .ph-prob .pl-pc .fx { height: 150px; } }
.ph-home .mk > * { height: auto !important; min-height: 0 !important; align-self: center !important; }
.ph-home .mk p, .ph-home .mk ul { margin: 0 !important; padding: 0 !important; min-height: 0 !important; }
.ph-home .mk .mk-ticket__k { font-size: 0.5625rem !important; line-height: 1.2 !important; }
.ph-home .mk .mk-ticket__pay { margin-top: 0.25rem !important; font-size: 1.25rem !important; line-height: 1 !important; }
.ph-home .mk .mk-ad__k { font-size: 0.5625rem !important; line-height: 1.2 !important; }
.ph-home .mk .mk-ad ul { margin-top: 0.375rem !important; font-size: 0.6875rem !important; }
.ph-home .mk :is(b, small) { font-size: revert; }
.ph-home .mk .mk-sticker { height: auto !important; align-self: auto !important; }
.ph-home .mk :is(.mk-box, .mk-post, .mk-ad, .mk-ticket) b { font-size: 0.8125rem !important; line-height: 1.2 !important; }
.ph-home .mk :is(.mk-box, .mk-post, .mk-ticket) small { font-size: 0.6875rem !important; line-height: 1.3 !important; }
.ph-home .mk .mk-fans em { font-size: 0.6875rem !important; }
/* Athletes hero: performance bonus sits under the offers card instead of on top of it */
.pa-page .pa-ib__bonus { position: static !important; transform: none !important; display: flex !important; width: fit-content; margin: 0.75rem auto 0 !important; order: 2; font-size: max(0.75rem, 0.85cqw) !important; }
.pa-page .pa-ib { display: flex !important; flex-direction: column; }
.pa-page .pa-ib__in { order: 1; }
.pa-page .pa-ib { height: auto !important; min-height: 0 !important; aspect-ratio: auto !important; padding-bottom: 1rem !important; }
.pa-page .pa-ib__bonus { margin: 0.5rem 0 0 1.25rem !important; align-self: flex-start; }
/* Athletes hero: bonus as a matching row at the foot of the offers card */
.pa-ib__bonusrow { display: flex; align-items: center; gap: 0.75rem; margin-top: 0.25rem; padding: 0.625rem 0.75rem; border-radius: 12px; background: var(--br-mint); }
.pa-ib__bic { display: grid; place-items: center; flex: 0 0 auto; width: 34px; height: 34px; border-radius: 50%; background: #2f9e44; color: #fff; font-size: 0.875rem; }
.pa-ib__btx { flex: 1; min-width: 0; } .pa-ib__btx b { display: block; font-size: 0.875rem; font-weight: 900; color: var(--br-black); } .pa-ib__btx small { display: block; font-size: 0.75rem; color: #3a3f47; }
.pa-ib__bamt { font-size: 1.125rem; font-weight: 900; color: #2f9e44; }
.pa-page .pa-ib { padding-bottom: 0 !important; }
/* mk infographics shared beyond home */
.pl-page .mk > * { height: auto !important; min-height: 0 !important; align-self: center !important; }
.pl-page .mk p, .pl-page .mk ul { margin: 0 !important; padding: 0 !important; min-height: 0 !important; }
.pl-page .mk .mk-ticket__k, .pl-page .mk .mk-ad__k { font-size: 0.5625rem !important; line-height: 1.2 !important; }
.pl-page .mk .mk-ticket__pay { margin-top: 0.25rem !important; font-size: 1.25rem !important; line-height: 1 !important; }
.pl-page .mk .mk-ad ul { margin-top: 0.375rem !important; font-size: 0.6875rem !important; }
.pl-page .mk :is(.mk-box, .mk-post, .mk-ad, .mk-ticket) b { font-size: 0.8125rem !important; line-height: 1.2 !important; }
.pl-page .mk :is(.mk-box, .mk-post, .mk-ticket) small { font-size: 0.6875rem !important; line-height: 1.3 !important; }
.pl-page .mk .mk-fans em { font-size: 0.6875rem !important; }
.pl-page .mk .mk-sticker { height: auto !important; align-self: auto !important; }
.pb-page .pb-way:has(.mk) { padding: 0 0 1rem !important; overflow: hidden; display: flex !important; flex-direction: column; align-items: stretch !important; }
.pb-page .pb-way .mk { order: -1; width: 100%; border-radius: 0; }
.pb-page .pb-way:has(.mk) > :not(.mk) { margin-left: 1rem !important; margin-right: 1rem !important; grid-column: auto !important; }
.pb-page .pb-way:has(.mk) > .pb-tag { margin-top: 0.875rem !important; align-self: flex-start; }
/* Home: trusted-by headline on one line, full section size */
@media (min-width: 900px) { .ph-home .pl-proof .sec-head h2.pl-proof__title { max-width: none !important; white-space: nowrap; font-size: var(--t-h) !important; } }
.ph-home .pl-proof .sec-head h2.pl-proof__title { font-size: var(--t-h) !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof .sec-head h2.pl-proof__title { font-size: var(--t-h) !important; line-height: 1.04 !important; }
@media (min-width: 900px) { .ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-proof .sec-head h2.pl-proof__title { white-space: nowrap; max-width: none !important; } }
.ph-home .pl-proof .sec-head h2.pl-proof__title::after { display: none !important; }
.ph-home.pl-page:not(.pa-page):not(.pb-page):not(.pu-page):not(.pt-page) .pl-vstats b { min-width: 3.2ch !important; }
/* Athletes "Three ways to earn": bigger infographic, tighter copy */
@media (min-width: 900px) {
  .pa-page .pa-way:has(.pa-way__stage--mk) { grid-template-columns: 40% minmax(0, 1fr) minmax(0, 0.95fr) !important; }
}
.pa-page .pa-way__stage--mk { min-height: 0 !important; height: auto !important; aspect-ratio: auto !important; background: none !important; }
.pa-page .pa-way__stage--mk .mk { height: 100%; min-height: 210px; border-radius: 0; }
.pa-page .pa-way:has(.pa-way__stage--mk) .pa-way__mid { padding: 0.875rem 1.125rem !important; }
.pa-page .pa-way:has(.pa-way__stage--mk) h3 { font-size: clamp(1.125rem, min(2.4vh, 1.5vw), 1.3125rem) !important; }
.pa-page .pa-way:has(.pa-way__stage--mk) .pa-way__mid p { font-size: 0.875rem !important; line-height: 1.4; }
.pa-page .pa-way:has(.pa-way__stage--mk) .pa-checks { font-size: 0.8125rem !important; }

/* ==== No dangling last lines: balance headings, subcopy, card copy, quotes, FAQ answers ==== */
.pl-page main :is(h1, h2, h3, p, li, blockquote p, small) { text-wrap: balance; }
.pl-page main :is(.pl-fq__card p, .cx-q__t, .pa-pc__body p, .pb-pc__t p) { text-wrap: balance; }
.pl-page main :is(h1, h2, h3, p, li, small) { text-wrap: balance !important; }

   Vertical rhythm, final: every block has the same top and bottom padding,
   and the same gap from its head (eyebrow, headline, lead) to its content.
   ========================================================================== */
.pl-page { --sec-y: clamp(2.75rem, 4.4vw, 3.75rem); --sec-y-compact: var(--sec-y); --head-gap: clamp(1.5rem, 2.2vw, 2rem); }
.pl-page main > section:not(:first-child) { padding-block: var(--sec-y) !important; min-height: 0 !important; }
/* head groups that sit in their own wrapper */
.pl-page main > section > .sec-head + *, .pl-page main > section > .hm-shell > .sec-head + * { margin-top: var(--head-gap) !important; padding-top: 0 !important; }
.pl-page main > section > .sec-head + .hm-shell > :first-child { margin-top: 0 !important; padding-top: 0 !important; }
/* head groups inline in the shell: whatever follows the headline (or its lead) */
.pl-page main > section:not(:first-child) :is(h2:not(:has(+ p)), h2 + p):not(.sec-head *) + :not(p):not(h2):not(br) { margin-top: var(--head-gap) !important; }
.pl-page main > section:not(:first-child) .sec-head > :last-child { margin-bottom: 0 !important; }
/* nothing adds extra space after the last element of a block */
.pl-page main > section:not(:first-child) > :last-child, .pl-page main > section:not(:first-child) > .hm-shell > :last-child { margin-bottom: 0 !important; }
/* head wrappers that are not .sec-head: same gap to content */
.pl-page main :is(.pl-fq__head, .pt-feat__head, .pa-faq__head) + * { margin-top: var(--head-gap) !important; }
.pl-page main :is(.pl-fq__head, .pt-feat__head) > div, .pl-page main .pl-fq__title { padding-bottom: 0 !important; margin-bottom: 0 !important; }
.pl-page main .pl-fq__title > :last-child { margin-bottom: 0 !important; }
.pl-page main .pl-fq__cta { margin-top: var(--head-gap) !important; }
.pl-page { --sec-y: clamp(2.25rem, 3.4vw, 3rem); }

/* Leads break at a clause on desktop (one idea per line); flow naturally on phones */
.lb { display: none; }
@media (min-width: 900px) {
  .lb { display: inline; }
  .pl-page main p:has(> .lb) { max-width: 54rem !important; text-wrap: wrap !important; }
}

/* ==========================================================================
   One color flow on every page (matches the platform page):
   light hero → cream → BLACK problem band → cream/white → mint campaign → cream
   ========================================================================== */
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) { background: var(--br-black) !important; color: #fff; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) :is(h2, .pa-h, .pu-h, .pt-h, .pb-h) { color: #fff !important; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) h2 :is(span, b) { color: var(--br-orange) !important; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) h2 u { color: var(--br-lime) !important; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) :is(.pa-eyebrow, .pu-eyebrow, .pt-eyebrow, .pb-eyebrow) { color: var(--br-orange) !important; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) > .hm-shell > p, .pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) .sec-head p { color: rgba(255,255,255,.75) !important; }
/* brands features: light like the platform features block */
.pl-page main > section.pb-feat { background: #fffdf8 !important; color: var(--br-black); }
.pb-feat :is(h2, .pb-h) { color: var(--br-black) !important; }
.pb-feat .pb-lead, .pb-feat .sec-head p { color: #3a3f47 !important; }
/* partners hero: light, like every other hero */
.pt-page .pt-hero:has(.pt-hero__fig--split) { background: linear-gradient(120deg, #fefcf6 0%, #fefcf6 45%, var(--br-mint) 100%) !important; color: var(--br-black) !important; }
.pt-page .pt-hero:has(.pt-hero__fig--split) .pt-hero__text h1 { color: var(--br-black) !important; }
.pt-page .pt-hero:has(.pt-hero__fig--split) .pt-hero__text h1 b { color: var(--br-orange) !important; text-decoration-color: var(--br-black); }
.pt-page .pt-hero:has(.pt-hero__fig--split) .pt-hero__lead { color: #3a3f47 !important; }
.pt-page .pt-hero:has(.pt-hero__fig--split) .pt-hero__eyebrow { color: var(--br-orange) !important; }
.pt-page .pt-hero:has(.pt-hero__fig--split) .pt-ghost { border-color: var(--br-black) !important; color: var(--br-black) !important; }
.pt-page .pt-hero .vs .hub__note { color: rgba(20,23,28,.45); }
.pt-page .pt-hero .vs__arrow { box-shadow: 0 0 0 6px rgba(200,245,98,.35); }
.pt-page .pt-proof__card { background: linear-gradient(160deg, #f6fde6 0%, var(--br-mint) 100%) !important; color: var(--br-black) !important; border: 1px solid #d6e6bf; }
.pt-page .pt-proof__card :is(h2, b, small, li) { color: var(--br-black) !important; }
.pt-page .pt-proof__card h2 span { color: var(--br-orange) !important; }
.pt-page .pt-stats .pl-vstats__list { color: #3a3f47 !important; }
.pt-page .pt-stats__ic { background: var(--br-orange) !important; color: #fff !important; }
.pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) :is(article, .pa-pc, .pb-pc, .pu-pc, .pt-pc) { color: var(--br-black) !important; } .pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) :is(article, .pa-pc, .pb-pc, .pu-pc, .pt-pc) h3 { color: var(--br-black) !important; } .pl-page main > section:is(.pa-prob, .pu-prob, .pt-prob, .pb-prob) :is(article, .pa-pc, .pb-pc, .pu-pc, .pt-pc) p:not(.fx__t) { color: #3a3f47 !important; }
.pt-page .pt-prob :is(.pt-pc, article) { background: #fbf8ec !important; border: 1px solid #e6e2d2 !important; }
.pl-camp .sec-head h2.pl-camp__h { max-width: none !important; } .pl-camp .sec-head h2.pl-camp__h span { display: inline !important; } @media (min-width: 900px) { .pl-camp .sec-head h2.pl-camp__h { white-space: nowrap; } }

/* ==== Athletes "Two tiers": two-step path with product screens ==== */
.tr { display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch; gap: 1rem; max-width: 1000px; margin: var(--head-gap) auto 0; }
.tr-card { display: flex; flex-direction: column; overflow: hidden; border-radius: 22px; background: #fff; border: 1px solid #e3ecd2; box-shadow: 0 12px 30px rgba(20,23,28,.06); text-align: left; }
.tr-shot { margin: 0.875rem 0.875rem 0; border-radius: 14px; background: #fff; border: 1px solid #eceee6; box-shadow: 0 8px 20px rgba(20,23,28,.08); overflow: hidden; height: 196px; box-sizing: border-box; }
.tr-card:first-child { background: linear-gradient(180deg, var(--br-mint) 0%, #fff 55%); }
.tr-card:last-child { background: linear-gradient(180deg, #fde4d4 0%, #fff 55%); }
.tr-shot__body { padding: 0.625rem 0.75rem; font-size: 0.75rem; color: var(--br-black); }
.tr-week { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0.25rem; margin: 0; padding: 0; list-style: none; }
.tr-week li { padding: 0.375rem 0.25rem; border-radius: 8px; background: #f6f5ee; text-align: center; }
.tr-week b { display: block; font-size: 0.625rem; color: #6b7079; } .tr-week span { display: block; min-height: 1em; font-size: 0.6875rem; font-weight: 800; }
.tr-week .is-done { background: var(--br-mint); } .tr-week .is-now { background: var(--br-lime); }
.tr-score { display: flex; align-items: center; gap: 0.625rem; margin-top: 0.625rem; padding: 0.5rem; border-radius: 10px; background: #f6f5ee; }
.tr-ring { --v: 85; display: grid; place-items: center; width: 52px; height: 52px; flex: 0 0 auto; border-radius: 50%; background: conic-gradient(var(--br-leaf) calc(var(--v) * 1%), #e3e5dc 0); }
.tr-ring b { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; font-size: 0.9375rem; font-weight: 900; }
.tr-score > div b { display: block; font-size: 0.8125rem; font-weight: 900; } .tr-score small { font-size: 0.6875rem; color: #6b7079; }
.tr-earn { padding: 0.5rem 0.625rem; border-radius: 10px; background: var(--br-black); color: #fff; }
.tr-earn small { display: block; font-size: 0.625rem; opacity: .7; } .tr-earn b { font-size: 1.5rem; font-weight: 900; margin-right: 0.5rem; } .tr-earn span { font-size: 0.75rem; font-weight: 800; color: var(--br-lime); }
.tr-deals { display: grid; gap: 0.3rem; margin: 0.5rem 0 0; padding: 0; list-style: none; }
.tr-deals li { display: flex; align-items: center; gap: 0.4rem; padding: 0.375rem 0.5rem; border-radius: 8px; background: #f6f5ee; font-weight: 700; }
.tr-dot { width: 8px; height: 8px; border-radius: 50%; } .tr-dot--g { background: var(--br-leaf); } .tr-dot--o { background: var(--br-orange); }
.tr-deals em { margin-left: auto; padding: 0.1rem 0.45rem; border-radius: 999px; font-style: normal; font-size: 0.625rem; font-weight: 800; }
.tr-paid { background: #2f9e44; color: #fff; } .tr-ok { background: var(--br-lime); }
.tr-copy { padding: 1rem 1.25rem 1.25rem; }
.tr-copy h3 { margin: 0.5rem 0 0.5rem !important; font-size: var(--t-card) !important; }
.tr-list { display: grid; gap: 0.375rem; margin: 0; padding: 0; list-style: none; }
.tr-list li { display: flex; align-items: center; gap: 0.5rem; font-size: var(--t-body); font-weight: 600; color: #3a3f47; }
.tr-ck { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; font-style: normal; font-size: 0.6875rem; font-weight: 900; color: #fff; }
.tr-ck--g { background: #2f9e44; } .tr-ck--o { background: var(--br-orange); }
.tr-arrow { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; }
.tr-arrow b { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--br-lime); font-size: 1.25rem; box-shadow: 0 0 0 6px rgba(200,245,98,.3); }
.tr-arrow small { font-size: 0.6875rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; color: #6b7079; }
.tr-strip { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.5rem; max-width: 1000px; margin: 1rem auto 0; padding: 0; list-style: none; }
.tr-strip li { display: flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.625rem 0.75rem; border-radius: 999px; background: #fff; border: 1px solid #e3ecd2; font-size: 0.875rem; font-weight: 800; color: var(--br-black); }
@media (max-width: 899px) {
  .tr { grid-template-columns: 1fr; }
  .tr-arrow b { transform: rotate(90deg); }
  .tr-strip { grid-template-columns: 1fr 1fr; }
  .tr-strip li { border-radius: 14px; font-size: 0.8125rem; }
}
/* solution steps: equal cards, product screen pinned to the bottom */
.pa-page .pa-steps { align-items: stretch !important; }
.pa-page .pa-step:has(.pp--step) { justify-content: space-between; }
.pa-page .pa-step__top { flex: 0 0 auto; min-height: 0 !important; }

/* ==== One cream for every light block, so block edges disappear and gaps read evenly ==== */
.pl-page { --br-cream: #fefcf6; }
body.pl-page, .pl-page main { background: var(--br-cream) !important; }
.pl-page main > section:not(:first-child):not(:is(.pl-prob, .pa-prob, .pb-prob, .pu-prob, .pt-prob, .pl-camp, .pl-gb, .pl-compare)) { background: var(--br-cream) !important; }
.pl-page main > section:not(:first-child):not(:is(.pl-prob, .pa-prob, .pb-prob, .pu-prob, .pt-prob, .pl-camp, .pl-gb, .pl-compare))::before,
.pl-page main > section:not(:first-child):not(:is(.pl-prob, .pa-prob, .pb-prob, .pu-prob, .pt-prob, .pl-camp, .pl-gb, .pl-compare))::after { display: none !important; }
.pl-page .pl-fq__card { background: #f3f8e6 !important; }

/* ==== Partners problem: infographics in place of photos ==== */
.pt-page .pt-pc:has(.fx) { display: flex !important; flex-direction: column; padding: 0.5rem 0.5rem 1rem !important; }
.pt-page .pt-pc:has(.fx) .pt-pc__txt { padding: 0.875rem 0.625rem 0 !important; }
.pt-page .pt-pc:has(.fx) .pt-pc__txt h3 { font-size: var(--t-card) !important; margin: 0 0 0.375rem !important; color: var(--br-black) !important; }
.pt-page .pt-pc:has(.fx) .pt-pc__txt p { font-size: var(--t-body) !important; line-height: 1.4; margin: 0 !important; color: #3a3f47 !important; }
@media (min-width: 900px) { .pt-page .pt-pc .fx { height: 150px; } }

/* ==== Partners proof: stats are the hero, example quotes stay quiet ==== */
.pt-page .pt-proof__grid { display: block !important; }
.pt-page .pt-proof__card { padding: 1.25rem 1.5rem !important; border-radius: 22px !important; }
.pt-page .pt-proof__top { display: block !important; }
.pt-page .pt-stats { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 !important; margin: 0 !important; padding: 0; }
.pt-page .pt-stats > li { display: flex !important; align-items: center !important; justify-content: center; gap: 0.875rem; padding: 0.25rem 1rem !important; border: 0 !important; }
.pt-page .pt-stats > li + li { border-left: 1px solid #cfe3b0 !important; }
.pt-page .pt-stats > li > div { text-align: left; }
.pt-page .pt-stats b { display: block; font-size: clamp(2.25rem, min(6vh, 4vw), 3.25rem) !important; line-height: 1 !important; }
.pt-page .pt-stats small { display: block; margin-top: 0.25rem; font-size: 0.9375rem !important; font-weight: 700; }
.pt-page .pt-stats .pl-vstats__list { display: flex !important; flex-wrap: wrap; gap: 0 0.625rem; margin-top: 0.25rem !important; font-size: 0.75rem !important; }
.pt-page .pt-stats__ic { width: 48px !important; height: 48px !important; flex: 0 0 auto; }
.pt-page .pt-proof__quotes { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 0.625rem !important; margin-top: 0.75rem !important; }
.pt-page .pt-proof__stack { display: contents !important; }
.pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) { display: flex !important; flex-direction: column; justify-content: space-between !important; padding: 0.75rem 0.875rem !important; border-radius: 16px !important; background: transparent !important; border: 1px dashed #d9dccf !important; box-shadow: none !important; }
.pt-page .pt-proof__quotes .pt-quote__mark { display: none !important; }
.pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) > .ex-tag { margin: 0 0 0.375rem !important; }
.pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) p { margin: 0 !important; font-size: 0.875rem !important; font-weight: 600 !important; line-height: 1.4 !important; color: #3a3f47 !important; }
.pt-page .pt-proof__quotes :is(.pt-quote, .pt-quote--main) footer { margin-top: 0.625rem !important; padding-top: 0.5rem !important; border-top: 1px solid #ecebe2 !important; gap: 0.5rem; }
.pt-page .pt-proof__quotes .pt-av { width: 30px !important; height: 30px !important; }
.pt-page .pt-proof__quotes footer b { font-size: 0.8125rem !important; } .pt-page .pt-proof__quotes footer small { font-size: 0.6875rem !important; }
@media (max-width: 899px) {
  .pt-page .pt-stats { grid-template-columns: 1fr; gap: 0.75rem !important; }
  .pt-page .pt-stats > li { justify-content: flex-start; } .pt-page .pt-stats > li + li { border-left: 0 !important; border-top: 1px solid #cfe3b0 !important; padding-top: 0.75rem !important; }
  .pt-page .pt-proof__quotes { grid-template-columns: 1fr !important; }
}

/* ==== Section headlines: one line wherever they fit ==== */
.pl-page main .sec-head h2 { max-width: none !important; }
.pl-page main > section:not(:first-child):not(.pl-end) h2 { max-width: none !important; } .pl-page main > section:not(:first-child):not(.pl-end) h2 br { display: none; }
/* Creator tier: content calendar + content system loop */
.tr-mo { display: flex; justify-content: space-between; align-items: baseline; margin: 0 0 0.375rem !important; }
.tr-mo b { font-size: 0.8125rem; font-weight: 900; } .tr-mo small { font-size: 0.625rem; color: #6b7079; }
.tr-cal { display: grid; grid-template-columns: repeat(5, 1fr); gap: 3px; }
.tr-cal > b { font-size: 0.5625rem; text-align: center; color: #8a8f98; }
.tr-day { min-height: 26px; padding: 3px; border-radius: 6px; background: #f6f5ee; display: flex; align-items: center; justify-content: center; }
.tc { padding: 0.1rem 0.3rem; border-radius: 5px; font-size: 0.5625rem; font-weight: 800; white-space: nowrap; }
.tc--g { background: var(--br-mint); color: #2d6a1f; } .tc--o { background: #fde4d4; color: #c2410c; } .tc--n { background: #e3e8f5; color: var(--br-navy); }
.tr-sys { display: flex; align-items: center; justify-content: space-between; gap: 0.25rem; margin-top: 0.5rem; padding: 0.375rem 0.5rem; border-radius: 10px; background: var(--br-black); }
.tr-sys span { padding: 0.15rem 0.45rem; border-radius: 999px; background: rgba(255,255,255,.1); color: #fff; font-size: 0.625rem; font-weight: 800; }
.tr-sys span.is-on { background: var(--br-lime); color: var(--br-black); }
.tr-sys i { font-style: normal; font-size: 0.625rem; color: var(--br-lime); }
.pl-page main > section:not(:first-child):not(.pl-end) h2 :is(span, b, u, em) { display: inline !important; white-space: normal !important; }
.pb-prob .pb-prob__copy { max-width: none !important; } .pb-feat .pb-feat__head > h2, .pb-feat h2 { width: auto !important; max-width: none !important; } .pb-feat .pb-feat__head { display: block !important; text-align: center; }
.pb-feat .pb-feat__l2 { display: inline !important; }

/* Creator tier: NIL brand value row */
.tr-val { display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 0.5rem; margin-top: 0.5rem; padding: 0.4rem 0.6rem; border-radius: 10px; background: var(--br-black); color: #fff; }
.tr-val span { font-size: 0.625rem; font-weight: 800; } .tr-val b { font-size: 0.9375rem; font-weight: 900; color: var(--br-lime); } .tr-val small { font-size: 0.625rem; font-weight: 800; color: var(--br-lime); }
.tr-val .pp-bar { background: rgba(255,255,255,.15); }

/* ==== Sub pages (FAQ, Talk to the Team, coming soon) ==== */
.ph-sub main > section.sub-hero { padding-block: clamp(2.5rem, 6vh, 4rem) clamp(1.5rem, 3vh, 2rem) !important; background: linear-gradient(180deg, #fefcf6 0%, var(--br-mint) 100%) !important; }
.sub-hero__h { margin: 0; font-size: clamp(2rem, min(6vh, 4.4vw), 3.25rem); font-weight: 900; line-height: 1.04; letter-spacing: -.035em; color: var(--br-black); }
.sub-hero__h span { color: var(--br-orange); }
.sub-hero__p { font-size: var(--t-lead); color: #3a3f47; }
.sub-hero--soon { padding-block: clamp(4rem, 12vh, 7rem) !important; }
.sub-cta__btns { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.75rem; margin-top: 1.25rem; }
.sub-ghost { border: 2px solid var(--br-black) !important; color: var(--br-black) !important; background: transparent !important; }
.fq-nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.5rem; margin-top: 1.25rem !important; }
.fq-nav a { padding: 0.4rem 0.875rem; border-radius: 999px; background: #fff; border: 1px solid #e3ecd2; font-size: 0.875rem; font-weight: 800; color: var(--br-black); text-decoration: none; }
.fq-nav a:hover { background: var(--br-lime); }
.fq-group { scroll-margin-top: 120px; }
.fq-group__h { margin: 0 0 1rem !important; font-size: var(--t-card) !important; font-weight: 900; text-align: left; color: var(--br-black); }
.fq-group .pl-fq__grid { margin-top: 0 !important; }
.ph-sub main > section.fq-group { padding-block: 1.5rem !important; }
.sub-cta h2 { font-size: var(--t-h) !important; }
.sub-form .hm-shell { max-width: 720px !important; }
.tt-form { display: grid; gap: 1rem; padding: clamp(1.25rem, 3vw, 2rem); border-radius: 24px; background: #fff; border: 1px solid #e3ecd2; box-shadow: 0 14px 36px rgba(20,23,28,.06); }
.tt-topic { margin: 0; padding: 0; border: 0; }
.tt-topic legend { margin-bottom: 0.625rem; font-weight: 900; font-size: 1rem; color: var(--br-black); }
.tt-topic__opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 0.5rem; }
.tt-topic label { position: relative; cursor: pointer; }
.tt-topic input { position: absolute; opacity: 0; inset: 0; }
.tt-topic label > span { display: block; height: 100%; box-sizing: border-box; padding: 0.75rem; border-radius: 14px; border: 1.5px solid #e3e1d6; background: #fdfcf7; }
.tt-topic b { display: block; font-size: 0.9375rem; color: var(--br-black); } .tt-topic small { display: block; margin-top: 0.125rem; font-size: 0.75rem; color: #6b7079; }
.tt-topic input:checked + span { border-color: var(--br-black); background: var(--br-mint); box-shadow: 0 0 0 2px var(--br-lime); }
.tt-topic input:focus-visible + span { outline: 2px solid var(--br-orange); outline-offset: 2px; }
.tt-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.tt-form .pl-gb__f { display: grid; gap: 0.375rem; }
.tt-form .pl-gb__f span { font-weight: 800; font-size: 0.875rem; color: var(--br-black); } .tt-form .pl-gb__f small { font-weight: 600; color: #6b7079; }
.tt-form :is(input[type=text], input[type=email], textarea) { width: 100%; box-sizing: border-box; padding: 0.75rem 0.875rem; border-radius: 12px; border: 1.5px solid #d3d0c4; font: inherit; background: #fff; }
.tt-form textarea { resize: vertical; }
.tt-submit { justify-self: start; border-radius: 999px; }
@media (max-width: 599px) { .tt-row { grid-template-columns: 1fr; } .tt-submit { justify-self: stretch; } }
.pl-page .pb-feat .pb-feat__head { padding-inline: 0 !important; } .pl-page .pb-feat .pb-feat__head .pb-feat__l2 { display: inline !important; }

/* ==== Universities hero: cohort + review queue (illustrative) ==== */
.uh { position: relative; display: grid; grid-template-columns: 1.05fr 1fr; align-items: center; gap: 0.75rem; width: min(580px, 94vw); margin: 0 auto; padding: 1rem 0 1.75rem; }
.uh-cohort { padding: 0.875rem; border-radius: 20px; background: var(--br-black); color: #fff; transform: rotate(-2deg); box-shadow: 0 18px 40px rgba(20,23,28,.25); text-align: left; }
.uh-cohort__k { margin: 0 !important; font-size: 0.625rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--br-lime); }
.uh-cohort__h { margin: 0.25rem 0 0.625rem !important; font-size: 0.8125rem; font-weight: 700; color: rgba(255,255,255,.8); } .uh-cohort__h b { font-size: 1.5rem; font-weight: 900; color: #fff; }
.uh-m { display: grid; gap: 0.4rem; margin: 0; padding: 0; list-style: none; }
.uh-m li { display: grid; grid-template-columns: 18px 1fr 54px 30px; align-items: center; gap: 0.4rem; font-size: 0.6875rem; }
.uh-m__n { display: grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: rgba(255,255,255,.12); font-size: 0.5625rem; font-weight: 900; }
.uh-m__t { font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .uh-m b { text-align: right; font-size: 0.6875rem; }
.uh-m .pp-bar { background: rgba(255,255,255,.15); }
.uh-queue { transform: rotate(2deg); }
.uh .hub__note { position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); color: rgba(20,23,28,.45); }
.uh-sticker { background: var(--br-lime) !important; color: var(--br-black) !important; right: 0; top: -8px; }
@media (min-width: 900px) { .pu-split { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 560px) { .uh { grid-template-columns: 1fr; } .uh-cohort, .uh-queue { transform: none; } }
.pu-hero.pu-hero--split { background: linear-gradient(120deg, #fefcf6 0%, #fefcf6 45%, var(--br-mint) 100%) !important; }

/* ==== About page ==== */
.ab-tl { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; max-width: 1000px; margin: var(--head-gap) auto 0; padding: 0; list-style: none; }
.ab-tl::before { content: ""; position: absolute; left: 12%; right: 12%; top: 13px; border-top: 2px dashed var(--br-leaf); }
.ab-tl li { position: relative; padding: 2.25rem 1rem 1rem; border-radius: 18px; background: #fff; border: 1px solid #e3ecd2; text-align: left; }
.ab-tl li::before { content: ""; position: absolute; left: 1rem; top: 6px; width: 16px; height: 16px; border-radius: 50%; background: var(--br-lime); box-shadow: 0 0 0 4px #fff; }
.ab-tl li.is-soon::before { background: var(--br-orange); }
.ab-tl__k { display: block; font-size: 0.6875rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--br-orange); }
.ab-tl b { display: block; margin-top: 0.25rem; font-size: 1rem; font-weight: 900; color: var(--br-black); } .ab-tl small { display: block; margin-top: 0.25rem; font-size: 0.875rem; color: #3a3f47; }
.ab-sub { margin: 1.5rem 0 0.75rem !important; font-size: var(--t-card) !important; text-align: left; }
.ab-sub:first-child { margin-top: var(--head-gap) !important; }
.ab-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.75rem; margin: 0; padding: 0; list-style: none; }
.ab-p { display: flex; flex-direction: column; align-items: center; gap: 0.25rem; padding: 1.25rem 1rem; border-radius: 18px; background: #fff; border: 1px solid #e3ecd2; text-align: center; }
.ab-av { display: grid; place-items: center; width: 72px; height: 72px; margin-bottom: 0.375rem; border-radius: 50%; background: var(--br-mint); font-size: 1.25rem; font-weight: 900; color: #2d6a1f; }
.ab-p--ph { border-style: dashed; background: transparent; } .ab-p--ph .ab-av { background: #f1f1ea; color: #a3a7ae; }
.ab-p b { font-size: 1rem; color: var(--br-black); } .ab-p small { font-size: 0.8125rem; color: #6b7079; }
.ab-grid--soon { grid-template-columns: 1fr; }
.ab-soon { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding: 1.25rem 1.5rem; border-radius: 18px; border: 1px dashed #c9d8b2; background: var(--br-mint); text-align: left; }
.ab-soon b { font-size: 1.125rem; color: var(--br-black); } .ab-soon small { display: block; color: #3a3f47; }
.ab-squad__row { display: flex; justify-content: center; align-items: flex-end; gap: clamp(0.5rem, 1.2vw, 0.875rem); margin-top: var(--head-gap); flex-wrap: wrap; }
.ab-squad__row .sq-card { width: clamp(90px, 11vw, 140px); }
.ab-squad__row .sq-card:nth-child(even) { transform: translateY(-12px); }
.ab-masc__card { max-width: 760px; margin: 0 auto; padding: clamp(1.5rem, 4vw, 2.5rem); border-radius: 24px; background: var(--br-black); color: #fff; text-align: center; }
.ab-masc__card h2 { color: #fff !important; } .ab-masc__card p:not(.pl-fq__eyebrow) { color: rgba(255,255,255,.75); }
.ab-masc__slots { display: flex; justify-content: center; gap: 0.75rem; margin-top: 1.25rem; }
.ab-masc__slots span { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 18px; border: 2px dashed rgba(200,245,98,.6); color: var(--br-lime); font-size: 1.5rem; font-weight: 900; }
@media (max-width: 899px) { .ab-tl, .ab-grid { grid-template-columns: 1fr 1fr; } .ab-tl::before { display: none; } }
@media (max-width: 480px) { .ab-tl, .ab-grid { grid-template-columns: 1fr; } .ab-squad__row .sq-card:nth-child(n+5) { display: none; } .ab-masc__slots span { width: 48px; height: 48px; } }
/* About: mascots card, light and cheeky, with suggestion box */
.ab-masc__card { display: grid !important; grid-template-columns: 1fr 1fr; gap: clamp(1.25rem, 3vw, 2.5rem); align-items: center; max-width: 1000px !important; background: linear-gradient(135deg, #f6fde6 0%, var(--br-mint) 55%, #fff3c4 100%) !important; color: var(--br-black) !important; border: 1px solid #d6e6bf; text-align: left !important; }
.ab-masc__card h2 { color: var(--br-black) !important; margin: 0 !important; } .ab-masc__card h2 span { color: var(--br-orange); }
.ab-masc__card .ab-masc__copy > p:not(.pl-fq__eyebrow) { color: #3a3f47 !important; margin-top: 0.5rem; }
.ab-masc__card .pl-fq__eyebrow { justify-content: flex-start; }
.ab-masc__slots { justify-content: flex-start !important; }
.ab-masc__slots span { border: 2px dashed var(--br-orange) !important; background: #fff; color: var(--br-black) !important; font-size: 1.375rem !important; }
.ab-masc__slots span:nth-child(odd) { transform: rotate(-6deg); } .ab-masc__slots span:nth-child(even) { transform: rotate(5deg); }
.ab-sugg { display: grid; gap: 0.625rem; padding: 1.125rem; border-radius: 20px; background: #fff; border: 1.5px solid var(--br-black); box-shadow: 6px 6px 0 var(--br-black); transform: rotate(1deg); }
.ab-sugg__h { margin: 0 !important; font-size: 1.125rem; font-weight: 900; } .ab-sugg__s { margin: 0 !important; font-size: 0.8125rem; color: #6b7079; }
.ab-sugg .pl-gb__f { display: grid; gap: 0.25rem; } .ab-sugg .pl-gb__f span { font-size: 0.8125rem; font-weight: 800; } .ab-sugg .pl-gb__f small { font-weight: 600; color: #6b7079; }
.ab-sugg :is(textarea, input[type=email]) { width: 100%; box-sizing: border-box; padding: 0.625rem 0.75rem; border-radius: 12px; border: 1.5px solid #d3d0c4; font: inherit; }
.ab-sugg button { justify-self: start; border-radius: 999px; }
@media (max-width: 899px) { .ab-masc__card { grid-template-columns: 1fr; } .ab-sugg { transform: none; } }
.ab-masc__card .ab-sugg p.ab-sugg__h { color: var(--br-black) !important; } .ab-masc__card .ab-sugg p.ab-sugg__s { color: #6b7079 !important; }
.ab-av--stealth { background: var(--br-black) !important; font-size: 1.75rem !important; }
/* Universities features: same two-card system as athletes tiers, full width */
.tr--two { grid-template-columns: 1fr 1fr !important; max-width: none !important; }
.tr--two + .tr-strip { max-width: none; }
.tr--two .tr-card:last-child { background: linear-gradient(180deg, #e3e8f5 0%, #fff 55%) !important; }
.pa-badge--navy { background: var(--br-navy) !important; color: #fff !important; }
.tr-ck--n { background: var(--br-navy); }
.uh-m--light li { color: var(--br-black); } .uh-m--light .uh-m__n { background: #f1f1ea; } .uh-m--light .pp-bar { background: #eef0e6 !important; }
.ud-kpi { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.375rem; }
.ud-kpi span { padding: 0.4rem; border-radius: 10px; background: #f6f5ee; font-size: 0.625rem; color: #6b7079; text-align: center; }
.ud-kpi b { display: block; font-size: 1.125rem; font-weight: 900; color: var(--br-black); }
.ud-q { display: grid; gap: 0.375rem; margin: 0.5rem 0 0; padding: 0; list-style: none; }
.ud-q li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0.4rem; padding: 0.375rem 0.4rem; border-radius: 10px; background: #f6f5ee; }
@media (max-width: 899px) { .tr--two { grid-template-columns: 1fr !important; } }
.tr-copy .pa-badge { display: inline-block; padding: 0.3rem 0.75rem; border-radius: 999px; font-size: 0.6875rem; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; line-height: 1.2; } .tr-copy .pa-badge--lime { background: var(--br-lime); color: var(--br-black); } .tr-copy .pa-badge--orange { background: var(--br-orange); color: #fff; } .tr-copy .pa-badge--navy { background: var(--br-navy) !important; color: #fff !important; }
=======
/* example campaign (all pages): space between the subcopy and the cards below it */
.pl-page main section.pl-camp .sec-head + .hm-shell { margin-top: clamp(0.5rem, 2vh, 1.5rem) !important; }

/* ---------- headings: one type scale, fewest rows ---------- */
/* section headlines may use the full container width, so they wrap only when the text really needs it */
.pl-page main section :is(.sec-head > h2, h2.pb-h, h2.pu-h, h2.pl-prob__title) { max-width: min(100%, 1240px) !important; text-wrap: balance; }
.pl-page main .pl-prob__title .pl-prob__orange { display: inline !important; }
/* every headline uses the shared size (--t-h): section headlines, hero h1s and closing-CTA headlines */
.pl-page main :is(h2.pb-h, h2.pu-h, h2.pl-end__h) { font-size: var(--t-h) !important; }
.pl-page main :is(.pb-hero__text, .pu-split__text, .pt-hero__text) > h1 { font-size: var(--t-h) !important; }
.pl-page main .pt-hero__lead { font-size: var(--t-lead) !important; }
.pl-page.pl-page main .pb-hero__stage.pb-hero__stage .pb-hero__text.pb-hero__text > h1, .pl-page.pl-page main .pt-hero.pt-hero .pt-hero__text.pt-hero__text > h1 { font-size: var(--t-h) !important; }

/* hero text columns get more room so the headline sits on two rows instead of three or four */
@media (min-width: 900px) {
  .pl-page main .pl-hero__title > span { display: inline !important; }
  .pl-page main .pl-hero__title { max-width: none !important; text-wrap: balance; }
  .pl-page main .pb-feat__l2 { display: inline !important; white-space: normal; }
  .pl-page main :is(.pb-hero__text, .pu-split__text, .pt-hero__text) > h1 { max-width: none !important; text-wrap: balance; }
}

/* hero art: a narrower text column (headline may take three rows) so the product art can run much larger */
@media (min-width: 900px) {
  .pl-page.pl-page main .pb-hero__stage.pb-hero__stage:has(img[data-mascot]),
  .pl-page.pl-page main .pt-hero__stage.pt-hero__stage:has(.pt-hero__fig--split),
  .pl-page.pl-page main .pu-split.pu-split { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr) !important; max-width: min(1320px, 100% - 3rem) !important; gap: clamp(1.5rem, 3vw, 3.5rem) !important; }
  .pl-page.pl-page main .pb-hero__stage .sx-media--bhero.sx-media--bhero { max-width: none !important; width: 100% !important; }
  .pl-page.pl-page main .pb-hero__stage .sx-media--bhero > img { height: auto !important; aspect-ratio: 1210 / 712; }
  .pl-page.pl-page main .pu-split .sx-media--shot { max-width: none !important; width: 100% !important; }
  .pl-page.pl-page main .pt-hero__fig--split { max-width: none !important; width: 100% !important; }
}
@media (min-width: 900px) { .pl-page.pl-page main .pu-split.pu-split { width: min(1320px, 100% - 3rem) !important; } }
/* hero text keeps the same left edge as the logo and sections; the art may run out toward the right edge */
@media (min-width: 900px) {
  .pl-page.pl-page main .pb-hero__stage.pb-hero__stage:has(img[data-mascot]),
  .pl-page.pl-page main .pt-hero__stage.pt-hero__stage:has(.pt-hero__fig--split),
  .pl-page.pl-page main .pu-split.pu-split {
    margin-left: max(1.5rem, calc((100% - 1160px) / 2)) !important; margin-right: auto !important;
    width: min(1280px, calc(100% - max(1.5rem, calc((100% - 1160px) / 2)) - 1.5rem)) !important; max-width: none !important;
  }
}
@media (min-width: 900px) { .pl-page.pl-page main .pb-hero__stage .sx-media--bhero .sx-card--top { top: 16% !important; } }

/* in-page links: land with the section's headline clear of the sticky header, not tucked under it */
@media (min-width: 900px) {
  .pl-page main :is(#how-it-works, #early-access, #faq, #guide-form) { scroll-margin-top: 58px; }
}

/* legal pages: data tables inside the policy text */
.pl-legal__tablewrap { overflow-x: auto; margin: 1rem 0 1.5rem; border: 1px solid #e6e3d6; border-radius: 12px; }
.pl-legal__body table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: var(--t-small); line-height: 1.4; }
.pl-legal__body th, .pl-legal__body td { padding: 0.625rem 0.875rem; text-align: left; vertical-align: top; border-bottom: 1px solid #ece9dc; }
.pl-legal__body th { background: #f3f1e6; font-weight: 800; }
.pl-legal__body tr:last-child td { border-bottom: 0; }
.pl-legal__body td ul, .pl-legal__body td ol { margin: 0; padding-left: 1.1rem; }

/* legal pages: fine-print sizing (the shared headline scale is too large for policy text) */
.pl-page.pl-page main .pl-legal .pl-legal__body { font-size: 0.9375rem; line-height: 1.6; }
.pl-page.pl-page main .pl-legal .pl-legal__body h2 { font-size: 1.3125rem !important; line-height: 1.25; margin: 2rem 0 0.625rem; }
.pl-page.pl-page main .pl-legal .pl-legal__body h3 { font-size: 1.0625rem !important; line-height: 1.3; margin: 1.375rem 0 0.5rem; }
.pl-page.pl-page main .pl-legal .pl-legal__body :is(p, li) { font-size: 0.9375rem !important; line-height: 1.6; margin-bottom: 0.75rem; }
.pl-page.pl-page main .pl-legal .pl-legal__body li { margin-bottom: 0.375rem; }
.pl-page.pl-page main .pl-legal .pl-legal__body table { font-size: 0.8125rem !important; }
.pl-page.pl-page main .pl-legal .pl-legal__body :is(td, th) { font-size: 0.8125rem !important; }
.pl-page.pl-page main .pl-legal .pl-legal__eff { font-size: 0.9375rem; margin-bottom: 1.75rem; }
.pl-page.pl-page main .pl-legal .pl-legal__body :is(p, li, h2, h3) { max-width: none !important; text-wrap: pretty !important; }

/* university "Department tools" card: the dashboard picture is wide and short, so the frame hugs it instead of leaving empty space */
.pl-page.pl-page .pu-fc2--blue img.pu-shot__img { height: auto !important; min-height: 0 !important; aspect-ratio: 1200 / 342 !important; object-fit: contain !important; }
@media (min-width: 900px) { .pu-page .pu-feat__cards:has(.pu-shot) .pu-fc2--blue { align-self: start; } }
/* ==== About page: five-item grid ==== */
.ab-grid:has(> li:nth-child(5)) { grid-template-columns: repeat(5, 1fr); } @media (max-width: 899px) { .ab-grid:has(> li:nth-child(5)) { grid-template-columns: 1fr 1fr; } }
@media (min-width: 900px) { .pu-page .pu-proof .pu-trio { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; align-items: stretch !important; } .pu-page .pu-proof .pu-trio > * { grid-column: auto !important; } }
@media (min-width: 900px) { .pl-page.pl-page.pu-page main .pu-proof .pu-trio.pu-trio { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (min-width: 900px) { html body.pu-page main .pu-proof .pu-trio.pu-trio--3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 899px) { .pu-trio.pu-trio--3 { grid-template-columns: 1fr !important; } }
.pu-quote[hidden] { display: none !important; }
.pl-page.pl-page.pl-page main .pu-trio.pu-trio .pu-quote.pu-quote[hidden] { display: none !important; }
/* Kyle Divita quote is held back (hidden) until his article is live: show the two visible quotes in two columns, and three again once it is shown. */
@media (min-width: 900px) { html body.pu-page main .pu-proof .pu-trio.pu-trio--3:has(> .pu-quote[hidden]) { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
