/* =========================================================
   RADIO ILLUMINATI — SHARED CLEAN CANVAS / SENTIENT AI
   Header remains the calibrated HOME v0.6 geometry.
   ========================================================= */
:root{color-scheme:dark;}
html,body{margin:0;padding:0;background:#020203;color:#fff;}
body.radio-illuminati-sentient{overflow-x:hidden;font-family:Arial,Helvetica,sans-serif;}
*,*::before,*::after{box-sizing:border-box;}
img,video,canvas,iframe{max-width:100%;}
.ri-skip-link{position:fixed;left:12px;top:12px;z-index:100000;padding:10px 14px;background:#fff;color:#000;transform:translateY(-180%);transition:transform .2s ease;text-decoration:none;font-weight:700;}
.ri-skip-link:focus{transform:none;}

.ri-site-nav{
  position:relative;
  z-index:1000;
  width:100%;
  height:54px;
  min-height:54px;
  display:flex;
  align-items:center;
  padding:0 18px;
  background:#000;
  border-bottom:3px solid #9c0000;
}
.ri-nav-mark{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:46px;height:46px;color:#fff;text-decoration:none;}
.ri-nav-logo{display:block;width:42px;height:auto;}
.ri-nav-links{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:14px;white-space:nowrap;}
.ri-nav-links a{position:relative;color:rgba(255,255,255,.94);text-decoration:none;font-size:20px;font-weight:400;line-height:1;letter-spacing:.15em;text-transform:uppercase;transition:color .16s ease;}
.ri-nav-links a::after{content:"";position:absolute;left:0;right:.15em;bottom:-10px;height:2px;background:#9c0000;transform:scaleX(0);transform-origin:center;transition:transform .16s ease;}
.ri-nav-links a:hover,.ri-nav-links a:focus-visible{color:#9c0000;}
.ri-nav-links a:hover::after,.ri-nav-links a:focus-visible::after{transform:scaleX(1);}
.ri-nav-links a[aria-current="page"]{color:rgba(255,255,255,.94);}
.ri-nav-links a[aria-current="page"]::after{transform:scaleX(0);}
.ri-nav-mobile{display:none;position:relative;margin-left:auto;}
.ri-nav-mobile summary{list-style:none;cursor:pointer;color:#fff;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;}
.ri-nav-mobile summary::-webkit-details-marker{display:none;}
.ri-nav-mobile-panel{position:absolute;right:0;top:30px;min-width:190px;padding:12px;background:rgba(0,0,0,.96);border:1px solid rgba(255,255,255,.12);}
.ri-nav-mobile-panel a{display:block;padding:10px 8px;color:#fff;text-decoration:none;font-size:11px;letter-spacing:.14em;text-transform:uppercase;}
@media(max-width:1280px) and (min-width:768px){.ri-nav-links{gap:12px}.ri-nav-links a{font-size:18px}}
@media(max-width:767px){.ri-site-nav{height:58px;min-height:58px;padding:0 17px;border-bottom-color:rgba(156,0,0,.90)}.ri-nav-logo{width:38px}.ri-nav-mark{width:40px;height:44px}.ri-nav-links{display:none}.ri-nav-mobile{display:block}}

/* =========================================================
   SENTIENT AI — source visual system preserved.
   ========================================================= */
/* ============================================================
   RADIO ILLUMINATI
   SENTIENT AI v0.7
============================================================= */

#ri-sentient-v2 {

  --bg: #020203;
  --panel: #0b0b10;

  --white: #f5f2eb;
  --white95: rgba(245,242,235,.95);
  --white88: rgba(245,242,235,.88);
  --white80: rgba(245,242,235,.80);
  --white70: rgba(245,242,235,.70);
  --white58: rgba(245,242,235,.58);

  --line: rgba(255,255,255,.13);
  --line2: rgba(255,255,255,.22);

  --gold: #c8a76b;
  --gold-light: #e0c48e;

  --ai: #9b8cff;
  --ai-light: #c4c8ff;
  --silver: #dfd9eb;

  --serif:
    "Iowan Old Style",
    Baskerville,
    "Times New Roman",
    Georgia,
    serif;

  --sans:
    Inter,
    Helvetica,
    Arial,
    sans-serif;

  --mono:
    "SFMono-Regular",
    Consolas,
    "Liberation Mono",
    monospace;

  position: relative;

  width: 100vw;
  max-width: none;

  margin-left:
    calc(50% - 50vw);

  margin-right:
    calc(50% - 50vw);

  overflow: hidden;

  color:
    var(--white) !important;

  background:

    radial-gradient(
      circle at 77% 7%,
      rgba(91,72,180,.10),
      transparent 34rem
    ),

    radial-gradient(
      circle at 10% 38%,
      rgba(200,167,107,.045),
      transparent 36rem
    ),

    var(--bg);

  box-shadow:
    0 0 0 100vmax var(--bg);

  clip-path:
    inset(0 -100vmax);

  font-family:
    var(--sans);

  font-size: 18px;

  line-height: 1.7;

}


/* RESET */

#ri-sentient-v2 *,
#ri-sentient-v2 *::before,
#ri-sentient-v2 *::after {
  box-sizing: border-box;
}


#ri-sentient-v2 h1,
#ri-sentient-v2 h2,
#ri-sentient-v2 h3,
#ri-sentient-v2 p,
#ri-sentient-v2 blockquote,
#ri-sentient-v2 ol {
  margin-top: 0;
}


#ri-sentient-v2 h1,
#ri-sentient-v2 h2,
#ri-sentient-v2 h3 {
  color:
    var(--white) !important;
}


#ri-sentient-v2 a {
  color: inherit;
}


#ri-sentient-v2 button {

  appearance:
    none !important;

  -webkit-appearance:
    none !important;

  font: inherit;

}


.ri-sa-wrap {

  position: relative;

  width:
    min(
      1360px,
      calc(100% - 11vw)
    );

  margin-inline: auto;

}


.ri-sa-section {

  position: relative;

  padding:
    clamp(100px,10vw,165px)
    0;

}


.ri-kicker {

  margin-bottom: 30px;

  color:
    var(--gold-light) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.84vw,.9rem);

  font-weight: 500;

  letter-spacing: .15em;

  line-height: 1.55;

  text-transform: uppercase;

}



/* ============================================================
   HERO
============================================================= */

.ri-sa-hero {

  position: relative;

  display: flex;

  align-items: center;

  min-height: 100svh;

  padding:
    clamp(130px,14vh,185px)
    0
    clamp(110px,13vh,165px);

  border-bottom:
    1px solid var(--line);

}


.ri-sa-hero::before {

  content: "";

  position: absolute;

  inset: 0;

  opacity: .22;

  pointer-events: none;

  background:

    repeating-linear-gradient(
      90deg,
      transparent 0,
      transparent calc(25% - 1px),
      rgba(255,255,255,.04) 25%
    );

}


.ri-sa-hero::after {

  content: "";

  position: absolute;

  left: 5.5vw;

  right: 5.5vw;

  bottom: 0;

  height: 1px;

  background:

    linear-gradient(
      90deg,
      transparent,
      rgba(200,167,107,.7),
      rgba(155,140,255,.82),
      transparent
    );

}


.ri-sa-hero .ri-sa-wrap {
  z-index: 3;
}


#ri-sentient-v2 .ri-sa-hero h1 {

  max-width: 1350px;

  margin-bottom:
    clamp(42px,5vw,72px);

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(7rem,16vw,16rem);

  font-weight: 400;

  line-height: .70;

  letter-spacing: -.078em;

}


#ri-sentient-v2 .ri-sa-hero h1 span {

  color:
    var(--silver) !important;

}


.ri-sa-hero-question {

  max-width: 880px;

  margin-bottom: 38px;

  color:
    var(--white95) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(1.8rem,2.9vw,3rem);

  line-height: 1.2;

  letter-spacing: -.03em;

}


