/* Page Two (Passe) — sections 1–3 only */
.rc2-section{ padding: 56px 0; }
.rc2-h1{ font-size: clamp(28px, 3.4vw, 46px); line-height: 1.12; margin: 10px 0 0; }
.rc2-h1Accent{ color: rgba(185,255,62,.92); }
.rc2-h2{ margin: 10px 0 0; letter-spacing: .15px; }
.rc2-lead{ margin: 12px 0 0; color: var(--rc-dim); line-height: 1.75; max-width: 62ch; }
.rc2-leadSmall{ margin: 10px 0 0; color: var(--rc-dim); line-height: 1.7; max-width: 70ch; }

.rc2-sHead{
  border-radius: 26px;
  border: 1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding: 14px;
}

/* Reveal helper (if not in style.css) */
[data-rc-reveal]{ opacity: 0; transform: translateY(10px); transition: opacity .6s ease, transform .6s ease; }
.is-revealed{ opacity: 1; transform: translateY(0); }

/* =========================
   SECTION 1: Hero "Pass Card Doca"
   ========================= */
.rc2-s1Hero{ padding-top: 92px; }
.rc2-s1Grid{
  display:grid;
  grid-template-columns: 1.05fr .85fr 1fr;
  gap: 14px;
  align-items: start;
}
.rc2-s1Copy{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(20,51,31,.12), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  padding: 14px;
  position:relative;
  overflow:hidden;
}
.rc2-s1Copy::after{
  content:"";
  position:absolute;
  inset:-70px -70px auto -70px;
  height: 180px;
  background: radial-gradient(closest-side, rgba(185,255,62,.14), transparent 70%);
  transform: rotate(-10deg);
  opacity:.85;
  pointer-events:none;
}

.rc2-s1Quick{
  margin-top: 12px;
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  position:relative;
  z-index:1;
}
.rc2-s1Pill{
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding: 10px 12px;
  display:flex;
  gap:10px;
  align-items: baseline;
}
.rc2-s1PillK{
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s1PillV{
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(185,255,62,.82);
}

.rc2-s1Ctas{
  margin-top: 14px;
  display:flex;
  gap: 10px;
  flex-wrap:wrap;
  position:relative;
  z-index:1;
}
.rc2-btn{
  text-decoration:none;
  border-radius: 16px;
  border:1px solid rgba(237,241,255,.12);
  padding: 12px 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-btn--prime{
  background: rgba(185,255,62,.10);
  border-color: rgba(185,255,62,.28);
  color: var(--rc-ink);
}
.rc2-btn--ghost{
  background: rgba(7,8,11,.22);
  color: var(--rc-ink);
}
.rc2-btn:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.35);
  background: rgba(185,255,62,.06);
}

