.rr-home-design {
  --rr-paper: #f7f4ed;
  --rr-ink: #173f42;
  --rr-rust: #b8513d;
  --rr-muted: #65716b;
  --rr-pale: #e8ede6;
  --rr-line: #d6dad0;
  background: var(--rr-paper);
  color: var(--rr-ink);
  font-family: "Inter", sans-serif;
  letter-spacing: 0;
}

.rr-home-design .header {
  position: relative !important;
  inset: auto;
  min-height: 108px;
  padding: 20px 0 0;
  background: var(--rr-paper);
  color: var(--rr-ink);
  z-index: 20;
}

.rr-home-design .header::after {
  position: absolute;
  right: 0;
  bottom: 13px;
  left: 0;
  width: min(1296px, calc(100% - 48px));
  height: 1px;
  margin: auto;
  background: var(--rr-line);
  content: "";
}

.rr-home-design .header .header-container {
  width: min(1296px, calc(100% - 48px)) !important;
  max-width: none !important;
  min-height: 60px;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.rr-home-design .home-brand {
  gap: 12px;
  color: var(--rr-ink);
  text-decoration: none;
}

.rr-home-design .home-brand__mark {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border-radius: 3px;
  background: var(--rr-ink);
  color: var(--rr-paper);
  font: 28px/1 "DM Serif Display", Georgia, serif;
}

.rr-home-design .home-brand__copy {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.rr-home-design .home-brand__copy strong { font-size: 16px; font-weight: 600; }
.rr-home-design .home-brand__copy small { color: var(--rr-muted); font-size: 9px; }

.rr-home-design .header .navmenu a,
.rr-home-design .header .navmenu a:focus {
  color: var(--rr-ink);
  font: 500 12px/1.2 "Inter", sans-serif;
  text-decoration: none;
}

.rr-home-design .header .navmenu a::after { display: none; }
.rr-home-design .header .navmenu .active,
.rr-home-design .header .navmenu li:hover > a { color: var(--rr-rust); }
.rr-home-design .header .nav-link__meta { display: none; }

.rr-home-design .header .navmenu li:last-child a {
  min-height: 38px;
  padding: 0 20px;
  border: 1px solid var(--rr-line);
  border-radius: 3px;
}

.rr-home-design .header .mobile-nav-toggle { color: var(--rr-ink); }
.rr-home,
.rr-home-footer { font-family: "Inter", sans-serif; letter-spacing: 0; }

.rr-home h1,
.rr-home h2,
.rr-home h3,
.rr-home-footer__brand > p {
  color: var(--rr-ink);
  font-family: "DM Serif Display", Georgia, serif;
  font-weight: 400;
  letter-spacing: 0;
}

.rr-home-shell { width: min(1296px, calc(100% - 48px)); margin: 0 auto; }
.rr-home-hero { padding: 28px 0 36px; background: var(--rr-paper); }

.rr-home-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: 38px;
  align-items: center;
}

.rr-home-hero__copy { padding: 24px 0; }
.rr-eyebrow { margin: 0; color: var(--rr-rust); font-size: 10px; font-weight: 600; line-height: 1.4; text-transform: uppercase; }
.rr-home-hero .rr-eyebrow { display: flex; align-items: center; gap: 10px; }
.rr-home-hero .rr-eyebrow span { width: 6px; height: 6px; border-radius: 50%; background: var(--rr-rust); }

.rr-home-hero h1 {
  margin: 24px 0 18px;
  font-size: 80px;
  line-height: 1.02;
}

.rr-home h1 em,
.rr-home h2 em { color: var(--rr-rust); font-style: normal; }
.rr-home-hero__role { margin: 0 0 10px; color: var(--rr-ink); font-size: 17px; font-weight: 500; }

.rr-home-hero__lead,
.rr-webwork__copy > p:not(.rr-eyebrow),
.rr-photography__intro > div:last-child > p,
.rr-community__copy > p:not(.rr-eyebrow),
.rr-creators__intro > p,
.rr-person > p,
.rr-contact-cta > .rr-home-shell > div:last-child > p {
  color: var(--rr-muted);
  font-size: 14px;
  line-height: 1.65;
}

.rr-home-hero__lead { max-width: 545px; margin: 0; }
.rr-home-actions { display: flex; flex-wrap: wrap; gap: 24px; align-items: center; margin-top: 24px; }

.rr-button,
.rr-text-link {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  gap: 12px;
  color: var(--rr-ink);
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
}

.rr-button { min-height: 52px; padding: 0 22px; border-radius: 3px; background: var(--rr-ink); color: var(--rr-paper); }
.rr-button:hover,
.rr-button:focus-visible { background: #245457; color: #fff; }
.rr-text-link:hover,
.rr-text-link:focus-visible { color: var(--rr-rust); }

.rr-home-hero__visual { position: relative; min-height: 604px; margin: 0; padding: 0 0 35px 48px; }
.rr-home-hero__visual > img { display: block; width: 100%; height: 548px; border-radius: 180px 3px 3px 3px; object-fit: cover; }

.rr-home-signature {
  position: absolute;
  bottom: 62px;
  left: 0;
  display: flex;
  width: 270px;
  min-height: 98px;
  align-items: center;
  gap: 14px;
  padding: 18px 22px;
  border-radius: 3px;
  background: var(--rr-ink);
  color: var(--rr-paper);
}

.rr-home-signature > span { font: italic 66px/1 "DM Serif Display", Georgia, serif; }
.rr-home-signature > small { font-size: 9px; line-height: 1.8; }
.rr-home-hero__caption { position: absolute; bottom: 7px; left: 48px; color: var(--rr-muted); font-size: 10px; }
.rr-home-hero__footnote { display: flex; justify-content: space-between; gap: 24px; margin-top: 18px; color: var(--rr-muted); font-size: 10px; }
.rr-home-hero__footnote a { color: var(--rr-ink); text-decoration: none; }

.rr-worlds { padding: 44px 0 55px; background: var(--rr-pale); }
.rr-worlds > .rr-home-shell > .rr-eyebrow { margin-bottom: 36px; }
.rr-worlds__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; }
.rr-world__top { display: flex; min-height: 26px; align-items: center; justify-content: space-between; color: var(--rr-ink); }
.rr-world__top i { font-size: 19px; }
.rr-world__top span { color: var(--rr-muted); font-size: 10px; }
.rr-world h3 { margin: 20px 0 14px; font-size: 27px; line-height: 1.2; }
.rr-world > p { min-height: 66px; margin: 0 0 14px; color: var(--rr-muted); font-size: 13px; line-height: 1.65; }
.rr-world .rr-text-link { font-size: 11px; }

.rr-webwork { padding: 88px 0 48px; background: var(--rr-paper); }
.rr-webwork__grid { display: grid; grid-template-columns: minmax(0, 444fr) minmax(0, 768fr); gap: 84px; align-items: center; }
.rr-webwork__copy > .rr-eyebrow { margin-bottom: 20px; }
.rr-webwork__copy h2,
.rr-community__copy h2 { margin: 0 0 18px; font-size: 52px; line-height: 1.08; }
.rr-webwork__copy > p:not(.rr-eyebrow) { margin: 0 0 14px; }
.rr-webwork__copy .rr-button { margin-top: 4px; }
.rr-webwork__concept { margin: 0; }

.rr-browser { min-height: 446px; padding: 24px; overflow: hidden; border-radius: 7px; background: #eae2d3; }
.rr-browser__bar { display: flex; height: 38px; align-items: center; gap: 6px; padding: 0 16px; border-bottom: 1px solid var(--rr-line); background: #fffdfa; }
.rr-browser__bar > span { width: 6px; height: 6px; border-radius: 50%; background: var(--rr-line); }
.rr-browser__bar small { flex: 1; color: var(--rr-muted); font-size: 7px; text-align: center; }
.rr-browser__nav { display: flex; justify-content: space-between; padding: 16px 20px; background: #fffdfa; color: var(--rr-ink); }
.rr-browser__nav strong { font: 16px "DM Serif Display", Georgia, serif; }
.rr-browser__nav span { font-size: 7px; }
.rr-browser__content { display: grid; min-height: 276px; grid-template-columns: 1fr 0.85fr; align-items: center; gap: 14px; padding: 0 20px 18px; background: #fffdfa; }
.rr-browser__content h3 { max-width: 290px; margin: 0 0 12px; font-size: 38px; line-height: 1.05; }
.rr-browser__content p { max-width: 280px; color: var(--rr-muted); font-size: 9px; line-height: 1.5; }
.rr-browser__content > div:first-child > span { display: inline-block; padding: 9px 12px; border-radius: 2px; background: var(--rr-ink); color: var(--rr-paper); font-size: 8px; }
.rr-browser__art { position: relative; height: 220px; overflow: hidden; border-radius: 48% 48% 0 0; background: var(--rr-pale); }
.rr-browser__art i { position: absolute; top: 12%; width: 68%; aspect-ratio: 1; border: 1px solid var(--rr-ink); border-radius: 50%; }
.rr-browser__art i:nth-child(1) { left: 10%; }
.rr-browser__art i:nth-child(2) { left: 22%; }
.rr-browser__art i:nth-child(3) { left: 34%; }
.rr-browser__art b { position: absolute; bottom: 13%; left: 10%; width: 25%; aspect-ratio: 1; border-radius: 50%; background: var(--rr-rust); }
.rr-webwork__concept figcaption { display: flex; justify-content: space-between; gap: 16px; margin-top: 14px; color: var(--rr-muted); font-size: 10px; }
.rr-webwork__concept figcaption span:last-child { color: var(--rr-ink); }
.rr-webwork__portals { display: grid; grid-template-columns: 1fr auto auto; gap: 32px; align-items: center; margin-top: 38px; padding-top: 34px; border-top: 1px solid var(--rr-line); color: var(--rr-muted); font-size: 11px; }
.rr-webwork__portals a { display: inline-flex; gap: 9px; align-items: center; color: var(--rr-ink); font-size: 12px; font-weight: 500; text-decoration: none; }

.rr-photography { padding: 88px 0 70px; background: var(--rr-ink); color: var(--rr-paper); }
.rr-photography .rr-eyebrow { color: #e0e8df; }
.rr-photography h2 { margin: 20px 0 0; color: var(--rr-paper); font-size: 50px; line-height: 1.08; }
.rr-photography__intro { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 72px; align-items: end; margin-bottom: 32px; }
.rr-photography__intro > div:last-child > p { margin: 0 0 12px; color: #e0e8df; }
.rr-photography .rr-text-link { color: var(--rr-paper); }
.rr-photography__gallery { display: grid; grid-template-columns: 1.68fr 1fr; gap: 32px; align-items: end; }
.rr-photo { min-width: 0; margin: 0; }
.rr-photo img { display: block; width: 100%; border-radius: 3px; object-fit: cover; }
.rr-photo--large img { height: 396px; }
.rr-photo--small img { height: 318px; }
.rr-photo figcaption { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-top: 12px; }
.rr-photo figcaption strong { color: var(--rr-paper); font: 20px "DM Serif Display", Georgia, serif; }
.rr-photo figcaption span { color: #e0e8df; font-size: 9px; }
.rr-photography__portals { display: flex; justify-content: space-between; gap: 24px; align-items: center; margin-top: 32px; padding-top: 28px; border-top: 1px solid #3d6061; }
.rr-photography__portals > div { display: flex; flex-direction: column; gap: 5px; }
.rr-photography__portals strong { color: var(--rr-paper); font-size: 11px; font-weight: 500; }
.rr-photography__portals span { color: #e0e8df; font-size: 9px; }

.rr-community { padding: 88px 0; background: var(--rr-paper); }
.rr-community__grid { display: grid; grid-template-columns: minmax(0, 448fr) minmax(0, 760fr); gap: 88px; align-items: center; }
.rr-community__photo { position: relative; margin: 0; }
.rr-community__photo img { display: block; width: 100%; height: 490px; border-radius: 3px 3px 140px 3px; object-fit: cover; }
.rr-community__photo > span { position: absolute; top: 22px; left: 16px; padding: 8px 12px; border-radius: 999px; background: var(--rr-paper); color: var(--rr-ink); font-size: 8px; }
.rr-community__photo figcaption { margin-top: 12px; color: var(--rr-muted); font-size: 9px; }
.rr-community__copy > .rr-eyebrow { margin-bottom: 20px; }
.rr-community__copy h2 { margin-bottom: 18px; }
.rr-platforms { margin-top: 22px; }
.rr-platforms article { display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 18px 0; border-top: 1px solid var(--rr-line); }
.rr-platforms h3 { margin: 0 0 5px; font-size: 22px; }
.rr-platforms p { margin: 0; color: var(--rr-muted); font-size: 11px; }
.rr-platforms a { flex: 0 0 auto; color: var(--rr-ink); font-size: 10px; text-decoration: none; }

.rr-agenda-feature { padding: 8px 0 80px; background: var(--rr-paper); }
.rr-agenda-card { display: grid; grid-template-columns: 116px minmax(0, 1fr) auto; gap: 38px; align-items: center; padding: 36px; border-radius: 6px; background: var(--rr-pale); }
.rr-agenda-date { display: flex; flex-direction: column; align-items: center; color: var(--rr-ink); }
.rr-agenda-date strong { font: 62px/0.95 "DM Serif Display", Georgia, serif; }
.rr-agenda-date span { margin-top: 5px; font-size: 8px; }
.rr-agenda-copy .rr-eyebrow { margin-bottom: 7px; }
.rr-agenda-copy h2 { margin: 0 0 10px; font-size: 29px; line-height: 1.15; }
.rr-agenda-copy > div { display: flex; flex-wrap: wrap; gap: 18px; color: var(--rr-muted); font-size: 10px; }

.rr-creators { padding: 48px 0 66px; background: var(--rr-paper); }
.rr-creators__intro { display: grid; grid-template-columns: 1fr 0.85fr; gap: 72px; align-items: end; }
.rr-creators__intro .rr-eyebrow { margin-bottom: 20px; }
.rr-creators__intro h2,
.rr-contact-cta h2 { max-width: 650px; margin: 0; font-size: 52px; line-height: 1.08; }
.rr-creators__intro > p { margin: 0 0 4px; }
.rr-creators__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 64px; margin-top: 38px; }
.rr-person { padding-top: 16px; border-top: 1px solid var(--rr-line); }
.rr-person__identity { display: flex; gap: 18px; align-items: center; margin-bottom: 16px; }
.rr-person__initial { display: grid; width: 68px; height: 68px; place-items: center; border: 1px solid var(--rr-line); border-radius: 50%; color: var(--rr-ink); font: italic 52px/1 "DM Serif Display", Georgia, serif; }
.rr-person__identity h3 { margin: 0 0 3px; font-size: 25px; }
.rr-person__identity p { margin: 0; color: var(--rr-rust); font-size: 9px; }
.rr-person > p { min-height: 58px; margin: 0 0 14px; font-size: 12px; }
.rr-person__links { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; align-items: center; }
.rr-person__links a { display: inline-flex; gap: 10px; align-items: center; color: var(--rr-ink); font-size: 10px; text-decoration: none; }
.rr-person__links span { flex-basis: 100%; color: var(--rr-muted); font-size: 9px; }

.rr-contact-cta { padding: 78px 0; background: var(--rr-pale); }
.rr-contact-cta > .rr-home-shell { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 96px; align-items: center; }
.rr-contact-cta .rr-eyebrow { margin-bottom: 20px; }
.rr-contact-cta h2 { max-width: 730px; font-size: 60px; }
.rr-contact-cta > .rr-home-shell > div:last-child > p { margin: 0 0 18px; }

.rr-home-footer { padding: 56px 0 24px; background: var(--rr-ink); color: #e0e8df; }
.rr-home-footer__grid { display: grid; grid-template-columns: 2.2fr 0.9fr 1.15fr 0.75fr; gap: 48px; padding-bottom: 34px; }
.rr-home-footer__brand { display: flex; flex-direction: column; align-items: flex-start; }
.rr-home-footer__brand > p { margin: 0 0 10px; color: var(--rr-paper); font-size: 34px; }
.rr-home-footer__brand > span { max-width: 320px; margin-bottom: 12px; font-size: 11px; line-height: 1.65; }
.rr-home-footer__brand > a,
.rr-home-footer a { color: #e0e8df; font-size: 11px; text-decoration: none; }
.rr-home-footer nav h2 { margin: 0 0 14px; color: var(--rr-paper); font: 600 9px/1.4 "Inter", sans-serif; text-transform: uppercase; }
.rr-home-footer nav ul { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; }
.rr-home-footer__bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 28px; border-top: 1px solid #3d6061; color: #e0e8df; font-size: 9px; }

@media (min-width: 900px) {
  .rr-home-design .header .navmenu { padding: 0; }
  .rr-home-design .header .navmenu ul { position: static; display: flex; align-items: center; gap: 4px; padding: 0; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
  .rr-home-design .header .navmenu li:last-child a { margin-left: 10px; }
  .rr-home-design .header .mobile-nav-toggle { display: none; }
}

@media (max-width: 1199px) {
  .rr-home-design .header { padding-top: 14px; }
  .rr-home-design .header .header-container { margin: 0 auto !important; }
}

@media (max-width: 899px) {
  .rr-home-design .header { min-height: 86px; padding-top: 12px; }
  .rr-home-design .header::after { bottom: 7px; width: calc(100% - 36px); }
  .rr-home-design .header .header-container,
  .rr-home-shell { width: calc(100% - 36px) !important; }
  .rr-home-design .header .navmenu ul { background: var(--rr-paper); }
  .rr-home-design .header .navmenu a,
  .rr-home-design .header .navmenu a:focus { color: var(--rr-ink); }
  .rr-home-hero__grid,
  .rr-webwork__grid,
  .rr-community__grid,
  .rr-creators__intro,
  .rr-contact-cta > .rr-home-shell { grid-template-columns: 1fr; }
  .rr-home-hero__grid { gap: 24px; }
  .rr-home-hero__copy { padding: 20px 0 0; }
  .rr-home-hero h1 { font-size: 62px; }
  .rr-home-hero__visual { width: min(100%, 544px); min-height: 540px; margin-left: auto; }
  .rr-home-hero__visual > img { height: 490px; }
  .rr-home-signature { bottom: 62px; }
  .rr-home-hero__footnote { margin-top: 8px; }
  .rr-worlds__grid { gap: 36px 24px; }
  .rr-webwork__grid { gap: 36px; }
  .rr-photography__intro { grid-template-columns: 1fr 0.85fr; gap: 36px; }
  .rr-community__grid { gap: 36px; }
  .rr-community__photo { width: min(100%, 448px); }
  .rr-agenda-card { grid-template-columns: 90px minmax(0, 1fr); gap: 24px; }
  .rr-agenda-card > .rr-text-link { grid-column: 2; }
  .rr-creators__intro { gap: 20px; }
  .rr-contact-cta > .rr-home-shell { gap: 24px; }
  .rr-home-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
  .rr-home-hero { padding-top: 18px; }
  .rr-home-hero h1 { font-size: 48px; }
  .rr-home-hero__role { font-size: 14px; }
  .rr-home-hero__lead { font-size: 13px; }
  .rr-home-hero__visual { min-height: 410px; padding-left: 28px; }
  .rr-home-hero__visual > img { height: 370px; border-top-left-radius: 130px; }
  .rr-home-signature { bottom: 54px; width: 220px; min-height: 80px; padding: 12px 16px; }
  .rr-home-signature > span { font-size: 50px; }
  .rr-home-hero__caption { left: 28px; font-size: 8px; }
  .rr-home-hero__footnote { flex-direction: column; gap: 10px; }
  .rr-worlds__grid,
  .rr-photography__intro,
  .rr-photography__gallery,
  .rr-creators__grid { grid-template-columns: 1fr; }
  .rr-worlds__grid { gap: 34px; }
  .rr-world > p { min-height: auto; }
  .rr-worlds { padding: 38px 0; }
  .rr-webwork,
  .rr-photography,
  .rr-community { padding: 56px 0; }
  .rr-webwork__copy h2,
  .rr-community__copy h2,
  .rr-creators__intro h2,
  .rr-contact-cta h2 { font-size: 40px; }
  .rr-browser { min-height: 340px; padding: 12px; }
  .rr-browser__nav { padding: 12px; }
  .rr-browser__nav span { display: none; }
  .rr-browser__content { min-height: 260px; grid-template-columns: 1fr 0.8fr; gap: 8px; padding: 0 10px 12px; }
  .rr-browser__content h3 { font-size: 27px; }
  .rr-browser__art { height: 150px; }
  .rr-webwork__concept figcaption { font-size: 8px; }
  .rr-webwork__portals { grid-template-columns: 1fr 1fr; gap: 18px; }
  .rr-webwork__portals > span { grid-column: 1 / -1; }
  .rr-photography__intro { gap: 18px; }
  .rr-photography h2 { font-size: 39px; }
  .rr-photo--large img,
  .rr-photo--small img { height: auto; aspect-ratio: 1.5; }
  .rr-photography__gallery { gap: 24px; }
  .rr-photography__portals { align-items: flex-start; }
  .rr-photography__portals > .rr-text-link { flex: 0 0 auto; }
  .rr-community__photo img { height: auto; aspect-ratio: 0.91; }
  .rr-platforms article { gap: 12px; }
  .rr-platforms h3 { font-size: 19px; }
  .rr-agenda-feature { padding-bottom: 48px; }
  .rr-agenda-card { grid-template-columns: 1fr; gap: 14px; padding: 22px; }
  .rr-agenda-date { align-items: flex-start; }
  .rr-agenda-date strong { font-size: 46px; }
  .rr-agenda-card > .rr-text-link { grid-column: auto; }
  .rr-agenda-copy h2 { font-size: 25px; }
  .rr-creators__grid { gap: 28px; }
  .rr-person > p { min-height: auto; }
  .rr-contact-cta { padding: 56px 0; }
  .rr-home-footer__grid { grid-template-columns: 1fr 1fr; gap: 32px 18px; }
  .rr-home-footer__brand { grid-column: 1 / -1; }
  .rr-home-footer__bottom { flex-direction: column; gap: 10px; }
}

@media (prefers-reduced-motion: no-preference) {
  .rr-home-hero__copy,
  .rr-home-hero__visual,
  .rr-world { animation: rr-home-arrive 650ms ease both; }
  .rr-home-hero__visual { animation-delay: 100ms; }
  .rr-world:nth-child(2) { animation-delay: 80ms; }
  .rr-world:nth-child(3) { animation-delay: 160ms; }
  @keyframes rr-home-arrive {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
  }
}