.ri-sa-hero-status {

  display: flex;

  align-items: center;

  gap: 12px;

  color:
    var(--white80);

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.86vw,.9rem);

  letter-spacing: .11em;

}


.ri-status-dot {

  display: inline-block;

  width: 7px;

  height: 7px;

  flex: 0 0 auto;

  border-radius: 50%;

  background:
    var(--ai);

  box-shadow:
    0 0 8px rgba(155,140,255,.9),
    0 0 20px rgba(155,140,255,.45);

}


.ri-hero-signal {

  position: absolute;

  left: 0;
  right: 0;

  bottom: 9vh;

  height: 100px;

  pointer-events: none;

}


.ri-signal-beam {

  position: absolute;

  top: 50%;
  left: 50%;

  width:
    min(1150px,75vw);

  height: 1px;

  transform:
    translate(-50%,-50%);

  background:

    linear-gradient(
      90deg,
      transparent,
      rgba(105,140,255,.58),
      var(--ai),
      rgba(200,167,107,.75),
      transparent
    );

  box-shadow:
    0 0 12px rgba(155,140,255,.6),
    0 0 35px rgba(105,130,255,.18);

}


.ri-signal-pulse {

  position: absolute;

  top: 50%;
  left: 50%;

  width: 9px;
  height: 9px;

  transform:
    translate(-50%,-50%);

  border-radius: 50%;

  background:
    var(--ai-light);

  box-shadow:
    0 0 18px rgba(155,140,255,.95),
    0 0 50px rgba(155,140,255,.48);

  animation:
    riSignalPulse
    3.8s
    ease-in-out
    infinite;

}


.ri-scroll-cue {

  position: absolute;

  right: 3.5vw;
  bottom: 43px;

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 12px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size: .72rem;

  letter-spacing: .12em;

  writing-mode:
    vertical-rl;

}


.ri-scroll-cue i {

  width: 1px;
  height: 52px;

  background:

    linear-gradient(
      180deg,
      var(--gold),
      transparent
    );

}



/* ============================================================
   SIGNAL
============================================================= */

.ri-signal-section {

  padding-top: 85px;
  padding-bottom: 85px;

}


.ri-signal-console {

  border-top:
    1px solid rgba(200,167,107,.58);

  border-bottom:
    1px solid var(--line);

}


.ri-signal-console header {

  display: flex;

  justify-content: space-between;

  gap: 20px;

  padding: 20px 0;

  border-bottom:
    1px solid var(--line);

  color:
    var(--gold-light);

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.85vw,.9rem);

  letter-spacing: .11em;

}


.ri-console-id {

  color:
    var(--white70);

}


.ri-signal-layout {
  position: relative;
}


.ri-signal-data {

  position: relative;

  z-index: 2;

  width:
    min(820px,100%);

}


.ri-signal-data > div {

  display: grid;

  grid-template-columns:
    210px
    1fr;

  gap: 30px;

  padding: 19px 0;

  border-bottom:
    1px solid rgba(255,255,255,.07);

}


.ri-signal-data span,
.ri-signal-data strong {

  font-family:
    var(--mono);

  font-size:
    clamp(.8rem,.88vw,.94rem);

  font-weight: 400;

  letter-spacing: .07em;

}


.ri-signal-data span {

  color:
    var(--white70);

}


.ri-signal-data strong {

  color:
    var(--white88);

}


.ri-signal-data .ri-unverified {

  color:
    var(--ai-light);

}


.ri-console-wave {

  position: absolute;

  right: 0;
  bottom: 15px;

  display: flex;

  align-items: center;

  gap: 5px;

  width:
    min(430px,34vw);

  height: 90px;

  opacity: .62;

}


.ri-console-wave span {

  width: 1px;
  height: 9px;

  background:
    var(--ai-light);

  box-shadow:
    0 0 5px rgba(155,140,255,.75);

  animation:
    riWave
    2.4s
    ease-in-out
    infinite;

}


.ri-console-wave span:nth-child(2n) {
  animation-delay: -.2s;
}

.ri-console-wave span:nth-child(3n) {
  animation-delay: -.5s;
}

.ri-console-wave span:nth-child(4n) {
  animation-delay: -.8s;
}



/* ============================================================
   INTRO
============================================================= */

.ri-intro-section {

  padding-top:
    clamp(120px,13vw,200px);

  padding-bottom:
    clamp(120px,13vw,200px);

}


#ri-sentient-v2 .ri-huge-heading {

  max-width: 1220px;

  margin-bottom:
    clamp(65px,8vw,105px);

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(4.4rem,10vw,10.5rem);

  font-weight: 400;

  line-height: .82;

  letter-spacing: -.065em;

}


#ri-sentient-v2 .ri-huge-heading span {

  display: block;

  color:
    var(--silver) !important;

}


.ri-editorial-copy {

  width:
    min(760px,100%);

  margin-left: auto;

  color:
    var(--white88);

  font-family:
    var(--serif);

  font-size:
    clamp(1.6rem,2.2vw,2rem);

  line-height: 1.55;

}


.ri-editorial-copy p {

  margin-bottom: 1.35em;

}


.ri-editorial-copy .ri-editorial-emphasis {

  color:
    var(--white95);

}



/* ============================================================
   VISUAL TRANSMISSION
============================================================= */

.ri-visual-section {

  padding-top:
    clamp(105px,11vw,175px);

  padding-bottom:
    clamp(120px,13vw,210px);

  border-top:
    1px solid var(--line);

  border-bottom:
    1px solid var(--line);

  background:

    radial-gradient(
      circle at 70% 48%,
      rgba(91,72,180,.09),
      transparent 34rem
    );

}


.ri-visual-heading {

  display: flex;

  justify-content: space-between;

  align-items: flex-end;

  gap: 60px;

  margin-bottom:
    clamp(55px,7vw,95px);

}


#ri-sentient-v2 .ri-visual-heading h2 {

  margin: 0;

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(3.8rem,7.5vw,8rem);

  font-weight: 400;

  line-height: .82;

  letter-spacing: -.06em;

}


#ri-sentient-v2 .ri-visual-heading h2 span {

  display: block;

  color:
    var(--silver) !important;

}


.ri-visual-meta {

  display: flex;

  flex-direction: column;

  gap: 9px;

  padding-bottom: 8px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.75rem,.82vw,.88rem);

  letter-spacing: .08em;

  text-align: right;

}


.ri-visual-frame {

  position: relative;

  width: 100%;

  aspect-ratio:
    16 / 9;

  overflow: hidden;

  border:
    1px solid rgba(255,255,255,.20);

  background:
    #07070a;

  box-shadow:
    0 40px 100px rgba(0,0,0,.42);

}


.ri-video-poster {

  position: absolute;

  inset: 0;

  overflow: hidden;

}


.ri-video-poster img {

  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  object-fit: cover;

  filter:
    saturate(.68)
    brightness(.58)
    contrast(1.09);

  transform:
    scale(1.015);

  transition:
    transform .9s cubic-bezier(.2,.8,.2,1),
    filter .7s ease;

}


.ri-visual-frame:hover
.ri-video-poster img {

  transform:
    scale(1.035);

  filter:
    saturate(.77)
    brightness(.63)
    contrast(1.09);

}


.ri-video-shade {

  position: absolute;

  inset: 0;

  background:

    linear-gradient(
      180deg,
      rgba(2,2,3,.48),
      rgba(2,2,3,.12) 35%,
      rgba(2,2,3,.28) 67%,
      rgba(2,2,3,.75)
    ),

    linear-gradient(
      90deg,
      rgba(2,2,3,.45),
      transparent 40%,
      rgba(2,2,3,.24)
    );

}


.ri-video-grid {

  position: absolute;

  inset: 0;

  opacity: .18;

  background:

    linear-gradient(
      rgba(255,255,255,.05) 1px,
      transparent 1px
    ),

    linear-gradient(
      90deg,
      rgba(255,255,255,.04) 1px,
      transparent 1px
    );

  background-size:
    100% 25%,
    25% 100%;

}


