/* Responsible Gambling — frame 2:1282 (1440) / 45:281 (390). */

.rgp { font-family: var(--font-display); }

/* ── hero (2:1309 / 45:298) ───────────────────────────────────────────── */
.rgp-hero { display: flex; flex-direction: column; gap: 40px; padding: 80px 60px; background: var(--color-bg); color: var(--color-cream-2); }
.rgp-hero__eyebrow { font-weight: 700; font-size: 16px; line-height: 19.2px; letter-spacing: 2px; color: var(--color-lime); }
.rgp-hero__cols { display: flex; gap: 64px; align-items: flex-start; }
.rgp-hero__left { display: flex; flex-direction: column; gap: 24px; width: 776px; flex: none; }
.rgp-hero__title { display: flex; flex-direction: column; gap: 4px; font-weight: 800; font-size: 72px; line-height: 68px; }
.rgp-hero__l2 { color: var(--color-lime); }
.rgp-hero__lead { font-family: var(--font-body); font-size: 16px; line-height: 26px; color: var(--color-muted); }
.rgp-hero__support { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.rgp-hero__support-t { font-weight: 700; font-size: 14px; line-height: 17px; letter-spacing: 1px; }
.rgp-hero__link { font-weight: 700; font-size: 16px; line-height: 19.2px; color: var(--color-lime); text-decoration: none; transition: color var(--dur-fast) var(--ease); }
.rgp-hero__link:hover { color: var(--color-cream-2); }
.rgp-card { display: flex; flex-direction: column; gap: 24px; width: 480px; flex: none; padding: 32px; border-radius: 3px; background: var(--color-surface); box-shadow: inset 0 0 0 2px var(--color-lime); }
.rgp-card__head { display: flex; justify-content: space-between; align-items: center; }
.rgp-card__age { font-weight: 700; font-size: 48px; line-height: 58px; color: var(--color-lime); }
.rgp-card__tag { font-weight: 600; font-size: 11px; line-height: 13.2px; letter-spacing: 1px; color: var(--color-muted); }
.rgp-card__rule { margin: 0; border: 0; height: 0; box-shadow: 0 1px 0 var(--color-lime); }
.rgp-card__list { display: flex; flex-direction: column; gap: 16px; }
.rgp-card__list li { display: flex; gap: 16px; }
.rgp-card__list li > div { display: flex; flex-direction: column; gap: 4px; }
.rgp-card__n { font-weight: 700; font-size: 20px; line-height: 24px; color: var(--color-lime); }
.rgp-card__t { font-weight: 700; font-size: 14px; line-height: 17px; letter-spacing: 1px; }
.rgp-card__d { font-family: var(--font-body); font-size: 12px; line-height: 14.4px; color: var(--color-muted); }
.rgp-hero .torn--d { margin: 0; }

/* ── two-column editorial sections ────────────────────────────────────── */
.rgp-sec { display: flex; gap: 64px; align-items: flex-start; padding: 100px 80px; }
.rgp-sec--light { background: var(--color-cream-2); color: var(--color-text-dark); }
.rgp-sec--dark { background: var(--color-bg); color: var(--color-cream-2); }
.rgp-sec__left { display: flex; flex-direction: column; gap: 12px; width: 384px; flex: none; }
.rgp-sec__num { font-weight: 700; font-size: 72px; line-height: 60px; opacity: .2; }
.rgp-sec__num--lime { color: var(--color-lime); }
.rgp-sec__kicker { font-weight: 700; font-size: 12px; line-height: 14.4px; letter-spacing: 2px; }
.rgp-sec__kicker--lime { color: var(--color-lime); }
.rgp-sec__title { font-weight: 700; font-size: 36px; line-height: 40px; }
.rgp-sec__right { display: flex; flex-direction: column; gap: 32px; flex: 1; min-width: 0; }
.rgp-sec__sub { font-weight: 700; font-size: 13px; line-height: 16px; letter-spacing: 1px; color: var(--color-muted); }
.rgp-sec__sub--lime { font-size: 16px; line-height: 19.2px; color: var(--color-lime); }
.rgp-sec--dark .rgp-sec__right { gap: 20px; }
.rgp-sec__p { font-family: var(--font-body); font-size: 14px; line-height: 21px; color: var(--color-muted-cool); }
.rgp-sec__p--strong { font-weight: 600; font-size: 16px; line-height: 19.2px; color: var(--color-text-dark); }
.rgp-sec__rule { margin: 0; border: 0; height: 0; box-shadow: 0 1px 0 var(--color-border); }
.rgp-checklist { display: flex; flex-direction: column; gap: 16px; }
.rgp-checklist li { position: relative; padding-left: 22px; font-family: var(--font-body); font-size: 15px; line-height: 22px; }
.rgp-checklist li::before { content: ""; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: var(--color-lime); }
.rgp-info { display: flex; flex-direction: column; gap: 16px; }
.rgp-info__t { font-weight: 700; font-size: 16px; line-height: 19.2px; letter-spacing: 1px; }
.rgp-info__p { font-family: var(--font-body); font-size: 14px; line-height: 21px; color: var(--color-muted-cool); }
.rgp-info__p a { color: var(--color-text-dark); text-decoration-color: var(--color-lime-deep); text-underline-offset: 2px; }
.rgp-support { display: flex; justify-content: space-between; align-items: center; }
.rgp-support__q { font-weight: 600; font-size: 14px; line-height: 17px; }
.rgp-support__a { font-weight: 700; font-size: 16px; line-height: 19.2px; color: var(--color-text-dark); text-decoration: none; }
.rgp-support__a:hover { color: var(--color-lime-deep); }
.rgp-signs { display: flex; flex-direction: column; gap: 12px; }
.rgp-signs li { display: flex; align-items: center; gap: 12px; font-size: 14px; line-height: 17px; }
.rgp-signs li > span:last-child { font-family: var(--font-body); }
.rgp-signs__n { font-weight: 700; color: var(--color-lime); }
.rgp-tracks { display: flex; flex-direction: column; gap: 16px; }
.rgp-track { display: flex; gap: 24px; align-items: center; height: 65px; padding: 24px; }
.rgp-track dt { width: 120px; flex: none; font-weight: 700; font-size: 14px; line-height: 17px; letter-spacing: 1px; }
.rgp-track dd { font-family: var(--font-body); font-size: 14px; line-height: 17px; color: var(--color-muted-cool); }
.rgp-meta { display: flex; flex-direction: column; }
.rgp-meta__row { display: flex; align-items: center; height: 45px; padding: 14px 0; box-shadow: inset 0 -1px 0 var(--color-border); }
.rgp-meta__row dt { width: 180px; flex: none; font-weight: 700; font-size: 12px; line-height: 14.4px; letter-spacing: 1px; }
.rgp-meta__row dd { font-family: var(--font-body); font-size: 14px; line-height: 17px; color: var(--color-muted-cool); }

/* ── tools (2:1368 / 45:355) ──────────────────────────────────────────── */
.rgp-tools { display: flex; flex-direction: column; gap: 48px; padding: 100px 80px; background: var(--color-bg); color: var(--color-cream-2); }
.rgp-tools__head { display: flex; flex-direction: column; gap: 8px; }
.rgp-tools__head .rgp-sec__kicker { font-size: 14px; line-height: 17px; }
.rgp-tools__title { font-weight: 700; font-size: 40px; line-height: 48px; }
.rgp-tools__lead { font-family: var(--font-body); font-size: 15px; line-height: 22px; color: var(--color-muted); }
.rgp-tools__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 24px; }
.rgp-tool { grid-column: span 2; display: flex; flex-direction: column; gap: 16px; height: 222px; padding: 32px; color: inherit; text-decoration: none; box-shadow: inset 0 0 0 2px var(--color-lime); transition: background-color var(--dur-fast) var(--ease); }
.rgp-tool:hover { background: var(--color-surface); }
.rgp-tool--wide { grid-column: span 3; }
.rgp-tool__head { display: flex; justify-content: space-between; align-items: center; }
.rgp-tool__n { font-weight: 700; font-size: 48px; line-height: 58px; color: var(--color-lime); opacity: .3; }
.rgp-tool__title { font-weight: 700; font-size: 20px; line-height: 24px; }
.rgp-tool__text { font-family: var(--font-body); font-size: 14px; line-height: 22px; color: var(--color-muted); }