.rc2-s1Pass{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.12), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  overflow:hidden;
}
.rc2-s1PassTop{
  padding: 14px;
  border-bottom:1px solid rgba(237,241,255,.10);
}
.rc2-s1PassK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size: 12px;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s1PassT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height: 1.6;
}
.rc2-s1PassMid{
  padding: 14px;
  position:relative;
}
.rc2-s1StampLine{
  height:2px;
  border-radius: 99px;
  background: linear-gradient(90deg, transparent, rgba(185,255,62,.55), rgba(241,230,207,.25), rgba(74,31,77,.45), transparent);
  opacity:.85;
  animation: rc2Line 3.8s ease-in-out infinite;
  margin-bottom: 12px;
}
@keyframes rc2Line{
  0%{ transform: translateX(-10px); opacity:.55; }
  50%{ transform: translateX(10px); opacity:1; }
  100%{ transform: translateX(-10px); opacity:.55; }
}
.rc2-s1MiniDl{ margin:0; display:grid; gap:10px; }
.rc2-s1MiniRow{
  display:grid;
  grid-template-columns: 80px 1fr;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 18px;
  border:1px solid rgba(237,241,255,.10);
  background: rgba(7,8,11,.20);
}
.rc2-s1MiniDt{
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s1MiniDd{ margin:0; color: var(--rc-dim); line-height: 1.55; }
.rc2-s1PassBot{
  padding: 14px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s1PassNote{ margin:0; color: var(--rc-dim); line-height: 1.6; }

.rc2-s1Collage{
  display:grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  gap: 14px;
}
.rc2-s1Shot{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s1Shot:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s1Shot img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s1ShotCap{
  padding: 10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s1ShotK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .8px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s1ShotT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height: 1.45;
}
.rc2-s1Shot--a{ grid-column: 1; grid-row: 1; border-radius: 30px 18px 26px 18px; }
.rc2-s1Shot--b{ grid-column: 2; grid-row: 1 / span 2; border-radius: 18px 30px 18px 26px; }
.rc2-s1Shot--c{ grid-column: 1; grid-row: 2; border-radius: 26px 18px 30px 18px; }

/* =========================
   SECTION 2: Wheel
   ========================= */
.rc2-s2Layout{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  align-items: start;
}
.rc2-s2WheelCore{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.60), rgba(20,51,31,.14));
  box-shadow: var(--rc-shadow);
  padding: 14px;
  position:relative;
  overflow:hidden;
  min-height: 320px;
}
.rc2-s2WheelRing{
  height: 210px;
  border-radius: 28px;
  border:1px solid rgba(237,241,255,.10);
  background:
    conic-gradient(from 210deg,
      rgba(185,255,62,.26),
      rgba(241,230,207,.16),
      rgba(74,31,77,.22),
      rgba(185,255,62,.26)
    );
  opacity:.92;
  animation: rc2Spin 14s linear infinite;
}
@keyframes rc2Spin{ to{ transform: rotate(360deg); } }

.rc2-s2Slices{
  list-style:none;
  margin: 12px 0 0;
  padding:0;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
}
.rc2-s2Slice{
  border-radius: 18px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding: 10px 12px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s2Slice:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s2SliceK, .rc2-s2SliceT{
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .9px;
  text-transform: uppercase;
}
.rc2-s2SliceK{ color: rgba(241,230,207,.86); }
.rc2-s2SliceT{ color: rgba(185,255,62,.82); }

.rc2-s2WheelNote{
  margin: 12px 0 0;
  padding-top: 12px;
  border-top:1px solid rgba(237,241,255,.10);
  color: var(--rc-dim);
  line-height: 1.6;
}

.rc2-s2Tickets{
  display:grid;
  gap: 14px;
}
.rc2-s2Ticket{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s2Ticket:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s2Ticket--tilt{ transform: rotate(-.35deg); }
.rc2-s2Ticket--tilt:hover{ transform: translateY(-3px) rotate(-.15deg); }
.rc2-s2Ticket img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s2TicketCap{
  padding: 10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s2TicketK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .8px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s2TicketT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height: 1.45;
}

/* =========================
   SECTION 3: Conveyor
   ========================= */
.rc2-s3Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  grid-template-rows: auto auto;
  gap: 14px;
  align-items: stretch;
}
.rc2-s3Belt{
  grid-column: 1 / -1;
  margin:0;
  border-radius: 28px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s3Belt:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s3Belt img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s3BeltCap{
  padding: 10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s3CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .8px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s3CapT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height: 1.45;
}

.rc2-s3Chips{
  display:grid;
  gap: 10px;
  align-content:start;
}
.rc2-s3Chip{
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding: 12px;
  position:relative;
  overflow:hidden;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s3Chip::after{
  content:"";
  position:absolute;
  right:-50px;
  top:-50px;
  width:140px;height:140px;
  background: radial-gradient(circle, rgba(185,255,62,.12), transparent 60%);
  opacity:.85;
  pointer-events:none;
}
.rc2-s3Chip:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s3ChipK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size: 11px;
  letter-spacing: .9px;
  text-transform: uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s3ChipT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height: 1.55;
}
.rc2-s3Chip--a{ transform: rotate(.25deg); }
.rc2-s3Chip--b{ transform: rotate(-.25deg); }
.rc2-s3Chip--c{ transform: rotate(.18deg); }
.rc2-s3Chip--d{ transform: rotate(-.18deg); }

.rc2-s3Crate{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s3Crate:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s3Crate img{ width:100%; max-width:350px; margin:0 auto; }

/* Responsive */
@media (max-width: 1020px){
  .rc2-s1Grid{ grid-template-columns: 1fr; }
  .rc2-s1Collage{ grid-template-columns: 1fr; grid-template-rows: auto; }
  .rc2-s2Layout{ grid-template-columns: 1fr; }
  .rc2-s3Grid{ grid-template-columns: 1fr; grid-template-rows: auto; }
}

@media (max-width: 560px){
  .rc2-section{ padding: 48px 0; }
  .rc2-s1Hero{ padding-top: 86px; }
  .rc2-s1MiniRow{ grid-template-columns: 1fr; }
}
/* =========================
   SECTION 4: Routes (rail + technical board)
   ========================= */
.rc2-s4Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: .95fr 1.05fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s4Rail{
  list-style:none;
  margin:0;
  padding:14px;
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.58), rgba(20,51,31,.14));
  box-shadow: var(--rc-shadow);
  display:grid;
  gap:12px;
  position:relative;
  overflow:hidden;
}
.rc2-s4Rail::before{
  content:"";
  position:absolute;
  left:14px;
  top:14px;
  bottom:14px;
  width:2px;
  border-radius:99px;
  background: linear-gradient(180deg, rgba(185,255,62,.55), rgba(241,230,207,.18), rgba(74,31,77,.35));
  opacity:.75;
}
.rc2-s4Stop{
  padding:12px 12px 12px 18px;
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  position:relative;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s4Stop::after{
  content:"";
  position:absolute;
  left:-1px;
  top:18px;
  width:10px;
  height:10px;
  border-radius:99px;
  background: rgba(185,255,62,.92);
  box-shadow: 0 0 0 8px rgba(185,255,62,.10);
}
.rc2-s4Stop:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s4StopK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s4StopT{
  margin:8px 0 6px;
  color: var(--rc-dim);
  line-height:1.65;
}
.rc2-s4StopM{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(185,255,62,.82);
}

.rc2-s4Board{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding:14px;
  display:grid;
  grid-template-columns: 1fr;
  gap:12px;
  position:relative;
  overflow:hidden;
}
.rc2-s4Board::after{
  content:"";
  position:absolute;
  right:-70px;
  top:-70px;
  width:210px;
  height:210px;
  background: radial-gradient(circle, rgba(241,230,207,.12), transparent 60%);
  opacity:.85;
  pointer-events:none;
}
.rc2-s4Map{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.18);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s4Map:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s4Map img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s4Map--big{ border-radius: 30px 18px 26px 18px; }
.rc2-s4Map--small{
  border-radius: 18px 30px 18px 26px;
  transform: rotate(-.25deg);
}
.rc2-s4Map--small:hover{ transform: translateY(-3px) rotate(-.12deg); }

.rc2-s4Cap{
  padding:10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s4CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s4CapT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height:1.45;
}
.rc2-s4Legend{
  border-radius: 22px;
  border:1px dashed rgba(241,230,207,.22);
  background: rgba(241,230,207,.06);
  padding:12px;
  position:relative;
  z-index:1;
}
.rc2-s4LegendK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s4LegendT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height:1.6;
}

/* =========================
   SECTION 5: Bench (center card + diagonal samples)
   ========================= */
.rc2-s5Stage{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s5BenchCard{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.10), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
}
.rc2-s5BenchCard::after{
  content:"";
  position:absolute;
  inset:-70px -70px auto -70px;
  height:180px;
  background: radial-gradient(closest-side, rgba(185,255,62,.12), transparent 70%);
  transform: rotate(-10deg);
  opacity:.8;
  pointer-events:none;
}
.rc2-s5BenchTop{ padding-bottom:12px; border-bottom:1px solid rgba(237,241,255,.10); position:relative; z-index:1; }
.rc2-s5BenchK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s5BenchT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height:1.6;
}
.rc2-s5BenchGrid{
  margin-top:12px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  position:relative;
  z-index:1;
}
.rc2-s5Item{
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s5Item:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s5ItemK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s5ItemT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height:1.55;
}
.rc2-s5BenchFoot{
  margin:12px 0 0;
  padding-top:12px;
  border-top:1px solid rgba(237,241,255,.10);
  color: var(--rc-dim);
  line-height:1.65;
  position:relative;
  z-index:1;
}

.rc2-s5Samples{
  display:grid;
  gap:14px;
  align-content:start;
}
.rc2-s5Sample{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s5Sample:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s5Sample img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s5Sample--a{ transform: rotate(.35deg); }
.rc2-s5Sample--b{ transform: rotate(-.35deg); }
.rc2-s5Sample--a:hover{ transform: translateY(-3px) rotate(.18deg); }
.rc2-s5Sample--b:hover{ transform: translateY(-3px) rotate(-.18deg); }

.rc2-s5Cap{
  padding:10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s5CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s5CapT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height:1.45;
}

/* =========================
   SECTION 6: Replay protocol (big plate + steps + mini figure)
   ========================= */
.rc2-s6Layout{
  margin-top:14px;
  display:grid;
  grid-template-columns: .9fr 1.1fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s6Plate{
  margin:0;
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s6Plate:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s6Plate img{ width:100%; max-width:350px; margin:0 auto; }

.rc2-s6Cap{
  padding:10px 12px 12px;
  border-top:1px solid rgba(237,241,255,.10);
}
.rc2-s6CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s6CapT{
  display:block;
  margin-top:4px;
  color: var(--rc-dim);
  line-height:1.45;
}

.rc2-s6Steps{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(20,51,31,.12), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  display:grid;
  gap:10px;
  align-content:start;
}
.rc2-s6Steps::after{
  content:"";
  position:absolute;
  right:-70px;
  top:-70px;
  width:210px;
  height:210px;
  background: radial-gradient(circle, rgba(185,255,62,.14), transparent 60%);
  opacity:.8;
  pointer-events:none;
}
.rc2-s6Step{
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
  position:relative;
  z-index:1;
}
.rc2-s6Step:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s6StepK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s6StepT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height:1.6;
}

.rc2-s6Mini{
  margin: 4px 0 0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
  position:relative;
  z-index:1;
}
.rc2-s6Mini:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s6Mini img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s6MiniCap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }

/* Responsive */
@media (max-width: 1020px){
  .rc2-s4Grid{ grid-template-columns: 1fr; }
  .rc2-s5Stage{ grid-template-columns: 1fr; }
  .rc2-s6Layout{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
  .rc2-s5BenchGrid{ grid-template-columns: 1fr; }
}
/* =========================
   SECTION 7: Sprint matrix
   ========================= */
.rc2-s7Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s7Left{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.58), rgba(20,51,31,.14));
  box-shadow: var(--rc-shadow);
  padding:14px;
  display:grid;
  gap:12px;
  position:relative;
  overflow:hidden;
}
.rc2-s7Left::after{
  content:"";
  position:absolute;
  right:-70px; top:-70px;
  width:210px; height:210px;
  background: radial-gradient(circle, rgba(185,255,62,.12), transparent 60%);
  opacity:.8;
  pointer-events:none;
}

.rc2-s7Rail{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:10px;
  position:relative;
}
.rc2-s7Rail::before{
  content:"";
  position:absolute;
  left:10px;
  top:8px;
  bottom:8px;
  width:2px;
  border-radius:99px;
  background: linear-gradient(180deg, rgba(185,255,62,.55), rgba(241,230,207,.20), rgba(74,31,77,.35));
  opacity:.8;
}
.rc2-s7Day{
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px 12px 12px 18px;
  display:grid;
  gap:6px;
  position:relative;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s7Day::after{
  content:"";
  position:absolute;
  left:6px;
  top:16px;
  width:10px; height:10px;
  border-radius:99px;
  background: rgba(185,255,62,.92);
  box-shadow: 0 0 0 8px rgba(185,255,62,.10);
}
.rc2-s7Day:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s7DayK{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s7DayT{ color: var(--rc-dim); line-height:1.55; }
.rc2-s7DayM{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(185,255,62,.82);
}

.rc2-s7Matrix{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  position:relative;
  z-index:1;
}
.rc2-s7Cell{
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s7Cell:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s7CellK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s7CellT{
  margin:8px 0 0;
  color: var(--rc-dim);
  line-height:1.6;
}

.rc2-s7Posters{ display:grid; gap:14px; align-content:start; }
.rc2-s7Poster{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s7Poster:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s7Poster img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s7Poster--a{ transform: rotate(.28deg); border-radius: 30px 18px 26px 18px; }
.rc2-s7Poster--b{ transform: rotate(-.28deg); border-radius: 18px 30px 18px 26px; }
.rc2-s7Poster--a:hover{ transform: translateY(-3px) rotate(.14deg); }
.rc2-s7Poster--b:hover{ transform: translateY(-3px) rotate(-.14deg); }

.rc2-s7Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s7CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s7CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* =========================
   SECTION 8: BPM Console (стили “как на скрине”)
   ========================= */
.rc2-s8Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 350px 1fr 350px;
  gap:14px;
  align-items:stretch;
}

.rc2-s8Side{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s8Side:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s8Side img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s8Side--l{ border-radius: 30px 18px 26px 18px; }
.rc2-s8Side--r{ border-radius: 18px 30px 18px 26px; }

.rc2-s8Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s8CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s8CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

.rc2-s8Console{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.10), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  padding:14px;
  display:grid;
  gap:12px;
  align-content:start;
  position:relative;
  overflow:hidden;
}
.rc2-s8Console::after{
  content:"";
  position:absolute;
  inset:-80px -80px auto -80px;
  height: 200px;
  background: radial-gradient(closest-side, rgba(241,230,207,.12), transparent 70%);
  transform: rotate(-12deg);
  opacity:.85;
  pointer-events:none;
}

.rc2-s8Btn{
  appearance:none;
  border: 1px solid rgba(237,241,255,.18);
  background: rgba(255,255,255,.90);
  color: #0a0b10;
  border-radius: 16px;
  padding: 14px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
  cursor:pointer;
  box-shadow: 0 12px 30px rgba(0,0,0,.18);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
  position:relative;
  z-index:1;
}
.rc2-s8Btn:hover{
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
  filter: brightness(1.02);
}
.rc2-s8Btn.is-active{
  border-color: rgba(185,255,62,.55);
  box-shadow: 0 18px 52px rgba(185,255,62,.12), 0 18px 44px rgba(0,0,0,.20);
}
.rc2-s8BtnName{
  font-weight: 800;
  font-size: 18px;
  letter-spacing:.2px;
}
.rc2-s8BtnVal{
  font-family: var(--rc-font-mono);
  font-size: 13px;
  letter-spacing:.9px;
  text-transform: uppercase;
  opacity:.85;
}

.rc2-s8Hint{
  margin: 4px 0 0;
  color: var(--rc-dim);
  line-height:1.65;
  position:relative;
  z-index:1;
}

/* =========================
   SECTION 9: Patch wall (horizontal snap)
   ========================= */
.rc2-s9Top{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
  align-items:stretch;
}
.rc2-s9Art{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s9Art:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s9Art img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s9Art--a{ border-radius: 30px 18px 26px 18px; }
.rc2-s9Art--b{ border-radius: 18px 30px 18px 26px; }

.rc2-s9Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s9CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s9CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

.rc2-s9Strip{
  margin-top:14px;
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(20,51,31,.10), rgba(7,8,11,.55));
  box-shadow: var(--rc-shadow);
  padding: 12px;
  position:relative;
  overflow:hidden;
}
.rc2-s9Strip::after{
  content:"";
  position:absolute;
  right:-90px; top:-90px;
  width:240px; height:240px;
  background: radial-gradient(circle, rgba(74,31,77,.18), transparent 62%);
  opacity:.85;
  pointer-events:none;
}

.rc2-s9Track{
  display:flex;
  gap:12px;
  overflow:auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 8px;
  outline:none;
}
.rc2-s9Track::-webkit-scrollbar{ height: 10px; }
.rc2-s9Track::-webkit-scrollbar-thumb{
  background: rgba(237,241,255,.14);
  border-radius: 99px;
}
.rc2-s9Card{
  scroll-snap-align: start;
  min-width: 320px;
  max-width: 360px;
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding: 12px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s9Card:hover{
  transform: translateY(-2px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s9CardK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s9CardT{
  margin:10px 0 0;
  color: var(--rc-dim);
  line-height:1.65;
}
.rc2-s9CardM{
  margin:10px 0 0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(185,255,62,.82);
}

.rc2-s9Hint{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top: 10px;
  color: var(--rc-dim);
}
.rc2-s9HintDot{
  width:10px; height:10px;
  border-radius:99px;
  background: rgba(185,255,62,.88);
  box-shadow: 0 0 0 8px rgba(185,255,62,.10);
}
.rc2-s9HintText{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
}

/* Responsive */
@media (max-width: 1020px){
  .rc2-s7Grid{ grid-template-columns: 1fr; }
  .rc2-s8Grid{ grid-template-columns: 1fr; }
  .rc2-s9Top{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
  .rc2-s7Matrix{ grid-template-columns: 1fr; }
  .rc2-s9Card{ min-width: 280px; }
}
/* =========================
   SECTION 10: Loom scoreboard
   ========================= */
.rc2-s10Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s10LoomBoard{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.62), rgba(20,51,31,.12));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 360px;
}

.rc2-s10Weave{
  position:absolute;
  inset: 10px;
  border-radius: 26px;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(237,241,255,.06) 0px,
      rgba(237,241,255,.06) 1px,
      rgba(237,241,255,0) 16px,
      rgba(237,241,255,0) 20px
    ),
    repeating-linear-gradient(
      180deg,
      rgba(185,255,62,.06) 0px,
      rgba(185,255,62,.06) 1px,
      rgba(185,255,62,0) 34px,
      rgba(185,255,62,0) 44px
    );
  opacity:.55;
  transform: translateY(0);
  animation: rc2WeaveDrift 8.5s ease-in-out infinite;
  pointer-events:none;
}
@keyframes rc2WeaveDrift{
  0%{ transform: translateY(0); opacity:.50; }
  50%{ transform: translateY(8px); opacity:.70; }
  100%{ transform: translateY(0); opacity:.50; }
}

.rc2-s10Legend{
  position:relative;
  z-index:1;
  display:grid;
  gap:12px;
}
.rc2-s10LegendK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s10Threads{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
}
.rc2-s10Thread{
  appearance:none;
  cursor:pointer;
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px;
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  gap:12px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s10Thread:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s10ThreadA{
  color: rgba(229,233,255,.86);
  line-height:1.25;
  font-weight:700;
}
.rc2-s10ThreadB{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(185,255,62,.82);
  white-space:nowrap;
}

.rc2-s10LegendNote{
  margin:0;
  padding-top:12px;
  border-top:1px solid rgba(237,241,255,.10);
  color: var(--rc-dim);
  line-height:1.65;
}

.rc2-s10Stamps{
  display:grid;
  gap:14px;
  align-content:start;
}
.rc2-s10Stamp{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s10Stamp:hover{
  transform: translateY(-3px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s10Stamp img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s10Stamp--a{ transform: rotate(.25deg); border-radius: 30px 18px 26px 18px; }
.rc2-s10Stamp--b{ transform: rotate(-.25deg); border-radius: 18px 30px 18px 26px; }
.rc2-s10Stamp--a:hover{ transform: translateY(-3px) rotate(.12deg); }
.rc2-s10Stamp--b:hover{ transform: translateY(-3px) rotate(-.12deg); }

.rc2-s10Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s10CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s10CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* =========================
   SECTION 11: Duo draft
   ========================= */
.rc2-s11Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:14px;
  align-items:stretch;
}
.rc2-s11Board{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.10), rgba(7,8,11,.58));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
}
.rc2-s11Board::after{
  content:"";
  position:absolute;
  right:-80px; top:-80px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(241,230,207,.12), transparent 62%);
  opacity:.85;
  pointer-events:none;
}
.rc2-s11BoardTop{
  padding-bottom:12px;
  border-bottom:1px solid rgba(237,241,255,.10);
  position:relative;
  z-index:1;
}
.rc2-s11BoardK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s11BoardT{ margin:8px 0 0; color: var(--rc-dim); line-height:1.6; }

.rc2-s11Roles{
  margin-top:12px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:10px;
  position:relative;
  z-index:1;
}
.rc2-s11Role{
  appearance:none;
  cursor:pointer;
  border-radius: 22px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:12px;
  text-align:left;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s11Role:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s11Role.is-picked{
  border-color: rgba(185,255,62,.55);
  box-shadow: 0 0 0 2px rgba(185,255,62,.14), 0 18px 42px rgba(0,0,0,.18);
}
.rc2-s11RoleA{
  display:block;
  font-weight:800;
  color: rgba(229,233,255,.92);
  line-height:1.2;
}
.rc2-s11RoleB{
  display:block;
  margin-top:8px;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.82);
}

.rc2-s11Preview{
  margin-top:12px;
  border-radius: 26px;
  border:1px dashed rgba(241,230,207,.22);
  background: rgba(241,230,207,.06);
  padding:12px;
  position:relative;
  z-index:1;
}
.rc2-s11PrevK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s11PrevT{ margin:10px 0 0; color: var(--rc-dim); line-height:1.7; }
.rc2-s11PrevM{ margin:10px 0 0; color: var(--rc-dim); line-height:1.6; }

.rc2-s11Stack{ display:grid; gap:14px; align-content:start; }
.rc2-s11Shot{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s11Shot:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s11Shot img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s11Shot--a{ transform: rotate(.28deg); border-radius: 30px 18px 26px 18px; }
.rc2-s11Shot--b{ transform: rotate(-.28deg); border-radius: 18px 30px 18px 26px; }
.rc2-s11Shot--a:hover{ transform: translateY(-3px) rotate(.14deg); }
.rc2-s11Shot--b:hover{ transform: translateY(-3px) rotate(-.14deg); }

.rc2-s11Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s11CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s11CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* =========================
   SECTION 12: Seal vitrine (orbit)
   ========================= */
.rc2-s12Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s12Core{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.62), rgba(20,51,31,.10));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 360px;
}

.rc2-s12Orbit{
  position:absolute;
  inset:-40px;
  border-radius: 999px;
  background:
    conic-gradient(from 180deg,
      rgba(185,255,62,.22),
      rgba(241,230,207,.12),
      rgba(74,31,77,.18),
      rgba(185,255,62,.22)
    );
  opacity:.65;
  filter: blur(1px);
  animation: rc2Orbit 18s linear infinite;
  pointer-events:none;
}
@keyframes rc2Orbit{ to{ transform: rotate(360deg); } }

.rc2-s12Pedestal{
  position:relative;
  z-index:1;
  border-radius: 28px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.rc2-s12PedK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s12PedT{ margin:10px 0 0; color: var(--rc-dim); line-height:1.7; }

.rc2-s12Badges{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.rc2-s12Badge{
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(255,255,255,.06);
  padding: 10px 12px;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(229,233,255,.78);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s12Badge:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.06);
}

.rc2-s12Docs{
  display:grid;
  gap:14px;
  align-content:start;
}
.rc2-s12Doc{
  margin:0;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s12Doc:hover{
  transform: translateY(-3px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s12Doc img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s12Doc--a{ transform: rotate(.25deg); border-radius: 30px 18px 26px 18px; }
.rc2-s12Doc--b{ transform: rotate(-.25deg); border-radius: 18px 30px 18px 26px; }
.rc2-s12Doc--a:hover{ transform: translateY(-3px) rotate(.12deg); }
.rc2-s12Doc--b:hover{ transform: translateY(-3px) rotate(-.12deg); }

.rc2-s12Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s12CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s12CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* Responsive */
@media (max-width: 1020px){
  .rc2-s10Grid{ grid-template-columns: 1fr; }
  .rc2-s11Grid{ grid-template-columns: 1fr; }
  .rc2-s12Grid{ grid-template-columns: 1fr; }
}
@media (max-width: 560px){
  .rc2-s10Threads{ grid-template-columns: 1fr; }
  .rc2-s11Roles{ grid-template-columns: 1fr; }
}
/* =========================
   SECTION 13: Pin board + ribbons
   ========================= */
.rc2-s13Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: .95fr 1.05fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s13Ribbons{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.62), rgba(74,31,77,.10));
  box-shadow: var(--rc-shadow);
  padding:14px;
  display:grid;
  gap:10px;
  position:relative;
  overflow:hidden;
}
.rc2-s13Ribbons::after{
  content:"";
  position:absolute;
  right:-90px; top:-90px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(185,255,62,.14), transparent 62%);
  opacity:.85;
  pointer-events:none;
}

.rc2-s13Ribbon{
  appearance:none;
  cursor:pointer;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  border-radius: 22px;
  padding: 12px 12px;
  text-align:left;
  display:grid;
  gap:6px;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
  position:relative;
  z-index:1;
}
.rc2-s13Ribbon:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s13Ribbon--a{ transform: rotate(-.35deg); }
.rc2-s13Ribbon--b{ transform: rotate(.25deg); }
.rc2-s13Ribbon--c{ transform: rotate(-.18deg); }
.rc2-s13Ribbon--d{ transform: rotate(.18deg); }
.rc2-s13Ribbon--a:hover{ transform: translateY(-2px) rotate(-.18deg); }
.rc2-s13Ribbon--b:hover{ transform: translateY(-2px) rotate(.12deg); }
.rc2-s13Ribbon--c:hover{ transform: translateY(-2px) rotate(-.08deg); }
.rc2-s13Ribbon--d:hover{ transform: translateY(-2px) rotate(.08deg); }

.rc2-s13Rk{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s13Rt{ color: rgba(229,233,255,.88); line-height:1.45; font-weight:800; }
.rc2-s13Rm{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(185,255,62,.82);
}

.rc2-s13Note{
  margin: 6px 0 0;
  padding-top: 12px;
  border-top: 1px solid rgba(237,241,255,.10);
  color: var(--rc-dim);
  line-height: 1.65;
  position:relative;
  z-index:1;
}

.rc2-s13Board{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 420px;
}

.rc2-s13Gridlines{
  position:absolute;
  inset:10px;
  border-radius: 26px;
  background:
    repeating-linear-gradient(90deg,
      rgba(237,241,255,.06) 0px,
      rgba(237,241,255,.06) 1px,
      rgba(237,241,255,0) 24px,
      rgba(237,241,255,0) 30px
    ),
    repeating-linear-gradient(180deg,
      rgba(237,241,255,.04) 0px,
      rgba(237,241,255,.04) 1px,
      rgba(237,241,255,0) 34px,
      rgba(237,241,255,0) 44px
    );
  opacity:.38;
  pointer-events:none;
}

.rc2-s13Pin{
  margin:0;
  width: min(350px, 78%);
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: 0 22px 70px rgba(0,0,0,.35);
  overflow:hidden;
  position:absolute;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
  z-index:1;
}
.rc2-s13Pin:hover{
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s13Pin img{ width:100%; max-width:350px; margin:0 auto; }
.rc2-s13Pin--a{ left:14px; top:14px; transform: rotate(-1.1deg); }
.rc2-s13Pin--b{ right:14px; bottom:64px; transform: rotate(1.1deg); }
.rc2-s13Pin--a:hover{ transform: translateY(-3px) rotate(-.6deg); }
.rc2-s13Pin--b:hover{ transform: translateY(-3px) rotate(.6deg); }

.rc2-s13Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s13CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s13CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

.rc2-s13PinsMeta{
  position:absolute;
  left:14px;
  right:14px;
  bottom:14px;
  border-radius: 22px;
  border:1px dashed rgba(241,230,207,.22);
  background: rgba(241,230,207,.06);
  padding: 12px;
  z-index:2;
}
.rc2-s13PinsK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s13PinsT{ margin:8px 0 0; color: var(--rc-dim); line-height:1.6; }

/* =========================
   SECTION 14: Turntable + tape column
   ========================= */
.rc2-s14Layout{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s14Turntable{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(7,8,11,.62), rgba(20,51,31,.10));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 420px;
}

.rc2-s14Ring{
  position:absolute;
  inset:-60px;
  border-radius: 999px;
  background:
    conic-gradient(from 120deg,
      rgba(185,255,62,.22),
      rgba(241,230,207,.10),
      rgba(74,31,77,.16),
      rgba(185,255,62,.22)
    );
  opacity:.55;
  animation: rc2SpinSlow 22s linear infinite;
  pointer-events:none;
}
@keyframes rc2SpinSlow{ to{ transform: rotate(360deg); } }

.rc2-s14Disc{
  margin: 26px auto 0;
  width: min(350px, 92%);
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.14);
  background: rgba(7,8,11,.22);
  overflow:hidden;
  box-shadow: 0 28px 80px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05);
  position:relative;
  z-index:1;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s14Disc:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s14Disc img{
  width:100%;
  max-width:350px;
  margin:0 auto;
  border-radius: 999px;
}

.rc2-s14Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }

.rc2-s14Tags{
  list-style:none;
  margin: 14px 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  position:relative;
  z-index:1;
}
.rc2-s14Tag{
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(255,255,255,.06);
  padding: 10px 12px;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(229,233,255,.78);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s14Tag:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.06);
}

.rc2-s14TapeCol{
  display:grid;
  gap:14px;
  align-content:start;
}
.rc2-s14Tape{
  margin:0;
  border-radius: 28px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s14Tape:hover{
  transform: translateY(-3px);
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.05);
}
.rc2-s14Tape img{ width:100%; max-width:350px; margin:0 auto; }

.rc2-s14TapeCap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }

.rc2-s14Rules{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.10), rgba(7,8,11,.58));
  box-shadow: var(--rc-shadow);
  padding:14px;
}
.rc2-s14RulesK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s14RulesList{
  margin: 10px 0 0;
  padding-left: 18px;
  color: var(--rc-dim);
  line-height:1.7;
}
.rc2-s14RulesList li{ margin: 8px 0; }

/* shared cap typography for s14 */
.rc2-s14CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s14CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* =========================
   SECTION 15: Manifest with floats (unique placement)
   ========================= */
.rc2-s15Paper{
  margin-top:14px;
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
}
.rc2-s15Paper::after{
  content:"";
  position:absolute;
  right:-90px; top:-90px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(185,255,62,.12), transparent 62%);
  opacity:.85;
  pointer-events:none;
}
.rc2-s15Paper::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius: 26px;
  background: repeating-linear-gradient(
    180deg,
    rgba(237,241,255,.05) 0px,
    rgba(237,241,255,.05) 1px,
    rgba(237,241,255,0) 34px,
    rgba(237,241,255,0) 44px
  );
  opacity:.25;
  pointer-events:none;
}