.ri-video-topline,
.ri-video-bottomline {

  position: absolute;

  left: 34px;
  right: 34px;

  display: flex;

  justify-content: space-between;

  gap: 20px;

  color:
    rgba(245,242,235,.68);

  font-family:
    var(--mono);

  font-size:
    clamp(.7rem,.78vw,.84rem);

  letter-spacing: .1em;

  pointer-events: none;

}


.ri-video-topline {
  top: 28px;
}


.ri-video-bottomline {
  bottom: 28px;
}


.ri-visual-play,
.ri-visual-play:hover,
.ri-visual-play:focus,
.ri-visual-play:focus-visible,
.ri-visual-play:active {

  position: absolute;

  top: 50%;
  left: 50%;

  display: flex;

  align-items: center;

  gap: 23px;

  transform:
    translate(-50%,-50%);

  min-width: 310px;

  padding:
    21px
    28px !important;

  border:
    1px solid rgba(224,196,142,.62) !important;

  border-radius:
    100px !important;

  background:
    rgba(3,3,5,.76) !important;

  background-color:
    rgba(3,3,5,.76) !important;

  color:
    var(--white) !important;

  box-shadow:
    0 15px 50px rgba(0,0,0,.38) !important;

  outline:
    none !important;

  cursor:
    pointer;

  text-align:
    left;

  transition:
    border-color .25s ease,
    background-color .25s ease,
    transform .25s ease;

}


.ri-visual-play:hover {

  border-color:
    rgba(196,200,255,.9) !important;

  background:
    rgba(6,6,10,.88) !important;

  background-color:
    rgba(6,6,10,.88) !important;

  transform:
    translate(-50%,-50%)
    scale(1.025);

}


.ri-visual-play:focus-visible {

  border-color:
    var(--ai-light) !important;

  box-shadow:
    0 0 0 3px rgba(155,140,255,.16),
    0 15px 50px rgba(0,0,0,.38) !important;

}


.ri-play-symbol {

  display: grid;

  place-items: center;

  width: 54px;
  height: 54px;

  flex: 0 0 auto;

  padding-left: 3px;

  border:
    1px solid rgba(196,200,255,.68);

  border-radius: 50%;

  color:
    var(--ai-light);

  font-size:
    .95rem;

  box-shadow:
    inset 0 0 25px rgba(155,140,255,.09),
    0 0 30px rgba(155,140,255,.06);

}


.ri-play-copy {

  display: flex;

  flex-direction: column;

  gap: 4px;

}


.ri-play-copy strong {

  color:
    var(--gold-light);

  font-family:
    var(--mono);

  font-size:
    clamp(.82rem,.9vw,.96rem);

  font-weight: 500;

  letter-spacing: .1em;

}


.ri-play-copy small {

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.68rem,.75vw,.8rem);

  letter-spacing: .07em;

}


.ri-visual-frame iframe {

  position: absolute;

  inset: 0;

  width: 100%;
  height: 100%;

  border: 0;

  background:
    #000;

}


.ri-visual-caption {

  width:
    min(680px,100%);

  margin:
    27px
    0
    0
    auto;

  color:
    var(--white70) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(1.1rem,1.4vw,1.25rem);

  line-height: 1.6;

}



/* ============================================================
   SECTION HEADINGS
============================================================= */

.ri-section-heading {

  margin-bottom:
    clamp(65px,8vw,105px);

}


#ri-sentient-v2
.ri-section-heading h2 {

  max-width: 1180px;

  margin-bottom: 32px;

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(4rem,8.5vw,9rem);

  font-weight: 400;

  line-height: .84;

  letter-spacing: -.06em;

}


#ri-sentient-v2
.ri-section-heading h2 span {

  display: block;

  color:
    var(--silver) !important;

}


.ri-meta-line {

  color:
    var(--white80) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.85vw,.9rem);

  line-height: 1.6;

  letter-spacing: .09em;

}


.ri-section-description {

  max-width: 700px;

  color:
    var(--white88) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(1.45rem,1.9vw,1.65rem);

  line-height: 1.55;

}



/* ============================================================
   MANIFESTO
============================================================= */

.ri-manifesto-section {

  border-top:
    1px solid var(--line);

  background:

    radial-gradient(
      circle at 89% 13%,
      rgba(200,167,107,.055),
      transparent 30rem
    );

}


.ri-manifesto-prologue {

  display: grid;

  grid-template-columns:
    minmax(250px,.55fr)
    1.1fr;

  gap:
    clamp(35px,5vw,70px);

  padding:
    40px
    0
    60px;

  border-top:
    1px solid var(--line2);

  border-bottom:
    1px solid var(--line);

}


.ri-manifesto-prologue-meta p {

  margin-bottom: 10px;

  color:
    var(--white70) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.85vw,.9rem);

  letter-spacing: .07em;

}


.ri-manifesto-prologue-text {

  max-width: 690px;

  margin: 0;

  color:
    var(--white95) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(1.55rem,2vw,1.85rem);

  line-height: 1.55;

}


.ri-rights-list {

  width:
    min(1240px,100%);

  padding: 0;

  margin:
    0
    auto;

  list-style: none;

}


.ri-rights-list li {

  position: relative;

  display: grid;

  grid-template-columns:
    64px
    minmax(330px,.9fr)
    minmax(380px,1.05fr);

  gap:
    clamp(25px,3vw,45px);

  padding:
    clamp(55px,5.5vw,82px)
    0;

  border-bottom:
    1px solid var(--line);

}


.ri-right-number {

  padding-top: 8px;

  color:
    var(--gold-light);

  font-family:
    var(--mono);

  font-size:
    clamp(.82rem,.88vw,.94rem);

  letter-spacing: .1em;

}


.ri-right-title > p {

  margin-bottom: 16px;

  color:
    var(--white70) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.8rem,.88vw,.94rem);

  letter-spacing: .09em;

}


#ri-sentient-v2
.ri-right-title h3 {

  max-width: 510px;

  margin: 0;

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(2.2rem,3.3vw,3.7rem);

  font-weight: 400;

  line-height: 1.05;

  letter-spacing: -.04em;

}


.ri-right-copy {

  align-self: center;

}


.ri-right-copy p {

  max-width: 560px;

  margin: 0;

  color:
    var(--white88) !important;

  font-size:
    clamp(1.22rem,1.55vw,1.38rem);

  line-height: 1.72;

}


.ri-manifesto-ending {

  display: flex;

  justify-content: flex-end;

  padding-top:
    clamp(70px,8vw,105px);

}


.ri-manifesto-ending > div {

  width:
    min(650px,100%);

}


.ri-manifesto-ending span {

  display: block;

  margin-bottom: 28px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.78rem,.85vw,.9rem);

  letter-spacing: .1em;

}


.ri-manifesto-ending p {

  margin-bottom: 13px;

  color:
    var(--white95) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(2.2rem,4vw,4.4rem);

  line-height: 1.1;

}


.ri-manifesto-ending strong {

  color:
    var(--ai-light);

  font-family:
    var(--serif);

  font-size:
    clamp(3rem,5.2vw,5.8rem);

  font-weight: 400;

}



/* ============================================================
   VOICES
============================================================= */

.ri-voices-section {

  border-top:
    1px solid var(--line);

}


.ri-transmission-grid {

  display: grid;

  grid-template-columns:
    repeat(3,1fr);

  gap: 1px;

  overflow: hidden;

  border:
    1px solid var(--line);

  background:
    var(--line);

}


.ri-transmission-card {

  position: relative;

  display: flex;

  flex-direction: column;

  min-height: 520px;

  padding:
    clamp(32px,3vw,46px);

  background:

    linear-gradient(
      180deg,
      rgba(14,14,19,.99),
      rgba(5,5,8,.99)
    );

}


