:root {
  --r4-blue: #233E8D;
  --r4-cyan: #00ACEF;
  --r4-green: #3FAA47;
  --r4-yellow: #FEC202;
  --r4-brown: #6B4F2A;
  --r4-ink: #0B1220;

  --bs-body-font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, "Noto Sans", "Liberation Sans", sans-serif;
}

html {
  scroll-behavior: smooth;
}

body {
  color: var(--r4-ink);
  background: #f6f9fc;
}

a {
  text-decoration: none;
}

.r4-topbar {
  background: linear-gradient(90deg, rgba(35,62,141,1) 0%, rgba(0,172,239,1) 45%, rgba(63,170,71,1) 100%);
  color: #fff;
  font-size: .92rem;
}

.r4-topbar a {
  color: rgba(255,255,255,.95);
  border-bottom: 1px dashed rgba(255,255,255,.55);
}

.r4-navbar {
  backdrop-filter: saturate(160%) blur(10px);
  background: rgba(255,255,255,.86);
  border-bottom: 1px solid rgba(35,62,141,.08);
}

.r4-brand img {
  height: 70px;
  width: auto;
}

.r4-nav-link {
  font-weight: 600;
  color: rgba(11,18,32,.85);
}

.r4-nav-link:hover, .r4-nav-link:focus {
  color: var(--r4-blue);
}

.r4-lang {
  min-width: 140px;
}

.r4-pill {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .35rem .7rem;
  border-radius: 999px;
  background: rgba(35,62,141,.08);
  border: 1px solid rgba(35,62,141,.12);
  color: rgba(11,18,32,.84);
  font-weight: 600;
  font-size: .9rem;
}

.r4-hero {
  position: relative;
}

.r4-hero .carousel-item {
  min-height: 620px;
  border-radius: 28px;
  overflow: hidden;
}

@media (max-width: 992px) {
  .r4-hero .carousel-item {
    min-height: 520px;
    border-radius: 22px;
  }
}

@media (max-width: 576px) {
  .r4-hero .carousel-item {
    min-height: 520px;
    border-radius: 18px;
  }
}

.r4-hero-bg {
  position: absolute;
  inset: 0;
  background-position: center;
  background-size: cover;
  transform: scale(1.02);
}

.r4-hero-overlay {
  position: absolute;
  inset: 0;
  background: radial-gradient(1200px 520px at 22% 40%, rgba(255,255,255,.20), rgba(255,255,255,0) 60%),
              linear-gradient(180deg, rgba(11,18,32,.55) 0%, rgba(11,18,32,.35) 30%, rgba(11,18,32,.35) 70%, rgba(11,18,32,.65) 100%);
}

.r4-hero-content {
  position: relative;
  z-index: 2;
  color: #fff;
  padding: 72px 64px 56px 64px;
}

@media (max-width: 992px) {
  .r4-hero-content { padding: 56px 34px 100px 34px; }
}

.r4-hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  font-weight: 700;
  letter-spacing: .02em;
  padding: .35rem .75rem;
  border-radius: 999px;
  background: rgba(254,194,2,.18);
  border: 1px solid rgba(254,194,2,.35);
}

.r4-hero h1 {
  margin-top: 18px;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.04;
  font-size: clamp(2.05rem, 4vw, 3.35rem);
}

.r4-hero p.lead {
  max-width: 62ch;
  margin-top: 14px;
  color: rgba(255,255,255,.92);
}

