/* =========================================================
   GCFC Website v50.1 — Sistema Editorial Premium
   Infrastructure layer. Content migration happens in v50.2.
   ========================================================= */

.article-page.editorial-v50 {
  --editorial-gold: #d4b780;
  --editorial-gold-soft: #b8955c;
  --editorial-surface: #080808;
  --editorial-surface-raised: #0d0d0d;
  --editorial-border: rgba(212, 183, 128, .20);
  --editorial-text: rgba(255,255,255,.82);
  --editorial-muted: rgba(255,255,255,.56);
  --editorial-reading: 760px;
  --editorial-radius: 18px;
}

.article-page.editorial-v50 main,
.article-page.editorial-v50 .article-section,
.article-page.editorial-v50 .article-content {
  background: var(--editorial-surface);
}

.article-page.editorial-v50 .article-content {
  container-type: inline-size;
}

.article-page.editorial-v50 .article-content > p,
.article-page.editorial-v50 .article-content section > p,
.article-page.editorial-v50 .article-content .article-custom-content > p {
  max-width: 68ch;
  font-size: clamp(18px, 1.25vw, 20px);
  line-height: 1.9;
  letter-spacing: -.008em;
  color: var(--editorial-text);
}

.article-page.editorial-v50 .article-content h2 {
  scroll-margin-top: 145px;
  margin-top: clamp(76px, 9vw, 112px);
  margin-bottom: 28px;
}

.article-page.editorial-v50 .article-content h3 {
  text-wrap: balance;
}

.article-page.editorial-v50 .article-rich-section,
.article-page.editorial-v50 .article-data-block,
.article-page.editorial-v50 .article-checklist,
.article-page.editorial-v50 .article-faq,
.article-page.editorial-v50 .article-sources,
.article-page.editorial-v50 .article-conclusion,
.article-page.editorial-v50 .article-cta {
  position: relative;
  isolation: isolate;
}

.article-page.editorial-v50 .article-rich-section + .article-rich-section::before,
.article-page.editorial-v50 .article-faq::before,
.article-page.editorial-v50 .article-conclusion::before {
  content: "";
  position: absolute;
  top: -38px;
  left: 0;
  width: min(120px, 20%);
  height: 1px;
  background: linear-gradient(90deg, rgba(212,183,128,.48), transparent);
}

/* Shared premium components */
.gcfc-editorial-card,
.article-page.editorial-v50 .article-highlight,
.article-page.editorial-v50 .article-quote {
  position: relative;
  overflow: hidden;
  margin: 48px 0;
  padding: clamp(26px, 4vw, 42px);
  border: 1px solid var(--editorial-border);
  border-radius: var(--editorial-radius);
  background:
    radial-gradient(circle at 100% 0, rgba(212,183,128,.10), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.035), rgba(255,255,255,.008)),
    var(--editorial-surface-raised);
  box-shadow: 0 24px 70px rgba(0,0,0,.24);
}

.gcfc-editorial-card::before,
.article-page.editorial-v50 .article-highlight::before,
.article-page.editorial-v50 .article-quote::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(180deg, transparent, var(--editorial-gold), transparent);
}

.gcfc-editorial-card__label,
.article-page.editorial-v50 .article-section-eyebrow {
  margin-bottom: 14px;
  color: var(--editorial-gold);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.gcfc-editorial-card p,
.article-page.editorial-v50 .article-highlight p,
.article-page.editorial-v50 .article-quote p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: clamp(18px, 1.4vw, 22px);
  line-height: 1.72;
}

.article-page.editorial-v50 .article-data-grid,
.article-page.editorial-v50 .article-principles,
.article-page.editorial-v50 .article-checklist-grid,
.gcfc-editorial-checklist__grid {
  gap: 16px;
}

.article-page.editorial-v50 .article-data-card,
.article-page.editorial-v50 .article-principle,
.article-page.editorial-v50 .article-check-item,
.gcfc-editorial-checklist__item {
  border-radius: 14px;
}

/* Checklist executivo — leitura rápida, ícone alinhado e ritmo editorial. */
.gcfc-editorial-checklist {
  margin: 44px 0 58px;
}

.gcfc-editorial-checklist > h3 {
  margin: 0 0 24px;
  color: #f5f4f0;
  font-family: "Manrope", sans-serif;
  font-size: clamp(24px, 2.2vw, 31px);
  font-weight: 500;
  letter-spacing: -.035em;
}

.gcfc-editorial-checklist__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.gcfc-editorial-checklist__item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  min-height: 112px;
  padding: 20px;
  border: 1px solid rgba(212,183,128,.18);
  background: linear-gradient(145deg, rgba(212,183,128,.055), rgba(255,255,255,.012)), #090909;
}