.rc2-s15P{
  position:relative;
  z-index:1;
  color: var(--rc-dim);
  line-height: 1.85;
  margin: 0 0 12px;
}

.rc2-s15Float{
  margin: 0 14px 10px 0;
  width: min(350px, 48%);
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: 0 22px 70px rgba(0,0,0,.32);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
  position:relative;
  z-index:2;
}
.rc2-s15Float:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s15Float img{ width:100%; max-width:350px; margin:0 auto; }

.rc2-s15Float--l{ float:left; transform: rotate(-.35deg); }
.rc2-s15Float--r{
  float:right;
  margin: 0 0 10px 14px;
  transform: rotate(.35deg);
}
.rc2-s15Float--l:hover{ transform: translateY(-3px) rotate(-.18deg); }
.rc2-s15Float--r:hover{ transform: translateY(-3px) rotate(.18deg); }

.rc2-s15Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s15CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s15CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

/* clearfix */
.rc2-s15Paper::after{ /* already used for glow; keep glow via ::after and clear via extra rule below */ }
.rc2-s15Paper{ }
.rc2-s15Paper::marker{ content:""; }
.rc2-s15Paper:after{ /* glow stays */ }
.rc2-s15Paper::after{ /* glow stays */ }
.rc2-s15Paper::before{ /* lines */ }
.rc2-s15Paper::after{ /* glow */ }
.rc2-s15Paper::after{ }
.rc2-s15Paper::after{ }

