/*
Theme Name: Ragonion Rookiverse
Theme URI: https://ragonionrookiverse.com/
Author: Ragonion Rookiverse
Description: A flexible WordPress block theme based directly on the Ragonion Rookiverse landing-page design.
Version: 1.4.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: ragonion-rookiverse
*/

:root{
      --bg:#03080f;
      --panel:#08131e;
      --panel2:#0b1b29;
      --text:#ecfaff;
      --muted:#9cb6c5;
      --cyan:#74f3ff;
      --blue:#33b8ff;
      --magenta:#e750cb;
      --line:rgba(116,243,255,.22);
      --glow:0 0 18px rgba(116,243,255,.34);
      --max:1180px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 20% 0%, rgba(20,103,139,.18), transparent 34%),
        radial-gradient(circle at 90% 28%, rgba(86,42,122,.14), transparent 31%),
        var(--bg);
      line-height:1.6;
    }

    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}

    .nav{
      position:fixed;
      inset:0 0 auto 0;
      z-index:50;
      background:linear-gradient(to bottom, rgba(2,7,12,.92), rgba(2,7,12,.56), transparent);
      backdrop-filter:blur(8px);
    }

    .nav-inner{
      max-width:var(--max);
      margin:auto;
      padding:18px 24px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
    }

    .brand{
      font-family:Orbitron,sans-serif;
      font-weight:700;
      letter-spacing:.14em;
      font-size:.9rem;
      text-transform:uppercase;
      white-space:nowrap;
      text-shadow:0 0 12px rgba(116,243,255,.65);
    }

    .nav-links{display:flex;gap:28px;color:#ccecf3;font-size:.92rem}
    .nav-links a:hover{color:var(--cyan)}

    .hero{
      min-height:92vh;
      position:relative;
      display:flex;
      align-items:flex-end;
      overflow:hidden;
      border-bottom:1px solid var(--line);
    }

    .hero-bg{
      position:absolute;inset:0;
      background:
        linear-gradient(to top, #03080f 4%, rgba(3,8,15,.72) 34%, rgba(3,8,15,.12) 68%),
        linear-gradient(to right, rgba(3,8,15,.35), transparent 52%),
        url("assets/images/rookiverse-hero.gif") center 42% / cover no-repeat;
      transform:scale(1.015);
    }

    .hero:after{
      content:"";
      position:absolute;inset:0;
      background:radial-gradient(circle at 50% 45%, transparent 30%, rgba(1,4,8,.33) 72%, rgba(1,4,8,.75) 100%);
      pointer-events:none;
    }

    .hero-content{
      position:relative;
      z-index:2;
      max-width:var(--max);
      width:100%;
      margin:0 auto;
      padding:90px 24px 72px;
    }

    .eyebrow{
      font-family:Orbitron,sans-serif;
      text-transform:uppercase;
      letter-spacing:.28em;
      color:var(--cyan);
      font-size:.77rem;
      margin-bottom:18px;
    }

    h1,h2,h3{font-family:Orbitron,sans-serif;margin:0}
    h1{
      font-size:clamp(3rem,8vw,7rem);
      line-height:.93;
      max-width:980px;
      text-transform:uppercase;
      letter-spacing:.035em;
      text-shadow:0 0 28px rgba(58,212,255,.26);
    }
    h1 span{color:var(--cyan)}

    .hero-copy{
      max-width:700px;
      font-size:clamp(1rem,1.7vw,1.2rem);
      color:#d3e5ec;
      margin:24px 0 30px;
    }

    .cta-row{display:flex;gap:14px;flex-wrap:wrap}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:0 24px;
      border-radius:999px;
      font-weight:700;
      letter-spacing:.02em;
      transition:.2s ease;
    }

    .btn-primary{
      color:#001016;
      background:linear-gradient(135deg,var(--cyan),#8db6ff);
      box-shadow:0 0 26px rgba(116,243,255,.32);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 34px rgba(116,243,255,.55)}

    .btn-secondary{
      border:1px solid rgba(168,235,255,.35);
      background:rgba(6,18,27,.52);
      backdrop-filter:blur(10px);
    }
    .btn-secondary:hover{border-color:var(--cyan);color:var(--cyan)}

    .section{
      max-width:var(--max);
      margin:auto;
      padding:96px 24px;
    }

    .section-heading{
      display:grid;
      grid-template-columns:1fr 1.15fr;
      gap:36px;
      align-items:end;
      margin-bottom:42px;
    }

    .section h2{
      font-size:clamp(2rem,4vw,3.7rem);
      line-height:1.05;
      text-transform:uppercase;
    }

    .section-heading p{margin:0;color:var(--muted);font-size:1.05rem}

    .cards{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }

    .card{
      min-height:245px;
      padding:28px;
      border:1px solid var(--line);
      border-radius:22px;
      background:
        linear-gradient(160deg,rgba(15,43,59,.76),rgba(5,15,24,.78));
      box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
      position:relative;
      overflow:hidden;
    }

    .card:before{
      content:"";
      position:absolute;
      width:160px;height:160px;
      border-radius:50%;
      background:radial-gradient(circle,rgba(116,243,255,.18),transparent 66%);
      right:-40px;top:-40px;
    }

    .card-icon{
      width:46px;height:46px;
      border:1px solid rgba(116,243,255,.45);
      border-radius:14px;
      display:grid;place-items:center;
      color:var(--cyan);
      font-family:Orbitron,sans-serif;
      font-weight:800;
      margin-bottom:50px;
      box-shadow:var(--glow);
    }

    .card h3{font-size:1.18rem;margin-bottom:8px}
    .card p{margin:0;color:var(--muted)}

    .feature{
      margin:24px auto 0;
      max-width:var(--max);
      padding:0 24px 96px;
    }

    .feature-shell{
      border:1px solid var(--line);
      background:linear-gradient(145deg,rgba(8,28,41,.92),rgba(7,11,19,.9));
      border-radius:28px;
      padding:48px;
      display:grid;
      grid-template-columns:1.15fr .85fr;
      gap:36px;
      align-items:center;
      overflow:hidden;
      position:relative;
    }

    .feature-shell:after{
      content:"";
      position:absolute;
      right:-130px;top:-130px;
      width:420px;height:420px;border-radius:50%;
      background:radial-gradient(circle,rgba(231,80,203,.15),rgba(51,184,255,.08) 38%,transparent 68%);
    }

    .feature h2{font-size:clamp(2rem,4.5vw,4rem);line-height:1.03}
    .feature p{color:var(--muted);max-width:620px}

    .stat-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:12px;
      position:relative;
      z-index:1;
    }

    .stat{
      border:1px solid rgba(116,243,255,.18);
      border-radius:18px;
      background:rgba(3,12,18,.65);
      padding:24px;
    }

    .stat strong{
      display:block;
      font-family:Orbitron,sans-serif;
      color:var(--cyan);
      font-size:1.45rem;
      margin-bottom:5px;
    }

    .stat span{font-size:.88rem;color:var(--muted)}

    .join{
      text-align:center;
      max-width:920px;
      margin:auto;
      padding:92px 24px 110px;
    }

    .join h2{font-size:clamp(2.35rem,6vw,5rem);line-height:1}
    .join p{max-width:650px;margin:24px auto 28px;color:var(--muted)}

    footer{
      border-top:1px solid var(--line);
      color:#7f9aaa;
      padding:26px 24px;
      text-align:center;
      font-size:.85rem;
    }

    @media (max-width:900px){
      .nav-links{display:none}
      .hero{min-height:84vh}
      .section-heading,.feature-shell{grid-template-columns:1fr}
      .cards{grid-template-columns:repeat(2,1fr)}
      .feature-shell{padding:32px}
      .section{padding-top:74px;padding-bottom:74px}
    }

    @media (max-width:560px){
      .cards{grid-template-columns:1fr}
      .hero-content{padding-bottom:46px}
      .brand{font-size:.76rem}
      .btn{width:100%}
      .stat-grid{grid-template-columns:1fr}
      .feature-shell{padding:25px}
    }

    .social-links{
      display:flex;
      justify-content:center;
      align-items:center;
      gap:18px;
      margin-top:22px;
    }
    .social-link{
      width:46px;
      height:46px;
      display:grid;
      place-items:center;
      border:1px solid rgba(116,243,255,.28);
      border-radius:50%;
      background:rgba(6,18,27,.52);
      color:#dffaff;
      transition:.2s ease;
    }
    .social-link:hover{
      color:var(--cyan);
      border-color:var(--cyan);
      transform:translateY(-2px);
      box-shadow:var(--glow);
    }
    .social-link svg{
      width:22px;
      height:22px;
      fill:currentColor;
    }


    .journey{
      max-width:var(--max);
      margin:auto;
      padding:0 24px 96px;
    }
    .journey-shell{
      border:1px solid var(--line);
      border-radius:28px;
      background:
        radial-gradient(circle at 85% 20%, rgba(231,80,203,.12), transparent 30%),
        linear-gradient(145deg,rgba(7,25,38,.9),rgba(5,11,18,.95));
      padding:48px;
    }
    .journey-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
      margin-top:34px;
    }
    .journey-step{
      position:relative;
      padding:26px;
      border-radius:20px;
      border:1px solid rgba(116,243,255,.17);
      background:rgba(3,12,18,.55);
    }
    .journey-step .step-number{
      font-family:Orbitron,sans-serif;
      color:var(--cyan);
      font-size:.78rem;
      letter-spacing:.18em;
      margin-bottom:14px;
    }
    .journey-step h3{
      font-size:1.05rem;
      margin-bottom:8px;
    }
    .journey-step p{
      color:var(--muted);
      margin:0;
      font-size:.94rem;
    }
    @media (max-width:900px){
      .journey-grid{grid-template-columns:1fr}
      .journey-shell{padding:32px}
    }


    .eligibility-note{
      margin:30px auto 0;
      max-width:860px;
      padding:20px 22px;
      border:1px solid rgba(116,243,255,.22);
      border-radius:16px;
      background:rgba(7,20,29,.72);
      color:#bdd1db;
      font-size:.93rem;
    }
    .eligibility-note strong{color:var(--cyan)}


    .tier-details{
      margin-top:28px;
      padding-top:26px;
      border-top:1px solid rgba(116,243,255,.18);
      position:relative;
      z-index:1;
    }
    .tier-details h3{
      font-size:1rem;
      color:var(--cyan);
      margin-bottom:15px;
      text-transform:uppercase;
      letter-spacing:.08em;
    }
    .tier-ranking-grid{
      display:grid;
      grid-template-columns:repeat(5,1fr);
      gap:8px;
    }
    /*.tier-ranking-grid div{
      border:1px solid rgba(116,243,255,.16);
      background:rgba(3,12,18,.55);
      border-radius:12px;
      padding:10px 8px;
      text-align:center;*/