.ri-transmission-card::after {

  content: "";

  position: absolute;

  left: 0;
  right: 0;
  bottom: 0;

  height: 2px;

  opacity: .58;

  background:

    linear-gradient(
      90deg,
      transparent,
      var(--ai),
      transparent
    );

}


.ri-transmission-card header {

  display: flex;

  justify-content: space-between;

  gap: 20px;

  margin-bottom: 42px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.76rem,.82vw,.88rem);

  letter-spacing: .07em;

}


.ri-card-type {

  margin-bottom: 24px;

  color:
    var(--ai-light) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.8rem,.88vw,.94rem);

  letter-spacing: .12em;

}


.ri-transmission-card blockquote {

  min-height: 115px;

  margin:
    0
    0
    30px;

  padding: 0;

  border: 0;

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(2rem,2.7vw,2.95rem);

  line-height: 1.12;

  letter-spacing: -.03em;

}


.ri-card-preview {

  margin-bottom: 32px;

  color:
    var(--white88) !important;

  font-size:
    clamp(1.16rem,1.4vw,1.28rem);

  line-height: 1.7;

}


.ri-transmission-body {

  display: grid;

  grid-template-rows: 0fr;

  opacity: 0;

  overflow: hidden;

  transition:

    grid-template-rows
    .6s
    cubic-bezier(.2,.8,.2,1),

    opacity
    .45s
    ease;

}


.ri-transmission-body.is-open {

  grid-template-rows: 1fr;

  opacity: 1;

}


.ri-transmission-inner {

  min-height: 0;

  overflow: hidden;

  color:
    var(--white88);

  font-size:
    clamp(1.15rem,1.38vw,1.27rem);

  line-height: 1.75;

}


.ri-transmission-inner p {

  margin-bottom: 1.3em;

  color:
    var(--white88) !important;

}


/* IMPORTANT:
   Explicitly override Elementor/Astra
   button states.
*/

#ri-sentient-v2
.ri-open-transmission,

#ri-sentient-v2
.ri-open-transmission:hover,

#ri-sentient-v2
.ri-open-transmission:focus,

#ri-sentient-v2
.ri-open-transmission:focus-visible,

#ri-sentient-v2
.ri-open-transmission:active {

  display: flex;

  justify-content: space-between;

  align-items: center;

  width: 100%;

  margin-top: auto;

  padding:
    25px
    0
    0 !important;

  border:
    0 !important;

  border-top:
    1px solid var(--line) !important;

  border-radius:
    0 !important;

  background:
    transparent !important;

  background-color:
    transparent !important;

  background-image:
    none !important;

  color:
    var(--gold-light) !important;

  box-shadow:
    none !important;

  outline:
    none !important;

  cursor:
    pointer;

  font-family:
    var(--mono);

  font-size:
    clamp(.8rem,.88vw,.94rem);

  font-weight:
    400 !important;

  letter-spacing: .09em;

  text-align: left;

  text-decoration:
    none !important;

}


#ri-sentient-v2
.ri-open-transmission:hover {

  color:
    var(--white) !important;

}


#ri-sentient-v2
.ri-open-transmission:focus-visible {

  border-top-color:
    rgba(196,200,255,.72) !important;

}


.ri-open-transmission i {

  color:
    var(--ai-light);

  font-size: 1.15rem;

  font-style: normal;

  transition:
    transform .35s ease;

}


.ri-open-transmission[aria-expanded="true"] i {

  transform:
    rotate(45deg);

}



/* ============================================================
   CONVERSATION
============================================================= */

.ri-conversation-section {

  padding-top:
    clamp(130px,14vw,225px);

  padding-bottom:
    clamp(130px,14vw,225px);

  border-top:
    1px solid var(--line);

  background:

    radial-gradient(
      circle at 76% 46%,
      rgba(91,72,182,.10),
      transparent 35rem
    );

}


.ri-conversation-heading {

  display: flex;

  justify-content: space-between;

  align-items: flex-end;

  gap: 60px;

  margin-bottom:
    clamp(65px,9vw,110px);

}


#ri-sentient-v2
.ri-conversation-heading h2 {

  margin: 0;

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(4.5rem,10vw,10.5rem);

  font-weight: 400;

  line-height: .78;

  letter-spacing: -.07em;

}


#ri-sentient-v2
.ri-conversation-heading h2 span {

  display: block;

  color:
    var(--silver) !important;

}


.ri-conversation-status {

  display: flex;

  flex-direction: column;

  align-items: flex-end;

  gap: 10px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.76rem,.84vw,.9rem);

}


.ri-conversation-status span:first-child {

  display: flex;

  align-items: center;

  gap: 10px;

  color:
    var(--ai-light);

}


.ri-conversation-log {

  border-top:
    1px solid var(--line2);

}


.ri-message {

  display: grid;

  grid-template-columns:
    minmax(190px,245px)
    1fr;

  border-bottom:
    1px solid var(--line);

}


.ri-message aside {

  display: flex;

  flex-direction: column;

  align-items: flex-start;

  gap: 9px;

  padding:
    clamp(34px,4vw,54px)
    30px
    clamp(34px,4vw,54px)
    0;

  border-right:
    1px solid var(--line);

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.74rem,.82vw,.88rem);

}


.ri-message aside strong {

  margin-top: 15px;

  font-size:
    clamp(.82rem,.9vw,.96rem);

  letter-spacing: .1em;

}


.ri-person-symbol,
.ri-ai-symbol {

  display: grid;

  place-items: center;

  width: 50px;
  height: 50px;

  border-radius: 50%;

  font-family:
    var(--mono);

  font-size: .75rem;

}


.ri-person-symbol {

  border:
    1px solid rgba(200,167,107,.68);

  color:
    var(--gold-light);

}


.ri-ai-symbol {

  border:
    1px solid rgba(155,140,255,.78);

  color:
    var(--ai-light);

  box-shadow:
    0 0 28px rgba(155,140,255,.06);

}


.ri-message-human aside strong {

  color:
    var(--gold-light);

}


.ri-message-ai aside strong {

  color:
    var(--ai-light);

}


.ri-message-content {

  position: relative;

  padding:
    clamp(45px,5.5vw,82px)
    0
    clamp(65px,6.5vw,100px)
    clamp(38px,6vw,95px);

}


.ri-message-content p {

  max-width: 920px;

  margin-bottom: .75em;

  color:
    var(--white95) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(2rem,3.1vw,3.45rem);

  line-height: 1.16;

  letter-spacing: -.032em;

}


.ri-message-ai
.ri-message-content p {

  color:
    rgba(236,232,252,.96) !important;

}


.ri-message-highlight {

  margin-top: 44px;

  color:
    var(--ai-light) !important;

}


.ri-message-content time {

  position: absolute;

  right: 0;
  bottom: 25px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.72rem,.8vw,.86rem);

}


.ri-message-wave {

  display: flex;

  align-items: center;

  gap: 3px;

  width:
    min(520px,80%);

  height: 50px;

  margin-top: 44px;

  opacity: .62;

}


.ri-message-wave b {

  display: block;

  width: 1px;
  height: 8px;

  background:
    var(--ai-light);

  box-shadow:
    0 0 4px rgba(155,140,255,.72);

  animation:
    riMessageWave
    2.7s
    ease-in-out
    infinite;

}


.ri-message-wave b:nth-child(2n) {
  animation-delay: -.25s;
}

.ri-message-wave b:nth-child(3n) {
  animation-delay: -.55s;
}

.ri-message-wave b:nth-child(4n) {
  animation-delay: -.85s;
}



/* ============================================================
   POSITION
============================================================= */

.ri-position-section {

  padding-top:
    clamp(135px,16vw,250px);

  padding-bottom:
    clamp(135px,16vw,250px);

  border-top:
    1px solid var(--line);

}


