/* Accueil fidèle à la maquette fournie le 20 septembre 2026. */
body.rd-home {
  --home-gold: #e8c67a;
  --home-gold-soft: #b9954b;
  --home-ink: #050b0f;
  min-height: 100dvh;
  margin: 0;
  background: #02070a;
  color: #f6edd9;
}
body.rd-home .topbar { display: none !important; }
body.rd-home .skip { z-index: 500; }
body.rd-home:not(.rd-archive-open) { overflow: hidden; }

/* Bandeau d'événements */
body.rd-home .beta-banner.rd-event-strip {
  position: relative;
  inset: auto;
  z-index: 80;
  height: 61px;
  min-height: 61px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid rgba(179, 214, 230, .34);
  background:
    linear-gradient(90deg, rgba(5, 18, 23, .98), rgba(9, 29, 36, .94) 50%, rgba(5, 17, 22, .98)),
    url('/assets/ui/stone.webp');
  box-shadow: 0 6px 24px rgba(0, 0, 0, .52), inset 0 -1px rgba(225, 192, 116, .17);
}
.rd-event-strip-inner {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: minmax(170px, .7fr) minmax(180px, .85fr) minmax(180px, .85fr) minmax(390px, 1.45fr) minmax(235px, 1fr);
  grid-template-areas: 'title news beta clock optin';
  gap: 0 8px;
  align-items: stretch;
  padding-inline: clamp(16px, 2.4vw, 40px);
}
.rd-event-strip-title,
.rd-event-chip,
.rd-event-optin {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 7px 16px;
  border-right: 1px solid rgba(178, 203, 211, .22);
  color: #e9e0cb;
  text-decoration: none;
}
.rd-event-strip-title {
  grid-area: title;
  padding-left: 0;
  color: #e8d5a4;
  font: 600 .72rem/1.2 var(--display, Georgia, serif);
  letter-spacing: .12em;
  white-space: nowrap;
}
.rd-event-strip-title > span { color: var(--home-gold); font-size: 1.2rem; }
.rd-event-chip > span:not(.rd-event-icon),
.rd-event-optin > span:not(:first-child) { min-width: 0; display: grid; gap: 2px; }
.rd-event-chip { background: transparent !important; box-shadow: none !important; }
.rd-event-chip--news { grid-area: news; }
.rd-event-chip--beta { grid-area: beta; }
.rd-event-optin { background: linear-gradient(90deg, transparent, rgba(125, 23, 21, .34)) !important; box-shadow: none !important; }
.rd-event-chip strong,
.rd-event-optin strong {
  overflow: hidden;
  color: #fff8e9;
  font: 600 .78rem/1.15 var(--display, Georgia, serif);
  white-space: nowrap;
  text-overflow: ellipsis;
}
.rd-event-chip small,
.rd-event-optin small {
  overflow: hidden;
  color: #aebdc2;
  font-size: .62rem;
  line-height: 1.15;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.rd-event-icon {
  flex: 0 0 37px;
  width: 37px;
  height: 37px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(238, 205, 128, .34);
  background: rgba(7, 13, 17, .72);
  box-shadow: inset 0 0 18px currentColor, 0 0 18px rgba(0, 0, 0, .3);
  color: #7cf5a2;
  font-size: 1.18rem;
}
.rd-event-icon--blue { color: #50aee7; }
.rd-event-icon--gold { color: #e7bd56; }
.beta-banner .rd-event-chip--clock {
  grid-area: clock;
  position: relative;
  display: grid;
  grid-template-columns: 37px minmax(132px, 1fr) 176px;
  gap: 10px;
  padding-inline: 12px;
}
.rd-event-chip--clock > span:nth-child(2) { align-content: center; }
.rd-event-chip--clock > span:nth-child(2) strong { font-size: .76rem; letter-spacing: 0; }
.rd-strip-clock { width: 176px; min-width: 176px; margin-left: 0; }
.rd-strip-clock .banner-countdown-values {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
.rd-strip-clock .banner-countdown-unit {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: center;
  font-variant-numeric: tabular-nums;
}
.rd-strip-clock .banner-countdown-unit:not(:last-child)::after { content: none; }
.rd-strip-clock .banner-countdown-unit strong { font-size: 1rem; line-height: 1; }
.rd-strip-clock .banner-countdown-unit span { margin-top: 4px; color: #c8d3d6; font-size: .5rem; line-height: 1; letter-spacing: .03em; white-space: nowrap; }
.rd-strip-clock .banner-countdown-message { color: #d7bd82; font-size: .6rem; white-space: nowrap; }
.rd-event-optin {
  grid-area: optin;
  justify-content: flex-end;
  border-right: 0;
  background: linear-gradient(90deg, transparent, rgba(125, 23, 21, .26));
}
.rd-event-optin > span:first-child { color: #f3d697; font-size: 1.25rem; }
.rd-event-optin b { color: #f1d48d; font-size: 1.15rem; }
.rd-event-chip:hover,
.rd-event-chip:focus-visible,
.rd-event-optin:hover,
.rd-event-optin:focus-visible { background-color: rgba(119, 162, 181, .1); outline: none; }

/* Composition principale */
body.rd-home .rd-home-dashboard.rd-home-mockup {
  position: relative;
  width: 100%;
  max-width: none;
  height: calc(100dvh - 61px);
  min-height: 0;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-rows: minmax(330px, 44.8%) minmax(320px, 44.8%) minmax(60px, 10.4%);
  gap: 0;
  overflow: hidden;
  background: #04090c;
}
body.rd-home .rd-home-dashboard::before { display: none; }

/* Panorama et emblèmes de faction */
body.rd-home .rd-home-hero {
  position: relative;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  place-items: center;
  padding: 10px clamp(126px, 10vw, 174px) 14px;
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(180deg, rgba(3, 9, 13, .04), rgba(3, 9, 13, .09) 64%, rgba(3, 8, 11, .7)),
    url('/assets/redesign/world-of-warcraft-forever-home-hero-v2.webp') center 27% / cover no-repeat;
  box-shadow: inset 0 1px rgba(221, 188, 115, .2), inset 0 -1px rgba(226, 195, 121, .3);
  isolation: isolate;
  overflow: hidden;
}
body.rd-home .rd-home-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(ellipse 38% 94% at 4% 51%, rgba(35, 124, 236, .27), transparent 69%),
    radial-gradient(ellipse 38% 94% at 96% 51%, rgba(220, 43, 39, .24), transparent 69%),
    linear-gradient(90deg, rgba(2, 8, 12, .22), transparent 23%, transparent 77%, rgba(4, 6, 9, .24));
}
.rd-hero-standard {
  position: absolute;
  top: 42px;
  z-index: 1;
  width: clamp(88px, 8.6vw, 136px);
  aspect-ratio: 1 / 2;
  background-image: url('/assets/ui/faction-standards.webp');
  background-repeat: no-repeat;
  background-size: 200% 100%;
  filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .72));
  opacity: .96;
  pointer-events: none;
}
.rd-hero-standard--alliance {
  left: clamp(18px, 2.5vw, 42px);
  background-position: left center;
  filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .72)) drop-shadow(0 0 34px rgba(40, 129, 242, .5));
}
.rd-hero-standard--horde {
  right: clamp(18px, 2.5vw, 42px);
  background-position: right center;
  filter: drop-shadow(0 18px 18px rgba(0, 0, 0, .72)) drop-shadow(0 0 34px rgba(222, 49, 43, .46));
}
.rd-hero-center {
  position: relative;
  z-index: 3;
  width: min(920px, 72vw);
  display: grid;
  justify-items: center;
  text-align: center;
  transform: translateY(-2px);
}
.rd-hero-logo {
  position: relative;
  width: min(545px, 54vw);
  min-height: 147px;
  display: grid;
  align-content: center;
  justify-items: center;
  padding: 27px 86px 23px;
  color: #f0d49a;
  text-shadow: 0 3px 2px #000, 0 0 15px rgba(69, 162, 209, .42);
  background:
    radial-gradient(circle at 50% 34%, rgba(57, 146, 197, .42), rgba(5, 18, 27, .72) 29%, transparent 49%),
    linear-gradient(90deg, transparent, rgba(10, 18, 23, .78) 20%, rgba(8, 17, 23, .84) 80%, transparent);
  border-top: 2px solid rgba(224, 188, 101, .67);
  border-bottom: 2px solid rgba(224, 188, 101, .62);
  box-shadow: inset 0 0 42px rgba(55, 145, 196, .12);
  filter: drop-shadow(0 8px 10px rgba(0,0,0,.72));
}
.rd-hero-logo::before,
.rd-hero-logo::after {
  content: '';
  position: absolute;
  top: 17px;
  z-index: 2;
  width: 112px;
  height: 112px;
  background: url('/assets/ui/gold-dragon.webp') center / contain no-repeat;
  opacity: .95;
}
.rd-hero-logo::before { left: -46px; }
.rd-hero-logo::after { right: -46px; transform: scaleX(-1); }
.rd-hero-logo small {
  color: #d7bd7a;
  font: 600 .52rem/1 var(--display, Georgia, serif);
  letter-spacing: .28em;
}
.rd-hero-logo strong {
  color: #f2d292;
  font: 700 clamp(2.7rem, 4.4vw, 4.4rem)/.9 var(--display, Georgia, serif);
  letter-spacing: -.075em;
  white-space: nowrap;
}
.rd-hero-logo strong > span { color: #7fd8ff; text-shadow: 0 2px 2px #000, 0 0 18px rgba(70, 180, 233, .62); }
.rd-hero-logo strong > em { color: #bfeaff; font-size: .63em; font-style: normal; letter-spacing: -.03em; }
.rd-hero-logo b {
  width: 92%;
  margin-top: 8px;
  padding-top: 6px;
  border-top: 1px solid rgba(224, 188, 101, .55);
  color: #e6c781;
  font: 600 .64rem/1 var(--display, Georgia, serif);
  letter-spacing: .18em;
}
body.rd-home .rd-home-hero h1 {
  margin: 3px 0 4px;
  color: #f8f5eb;
  font: 500 clamp(2rem, 3vw, 3rem)/1.02 var(--display, Georgia, serif);
  letter-spacing: .01em;
  text-shadow: 0 2px 8px #000;
  text-transform: none;
  white-space: nowrap;
}
.rd-hero-promise {
  margin: 0 0 13px !important;
  color: #c2d8df !important;
  font: 600 clamp(.55rem, .72vw, .72rem)/1.2 var(--display, Georgia, serif) !important;
  letter-spacing: .17em;
  text-shadow: 0 2px 5px #000;
}
.rd-hero-promise i { margin-inline: 8px; color: #dfc478; font-style: normal; font-size: .62em; }
.rd-hero-cta {
  min-width: 322px;
  min-height: 61px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 10px 36px;
  border: 1px solid #f0cd70;
  outline: 3px double rgba(122, 68, 31, .94);
  outline-offset: -7px;
  clip-path: polygon(5% 0,95% 0,100% 24%,96% 50%,100% 76%,95% 100%,5% 100%,0 76%,4% 50%,0 24%);
  background: linear-gradient(#9d211d, #6d100e);
  box-shadow: 0 7px 18px rgba(0, 0, 0, .58), inset 0 0 22px rgba(247, 173, 91, .22);
  color: #ffe8b3;
  font: 600 1.27rem/1 var(--display, Georgia, serif);
  text-decoration: none;
  text-shadow: 0 2px 2px #3a0604;
  text-transform: none;
}
.rd-hero-cta:hover,
.rd-hero-cta:focus-visible { background: linear-gradient(#b72b25, #7d1210); outline-color: #efd17f; transform: translateY(-1px); }
body.rd-home .rd-event-card {
  position: absolute;
  right: clamp(150px, 11vw, 184px);
  bottom: 22px;
  z-index: 4;
  width: clamp(250px, 21vw, 330px);
  min-height: 89px;
  display: grid;
  place-content: center;
  justify-items: center;
  padding: 14px 24px;
  border: 1px solid rgba(231, 198, 114, .76);
  border-radius: 0;
  clip-path: polygon(4% 0,96% 0,100% 14%,100% 86%,96% 100%,4% 100%,0 86%,0 14%);
  background: rgba(5, 16, 21, .85);
  box-shadow: inset 0 0 22px rgba(215, 173, 77, .08), 0 8px 20px rgba(0,0,0,.45);
  color: #f4dfab;
  text-align: center;
  text-decoration: none;
}
body.rd-home .rd-event-card small { color: #c9bc9e; font-size: .62rem; letter-spacing: .2em; }
body.rd-home .rd-event-card strong { margin: 5px 0 2px; color: #f2d490; font: 600 1.08rem/1.1 var(--display, Georgia, serif); }
body.rd-home .rd-event-card span { color: #aabdc4; font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; }

/* Dix cartes et panneau d'actualité */
body.rd-home .rd-home-workspace {
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 3.42fr) minmax(290px, 1fr);
  grid-template-rows: minmax(0, 1fr);
  gap: clamp(10px, .9vw, 14px);
  padding: 0 clamp(22px, 2.55vw, 41px);
  background:
    radial-gradient(circle at 8% 48%, rgba(41, 132, 224, .05), transparent 34%),
    radial-gradient(circle at 92% 48%, rgba(203, 48, 42, .045), transparent 34%),
    linear-gradient(180deg, #050b0e, #03080b);
}
body.rd-home .rd-module-viewport { min-width: 0; min-height: 0; }
body.rd-home .rd-module-grid {
  height: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: clamp(8px, .72vw, 11px);
}
body.rd-home .rd-module-card:nth-child(9) { grid-column: 1 / 3; }
body.rd-home .rd-module-card:nth-child(10) { grid-column: 3; }
body.rd-home .rd-module-card:nth-child(11) { grid-column: 4; }
body.rd-home .rd-module-card {
  min-height: 0;
  border: 0;
  border-radius: 4px;
  background: #071116;
  box-shadow: 0 2px 7px rgba(0,0,0,.5);
  overflow: hidden;
}
body.rd-home .rd-module-card img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: fill;
  filter: none;
  transition: transform 220ms ease, filter 220ms ease;
}
body.rd-home .rd-module-card:hover,
body.rd-home .rd-module-card:focus-visible {
  outline: 2px solid #f2cf75;
  outline-offset: -2px;
  box-shadow: 0 0 18px rgba(232, 198, 116, .26);
}
body.rd-home .rd-module-card:hover img,
body.rd-home .rd-module-card:focus-visible img { transform: scale(1.012); filter: brightness(1.07); }
body.rd-home .rd-module-card--map-guide {
  isolation: isolate;
  display: grid;
  place-items: center;
  border: 1px solid rgba(178, 210, 222, .72);
  box-shadow: inset 0 0 0 1px rgba(224, 190, 105, .15), 0 2px 7px rgba(0,0,0,.5);
}
body.rd-home .rd-module-card--map-guide::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(2, 9, 13, .12), rgba(2, 8, 12, .74));
  pointer-events: none;
}
body.rd-home .rd-module-card--map-guide img { position: absolute; inset: 0 auto 0 0; width: 150%; max-width: none; height: 100%; object-fit: fill; }
body.rd-home .rd-map-guide-emblem,
body.rd-home .rd-module-card--map-guide > strong,
body.rd-home .rd-map-guide-arrow { position: relative; z-index: 2; color: #f3d78e; text-shadow: 0 2px 5px #000; }
body.rd-home .rd-map-guide-emblem { align-self: end; font-size: clamp(1.2rem, 1.8vw, 2rem); line-height: 1; }
body.rd-home .rd-module-card--map-guide > strong { align-self: start; margin-top: 3px; color: #f4eee0; font: 600 clamp(.78rem, 1.12vw, 1.25rem)/1 var(--display, Georgia, serif); }
body.rd-home .rd-map-guide-arrow {
  position: absolute;
  right: 10px;
  bottom: 9px;
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 2px solid #e4ca88;
  border-radius: 50%;
  font: 700 1.45rem/1 Georgia, serif;
}
body.rd-home .rd-module-pagination { display: none; }

body.rd-home .rd-home-news {
  min-height: 0;
  display: grid;
  grid-template-rows: 46px minmax(0, 1fr);
  gap: 0;
  padding: 0 15px 9px;
  border: 1px solid rgba(161, 198, 210, .48);
  border-radius: 4px;
  background: rgba(5, 18, 23, .9);
  box-shadow: inset 0 0 35px rgba(26, 103, 136, .1), 0 8px 25px rgba(0,0,0,.35);
  overflow: hidden;
}
.rd-home-news > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-bottom: 1px solid rgba(160, 193, 202, .26);
}
.rd-home-news > header strong { color: #e8d4a1; font: 600 .73rem/1 var(--display, Georgia, serif); letter-spacing: .08em; }
.rd-home-news > header strong span { color: #e0bd6d; }
.rd-home-news > header .rd-open-archive { min-height: 30px; color: #99dfff; font-size: .62rem; text-decoration: none; }
.rd-home-news > nav { min-height: 0; display: grid; grid-template-rows: repeat(5, minmax(0, 1fr)); }
.rd-news-item {
  min-height: 0;
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  padding: 6px 0;
  border-bottom: 1px solid rgba(160, 193, 202, .18);
  color: #eee5d3;
  text-decoration: none;
}
.rd-news-item:last-child { border-bottom: 0; }
.rd-news-item img { width: 82px; height: 100%; max-height: 51px; object-fit: cover; border: 1px solid rgba(145, 190, 208, .32); }
.rd-news-item > span { min-width: 0; display: grid; gap: 2px; }
.rd-news-item strong { overflow: hidden; color: #f5ecdc; font: 600 .73rem/1.05 var(--display, Georgia, serif); white-space: nowrap; text-overflow: ellipsis; }
.rd-news-item small { overflow: hidden; color: #aab8bc; font-size: .58rem; white-space: nowrap; text-overflow: ellipsis; }
.rd-news-item time { color: #7f9299; font-size: .52rem; }
.rd-news-item:hover strong,
.rd-news-item:focus-visible strong { color: #f1cf79; }

/* Pied de page */
body.rd-home .rd-home-footer {
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 28px clamp(26px, 2.6vw, 42px) 10px;
  border: 0;
  background: linear-gradient(180deg, #03080a, #061016);
  box-shadow: inset 0 1px rgba(198, 167, 96, .38);
  color: #9ba9ac;
  font-size: .58rem;
  letter-spacing: .12em;
}
.rd-footer-brand { color: #d9b96e; font: 600 1rem/1 var(--display, Georgia, serif); text-decoration: none; }
.rd-footer-brand span { margin-left: 22px; padding-left: 22px; border-left: 1px solid rgba(218, 190, 126, .25); color: #89999d; font: 500 .57rem/1 sans-serif; letter-spacing: .1em; }
body.rd-home .rd-home-footer nav { display: flex; align-items: center; gap: 18px; }
body.rd-home .rd-home-footer nav > * { min-height: 28px; display: inline-flex; align-items: center; border: 0; background: none; color: #91a1a5; font: inherit; text-decoration: none; cursor: pointer; }
body.rd-home .rd-home-footer nav > * + *::before { content: ''; width: 1px; height: 12px; margin-right: 18px; background: rgba(177, 193, 197, .25); }
body.rd-home .rd-home-footer > span { justify-self: end; color: #c7b17d; }
body.rd-home .rd-home-footer > span b { margin-left: 12px; color: #e1c57a; font-size: 1rem; }

/* Écrans intermédiaires */
@media (max-width: 1240px) and (min-width: 1001px) {
  .rd-event-strip-inner {
    grid-template-columns: 145px minmax(140px, .8fr) minmax(405px, 1.5fr) minmax(195px, .9fr);
    grid-template-areas: 'title news clock optin';
    padding-inline: 14px;
  }
  body.rd-home .beta-banner .rd-event-chip--beta { display: none; }
}

@media (max-width: 1180px) {
  .rd-event-strip-inner {
    grid-template-columns: 145px minmax(140px, .8fr) minmax(405px, 1.5fr) minmax(195px, .9fr);
    grid-template-areas: 'title news clock optin';
    padding-inline: 14px;
  }
  body.rd-home .beta-banner .rd-event-chip--beta { display: none; }
  body.rd-home .rd-home-hero { padding-inline: 110px; }
  .rd-hero-standard { width: 92px; top: 52px; opacity: .9; }
  body.rd-home .rd-event-card { right: 112px; width: 255px; }
  body.rd-home .rd-home-workspace { grid-template-columns: minmax(0, 1fr) 260px; padding-inline: 18px; }
  .rd-news-item { grid-template-columns: 68px minmax(0, 1fr); }
  .rd-news-item img { width: 68px; }
  .rd-footer-brand span { display: none; }
}

@media (max-width: 1000px) and (min-width: 768px) {
  .rd-event-strip-inner {
    grid-template-columns: 125px minmax(390px, 1fr) minmax(175px, .8fr);
    grid-template-areas: 'title clock optin';
  }
  body.rd-home .beta-banner .rd-event-chip--news,
  body.rd-home .beta-banner .rd-event-chip--beta { display: none; }
  .rd-event-strip-title { overflow: hidden; font-size: 0; }
  .rd-event-strip-title::after { content: 'ÉVÉNEMENTS'; font-size: .66rem; }
  .rd-event-optin { justify-content: center; gap: 7px; padding-inline: 9px; }
  .rd-event-optin > span:first-child,
  .rd-event-optin small { display: none; }
  .rd-event-optin strong { overflow: visible; font-size: 0; }
  .rd-event-optin strong::after { content: 'BÊTA'; font-size: .7rem; }
  .rd-event-optin b { font-size: 1rem; }
}

@media (max-width: 780px) and (min-width: 768px) {
  body.rd-home .beta-banner .rd-event-optin { grid-area: optin; }
}

/* Téléphone : même identité, quatre cartes par écran et balayage. */
@media (max-width: 767px) {
  body.rd-home .beta-banner.rd-event-strip { height: 54px; min-height: 54px; }
  .rd-event-strip-inner { grid-template-columns: minmax(0, 1fr) auto; padding-inline: 8px; }
  .rd-event-strip-title { grid-column: 1; display: flex !important; padding: 6px 8px; border: 0; font-size: 0; }
  .rd-event-strip-title::after { content: 'WOW4EVER.FR'; font-size: .68rem; }
  .rd-event-chip { display: none !important; }
  .rd-event-icon { flex-basis: 34px; width: 34px; height: 34px; }
  .rd-event-optin { grid-column: 2; padding: 6px 9px; }
  .rd-event-optin > span:first-child,
  .rd-event-optin small { display: none; }
  .rd-event-optin strong { font-size: 0; }
  .rd-event-optin strong::after { content: 'BÊTA'; font-size: .68rem; }
  body.rd-home .rd-home-dashboard.rd-home-mockup {
    height: calc(100dvh - 54px);
    grid-template-rows: minmax(205px, 28%) minmax(0, 1fr) 34px;
  }
  body.rd-home .rd-home-hero { padding: 6px 46px 8px; }
  body.rd-home .rd-home-hero::before {
    background:
      radial-gradient(ellipse 47% 88% at 0 50%, rgba(35, 124, 236, .25), transparent 73%),
      radial-gradient(ellipse 47% 88% at 100% 50%, rgba(220, 43, 39, .22), transparent 73%);
  }
  .rd-hero-standard { top: 34px; width: 44px; opacity: .94; }
  .rd-hero-standard--alliance { left: 3px; }
  .rd-hero-standard--horde { right: 3px; }
  .rd-hero-center { width: min(100%, 460px); transform: none; }
  .rd-hero-logo { width: min(292px, 82vw); min-height: 78px; padding: 13px 44px 11px; }
  .rd-hero-logo::before,
  .rd-hero-logo::after { top: 8px; width: 62px; height: 62px; }
  .rd-hero-logo::before { left: -20px; }
  .rd-hero-logo::after { right: -20px; }
  .rd-hero-logo small { font-size: .34rem; }
  .rd-hero-logo strong { font-size: clamp(1.62rem, 8.6vw, 2.35rem); }
  .rd-hero-logo b { margin-top: 3px; padding-top: 4px; font-size: .38rem; }
  body.rd-home .rd-home-hero h1 { margin: 3px 0 1px; font-size: clamp(1.27rem, 6.3vw, 1.72rem); }
  body.rd-home .rd-home-hero h1 { max-width: 315px; white-space: normal; line-height: .98; }
  .rd-hero-promise { margin-bottom: 6px !important; font-size: .38rem !important; letter-spacing: .11em; }
  .rd-hero-promise i { margin-inline: 3px; }
  .rd-hero-cta { min-width: 205px; min-height: 39px; padding: 7px 20px; font-size: .78rem; }
  body.rd-home .rd-event-card { display: none; }
  body.rd-home .rd-home-workspace {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto 16px minmax(0, 1fr);
    gap: 5px;
    padding: 6px 8px 0;
  }
  body.rd-home .rd-module-viewport { height: calc((100vw - 16px) * .344 + 6px); overflow: hidden; }
  body.rd-home .rd-module-grid {
    width: 300%;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 6px;
    transition: transform 260ms ease;
  }
  body.rd-home .rd-module-grid[data-mobile-page='0'] { transform: translateX(0); }
  body.rd-home .rd-module-grid[data-mobile-page='1'] { transform: translateX(-33.3333%); }
  body.rd-home .rd-module-grid[data-mobile-page='2'] { transform: translateX(-66.6667%); }
  body.rd-home .rd-module-card { border-radius: 3px; }
  body.rd-home .rd-module-card:nth-child(1) { grid-column: 1; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(2) { grid-column: 2; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(3) { grid-column: 1; grid-row: 2; }
  body.rd-home .rd-module-card:nth-child(4) { grid-column: 2; grid-row: 2; }
  body.rd-home .rd-module-card:nth-child(5) { grid-column: 3; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(6) { grid-column: 4; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(7) { grid-column: 3; grid-row: 2; }
  body.rd-home .rd-module-card:nth-child(8) { grid-column: 4; grid-row: 2; }
  body.rd-home .rd-module-card:nth-child(9) { grid-column: 5; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(10) { grid-column: 6; grid-row: 1; }
  body.rd-home .rd-module-card:nth-child(11) { grid-column: 5 / 7; grid-row: 2; }
  body.rd-home .rd-module-card img { object-fit: fill; }
  body.rd-home .rd-module-pagination { display: flex; justify-content: center; align-items: center; gap: 8px; }
  body.rd-home .rd-module-pagination button { width: 22px; height: 4px; min-height: 4px; padding: 0; border: 0; background: rgba(183, 199, 204, .3); }
  body.rd-home .rd-module-pagination button[aria-pressed='true'] { background: #e8c876; }
  body.rd-home .rd-home-news { grid-template-columns: minmax(0,1fr); grid-template-rows: 26px minmax(0,1fr); align-items: stretch; padding: 0 7px 4px; }
  .rd-home-news > header,
  .rd-home-news > nav { grid-column: 1; }
  .rd-home-news > header strong { font-size: .52rem; }
  .rd-home-news > header .rd-open-archive { min-height: 24px; font-size: .52rem; }
  .rd-home-news > nav { grid-template-columns: 1fr; grid-template-rows: repeat(5, minmax(0,1fr)); gap: 0; }
  .rd-news-item { grid-template-columns: 48px minmax(0,1fr); gap: 7px; padding: 4px 0; border-bottom: 1px solid rgba(160, 193, 202, .16); }
  .rd-news-item img { width: 48px; max-height: 40px; }
  .rd-news-item strong { font-size: .58rem; }
  .rd-news-item small { font-size: .47rem; }
  .rd-news-item time { display: none; }
  body.rd-home .rd-home-footer { width: 100%; height: 100%; align-self: stretch; margin: 0; grid-template-columns: 1fr auto; gap: 8px; padding: 3px 9px; font-size: .48rem; }
  .rd-footer-brand { font-size: .72rem; }
  body.rd-home .rd-home-footer nav { gap: 8px; }
  body.rd-home .rd-home-footer nav > * + *::before { margin-right: 8px; }
  body.rd-home .rd-home-footer nav a:nth-of-type(n+2),
  body.rd-home .rd-home-footer > span { display: none; }
}

@media (max-height: 760px) and (min-width: 768px) {
  body.rd-home .rd-home-dashboard.rd-home-mockup { grid-template-rows: 44% 45% 11%; }
  .rd-hero-logo { min-height: 114px; padding-block: 18px 16px; }
  .rd-hero-logo strong { font-size: 3.15rem; }
  body.rd-home .rd-home-hero h1 { font-size: 2rem; }
  .rd-hero-promise { margin-bottom: 8px !important; }
  .rd-hero-cta { min-height: 48px; font-size: 1rem; }
  body.rd-home .rd-event-card { min-height: 70px; bottom: 12px; }
  .rd-hero-standard { top: 24px; width: 92px; }
  body.rd-home .rd-home-footer { padding-top: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  body.rd-home .rd-module-card img,
  body.rd-home .rd-module-grid { transition: none; }
}

/* Roster access reuses the grimoire frame and an existing authorized scene. */
body.rd-home .rd-module-card--roster { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; border: 1px solid #8ca3a7; background: #081418; color: #f6edd9; }
body.rd-home .rd-module-card--roster img { position: absolute; inset: 0; object-fit: cover; filter: brightness(.33) saturate(.8); }
.rd-module-card--roster > strong, .rd-roster-emblem, .rd-roster-arrow { position: relative; z-index: 1; }
.rd-module-card--roster > strong { max-width: calc(100% - 38px); text-align: center; font: 600 clamp(.72rem, 1.03vw, 1rem)/1.1 var(--display, Georgia, serif); }
.rd-roster-emblem { color: #f2d393; font-size: clamp(24px, 3vw, 40px); line-height: 1; }
.rd-roster-arrow { position: absolute; right: 9px; bottom: 9px; width: 22px; height: 22px; display: grid; place-items: center; border: 1px solid #d3b775; border-radius: 50%; color: #f2d393; font-size: 1.25rem; line-height: 1; }
@media (max-width: 767px) {
  body.rd-home .rd-module-card--roster { flex-direction: row; gap: 12px; }
  .rd-roster-emblem { font-size: 26px; }
  .rd-roster-arrow { width: 18px; height: 18px; right: 7px; bottom: 7px; }
  .rd-module-card--roster > strong { font-size: .84rem; }
}
