/* Camada de redesign editorial — exclusiva do guia Ingresse. */
.page-ingresse {
  --ig-ink: #071f31;
  --ig-deep: #0a334d;
  --ig-text: #294657;
  --ig-muted: #5e7480;
  --ig-line: #d4e1e7;
  --ig-wash: #f3f7f8;
  --ig-accent: #ed9b63;
  --ig-accent-soft: #fff1e6;
  --ig-cyan: #56c9df;
  --ig-green: #168438;
  background: #fff;
}
.ingresse-guide { overflow: clip; color: var(--ig-text); background: #fff; }
.ingresse-guide .container { width: min(1180px, calc(100% - 48px)); }
.ingresse-guide h1, .ingresse-guide h2, .ingresse-guide h3 { color: var(--ig-ink); letter-spacing: -.038em; text-wrap: balance; }
.ingresse-guide h1 { max-width: 860px; font-size: clamp(2.7rem, 5vw, 4.6rem); line-height: 1; }
.ingresse-guide h2 { max-width: 850px; font-size: clamp(2rem, 3.3vw, 3.1rem); line-height: 1.08; }
.ingresse-guide p { color: var(--ig-muted); line-height: 1.72; max-width: 76ch; }
.ingresse-guide .button { min-height: 54px; border: 0; background: var(--ig-green); box-shadow: 0 12px 30px rgba(3,28,43,.2); transition: transform .2s ease, background .2s ease; }
.ingresse-guide .button:hover { transform: translateY(-2px); background: #117332; }
.page-ingresse .ig-section { position: relative; padding: clamp(68px, 8vw, 110px) 0; }
.page-ingresse .ig-heading { max-width: 830px; margin-bottom: 34px; }
.page-ingresse .ig-eyebrow, .page-ingresse .ig-label { color: #af5c2f; letter-spacing: .14em; }

.page-ingresse .ig-breadcrumb { padding: 15px 0; background: #061a29; border-color: rgba(255,255,255,.1); }
.page-ingresse .ig-breadcrumb .container { color: #9db6c3; }
.page-ingresse .ig-breadcrumb a { color: #d2e9f1 !important; }

.page-ingresse .ig-hero { position: relative; isolation: isolate; padding: clamp(58px,7vw,92px) 0 0; color: #fff; background: linear-gradient(132deg,#061b2b 0%,#0a3048 62%,#16465b 100%); }
.page-ingresse .ig-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 82% 14%,rgba(237,155,99,.23),transparent 32%), linear-gradient(122deg,transparent 63%,rgba(255,255,255,.035) 63% 64%,transparent 64%); }
.page-ingresse .ig-hero::after { content: ""; position: absolute; z-index: -1; width: 330px; aspect-ratio: 1; right: -150px; bottom: 25px; border: 1px solid rgba(237,155,99,.19); border-radius: 50%; box-shadow: 0 0 0 64px rgba(237,155,99,.03),0 0 0 128px rgba(237,155,99,.02); }
.page-ingresse .ig-hero-grid { grid-template-columns: minmax(0,1.4fr) minmax(330px,.72fr); gap: clamp(42px,6vw,82px); }
.page-ingresse .ig-hero h1 { color: #fff; }
.page-ingresse .ig-hero .ig-eyebrow { color: #f6bd95; }
.ingresse-guide .ig-lead { color: #d1e4ec; font-size: clamp(1.02rem,1.5vw,1.18rem); max-width: 660px; margin-top: 26px; }
.ingresse-guide .ig-meta { color: #9eb6c1; margin-top: 25px; }
.page-ingresse .ig-hero .ig-text-link { color: #ffe0ca !important; display: inline-block; margin-top: 15px; }
.page-ingresse .ig-ticket { overflow: hidden; margin-bottom: 45px; color: var(--ig-ink); background: #fffdfb; border-radius: 24px; box-shadow: 0 32px 75px rgba(1,14,23,.36); transform: none; }
.page-ingresse .ig-ticket-top { color: #28180f; background: var(--ig-accent); border-radius: 24px 24px 0 0; border: 0; }
.page-ingresse .ig-ticket-top b { color: #28180f; }
.page-ingresse .ig-ticket-body small { color: #7b6558; }
.page-ingresse .ig-ticket-body strong { color: var(--ig-ink); }
.ingresse-guide .ig-ticket-body p { color: #617681; }
.page-ingresse .ig-ticket-rule { border-color: #cdbbad; }
.page-ingresse .ig-ticket-rule::before, .page-ingresse .ig-ticket-rule::after { background: #0b344d; }
.page-ingresse .ig-ticket-end { color: #3d2415; background: #ffeadb; border-radius: 0 0 24px 24px; }
.page-ingresse .ig-ticket-caption { display: none; }
.page-ingresse .ig-trust { display: grid; grid-template-columns: repeat(3,1fr); gap: 0; margin-top: 56px; padding: 24px 0; color: #bed3dc; border-top: 1px solid rgba(255,255,255,.14); }
.page-ingresse .ig-trust span { text-align: center; padding-inline: 20px; }
.page-ingresse .ig-trust span + span { border-left: 1px solid rgba(255,255,255,.16); }

.page-ingresse .ig-quick { padding-top: clamp(64px,7vw,92px); background: linear-gradient(180deg,var(--ig-accent-soft),#fffaf6); }
.ingresse-guide .ig-answer { color: var(--ig-ink); font-size: clamp(1.2rem,2vw,1.5rem); }
.page-ingresse .ig-callout { border-left: 4px solid var(--ig-accent); border-radius: 0 10px 10px 0; background: #fff6ef; padding: 25px 29px; }

.page-ingresse .ig-steps { position: relative; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; margin: 48px 0 28px; }
.page-ingresse .ig-steps::before { content: ""; position: absolute; top: 29px; left: 6%; right: 7%; height: 2px; background: linear-gradient(90deg,var(--ig-accent),#f4ceb4); }
.page-ingresse .ig-steps li { position: relative; border: 0; padding: 0 30px 0 0; }
.page-ingresse .ig-steps li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 60px; height: 60px; margin: 0 0 24px; color: #492717; background: #ffe7d6; border: 6px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #efb991; font-size: 1rem; letter-spacing: .02em; }
.page-ingresse .ig-steps h3 { max-width: 15ch; }
.page-ingresse .ig-steps p { padding-right: 10px; }

#documento { background: var(--ig-wash); }
.page-ingresse .ig-three { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 42px; border-block: 1px solid var(--ig-line); border-radius: 0; overflow: visible; }
.page-ingresse .ig-three > div { position: relative; padding: 34px 34px 36px 0; border: 0; }
.page-ingresse .ig-three > div + div { border-left: 1px solid var(--ig-line); padding-left: 34px; }
.page-ingresse .ig-three > div::before { content: ""; display: block; width: 44px; height: 4px; margin-bottom: 22px; background: var(--ig-accent); }

.page-ingresse .ig-soft { background: #eef4f6; }
.page-ingresse .ig-compare { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; border: 1px solid var(--ig-line); }
.page-ingresse .ig-compare > div { min-height: 280px; padding: 42px; border: 0; border-radius: 0; }
.page-ingresse .ig-positive { color: #fff; background: var(--ig-ink); }
.page-ingresse .ig-positive h3 { color: #fff; }
.page-ingresse .ig-positive p { color: #c5d9e2; }
.page-ingresse .ig-positive .ig-label { color: #f3b78f; }
.page-ingresse .ig-negative { background: #fff; border-left: 1px solid var(--ig-line) !important; }

.page-ingresse .ig-conversion { isolation: isolate; overflow: hidden; color: #fff; background: linear-gradient(135deg,#071f31,#0c4058); }
.page-ingresse .ig-conversion::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 20% 45%,rgba(237,155,99,.2),transparent 31%),linear-gradient(110deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size: auto,42px 42px; }
.page-ingresse .ig-conversion-grid { grid-template-columns: minmax(320px,.9fr) minmax(0,1.25fr); gap: clamp(45px,7vw,90px); }
.page-ingresse .ig-product { min-height: 420px; display: grid; place-items: center; }
.page-ingresse .ig-product::before { content: ""; position: absolute; width: 90%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle,rgba(237,155,99,.24),transparent 66%); }
.page-ingresse .ig-product img { position: relative; max-width: 390px; filter: drop-shadow(0 28px 30px rgba(0,0,0,.3)); transform: rotate(2deg); }
.page-ingresse .ig-product > span { display: none; }
.page-ingresse .ig-conversion h2 { color: #fff; }
.page-ingresse .ig-conversion .ig-eyebrow { color: #f4bb93; }
.page-ingresse .ig-conversion p { color: #c7dbe3; }
.page-ingresse .ig-price-pair { gap: 1px; margin: 30px 0; background: rgba(255,255,255,.18); border: 1px solid rgba(255,255,255,.18); }
.page-ingresse .ig-price-pair > div { border: 0; border-radius: 0; background: rgba(255,255,255,.07); }
.page-ingresse .ig-price-pair small { color: #f3c2a1; }
.page-ingresse .ig-price-pair strong { color: #fff; }
.page-ingresse .ig-price-pair span, .page-ingresse .ig-features { color: #d2e2e8; }
.page-ingresse .ig-validity { border-color: rgba(255,255,255,.18); }
.page-ingresse .ig-validity > b { color: #3b2112; background: var(--ig-accent); }
.page-ingresse .ig-conversion .ig-secondary, .page-ingresse .ig-conversion .ig-text-link { color: #ffe0ca !important; }

.page-ingresse .ig-split { grid-template-columns: .85fr 1.15fr; gap: clamp(42px,7vw,88px); }
.page-ingresse .ig-two { gap: 0; border-block: 1px solid var(--ig-line); }
.page-ingresse .ig-two > div { padding: 34px 36px 34px 0; }
.page-ingresse .ig-two > div + div { border-left: 1px solid var(--ig-line); padding-left: 36px; }
#duvidas { color: #fff; background: var(--ig-ink); }
#duvidas h2 { color: #fff; }
#duvidas .ig-eyebrow { color: #f2b38a; }
.page-ingresse .ig-faq-list { max-width: 900px; margin-left: auto; border-color: rgba(255,255,255,.2); }
.page-ingresse .ig-faq-list details { border-color: rgba(255,255,255,.2); }
.page-ingresse .ig-faq-list summary { color: #f6fbfd; padding: 22px 36px 22px 0; }
.page-ingresse .ig-faq-list summary::after { color: #f4b88f; border: 1px solid rgba(255,255,255,.25); width: 28px; height: 28px; top: 18px; display: grid; place-items: center; border-radius: 50%; }
.page-ingresse .ig-faq-list p { color: #bed2da; }

.page-ingresse .ig-related { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; border-top: 1px solid var(--ig-line); border-left: 1px solid var(--ig-line); }
.page-ingresse .ig-related > a { min-height: 190px; border: 0; border-radius: 0; border-right: 1px solid var(--ig-line); border-bottom: 1px solid var(--ig-line); background: transparent; transition: background .2s ease,transform .2s ease; }
.page-ingresse .ig-related > a:hover { background: #fff; transform: translateY(-2px); text-decoration: none; }
.page-ingresse .ig-sources-section { padding: 36px 0 48px; background: #fff; }
.page-ingresse .ig-final { padding-top: 24px; background: #fff; }
.page-ingresse .ig-final-card { position: relative; overflow: hidden; border-radius: 4px; background: linear-gradient(125deg,#08243a,#80502f); }
.page-ingresse .ig-final-card > * { position: relative; z-index: 1; }
.page-ingresse .ig-final-card .ig-eyebrow { color: #f4bd98; }
.page-ingresse .ig-final-card h2 { color: #fff; }
.page-ingresse .ig-final-card p { color: #d7e6ec; }
.page-ingresse .ig-final-card .ig-final-validity { color: #fff; }
.page-ingresse .ig-final-card .ig-secondary { color: #fff !important; }

@media (max-width: 1040px) {
  .page-ingresse .ig-hero-grid { grid-template-columns: minmax(0,1.3fr) minmax(300px,.7fr); gap: 36px; }
  .page-ingresse .ig-related { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .page-ingresse .ig-hero-grid, .page-ingresse .ig-conversion-grid, .page-ingresse .ig-split, .page-ingresse .ig-final-card { grid-template-columns: 1fr; }
  .page-ingresse .ig-ticket { max-width: 460px; margin: 18px auto 40px; transform: none; }
  .page-ingresse .ig-steps { grid-template-columns: 1fr; }
  .page-ingresse .ig-steps::before { top: 0; bottom: 0; left: 29px; right: auto; width: 2px; height: auto; }
  .page-ingresse .ig-steps li { display: grid; grid-template-columns: 60px 1fr; gap: 22px; padding: 0 0 28px; }
  .page-ingresse .ig-steps li > span { margin: 0; }
  .page-ingresse .ig-steps h3 { max-width: none; padding-top: 4px; }
  .page-ingresse .ig-product { min-height: 350px; }
}
@media (max-width: 600px) {
  .ingresse-guide .container { width: calc(100% - 36px); }
  .ingresse-guide h1 { font-size: clamp(2.25rem,11vw,3.05rem); }
  .ingresse-guide h2 { font-size: clamp(1.78rem,8vw,2.25rem); }
  .page-ingresse .ig-hero { padding-top: 48px; }
  .page-ingresse .ig-hero-grid { text-align: left; gap: 0; }
  .page-ingresse .ig-hero .ig-ticket { display: none; }
  .page-ingresse .ig-hero .ig-actions { align-items: stretch; }
  .page-ingresse .ig-hero .button { width: 100%; font-size: .86rem; }
  .page-ingresse .ig-trust { grid-template-columns: 1fr; padding-block: 12px; margin-top: 30px; }
  .page-ingresse .ig-trust span { text-align: left; padding: 10px 0; }
  .page-ingresse .ig-trust span + span { border-left: 0; border-top: 1px solid rgba(255,255,255,.13); }
  .page-ingresse .ig-section { padding: 58px 0; }
  .page-ingresse .ig-three, .page-ingresse .ig-compare, .page-ingresse .ig-two { grid-template-columns: 1fr; }
  .page-ingresse .ig-three > div, .page-ingresse .ig-three > div + div { border-left: 0; border-top: 1px solid var(--ig-line); padding: 25px 0; }
  .page-ingresse .ig-three > div:first-child { border-top: 0; }
  .page-ingresse .ig-compare > div { min-height: 0; padding: 28px 24px; }
  .page-ingresse .ig-negative { border-left: 0 !important; border-top: 1px solid var(--ig-line) !important; }
  .page-ingresse .ig-two > div, .page-ingresse .ig-two > div + div { border-left: 0; padding: 26px 0; }
  .page-ingresse .ig-two > div + div { border-top: 1px solid var(--ig-line); }
  .page-ingresse .ig-price-pair > div { padding: 16px 13px; }
  .page-ingresse .ig-features { grid-template-columns: 1fr; }
  .page-ingresse .ig-related { grid-template-columns: 1fr; }
  .page-ingresse .ig-related > a { min-height: 150px; }
  .page-ingresse .ig-final { padding-top: 0; padding-bottom: 82px; }
  .page-ingresse .ig-final-card { padding: 29px 23px; }
  .page-ingresse .ig-actions .button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .page-ingresse * { transition: none !important; scroll-behavior: auto; }
}