.r4-hero-actions {
  margin-top: 20px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.r4-btn-primary {
  --bs-btn-bg: var(--r4-yellow);
  --bs-btn-border-color: var(--r4-yellow);
  --bs-btn-hover-bg: #f3b800;
  --bs-btn-hover-border-color: #f3b800;
  --bs-btn-color: rgba(11,18,32,.92);
  --bs-btn-hover-color: rgba(11,18,32,.95);
  font-weight: 800;
}

.r4-btn-outline {
  --bs-btn-color: #fff;
  --bs-btn-border-color: rgba(255,255,255,.55);
  --bs-btn-hover-bg: rgba(255,255,255,.12);
  --bs-btn-hover-border-color: rgba(255,255,255,.78);
  font-weight: 700;
}

.r4-hero-metrics {
  margin-top: 36px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

@media (max-width: 992px) {
  .r4-hero-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.r4-metric {
  padding: 14px 14px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 16px;
  backdrop-filter: blur(10px);
}

.r4-metric .num {
  font-size: 1.35rem;
  font-weight: 900;
  letter-spacing: -0.02em;
}

.r4-metric .lbl {
  font-size: .92rem;
  color: rgba(255,255,255,.85);
}

.r4-carousel-controls {
  position: absolute;
  left: 26px;
  bottom: 22px;
  z-index: 5;
  display: flex;
  gap: 10px;
  align-items: center;
}

.r4-carousel-controls .btn {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.22);
  color: #fff;
}

.r4-carousel-controls .btn:hover {
  background: rgba(255,255,255,.20);
}

.r4-progress {
  width: 180px;
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,.20);
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
}

.r4-progress > span {
  display: block;
  height: 100%;
  width: 0%;
  background: var(--r4-yellow);
  border-radius: 999px;
}

.r4-section {
  padding: 76px 0;
}

@media (max-width: 992px) {
  .r4-section { padding: 56px 0; }
}

.r4-section-title {
  font-weight: 900;
  letter-spacing: -0.02em;
}

.r4-subtitle {
  color: rgba(11,18,32,.70);
}

.r4-card {
  border: 1px solid rgba(35,62,141,.08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(11,18,32,.06);
}

.r4-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 40px rgba(11,18,32,.09);
}

.r4-card, .r4-card:hover {
  transition: all .22s ease;
}

.r4-icon-badge {
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, rgba(35,62,141,.14), rgba(0,172,239,.10), rgba(63,170,71,.10));
  border: 1px solid rgba(35,62,141,.12);
}

.r4-quick-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

@media (max-width: 992px) {
  .r4-quick-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 576px) {
  .r4-quick-grid {
    grid-template-columns: 1fr;
  }
}

.r4-quick a {
  color: inherit;
}

.r4-quick .title {
  font-weight: 800;
}

.r4-quick .desc {
  color: rgba(11,18,32,.68);
  font-size: .96rem;
}

.r4-chip {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .4rem .7rem;
  border-radius: 999px;
  font-weight: 700;
  background: rgba(11,18,32,.04);
  border: 1px solid rgba(11,18,32,.08);
  color: rgba(11,18,32,.78);
}

.r4-chip.active {
  background: rgba(35,62,141,.10);
  border-color: rgba(35,62,141,.20);
  color: var(--r4-blue);
}

.r4-step {
  position: relative;
  padding-left: 42px;
}

.r4-step:before {
  content: "";
  position: absolute;
  left: 16px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: rgba(35,62,141,.16);
}

.r4-step:last-child:before {
  display: none;
}

.r4-step .dot {
  position: absolute;
  left: 8px;
  top: 8px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--r4-yellow);
  box-shadow: 0 10px 18px rgba(254,194,2,.24);
}

.r4-step h6 {
  font-weight: 900;
  margin-bottom: .2rem;
}

.r4-step p {
  color: rgba(11,18,32,.70);
  margin-bottom: 1.1rem;
}

.r4-partner-tile img {
  width: 100%;
  height: 140px;
  object-fit: cover;
  border-radius: 18px;
  border: 1px solid rgba(35,62,141,.08);
  background: #fff;
}

.r4-news-card .meta {
  font-size: .9rem;
  color: rgba(11,18,32,.62);
}

.r4-footer {
  background: #0b1220;
  color: rgba(255,255,255,.86);
}

.r4-footer a {
  color: rgba(255,255,255,.86);
}

.r4-footer a:hover {
  color: #fff;
}

.r4-divider {
  border-top: 1px solid rgba(255,255,255,.12);
}

.r4-reveal {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .7s ease, transform .7s ease;
}

.r4-reveal.show {
  opacity: 1;
  transform: none;
}


/* --- Navbar enrichment */
.r4-navbar .container {
  position: relative;
}

.r4-navbar:before{
  content:"";
  position:absolute;
  left:0; right:0; top:0;
  height:100%;
  background:
    radial-gradient(900px 180px at 12% 0%, rgba(254,194,2,.14), rgba(254,194,2,0) 60%),
    radial-gradient(900px 180px at 88% 0%, rgba(0,172,239,.14), rgba(0,172,239,0) 60%),
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(255,255,255,.82));
  pointer-events:none;
  z-index:-1;
}

.r4-nav {
  gap: .25rem;
}

.r4-nav-link{
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .55rem .85rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: rgba(11,18,32,.86);
  font-weight: 800;
  letter-spacing: -0.01em;
}

.r4-nav-link i{
  font-size: 1.05rem;
  opacity: .92;
}