.rc2-s15Inner::after{ content:""; display:block; clear:both; }

/* Responsive */
@media (max-width: 1020px){
  .rc2-s13Grid{ grid-template-columns: 1fr; }
  .rc2-s14Layout{ grid-template-columns: 1fr; }
  .rc2-s13Board{ min-height: 520px; }
}
@media (max-width: 560px){
  .rc2-s13Pin{
    position:relative;
    left:auto; right:auto; top:auto; bottom:auto;
    width: 100%;
    transform: none;
    box-shadow: var(--rc-shadow);
  }
  .rc2-s13Board{ display:grid; gap:14px; min-height: auto; }
  .rc2-s13PinsMeta{ position:relative; left:auto; right:auto; bottom:auto; }

  .rc2-s15Float{
    float:none;
    width: 100%;
    margin: 0 0 12px;
    transform:none;
  }
  .rc2-s15Float--r{ margin: 0 0 12px; }
}
/* =========================
   SECTION 16: Arena (dial + pinned shots)
   ========================= */
.rc2-s16Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: .9fr 1.1fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s16Console{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(74,31,77,.10), rgba(7,8,11,.62));
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 420px;
}
.rc2-s16Console::after{
  content:"";
  position:absolute;
  left:-90px; top:-90px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(185,255,62,.14), transparent 62%);
  opacity:.85;
  pointer-events:none;
}

