/* VIRENIX premium lower sections. Intentionally no .hero, site-header or logo selectors. */
:root { --vx-rose: #ed97df; --vx-lavender: #b9a0ff; }
:is(.film-head,.section-heading,.scenes-heading,.release-content,.mega-copy,.r-section-intro,.r-dual) h2 {
  text-wrap: balance;
}
:is(.film-head,.section-heading,.scenes-heading,.release-content,.mega-copy,.r-section-intro,.r-dual) h2 em,
.mega-intro h2 em {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  font-style: italic;
  background: linear-gradient(110deg,#ffe3f5 0%,#f3a0df 30%,#be9bff 70%,#ffb9e8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  filter: drop-shadow(0 0 14px rgba(203,95,218,.14));
}
/* Fine violet/pink illuminated boundaries and moving pointer highlights. */
:is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div) {
  --vx-x: 50%; --vx-y: 50%;
  position: relative;
  isolation: isolate;
  transition: border-color .28s ease,box-shadow .28s ease,transform .28s ease,background-color .28s ease;
}
:is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div)::after {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  z-index: -1;
  background: radial-gradient(260px circle at var(--vx-x) var(--vx-y),rgba(237,125,221,.16),rgba(143,92,238,.065) 46%,transparent 74%);
  transition: opacity .32s ease;
}
:is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div):is(:hover,:focus-within) {
  border-color: rgba(232,153,240,.57);
  box-shadow: 0 17px 52px rgba(10,4,22,.27),0 0 28px rgba(160,84,214,.13),inset 0 0 0 1px rgba(249,173,252,.05);
  transform: translateY(-3px);
}
:is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div):is(:hover,:focus-within)::after { opacity: 1; }
.r-role-grid>div { min-height: 155px; }
.r-role-grid strong,.r-card h3,.workflow-main h3,.lab-card h3 { transition: color .24s ease; }
:is(.r-role-grid>div,.r-card,.workflow,.lab-card):hover :is(strong,h3) { color: #f6c6f0; }
.r-role-grid span { color: #e9a4f4; }
/* Keep card entrance subtle: only elements already visible are animated. */
@media (prefers-reduced-motion: no-preference) {
  .vx-lower-reveal { opacity: 0; transform: translateY(18px); transition: opacity .58s ease,transform .58s cubic-bezier(.2,.8,.2,1); }
  .vx-lower-reveal.is-visible { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  :is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div) { transition: none; }
  :is(.lab-card,.workflow-example,.quest-step,.r-role-grid>div,.r-card,.r-aside-card,.r-check-grid>div):hover { transform: none; }
}
