/* Keep the recruitment CTA readable on its yellow background. */
.rk-cta-panel .rk-section-lead {
  color: var(--rubyvio-button-text);
}

/* Keep the yellow detail above, rather than behind, value-card titles. */
.rk-values .rk-card::after {
  top: 0;
  height: 8px;
}


/* Migrated club content: native Bricks elements and accessible social icon links. */
.rk-import-section .rk-section-title{margin-bottom:28px}.rk-import-intro{margin-bottom:32px}
.rk-prose{color:color-mix(in srgb,var(--rubyvio-color-text) 80%,transparent);line-height:1.7;overflow-wrap:anywhere;max-width:100%}.rk-prose p{margin:0 0 1em}.rk-prose a{color:var(--rubyvio-color-primary);text-decoration:underline;text-underline-offset:3px}.rk-prose ul,.rk-prose ol{padding-left:1.5em}.rk-prose table{width:100%;border-collapse:collapse;display:block;overflow-x:auto;margin:24px 0}.rk-prose td,.rk-prose th{padding:12px 16px;border:1px solid var(--rubyvio-color-border-secondary);text-align:left;min-width:120px}.rk-prose th{color:var(--rubyvio-color-primary)}
.rk-import-image{width:100%;height:auto;max-height:640px;object-fit:cover;margin:28px 0}.rk-card-cover{width:100%;height:210px;object-fit:cover;margin-bottom:24px}.rk-import-card{display:flex;flex-direction:column;gap:8px}.rk-import-card .rk-card-link{margin-top:auto;padding-top:18px}.rk-import-card::after{height:8px;top:0;width:80px}.rk-import-card .rk-card-title{overflow-wrap:anywhere}
.rk-social-icons{display:flex!important;flex-wrap:wrap;gap:14px!important;margin:24px 0;padding:0;list-style:none}.rk-social-icons li{margin:0!important;padding:0!important;background:none!important}.rk-social-icons a{display:inline-flex!important;align-items:center;justify-content:center;width:52px;height:52px;background:var(--rubyvio-color-surface);border:1px solid var(--rubyvio-color-border-control);color:var(--rubyvio-color-primary)!important;text-decoration:none}.rk-social-icons a:hover,.rk-social-icons a:focus-visible{background:var(--rubyvio-color-secondary);border-color:var(--rubyvio-color-primary)}.rk-social-icons .icon{font-size:29px!important;line-height:1}.rk-social-icons span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.rk-video-embed{width:100%;aspect-ratio:16/9;background:var(--rubyvio-color-surface)}.rk-video-embed iframe{width:100%;height:100%;border:0}.rk-native-gallery{width:100%}.rk-import-title .rk-page-title{font-size:clamp(32px,5vw,74px);line-height:1.02;overflow-wrap:anywhere}.rk-import-section[id]{scroll-margin-top:100px}
@media(max-width:680px){.rk-card-cover{height:210px}.rk-import-section .rk-section-title{font-size:32px}.rk-native-gallery{columns:1}}

.rk-card-cover img{width:100%;height:210px;object-fit:cover}.rk-import-image img{max-height:640px;object-fit:cover}.rk-hero-media>.rvio-el-image{width:100%;height:100%;min-height:500px;object-fit:cover}.rk-hero-media>.rvio-el-image img{width:100%;height:100%;min-height:500px;object-fit:cover}


/* Card decoration stays on the border, clear of headings at every breakpoint. */
#rvio-content .rk-card::after,
#rvio-content .rk-match-card::after,
#rvio-content .rk-process-card::after {
  top: 0;
  right: 0;
  width: 88px;
  height: 6px;
  transform: none;
  pointer-events: none;
}


/* Satoshi: original self-hosted variable fonts, all text; icon fonts keep their glyphs. */
@font-face{font-family:'Satoshi';src:url("https://rck.rubyvio.com/wp-content/uploads/2026/10/Satoshi-Variable.woff2") format('woff2');font-style:normal;font-weight:300 900;font-display:swap}
@font-face{font-family:'Satoshi';src:url("https://rck.rubyvio.com/wp-content/uploads/2026/10/Satoshi-VariableItalic.woff2") format('woff2');font-style:italic;font-weight:300 900;font-display:swap}
:root{--rk-font-primary:var(--rubyvio-font-body)}
body,
body :is(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,label,legend,input,button,textarea,select,summary,table,th,td,blockquote,figcaption),
body :is(.rvio-el-heading,.rvio-el-text,.rvio-el-text-basic,.rvio-el-button,.rvio-el-text-link){
  font-family:var(--rubyvio-font-body)!important;
}


/* Native anchor navigation and a quiet, shared return-to-top control. */
html { scroll-behavior: smooth; }
#rvio-content [id] { scroll-margin-top: calc(var(--rk-header-height, 100px) + 20px); }
#rvio-header .rk-back-to-top {
  position: fixed;
  inset: auto max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) auto;
  z-index: 9000;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  min-width: 48px;
  padding: 0;
  border: 1px solid var(--rubyvio-color-primary);
  border-radius: 0;
  background: var(--rubyvio-color-surface);
  color: var(--rubyvio-color-primary);
  box-shadow: none;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background-color .16s ease, color .16s ease;
  -webkit-tap-highlight-color: transparent;
}
#rvio-header .rk-back-to-top.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
#rvio-header .rk-back-to-top:hover,
#rvio-header .rk-back-to-top:focus-visible {
  background: var(--rubyvio-color-primary);
  color: var(--rubyvio-button-text);
  box-shadow: none;
}
#rvio-header .rk-back-to-top:focus-visible { outline: 2px solid var(--rubyvio-color-text); outline-offset: 3px; }
#rvio-header .rk-back-to-top-icon { display: grid; place-items: center; width: 24px; height: 24px; line-height: 1; pointer-events: none; }
#rvio-header .rk-back-to-top-icon svg { display: block; width: 24px; height: 24px; }
#rvio-header .rk-header.is-mobile-menu-open ~ .rk-back-to-top { opacity: 0; visibility: hidden; pointer-events: none; }
@media (max-width: 680px) {
  #rvio-header .rk-back-to-top { right: max(16px, env(safe-area-inset-right)); bottom: max(16px, env(safe-area-inset-bottom)); width: 44px; height: 44px; min-width: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  #rvio-header .rk-back-to-top { transition: none; transform: none; }
}
