/*
 * RG homepage
 * Scope: .rg-home only
 * No font imports or font-family changes.
 * Heading sizes and weights continue to come from your site typography.
 */

.rg-home {
  --rg-navy: #091727;
  --rg-blue: #07376b;
  --rg-blue-1: #124a7d;
  --rg-blue-2: #053d70;
  --rg-blue-3: #05335c;
  --rg-red: #c9232c;
  --rg-ink: #10283f;
  --rg-muted: #536578;
  --rg-light: #f1f5fa;
  --rg-border: #dce4ed;
  --rg-white: #fff;

  color: var(--rg-ink);
  background: var(--rg-white);
  isolation: isolate;
}

.rg-home,
.rg-home *,
.rg-home *::before,
.rg-home *::after {
  box-sizing: border-box;
}

.rg-home :where(h1, h2, h3, p, blockquote) {
  margin: 0;
}

.rg-home :where(img) {
  display: block;
  max-width: 100%;
}

.rg-home :where(a) {
  color: inherit;
}

.rg-home :where(button, input, select, textarea) {
  font-family: inherit;
}

.rg-home :where(a, button, summary, input, select, textarea):focus-visible {
  outline: 3px solid #55b8ef;
  outline-offset: 4px;
}

.rg-home :where(section[id], footer[id]) {
  scroll-margin-top: 24px;
}

.rg-home .rg-container {
  width: min(1200px, calc(100% - 48px));
  margin-inline: auto;
}

.rg-home .rg-section {
  padding-block: clamp(48px, 5vw, 72px);
}

.rg-home .rg-section--tint {
  background: var(--rg-light);
}

.rg-home .rg-section-heading {
  display: grid;
  gap: 10px;
  margin-bottom: 28px;
}

.rg-home .rg-section-heading > p:last-child {
  color: var(--rg-muted);
}

.rg-home .rg-section-heading--row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
}

.rg-home .rg-section-heading--row > div {
  display: grid;
  gap: 10px;
}

.rg-home .rg-eyebrow {
  color: #07518b;
  text-transform: uppercase;
}

.rg-home .rg-eyebrow--red {
  color: var(--rg-red);
}

.rg-home .rg-eyebrow--light {
  color: #b8ddf3;
}

.rg-home .rg-link,
.rg-home .rg-channel__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  color: #07518b;
  text-decoration: none;
}

.rg-home .rg-link:hover,
.rg-home .rg-channel__link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

.rg-home .rg-link--light {
  color: #b8ddf3;
}

.rg-home .rg-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
}

.rg-home .rg-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 5px;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
}

.rg-home .rg-button--red {
  color: var(--rg-white);
  background: var(--rg-red);
}

.rg-home .rg-button--blue {
  color: var(--rg-white);
  background: var(--rg-blue);
}

.rg-home .rg-button--white {
  color: var(--rg-ink);
  background: var(--rg-white);
}

.rg-home .rg-button--outline-light {
  color: var(--rg-white);
  background: transparent;
  border-color: rgba(255, 255, 255, 0.85);
}

.rg-home .rg-button:hover {
  filter: brightness(0.94);
}

/* FULL-PICTURE HERO */

.rg-home .rg-hero {
  position: relative;
  min-height: 540px;
  color: var(--rg-white);
  background: var(--rg-navy);
  overflow: hidden;
}

.rg-home .rg-hero__photo,
.rg-home .rg-hero__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.rg-home .rg-hero__photo {
  z-index: 0;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transition: opacity 0.8s ease;
}

.rg-home .rg-hero__photo.is-active {
  z-index: 1;
  opacity: 1;
}

.rg-home .rg-hero__overlay {
  z-index: 2;
  background: linear-gradient(
    90deg,
    rgba(5, 23, 46, 0.70) 0%,
    rgba(5, 23, 46, 0.48) 50%,
    rgba(5, 23, 46, 0.12) 100%
  );
  pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
  .rg-home .rg-hero__photo {
    transition: none;
  }
}