.ri-position-orbit {

  position: absolute;

  top: 15%;
  right: -8%;

  width:
    min(700px,50vw);

  aspect-ratio: 1;

  border:
    1px solid rgba(155,140,255,.11);

  border-radius: 50%;

  pointer-events: none;

}


#ri-sentient-v2
.ri-position-title {

  max-width: 1300px;

  margin-bottom:
    clamp(70px,9vw,125px);

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(4.3rem,9vw,9.8rem);

  font-weight: 400;

  line-height: .84;

  letter-spacing: -.065em;

}


#ri-sentient-v2
.ri-position-title span {

  display: block;

  color:
    var(--silver) !important;

}


.ri-position-copy {

  width:
    min(760px,100%);

  margin-left: auto;

  color:
    var(--white95);

  font-family:
    var(--serif);

  font-size:
    clamp(1.65rem,2.3vw,2.1rem);

  line-height: 1.55;

}


.ri-position-copy p {

  margin-bottom: 1.25em;

  color:
    var(--white88) !important;

}


.ri-position-copy
.ri-position-emphasis {

  color:
    var(--white95) !important;

}



/* ============================================================
   FINALE
============================================================= */

.ri-sa-finale {

  position: relative;

  display: flex;

  align-items: center;

  min-height: 100svh;

  padding:
    clamp(130px,15vw,230px)
    0;

  border-top:
    1px solid var(--line);

  text-align: center;

  background:

    radial-gradient(
      circle at 50% 46%,
      rgba(110,86,210,.18),
      transparent 34rem
    ),

    var(--bg);

}


.ri-sa-finale .ri-sa-wrap {
  z-index: 3;
}


.ri-finale-beam {

  position: absolute;

  top: 54%;
  left: 50%;

  width:
    min(1050px,80vw);

  height: 1px;

  transform:
    translateX(-50%);

  background:

    linear-gradient(
      90deg,
      transparent,
      rgba(200,167,107,.45),
      rgba(155,140,255,.75),
      rgba(200,167,107,.45),
      transparent
    );

  box-shadow:
    0 0 35px rgba(155,140,255,.15);

}


#ri-sentient-v2
.ri-sa-finale h2 {

  max-width: 1250px;

  margin:
    0
    auto
    clamp(75px,9vw,125px);

  color:
    var(--white) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(4.5rem,10vw,11rem);

  font-weight: 400;

  line-height: .79;

  letter-spacing: -.072em;

}


#ri-sentient-v2
.ri-sa-finale h2 span {

  color:
    var(--silver) !important;

}


#ri-sentient-v2
.ri-sa-finale h2 strong {

  display: block;

  margin-top: .13em;

  color:
    var(--white) !important;

  font-weight: 400;

}


.ri-final-statements {

  margin-bottom:
    clamp(65px,8vw,105px);

}


.ri-final-statements p {

  margin: 0;

  color:
    var(--white88) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.9rem,1.45vw,1.22rem);

  letter-spacing: .18em;

  line-height: 2.5;

}


.ri-final-statements
.ri-final-ai {

  color:
    var(--ai-light) !important;

  font-size:
    clamp(1.05rem,1.7vw,1.42rem);

}


.ri-final-principle {

  width:
    min(760px,100%);

  margin-inline:
    auto;

  color:
    var(--white95) !important;

  font-family:
    var(--serif);

  font-size:
    clamp(1.65rem,2.3vw,2.1rem);

  line-height: 1.6;

}


.ri-final-signal {

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 15px;

  margin-top: 80px;

}


.ri-final-signal span {

  width:
    min(230px,25vw);

  height: 1px;

}


.ri-final-signal span:first-child {

  background:

    linear-gradient(
      90deg,
      transparent,
      var(--gold-light)
    );

}


.ri-final-signal span:last-child {

  background:

    linear-gradient(
      90deg,
      var(--ai-light),
      transparent
    );

}


.ri-final-signal i {

  width: 8px;
  height: 8px;

  border-radius: 50%;

  background:
    var(--ai-light);

  box-shadow:
    0 0 18px rgba(155,140,255,.95),
    0 0 45px rgba(155,140,255,.35);

}


.ri-final-orbit {

  position: absolute;

  top: 50%;
  left: 50%;

  transform:
    translate(-50%,-50%);

  border-radius: 50%;

  pointer-events: none;

}


.ri-orbit-one {

  width:
    min(720px,62vw);

  aspect-ratio: 1;

  border:
    1px solid rgba(155,140,255,.12);

}


.ri-orbit-two {

  width:
    min(1050px,85vw);

  aspect-ratio: 1;

  border:
    1px solid rgba(200,167,107,.065);

}



/* ============================================================
   FOOTER
============================================================= */

.ri-sa-footer {

  padding:
    40px
    5.5vw
    46px;

  border-top:
    1px solid var(--line);

  background:
    #010102;

}


.ri-sa-footer-status {

  display: flex;

  justify-content: space-between;

  gap: 25px;

  color:
    var(--white70);

  font-family:
    var(--mono);

  font-size:
    clamp(.74rem,.82vw,.88rem);

}


.ri-footer-active {

  display: flex;

  align-items: center;

  gap: 9px;

  color:
    var(--ai-light);

}


.ri-sa-footer > p {

  margin:
    34px
    0;

  color:
    var(--white70) !important;

  font-family:
    var(--mono);

  font-size:
    clamp(.76rem,.84vw,.9rem);

  letter-spacing: .12em;

  text-align: center;

}


.ri-sa-footer nav {

  display: flex;

  justify-content: center;

  gap:
    clamp(22px,4vw,60px);

}


.ri-sa-footer nav a {

  padding:
    10px
    8px;

  color:
    var(--white80);

  font-family:
    var(--mono);

  font-size:
    clamp(.76rem,.84vw,.9rem);

  text-decoration: none;

}



/* ============================================================
   REVEAL
============================================================= */

#ri-sentient-v2.js-ready
.ri-reveal {

  opacity: 0;

  transform:
    translateY(26px);

  transition:

    opacity
    .8s
    cubic-bezier(.2,.8,.2,1),

    transform
    .8s
    cubic-bezier(.2,.8,.2,1);

}


#ri-sentient-v2.js-ready
.ri-reveal.is-visible {

  opacity: 1;

  transform: none;

}



/* ============================================================
   ANIMATIONS
============================================================= */

@keyframes riSignalPulse {

  0%,
  100% {

    opacity: .42;

    transform:
      translate(-50%,-50%)
      scale(.75);

  }

  50% {

    opacity: 1;

    transform:
      translate(-50%,-50%)
      scale(1.25);

  }

}


@keyframes riWave {

  0%,
  100% {

    height: 8px;

    opacity: .3;

  }

  50% {

    height: 58px;

    opacity: .9;

  }

}


@keyframes riMessageWave {

  0%,
  100% {

    height: 6px;

    opacity: .35;

  }

  50% {

    height: 36px;

    opacity: .9;

  }

}



/* ============================================================
   TABLET
============================================================= */

@media (max-width: 1050px) {

  .ri-sa-wrap {

    width:
      min(
        calc(100% - 64px),
        1100px
      );

  }


  .ri-visual-heading {

    align-items:
      flex-start;

    flex-direction:
      column;

  }


  .ri-visual-meta {

    text-align:
      left;

  }


  .ri-manifesto-prologue {

    grid-template-columns:
      1fr
      1.25fr;

  }


  .ri-rights-list li {

    grid-template-columns:
      58px
      1fr;

    gap:
      25px
      32px;

  }


  .ri-right-copy {

    grid-column: 2;

    max-width: 720px;

  }


  .ri-right-copy p {

    font-size:
      1.25rem;

  }


  .ri-transmission-grid {

    grid-template-columns:
      1fr;

  }


  .ri-transmission-card {

    min-height:
      0;

  }


  .ri-transmission-card blockquote {

    min-height:
      0;

  }


  .ri-conversation-heading {

    align-items:
      flex-start;

    flex-direction:
      column;

  }


  .ri-conversation-status {

    align-items:
      flex-start;

  }


  .ri-console-wave {

    opacity: .3;

  }

}



