
:root{
  --rr-black:#050505;
  --rr-black-soft:#0d0c09;
  --rr-gold:#d8ac20;
  --rr-gold-deep:#9c7610;
  --rr-ivory:#f4efe4;
  --rr-ivory-deep:#e7ddcb;
  --rr-warm:#8c7b5f;
  --rr-line:rgba(216,172,32,.34);
}

body{
  margin:0;
  color:var(--rr-black);
  background:var(--rr-ivory);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.rr-topbar{
  background:linear-gradient(90deg,#8f6900,#d7ae24,#967000);
  color:#000;
}
.rr-topbar-inner{
  width:min(1240px,calc(100% - 48px));
  min-height:90px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.rr-site-title{
  display:flex;
  align-items:baseline;
  gap:18px;
  color:#000;
  text-decoration:none;
}
.rr-site-title strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.5rem;
}
.rr-site-title span{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1rem;
}
.rr-topnav{
  display:flex;
  gap:24px;
}
.rr-topnav a{
  color:#000;
  font-weight:800;
  text-decoration:none;
}

.rr-hero{
  background:var(--rr-black);
  color:#fff;
  border-bottom:1px solid var(--rr-line);
}
.rr-hero-inner{
  width:min(1240px,calc(100% - 48px));
  min-height:680px;
  margin:auto;
  padding:72px 0 86px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.rr-hero-kicker,
.rr-section-label,
.rr-community{
  color:var(--rr-gold);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.rr-hero h1{
  max-width:980px;
  margin:.25em 0 .2em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3.6rem,7vw,6.2rem);
  line-height:.98;
  color:var(--rr-gold);
}
.rr-hero>div>p{
  max-width:900px;
  margin:0;
  color:#d8d1c6;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem;
  line-height:1.7;
}
.rr-hero-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
  margin-top:38px;
}
.rr-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 30px;
  border-radius:6px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.05rem;
  font-weight:800;
  text-decoration:none;
}
.rr-button-gold{
  background:var(--rr-gold);
  color:#000;
}
.rr-button-outline{
  border:2px solid var(--rr-gold);
  color:var(--rr-gold);
}
.rr-hero-stats{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:32px;
  margin-top:48px;
  color:#d4c9b6;
}
.rr-hero-stats strong{
  color:var(--rr-gold);
  font-size:1.25rem;
}

.rr-featured{
  background:var(--rr-ivory);
}
.rr-featured-inner,
.rr-archive-inner,
.rr-cta-inner{
  width:min(1240px,calc(100% - 48px));
  margin:auto;
}
.rr-featured-inner{
  padding:84px 0;
}
.rr-featured article{
  padding:32px 0 0;
  border-top:1px solid var(--rr-line);
}
.rr-featured h2{
  margin:.12em 0 .3em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,5.5vw,5rem);
  line-height:1;
}
.rr-featured blockquote{
  max-width:980px;
  margin:0;
  color:#4d4334;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  line-height:1.8;
}
.rr-featured footer{
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:end;
  margin-top:34px;
  padding-top:24px;
  border-top:1px solid rgba(156,118,16,.28);
}
.rr-featured footer>div{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:var(--rr-warm);
}
.rr-featured footer>a{
  color:var(--rr-gold-deep);
  font-weight:900;
  text-decoration:none;
}