.r4-nav-link span{
  white-space: nowrap;
}

.r4-nav-link:hover, .r4-nav-link:focus{
  color: var(--r4-blue);
  background: rgba(35,62,141,.06);
  border-color: rgba(35,62,141,.14);
}

.r4-nav-link.active{
  color: var(--r4-blue);
  background: rgba(35,62,141,.10);
  border-color: rgba(35,62,141,.22);
  box-shadow: 0 10px 22px rgba(35,62,141,.10);
}

.r4-nav-sep{
  display:inline-block;
  width: 1px;
  height: 30px;
  background: rgba(11,18,32,.10);
}

.r4-utility-btn{
  border-radius: 999px;
  border: 1px solid rgba(11,18,32,.10);
  background: rgba(255,255,255,.70);
  color: rgba(11,18,32,.82);
  padding: .45rem .55rem;
}

.r4-utility-btn:hover{
  background: rgba(35,62,141,.06);
  border-color: rgba(35,62,141,.18);
  color: var(--r4-blue);
}

.r4-nav-cta{
  border-radius: 999px;
  padding: .55rem 1rem;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  box-shadow: 0 14px 26px rgba(254,194,2,.18);
}

.r4-dropdown{
  border-radius: 18px;
  border: 1px solid rgba(35,62,141,.12);
  box-shadow: 0 18px 44px rgba(11,18,32,.12);
  padding: .55rem;
}

.r4-dropdown .dropdown-item{
  border-radius: 12px;
  font-weight: 700;
  padding: .6rem .7rem;
}

.r4-dropdown .dropdown-item:hover{
  background: rgba(35,62,141,.08);
}

@media (max-width: 991.98px){
  .r4-nav-link{
    width: 100%;
    justify-content: flex-start;
  }
  .r4-nav-sep{
    display:none;
  }
  .r4-utility-btn{
    width: 100%;
    justify-content: center;
  }
  .r4-nav-cta{
    width: 100%;
    justify-content: center;
  }
}



/* === Brand Color Enrichment (Logo-based) === */

.r4-section:nth-of-type(even) {
  background: linear-gradient(180deg, rgba(35,62,141,0.035), rgba(255,255,255,0.0));
}

.r4-section:nth-of-type(odd) {
  background: linear-gradient(180deg, rgba(63,170,71,0.035), rgba(255,255,255,0.0));
}

.r4-section-title {
  background: linear-gradient(90deg, var(--r4-blue), var(--r4-green));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.r4-pill {
  background: linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.12));
  border-color: rgba(35,62,141,.25);
}

.r4-card {
  background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(245,248,252,0.95));
}

.r4-card:hover {
  border-color: rgba(35,62,141,.28);
}

.r4-icon-badge {
  background: linear-gradient(135deg, rgba(35,62,141,.22), rgba(0,172,239,.18), rgba(63,170,71,.18));
  box-shadow: 0 10px 24px rgba(35,62,141,.18);
}

.r4-quick {
  position: relative;
}
.r4-quick:before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.10), rgba(254,194,2,.12));
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 0;
}
.r4-quick:hover:before {
  opacity: 1;
}
.r4-quick > * {
  position: relative;
  z-index: 1;
}

.r4-metric {
  background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.06));
  border-color: rgba(255,255,255,.32);
}

