:root{
  --paper:#ffffff;
  --ink:#111111;
  --ink-soft:#565656;
  --surface:#f7f6f3;
  --accent:#ffc500;
  --accent-ink:#6d5200;
  --rule:#e3ded2;
  --hold:73rem;
  --gutter:clamp(1.15rem, 4vw, 2.75rem);
  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"IBM Plex Sans", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

@font-face{
  font-family:"Source Serif 4";
  src:url("../fonts/SourceSerif4-700.woff2") format("woff2");
  font-weight:700;
  font-style:normal;
  font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"IBM Plex Sans";
  src:url("../fonts/IBMPlexSans-var.woff2") format("woff2");
  font-weight:400 600;
  font-style:normal;
  font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

*,*::before,*::after{box-sizing:border-box;}
[hidden]{display:none !important;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:1.0625rem;
  font-weight:400;
  line-height:1.72;
  letter-spacing:.002em;
}
h1,h2,h3{font-family:var(--serif);font-weight:700;letter-spacing:-.018em;line-height:1.12;margin:0 0 .55em;}
h1{font-size:clamp(2.35rem,6.2vw,4.05rem);}
h2{font-size:clamp(1.85rem,4vw,2.85rem);}
h3{font-size:clamp(1.2rem,2.1vw,1.5rem);line-height:1.22;}
p{margin:0 0 1.05em;}
ul{margin:0;padding:0;list-style:none;}
img{display:block;max-width:100%;height:auto;}
figure{margin:0;}
a{color:var(--accent-ink);}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--accent-ink);
  outline-offset:3px;
  border-radius:4px;
}
:target{scroll-margin-top:6rem;}
section{scroll-margin-top:5.25rem;}

.rr-hold{width:100%;max-width:var(--hold);margin-inline:auto;padding-inline:var(--gutter);}
.rr-skip{
  position:absolute;left:-9999px;top:0;z-index:60;
  background:var(--accent);color:var(--ink);font-weight:600;
  padding:.9rem 1.5rem;border-radius:999px;text-decoration:none;
}
.rr-skip:focus{left:1rem;top:1rem;}

.rr-act{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  min-height:48px;padding:.8rem 1.7rem;
  border:2px solid var(--accent);border-radius:999px;
  background:var(--accent);color:var(--ink);
  font-family:var(--sans);font-size:1rem;font-weight:600;line-height:1.2;
  text-decoration:none;cursor:pointer;
  transition:transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}
.rr-act:hover{transform:translateY(-2px);background:var(--ink);border-color:var(--ink);color:var(--paper);}
.rr-act:active{transform:translateY(0);}
.rr-act--quiet{background:transparent;border-color:var(--ink);color:var(--ink);}
.rr-act--quiet:hover{background:var(--ink);border-color:var(--ink);color:var(--paper);}

.rr-shelf{
  display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(1.1rem,3vw,2.1rem);
  margin-top:clamp(2.4rem,5vw,3.6rem);
  padding:clamp(1.35rem,3vw,2rem);
  background:var(--surface);border-radius:26px;text-align:left;
}
.rr-shelf__figure{width:96px;height:96px;border-radius:22px;}
.rr-shelf__body{flex:1 1 17rem;min-width:0;}
.rr-shelf__head{font-family:var(--serif);font-weight:700;font-size:1.35rem;line-height:1.2;margin-bottom:.15em;}
.rr-shelf__meta{color:var(--ink-soft);font-size:.95rem;margin-bottom:.7em;}
.rr-shelf__rate{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .7rem;margin-bottom:.75em;}
.rr-shelf__stars{width:104px;height:20px;flex:none;color:var(--ink);}
.rr-shelf__stars-on{fill:var(--accent);}
.rr-shelf__score{font-weight:600;font-size:1.15rem;}
.rr-shelf__count{color:var(--ink-soft);font-size:.95rem;}
.rr-shelf__list{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1.15em;}
.rr-shelf__list li{
  padding:.4rem 1rem;border-radius:999px;background:var(--paper);
  color:var(--ink);font-size:.9rem;font-weight:500;
}
.rr-shelf__link{font-size:.95rem;padding-inline:1.4rem;}