/* Base Tier box */
.tier-ranking-grid > a{
  border:1px solid rgba(116,243,255,.16);
  background:rgba(3,12,18,.55);
  border-radius:12px;
  padding:10px 8px;
  text-align:center;
  transition:.2s ease;
  cursor:pointer;
  color:var(--cyan);       /* ADD THIS */

  /* Default glow color */
  --tier-color: var(--cyan);
}
.tier-ranking-grid > a:hover strong{
  color:var(--tier-color);
}

/* Individual Tier colors */
.tier-ranking-grid > a:nth-child(1){
  --tier-color:#9ca3af;   /* Black - silver/gray glow so it's visible */
}

.tier-ranking-grid > a:nth-child(2){
  --tier-color:#39e75f;   /* Green */
}

.tier-ranking-grid > a:nth-child(3){
  --tier-color:#2dd4bf;   /* Teal */
}

.tier-ranking-grid > a:nth-child(4){
  --tier-color:#d8dee9;   /* Silver */
}

.tier-ranking-grid > a:nth-child(5){
  --tier-color:#ff9f43;   /* Orange */
}

.tier-ranking-grid > a:nth-child(6){
  --tier-color:#a86f4c;   /* Brown */
}

.tier-ranking-grid > a:nth-child(7){
  --tier-color:#3b82f6;   /* Blue */
}