/* Edge arrows sit on the photo, clear of the headline column. */
.rg-home .rg-hero__arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  transform: translateY(-50%);
  appearance: none;
  background: rgba(9, 23, 39, 0.58);
  color: var(--rg-white);
  font: inherit;
  line-height: 1;
  cursor: pointer;
}

.rg-home .rg-hero__arrow span {
  display: block;
  margin-top: -3px;
  font-size: 34px;
  font-weight: 400;
  line-height: 1;
}

.rg-home .rg-hero__arrow--prev {
  left: 14px;
}

.rg-home .rg-hero__arrow--prev span {
  margin-left: -2px;
}

.rg-home .rg-hero__arrow--next {
  right: 14px;
}

.rg-home .rg-hero__arrow--next span {
  margin-right: -2px;
}

.rg-home .rg-hero__arrow:hover {
  background: rgba(9, 23, 39, 0.8);
}

.rg-home .rg-hero__arrow:focus-visible {
  outline-offset: 2px;
}

.rg-home .rg-hero .rg-hero__inner {
  width: min(1200px, calc(100% - 168px));
}

.rg-home .rg-header {
  position: relative;
  z-index: 3;
}

.rg-home .rg-urgent {
  background: var(--rg-red);
}

.rg-home .rg-urgent__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  min-height: 36px;
  padding-block: 8px;
}

.rg-home .rg-urgent a {
  text-decoration: none;
}

.rg-home .rg-navigation {
  background: rgba(9, 23, 39, 0.65);
}

.rg-home .rg-navigation__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 88px;
}

.rg-home .rg-brand {
  flex: 0 0 auto;
}

.rg-home .rg-brand img {
  width: 170px;
  height: 42px;
  object-fit: contain;
}

.rg-home .rg-desktop-nav,
.rg-home .rg-account {
  display: flex;
  align-items: center;
  gap: clamp(14px, 1.7vw, 28px);
}

.rg-home .rg-desktop-nav a,
.rg-home .rg-account > a {
  text-decoration: none;
}

.rg-home .rg-desktop-nav a[aria-current="page"] {
  border-bottom: 2px solid var(--rg-white);
  padding-block: 10px;
}

.rg-home .rg-account .rg-button {
  min-height: 40px;
  padding: 8px 16px;
}

.rg-home .rg-mobile-menu {
  display: none;
}

.rg-home .rg-hero__inner {
  position: relative;
  z-index: 2;
  padding-top: 56px;
  padding-bottom: 72px;
}

.rg-home .rg-hero__copy {
  display: grid;
  gap: 23px;
  max-width: 620px;
}

.rg-home .rg-hero__copy[data-hero-copy] {
  display: none;
}

.rg-home .rg-hero__copy[data-hero-copy].is-active {
  display: grid;
  animation: rg-hero-copy-in 0.45s ease both;
}

.rg-home .rg-hero__kicker {
  margin: 0;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.rg-home .rg-hero__indicator {
  display: flex;
  align-items: center;
  gap: 9px;
  width: min(420px, 100%);
  margin-top: 24px;
  color: #fff;
  font-size: 0.78rem;
  font-weight: 700;
}

.rg-home .rg-hero__indicator button {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
}

.rg-home .rg-hero__indicator button.is-active,
.rg-home .rg-hero__indicator button.active {
  background: #fff;
}

.rg-home .rg-hero__progress {
  flex: 1;
  height: 2px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.35);
}

.rg-home .rg-hero__progress > span {
  display: block;
  width: 0;
  height: 100%;
  background: #fff;
  transition: width 0.35s ease;
}

@keyframes rg-hero-copy-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Smaller page title for this hero only. Other headings stay on the site scale. */
.rg-home .rg-hero h1 {
  font-size: 2.6rem;
  line-height: 1.15;
}

.rg-home .rg-hero__description {
  max-width: 490px;
}