/* — The notice is sticky rather than fixed so it reserves its own space and never sits over the footer — */
.rr-notice{
  position:sticky;bottom:0;z-index:40;
  background:var(--ink);color:var(--paper);
  padding-block:1rem;
}
.rr-notice__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem;}
.rr-notice__body{flex:1 1 24rem;margin:0;font-size:.94rem;line-height:1.6;max-width:52em;}
.rr-notice__acts{display:flex;flex-wrap:wrap;gap:.6rem;}
.rr-notice .rr-act{min-height:48px;padding:.6rem 1.4rem;font-size:.95rem;}
.rr-notice .rr-act--quiet{border-color:var(--paper);color:var(--paper);}
.rr-notice .rr-act--quiet:hover{background:var(--paper);color:var(--ink);}
.rr-notice .rr-act:hover{background:var(--paper);border-color:var(--paper);color:var(--ink);}
.rr-notice a:focus-visible,.rr-notice button:focus-visible{outline-color:var(--accent);}

.rr-lift{
  position:fixed;right:1.1rem;bottom:6.5rem;z-index:35;
  width:52px;height:52px;min-height:52px;padding:0;
  background:var(--paper);border-color:var(--ink);color:var(--ink);
}

.rr-masthead{position:sticky;top:0;z-index:50;background:var(--paper);}
.rr-masthead__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:4.6rem;}
.rr-masthead__logo{
  display:inline-flex;align-items:center;min-height:48px;
  font-family:var(--serif);font-weight:700;font-size:1.32rem;
  text-transform:uppercase;letter-spacing:.09em;text-decoration:none;color:var(--ink);
}
.rr-masthead__logo-rest{color:var(--accent-ink);}
.rr-masthead__toggle{display:none;padding:.6rem 1.15rem;font-size:.95rem;}
.rr-masthead__list{display:flex;align-items:center;gap:.25rem;}
.rr-masthead__list a{
  display:inline-flex;align-items:center;min-height:48px;padding:.35rem 1rem;
  border-radius:999px;color:var(--ink);text-decoration:none;font-size:1rem;font-weight:500;
}
.rr-masthead__list a:hover{background:var(--surface);color:var(--accent-ink);}

.rr-lede{padding-block:clamp(3.2rem,8vw,6.2rem) clamp(2.6rem,6vw,4.4rem);text-align:center;}
.rr-lede__meta{
  color:var(--ink-soft);font-size:.9rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.14em;margin-bottom:1.4em;
}
.rr-lede__head{max-width:15em;margin-inline:auto;}
.rr-lede__mark{box-shadow:inset 0 -.17em 0 0 var(--accent);}
.rr-lede__body{max-width:38em;margin-inline:auto;font-size:1.13rem;}
.rr-lede__body--quiet{color:var(--ink-soft);font-size:1rem;max-width:34em;}
.rr-lede__acts{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:1.9rem;}

.rr-plate{padding-block:clamp(2.6rem,6vw,4.6rem);}
.rr-plate__meta{
  color:var(--accent-ink);font-size:.85rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.16em;margin-bottom:.9em;
}
.rr-plate__head{max-width:16em;}
.rr-plate__body{margin-bottom:0;color:var(--ink-soft);}
.rr-plate__body--lead{color:var(--ink);font-size:1.13rem;max-width:41em;margin-bottom:2.6rem;}
.rr-plate__title{margin-bottom:.4em;}
.rr-plate__grid{display:grid;grid-template-columns:1fr;gap:clamp(1.5rem,3.4vw,2.6rem);}
.rr-plate__item{min-width:0;}
.rr-plate__item--lead .rr-plate__figure{margin-bottom:1.4rem;}
.rr-plate__item--shot .rr-plate__figure{margin-bottom:1.2rem;}

/* — Landscape plates share one 16:9 crop so every frame in the grid lines up at any width — */
.rr-plate__figure img{
  width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;
  border-radius:20px;background:var(--surface);
}
.rr-plate__pull{
  font-family:var(--serif);font-weight:700;font-size:clamp(1.45rem,3.1vw,2.1rem);
  line-height:1.28;letter-spacing:-.015em;max-width:19em;
  margin:clamp(2.4rem,5vw,3.6rem) 0 0 auto;padding-left:1.1rem;
  border-left:6px solid var(--accent);
}