.gcfc-editorial-checklist__item > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(226,189,120,.46);
  border-radius: 50%;
  color: var(--editorial-gold);
  background: rgba(212,183,128,.06);
}

.gcfc-editorial-checklist__item svg {
  display: block;
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gcfc-editorial-checklist__item p {
  margin: 2px 0 0!important;
  color: rgba(255,255,255,.78)!important;
  font-size: 15px!important;
  line-height: 1.58!important;
}

/* Proteção contra regras SVG e de parágrafo herdadas do tema global. */
.article-page.editorial-v50 .gcfc-editorial-checklist__item > span > svg {
  display: block!important;
  width: 17px!important;
  height: 17px!important;
  min-width: 17px!important;
  min-height: 17px!important;
  max-width: 17px!important;
  max-height: 17px!important;
}
.article-page.editorial-v50 .gcfc-editorial-checklist__item > p {
  margin: 2px 0 0!important;
}

@media (max-width: 760px) {
  .gcfc-editorial-checklist__grid { grid-template-columns: 1fr; }
  .gcfc-editorial-checklist__item { min-height: 0; padding: 18px; }
}

/* Smart navigation */
.article-page.editorial-v50 .article-menu a {
  position: relative;
  transition: color .22s ease, transform .22s ease;
}
.article-page.editorial-v50 .article-menu a::before {
  content: "";
  position: absolute;
  left: -14px;
  top: .65em;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--editorial-gold);
  opacity: 0;
  transform: scale(.4);
  transition: .22s ease;
}
.article-page.editorial-v50 .article-menu a.is-active {
  color: #fff;
  transform: translateX(4px);
}
.article-page.editorial-v50 .article-menu a.is-active::before {
  opacity: 1;
  transform: scale(1);
}

/* Mobile TOC */
.editorial-mobile-tools {
  display: none;
}
.editorial-mobile-index {
  position: fixed;
  inset: auto 16px 18px 16px;
  z-index: 1200;
  max-height: min(70vh, 560px);
  overflow: auto;
  padding: 18px;
  border: 1px solid var(--editorial-border);
  border-radius: 16px;
  background: rgba(8,8,8,.97);
  box-shadow: 0 24px 80px rgba(0,0,0,.56);
  backdrop-filter: blur(18px);
}
.editorial-mobile-index[hidden] { display: none; }
.editorial-mobile-index a {
  display: block;
  padding: 12px 4px;
  border-bottom: 1px solid rgba(255,255,255,.07);
  color: rgba(255,255,255,.72);
  font-size: 14px;
  line-height: 1.4;
}

/* Back to top */
.editorial-back-top {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 1100;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(212,183,128,.28);
  border-radius: 50%;
  background: rgba(8,8,8,.9);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: .25s ease;
  cursor: pointer;
}
.editorial-back-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.editorial-back-top:hover {
  background: var(--editorial-gold);
  color: #080808;
}

/* Reading status */
.editorial-reading-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,.46);
  font-size: 12px;
}
.editorial-reading-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--editorial-gold);
  box-shadow: 0 0 10px rgba(212,183,128,.55);
}

@media (max-width: 980px) {
  .article-page.editorial-v50 .article-layout {
    grid-template-columns: minmax(0, var(--editorial-reading)) !important;
  }
  .article-page.editorial-v50 .article-share,
  .article-page.editorial-v50 .article-side-column {
    display: none !important;
  }
  .editorial-mobile-tools {
    position: sticky;
    top: 78px;
    z-index: 850;
    display: flex;
    justify-content: space-between;
    gap: 10px;
    width: min(calc(100% - 32px), var(--editorial-reading));
    margin: 0 auto 24px;
    padding: 10px;
    border: 1px solid rgba(212,183,128,.16);
    border-radius: 14px;
    background: rgba(8,8,8,.92);
    backdrop-filter: blur(18px);
  }
  .editorial-mobile-tools button {
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 999px;
    background: rgba(255,255,255,.025);
    color: #fff;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
  }
}

@media (max-width: 700px) {
  .article-page.editorial-v50 .article-content > p,
  .article-page.editorial-v50 .article-content section > p,
  .article-page.editorial-v50 .article-content .article-custom-content > p {
    font-size: 17px;
    line-height: 1.82;
  }
  .article-page.editorial-v50 .article-content h2 {
    margin-top: 68px;
  }
  .article-page.editorial-v50 .article-rich-section + .article-rich-section::before,
  .article-page.editorial-v50 .article-faq::before,
  .article-page.editorial-v50 .article-conclusion::before {
    top: -30px;
  }
  .editorial-back-top {
    right: 16px;
    bottom: 84px;
    width: 44px;
    height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .article-page.editorial-v50 *,
  .article-page.editorial-v50 *::before,
  .article-page.editorial-v50 *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
