@font-face {
  font-family: "Kenyan Coffee";
  src: url("assets/kenyan-coffee-regular.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root {
  --black: #080908;
  --black-soft: #0e100f;
  --panel: #141614;
  --gold: #b5121b;
  --gold-light: #e13b43;
  --gold-dark: #56080d;
  --white: #f4f1e9;
  --muted: #aaa99f;
  --line: rgba(204, 35, 45, 0.24);
  --display: "Kenyan Coffee", "Arial Narrow", sans-serif;
  --body: "DM Sans", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--black); color: var(--white); font-family: var(--body); font-synthesis: none; overflow-x: hidden; }
body.modal-open { overflow: hidden; }
main > section:not(.hero) { content-visibility: auto; contain-intrinsic-size: auto 900px; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.container { width: min(1160px, calc(100% - 48px)); margin: 0 auto; }
.section-pad { padding: 130px 0; position: relative; }

.topbar { position: fixed; z-index: 15; top: 0; left: 0; right: 0; height: 76px; padding: 0 4vw; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(6,7,6,.72); backdrop-filter: blur(18px); }
.topbar p { margin: 0; color: #d0cec4; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.topbar p strong { color: var(--gold-light); }
.brand { display: inline-flex; align-items: center; gap: 10px; font-family: var(--display); line-height: .8; }
.brand-mark { width: 36px; height: 36px; display: grid; place-items: center; transform: skew(-7deg); border: 1px solid var(--gold); color: var(--gold); font-size: 22px; font-weight: 900; }
.brand b { display: block; letter-spacing: .06em; font-size: 22px; }
.brand small { display: block; margin-top: 7px; color: var(--gold); letter-spacing: .35em; font-size: 8px; }
.top-cta { color: var(--gold-light); font-family: var(--display); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; border-bottom: 1px solid var(--gold); padding: 8px 0; }

.hero { min-height: 100svh; position: relative; display: flex; align-items: center; isolation: isolate; overflow: hidden; }
.hero-bg { position: absolute; inset: 0; z-index: -2; background: url("assets/hero-tatico.webp") 58% center / cover no-repeat; transform: scale(1.02); }
.hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(circle at 73% 42%, rgba(181,18,27,.18), transparent 35%), linear-gradient(90deg, rgba(5,6,5,.99) 0%, rgba(5,6,5,.86) 37%, rgba(5,6,5,.21) 73%, rgba(5,6,5,.38) 100%), linear-gradient(0deg, rgba(5,6,5,.8), transparent 34%); }
.hero-content { padding-top: 105px; }
h1, h2, h3, h4, p { text-wrap: pretty; }
h1 { max-width: 860px; margin: 0; font-family: var(--display); font-size: clamp(58px, 7.7vw, 118px); font-weight: 400; line-height: .92; letter-spacing: .012em; text-transform: uppercase; }
h1 span { color: var(--gold-light); }
.hero-lead { max-width: 650px; margin: 32px 0 0; color: #c9c6bb; font-size: 17px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 34px; margin-top: 38px; }
.button { position: relative; isolation: isolate; overflow: hidden; border: 1px solid rgba(255,118,124,.38); border-radius: 6px; padding: 18px 28px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; transition: transform .28s ease, box-shadow .28s ease, filter .28s ease; }
.button::before { content: ""; position: absolute; z-index: -1; width: 42%; height: 240%; left: -70%; top: -70%; transform: rotate(20deg); background: linear-gradient(90deg, transparent, rgba(255,225,225,.65), transparent); transition: left .55s ease; }
.button::after { content: ""; position: absolute; inset: 1px; z-index: -2; border: 1px solid rgba(15,12,5,.22); border-radius: 4px; pointer-events: none; }
.button:hover { transform: translateY(-3px) scale(1.01); filter: saturate(1.12); }
.button:hover::before { left: 135%; }
.button:active { transform: translateY(0) scale(.99); }
.button-gold { color: #fff5f5; background: linear-gradient(115deg, #51070c 0%, #a70f18 28%, #e13b43 49%, #7a0910 70%, #c51c27 100%); background-size: 180% 180%; box-shadow: 0 12px 38px rgba(130,10,16,.34), inset 0 1px 0 rgba(255,220,220,.42); }
.button-gold:hover { background-position: 100% 50%; box-shadow: 0 18px 54px rgba(175,15,24,.42), 0 0 0 1px rgba(226,68,77,.24); }
.text-link { font-size: 14px; font-weight: 700; }
.text-link span { color: var(--gold); margin-left: 8px; }
.hero-facts { display: flex; gap: 54px; margin-top: 56px; }
.hero-facts div { display: flex; flex-direction: column; padding-left: 14px; border-left: 1px solid var(--gold); }
.hero-facts strong { font-family: var(--display); color: var(--gold-light); font-size: 28px; text-transform: uppercase; }
.hero-facts span { margin-top: 4px; color: #96968e; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.vertical-word { position: absolute; right: 26px; top: 50%; margin: 0; color: rgba(255,255,255,.12); font-family: var(--display); font-size: 12px; letter-spacing: .5em; writing-mode: vertical-rl; transform: translateY(-50%); }
.scroll-cue { position: absolute; bottom: 28px; right: 8vw; display: flex; gap: 10px; align-items: center; color: #96968e; font-size: 10px; letter-spacing: .18em; text-transform: uppercase; }
.scroll-cue span { width: 38px; height: 1px; background: var(--gold); }

.manifesto { overflow: hidden; background: radial-gradient(circle at 80% 10%, rgba(204,35,45,.1), transparent 35%), var(--black); }
.manifesto-layout { display: grid; grid-template-columns: 80px 1.35fr .65fr; gap: 50px; align-items: start; }
.section-index { color: rgba(204,35,45,.45); font-family: var(--display); font-size: 24px; letter-spacing: .08em; }
h2 { margin: 0; font-family: var(--display); font-size: clamp(50px, 6.4vw, 88px); font-weight: 400; line-height: .96; letter-spacing: .012em; text-transform: uppercase; }
.manifesto-copy { padding-top: 54px; }
.manifesto-copy p { margin: 0 0 26px; color: var(--muted); line-height: 1.7; }
.manifesto-copy .gold-copy { color: var(--gold-light); }
.marquee { display: flex; width: max-content; margin-top: 100px; color: rgba(181,18,27,.15); font-family: var(--display); font-size: 110px; font-weight: 900; white-space: nowrap; animation: marquee 30s linear infinite; }
.marquee span { padding-right: .15em; }
@keyframes marquee { to { transform: translateX(-50%); } }

.operation { background: #0b0c0b; }
.section-heading { display: grid; grid-template-columns: 80px minmax(0, 800px); gap: 50px; margin-bottom: 105px; }
.section-heading > div:last-child > p:last-child { max-width: 620px; color: var(--muted); line-height: 1.7; }
.deliverable-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(48px, 7vw, 100px); align-items: center; padding: 95px 0; border-top: 1px solid var(--line); }
.deliverable-row:last-child { padding-bottom: 10px; }
.deliverable-row.media-right .deliverable-media { order: 2; }
.deliverable-row.media-right .deliverable-copy { order: 1; }
.deliverable-media { min-width: 0; margin: 0; position: relative; isolation: isolate; }
.deliverable-media::before { content: ""; position: absolute; z-index: -1; inset: -12px 12px 12px -12px; border: 1px solid rgba(204,35,45,.2); border-radius: 10px; opacity: .55; transform: translate(0, 0); transition: border-color .35s ease, opacity .35s ease, transform .35s ease; pointer-events: none; }
.deliverable-media::after { content: ""; position: absolute; z-index: 4; width: 38px; height: 38px; right: -1px; bottom: 28px; border-right: 2px solid rgba(204,35,45,.58); border-bottom: 2px solid rgba(204,35,45,.58); opacity: .7; transition: width .35s ease, height .35s ease, border-color .35s ease; pointer-events: none; }
.deliverable-media > img, .deliverable-media figure > img { width: 100%; display: block; border: 1px solid rgba(204,35,45,.2); border-radius: 6px; box-shadow: 22px 26px 0 rgba(204,35,45,.035); transition: transform .45s cubic-bezier(.2,.7,.2,1), border-color .35s ease, box-shadow .45s ease, filter .35s ease; }
.deliverable-media figcaption, .deliverable-media > figcaption { display: block; margin-top: 12px; color: #7f8179; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
@media (hover: hover) and (pointer: fine) {
  .deliverable-media:hover::before { border-color: rgba(204,35,45,.52); opacity: 1; transform: translate(-4px, -4px); }
  .deliverable-media:hover::after { width: 58px; height: 58px; border-color: rgba(255,118,124,.9); }
  .deliverable-media:hover > img, .deliverable-media:hover figure > img { transform: translateY(-5px) scale(1.012); border-color: rgba(204,35,45,.58); box-shadow: 0 24px 54px rgba(0,0,0,.42), 12px 14px 0 rgba(204,35,45,.07); filter: saturate(.92) contrast(1.04); }
}
.deliverable-copy { position: relative; max-width: 520px; }
.deliverable-number { position: absolute; right: 0; top: -44px; color: rgba(204,35,45,.11); font-family: var(--display); font-size: 128px; line-height: 1; }
.deliverable-copy h3 { margin: 0 0 24px; font-family: var(--display); font-size: clamp(44px, 4.4vw, 66px); font-weight: 400; line-height: .98; letter-spacing: .015em; text-transform: uppercase; }
.media-pair { min-height: 490px; }
.media-pair figure { position: absolute; margin: 0; }
.media-pair figure:first-child { width: 47%; left: 0; top: 0; z-index: 2; transform: rotate(-2deg); }
.media-pair figure:last-child { width: 82%; right: 0; bottom: 0; transform: rotate(1deg); }
.portrait-media { width: 76%; margin-left: auto; margin-right: auto; transform: rotate(-1.5deg); }
.report-media { min-height: 570px; }
.report-media figure { margin: 0; position: absolute; overflow: hidden; background: #eeece5; }
.report-media figure:first-child { width: 78%; height: 520px; right: 0; top: 0; }
.report-media figure:first-child img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.report-media figure:nth-child(2) { width: 39%; height: 330px; left: 0; bottom: 0; transform: rotate(-2deg); z-index: 2; }
.report-media figure:nth-child(2) img { width: 100%; height: 100%; object-fit: cover; object-position: top; }
.report-media > figcaption { position: absolute; bottom: -2px; right: 0; }
.mindset-media { transform: rotate(1deg); }
.fronts { margin-top: 28px; padding-top: 18px; border-top: 1px solid rgba(204,35,45,.22); }
.fronts summary { color: var(--gold-light); cursor: pointer; font-family: var(--display); font-size: 18px; letter-spacing: .04em; text-transform: uppercase; }
.fronts p { color: var(--muted); font-size: 12px; line-height: 1.65; }
.mission { position: relative; display: grid; grid-template-columns: 90px minmax(260px, .8fr) minmax(420px, 1.2fr); gap: 42px; align-items: start; padding: 86px 0 110px; border-top: 1px solid var(--line); }
.mission::before { content: ""; position: absolute; top: 0; width: 90px; height: 2px; background: var(--gold); }
.mission-right { margin-left: 8vw; }
.mission-left { margin-right: 4vw; }
.mission-number { font-family: var(--display); font-size: 72px; font-weight: 800; line-height: .8; color: rgba(204,35,45,.23); }
.mission-title h3 { margin: 0; font-family: var(--display); font-size: clamp(40px, 4.2vw, 62px); font-weight: 400; line-height: .98; letter-spacing: .012em; text-transform: uppercase; }
.mission-details { padding-top: 3px; }
.mission-intro { margin: 0 0 30px; color: #c3c1b8; font-size: 17px; line-height: 1.7; }
.check-list { margin: 0; padding: 0; list-style: none; }
.check-list li { position: relative; margin: 0 0 16px; padding-left: 28px; color: var(--muted); line-height: 1.55; }
.check-list li::before { content: "✓"; position: absolute; left: 0; top: 1px; color: var(--gold); font-weight: 800; }
.check-list strong { color: var(--white); }
.deliverable-visual { margin: 44px 0 0; position: relative; }
.deliverable-visual img { width: 100%; display: block; filter: saturate(.74) contrast(1.05); }
.deliverable-visual figcaption, .product-shot figcaption { color: #85867f; font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.schedule-visual { width: calc(100% + 110px); margin-left: -110px; }
.schedule-visual img { border: 1px solid rgba(204,35,45,.2); box-shadow: 22px 25px 0 rgba(204,35,45,.04); }
.schedule-visual figcaption { position: absolute; right: 14px; bottom: 12px; padding: 8px 10px; color: var(--gold-light); background: rgba(7,8,7,.82); }
.mission-details h4 { margin: 0 0 8px; color: var(--gold-light); font-family: var(--display); font-size: 30px; text-transform: uppercase; }
.subject-stream { display: flex; flex-wrap: wrap; gap: 8px; margin: 26px 0 38px; }
.subject-stream span { padding: 8px 12px; color: #c9c7be; font-size: 12px; border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.025); }
.split-note { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.split-note > div { padding: 14px 18px 20px; border-left: 1px solid var(--gold-dark); border-bottom: 1px solid rgba(204,35,45,.1); }
.split-note b { font-family: var(--display); color: var(--gold-light); font-size: 20px; line-height: 1.08; text-transform: uppercase; }
.split-note p { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.product-stage { position: relative; min-height: 500px; margin-top: 54px; }
.product-shot { position: absolute; margin: 0; }
.product-shot img { display: block; width: 100%; border: 1px solid rgba(255,255,255,.08); box-shadow: 20px 30px 60px rgba(0,0,0,.42); }
.product-shot figcaption { margin-top: 10px; }
.product-book { width: 38%; left: 0; top: 0; z-index: 2; transform: rotate(-3deg); }
.product-screen { width: 74%; right: -9%; top: 85px; z-index: 1; transform: rotate(1deg); }
.metric-stack { display: grid; gap: 0; }
.big-metric { display: flex; align-items: end; gap: 24px; padding-bottom: 26px; border-bottom: 1px solid var(--line); }
.big-metric strong { color: var(--gold-light); font-family: var(--display); font-size: clamp(50px, 6vw, 84px); line-height: .8; text-transform: uppercase; }
.big-metric span { max-width: 180px; color: var(--muted); font-size: 13px; line-height: 1.5; }
.detail-line { display: grid; grid-template-columns: 190px 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid rgba(255,255,255,.08); }
.detail-line b { color: var(--white); font-family: var(--display); font-size: 19px; text-transform: uppercase; }
.detail-line span { color: var(--muted); font-size: 13px; line-height: 1.5; }
.map-visual { width: 58%; margin-left: auto; margin-right: -8%; transform: rotate(2deg); }
.map-visual img { box-shadow: -20px 24px 0 rgba(204,35,45,.04); }
.map-visual figcaption { margin-top: 10px; text-align: right; }
.report-gallery { display: flex; align-items: flex-start; gap: 16px; margin: 34px -12vw 20px 0; overflow: hidden; padding: 4px 0 26px; }
.report-gallery figure { flex: 0 0 36%; height: 390px; margin: 0; overflow: hidden; border: 1px solid rgba(204,35,45,.22); background: #eae8e2; box-shadow: 16px 18px 0 rgba(204,35,45,.035); }
.report-gallery figure:nth-child(2) { transform: translateY(24px); }
.report-gallery figure:nth-child(3) { transform: translateY(50px); }
.report-gallery img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; }
.visual-note { margin: 0 0 34px; color: #777970; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.check-list.compact li { margin-bottom: 10px; font-size: 13px; }
.endurance-quote { margin-bottom: 26px; color: var(--gold-light); font-family: var(--display); font-size: 36px; line-height: 1.14; text-transform: uppercase; }
.mindset-stage { position: relative; height: 400px; margin: 42px -9% 0 -4%; }
.mindset-stage figure { position: absolute; margin: 0; overflow: hidden; border: 1px solid rgba(255,255,255,.08); box-shadow: 20px 24px 50px rgba(0,0,0,.38); }
.mindset-stage figure:first-child { width: 82%; top: 0; right: 0; transform: rotate(1.5deg); }
.mindset-stage figure:last-child { width: 66%; left: 0; bottom: 0; transform: rotate(-2.5deg); }
.mindset-stage img { width: 100%; display: block; filter: saturate(.68) sepia(.08); }

.field-section { min-height: 780px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr); overflow: hidden; background: #070807; border-top: 1px solid rgba(204,35,45,.12); border-bottom: 1px solid rgba(204,35,45,.12); }
.field-visual { min-height: 780px; position: relative; background: url("assets/missao-estudo.webp") 36% center / cover no-repeat; }
.field-visual::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,8,7,.08), transparent 55%), linear-gradient(90deg, transparent 74%, #070807 100%); }
.field-content { align-self: center; padding: 110px clamp(48px, 7vw, 112px) 110px clamp(44px, 6vw, 88px); background: #070807; }
.field-content h2 span { color: var(--gold-light); }
.field-content > p:last-child { max-width: 560px; margin: 34px 0 0; padding-left: 24px; color: #cac9c2; font-size: 17px; line-height: 1.78; border-left: 2px solid var(--gold); }

.new-section { overflow: hidden; background: radial-gradient(circle at 90% 12%, rgba(204,35,45,.08), transparent 28%), #0b0c0b; }
.new-flow { border-top: 1px solid rgba(204,35,45,.34); }
.new-item { position: relative; display: grid; grid-template-columns: 54px minmax(180px, .58fr) minmax(0, 1.42fr); grid-template-rows: auto auto; column-gap: clamp(24px, 4vw, 62px); align-items: center; min-height: 172px; padding: 34px 22px; border: 0; border-bottom: 1px solid rgba(204,35,45,.2); background: transparent; transition: padding-left .3s ease, background-color .3s ease; }
.new-item::before { content: ""; position: absolute; left: 0; top: 24px; bottom: 24px; width: 2px; background: var(--gold-light); transform: scaleY(0); transition: transform .3s ease; }
.new-item::after { content: none; }
.item-no { position: static; grid-column: 1; grid-row: 1 / span 2; align-self: start; padding-top: 8px; color: rgba(225,59,67,.5); font-family: var(--display); font-size: 20px; letter-spacing: .14em; }
.item-signal { grid-column: 2; grid-row: 1 / span 2; display: block; color: var(--gold-light); font-family: var(--display); font-size: clamp(38px, 4vw, 54px); font-weight: 400; line-height: .9; text-transform: uppercase; }
.new-item h3 { grid-column: 3; grid-row: 1; margin: 0 0 10px; font-family: var(--display); font-size: clamp(30px, 3vw, 42px); font-weight: 400; line-height: 1; letter-spacing: .015em; text-transform: uppercase; }
.new-item p { grid-column: 3; grid-row: 2; max-width: 650px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
.new-feature, .new-year, .new-live, .new-taf, .new-mind, .new-kit { min-height: 172px; padding: 34px 22px; border: 0; border-bottom: 1px solid rgba(204,35,45,.2); background: transparent; }
.new-feature::before { content: ""; position: absolute; right: auto; bottom: 24px; color: transparent; font-size: 0; }
.new-feature .item-signal, .new-year .item-signal, .new-mind .item-signal { color: var(--gold-light); font-size: clamp(38px, 4vw, 54px); }
.new-feature h3, .new-live h3 { max-width: none; margin: 0 0 10px; font-size: clamp(30px, 3vw, 42px); }
.new-feature p { color: var(--muted); font-size: 14px; }
@media (hover: hover) and (pointer: fine) {
  .new-item:hover { padding-left: 34px; background: linear-gradient(90deg, rgba(181,18,27,.1), transparent 72%); }
  .new-item:hover::before { transform: scaleY(1); }
}

.comparison { overflow: hidden; background: radial-gradient(circle at 78% 44%, rgba(181,18,27,.12), transparent 32%), #0d0f0e; }
.comparison-intro { display: flex; align-items: end; justify-content: space-between; gap: 60px; margin-bottom: 74px; }
.comparison-intro h2 { max-width: 700px; }
.comparison-intro p { max-width: 390px; margin: 0 0 8px; padding-left: 22px; color: #aaa99f; line-height: 1.72; border-left: 1px solid var(--gold); }
.comparison-grid { display: grid; grid-template-columns: minmax(0, 1fr) 86px minmax(0, 1fr); align-items: center; }
.plan-card { position: relative; min-height: 560px; padding: 46px; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: linear-gradient(155deg, rgba(255,255,255,.038), rgba(255,255,255,.008)); }
.plan-base { transform: rotate(-.35deg); }
.plan-premium { z-index: 1; min-height: 610px; padding: 52px; transform: rotate(.35deg); border-color: rgba(225,59,67,.42); background: linear-gradient(145deg, rgba(91,8,14,.95), rgba(20,12,13,.98) 68%); box-shadow: 0 34px 90px rgba(0,0,0,.38), 0 0 70px rgba(181,18,27,.1); }
.plan-premium::before { content: ""; position: absolute; inset: -1px; z-index: -1; border-radius: inherit; background: linear-gradient(135deg, rgba(225,59,67,.36), transparent 28% 72%, rgba(225,59,67,.18)); opacity: .7; }
.plan-head { min-height: 200px; padding-bottom: 32px; border-bottom: 1px solid rgba(255,255,255,.1); }
.plan-head > span { color: #85877f; font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.plan-premium .plan-head > span { color: #ff8f95; }
.plan-head h3 { margin: 16px 0 14px; font-family: var(--display); font-size: clamp(58px, 6vw, 82px); font-weight: 400; line-height: .86; text-transform: uppercase; }
.plan-premium .plan-head h3 { color: var(--gold-light); }
.plan-head p { max-width: 430px; margin: 0; color: #a8aaa2; font-size: 14px; line-height: 1.65; }
.plan-card ul { display: grid; gap: 0; margin: 28px 0 0; padding: 0; list-style: none; }
.plan-card li { position: relative; padding: 15px 0 15px 28px; color: #b8b9b2; font-size: 14px; line-height: 1.5; border-bottom: 1px solid rgba(255,255,255,.07); }
.plan-card li::before { content: "✓"; position: absolute; left: 0; color: var(--gold-light); font-weight: 800; }
.plan-premium li { color: #e4dddd; }
.plan-premium li strong { color: #fff; }
.comparison-plus { position: relative; z-index: 2; width: 86px; height: 86px; display: grid; place-items: center; justify-self: center; border: 1px solid rgba(225,59,67,.48); border-radius: 50%; background: #0d0f0e; box-shadow: 0 0 0 12px rgba(13,15,14,.78); }
.comparison-plus span { color: var(--gold-light); font-family: var(--display); font-size: 48px; line-height: .7; }
.comparison-plus small { position: absolute; top: calc(100% + 15px); width: 120px; color: #898b84; font-size: 9px; font-weight: 800; letter-spacing: .13em; text-align: center; text-transform: uppercase; }
.comparison-result { width: min(770px, 88%); margin: 72px auto 0; padding: 30px 38px; text-align: center; border-top: 1px solid rgba(225,59,67,.42); border-bottom: 1px solid rgba(225,59,67,.16); }
.comparison-result strong { color: var(--gold-light); font-family: var(--display); font-size: 30px; font-weight: 400; text-transform: uppercase; }
.comparison-result p { margin: 9px 0 0; color: #a8aaa2; line-height: 1.65; }

.price-section { min-height: 100vh; position: relative; display: flex; align-items: center; overflow: hidden; padding: 140px 0; background: #070807; }
.price-section::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 72% 50%, rgba(204,35,45,.15), transparent 31%), linear-gradient(110deg, transparent 0 58%, rgba(255,255,255,.018) 58% 76%, transparent 76%); }
.price-watermark { position: absolute; left: -6vw; bottom: -10vh; color: rgba(204,35,45,.045); font-family: var(--display); font-size: min(55vw, 700px); line-height: .8; }
.price-stripe { position: absolute; width: 140%; height: 1px; left: -20%; top: 51%; transform: rotate(-7deg); background: linear-gradient(90deg, transparent, var(--gold), transparent); opacity: .45; }
.price-layout { position: relative; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(360px, .72fr); gap: clamp(60px, 8vw, 120px); align-items: center; }
.price-statement h2 { font-size: clamp(66px, 7.3vw, 112px); line-height: .9; }
.price-statement h2 span { color: var(--white); }
.price-statement h2 em { color: var(--gold-light); font-style: normal; }
.price-intro { max-width: 590px; margin: 34px 0 0; color: #b8b7ae; font-size: 16px; line-height: 1.75; }
.price-rule { display: flex; align-items: center; gap: 18px; margin-top: 34px; }
.price-rule i { width: 90px; height: 1px; background: var(--gold); }
.price-rule b { max-width: 300px; color: #a9a9a1; font-size: 11px; line-height: 1.5; text-transform: uppercase; letter-spacing: .08em; }
.price-card { position: relative; padding: 38px; border: 1px solid rgba(204,35,45,.38); border-radius: 12px; background: linear-gradient(155deg, rgba(24,24,20,.96), rgba(11,12,10,.97)); box-shadow: 0 38px 80px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,225,225,.06); }
.price-card::before { content: ""; position: absolute; width: 68px; height: 68px; right: -1px; top: -1px; border-top: 2px solid var(--gold); border-right: 2px solid var(--gold); border-radius: 0 12px 0 0; }
.price-card-head { display: flex; justify-content: space-between; gap: 24px; padding-bottom: 22px; border-bottom: 1px solid rgba(255,255,255,.09); }
.price-card-head strong { font-family: var(--display); font-size: 25px; font-weight: 400; letter-spacing: .03em; text-transform: uppercase; }
.price-card-head span { max-width: 96px; color: var(--gold-light); font-size: 10px; line-height: 1.4; text-align: right; text-transform: uppercase; letter-spacing: .08em; }
.price-context { margin: 26px 0 10px; color: #8f9188; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; }
.price-from { display: inline-block; position: relative; margin: 0 0 12px; color: #8f9188; font-size: 15px; }
.price-from::after { content: ""; position: absolute; left: -3px; right: -3px; top: 52%; height: 1px; background: var(--gold); transform: rotate(-3deg); }
.price-total { display: flex; align-items: flex-start; gap: 9px; color: var(--gold-light); }
.price-total small { margin-top: 12px; font-family: var(--display); font-size: 31px; }
.price-total strong { font-family: var(--display); font-size: clamp(92px, 8vw, 122px); font-weight: 400; line-height: .72; letter-spacing: .01em; }
.price-cash { margin: 20px 0 0; color: #a5a69e; font-size: 13px; }
.price-divider { height: 1px; margin: 28px 0; background: linear-gradient(90deg, var(--gold), rgba(204,35,45,.08)); }
.price-benefits { margin: 0 0 30px; padding: 0; list-style: none; }
.price-benefits li { position: relative; margin: 0 0 13px; padding-left: 23px; color: #c8c6bd; font-size: 13px; line-height: 1.5; }
.price-benefits li::before { content: "✓"; position: absolute; left: 0; color: var(--gold); }
.price-card .button { width: 100%; padding-left: 16px; padding-right: 16px; }
.price-note { margin: 15px 0 0; color: #85877e; font-size: 10px; line-height: 1.5; text-align: center; }

.offer { min-height: 95vh; display: flex; align-items: center; overflow: hidden; background: radial-gradient(circle at 72% 48%, rgba(204,35,45,.13), transparent 31%), #080908; }
.offer-ring { position: absolute; width: 760px; height: 760px; border: 1px solid rgba(204,35,45,.11); border-radius: 50%; right: -250px; top: 50%; transform: translateY(-50%); box-shadow: 0 0 0 80px rgba(204,35,45,.018), 0 0 0 160px rgba(204,35,45,.012); }
.offer-layout { display: grid; grid-template-columns: 1fr .72fr; gap: 90px; align-items: center; position: relative; }
.offer-lead { max-width: 600px; color: var(--muted); line-height: 1.75; }
.offer-box { padding: 42px; border: 1px solid rgba(204,35,45,.35); background: rgba(15,16,14,.78); backdrop-filter: blur(8px); box-shadow: 30px 30px 0 rgba(204,35,45,.035); clip-path: polygon(0 0, calc(100% - 34px) 0, 100% 34px, 100% 100%, 0 100%); }
.offer-label { color: var(--gold); font-size: 10px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.offer-box h3 { margin: 20px 0 30px; font-family: var(--display); font-size: 46px; font-weight: 400; line-height: 1; letter-spacing: .012em; text-transform: uppercase; }
.offer-box h3 em { color: var(--gold-light); font-style: normal; }
.offer-box ul { margin: 0 0 32px; padding: 0; list-style: none; }
.offer-box li { margin: 0 0 14px; padding-left: 24px; position: relative; color: #c3c0b7; font-size: 13px; }
.offer-box li::before { content: "◆"; position: absolute; left: 0; color: var(--gold); font-size: 9px; }
.button-full { width: 100%; }
.deadline { margin: 18px 0 0; color: #8c8d86; font-size: 11px; text-align: center; }

.faq { background: #0d0f0d; }
.faq-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 100px; }
.faq-title { position: sticky; top: 130px; align-self: start; }
.faq-list details { border-top: 1px solid rgba(255,255,255,.11); }
.faq-list details:last-child { border-bottom: 1px solid rgba(255,255,255,.11); }
.faq-list summary { padding: 28px 38px 28px 0; cursor: pointer; list-style: none; position: relative; font-family: var(--display); font-size: 24px; text-transform: uppercase; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; position: absolute; right: 6px; color: var(--gold); }
.faq-list details[open] summary::after { content: "×"; }
.faq-list details p { margin: 0; padding: 0 50px 28px 0; color: var(--muted); line-height: 1.7; }

footer { padding: 54px 0; border-top: 1px solid var(--line); background: #060706; }
.footer-content { display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.footer-content p, .footer-content > a:last-child { color: #888981; font-size: 12px; }

.cta-modal { width: min(560px, calc(100% - 32px)); color: var(--white); padding: 46px; border: 1px solid var(--gold-dark); background: #10120f; box-shadow: 0 20px 100px rgba(0,0,0,.8); }
.cta-modal::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(7px); }
.cta-modal h2 { font-size: 46px; line-height: 1.08; }
.cta-modal > p:not(.eyebrow) { color: var(--muted); line-height: 1.7; }
.modal-close { position: absolute; right: 18px; top: 14px; border: 0; background: none; color: var(--gold); font-size: 30px; cursor: pointer; }

.reveal { opacity: 0; filter: blur(3px); transform: translateY(30px); transition: opacity .75s ease, transform .9s cubic-bezier(.2,.75,.2,1), filter .75s ease; }
.reveal.visible { opacity: 1; filter: none; transform: none; }

.title-lines-ready .title-token {
  display: inline-block;
  opacity: 0;
  filter: blur(2px);
  font: inherit;
  font-style: inherit;
  transform: translateY(.78em);
  transition: opacity .58s ease, transform .72s cubic-bezier(.2,.78,.2,1), filter .58s ease;
  transition-delay: calc(var(--title-line, 0) * 110ms);
}
.title-lines-ready.title-lines-visible .title-token { opacity: 1; filter: none; transform: translateY(0); }
.premium-page h1 span .title-token,
.premium-page .price-statement h2 em .title-token,
.premium-page .offer-box h3 em .title-token { color: var(--gold-light); }

@media (max-width: 980px) {
  .topbar p { display: none; }
  .manifesto-layout, .section-heading { grid-template-columns: 58px 1fr; }
  .manifesto-copy { grid-column: 2; padding-top: 0; }
  .mission, .mission-left, .mission-right { margin: 0; grid-template-columns: 70px 1fr; }
  .mission-details { grid-column: 2; }
  .deliverable-row { gap: 44px; }
  .deliverable-number { font-size: 100px; }
  .field-section { grid-template-columns: 1fr 1fr; }
  .field-content { padding: 90px 48px; }
  .offer-layout { grid-template-columns: 1fr 1fr; gap: 44px; }
  .price-layout { grid-template-columns: 1fr .78fr; }
  .price-card { padding: 32px; }
}

@media (max-width: 720px) {
  .container { width: min(calc(100% - 30px), 1160px); }
  .section-pad { padding: 90px 0; }
  .topbar { height: 64px; padding: 0 15px; }
  .topbar .brand-mark { width: 30px; height: 30px; }
  .topbar .brand b { font-size: 18px; }
  .top-cta { font-size: 12px; }
  .hero { min-height: 980px; align-items: flex-start; padding-bottom: 76px; }
  .hero-bg { background-position: 67% center; opacity: .72; }
  .hero::after { background: radial-gradient(circle at 52% 35%, rgba(181,18,27,.16), transparent 42%), linear-gradient(0deg, rgba(5,6,5,.99) 0%, rgba(5,6,5,.78) 57%, rgba(5,6,5,.2) 100%), linear-gradient(90deg, rgba(5,6,5,.75), transparent); }
  .hero-content { padding-top: 150px; text-align: center; }
  h1 { font-size: 54px; text-align: center; }
  .hero-lead { margin-right: auto; margin-left: auto; font-size: 15px; }
  .hero-actions { align-items: center; flex-direction: column; gap: 22px; }
  .hero-facts { gap: 18px; justify-content: space-between; }
  .hero-facts strong { font-size: 21px; }
  .vertical-word, .scroll-cue { display: none; }
  .manifesto-layout, .section-heading { grid-template-columns: 1fr; gap: 22px; }
  .section-heading h2, .manifesto-layout h2, .field-content h2, .comparison-intro h2, .price-statement h2, .offer-layout > div:first-child h2, .faq-title h2 { text-align: center; }
  .manifesto-copy, .mission-details { grid-column: auto; }
  .marquee { font-size: 70px; }
  .mission { grid-template-columns: 1fr; gap: 22px; padding: 64px 0 80px; }
  .deliverable-row { grid-template-columns: 1fr; gap: 42px; padding: 72px 0; }
  .deliverable-row.media-right .deliverable-media, .deliverable-row.media-right .deliverable-copy { order: initial; }
  .deliverable-copy { max-width: none; }
  .deliverable-number { top: -20px; font-size: 90px; }
  .media-pair { min-height: 390px; }
  .portrait-media { width: 72%; }
  .report-media { min-height: 480px; }
  .report-media figure:first-child { height: 430px; }
  .report-media figure:nth-child(2) { height: 270px; }
  .mission-number { font-size: 48px; }
  .split-note { grid-template-columns: 1fr; }
  .schedule-visual { width: 100%; margin-left: 0; }
  .product-stage { min-height: 390px; }
  .product-book { width: 44%; }
  .product-screen { width: 80%; right: -5%; top: 115px; }
  .detail-line { grid-template-columns: 1fr; gap: 7px; }
  .big-metric { align-items: start; flex-direction: column; }
  .map-visual { width: 72%; margin-right: 0; }
  .report-gallery { margin-right: calc(50% - 50vw); overflow-x: auto; scroll-snap-type: x mandatory; }
  .report-gallery figure { flex-basis: 78%; height: 420px; scroll-snap-align: start; }
  .mindset-stage { height: 300px; margin-right: 0; }
  .field-section { min-height: 0; grid-template-columns: 1fr; }
  .field-visual { min-height: 390px; background-position: 28% center; }
  .field-visual::after { background: linear-gradient(0deg, #070807 0%, transparent 35%); }
  .field-content { padding: 70px 15px 90px; }
  .new-item, .new-feature, .new-year, .new-live, .new-taf, .new-mind, .new-kit { grid-template-columns: 42px 1fr; grid-template-rows: auto auto auto; column-gap: 14px; min-height: 0; padding: 28px 8px; }
  .item-no { grid-column: 1; grid-row: 1 / span 3; font-size: 17px; }
  .item-signal, .new-feature .item-signal, .new-year .item-signal, .new-mind .item-signal { grid-column: 2; grid-row: 1; margin-bottom: 18px; font-size: 38px; }
  .new-item h3, .new-feature h3, .new-live h3 { grid-column: 2; grid-row: 2; margin: 0 0 9px; font-size: 30px; text-align: left; }
  .new-item p, .new-feature p { grid-column: 2; grid-row: 3; font-size: 13px; }
  .comparison-intro { align-items: flex-start; flex-direction: column; gap: 24px; margin-bottom: 46px; }
  .comparison-intro p { max-width: none; padding: 22px 0 0; text-align: center; border-top: 1px solid var(--gold); border-left: 0; }
  .comparison-grid { grid-template-columns: 1fr; gap: 0; }
  .plan-card, .plan-premium { min-height: 0; padding: 32px 24px; transform: none; }
  .plan-head { min-height: 0; }
  .comparison-plus { margin: -12px auto; }
  .comparison-plus small { display: none; }
  .comparison-result { width: 100%; margin-top: 54px; padding: 26px 12px; }
  .price-section { min-height: auto; padding: 110px 0; }
  .price-layout { grid-template-columns: 1fr; gap: 34px; }
  .price-card { max-width: 520px; }
  .price-watermark { right: -20vw; left: auto; bottom: -8vh; font-size: 110vw; }
  .price-statement h2 { font-size: 68px; }
  .price-total strong { font-size: 92px; }
  .offer-layout, .faq-layout { grid-template-columns: 1fr; gap: 52px; }
  .offer-box { padding: 30px 22px; }
  .faq-title { position: static; }
  .footer-content { align-items: flex-start; flex-direction: column; }
  .cta-modal { padding: 40px 24px 28px; }
  .cta-modal h2 { font-size: 38px; }
}

/* Mesma escala tipografica compacta usada na pagina Perseu */
.premium-page .section-pad { padding: 108px 0; }
.premium-page h1 { max-width: 680px; font-size: clamp(50px, 5.6vw, 82px); line-height: .94; }
.premium-page h2 { font-size: clamp(42px, 5.15vw, 72px); line-height: .98; }
.premium-page .hero-lead { max-width: 600px; margin-top: 26px; font-size: 15px; line-height: 1.68; }
.premium-page .hero-actions { margin-top: 30px; }
.premium-page .hero-facts { margin-top: 44px; }
.premium-page .hero-facts strong { font-size: 24px; }
.premium-page .marquee { margin-top: 76px; font-size: 82px; }
.premium-page .section-heading { margin-bottom: 78px; }
.premium-page .section-heading > div:last-child > p:last-child,
.premium-page .manifesto-copy p { font-size: 14px; line-height: 1.65; }
.premium-page .deliverable-row { padding: 76px 0; }
.premium-page .deliverable-number { font-size: 42px; }
.premium-page .deliverable-copy h3 { font-size: clamp(36px, 3.45vw, 50px); line-height: 1; }
.premium-page .mission-intro { margin-bottom: 24px; font-size: 15px; line-height: 1.65; }
.premium-page .check-list li { margin-bottom: 13px; font-size: 14px; }
.premium-page .field-content > p:last-child { margin-top: 28px; font-size: 15px; line-height: 1.7; }
.premium-page .item-signal { font-size: 44px; }
.premium-page .new-item h3 { font-size: 30px; }
.premium-page .new-item p { font-size: 13px; }
.premium-page .new-feature, .premium-page .new-year { min-height: 172px; }
.premium-page .new-feature .item-signal, .premium-page .new-year .item-signal { font-size: clamp(38px, 4vw, 54px); }
.premium-page .new-feature h3 { margin-top: 0; font-size: clamp(30px, 3vw, 42px); }
.premium-page .new-feature p { font-size: 14px; }
.premium-page .plan-head h3 { font-size: clamp(38px, 4.2vw, 58px); line-height: .92; }
.premium-page .comparison-result strong { font-size: 26px; }
.premium-page .price-statement h2 { font-size: clamp(54px, 6vw, 84px); line-height: .92; }
.premium-page .price-intro { font-size: 15px; }
.premium-page .price-total strong { font-size: clamp(78px, 7vw, 100px); }
.premium-page .offer-box h3 { font-size: 38px; }
.premium-page .faq-list summary { font-size: 20px; }
.premium-page .cta-modal h2 { font-size: 38px; }

@media (max-width: 720px) {
  .premium-page .section-pad { padding: 72px 0; }
  .premium-page h1 { font-size: 46px; line-height: .95; }
  .premium-page h2 { font-size: 42px; }
  .premium-page .hero-lead { font-size: 14px; }
  .premium-page .hero-facts strong { font-size: 18px; }
  .premium-page .hero-facts span { font-size: 9px; }
  .premium-page .marquee { font-size: 54px; }
  .premium-page .deliverable-row { gap: 34px; padding: 58px 0; }
  .premium-page .deliverable-number { margin-right: auto; margin-left: auto; font-size: 36px; }
  .premium-page .deliverable-copy h3 { font-size: 38px; }
  .premium-page .mission-intro { font-size: 14px; }
  .premium-page .field-content { padding-top: 58px; padding-bottom: 68px; }
  .premium-page .new-feature, .premium-page .new-year { min-height: 0; padding: 28px 8px; }
  .premium-page .new-feature h3 { margin-top: 0; font-size: 30px; }
  .premium-page .new-feature .item-signal, .premium-page .new-year .item-signal { font-size: 38px; }
  .premium-page .plan-head h3 { font-size: 42px; }
  .premium-page .price-statement h2 { font-size: 52px; }
  .premium-page .price-total strong { font-size: 78px; }
  .premium-page .offer-box h3 { font-size: 34px; }
  .premium-page .faq-list summary { font-size: 19px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
  .title-lines-ready .title-token { opacity: 1; filter: none; transform: none; transition: none; }
}