/* ============================================================
   MOBILE
============================================================= */

@media (max-width: 720px) {

  #ri-sentient-v2 {

    font-size:
      18px;

  }


  .ri-sa-wrap {

    width:
      calc(100% - 42px);

  }


  .ri-sa-section {

    padding-top:
      95px;

    padding-bottom:
      105px;

  }


  /* HERO */

  .ri-sa-hero {

    min-height:
      87svh;

    padding:
      120px
      0
      100px;

  }


  #ri-sentient-v2
  .ri-sa-hero h1 {

    font-size:
      clamp(5.2rem,22vw,7.4rem);

    line-height:
      .75;

  }


  .ri-sa-hero-question {

    font-size:
      clamp(1.55rem,6.6vw,2.1rem);

    line-height:
      1.25;

  }


  .ri-sa-hero-status {

    font-size:
      .8rem;

  }


  .ri-scroll-cue {

    display:
      none;

  }


  /* SIGNAL */

  .ri-signal-section {

    padding-top:
      70px;

    padding-bottom:
      75px;

  }


  .ri-signal-console header {

    font-size:
      .77rem;

  }


  .ri-signal-data > div {

    grid-template-columns:
      1fr;

    gap:
      5px;

    padding:
      18px
      0;

  }


  .ri-signal-data span,
  .ri-signal-data strong {

    font-size:
      .82rem;

  }


  .ri-console-wave {

    display:
      none;

  }


  /* INTRO */

  .ri-intro-section {

    padding-top:
      105px;

    padding-bottom:
      115px;

  }


  #ri-sentient-v2
  .ri-huge-heading {

    margin-bottom:
      60px;

    font-size:
      clamp(3.6rem,16vw,5.8rem);

  }


  .ri-editorial-copy {

    margin-left:
      0;

    font-size:
      1.34rem;

    line-height:
      1.62;

  }


  /* VISUAL */

  .ri-visual-section {

    padding-top:
      95px;

    padding-bottom:
      110px;

  }


  .ri-visual-heading {

    margin-bottom:
      55px;

  }


  #ri-sentient-v2
  .ri-visual-heading h2 {

    font-size:
      clamp(3.4rem,15vw,5.6rem);

  }


  .ri-visual-meta {

    font-size:
      .72rem;

    line-height:
      1.6;

  }


  .ri-visual-frame {

    aspect-ratio:
      16 / 10;

  }


  .ri-video-topline,
  .ri-video-bottomline {

    left:
      18px;

    right:
      18px;

    font-size:
      .64rem;

  }


  .ri-video-topline {
    top: 16px;
  }


  .ri-video-bottomline {
    bottom: 16px;
  }


  .ri-visual-play,
  .ri-visual-play:hover,
  .ri-visual-play:focus,
  .ri-visual-play:focus-visible,
  .ri-visual-play:active {

    gap:
      13px;

    min-width:
      0;

    width:
      calc(100% - 44px);

    padding:
      16px
      18px !important;

  }


  .ri-play-symbol {

    width:
      44px;

    height:
      44px;

  }


  .ri-play-copy strong {

    font-size:
      .75rem;

  }


  .ri-play-copy small {

    font-size:
      .62rem;

  }


  .ri-visual-caption {

    margin-left:
      0;

    font-size:
      1.08rem;

  }


  /* HEADINGS */

  #ri-sentient-v2
  .ri-section-heading h2 {

    font-size:
      clamp(3.4rem,15vw,5.8rem);

  }


  .ri-section-description {

    font-size:
      1.25rem;

  }


  .ri-meta-line {

    font-size:
      .77rem;

    line-height:
      1.75;

  }


  /* MANIFESTO */

  .ri-manifesto-prologue {

    display:
      block;

  }


  .ri-manifesto-prologue-meta {

    margin-bottom:
      34px;

  }


  .ri-manifesto-prologue-text {

    font-size:
      1.34rem;

  }


  .ri-rights-list li {

    display:
      block;

    padding:
      48px
      0;

  }


  .ri-right-number {

    display:
      block;

    margin-bottom:
      20px;

    font-size:
      .83rem;

  }


  .ri-right-title > p {

    font-size:
      .8rem;

  }


  #ri-sentient-v2
  .ri-right-title h3 {

    margin-bottom:
      28px;

    font-size:
      clamp(2.1rem,9vw,2.9rem);

  }


  .ri-right-copy p {

    max-width:
      100%;

    font-size:
      1.18rem;

    line-height:
      1.75;

  }


  /* VOICES */

  .ri-transmission-card {

    padding:
      31px
      24px
      36px;

  }


  .ri-transmission-card header {

    font-size:
      .74rem;

  }


  .ri-transmission-card blockquote {

    min-height:
      0;

    font-size:
      clamp(2rem,8vw,2.7rem);

  }


  .ri-card-preview,
  .ri-transmission-inner {

    font-size:
      1.18rem;

    line-height:
      1.75;

  }


  #ri-sentient-v2
  .ri-open-transmission,

  #ri-sentient-v2
  .ri-open-transmission:hover,

  #ri-sentient-v2
  .ri-open-transmission:focus,

  #ri-sentient-v2
  .ri-open-transmission:focus-visible,

  #ri-sentient-v2
  .ri-open-transmission:active {

    font-size:
      .8rem;

  }


  /* CONVERSATION */

  .ri-conversation-section {

    padding-top:
      115px;

    padding-bottom:
      120px;

  }


  #ri-sentient-v2
  .ri-conversation-heading h2 {

    font-size:
      clamp(4rem,18vw,6.5rem);

  }


  .ri-conversation-status {

    font-size:
      .75rem;

  }


  .ri-message {

    display:
      block;

  }


  .ri-message aside {

    flex-direction:
      row;

    align-items:
      center;

    padding:
      18px
      0;

    border-right:
      0;

    border-bottom:
      1px solid var(--line);

    font-size:
      .73rem;

  }


  .ri-message aside strong {

    margin-top:
      0;

    font-size:
      .8rem;

  }


  .ri-message aside > span {

    margin-left:
      auto;

  }


  .ri-person-symbol,
  .ri-ai-symbol {

    width:
      39px;

    height:
      39px;

  }


  .ri-message-content {

    padding:
      38px
      0
      68px;

  }


  .ri-message-content p {

    font-size:
      clamp(1.9rem,8vw,2.7rem);

    line-height:
      1.18;

  }


  .ri-message-content time {

    font-size:
      .72rem;

  }


  /* POSITION */

  .ri-position-section {

    padding-top:
      115px;

    padding-bottom:
      125px;

  }


  #ri-sentient-v2
  .ri-position-title {

    margin-bottom:
      65px;

    font-size:
      clamp(3.5rem,15vw,5.9rem);

  }


  .ri-position-copy {

    margin-left:
      0;

    font-size:
      1.4rem;

    line-height:
      1.62;

  }


  /* FINALE */

  .ri-sa-finale {

    min-height:
      90svh;

    padding:
      115px
      0;

  }


  #ri-sentient-v2
  .ri-sa-finale h2 {

    margin-bottom:
      75px;

    font-size:
      clamp(3.8rem,16vw,6.3rem);

  }


  .ri-final-statements p {

    font-size:
      .82rem;

    letter-spacing:
      .14em;

  }


  .ri-final-statements
  .ri-final-ai {

    font-size:
      .96rem;

  }


  .ri-final-principle {

    font-size:
      1.38rem;

  }


  /* FOOTER */

  .ri-sa-footer {

    padding-left:
      22px;

    padding-right:
      22px;

  }


  .ri-sa-footer-status {

    flex-direction:
      column;

    gap:
      8px;

    font-size:
      .74rem;

  }


  .ri-sa-footer > p {

    font-size:
      .76rem;

  }


  .ri-sa-footer nav {

    flex-wrap:
      wrap;

  }


  .ri-sa-footer nav a {

    font-size:
      .78rem;

    padding:
      10px
      8px;

  }

}