.rg-home .rg-reassurance {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 22px;
  padding: 0;
  margin: 0;
  list-style: none;
  color: #ddeaf5;
}

/* INTRODUCTION AND THREE ADJOINING BLUE BOXES */

.rg-home .rg-support {
  padding-bottom: 32px;
  background: #fafafa;
}

.rg-home .rg-support__intro {
  display: grid;
  justify-items: center;
  gap: 10px;
  padding-block: 36px 28px;
  text-align: center;
}

.rg-home .rg-support__intro p {
  max-width: 820px;
  color: var(--rg-blue);
}

.rg-home .rg-support__panels {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}

.rg-home .rg-channel {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  min-width: 0;
  padding: 36px 40px;
  color: var(--rg-white);
}

.rg-home .rg-channel--first {
  background: var(--rg-blue-1);
}

.rg-home .rg-channel--second {
  background: var(--rg-blue-2);
}

.rg-home .rg-channel--third {
  background: var(--rg-blue-3);
}

.rg-home .rg-channel > p {
  color: rgba(255, 255, 255, 0.9);
}

.rg-home .rg-channel__link {
  color: var(--rg-white);
  margin-top: auto;
}

/* RESOURCES — shared photograph, three open columns */

#rg-resources.rg-resources-photo {
  --resources-ink: #10283f;
  --resources-muted: #536578;
  --resources-blue: #07518b;
  padding-block: 56px;
  color: var(--resources-ink);
  background: #fff;
}

#rg-resources,
#rg-resources *,
#rg-resources *::before,
#rg-resources *::after {
  box-sizing: border-box;
}

#rg-resources .rg-resources-photo__container {
  width: min(1200px, calc(100% - 48px));
  margin-inline: auto;
}

#rg-resources .rg-resources-photo__header {
  display: grid;
  gap: 10px;
  margin-bottom: 24px;
}

#rg-resources .rg-resources-photo__eyebrow,
#rg-resources .rg-resources-photo__header h2,
#rg-resources .rg-resources-photo__intro {
  margin: 0;
}

#rg-resources .rg-resources-photo__eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--resources-blue);
  text-transform: uppercase;
}

#rg-resources .rg-resources-photo__eyebrow::before {
  content: "";
  width: 18px;
  height: 2px;
  background: #c9232c;
}

#rg-resources .rg-resources-photo__header h2 {
  color: var(--resources-ink);
}

#rg-resources .rg-resources-photo__intro {
  color: var(--resources-muted);
}

#rg-resources .rg-resources-photo__image {
  display: block;
  width: 100%;
  height: 340px;
  margin: 0 0 28px;
  object-fit: cover;
  object-position: center;
  border-radius: 10px;
}

#rg-resources .rg-resources-photo__services {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
  align-items: start;
}

#rg-resources .rg-resources-photo__service {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

#rg-resources .rg-resources-photo__service::before {
  content: "";
  display: block;
  width: 32px;
  height: 3px;
  background: var(--resources-blue);
}

#rg-resources .rg-resources-photo__service h3,
#rg-resources .rg-resources-photo__service p {
  margin: 0;
}

#rg-resources .rg-resources-photo__service h3 {
  color: var(--resources-ink);
}

#rg-resources .rg-resources-photo__service p {
  color: var(--resources-muted);
}

#rg-resources .rg-resources-photo__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  color: var(--resources-blue);
  text-decoration: none;
}

#rg-resources .rg-resources-photo__link:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* ASSESSMENT BAND */

.rg-home .rg-assessment {
  color: var(--rg-white);
  background: var(--rg-blue);
  padding-block: 34px;
}

.rg-home .rg-assessment__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}

.rg-home .rg-assessment__inner > div {
  display: grid;
  gap: 8px;
}

.rg-home .rg-assessment p {
  color: #ddeaf5;
}

.rg-home .rg-assessment .rg-button {
  flex-shrink: 0;
}