.tier-ranking-grid > a:nth-child(8){
  --tier-color:#a855f7;   /* Purple */
}

.tier-ranking-grid > a:nth-child(9){
  --tier-color:#ffd54a;   /* Gold */
}

.tier-ranking-grid > a:nth-child(10){
  --tier-color:#ff4d5a;   /* Red */
}

/* Matching hover effect */
.tier-ranking-grid > a:hover{
  color:var(--tier-color);
  border-color:var(--tier-color);
  transform:translateY(-2px);

  box-shadow:
    0 0 10px color-mix(in srgb, var(--tier-color) 45%, transparent),
    0 0 22px color-mix(in srgb, var(--tier-color) 25%, transparent);

  background:rgba(8,20,29,.78);
}

/* Make the ranking number match too */
.tier-ranking-grid > a:hover strong{
  color:var(--tier-color);
}
    }
    .tier-ranking-grid strong{
      display:block;
      font-family:Orbitron,sans-serif;
      color:var(--cyan);
      font-size:.72rem;
    }
    .tier-ranking-grid span{
      display:block;
      font-size:.86rem;
      margin-top:2px;
    }
    .tier-level-copy,.qualification-copy{
      margin:16px 0 0 !important;
      max-width:100% !important;
      font-size:.91rem;
    }
    .qualification-copy{
      padding:14px 16px;
      border-left:2px solid var(--cyan);
      background:rgba(3,12,18,.48);
      border-radius:0 10px 10px 0;
    }
    @media (max-width:700px){
      .tier-ranking-grid{grid-template-columns:repeat(2,1fr)}
    }