.rr-archive{
  background:var(--rr-black-soft);
  color:#fff;
}
.rr-archive-inner{
  padding:84px 0;
}
.rr-archive-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-bottom:30px;
}
.rr-archive h2{
  margin:.12em 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.8rem,4.8vw,4.4rem);
  color:var(--rr-gold);
}
.rr-archive-head>span{
  color:#bcae97;
}
.rr-tools{
  display:grid;
  gap:16px;
  margin-bottom:34px;
}
.rr-search{
  display:flex;
  gap:12px;
}
.rr-search input{
  flex:1;
  min-height:52px;
  padding:0 16px;
  border:1px solid var(--rr-line);
  background:#090806;
  color:#fff;
}
.rr-search button{
  min-height:52px;
  padding:0 22px;
  border:0;
  background:var(--rr-gold);
  color:#000;
  font-weight:900;
}
.rr-filters{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.rr-filters a{
  padding:9px 14px;
  border:1px solid rgba(216,172,32,.45);
  color:#e7ddcb;
  text-decoration:none;
  font-size:.82rem;
  font-weight:800;
}
.rr-filters a.active{
  background:var(--rr-gold);
  color:#000;
}
.rr-list{
  border-top:1px solid rgba(216,172,32,.3);
}
.rr-item{
  display:grid;
  grid-template-columns:70px minmax(0,1fr) 200px;
  gap:28px;
  padding:38px 0;
  border-bottom:1px solid rgba(216,172,32,.3);
}
.rr-item-number{
  color:rgba(216,172,32,.55);
  font-family:Georgia,"Times New Roman",serif;
  font-size:2.1rem;
}
.rr-item h3{
  margin:.1em 0 .35em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:2.35rem;
  line-height:1.05;
}
.rr-item h3 a{
  color:#fff;
  text-decoration:none;
}
.rr-item-content>p:last-child{
  max-width:760px;
  color:#c9bfaf;
  line-height:1.8;
}
.rr-item footer{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
}
.rr-item footer>div{
  display:grid;
  gap:4px;
  text-align:right;
  color:#c9bfaf;
  font-size:.82rem;
}
.rr-item footer>a{
  color:var(--rr-gold);
  font-weight:900;
  text-decoration:none;
}
.rr-pagination{
  display:flex;
  justify-content:center;
  gap:22px;
  margin-top:38px;
}
.rr-pagination a{
  color:var(--rr-gold);
  font-weight:900;
  text-decoration:none;
}
.rr-empty{
  padding:56px;
  border:1px solid var(--rr-line);
  text-align:center;
}

.rr-cta{
  background:var(--rr-ivory);
}
.rr-cta-inner{
  padding:70px 0;
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
}
.rr-cta h2{
  margin:.12em 0 0;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.8rem,5vw,4.5rem);
}

.rr-read-shell{
  min-height:calc(100vh - 90px);
  background:var(--rr-black);
  color:#fff;
  padding:72px 0 96px;
}
.rr-read{
  width:min(900px,calc(100% - 48px));
  margin:auto;
}
.rr-read h1{
  margin:.12em 0 .28em;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3.6rem,7vw,6rem);
  line-height:.98;
  color:var(--rr-gold);
}
.rr-read-meta{
  display:flex;
  justify-content:space-between;
  gap:22px;
  padding-top:24px;
  border-top:1px solid var(--rr-line);
  color:#c9bfaf;
}
.rr-read-meta>div{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.rr-read-text{
  max-width:760px;
  margin:56px auto;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.35rem;
  line-height:2;
  color:#f0e8db;
}
.rr-read-links{
  display:flex;
  flex-wrap:wrap;
  gap:22px;
  padding-top:24px;
  border-top:1px solid var(--rr-line);
}
.rr-read-links a{
  color:var(--rr-gold);
  font-weight:900;
  text-decoration:none;
}

@media(max-width:860px){
  .rr-item{
    grid-template-columns:50px minmax(0,1fr);
  }
  .rr-item footer{
    grid-column:2;
    align-items:flex-start;
  }
  .rr-item footer>div{
    text-align:left;
  }
}
@media(max-width:680px){
  .rr-topbar-inner,.rr-featured-inner,.rr-archive-inner,.rr-cta-inner{
    width:min(100% - 24px,1240px);
  }
  .rr-site-title span{display:none}
  .rr-topnav{gap:12px}
  .rr-topnav a{font-size:.82rem}
  .rr-hero-inner{min-height:560px;width:min(100% - 24px,1240px)}
  .rr-hero h1{font-size:clamp(3rem,14vw,4.8rem)}
  .rr-featured footer,.rr-cta-inner,.rr-read-meta{
    flex-direction:column;
    align-items:flex-start;
  }
  .rr-search{display:grid}
  .rr-item{grid-template-columns:1fr}
  .rr-item-number{display:none}
  .rr-item footer{grid-column:auto}
}


/* Stage 4 additions */
.rr-share{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:12px;
  margin:32px 0;
  padding:20px 0;
  border-top:1px solid var(--rr-line);
  border-bottom:1px solid var(--rr-line);
}
.rr-share span{
  color:var(--rr-gold);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
}
.rr-share a,
.rr-share button{
  padding:8px 12px;
  border:1px solid var(--rr-line);
  background:transparent;
  color:#fff;
  text-decoration:none;
  font:inherit;
  cursor:pointer;
}
.rr-prev-next{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:30px;
  margin-top:44px;
  padding-top:28px;
  border-top:1px solid var(--rr-line);
}
.rr-prev-next>div:last-child{text-align:right}
.rr-prev-next small{
  display:block;
  margin-bottom:6px;
  color:#c9bfaf;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.rr-prev-next a{
  color:var(--rr-gold);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.25rem;
  text-decoration:none;
}
@media(max-width:680px){
  .rr-prev-next{grid-template-columns:1fr}
  .rr-prev-next>div:last-child{text-align:left}
}