/* FACTS */

.rg-home .rg-facts {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 48px;
}

.rg-home .rg-facts__heading {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 22px;
}

.rg-home .rg-facts__content {
  display: grid;
  gap: 14px;
  padding-left: 32px;
  border-left: 2px solid #d9e9f5;
}

.rg-home .rg-facts__content > p:last-child {
  color: var(--rg-muted);
}

/* MONEY MANAGEMENT */

.rg-home .rg-money {
  display: grid;
  grid-template-columns: minmax(0, 520px) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
}

.rg-home .rg-money__image {
  width: 100%;
  height: 332px;
  object-fit: cover;
  border-radius: 10px;
}

.rg-home .rg-money__copy {
  display: grid;
  gap: 16px;
}

.rg-home .rg-money__copy > p:not(.rg-eyebrow) {
  color: var(--rg-muted);
}

.rg-home .rg-checklist {
  display: grid;
  gap: 12px;
  padding: 0;
  margin: 4px 0;
  list-style: none;
}

.rg-home .rg-checklist li {
  position: relative;
  padding-left: 24px;
}

.rg-home .rg-checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #07518b;
}

/* SELF-EXCLUSION */

.rg-home .rg-exclusion {
  color: var(--rg-white);
  background: var(--rg-blue);
}

.rg-home .rg-exclusion__inner {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 60px;
  align-items: center;
}

.rg-home .rg-exclusion__copy {
  display: grid;
  gap: 18px;
}

.rg-home .rg-exclusion__copy > p:not(.rg-eyebrow) {
  max-width: 650px;
  color: #ddeaf5;
}

.rg-home .rg-guidance {
  display: grid;
  gap: 18px;
  padding: 28px;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 8px;
}

.rg-home .rg-exclusion .rg-checklist li::before {
  color: #b8ddf3;
}

/* OUTREACH */

#rg-outreach.rg-outreach-section {
  background: #fff;
  padding-block: 56px;
  overflow-x: clip;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__container {
  width: min(1200px, calc(100% - 48px));
  margin-inline: auto;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__topline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px 24px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__eyebrow {
  margin: 0;
  color: #07518b;
  text-transform: uppercase;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__events {
  margin-left: auto;
  max-width: 100%;
  color: #07518b;
  text-decoration: none;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__events:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__heading {
  display: grid;
  gap: 10px;
  margin-bottom: 20px;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__heading h2 {
  color: #10283f;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__heading p {
  color: #536578;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__panorama {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 180px;
  object-fit: cover;
  object-position: center;
  border-radius: 10px;
  margin: 0 0 24px;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__topics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
  align-items: start;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__topic {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 16px 0;
  border-bottom: 1px solid #dce4ed;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__topic h3 {
  color: #10283f;
}

#rg-outreach.rg-outreach-section .rg-outreach-section__topic p {
  color: #536578;
}

@media (max-width: 760px) {
  #rg-outreach.rg-outreach-section {
    padding-block: 40px;
  }

  #rg-outreach.rg-outreach-section .rg-outreach-section__container {
    width: calc(100% - 64px);
  }

  #rg-outreach.rg-outreach-section .rg-outreach-section__topics {
    grid-template-columns: 1fr;
  }
}

/* CONTACT FORM */

.rg-home #rg-contact {
  padding-block: 32px;
  height: auto;
  max-height: none;
  overflow: visible;
}

.rg-home .rg-contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
}

.rg-home .rg-contact__details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}

.rg-home .rg-contact__details > p:not(.rg-eyebrow) {
  color: var(--rg-muted);
}

.rg-home .rg-contact__links {
  display: grid;
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.rg-home .rg-contact__links a {
  text-decoration: none;
  overflow-wrap: anywhere;
}

.rg-home .rg-contact__form {
  border-left: 1px solid var(--rg-border);
  padding-left: 36px;
}

.rg-home .rg-contact__form > h2 {
  margin-bottom: 22px;
}

.rg-home #rg-contact #rg-message-form {
  display: grid;
  gap: 9px;
}