.rr-tally{background:var(--surface);padding-block:clamp(3rem,6.5vw,5rem);}
.rr-tally__head{max-width:12em;}
.rr-tally__body{color:var(--ink-soft);max-width:44em;}
.rr-tally__scroll{overflow-x:auto;margin-top:1.9rem;border-radius:18px;background:var(--paper);}
.rr-tally__table{width:100%;min-width:46rem;border-collapse:collapse;font-size:.97rem;}
.rr-tally__table caption{
  font-family:var(--serif);font-weight:700;font-size:1.05rem;text-align:left;
  padding:1.1rem 1.15rem .8rem;color:var(--ink);
}
.rr-tally__table th,.rr-tally__table td{padding:.85rem 1.15rem;text-align:left;vertical-align:top;}
.rr-tally__table thead th{
  font-family:var(--sans);font-size:.8rem;font-weight:600;
  text-transform:uppercase;letter-spacing:.09em;color:var(--ink);
  border-bottom:2px solid var(--rule);white-space:nowrap;
}
.rr-tally__table tbody th{font-family:var(--serif);font-size:1.05rem;font-weight:700;white-space:nowrap;}
.rr-tally__table tbody td{color:var(--ink-soft);}
.rr-tally__table tbody tr:nth-child(odd){background:var(--surface);}
.rr-tally__yes{display:inline-flex;align-items:center;gap:.4rem;color:var(--accent-ink);font-weight:600;white-space:nowrap;}
.rr-tally__foot{display:grid;grid-template-columns:1fr;gap:1.6rem;margin-top:1.9rem;align-items:start;}
.rr-tally__aside{background:var(--paper);border-radius:18px;padding:clamp(1.15rem,2.4vw,1.5rem);}
.rr-tally__aside p{margin:0 0 .6em;color:var(--ink-soft);font-size:.94rem;line-height:1.62;}
.rr-tally__aside p:last-child{margin-bottom:0;}
.rr-tally__aside .rr-tally__title{font-family:var(--serif);font-weight:700;font-size:1.06rem;color:var(--ink);line-height:1.3;}

.rr-query{padding-block:clamp(2.8rem,6vw,4.4rem);}
.rr-query__head{max-width:13em;}
.rr-query__list{margin-top:1.6rem;}
.rr-query__row{padding:.35rem 0;}
.rr-query__ask{
  display:flex;align-items:center;justify-content:space-between;gap:1.2rem;
  min-height:48px;padding:.95rem .2rem;cursor:pointer;list-style:none;
  font-family:var(--serif);font-weight:700;font-size:clamp(1.08rem,2vw,1.3rem);line-height:1.3;
}
.rr-query__ask::-webkit-details-marker{display:none;}
.rr-query__ask:hover{color:var(--accent-ink);}
.rr-query__mark{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:34px;height:34px;border-radius:999px;background:var(--accent);color:var(--ink);
  transition:transform .2s ease;
}
.rr-query__row[open] .rr-query__mark{transform:rotate(45deg);}
.rr-query__body{padding:0 .2rem 1.25rem;max-width:46em;}
.rr-query__body p{margin:0;color:var(--ink-soft);}

.rr-dispatch{padding-block:clamp(3rem,6.5vw,5rem);}
.rr-dispatch__head{max-width:10em;}
.rr-dispatch__body{max-width:40em;color:var(--ink-soft);}
.rr-dispatch__wrap{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem;margin:1.6rem 0 0;}
.rr-dispatch__meta{
  padding:1.25rem 1.6rem;
  background:var(--surface);border-radius:22px;
}
.rr-dispatch__meta p{margin:0;color:var(--ink-soft);}
.rr-dispatch__name{font-family:var(--serif);font-weight:700;font-size:1.2rem;color:var(--ink) !important;margin-bottom:.25em !important;}