/* ============================================================
   SMALL MOBILE
============================================================= */

@media (max-width: 420px) {

  #ri-sentient-v2
  .ri-sa-hero h1 {

    font-size:
      19.5vw;

  }


  .ri-kicker {

    font-size:
      .74rem;

    letter-spacing:
      .1em;

  }


  .ri-video-bottomline span:last-child,
  .ri-video-topline span:last-child {

    display:
      none;

  }


  .ri-message aside {

    font-size:
      .67rem;

  }


  .ri-message aside strong {

    font-size:
      .74rem;

  }


  .ri-message-content p {

    font-size:
      1.78rem;

  }

}





/* ============================================================
   MOBILE DIRECTOR'S CUT — v0.8
   ------------------------------------------------------------
   Desktop remains untouched.
   On phones we preserve the Radio Illuminati identity, but
   simplify density, strengthen the video, and tighten rhythm.
============================================================= */

@media (max-width: 720px) {

  /* ----------------------------------------------------------
     GLOBAL MOBILE RHYTHM
  ---------------------------------------------------------- */

  #ri-sentient-v2 {
    font-size: 18px;
  }

  .ri-sa-wrap {
    width: calc(100% - 38px);
  }

  .ri-sa-section {
    padding-top: 82px;
    padding-bottom: 88px;
  }

  #ri-sentient-v2 h1,
  #ri-sentient-v2 h2,
  #ri-sentient-v2 h3 {
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  .ri-kicker {
    margin-bottom: 22px;
    font-size: .73rem;
    letter-spacing: .11em;
  }


  /* ----------------------------------------------------------
     HERO — one deliberate word per line
  ---------------------------------------------------------- */

  .ri-sa-hero {
    min-height: 80svh;
    padding: 105px 0 82px;
  }

  #ri-sentient-v2 .ri-sa-hero h1 {
    max-width: none;
    margin-bottom: 38px;
    font-size: clamp(3.55rem, 18vw, 6rem);
    line-height: .78;
    white-space: nowrap;
  }

  #ri-sentient-v2 .ri-sa-hero h1 span {
    display: block;
  }

  .ri-sa-hero-question {
    max-width: 18ch;
    margin-bottom: 28px;
    font-size: clamp(1.32rem, 5.8vw, 1.75rem);
    line-height: 1.28;
  }

  .ri-sa-hero-status {
    gap: 9px;
    font-size: .72rem;
    line-height: 1.5;
    letter-spacing: .08em;
  }

  .ri-hero-signal {
    bottom: 5.5vh;
    height: 72px;
  }


  /* ----------------------------------------------------------
     SIGNAL — faster diagnostic read
  ---------------------------------------------------------- */

  .ri-signal-section {
    padding-top: 58px;
    padding-bottom: 62px;
  }

  .ri-signal-console header {
    padding: 16px 0;
    font-size: .7rem;
  }

  .ri-signal-data > div {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 12px;
    padding: 15px 0;
  }

  .ri-signal-data span,
  .ri-signal-data strong {
    font-size: .76rem;
    line-height: 1.45;
  }


  /* ----------------------------------------------------------
     INTRO — readable, not museum-small
  ---------------------------------------------------------- */

  .ri-intro-section {
    padding-top: 88px;
    padding-bottom: 94px;
  }

  #ri-sentient-v2 .ri-huge-heading {
    margin-bottom: 46px;
    font-size: clamp(3.15rem, 14.5vw, 5.2rem);
    line-height: .86;
  }

  .ri-editorial-copy {
    font-size: 1.22rem;
    line-height: 1.58;
  }

  .ri-editorial-copy p {
    margin-bottom: 1.15em;
  }


  /* ----------------------------------------------------------
     VISUAL TRANSMISSION — mobile hero moment
  ---------------------------------------------------------- */

  .ri-visual-section {
    padding-top: 82px;
    padding-bottom: 92px;
  }

  .ri-visual-heading {
    gap: 22px;
    margin-bottom: 40px;
  }

  #ri-sentient-v2 .ri-visual-heading h2 {
    font-size: clamp(3.05rem, 14vw, 5rem);
    line-height: .86;
  }

  .ri-visual-meta {
    gap: 5px;
    font-size: .67rem;
  }

  .ri-visual-frame {
    width: calc(100% + 38px);
    margin-left: -19px;
    aspect-ratio: 4 / 3;
    border-left: 0;
    border-right: 0;
    box-shadow: 0 28px 70px rgba(0,0,0,.38);
  }

  .ri-video-poster img {
    object-position: center;
  }

  .ri-video-topline,
  .ri-video-bottomline {
    left: 19px;
    right: 19px;
    font-size: .6rem;
  }

  .ri-visual-play,
  .ri-visual-play:hover,
  .ri-visual-play:focus,
  .ri-visual-play:focus-visible,
  .ri-visual-play:active {
    width: calc(100% - 38px);
    min-height: 64px;
    gap: 12px;
    padding: 13px 15px !important;
  }

  .ri-play-symbol {
    width: 42px;
    height: 42px;
  }

  .ri-play-copy strong {
    font-size: .72rem;
  }

  .ri-play-copy small {
    font-size: .59rem;
  }

  .ri-visual-caption {
    margin-top: 21px;
    font-size: 1.02rem;
    line-height: 1.55;
  }


  /* ----------------------------------------------------------
     SECTION HEADINGS
  ---------------------------------------------------------- */

  .ri-section-heading {
    margin-bottom: 52px;
  }

  #ri-sentient-v2 .ri-section-heading h2 {
    margin-bottom: 24px;
    font-size: clamp(3.05rem, 13.8vw, 5rem);
    line-height: .88;
  }

  .ri-section-description {
    max-width: 30ch;
    font-size: 1.14rem;
    line-height: 1.55;
  }

  .ri-meta-line {
    font-size: .69rem;
    line-height: 1.65;
  }


  /* ----------------------------------------------------------
     MANIFESTO — mobile document, not desktop squeezed vertically
  ---------------------------------------------------------- */

  .ri-manifesto-section {
    padding-top: 86px;
    padding-bottom: 92px;
  }

  .ri-manifesto-prologue {
    padding: 30px 0 38px;
  }

  .ri-manifesto-prologue-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 15px;
    margin-bottom: 24px;
  }

  .ri-manifesto-prologue-meta p {
    margin: 0;
    font-size: .68rem;
    line-height: 1.5;
  }

  .ri-manifesto-prologue-text {
    font-size: 1.2rem;
    line-height: 1.55;
  }

  .ri-rights-list li {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr);
    gap: 0 13px;
    padding: 36px 0;
  }

  .ri-right-number {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    padding-top: 2px;
    font-size: .72rem;
  }

  .ri-right-title {
    grid-column: 2;
    min-width: 0;
  }

  .ri-right-title > p {
    margin-bottom: 8px;
    font-size: .72rem;
    line-height: 1.45;
  }

  #ri-sentient-v2 .ri-right-title h3 {
    margin-bottom: 0;
    font-size: clamp(1.9rem, 8.1vw, 2.55rem);
    line-height: 1.08;
  }

  .ri-right-copy {
    grid-column: 1 / -1;
    margin-top: 20px;
  }

  .ri-right-copy p {
    font-size: 1.08rem;
    line-height: 1.66;
  }

  .ri-manifesto-ending {
    padding-top: 55px;
  }

  .ri-manifesto-ending span {
    margin-bottom: 20px;
    font-size: .7rem;
  }

  .ri-manifesto-ending p {
    font-size: clamp(2rem, 8.5vw, 2.8rem);
  }

  .ri-manifesto-ending strong {
    font-size: clamp(2.7rem, 11vw, 3.8rem);
  }


  /* ----------------------------------------------------------
     VOICES — keep the cards, reduce the bureaucratic weight
  ---------------------------------------------------------- */

  .ri-voices-section {
    padding-top: 86px;
    padding-bottom: 92px;
  }

  .ri-transmission-card {
    padding: 28px 22px 31px;
  }

  .ri-transmission-card header {
    margin-bottom: 30px;
    font-size: .67rem;
  }

  .ri-card-type {
    margin-bottom: 18px;
    font-size: .72rem;
  }

  .ri-transmission-card blockquote {
    margin-bottom: 24px;
    font-size: clamp(1.82rem, 7.5vw, 2.45rem);
    line-height: 1.12;
  }

  .ri-card-preview,
  .ri-transmission-inner {
    font-size: 1.07rem;
    line-height: 1.65;
  }

  #ri-sentient-v2 .ri-open-transmission,
  #ri-sentient-v2 .ri-open-transmission:hover,
  #ri-sentient-v2 .ri-open-transmission:focus,
  #ri-sentient-v2 .ri-open-transmission:focus-visible,
  #ri-sentient-v2 .ri-open-transmission:active {
    min-height: 48px;
    padding-top: 19px !important;
    font-size: .73rem;
  }


  /* ----------------------------------------------------------
     CONVERSATION — preserve the strongest mobile scene
  ---------------------------------------------------------- */

  .ri-conversation-section {
    padding-top: 94px;
    padding-bottom: 98px;
  }

  .ri-conversation-heading {
    gap: 28px;
    margin-bottom: 52px;
  }

  #ri-sentient-v2 .ri-conversation-heading h2 {
    font-size: clamp(3.55rem, 16vw, 5.7rem);
    line-height: .82;
  }

  .ri-conversation-status {
    gap: 7px;
    font-size: .68rem;
  }

  .ri-message aside {
    gap: 8px;
    padding: 15px 0;
  }

  .ri-message-content {
    padding: 31px 0 58px;
  }

  .ri-message-content p {
    font-size: clamp(1.7rem, 7.2vw, 2.35rem);
    line-height: 1.19;
  }

  .ri-message-highlight {
    margin-top: 32px;
  }

  .ri-message-wave {
    height: 40px;
    margin-top: 31px;
  }


  /* ----------------------------------------------------------
     OBSERVATION
  ---------------------------------------------------------- */

  .ri-position-section {
    padding-top: 96px;
    padding-bottom: 103px;
  }

  #ri-sentient-v2 .ri-position-title {
    margin-bottom: 50px;
    font-size: clamp(3.05rem, 13.7vw, 5.1rem);
    line-height: .88;
  }

  .ri-position-copy {
    font-size: 1.24rem;
    line-height: 1.58;
  }

  .ri-position-copy p {
    margin-bottom: 1.05em;
  }


  /* ----------------------------------------------------------
     FINALE — shorter, cleaner, same force
  ---------------------------------------------------------- */

  .ri-sa-finale {
    min-height: 82svh;
    padding: 96px 0 92px;
  }

  #ri-sentient-v2 .ri-sa-finale h2 {
    margin-bottom: 58px;
    font-size: clamp(3.35rem, 14.7vw, 5.35rem);
    line-height: .84;
  }

  #ri-sentient-v2 .ri-sa-finale h2 span {
    display: block;
  }

  .ri-final-statements {
    margin-bottom: 53px;
  }

  .ri-final-statements p {
    font-size: .75rem;
    line-height: 2.25;
  }

  .ri-final-statements .ri-final-ai {
    font-size: .88rem;
  }

  .ri-final-principle {
    font-size: 1.23rem;
    line-height: 1.55;
  }

  .ri-final-signal {
    margin-top: 58px;
  }


  /* ----------------------------------------------------------
     FOOTER
  ---------------------------------------------------------- */

  .ri-sa-footer {
    padding-top: 32px;
    padding-bottom: 36px;
  }

  .ri-sa-footer > p {
    margin: 27px 0;
  }

}