.rg-home #rg-contact .rg-form-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 9px 16px;
}

.rg-home .rg-field {
  display: grid;
  gap: 6px;
}

.rg-home #rg-contact .rg-field :where(input, select, textarea) {
  display: block;
  width: 100%;
  min-width: 0;
  padding: 8px 14px;
  color: var(--rg-ink);
  background: var(--rg-white);
  border: 1px solid var(--rg-border);
  border-radius: 5px;
}

.rg-home .rg-field :where(input, textarea)::placeholder {
  color: #65758a;
}

.rg-home #rg-contact .rg-field textarea {
  min-height: 80px;
  height: 80px;
  resize: vertical;
}

.rg-home #rg-submit-message {
  justify-self: start;
}

/* CENTERED ORIGINAL RG CRISIS STRIP */

.rg-home .rg-crisis {
  padding-block: 24px;
  color: var(--rg-white);
  background: var(--rg-red);
}

.rg-home .rg-crisis__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  text-align: center;
}

.rg-home .rg-crisis .rg-button {
  min-height: 44px;
  flex-shrink: 0;
}

/* FOOTER */

.rg-home .rg-footer {
  padding-block: 48px 28px;
  color: #ddeaf5;
  background: var(--rg-navy);
}

.rg-home .rg-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1fr;
  gap: 36px;
}

.rg-home .rg-footer__identity {
  display: grid;
  align-content: start;
  gap: 20px;
}

.rg-home .rg-footer__links {
  display: grid;
  align-content: start;
  gap: 12px;
}

.rg-home .rg-footer__links h3 {
  color: #b8ddf3;
  margin-bottom: 8px;
}

.rg-home .rg-footer :where(a) {
  text-decoration: none;
}

.rg-home .rg-footer a:hover {
  text-decoration: underline;
}