/* ── responsibilities (2:1460 / 45:454) ───────────────────────────────── */
.rgp-resp { display: flex; flex-direction: column; gap: 48px; padding: 100px 80px; background: var(--color-bg); color: var(--color-cream-2); }
.rgp-resp__head { display: flex; flex-direction: column; gap: 8px; }
.rgp-resp__head .rgp-sec__kicker { font-size: 14px; line-height: 17px; }
.rgp-resp__cols { display: flex; gap: 40px; align-items: flex-start; }
.rgp-resp__col { display: flex; flex-direction: column; gap: 16px; flex: 1; padding-right: 24px; box-shadow: inset -1px 0 0 var(--color-lime); }
.rgp-resp__col--last { padding-right: 0; box-shadow: none; }
.rgp-resp__n { font-weight: 700; font-size: 40px; line-height: 48px; color: var(--color-lime); }
.rgp-resp__t { font-weight: 700; font-size: 18px; line-height: 22px; }
.rgp-resp__p { font-family: var(--font-body); font-size: 14px; line-height: 22px; color: var(--color-muted); }

@media (max-width: 1199px) {
  .rgp .rgp-hero__lead, .rgp .rgp-card__d, .rgp .rgp-sec__p, .rgp .rgp-checklist li, .rgp .rgp-info__p, .rgp .rgp-signs li > span:last-child,
  .rgp .rgp-track dd, .rgp .rgp-meta__row dd, .rgp .rgp-tools__lead, .rgp .rgp-tool__text, .rgp .rgp-resp__p { font-family: var(--font-sans-2); }

  .rgp-hero { gap: 28px; padding: 48px 20px; }
  .rgp-hero__eyebrow { font-size: 13px; line-height: 16px; }
  .rgp-hero__cols { flex-direction: column; gap: 28px; }
  .rgp-hero__left { width: auto; gap: 28px; }
  .rgp-hero__title { display: block; font-size: 38px; line-height: 42px; }
  .rgp-hero__l2 { color: inherit; }
  .rgp-hero__lead { font-size: 14px; line-height: 22px; }
  .rgp-hero__support { gap: 8px; }
  .rgp-hero__support-t { font-size: 13px; line-height: 16px; }
  .rgp-hero__link { font-size: 15px; line-height: 18px; }
  .rgp-card { gap: 16px; width: auto; padding: 24px; border-radius: var(--radius-md); background: var(--color-bg-deep); box-shadow: inset 0 0 0 1.5px var(--color-lime); }
  .rgp-card__age { font-size: 36px; line-height: 43.2px; }
  .rgp-card__n { font-size: 18px; line-height: 22px; }
  .rgp-card__t { letter-spacing: 0; }
  .rgp-card__d { font-size: 12px; line-height: 16px; }
  .rgp-card__list li { gap: 12px; }
  .rgp-hero .torn--d { display: none; }

  .rgp-sec { flex-direction: column; align-items: stretch; gap: 28px; padding: 48px 20px; }
  .rgp-sec__left { width: auto; align-self: stretch; }
  .rgp-sec__num { font-weight: 800; font-size: 64px; line-height: 56px; }
  .rgp-sec__num--lime { opacity: .3; }
  .rgp-sec__kicker { font-size: 13px; line-height: 16px; }
  .rgp-sec__title { margin-top: 16px; font-weight: 800; font-size: 38px; line-height: 42px; }   /* 390: number+kicker gap 12, then 28 to the title */
  .rgp-sec__right { gap: 16px; }
  .rgp-sec__sub { color: var(--color-muted-cool); }
  .rgp-sec__sub--lime { font-size: 14px; line-height: 17px; color: var(--color-lime); }
  .rgp-sec__p { font-size: 14px; line-height: 22px; }
  .rgp-checklist { gap: 12px; }
  .rgp-checklist li { padding-left: 18px; font-size: 14px; line-height: 20px; }
  .rgp-checklist li::before { top: 7px; }
  .rgp-sec__right > .rgp-info + .rgp-sec__rule { margin: 8px 0; }
  .rgp-info { gap: 10px; }
  .rgp-info__t { letter-spacing: 0; }
  .rgp-info__p { font-size: 14px; line-height: 22px; }
  .rgp-support { flex-direction: column; align-items: flex-start; gap: 12px; padding: 16px; border-radius: var(--radius-sm); background: var(--color-cream-2); box-shadow: inset 0 0 0 1px var(--color-text-dark); }
  .rgp-signs { gap: 14px; }
  .rgp-signs li { align-items: flex-start; }
  .rgp-signs li > span:last-child { font-size: 14px; line-height: 20px; }
  .rgp-tracks { gap: 0; margin-top: 12px; }   /* 390: lead → list gap 28 (section gap), not the 16 of the column */
  .rgp-track { flex-direction: column; align-items: flex-start; gap: 8px; height: auto; padding: 20px 0; box-shadow: inset 0 1px 0 var(--color-border-light); }
  .rgp-track dt { width: auto; font-size: 15px; line-height: 18px; }
  .rgp-track dd { font-size: 13px; line-height: 20px; }
  .rgp-meta__row { gap: 12px; height: 49px; padding: 16px 0; box-shadow: inset 0 1px 0 var(--color-border-light); }
  .rgp-meta__row dt { width: 120px; font-size: 13px; line-height: 16px; letter-spacing: 0; }
  .rgp-meta__row dd { font-size: 13px; line-height: 17px; }
  .rgp-sec__p--strong { font-weight: 400; font-size: 14px; line-height: 22px; }

  .rgp-tools { gap: 28px; padding: 48px 20px; }
  .rgp-tools__head { gap: 28px; }
  .rgp-tools__head .rgp-sec__kicker { font-size: 13px; line-height: 16px; }
  .rgp-tools__title { font-weight: 800; font-size: 38px; line-height: 42px; }
  .rgp-tools__lead { font-size: 14px; line-height: 22px; }
  .rgp-tools__grid { display: flex; flex-direction: column; gap: 16px; }
  .rgp-tool { gap: 12px; height: auto; padding: 24px; border-radius: var(--radius-sm); background: var(--color-bg-deep); box-shadow: inset 0 0 0 1px var(--color-lime); }
  .rgp-tool__n { font-weight: 800; font-size: 28px; line-height: 34px; opacity: .4; }
  .rgp-tool__arrow { font-weight: 700; font-size: 18px; line-height: 22px; color: var(--color-lime); }
  .rgp-tool__title { font-size: 18px; line-height: 22px; }
  .rgp-tool__text { font-size: 13px; line-height: 20px; }

  .rgp-resp { gap: 28px; padding: 48px 20px; }
  .rgp-resp__head { gap: 12px; }
  .rgp-resp__head .rgp-tools__title { margin-top: 16px; }
  .rgp-resp__head .rgp-sec__kicker { font-size: 13px; line-height: 16px; }
  .rgp-resp__cols { flex-direction: column; gap: 24px; }
  .rgp-resp__col, .rgp-resp__col--last { gap: 12px; padding: 0 0 24px; box-shadow: inset 0 -1px 0 var(--color-border); }
  .rgp-resp__n { font-size: 32px; line-height: 38.4px; }
  .rgp-resp__t { font-size: 16px; line-height: 19.2px; }
  .rgp-resp__p { font-size: 13px; line-height: 20px; }
}

/* Below the 390 frame only: «RECOGNISING» does not fit 280px at 38px. */
@media (max-width: 389px) {
  .rgp-sec__title, .rgp-tools__title, .rgp-hero__title { font-size: 32px; line-height: 36px; }
}