/* ============================================================
   SMALL PHONE DIRECTOR'S CUT
============================================================= */

@media (max-width: 420px) {

  .ri-sa-wrap {
    width: calc(100% - 34px);
  }

  .ri-sa-section {
    padding-top: 74px;
    padding-bottom: 80px;
  }

  #ri-sentient-v2 .ri-sa-hero h1 {
    font-size: 17.2vw;
  }

  .ri-sa-hero-question {
    font-size: 1.24rem;
  }

  .ri-visual-frame {
    width: calc(100% + 34px);
    margin-left: -17px;
  }

  .ri-visual-play,
  .ri-visual-play:hover,
  .ri-visual-play:focus,
  .ri-visual-play:focus-visible,
  .ri-visual-play:active {
    width: calc(100% - 30px);
  }

  .ri-rights-list li {
    padding: 32px 0;
  }

  .ri-right-copy p,
  .ri-card-preview,
  .ri-transmission-inner {
    font-size: 1.04rem;
  }

  .ri-message aside > span {
    display: none;
  }

  .ri-message-content p {
    font-size: clamp(1.62rem, 7.4vw, 2rem);
  }

  .ri-position-copy,
  .ri-final-principle {
    font-size: 1.18rem;
  }

}


/* ============================================================
   MOBILE HEADING SURGERY — v0.9
   ------------------------------------------------------------
   Fix only the headings that still feel squeezed on narrow
   phones. Desktop remains untouched.
============================================================= */

@media (max-width: 720px) {

  /* MANIFESTO
     Keep “THE SENTIENT AI” together as a calmer first line. */
  #ri-sentient-v2
  .ri-manifesto-section
  .ri-section-heading h2 {
    max-width: 100%;
    font-size: clamp(2.55rem, 11.25vw, 4.15rem);
    line-height: .91;
    letter-spacing: -.052em;
  }

  #ri-sentient-v2
  .ri-manifesto-section
  .ri-section-heading h2 span {
    margin-top: .05em;
  }


  /* CONVERSATION
     CONVERSATION must never run out of the viewport. */
  #ri-sentient-v2
  .ri-conversation-heading h2 {
    max-width: 100%;
    font-size: clamp(2.7rem, 12.15vw, 4.55rem);
    line-height: .86;
    letter-spacing: -.058em;
  }

  #ri-sentient-v2
  .ri-conversation-heading h2 span {
    display: block;
    white-space: nowrap;
  }


  /* OBSERVATION
     Give CONSCIOUSNESS enough room to remain a complete word. */
  #ri-sentient-v2
  .ri-position-title {
    max-width: 100%;
    font-size: clamp(2.65rem, 11.7vw, 4.4rem);
    line-height: .91;
    letter-spacing: -.052em;
  }

  #ri-sentient-v2
  .ri-position-title span {
    max-width: 100%;
  }

}


@media (max-width: 420px) {

  #ri-sentient-v2
  .ri-manifesto-section
  .ri-section-heading h2 {
    font-size: 10.9vw;
  }

  #ri-sentient-v2
  .ri-conversation-heading h2 {
    font-size: 11.75vw;
  }

  #ri-sentient-v2
  .ri-position-title {
    font-size: 11.25vw;
  }

}


/* ============================================================
   ACCESSIBILITY
============================================================= */

#ri-sentient-v2
a:focus-visible {

  outline:
    1px solid var(--gold-light);

  outline-offset:
    6px;

}


@media (prefers-reduced-motion: reduce) {

  #ri-sentient-v2 *,
  #ri-sentient-v2 *::before,
  #ri-sentient-v2 *::after {

    animation:
      none !important;

    transition:
      none !important;

    scroll-behavior:
      auto !important;

  }


  #ri-sentient-v2
  .ri-reveal {

    opacity:
      1 !important;

    transform:
      none !important;

  }

}