.rg-home .rg-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 36px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.rg-home .rg-footer__bottom nav {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

/* TABLET */

@media (max-width: 1100px) {
  .rg-home .rg-desktop-nav,
  .rg-home .rg-account {
    display: none;
  }

  .rg-home .rg-mobile-menu {
    position: relative;
    display: block;
  }

  .rg-home .rg-mobile-menu summary {
    padding: 12px 16px;
    cursor: pointer;
  }

  .rg-home .rg-mobile-menu nav {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    z-index: 5;
    display: grid;
    gap: 4px;
    min-width: 240px;
    padding: 12px;
    background: var(--rg-navy);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 6px;
  }

  .rg-home .rg-mobile-menu nav a {
    padding: 10px 12px;
    text-decoration: none;
  }

  .rg-home .rg-channel {
    padding: 28px;
  }

  .rg-home .rg-facts {
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 28px;
  }

  .rg-home .rg-money,
  .rg-home .rg-exclusion__inner {
    gap: 32px;
  }

  .rg-home .rg-contact {
    gap: 32px;
  }

  .rg-home .rg-contact__form {
    padding-left: 32px;
  }
}

/* MOBILE */

@media (max-width: 760px) {
  .rg-home .rg-container {
    width: calc(100% - 32px);
  }

  .rg-home .rg-urgent__inner {
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px 16px;
    text-align: center;
  }

  .rg-home .rg-navigation__inner {
    min-height: 76px;
  }

  .rg-home .rg-hero {
    min-height: 500px;
  }

  .rg-home .rg-hero h1 {
    font-size: 2.25rem;
  }

  .rg-home #rg-contact .rg-form-row {
    grid-template-columns: 1fr;
  }

  .rg-home .rg-hero__photo {
    object-position: 60% center;
  }

  .rg-home .rg-hero__overlay {
    background: rgba(5, 23, 46, 0.66);
  }

  .rg-home .rg-hero__inner {
    padding-top: 64px;
    padding-bottom: 56px;
  }

  .rg-home .rg-hero__copy {
    gap: 20px;
  }

  .rg-home .rg-hero__arrow {
    width: 44px;
    height: 44px;
  }

  .rg-home .rg-hero__arrow span {
    font-size: 30px;
  }

  .rg-home .rg-hero__arrow--prev {
    left: 8px;
  }

  .rg-home .rg-hero__arrow--next {
    right: 8px;
  }

  .rg-home .rg-hero .rg-hero__inner {
    width: calc(100% - 128px);
  }

  .rg-home .rg-support__panels,
  .rg-home .rg-facts,
  .rg-home .rg-money,
  .rg-home .rg-exclusion__inner,
  .rg-home .rg-contact {
    grid-template-columns: 1fr;
  }

  #rg-resources.rg-resources-photo {
    padding-block: 40px;
  }

  #rg-resources .rg-resources-photo__container {
    width: calc(100% - 32px);
  }

  #rg-resources .rg-resources-photo__image {
    height: 210px;
    margin-bottom: 20px;
  }

  #rg-resources .rg-resources-photo__services {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .rg-home .rg-channel {
    padding: 28px;
  }

  .rg-home .rg-assessment__inner,
  .rg-home .rg-section-heading--row {
    flex-direction: column;
    align-items: flex-start;
  }

  .rg-home .rg-facts__content {
    padding-left: 20px;
  }

  .rg-home .rg-money__image {
    height: auto;
    aspect-ratio: 520 / 332;
  }

  .rg-home .rg-contact__form {
    border-left: 0;
    border-top: 1px solid var(--rg-border);
    padding-top: 32px;
    padding-left: 0;
  }

  .rg-home .rg-crisis__inner {
    flex-direction: column;
    gap: 16px;
  }

  .rg-home .rg-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .rg-home .rg-footer__identity {
    grid-column: 1 / -1;
  }

  .rg-home .rg-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 420px) {
  .rg-home .rg-footer__grid {
    grid-template-columns: 1fr;
  }

  .rg-home .rg-actions .rg-button {
    width: 100%;
  }
}

/* Site landing.css sets a 560px split hero and a navy .rg-contact.
   These rules keep the new page inside .rg-home. */
.rg-home .rg-hero {
  height: auto;
  max-height: none;
  background: var(--rg-navy);
}

.rg-home .rg-section {
  padding-inline: 0;
}

.rg-home .rg-contact {
  width: auto;
  background: transparent;
  padding: 0;
  color: inherit;
}

.rg-home .rg-contact h2,
.rg-home .rg-contact h3 {
  color: var(--rg-ink);
}

.rg-home .rg-money__panel {
  width: 100%;
  height: 332px;
  border-radius: 10px;
  background: linear-gradient(160deg, #124a7d 0%, #07376b 55%, #091727 100%);
}

.rg-home #rg-contact .rg-consent {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  height: auto;
  max-height: none;
  overflow: visible;
  color: var(--rg-muted);
}

.rg-home #rg-contact .rg-consent span {
  min-width: 0;
  overflow: visible;
  white-space: normal;
}

.rg-home .rg-consent input {
  margin-top: 4px;
  flex: 0 0 auto;
}

@media (max-width: 760px) {
  .rg-home .rg-money__panel {
    height: auto;
    aspect-ratio: 520 / 332;
  }
}

/* body.rg-public h2/h3 is (0,1,2) and was painting these headings dark.
   Prefixing body.rg-public raises this to (0,3,2) so white wins on the blue bands. */
body.rg-public .rg-home .rg-channel h3,
body.rg-public .rg-home .rg-assessment h2,
body.rg-public .rg-home .rg-exclusion h2,
body.rg-public .rg-home .rg-guidance h3 {
  color: #fff;
}

body.rg-public .rg-home .rg-crisis p,
body.rg-public .rg-home .rg-crisis a {
  color: #fff;
}