/* ==========================================================
   WORDPRESS BLOCK THEME INTEGRATION
   These rules sit alongside the original landing-page styles.
   ========================================================== */

body.admin-bar .rr-wp-header{
  top:32px;
}

.rr-wp-header{
  position:relative;
  z-index:60;
  width:100%;
  background:rgba(2,7,12,.94);
  border-bottom:1px solid rgba(116,243,255,.16);
  backdrop-filter:blur(10px);
}

.rr-wp-header-inner{
  max-width:var(--max);
  margin:0 auto;
  padding:16px 24px;
}

.rr-wp-header .wp-block-site-title{
  margin:0;
  font-family:Orbitron,sans-serif;
  font-weight:700;
  letter-spacing:.14em;
  font-size:.9rem;
  text-transform:uppercase;
  white-space:nowrap;
  text-shadow:0 0 12px rgba(116,243,255,.65);
}

.rr-wp-header .wp-block-site-title a{
  color:var(--text);
  text-decoration:none;
}

.rr-wp-header .wp-block-navigation{
  font-size:.92rem;
  color:#ccecf3;
}

.rr-wp-header .wp-block-navigation a{
  color:#ccecf3;
  text-decoration:none;
}

.rr-wp-header .wp-block-navigation a:hover{
  color:var(--cyan);
}

.rr-wp-footer{
  border-top:1px solid var(--line);
  color:#7f9aaa;
  padding:28px 24px;
  text-align:center;
  font-size:.85rem;
  background:rgba(3,8,15,.76);
}

.rr-page-shell{
  max-width:var(--max);
  margin:0 auto;
  padding:72px 24px 96px;
  min-height:65vh;
}

.rr-page-title{
  font-family:Orbitron,sans-serif;
  font-size:clamp(2.2rem,5vw,4.4rem);
  line-height:1.05;
  text-transform:uppercase;
  color:var(--text);
  margin-bottom:34px;
}

