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

.page-livepass .sp-breadcrumb { padding: 15px 0; background: #061a29; border-color: rgba(255,255,255,.1); }
.page-livepass .sp-breadcrumb .container { color: #9db6c3; }
.page-livepass .sp-breadcrumb a { color: #d2e9f1 !important; }
.page-livepass .sp-hero { position: relative; isolation: isolate; padding: clamp(58px,7vw,92px) 0 0; color: #fff; background: linear-gradient(132deg,#061b2b 0%,#0b3047 62%,#125443 100%); }
.page-livepass .sp-hero::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(circle at 82% 14%,rgba(105,207,140,.24),transparent 32%),linear-gradient(122deg,transparent 63%,rgba(255,255,255,.035) 63% 64%,transparent 64%); }
.page-livepass .sp-hero::after { content: ""; position: absolute; z-index: -1; width: 330px; aspect-ratio: 1; right: -150px; bottom: 25px; border: 1px solid rgba(105,207,140,.2); border-radius: 50%; box-shadow: 0 0 0 64px rgba(105,207,140,.035),0 0 0 128px rgba(105,207,140,.025); }
.page-livepass .sp-hero-grid { grid-template-columns: minmax(0,1.38fr) minmax(340px,.72fr); gap: clamp(42px,6vw,82px); }
.page-livepass .sp-hero h1 { color: #fff; }
.page-livepass .sp-hero .sp-eyebrow { color: #9cebb6; }
.livepass-guide .sp-lead { color: #d1e4ec; font-size: clamp(1.02rem,1.5vw,1.18rem); max-width: 660px; margin-top: 26px; }
.livepass-guide .sp-meta { color: #9eb6c1; margin-top: 25px; }
.page-livepass .sp-hero .sp-secondary { color: #d8ffe5 !important; }
.page-livepass .lp-plan { position: relative; overflow: hidden; border: 0; border-radius: 24px; background: #fbfffc; box-shadow: 0 32px 75px rgba(1,14,23,.36); transform: none; }
.page-livepass .lp-plan-head { border-radius: 24px 24px 0 0; color: #082719; background: var(--lp-accent); }
.page-livepass .lp-plan-head b { color: #082719; }
.page-livepass .lp-plan li { padding: 19px 0; }
.page-livepass .lp-plan li + li { border-color: #dcebe1; }
.page-livepass .lp-plan li > span { color: #148044; }
.page-livepass .lp-document { background: #e5f7eb; border-color: #c6e8d2; }
.page-livepass .sp-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-livepass .sp-trust span { text-align: center; padding-inline: 20px; }
.page-livepass .sp-trust span + span { border-left: 1px solid rgba(255,255,255,.16); }

.page-livepass .sp-quick { padding-top: clamp(64px,7vw,92px); background: linear-gradient(180deg,#e7f6eb,#f8fcf9); }
.livepass-guide .sp-answer { color: var(--lp-ink); font-size: clamp(1.2rem,2vw,1.5rem); }
.page-livepass .sp-three { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 42px; border-block: 1px solid var(--lp-line); border-radius: 0; overflow: visible; }
.page-livepass .sp-three > div { position: relative; padding: 34px 34px 36px 0; border: 0; }
.page-livepass .sp-three > div + div { border-left: 1px solid var(--lp-line); padding-left: 34px; }
.page-livepass .sp-three > div::before { content: ""; display: block; width: 44px; height: 4px; margin-bottom: 22px; background: var(--lp-accent); }

.page-livepass .sp-steps { position: relative; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 0; margin: 48px 0 28px; }
.page-livepass .sp-steps::before { content: ""; position: absolute; top: 29px; left: 4%; right: 5%; height: 2px; background: linear-gradient(90deg,var(--lp-accent),#b9e5c8); }
.page-livepass .sp-steps li { position: relative; border: 0; padding: 0 20px 0 0; }
.page-livepass .sp-steps li > span { position: relative; z-index: 1; display: grid; place-items: center; width: 60px; height: 60px; margin: 0 0 24px; color: #0b522b; background: #dff5e6; border: 6px solid #fff; border-radius: 50%; box-shadow: 0 0 0 1px #9bd5ad; font-size: 1rem; letter-spacing: .02em; }
.page-livepass .sp-steps h3 { max-width: 13ch; font-size: 1.03rem; }
.page-livepass .sp-steps p { padding-right: 8px; font-size: .87rem; }

.page-livepass .sp-soft { background: var(--lp-wash); }
.page-livepass .sp-callout { border-left: 4px solid var(--lp-accent); border-radius: 0 10px 10px 0; background: #e4f6ea; padding: 25px 29px; }
.page-livepass .lp-dates { gap: 0; border-block: 1px solid var(--lp-line); }
.page-livepass .lp-dates > div { border: 0; border-radius: 0; background: transparent; padding: 36px 38px 36px 0; }
.page-livepass .lp-dates > div + div { border-left: 1px solid var(--lp-line); padding-left: 38px; }
.page-livepass .lp-dates .sp-check { width: 46px; height: 46px; background: var(--lp-accent-soft); }

.page-livepass .sp-compare { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; border: 1px solid var(--lp-line); }
.page-livepass .sp-compare > div { min-height: 300px; padding: 42px; border: 0; border-radius: 0; }
.page-livepass .sp-positive { color: #fff; background: var(--lp-ink); }
.page-livepass .sp-positive h3 { color: #fff; }
.page-livepass .sp-positive li { color: #c5d9e2; }
.page-livepass .sp-positive .sp-label { color: #91e8ad; }
.page-livepass .sp-negative { background: #f5f8f6; border-left: 1px solid var(--lp-line) !important; }

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

.page-livepass .sp-split { grid-template-columns: .85fr 1.15fr; gap: clamp(42px,7vw,88px); }
.page-livepass .sp-two { gap: 0; border-block: 1px solid var(--lp-line); }
.page-livepass .sp-two > div { padding: 34px 36px 34px 0; }
.page-livepass .sp-two > div + div { border-left: 1px solid var(--lp-line); padding-left: 36px; }
#duvidas { color: #fff; background: var(--lp-ink); }
#duvidas h2 { color: #fff; }
#duvidas .sp-eyebrow { color: #92e8ae; }
.page-livepass .sp-faq-list { border-color: rgba(255,255,255,.2); }
.page-livepass .sp-faq-list details { border-color: rgba(255,255,255,.2); }
.page-livepass .sp-faq-list summary { color: #f6fbfd; padding: 22px 36px 22px 0; }
.page-livepass .sp-faq-list summary::after { color: #93e9af; border: 1px solid rgba(255,255,255,.25); width: 28px; height: 28px; top: 18px; display: grid; place-items: center; border-radius: 50%; }
.page-livepass .sp-faq-list p { color: #bed2da; }
.page-livepass .sp-related { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; border-top: 1px solid var(--lp-line); border-left: 1px solid var(--lp-line); }
.page-livepass .sp-related > a { min-height: 190px; border: 0; border-radius: 0; border-right: 1px solid var(--lp-line); border-bottom: 1px solid var(--lp-line); background: transparent; transition: background .2s ease,transform .2s ease; }
.page-livepass .sp-related > a:hover { background: #fff; transform: translateY(-2px); text-decoration: none; }
.page-livepass .sp-sources-section { padding: 36px 0 48px; background: #fff; }
.page-livepass .sp-final { padding-top: 24px; background: #fff; }
.page-livepass .sp-final-card { position: relative; overflow: hidden; border-radius: 4px; background: linear-gradient(125deg,#08243a,#17633f); }
.page-livepass .sp-final-card > * { position: relative; z-index: 1; }
.page-livepass .sp-final-card .sp-eyebrow { color: #9beab4; }
.page-livepass .sp-final-card h2 { color: #fff; }
.page-livepass .sp-final-card p { color: #d7e9e4; }
.page-livepass .sp-final-card .sp-final-validity { color: #fff; }
.page-livepass .sp-final-card .sp-secondary { color: #fff !important; }

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