.rr-colophon{background:var(--surface);padding-block:clamp(2.6rem,5vw,3.8rem);}
.rr-colophon__bar{display:grid;grid-template-columns:1fr;gap:1.8rem;}
.rr-colophon__body p{margin:0 0 .5em;color:var(--ink-soft);font-size:.95rem;}
.rr-colophon__brand{
  font-family:var(--serif);font-weight:700;font-size:1.2rem;color:var(--ink) !important;
  text-transform:uppercase;letter-spacing:.09em;margin-bottom:.6em !important;
}
.rr-colophon__title{font-weight:600;color:var(--ink) !important;font-size:.95rem;margin-bottom:.35em;}
.rr-colophon__nav ul{display:flex;flex-direction:column;gap:.1rem;}
.rr-colophon__nav a,.rr-colophon__body a{
  display:inline-flex;align-items:center;min-height:48px;
  color:var(--accent-ink);font-size:.95rem;text-decoration:underline;text-underline-offset:.2em;
}
.rr-colophon__nav a:hover,.rr-colophon__body a:hover{color:var(--ink);}
.rr-colophon__end{margin-top:2.2rem;display:flex;flex-wrap:wrap;gap:.4rem 1.8rem;}
.rr-colophon__end p{margin:0;color:var(--ink-soft);font-size:.87rem;}

.rr-page{padding-block:clamp(2.6rem,6vw,4.2rem);}
.rr-page__meta{color:var(--ink-soft);font-size:.95rem;margin-bottom:2rem;}
.rr-page__body{max-width:44em;}
.rr-page__body h2{font-size:clamp(1.35rem,2.6vw,1.75rem);margin-top:2.1em;}
.rr-page__body h3{font-size:clamp(1.06rem,1.9vw,1.22rem);margin-top:1.7em;}
.rr-page__body p,.rr-page__body li{color:var(--ink-soft);}
.rr-page__body ul{list-style:disc;padding-left:1.3em;margin-bottom:1.05em;}
.rr-page__body li{margin-bottom:.4em;}
.rr-page__body a{text-decoration:underline;text-underline-offset:.2em;}
.rr-page__table{width:100%;border-collapse:collapse;font-size:.95rem;margin-bottom:1.4em;}
.rr-page__table caption{font-family:var(--serif);font-weight:700;text-align:left;padding-bottom:.7rem;color:var(--ink);}
.rr-page__table th,.rr-page__table td{padding:.7rem .8rem;text-align:left;vertical-align:top;}
.rr-page__table thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;border-bottom:2px solid var(--rule);}
.rr-page__table tbody th{font-weight:600;}
.rr-page__table tbody td{color:var(--ink-soft);}
.rr-page__table tbody tr:nth-child(odd){background:var(--surface);}
.rr-page__scroll{overflow-x:auto;}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}
@media (max-width:60rem){
  .rr-masthead__toggle{display:inline-flex;}
  .rr-masthead__nav{display:none;flex-basis:100%;}
  .rr-masthead__nav[data-rr-open="true"]{display:block;padding-bottom:1rem;}
  .rr-masthead__bar{flex-wrap:wrap;}
  .rr-masthead__list{flex-direction:column;align-items:stretch;gap:.2rem;}
  .rr-masthead__list a{justify-content:flex-start;background:var(--surface);}
  .rr-plate__pull{margin-left:0;}
  .rr-lift{bottom:8.5rem;}
}
@media (min-width:48rem){
  .rr-tally__foot{grid-template-columns:1.15fr .85fr;gap:2.4rem;}
  .rr-colophon__bar{grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem;}
}
@media (min-width:60rem){
  .rr-plate__grid{grid-template-columns:repeat(6,1fr);}
  .rr-plate__item{grid-column:span 2;}
  .rr-plate__item--lead{
    grid-column:span 6;display:grid;align-content:start;
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);grid-template-rows:min-content 1fr;
    column-gap:clamp(1.5rem,3vw,2.4rem);row-gap:0;
  }
  .rr-plate__item--lead .rr-plate__figure{grid-row:span 2;margin-bottom:0;}
  .rr-plate__item--quiet{grid-column:span 3;}
  .rr-plate__item--shot{grid-column:span 3;}
}
