/* =====================================================================
   Regulamento do concurso cultural — formato e comportamento de
   l2x.tech/privacy-policy: layout fluido (sem a escala do artboard da LP),
   tamanhos de texto fixos, coluna de leitura de 927px centralizada.
   ===================================================================== */

.rg-page { background: #f9f9f9; }

/* ---- cabeçalho ---- */
.rg-header { background: #233c79; color: var(--white); }
.rg-bar {
  position: relative;
  display: flex; align-items: center; justify-content: space-between;
  padding: 10px 30px 0;
}
.rg-logo img { width: 126px; height: auto; }
.rg-header .hero-nav { position: static; gap: 20px; }
.rg-header .hero-nav a, .rg-header .nav-dd-btn { font: 500 16px/20px "Circular", sans-serif; }
.rg-header .nav-in svg { width: 20px; height: 20px; }
.rg-burger { display: none; }

.rg-wrap { max-width: 967px; margin: 0 auto; padding: 0 20px; }
.rg-h1 {
  padding: 18px 0 35px;
  font: 700 clamp(36px, 1.3vw + 31px, 50px)/1 "Circular", sans-serif;
  color: var(--cyan-title);
}

/* ---- texto ---- */
.rg-body { padding: 46px 0 60px; }
.rg-body, .rg-body p, .rg-body li {
  font: 500 16px/20px "Circular", sans-serif;
  color: #040404;
}
.rg-body p { margin: 0 0 20px; }
.rg-body strong { font-weight: 700; }
.rg-body a { color: var(--navy); }

.rg-sec h2 {
  margin: 0 0 24px;
  font: 700 16px/22px "Circular", sans-serif;
  color: var(--navy);
}
.rg-n { font: 700 clamp(19.8px, .2vw + 19px, 22px)/22px "Circular", sans-serif; color: #040404; }

.rg-body ol { margin: 0 0 20px; padding-left: 40px; }
.rg-body ol[type="a"] { list-style: lower-alpha; }
.rg-body li { padding-left: 6px; }
.rg-body li::marker { font-weight: 700; }

/* ---- celular: menu hambúrguer, como no l2x.tech ---- */
@media (max-width: 900px) {
  .rg-bar { padding: 22px 20px 12px; }
  .rg-burger {
    display: inline-flex; flex-direction: column; justify-content: center; gap: 4px;
    width: 32px; height: 32px; padding: 6px; border: 0; background: none; cursor: pointer;
  }
  .rg-burger span { display: block; height: 3px; border-radius: 2px; background: var(--white); transition: transform .15s, opacity .15s; }
  .nav-open .rg-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .nav-open .rg-burger span:nth-child(2) { opacity: 0; }
  .nav-open .rg-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .rg-header .hero-nav {
    display: none;
    position: absolute; top: 100%; left: 0; right: 0; z-index: 10;
    flex-direction: column; align-items: stretch; gap: 0;
    margin: 0; padding: 8px 0 14px;
    background: #233c79; box-shadow: 0 14px 24px rgba(10, 25, 60, .25);
  }
  .rg-header.nav-open .hero-nav { display: flex; }
  .rg-header .hero-nav > a, .rg-header .nav-dd-btn { display: flex; width: 100%; padding: 12px 20px; font-size: 16px; }
  .rg-header .nav-dd-menu {
    position: static; display: none; min-width: 0; padding: 0 0 6px;
    visibility: visible; opacity: 1; transform: none;
  }
  .rg-header .nav-dd-menu::before { display: none; }
  .rg-header .nav-dd.open .nav-dd-menu { display: block; }
  .rg-header .nav-dd:hover .nav-dd-menu { display: none; }
  .rg-header .nav-dd.open:hover .nav-dd-menu { display: block; }
  .rg-header .nav-dd-menu a { padding: 9px 36px; color: rgba(255, 255, 255, .85) !important; font-size: 15px; }
  .rg-header .nav-dd-menu a:hover { background: rgba(255, 255, 255, .08); }

  .rg-h1 { padding: 50px 0 60px; }
  .rg-body { padding-top: 40px; }
}