.r4-footer {
  background: linear-gradient(180deg, #0b1220, #132247);
}

#cta .r4-card {
  background: linear-gradient(135deg, rgba(35,62,141,.14), rgba(0,172,239,.12), rgba(63,170,71,.12));
  border-color: rgba(35,62,141,.35);
}



    /* Consent UI (Bootstrap 5) */
    .r4-consent-fab{
      position: fixed;
      left: 16px;
      bottom: 16px;
      z-index: 1080;
      border-radius: 999px;
      padding: .55rem .85rem;
      border: 1px solid rgba(35,62,141,.18);
      background: rgba(255,255,255,.86);
      backdrop-filter: saturate(160%) blur(10px);
      box-shadow: 0 18px 38px rgba(11,18,32,.16);
      color: var(--r4-blue);
      display: inline-flex;
      gap: .45rem;
      align-items: center;
      font-weight: 600;
      letter-spacing: .2px;
      transition: transform .15s ease, box-shadow .15s ease;
    }
    .r4-consent-fab:hover{ transform: translateY(-1px); box-shadow: 0 22px 48px rgba(11,18,32,.20); }
    .r4-consent-fab:focus-visible{
      outline: none;
      box-shadow: 0 0 0 4px rgba(0,172,239,.22), 0 22px 48px rgba(11,18,32,.20);
    }
    .r4-consent-badge{
      width: 8px; height: 8px; border-radius: 50%;
      background: var(--r4-yellow);
      box-shadow: 0 0 0 3px rgba(247,199,56,.22);
    }
    .r4-consent-modal .modal-content{
      border-radius: 18px;
      border: 1px solid rgba(35,62,141,.14);
      box-shadow: 0 30px 80px rgba(11,18,32,.22);
      overflow: hidden;
    }
    .r4-consent-modal .modal-header{
      background: linear-gradient(90deg, rgba(35,62,141,.10), rgba(0,172,239,.08));
      border-bottom: 1px solid rgba(35,62,141,.10);
    }
    .r4-consent-small{
      font-size: .92rem;
      color: rgba(11,18,32,.74);
    }
    .r4-consent-pill{
      display: inline-flex;
      gap: .4rem;
      align-items: center;
      padding: .2rem .55rem;
      border-radius: 999px;
      border: 1px solid rgba(35,62,141,.14);
      background: rgba(255,255,255,.75);
      font-size: .82rem;
      color: rgba(11,18,32,.70);
    }
    .r4-consent-legal{
      max-height: 180px;
      overflow: auto;
      padding: .75rem .85rem;
      border-radius: 14px;
      border: 1px solid rgba(35,62,141,.12);
      background: rgba(255,255,255,.70);
    }
    .r4-consent-legal h6{ margin: .35rem 0 .35rem; font-weight: 700; }
    .r4-consent-legal ul{ margin: .35rem 0 .35rem 1.1rem; }
    @media (max-width: 576px){
      .r4-consent-fab{ left: 12px; bottom: 12px; padding: .55rem .75rem; }
      .r4-consent-fab span{ display:none; }
    }

    /* Back-to-top (R4Rural) */
    .r4-backtotop{
      --r4-scroll: 0%;
      position: fixed;
      right: 18px;
      bottom: 18px;
      width: 54px;
      height: 54px;
      border-radius: 999px;
      border: 1px solid rgba(35,62,141,.18);
      background:
        conic-gradient(var(--r4-yellow) var(--r4-scroll), rgba(11,18,32,.10) 0),
        rgba(255,255,255,.78);
      backdrop-filter: saturate(160%) blur(10px);
      box-shadow: 0 18px 38px rgba(11,18,32,.18);
      display: grid;
      place-items: center;
      z-index: 1090;
      opacity: 0;
      transform: translateY(10px) scale(.98);
      pointer-events: none;
      transition: opacity .18s ease, transform .18s ease, box-shadow .18s ease;
    }
    .r4-backtotop::before{
      content:"";
      position:absolute;
      inset: 4px;
      border-radius: 999px;
      background: rgba(255,255,255,.92);
      border: 1px solid rgba(35,62,141,.14);
    }
    .r4-backtotop i{
      position: relative;
      z-index: 1;
      font-size: 1.15rem;
      color: var(--r4-blue);
    }
    .r4-backtotop:hover{
      box-shadow: 0 22px 48px rgba(11,18,32,.22);
      transform: translateY(6px) scale(1);
    }
    .r4-backtotop:focus-visible{
      outline: none;
      box-shadow:
        0 0 0 4px rgba(0,172,239,.22),
        0 22px 48px rgba(11,18,32,.22);
    }
    .r4-backtotop.show{
      opacity: 1;
      transform: translateY(0) scale(1);
      pointer-events: auto;
    }
    @media (max-width: 576px){
      .r4-backtotop{ right: 14px; bottom: 14px; width: 52px; height: 52px; }
    }





/* ===== Flag Language Selector ===== */
.r4-lang-btn{
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .35rem .85rem;
  border-radius: 999px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(35,62,141,.15);
  backdrop-filter: blur(10px) saturate(160%);
  box-shadow: 0 12px 30px rgba(11,18,32,.12);
  font-weight: 600;
  transition: all .15s ease;
}

.r4-lang-btn:hover{
  transform: translateY(-1px);
  box-shadow: 0 18px 42px rgba(11,18,32,.18);
}

.r4-lang-menu{
  border-radius: 14px;
  border: 1px solid rgba(35,62,141,.12);
  box-shadow: 0 24px 60px rgba(11,18,32,.22);
  padding: .35rem;
}