.rc2-s16Dial{
  width: min(340px, 92%);
  aspect-ratio: 1 / 1;
  margin: 6px auto 14px;
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.14);
  background:
    radial-gradient(circle at 50% 50%, rgba(7,8,11,.72), rgba(7,8,11,.18) 62%, rgba(7,8,11,0) 72%),
    conic-gradient(
      rgba(185,255,62,.28),
      rgba(241,230,207,.12),
      rgba(74,31,77,.18),
      rgba(185,255,62,.28)
    );
  box-shadow: 0 26px 80px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06);
  position:relative;
  animation: rc2ArenaSpin 18s linear infinite;
}
@keyframes rc2ArenaSpin{
  to{ transform: rotate(360deg); }
}
.rc2-s16Dial::after{
  content:"";
  position:absolute;
  inset: 16px;
  border-radius: 999px;
  background:
    repeating-linear-gradient(90deg,
      rgba(237,241,255,.06) 0px,
      rgba(237,241,255,.06) 1px,
      rgba(237,241,255,0) 18px,
      rgba(237,241,255,0) 24px
    );
  opacity:.30;
  pointer-events:none;
}

.rc2-s16Panel{
  border-radius: 28px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  padding:14px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.rc2-s16PanelK{
  margin:0;
  font-family: var(--rc-font-mono);
  font-size:12px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s16PanelT{ margin:10px 0 0; color: var(--rc-dim); line-height:1.7; }

.rc2-s16Chips{
  margin-top:12px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.rc2-s16Chip{
  appearance:none;
  cursor:pointer;
  border-radius: 999px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(255,255,255,.06);
  padding: 10px 12px;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(229,233,255,.78);
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s16Chip:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.06);
}
.rc2-s16Chip.is-on{
  border-color: rgba(185,255,62,.55);
  box-shadow: 0 0 0 2px rgba(185,255,62,.12);
  color: rgba(241,230,207,.92);
}
.rc2-s16Rule{
  margin:12px 0 0;
  padding-top:12px;
  border-top:1px solid rgba(237,241,255,.10);
  color: var(--rc-dim);
  line-height:1.7;
}

.rc2-s16ShotsBoard{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
  min-height: 520px;
}
.rc2-s16GridFx{
  position:absolute;
  inset:10px;
  border-radius: 26px;
  background:
    repeating-linear-gradient(90deg,
      rgba(237,241,255,.06) 0px,
      rgba(237,241,255,.06) 1px,
      rgba(237,241,255,0) 22px,
      rgba(237,241,255,0) 28px
    ),
    repeating-linear-gradient(180deg,
      rgba(237,241,255,.04) 0px,
      rgba(237,241,255,.04) 1px,
      rgba(237,241,255,0) 34px,
      rgba(237,241,255,0) 44px
    );
  opacity:.32;
  pointer-events:none;
}

.rc2-s16Shot{
  margin:0;
  width: min(350px, 64%);
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: 0 22px 70px rgba(0,0,0,.35);
  overflow:hidden;
  position:absolute;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
  z-index:1;
}
.rc2-s16Shot:hover{
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s16Shot img{ width:100%; max-width:350px; margin:0 auto; }

.rc2-s16Shot--a{ left:14px; top:14px; transform: rotate(-1.0deg); }
.rc2-s16Shot--b{ right:14px; top:64px; transform: rotate(1.0deg); }
.rc2-s16Shot--c{ left:18px; bottom:78px; transform: rotate(1.1deg); }
.rc2-s16Shot--d{ right:18px; bottom:14px; transform: rotate(-1.1deg); }

.rc2-s16Shot--a:hover{ transform: translateY(-3px) rotate(-.5deg); }
.rc2-s16Shot--b:hover{ transform: translateY(-3px) rotate(.5deg); }
.rc2-s16Shot--c:hover{ transform: translateY(-3px) rotate(.6deg); }
.rc2-s16Shot--d:hover{ transform: translateY(-3px) rotate(-.6deg); }

.rc2-s16Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s16CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s16CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

.rc2-s16StampLine{
  position:absolute;
  left:14px;
  right:14px;
  top:50%;
  transform: translateY(-50%);
  display:flex;
  justify-content:space-between;
  gap:12px;
  z-index:0;
  opacity:.9;
  pointer-events:none;
}
.rc2-s16Stamp{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  color: rgba(241,230,207,.55);
  border:1px dashed rgba(241,230,207,.22);
  padding:10px 12px;
  border-radius: 999px;
  background: rgba(241,230,207,.05);
}

/* =========================
   SECTION 17: Close (letter + horizontal snap gallery)
   ========================= */
.rc2-s17Grid{
  margin-top:14px;
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
  align-items:stretch;
}

.rc2-s17Letter{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  box-shadow: var(--rc-shadow);
  padding:14px;
  position:relative;
  overflow:hidden;
}
.rc2-s17Letter::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius: 26px;
  background: repeating-linear-gradient(
    180deg,
    rgba(237,241,255,.05) 0px,
    rgba(237,241,255,.05) 1px,
    rgba(237,241,255,0) 34px,
    rgba(237,241,255,0) 44px
  );
  opacity:.22;
  pointer-events:none;
}
.rc2-s17Letter::after{
  content:"";
  position:absolute;
  right:-90px; top:-90px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(185,255,62,.12), transparent 62%);
  opacity:.85;
  pointer-events:none;
}
.rc2-s17P{
  position:relative;
  z-index:1;
  color: var(--rc-dim);
  line-height:1.85;
  margin: 0 0 12px;
}

.rc2-s17Links{
  position:relative;
  z-index:1;
  margin-top: 12px;
  padding-top: 12px;
  border-top:1px solid rgba(237,241,255,.10);
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.rc2-s17Cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius: 999px;
  border:1px solid rgba(185,255,62,.34);
  background: rgba(185,255,62,.10);
  color: rgba(241,230,207,.92);
  padding: 10px 14px;
  text-decoration:none;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.rc2-s17Cta:hover{
  transform: translateY(-2px);
  border-color: rgba(185,255,62,.55);
  background: rgba(185,255,62,.14);
}
.rc2-s17Cta--ghost{
  border-color: rgba(237,241,255,.16);
  background: rgba(255,255,255,.06);
  color: rgba(229,233,255,.78);
}
.rc2-s17Cta--ghost:hover{
  border-color: rgba(241,230,207,.26);
  background: rgba(241,230,207,.06);
}
.rc2-s17Mini{
  color: rgba(229,233,255,.72);
  text-decoration:none;
  border-bottom:1px dashed rgba(229,233,255,.26);
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
  padding: 6px 2px;
}
.rc2-s17Mini:hover{ border-bottom-color: rgba(185,255,62,.40); }

.rc2-s17Gallery{
  border-radius: 30px;
  border:1px solid rgba(237,241,255,.12);
  background: linear-gradient(135deg, rgba(20,51,31,.10), rgba(7,8,11,.62));
  box-shadow: var(--rc-shadow);
  padding:12px;
  position:relative;
  overflow:hidden;
}
.rc2-s17Gallery::after{
  content:"";
  position:absolute;
  left:-90px; bottom:-90px;
  width:260px; height:260px;
  background: radial-gradient(circle, rgba(74,31,77,.18), transparent 62%);
  opacity:.85;
  pointer-events:none;
}

.rc2-s17Rail{
  display:flex;
  gap:12px;
  overflow:auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 8px;
  outline:none;
  position:relative;
  z-index:1;
}
.rc2-s17Rail::-webkit-scrollbar{ height: 10px; }
.rc2-s17Rail::-webkit-scrollbar-thumb{
  background: rgba(237,241,255,.14);
  border-radius: 99px;
}

.rc2-s17Frame{
  margin:0;
  scroll-snap-align: start;
  min-width: 320px;
  max-width: 360px;
  border-radius: 26px;
  border:1px solid rgba(237,241,255,.12);
  background: rgba(7,8,11,.22);
  overflow:hidden;
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.rc2-s17Frame:hover{
  transform: translateY(-3px);
  border-color: rgba(185,255,62,.28);
  background: rgba(185,255,62,.05);
}
.rc2-s17Frame img{ width:100%; max-width:350px; margin:0 auto; }

.rc2-s17Cap{ padding:10px 12px 12px; border-top:1px solid rgba(237,241,255,.10); }
.rc2-s17CapK{
  display:block;
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.8px;
  text-transform:uppercase;
  color: rgba(241,230,207,.86);
}
.rc2-s17CapT{ display:block; margin-top:4px; color: var(--rc-dim); line-height:1.45; }

.rc2-s17Hint{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top: 10px;
  color: var(--rc-dim);
  position:relative;
  z-index:1;
}
.rc2-s17HintDot{
  width:10px; height:10px;
  border-radius:99px;
  background: rgba(185,255,62,.88);
  box-shadow: 0 0 0 8px rgba(185,255,62,.10);
}
.rc2-s17HintText{
  font-family: var(--rc-font-mono);
  font-size:11px;
  letter-spacing:.9px;
  text-transform:uppercase;
}

/* Responsive */
@media (max-width: 1020px){
  .rc2-s16Grid{ grid-template-columns: 1fr; }
  .rc2-s17Grid{ grid-template-columns: 1fr; }
  .rc2-s16ShotsBoard{ min-height: 560px; }
}
@media (max-width: 560px){
  .rc2-s16Shot{
    position:relative;
    left:auto; right:auto; top:auto; bottom:auto;
    width: 100%;
    transform:none;
    box-shadow: var(--rc-shadow);
    margin-bottom: 12px;
  }
  .rc2-s16ShotsBoard{ display:grid; gap:12px; min-height:auto; }
  .rc2-s16StampLine{ position:relative; left:auto; right:auto; top:auto; transform:none; justify-content:flex-start; flex-wrap:wrap; }

  .rc2-s17Frame{ min-width: 280px; }
}