.rr-content-panel{
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(8,28,41,.88),rgba(7,11,19,.9));
  padding:clamp(24px,4vw,48px);
}

.rr-content-panel :where(h2,h3,h4,h5,h6){
  font-family:Orbitron,sans-serif;
}

.rr-content-panel a{
  color:var(--cyan);
}

.rr-tier-template-label{
  font-family:Orbitron,sans-serif;
  text-transform:uppercase;
  letter-spacing:.24em;
  color:var(--cyan);
  font-size:.76rem;
  margin-bottom:14px;
}

.rr-post-meta{
  color:var(--muted);
  margin-top:-18px;
  margin-bottom:30px;
}

.rr-404{
  text-align:center;
  padding:120px 24px;
  min-height:65vh;
}

.rr-404 h1{
  font-family:Orbitron,sans-serif;
  font-size:clamp(4rem,12vw,9rem);
  color:var(--cyan);
  margin:0;
  text-shadow:0 0 28px rgba(116,243,255,.35);
}

.rr-blank-canvas{
  min-height:100vh;
}

/* Make native WordPress buttons visually match the homepage */
.wp-block-button__link{
  border-radius:999px;
  font-weight:700;
  transition:.2s ease;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link{
  color:#001016;
  background:linear-gradient(135deg,var(--cyan),#8db6ff);
  box-shadow:0 0 26px rgba(116,243,255,.32);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover{
  transform:translateY(-2px);
  box-shadow:0 0 34px rgba(116,243,255,.55);
}

.wp-block-button.is-style-outline .wp-block-button__link{
  border:1px solid rgba(168,235,255,.35);
  background:rgba(6,18,27,.52);
  color:var(--text);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover{
  border-color:var(--cyan);
  color:var(--cyan);
  transform:translateY(-2px);
  box-shadow:var(--glow);
}

@media (max-width:782px){
  body.admin-bar .rr-wp-header{top:46px}
  .rr-wp-header-inner{padding:14px 18px}
  .rr-page-shell{padding:52px 18px 72px}
}

/* Hide custom mobile submenu controls outside the mobile overlay */
.rr-mobile-submenu-toggle{
  display:none !important;
}

/* ===== Rookiverse Mobile Navigation v1.3 ===== */
@media (max-width:900px){

  /* Avoid trapping WordPress' mobile overlay inside the header */
  .rr-wp-header{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }

  /* Full-screen hamburger menu */
  .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed !important;
    inset:0 !important;
    width:100vw !important;
    height:100dvh !important;
    min-height:100vh !important;
    max-height:none !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    background:#03080f !important;
    color:#ecfaff !important;
    z-index:999999 !important;
  }

  .wp-block-navigation__responsive-container-content{
    width:100% !important;
    min-height:100% !important;
    padding:80px 28px 40px !important;
  }

  /* Root menu */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container{
    width:100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item{
    width:100% !important;
    position:relative !important;
    flex-wrap:wrap !important;
  }

  /* Top-level rows */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container > .wp-block-navigation-item{
    border-bottom:1px solid rgba(116,243,255,.12);
    padding:7px 0 !important;
  }

  /* Top-level text */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__container > .wp-block-navigation-item
  > .wp-block-navigation-item__content{
    display:block !important;
    color:#ecfaff !important;
    font-weight:650 !important;
    font-size:1.1rem !important;
    letter-spacing:.02em;
    padding:8px 46px 8px 0 !important;
  }

  /* Nested item text */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container
  .wp-block-navigation-item__content{
    display:block !important;
    width:100% !important;
    color:#c8e1e9 !important;
    font-weight:550 !important;
    font-size:.96rem !important;
    padding:7px 46px 7px 0 !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item__content:hover{
    color:#74f3ff !important;
  }

  /* Hide WordPress' own submenu controls on mobile.
     v1.3 supplies a separate arrow button so the text link remains a normal link. */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-icon,
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-submenu__toggle{
    display:none !important;
  }

  /* Our custom expand/collapse button.
     Every parent at every nesting level gets one. */
  .wp-block-navigation__responsive-container.is-menu-open
  .rr-mobile-submenu-toggle{
    position:absolute !important;
    top:6px !important;
    right:0 !important;
    width:40px !important;
    height:40px !important;
    display:grid !important;
    place-items:center !important;
    margin:0 !important;
    padding:0 !important;
    color:#ecfaff !important;
    background:rgba(116,243,255,.04) !important;
    border:1px solid rgba(116,243,255,.16) !important;
    border-radius:10px !important;
    cursor:pointer !important;
    z-index:5 !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .rr-mobile-submenu-toggle:hover{
    color:#74f3ff !important;
    border-color:rgba(116,243,255,.45) !important;
    box-shadow:0 0 12px rgba(116,243,255,.15);
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .rr-mobile-submenu-toggle::before{
    content:"";
    width:8px;
    height:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
    transition:transform .2s ease;
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.rr-submenu-open
  > .rr-mobile-submenu-toggle::before{
    transform:rotate(225deg) translate(-1px,-1px);
  }

  /* All nested lists start collapsed — regardless of depth */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.has-child
  > .wp-block-navigation__submenu-container{
    display:none !important;
    position:static !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    margin:2px 0 4px !important;
    padding:3px 0 5px 18px !important;
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
  }

  /* Open only the submenu belonging to the tapped parent */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation-item.has-child.rr-submenu-open
  > .wp-block-navigation__submenu-container{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
  }

  /* Visual nesting */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container
  > .wp-block-navigation-item{
    border-left:1px solid rgba(116,243,255,.12);
    padding:3px 0 3px 12px !important;
  }

  /* Nested parents also need room for their own arrow */
  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__submenu-container
  .wp-block-navigation-item.has-child
  > .wp-block-navigation-item__content{
    padding-right:46px !important;
  }

  /* Keep the X button clear and bright */
  .wp-block-navigation__responsive-container-close{
    color:#ecfaff !important;
    z-index:1000000 !important;
  }
}
/* ===== End Rookiverse Mobile Navigation v1.3 ===== */

/* ==========================================================
   HOMEPAGE BLOCK EDITING v1.4
   Native Gutenberg blocks retain the original landing-page look.
   ========================================================== */

.rr-home-blocks{
  width:100%;
  max-width:none !important;
  margin:0 !important;
}

.rr-home-blocks > *{margin-block-start:0}

.hero-bg.wp-block-group{margin:0 !important}

.hero-content.wp-block-group,
.section-heading.wp-block-group,
.cards.wp-block-group,
.feature-shell.wp-block-group,
.feature-copy.wp-block-group,
.tier-details.wp-block-group,
.tier-ranking-grid.wp-block-group,
.stat-grid.wp-block-group,
.stat.wp-block-group,
.journey-shell.wp-block-group,
.journey-grid.wp-block-group,
.journey-step.wp-block-group{
  margin-block-start:0;
}

.wp-block-buttons.cta-row{gap:14px}

.wp-block-buttons.cta-row .wp-block-button__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:0 24px;
  font-weight:700;
  letter-spacing:.02em;
}

.rr-feature-buttons{margin-top:26px !important}
.rr-journey-buttons{margin-top:30px !important}
.rr-centered-buttons{justify-content:center}

.hero h1 mark{
  background:transparent !important;
  color:var(--cyan) !important;
  padding:0;
}

.card .card-icon{margin-top:0 !important}
.card h3.wp-block-heading{margin-top:0 !important}

.tier-ranking-grid > .rr-tier-card{
  margin:0 !important;
  --tier-color:var(--cyan);
}

.tier-ranking-grid > .rr-tier-card > a{
  display:block;
  border:1px solid rgba(116,243,255,.16);
  background:rgba(3,12,18,.55);
  border-radius:12px;
  padding:10px 8px;
  text-align:center;
  transition:.2s ease;
  cursor:pointer;
  color:var(--cyan);
}

.tier-ranking-grid > .rr-tier-card > a strong{
  display:block;
  font-family:Orbitron,sans-serif;
  color:var(--cyan);
  font-size:.72rem;
}

.tier-ranking-grid > .rr-tier-card:nth-child(1){--tier-color:#9ca3af}
.tier-ranking-grid > .rr-tier-card:nth-child(2){--tier-color:#39e75f}
.tier-ranking-grid > .rr-tier-card:nth-child(3){--tier-color:#2dd4bf}
.tier-ranking-grid > .rr-tier-card:nth-child(4){--tier-color:#d8dee9}
.tier-ranking-grid > .rr-tier-card:nth-child(5){--tier-color:#ff9f43}
.tier-ranking-grid > .rr-tier-card:nth-child(6){--tier-color:#a86f4c}
.tier-ranking-grid > .rr-tier-card:nth-child(7){--tier-color:#3b82f6}
.tier-ranking-grid > .rr-tier-card:nth-child(8){--tier-color:#a855f7}
.tier-ranking-grid > .rr-tier-card:nth-child(9){--tier-color:#ffd54a}
.tier-ranking-grid > .rr-tier-card:nth-child(10){--tier-color:#ff4d5a}

.tier-ranking-grid > .rr-tier-card > a:hover{
  color:var(--tier-color);
  border-color:var(--tier-color);
  transform:translateY(-2px);
  box-shadow:
    0 0 10px color-mix(in srgb, var(--tier-color) 45%, transparent),
    0 0 22px color-mix(in srgb, var(--tier-color) 25%, transparent);
  background:rgba(8,20,29,.78);
}

.tier-ranking-grid > .rr-tier-card > a:hover strong{color:var(--tier-color)}

.stat .rr-stat-title{
  margin:0 0 5px !important;
  font-family:Orbitron,sans-serif;
  color:var(--cyan);
  font-size:1.45rem;
  line-height:1.2;
}

.stat .rr-stat-copy{
  margin:0 !important;
  font-size:.88rem;
  color:var(--muted);
}

.rr-journey-title{
  font-size:clamp(2rem,4.5vw,4rem) !important;
  line-height:1.03 !important;
}

.rr-journey-copy{
  color:var(--muted);
  max-width:760px;
  margin-top:18px !important;
}

.journey-step .step-number{margin-top:0 !important}

.eligibility-note a{
  color:var(--cyan);
  text-decoration:underline;
}

.join .wp-block-social-links.rr-social-blocks{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:18px;
  margin-top:22px;
  padding:0;
}

.join .rr-social-blocks .wp-social-link{
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border:1px solid rgba(116,243,255,.28);
  border-radius:50%;
  background:rgba(6,18,27,.52) !important;
  color:#dffaff !important;
  transition:.2s ease;
}

.join .rr-social-blocks .wp-social-link:hover{
  color:var(--cyan) !important;
  border-color:var(--cyan);
  transform:translateY(-2px);
  box-shadow:var(--glow);
}

.join .rr-social-blocks .wp-social-link a{
  padding:11px;
  color:inherit !important;
}

@media (max-width:560px){
  .wp-block-buttons.cta-row{width:100%}
  .wp-block-buttons.cta-row .wp-block-button{width:100%}
  .wp-block-buttons.cta-row .wp-block-button__link{width:100%}
}

/* ==========================================================
   GENERIC ROOKIVERSE PAGE TEMPLATE v1.4.1
   Flexible page canvas for normal Gutenberg blocks.
   ========================================================== */

.rr-generic-page{
  position:relative;
  isolation:isolate;
  min-height:70vh;
  overflow:hidden;
  padding-bottom:90px;
  background:
    radial-gradient(circle at 18% 4%, rgba(20,103,139,.16), transparent 32rem),
    radial-gradient(circle at 88% 26%, rgba(86,42,122,.14), transparent 30rem),
    linear-gradient(to bottom, rgba(3,8,15,.22), rgba(3,8,15,.72));
}

.rr-generic-page::before,
.rr-generic-page::after{
  content:"";
  position:absolute;
  z-index:-1;
  pointer-events:none;
  border-radius:50%;
  filter:blur(12px);
}

.rr-generic-page::before{
  width:440px;
  height:440px;
  left:-220px;
  top:180px;
  background:radial-gradient(circle, rgba(116,243,255,.08), transparent 68%);
}

.rr-generic-page::after{
  width:520px;
  height:520px;
  right:-270px;
  top:520px;
  background:radial-gradient(circle, rgba(231,80,203,.07), transparent 70%);
}

.rr-generic-page-heading{
  position:relative;
  padding:clamp(64px,8vw,110px) 24px 42px;
  text-align:center;
}

.rr-generic-eyebrow{
  margin:0 0 14px !important;
  font-family:Orbitron,sans-serif;
  text-transform:uppercase;
  letter-spacing:.28em;
  color:var(--cyan);
  font-size:.76rem;
  text-shadow:0 0 14px rgba(116,243,255,.32);
}

.rr-generic-title{
  margin:0 auto !important;
  max-width:1050px;
  font-family:Orbitron,sans-serif;
  font-size:clamp(2.4rem,6vw,5.1rem);
  line-height:1.02;
  text-transform:uppercase;
  color:var(--text);
  text-wrap:balance;
}

.rr-generic-divider{
  width:96px !important;
  margin:28px auto 0 !important;
  border:0 !important;
  height:1px !important;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent) !important;
  box-shadow:0 0 14px rgba(116,243,255,.32);
}

.rr-generic-content{
  padding-left:24px;
  padding-right:24px;
}

.rr-generic-content > *{
  margin-block-start:0;
  margin-block-end:24px;
}

.rr-generic-content > :where(h2,h3,h4){
  margin-top:clamp(40px,6vw,72px);
}

.rr-generic-content :where(h2,h3,h4,h5,h6){
  font-family:Orbitron,sans-serif;
}

.rr-generic-content h2{
  font-size:clamp(1.8rem,3.5vw,3rem);
  line-height:1.12;
}

.rr-generic-content a{
  color:var(--cyan);
}

.rr-generic-content .wp-block-separator{
  border-color:rgba(116,243,255,.22);
}

/* Optional block styles available from the WordPress Styles panel */
.wp-block-group.is-style-rookiverse-panel{
  border:1px solid rgba(116,243,255,.22);
  border-radius:24px;
  background:linear-gradient(145deg,rgba(8,28,41,.84),rgba(7,11,19,.9));
  padding:clamp(24px,4vw,48px);
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}

.wp-block-group.is-style-rookiverse-glow{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(116,243,255,.34);
  border-radius:24px;
  background:
    radial-gradient(circle at 15% 15%, rgba(116,243,255,.10), transparent 42%),
    linear-gradient(145deg,rgba(8,28,41,.9),rgba(7,11,19,.92));
  padding:clamp(24px,4vw,48px);
  box-shadow:
    0 0 28px rgba(116,243,255,.10),
    0 18px 55px rgba(0,0,0,.28);
}

.wp-block-heading.is-style-rookiverse-accent{
  color:var(--cyan);
  text-shadow:0 0 18px rgba(116,243,255,.22);
}

.wp-block-image.is-style-rookiverse-frame img{
  border:1px solid rgba(116,243,255,.24);
  border-radius:20px;
  box-shadow:0 20px 55px rgba(0,0,0,.28);
}

@media (max-width:700px){
  .rr-generic-page{
    padding-bottom:64px;
  }

  .rr-generic-page-heading{
    padding:54px 18px 30px;
  }

  .rr-generic-content{
    padding-left:18px;
    padding-right:18px;
  }
}
