.home-rir-banner,
.home-rir-promo {
  font-family: Epilogue, Arial, sans-serif;
}

.home-rir-banner {
  background: transparent;
  color: #fff;
  margin: 8px 14px 0;
  position: relative;
  z-index: 3;
}

.home-rir-banner__inner {
  align-items: center;
  background: linear-gradient(105deg, #081c2d, #123d59);
  border: 1px solid rgba(246, 201, 67, .3);
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(16, 37, 54, .12);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1180px;
  min-height: 72px;
  padding: 10px 18px;
}

.home-rir-banner__icon {
  align-items: center;
  background: rgba(246, 201, 67, .14);
  border: 1px solid rgba(246, 201, 67, .28);
  border-radius: 12px;
  color: #f6c943;
  display: inline-flex;
  flex: 0 0 auto;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.home-rir-banner__icon svg { height: 21px; width: 21px; }

.home-rir-banner__copy {
  display: grid;
  flex: 1 1 auto;
  gap: 1px;
}

.home-rir-banner__eyebrow {
  color: #f6c943 !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.home-rir-banner__copy strong {
  color: #fff;
  font-size: 16px;
  font-weight: 900;
}

.home-rir-banner__copy > span:last-child {
  color: rgba(255,255,255,.8);
  font-size: 12px;
  font-weight: 600;
}

.home-rir-link,
.home-rir-link:link,
.home-rir-link:visited {
  align-items: center;
  background: #f6c943;
  border-radius: 999px;
  color: #09273a;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  justify-content: center;
  min-height: 44px;
  padding: 10px 18px;
  text-decoration: none;
}

.home-rir-link:hover { background: #ffe07a; color: #09273a; }
.home-rir-link:focus-visible,
.home-rir-promo a:focus-visible,
.premium-footer__campaign:focus-visible {
  outline: 3px solid #f6c943;
  outline-offset: 3px;
}

.home-rir-promo {
  background: linear-gradient(135deg, #edf6fa, #fff7df);
  padding: clamp(64px, 8vw, 112px) 24px;
}

.home-rir-promo__inner {
  align-items: center;
  display: grid;
  gap: clamp(28px, 5vw, 72px);
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
  margin: 0 auto;
  max-width: 1180px;
}

.home-rir-promo__eyebrow {
  color: #2f7bb6;
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .13em;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.home-rir-promo h2 {
  color: #102536;
  font-size: clamp(34px, 4.4vw, 60px);
  letter-spacing: -.055em;
  line-height: .98;
  margin: 0;
}

.home-rir-promo p {
  color: #486172;
  font-size: clamp(16px, 1.5vw, 19px);
  line-height: 1.6;
  margin: 18px 0 0;
  max-width: 620px;
}

.home-rir-promo__benefits {
  display: grid;
  gap: 9px;
  list-style: none;
  margin: 24px 0;
  padding: 0;
}

.home-rir-promo__benefits li {
  align-items: flex-start;
  color: #28495d;
  display: flex;
  font-size: 14px;
  font-weight: 700;
  gap: 9px;
  line-height: 1.45;
}

.home-rir-promo__benefits li::before { color: #2f7bb6; content: "✓"; font-weight: 900; }

.home-rir-promo__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.home-rir-promo__actions a { min-height: 50px; }

.home-rir-promo__cta,
.home-rir-promo__cta:link,
.home-rir-promo__cta:visited {
  align-items: center;
  background: #09273a;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  justify-content: center;
  padding: 12px 20px;
  text-decoration: none;
}

.home-rir-promo__cta:hover { background: #123c55; color: #fff; }
.home-rir-promo__cta--secondary,
.home-rir-promo__cta--secondary:link,
.home-rir-promo__cta--secondary:visited { background: #f6c943; color: #09273a; }
.home-rir-promo__cta--secondary:hover { background: #ffe07a; color: #09273a; }

.home-rir-promo__notice {
  color: #627783;
  font-size: 12px;
  line-height: 1.5;
  margin: 16px 0 0;
}

.home-rir-promo__visual { min-width: 0; order: -1; }

.home-rir-promo__media {
  border-radius: 28px;
  box-shadow: 0 20px 56px rgba(16,37,54,.16);
  margin: 0;
  overflow: hidden;
}

.home-rir-promo__media img {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  width: 100%;
}

.home-rir-promo__image-notice {
  color: #627783;
  font-size: 12px;
  line-height: 1.5;
  margin: 12px 4px 0;
}

.premium-footer__campaign,
.premium-footer__campaign:link,
.premium-footer__campaign:visited {
  color: #f7d86c;
  font-size: 13px;
  font-weight: 900;
  text-decoration: none;
}

.premium-footer__campaign:hover { color: #fff; }

@media (max-width: 900px) {
  .home-rir-promo__inner { grid-template-columns: 1fr; }
  .home-rir-promo__visual { order: 2; }
}

@media (max-width: 680px) {
  .home-rir-banner { margin: 0 8px; }
  .home-rir-banner__inner { align-items: flex-start; flex-wrap: wrap; gap: 10px 12px; min-height: 0; padding: 12px 14px; }
  .home-rir-banner__icon { height: 34px; width: 34px; }
  .home-rir-banner__copy { flex: 1 1 calc(100% - 48px); }
  .home-rir-banner__copy strong { font-size: 15px; }
  .home-rir-banner__copy > span:last-child { font-size: 12px; }
  .home-rir-banner__inner .home-rir-link { width: 100%; }
  .home-rir-promo { padding: 56px 16px; }
  .home-rir-promo__inner { gap: 24px; }
  .home-rir-promo__visual { order: 0; }
  .home-rir-promo__content { display: contents; }
  .home-rir-promo__content > .home-rir-promo__eyebrow,
  .home-rir-promo__content > h2,
  .home-rir-promo__content > p { order: -2; }
  .home-rir-promo__benefits { order: 1; }
  .home-rir-promo__actions { order: 2; }
  .home-rir-promo__notice { order: 3; }
  .home-rir-promo__actions a { width: 100%; }
}