.r4-lang-menu .dropdown-item{
  border-radius: 10px;
  padding: .45rem .65rem;
  font-weight: 500;
}

.r4-lang-menu .dropdown-item:hover{
  background: rgba(0,172,239,.10);
}

.r4-flag{
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 0 0 1px rgba(0,0,0,.08);
}

.r4-lang-label{
  font-size: .9rem;
}



    /* news.php - Page-specific (kept minimal; uses existing theme tokens) */
    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(980px 360px at 12% 20%, rgba(254,194,2,.18), rgba(254,194,2,0) 58%),
      radial-gradient(980px 360px at 78% 0%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
      radial-gradient(980px 360px at 86% 78%, rgba(63,170,71,.18), rgba(63,170,71,0) 58%),
      linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.08));
      filter:saturate(112%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-filter{ border-radius:18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }

    .r4-news-card{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); transition: transform .2s ease, box-shadow .2s ease; }
    .r4-news-card:hover{ transform: translateY(-2px); box-shadow: 0 22px 56px rgba(11,18,32,.10); }

    .r4-kbd{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: .78rem;
      padding: 2px 8px; border-radius: 999px; border: 1px solid rgba(35,62,141,.14); background: rgba(35,62,141,.06);
    }

    .r4-chip{ display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; border:1px solid rgba(35,62,141,.12);
      background: linear-gradient(135deg, rgba(35,62,141,.08), rgba(0,172,239,.06));
      font-weight:800; font-size:.80rem;
    }

    .r4-chip.announce{ background: linear-gradient(135deg, rgba(254,194,2,.18), rgba(35,62,141,.06)); }
    .r4-chip.news{ background: linear-gradient(135deg, rgba(0,172,239,.16), rgba(35,62,141,.06)); }
    .r4-chip.media{ background: linear-gradient(135deg, rgba(63,170,71,.14), rgba(35,62,141,.06)); }
    .r4-chip.pub{ background: linear-gradient(135deg, rgba(35,62,141,.14), rgba(254,194,2,.08)); }

    .r4-thumb{ width:100%; height:180px; border-radius:18px; border:1px solid rgba(35,62,141,.10);
      background:
        radial-gradient(1200px 360px at 0% 0%, rgba(254,194,2,.18), rgba(254,194,2,0) 60%),
        radial-gradient(1200px 360px at 100% 80%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
        linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.06));
      position:relative; overflow:hidden;
    }
    .r4-thumb:after{ content:""; position:absolute; inset:0; background-image: linear-gradient(to bottom, rgba(255,255,255,.00), rgba(255,255,255,.65)); }
    .r4-thumb .icon{ position:absolute; inset:auto 16px 14px auto; width:52px; height:52px; border-radius:16px; display:flex; align-items:center; justify-content:center;
      background: rgba(255,255,255,.88); border:1px solid rgba(35,62,141,.12); box-shadow:0 14px 32px rgba(11,18,32,.10);
    }

    .r4-sidecard{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); }

    .r4-divider{ height:1px; background: linear-gradient(90deg, rgba(35,62,141,.00), rgba(35,62,141,.14), rgba(35,62,141,.00)); }

    .r4-cta-strip{ border-radius: 22px; background:
      radial-gradient(900px 340px at 15% 0%, rgba(254,194,2,.18), rgba(254,194,2,0) 55%),
      radial-gradient(900px 340px at 85% 70%, rgba(0,172,239,.15), rgba(0,172,239,0) 60%),
      linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.08));
      border:1px solid rgba(35,62,141,.14);
      box-shadow: 0 18px 46px rgba(11,18,32,.08);
    }



    


    /* Page-specific (kept minimal; uses existing theme tokens) */
    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(900px 340px at 18% 30%, rgba(254,194,2,.26), rgba(254,194,2,0) 60%),
      radial-gradient(900px 340px at 78% 0%, rgba(0,172,239,.20), rgba(0,172,239,0) 55%),
      linear-gradient(135deg, rgba(35,62,141,.18), rgba(63,170,71,.14));
      filter:saturate(110%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-contact-list .item{ display:flex; gap:.75rem; align-items:flex-start; padding:.85rem 0; border-bottom:1px dashed rgba(11,18,32,.10); }
    .r4-contact-list .item:last-child{ border-bottom:0; }
    .r4-contact-list i{ font-size:1.15rem; color: var(--r4-blue); }

    .r4-form-hint{ font-size:.92rem; color: rgba(11,18,32,.68); }

    .r4-map-placeholder{ min-height: 340px; border-radius: 22px; background:
      radial-gradient(900px 400px at 30% 20%, rgba(0,172,239,.18), rgba(0,172,239,0) 60%),
      radial-gradient(900px 400px at 80% 70%, rgba(63,170,71,.16), rgba(63,170,71,0) 60%),
      linear-gradient(180deg, rgba(255,255,255,.90), rgba(245,248,252,.95));
      border:1px solid rgba(35,62,141,.10);
      overflow:hidden;
    }
    .r4-map-placeholder .inner{ padding: 26px; }

    .r4-poc-grid{ display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
    @media (max-width: 992px){ .r4-poc-grid{ grid-template-columns: 1fr; } }

    .r4-poc{ border-radius: 18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }
    .r4-poc .head{ display:flex; gap:12px; align-items:center; padding: 14px 16px 10px; }
    .r4-poc .head img{ width:56px; height:56px; border-radius:16px; object-fit: cover; background: #fff; border:1px solid rgba(35,62,141,.08); }
    .r4-poc .meta{ padding: 0 16px 16px; color: rgba(11,18,32,.70); }

    .r4-cta-strip{ border-radius: 22px; background:
      radial-gradient(900px 340px at 15% 0%, rgba(254,194,2,.20), rgba(254,194,2,0) 55%),
      radial-gradient(900px 340px at 85% 70%, rgba(0,172,239,.16), rgba(0,172,239,0) 60%),
      linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.08));
      border:1px solid rgba(35,62,141,.14);
      box-shadow: 0 18px 46px rgba(11,18,32,.08);
    }    



    
    /* Page-specific (kept minimal; uses existing theme tokens) */
    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(980px 360px at 12% 20%, rgba(254,194,2,.18), rgba(254,194,2,0) 58%),
      radial-gradient(980px 360px at 78% 0%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
      radial-gradient(980px 360px at 86% 78%, rgba(63,170,71,.18), rgba(63,170,71,0) 58%),
      linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.08));
      filter:saturate(112%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-filter{ border-radius:18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }

    .r4-event-card{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); }
    .r4-event-card .meta{ color: rgba(11,18,32,.66); }
    .r4-event-card .tag{ display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; border:1px solid rgba(35,62,141,.12);
      background: linear-gradient(135deg, rgba(35,62,141,.08), rgba(0,172,239,.06));
      font-weight:700; font-size:.82rem;
    }

    .r4-date-pill{ display:inline-flex; align-items:center; gap:10px; padding:10px 12px; border-radius:16px; border:1px solid rgba(35,62,141,.12);
      background: rgba(255,255,255,.90);
      box-shadow: 0 10px 26px rgba(11,18,32,.06);
    }
    .r4-date-pill .d{ width:44px; height:44px; border-radius:14px; display:flex; align-items:center; justify-content:center;
      background: linear-gradient(135deg, rgba(35,62,141,.12), rgba(254,194,2,.10));
      border:1px solid rgba(35,62,141,.12);
      font-weight:900;
      color: rgba(11,18,32,.85);
    }

    .r4-timeline{ position:relative; padding-left:22px; }
    .r4-timeline:before{ content:""; position:absolute; left:8px; top:6px; bottom:6px; width:2px;
      background: linear-gradient(to bottom, rgba(35,62,141,.22), rgba(63,170,71,.18));
    }
    .r4-timeline-item{ position:relative; }
    .r4-timeline-item:before{ content:""; position:absolute; left:10px; top:18px; width:14px; height:14px; border-radius:50%;
      background: linear-gradient(135deg, rgba(35,62,141,.85), rgba(0,172,239,.70));
      box-shadow: 0 10px 24px rgba(11,18,32,.10);
    }

    .r4-cta-strip{ border-radius: 22px; background:
      radial-gradient(900px 340px at 15% 0%, rgba(254,194,2,.18), rgba(254,194,2,0) 55%),
      radial-gradient(900px 340px at 85% 70%, rgba(0,172,239,.15), rgba(0,172,239,0) 60%),
      linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.08));
      border:1px solid rgba(35,62,141,.14);
      box-shadow: 0 18px 46px rgba(11,18,32,.08);
    }    



    

    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(980px 360px at 12% 20%, rgba(254,194,2,.18), rgba(254,194,2,0) 58%),
      radial-gradient(980px 360px at 78% 0%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
      radial-gradient(980px 360px at 86% 78%, rgba(63,170,71,.18), rgba(63,170,71,0) 58%),
      linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.08));
      filter:saturate(112%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-filter{ border-radius:18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }

    .r4-out-card{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); transition: transform .2s ease, box-shadow .2s ease; }
    .r4-out-card:hover{ transform: translateY(-2px); box-shadow: 0 22px 56px rgba(11,18,32,.10); }

    .r4-detail-btn{
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}
    
    .r4-thumb{ width:100%; height:168px; border-radius:18px; border:1px solid rgba(35,62,141,.10);
      background:
        radial-gradient(1200px 360px at 0% 0%, rgba(254,194,2,.18), rgba(254,194,2,0) 60%),
        radial-gradient(1200px 360px at 100% 80%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
        linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.06));
      position:relative; overflow:hidden;
    }
    .r4-thumb:after{ content:""; position:absolute; inset:0; background-image: linear-gradient(to bottom, rgba(255,255,255,.00), rgba(255,255,255,.66)); }
    .r4-thumb .icon{ position:absolute; inset:auto 16px 14px auto; width:52px; height:52px; border-radius:16px; display:flex; align-items:center; justify-content:center;
      background: rgba(255,255,255,.90); border:1px solid rgba(35,62,141,.12); box-shadow:0 14px 32px rgba(11,18,32,.10);
    }

    .r4-chip{ display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; border:1px solid rgba(35,62,141,.12);
      background: linear-gradient(135deg, rgba(35,62,141,.08), rgba(0,172,239,.06));
      font-weight:800; font-size:.80rem;
    }
    .r4-chip.pub{ background: linear-gradient(135deg, rgba(0,172,239,.16), rgba(35,62,141,.06)); }
    .r4-chip.brief{ background: linear-gradient(135deg, rgba(254,194,2,.18), rgba(35,62,141,.06)); }
    .r4-chip.toolkit{ background: linear-gradient(135deg, rgba(63,170,71,.14), rgba(35,62,141,.06)); }
    .r4-chip.story{ background: linear-gradient(135deg, rgba(35,62,141,.16), rgba(254,194,2,.10)); }
    .r4-chip.data{ background: linear-gradient(135deg, rgba(0,172,239,.12), rgba(63,170,71,.10)); }

    .r4-sidecard{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); }
    .r4-divider{ height:1px; background: linear-gradient(90deg, rgba(35,62,141,.00), rgba(35,62,141,.14), rgba(35,62,141,.00)); }

    .r4-kbd{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: .78rem;
      padding: 2px 8px; border-radius: 999px; border: 1px solid rgba(35,62,141,.14); background: rgba(35,62,141,.06);
    }

    .r4-cite{ border-radius:16px; border:1px dashed rgba(35,62,141,.18); background: rgba(35,62,141,.03); padding:12px 14px; }  
    
    



    
    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(980px 360px at 12% 20%, rgba(254,194,2,.18), rgba(254,194,2,0) 58%),
      radial-gradient(980px 360px at 78% 0%, rgba(0,172,239,.16), rgba(0,172,239,0) 58%),
      radial-gradient(980px 360px at 86% 78%, rgba(63,170,71,.18), rgba(63,170,71,0) 58%),
      linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.08));
      filter:saturate(112%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-filter{ border-radius:18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }

    .r4-card{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); transition: transform .2s ease, box-shadow .2s ease; }
    .r4-card:hover{ transform: translateY(-2px); box-shadow: 0 22px 56px rgba(11,18,32,.10); }

    .r4-badge{ display:inline-flex; align-items:center; gap:8px; padding:6px 10px; border-radius:999px; border:1px solid rgba(35,62,141,.12);
      background: linear-gradient(135deg, rgba(35,62,141,.08), rgba(0,172,239,.06));
      font-weight:800; font-size:.80rem;
    }
    .r4-badge.level{ background: linear-gradient(135deg, rgba(254,194,2,.18), rgba(35,62,141,.06)); }
    .r4-badge.format{ background: linear-gradient(135deg, rgba(0,172,239,.14), rgba(35,62,141,.06)); }
    .r4-badge.theme{ background: linear-gradient(135deg, rgba(63,170,71,.14), rgba(35,62,141,.06)); }

    .r4-sidecard{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); }
    .r4-divider{ height:1px; background: linear-gradient(90deg, rgba(35,62,141,.00), rgba(35,62,141,.14), rgba(35,62,141,.00)); }

    .r4-iconbox{ width:46px; height:46px; border-radius:16px; display:flex; align-items:center; justify-content:center;
      background: rgba(255,255,255,.92); border:1px solid rgba(35,62,141,.12); box-shadow:0 14px 32px rgba(11,18,32,.10);
    }

    .r4-muted{ color: rgba(11,18,32,.72); }
    .r4-meta{ display:flex; flex-wrap:wrap; gap:10px; }

    .r4-list-tight li{ margin-bottom: 6px; }

    .r4-empty{ border-radius:22px; border:1px dashed rgba(35,62,141,.18); background: rgba(35,62,141,.03); padding:18px; }

    .r4-kbd{ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: .78rem;
      padding: 2px 8px; border-radius: 999px; border: 1px solid rgba(35,62,141,.14); background: rgba(35,62,141,.06);
    }





    
        /* Page-specific (kept minimal; uses existing theme tokens) */
    .r4-page-hero{ position:relative; overflow:hidden; border-radius:28px; border:1px solid rgba(35,62,141,.10); box-shadow:0 18px 44px rgba(11,18,32,.10); }
    .r4-page-hero:before{ content:""; position:absolute; inset:-2px; background:
      radial-gradient(980px 360px at 12% 20%, rgba(63,170,71,.18), rgba(63,170,71,0) 58%),
      radial-gradient(980px 360px at 78% 0%, rgba(0,172,239,.18), rgba(0,172,239,0) 58%),
      radial-gradient(980px 360px at 86% 78%, rgba(254,194,2,.20), rgba(254,194,2,0) 58%),
      linear-gradient(135deg, rgba(35,62,141,.16), rgba(63,170,71,.10));
      filter:saturate(110%);
    }
    .r4-page-hero > *{ position:relative; z-index:1; }

    .r4-breadcrumbs a{ color: rgba(11,18,32,.72); }
    .r4-breadcrumbs a:hover{ color: var(--r4-blue); }

    .r4-kpi{ border-radius:20px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }
    .r4-kpi .icon{ width:46px; height:46px; border-radius:14px; display:flex; align-items:center; justify-content:center; border:1px solid rgba(35,62,141,.10);
      background: linear-gradient(135deg, rgba(35,62,141,.10), rgba(0,172,239,.08));
      color: var(--r4-blue);
    }

    .r4-flow{ border-radius:22px; border:1px solid rgba(35,62,141,.12); background: rgba(255,255,255,.92); box-shadow: 0 18px 44px rgba(11,18,32,.08); }
    .r4-flow .step{ display:flex; gap:14px; align-items:flex-start; padding:16px 16px; border-bottom:1px dashed rgba(11,18,32,.10); }
    .r4-flow .step:last-child{ border-bottom:0; }
    .r4-flow .badge{ width:34px; height:34px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-weight:800;
      background: linear-gradient(135deg, rgba(35,62,141,.14), rgba(63,170,71,.10));
      border:1px solid rgba(35,62,141,.12);
      color: rgba(11,18,32,.80);
      flex:0 0 auto;
    }

    .r4-mini-card{ border-radius:18px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); box-shadow: 0 12px 30px rgba(11,18,32,.06); }
    .r4-mini-card .hd{ display:flex; align-items:center; gap:10px; }
    .r4-mini-card i{ color: var(--r4-blue); }

    .r4-partners{ display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap: 10px; }
    @media (max-width: 992px){ .r4-partners{ grid-template-columns: repeat(3, minmax(0,1fr)); } }
    @media (max-width: 576px){ .r4-partners{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
    .r4-partners .p{ border-radius:16px; border:1px solid rgba(35,62,141,.10); background: rgba(255,255,255,.92); padding:12px; display:flex; align-items:center; justify-content:center; min-height:78px; box-shadow: 0 10px 26px rgba(11,18,32,.06); }
    .r4-partners img{ max-height:46px; width:auto; opacity:.95; }

    .r4-cta-strip{ border-radius: 22px; background:
      radial-gradient(900px 340px at 15% 0%, rgba(254,194,2,.18), rgba(254,194,2,0) 55%),
      radial-gradient(900px 340px at 85% 70%, rgba(0,172,239,.15), rgba(0,172,239,0) 60%),
      linear-gradient(135deg, rgba(35,62,141,.10), rgba(63,170,71,.08));
      border:1px solid rgba(35,62,141,.14);
      box-shadow: 0 18px 46px rgba(11,18,32,.08);
    }