:root {
  --navy: #00263d;
  --navy-dark: #00263d;
  --sky: #f15a22;
  --orange: #f15a22;
  --gold: #f15a22;
  --ink: #00263d;
  --muted: #00263d;
  --line: rgba(0,38,61,.16);
  --soft: #ffffff;
  --white: #ffffff;
  --shell: min(1200px, calc(100% - 48px));
  --shadow: 0 24px 64px rgba(0, 38, 61, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--white); color: var(--ink); font-family: Inter, "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body::selection { background: var(--orange); color: #fff; }
a { color: inherit; text-decoration: none; }
img { object-fit: cover; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, p { overflow-wrap: anywhere; }
.shell { width: var(--shell); margin-inline: auto; }
.srOnly { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skipLink { position: fixed; top: 8px; left: 8px; z-index: 1000; transform: translateY(-150%); background: #fff; color: var(--navy); padding: 12px 16px; border-radius: 4px; font-weight: 800; }
.skipLink:focus { transform: translateY(0); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid var(--sky); outline-offset: 3px; }

.topbar { min-height: 34px; display: grid; place-items: center; padding: 8px 20px; background: var(--orange); color: #fff; text-align: center; text-transform: uppercase; letter-spacing: .11em; font-size: .69rem; font-weight: 900; }
.header { height: 86px; position: sticky; top: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-inline: max(24px, calc((100vw - 1200px) / 2)); background: #00263d; border-bottom: 1px solid rgba(255,255,255,.14); backdrop-filter: blur(12px); }
.brand { height: 100%; min-width: 156px; display: flex; align-items: center; padding-block: 14px; }
.brand img { width: 142px; height: 58px; object-fit: contain; }
.nav { display: flex; align-items: center; gap: 24px; color: rgba(255,255,255,.82); font-size: .82rem; font-weight: 800; }
.nav > a { transition: color .2s ease, transform .2s ease; }
.nav > a:hover { color: #fff; transform: translateY(-1px); }
.navCta { min-height: 48px; display: inline-flex; align-items: center; padding-inline: 19px; color: var(--navy-dark) !important; background: var(--orange); border-radius: 4px; }
.menuButton { display: none; width: 44px; height: 44px; border: 0; background: transparent; padding: 8px; }
.menuButton i { display: block; height: 2px; margin: 6px; background: #fff; }

.eyebrow { display: flex; align-items: center; gap: 12px; color: var(--orange); font-size: .72rem; font-weight: 900; letter-spacing: .16em; line-height: 1.3; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 34px; height: 3px; flex: 0 0 auto; background: currentColor; }
.eyebrowLight { color: #fff; }
.button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; gap: 20px; padding: 0 22px; border: 1px solid transparent; border-radius: 4px; font-size: .86rem; font-weight: 900; line-height: 1.2; transition: transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease; }
.button:hover { transform: translateY(-2px); }
.buttonPrimary { background: var(--orange); color: #fff; border-color: var(--orange); }
.buttonPrimary:hover { background: #00263d; border-color: #00263d; }
.buttonOutline { color: var(--navy); border-color: rgba(0,38,61,.35); }
.buttonOutline:hover { border-color: var(--orange); color: var(--orange); }
.buttonOutlineLight { color: #fff; border-color: rgba(255,255,255,.38); }
.buttonOutlineLight:hover { border-color: #fff; }
.buttonWhite { background: #fff; color: var(--navy); }
.buttonGhost { border-color: rgba(0,38,61,.24); color: var(--navy); background: transparent; }
.textLink { display: inline-flex; align-items: center; gap: 8px; margin-top: 24px; color: var(--orange); font-weight: 900; line-height: 1.4; }
.textLink span, .textLink b { font-size: 1.15em; transition: transform .2s ease; }
.textLink:hover span, .textLink:hover b { transform: translate(2px, -2px); }
.heroButtons { display: flex; flex-wrap: wrap; gap: 12px; }

/* Conversion-first home */
.conversionHero { color: #fff; background: var(--navy-dark); overflow: hidden; }
.conversionHeroGrid { min-height: 650px; display: grid; grid-template-columns: 1.02fr .98fr; gap: 54px; align-items: stretch; }
.conversionHeroCopy { z-index: 2; display: flex; flex-direction: column; justify-content: center; padding: 74px 0 68px; }
.conversionHeroCopy h1 { max-width: 720px; margin: 22px 0 24px; font-size: clamp(3.25rem, 5.35vw, 5.8rem); line-height: .96; letter-spacing: -.06em; }
.conversionHeroCopy h1 em { display: block; margin-top: 8px; color: var(--orange); font-style: normal; }
.conversionHeroCopy > p { max-width: 650px; margin: 0 0 30px; color: rgba(255,255,255,.76); font-size: 1.08rem; line-height: 1.72; }
.heroReassurance { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 18px; color: rgba(255,255,255,.68); font-size: .76rem; font-weight: 750; }
.conversionHeroVisual { min-height: 650px; position: relative; margin-right: calc((100vw - min(1200px, calc(100vw - 48px))) / -2); overflow: hidden; isolation: isolate; }
.conversionHeroVisual::before { content: ""; position: absolute; z-index: 1; inset: 0; background: linear-gradient(90deg, var(--navy-dark) 0%, rgba(0,38,61,.36) 24%, rgba(0,38,61,.04) 58%), linear-gradient(0deg, rgba(0,38,61,.32), transparent 35%); pointer-events: none; }
.conversionHeroVisual img { object-position: center 42%; }
.heroSeal { position: absolute; z-index: 2; right: max(24px, calc((100vw - 1200px) / 2)); bottom: 34px; width: 210px; padding: 18px 20px; color: var(--navy-dark); background: var(--orange); box-shadow: 0 16px 40px rgba(0,38,61,.18); }
.heroSeal span { display: block; padding-bottom: 9px; border-bottom: 1px solid rgba(0,38,61,.28); font-size: .72rem; font-weight: 950; letter-spacing: .15em; text-transform: uppercase; }
.heroSeal strong { display: block; margin-top: 10px; font-size: 1rem; line-height: 1.32; }
.heroFacts { display: grid; grid-template-columns: repeat(4, 1fr); position: relative; z-index: 3; margin-top: -1px; border-top: 1px solid rgba(255,255,255,.14); }
.heroFacts div { min-height: 102px; display: flex; flex-direction: column; justify-content: center; gap: 5px; padding: 18px 26px; border-left: 1px solid rgba(255,255,255,.14); }
.heroFacts div:first-child { padding-left: 0; border-left: 0; }
.heroFacts strong { color: #fff; font-size: 1.05rem; }
.heroFacts span { color: rgba(255,255,255,.58); font-size: .75rem; }

.decisionSection { padding: 118px 0; }
.decisionIntro { display: grid; grid-template-columns: .95fr 1.05fr; gap: 96px; align-items: start; }
.decisionIntro h2, .routineHeading h2, .faithSalesCopy h2, .localHistoryCopy h2, .visitProofGrid h2 { margin: 20px 0 0; font-size: clamp(2.8rem, 4.7vw, 4.9rem); line-height: 1.02; letter-spacing: -.052em; }
.decisionIntro > div:last-child > p { margin: 0; color: var(--muted); font-size: 1.08rem; line-height: 1.82; }
.decisionIntro blockquote { margin: 30px 0 0; padding: 20px 0 20px 24px; border-left: 4px solid var(--orange); color: var(--navy); font-size: 1.18rem; font-weight: 850; line-height: 1.55; }
.parentQuestionGrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 66px; }
.parentQuestionGrid article { min-height: 188px; padding: 25px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--line); background: var(--soft); }
.parentQuestionGrid article > span { color: var(--orange); font-size: .74rem; font-weight: 950; }
.parentQuestionGrid p { margin: 28px 0 0; color: var(--navy); font-size: 1.02rem; font-weight: 850; line-height: 1.5; }

.completeFormation { position: relative; overflow: hidden; padding: 116px 0; color: #fff; background: var(--navy); }
.completeFormation::before { content: ""; position: absolute; inset: 0; opacity: .055; background-image: linear-gradient(45deg, transparent 47%, #fff 48%, #fff 51%, transparent 52%), linear-gradient(-45deg, transparent 47%, #fff 48%, #fff 51%, transparent 52%); background-size: 98px 98px; }
.sectionHeadingLight { z-index: 1; }
.sectionHeadingLight h2 em { color: var(--orange); font-style: normal; }
.sectionHeadingLight > p { color: rgba(255,255,255,.7); }
.formationPillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 15px; position: relative; z-index: 1; }
.formationPillars article { min-height: 390px; display: flex; flex-direction: column; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.045); }
.formationPillars article > span { color: var(--orange); font-size: .75rem; font-weight: 950; }
.formationPillars h3 { margin: 72px 0 15px; font-size: 1.65rem; line-height: 1.16; }
.formationPillars p { margin: 0; color: rgba(255,255,255,.7); line-height: 1.7; }
.formationPillars strong { margin-top: auto; padding-top: 28px; color: #fff; font-size: .83rem; line-height: 1.5; }

.stagesSection { padding: 118px 0; background: #fff; }
.stagesHeading { max-width: 920px; }
.stageCards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.stageCard { display: flex; flex-direction: column; color: var(--navy); background: var(--soft); }
.stageCardDark { color: #fff; background: var(--navy); }
.stageImage { position: relative; height: 355px; overflow: hidden; }
.stageImage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(0,38,61,.2), transparent 45%); }
.stageImage img { transition: transform .6s ease; }
.stageCard:hover .stageImage img { transform: scale(1.025); }
.stageContent { display: flex; flex: 1; flex-direction: column; padding: 38px; }
.stageContent > span { color: var(--orange); font-size: .74rem; font-weight: 950; letter-spacing: .14em; text-transform: uppercase; }
.stageCardDark .stageContent > span, .stageCardDark .textLink { color: var(--orange); }
.stageContent h3 { margin: 12px 0; font-size: 2.4rem; letter-spacing: -.045em; }
.stageContent > p { margin: 0; color: var(--muted); line-height: 1.72; }
.stageCardDark .stageContent > p { color: rgba(255,255,255,.72); }
.stageContent ul { margin: 25px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; list-style: none; }
.stageContent li { padding: 8px 11px; border: 1px solid rgba(0,38,61,.22); border-radius: 99px; font-size: .73rem; font-weight: 800; }
.stageCardDark .stageContent li { border-color: rgba(255,255,255,.23); }
.stageContent .textLink { margin-top: auto; padding-top: 28px; }

.routineSection { padding: 118px 0; background: var(--soft); }
.routineLayout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 84px; align-items: start; }
.routineHeading { position: sticky; top: 128px; }
.routineHeading > p { margin: 24px 0 0; color: var(--muted); font-size: 1.05rem; line-height: 1.75; }
.routineHeading .button { margin-top: 30px; }
.routineGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.routineGrid article { min-height: 242px; padding: 27px; border: 1px solid var(--line); background: #fff; }
.routineGrid article > span { color: var(--orange); font-size: .72rem; font-weight: 950; }
.routineGrid h3 { margin: 38px 0 11px; color: var(--navy); font-size: 1.18rem; line-height: 1.25; }
.routineGrid p { margin: 0; color: var(--muted); font-size: .87rem; line-height: 1.65; }

.faithSalesSection { min-height: 690px; display: grid; grid-template-columns: .97fr 1.03fr; color: #fff; background: var(--orange); }
.faithSalesImage { min-height: 610px; position: relative; overflow: hidden; }
.faithSalesImage::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 70%, rgba(241,90,34,.24)); }
.faithSalesCopy { display: flex; flex-direction: column; justify-content: center; padding: 90px max(40px, calc((100vw - 1200px) / 2)) 90px 76px; }
.faithSalesCopy h2 { max-width: 710px; }
.faithSalesCopy > p { max-width: 680px; margin: 24px 0 0; color: rgba(255,255,255,.88); font-size: 1.04rem; line-height: 1.78; }
.faithValues { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.faithValues span { padding: 9px 12px; border: 1px solid rgba(255,255,255,.4); border-radius: 99px; font-size: .73rem; font-weight: 850; }
.faithSalesCopy .button { align-self: flex-start; margin-top: 30px; }

.localHistorySection { padding: 118px 0; }
.localHistoryGrid { display: grid; grid-template-columns: 1.02fr .98fr; gap: 82px; align-items: center; }
.localHistoryPhoto { position: relative; height: 640px; overflow: hidden; background: var(--soft); }
.localHistoryPhoto img { object-position: center 45%; }
.localHistoryCopy { padding-block: 34px; }
.historySince { display: block; margin: 34px 0; color: var(--orange); font-size: clamp(4.8rem, 8vw, 8rem); line-height: .78; letter-spacing: -.07em; }
.localHistoryCopy h2 { font-size: clamp(2.35rem, 3.6vw, 3.8rem); }
.localHistoryCopy > p { margin: 24px 0 0; color: var(--muted); font-size: 1.03rem; line-height: 1.78; }

.visitProofSection { position: relative; overflow: hidden; padding: 100px 0; color: #fff; background: var(--navy-dark); }
.visitProofSection::after { content: ""; position: absolute; right: -100px; top: -180px; width: 520px; height: 520px; border: 90px solid rgba(241,90,34,.07); border-radius: 50%; }
.visitProofGrid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 90px; align-items: center; position: relative; z-index: 1; }
.visitProofGrid > div:last-child > p { margin: 0; color: rgba(255,255,255,.72); font-size: 1.05rem; line-height: 1.8; }
.visitProofGrid .button { margin-top: 28px; }

/* Home hero */
.homeHero { background: #fff; }
.heroPhoto { position: relative; height: clamp(430px, 51vw, 660px); overflow: hidden; background: var(--navy-dark); }
.heroPhoto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,38,61,.08), rgba(0,38,61,.12)); pointer-events: none; }
.heroPhoto img { object-position: center 44%; }
.heroPanel { display: grid; grid-template-columns: 1.12fr .88fr; gap: 80px; align-items: end; padding-block: 64px 54px; }
.heroPanel h1 { max-width: 760px; margin: 20px 0 0; font-size: clamp(3.2rem, 6vw, 6.1rem); line-height: .96; letter-spacing: -.058em; }
.heroPanel h1 em { display: block; color: var(--orange); font-style: normal; }
.heroSide > p { margin: 0 0 26px; color: var(--muted); font-size: 1.08rem; line-height: 1.78; }
.heroSide small { display: block; margin-top: 14px; color: var(--muted); font-size: .78rem; }
.trustBar { display: grid; grid-template-columns: repeat(4, 1fr); padding-block: 25px; border-top: 1px solid var(--line); }
.trustBar span { min-height: 52px; padding: 0 22px; display: flex; flex-direction: column; justify-content: center; border-left: 1px solid var(--line); color: var(--muted); font-size: .76rem; }
.trustBar span:first-child { border-left: 0; padding-left: 0; }
.trustBar strong { color: var(--navy); font-size: 1rem; }

/* Shared home sections */
.conflictSection, .programsSection, .experienceSection, .faqSection { padding: 118px 0; }
.conflictGrid, .proofGrid, .faqGrid { display: grid; grid-template-columns: .92fr 1.08fr; gap: 100px; align-items: start; }
.conflictGrid h2, .sectionHeading h2, .faithCopy h2, .historyGrid h2, .proofGrid h2, .faqGrid h2, .formSide h2, .visitCta h2 { margin: 20px 0 0; font-size: clamp(2.8rem, 4.8vw, 5rem); line-height: 1.02; letter-spacing: -.052em; }
.conflictGrid > div:last-child > p, .sectionHeading > p, .experienceGrid > div:first-child > p, .historyGrid > div:last-child > p, .proofGrid p, .faqGrid > div:first-child > p, .formSide > p { margin: 0; color: var(--muted); font-size: 1.08rem; line-height: 1.82; }
.conflictGrid blockquote { margin: 32px 0 0; padding: 22px 0 22px 24px; border-left: 4px solid var(--orange); color: var(--navy); font-size: 1.2rem; font-weight: 800; line-height: 1.55; }
.dimensionSection { padding: 112px 0; color: #fff; background: var(--navy); position: relative; overflow: hidden; }
.dimensionSection::before, .visitCta::before { content: ""; position: absolute; inset: 0; opacity: .08; background-image: linear-gradient(45deg, transparent 47%, #fff 48%, #fff 51%, transparent 52%), linear-gradient(-45deg, transparent 47%, #fff 48%, #fff 51%, transparent 52%); background-size: 86px 86px; }
.sectionHeading { max-width: 810px; margin-bottom: 58px; position: relative; }
.sectionHeading.centered { margin-inline: auto; text-align: center; }
.sectionHeading.centered .eyebrow { justify-content: center; }
.sectionHeading h2 { font-size: clamp(2.8rem, 4.9vw, 5.15rem); }
.sectionHeading > p { margin-top: 18px; }
.dimensionSection .sectionHeading > p { color: rgba(255,255,255,.68); }
.dimensionGrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; position: relative; }
.dimensionGrid article { min-height: 310px; padding: 34px; border: 1px solid rgba(255,255,255,.18); background: rgba(255,255,255,.04); }
.dimensionGrid article > span { color: var(--orange); font-weight: 900; }
.dimensionGrid h3 { margin: 76px 0 16px; font-size: 1.55rem; line-height: 1.18; }
.dimensionGrid p { color: rgba(255,255,255,.7); line-height: 1.65; }
.programGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.programCard { color: var(--navy); background: var(--soft); }
.programCard > div:last-child { padding: 36px; }
.programCard.programNavy { color: #fff; background: var(--navy); }
.programImage { position: relative; height: 350px; overflow: hidden; }
.programImage img { transition: transform .6s ease; }
.programCard:hover .programImage img { transform: scale(1.025); }
.programCard > div > span { color: var(--orange); font-size: .76rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.programCard h3 { margin: 12px 0; font-size: 2.35rem; letter-spacing: -.04em; }
.programCard p { color: var(--muted); line-height: 1.7; }
.programNavy p { color: rgba(255,255,255,.7); }
.programNavy .textLink { color: var(--orange); }
.faithSection { min-height: 700px; display: grid; grid-template-columns: 1.04fr .96fr; color: #fff; background: linear-gradient(rgba(0,38,61,.34), rgba(0,38,61,.34)), var(--orange); }
.faithImage { min-height: 540px; position: relative; }
.faithCopy { padding: 90px max(40px, calc((100vw - 1200px) / 2)) 90px 76px; display: flex; flex-direction: column; justify-content: center; }
.faithCopy h2 { font-size: clamp(3rem, 4.8vw, 5rem); }
.faithCopy p { margin: 22px 0 0; color: rgba(255,255,255,.84); line-height: 1.76; font-size: 1.04rem; }
.faithCopy .button { align-self: flex-start; margin-top: 30px; }
.experienceGrid { display: grid; grid-template-columns: .86fr 1.14fr; gap: 78px; align-items: center; }
.experienceGrid h2 { margin: 20px 0; font-size: clamp(2.8rem, 4.6vw, 4.8rem); line-height: 1; letter-spacing: -.05em; }
.tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.tags span { padding: 10px 14px; border: 1px solid rgba(0,38,61,.20); border-radius: 99px; color: var(--navy); font-size: .74rem; font-weight: 800; }
.mosaic { display: grid; grid-template-columns: 1fr 1fr; grid-template-rows: 275px 275px; gap: 12px; }
.mosaic > div { position: relative; overflow: hidden; }
.mosaicTall { grid-row: 1 / 3; }
.historySection { padding: 112px 0; background: var(--soft); }
.historyGrid { display: grid; grid-template-columns: .64fr 1.36fr; gap: 90px; align-items: center; }
.historyNumber { color: var(--orange); line-height: .8; }
.historyNumber strong { display: block; font-size: clamp(8rem, 16vw, 14rem); letter-spacing: -.1em; }
.historyNumber span { display: block; margin: 22px 0 0 12px; color: var(--navy); font-size: .82rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.proofSection { padding: 96px 0; color: #fff; background: var(--navy-dark); }
.proofGrid { align-items: center; }
.proofGrid p { color: rgba(255,255,255,.7); }
.faqGrid { grid-template-columns: .72fr 1.28fr; }
.faqList details { border-top: 1px solid var(--line); }
.faqList details:last-child { border-bottom: 1px solid var(--line); }
.faqList summary { min-height: 78px; display: flex; justify-content: space-between; align-items: center; gap: 30px; padding: 18px 8px; color: var(--navy); font-weight: 850; cursor: pointer; list-style: none; }
.faqList summary::-webkit-details-marker { display: none; }
.faqList summary span { color: var(--orange); font-size: 1.4rem; transition: transform .2s; }
.faqList details[open] summary span { transform: rotate(45deg); }
.faqList details p { margin: 0; padding: 0 48px 24px 8px; color: var(--muted); line-height: 1.7; }

/* Forms */
.formSection { padding: 112px 0; background: var(--soft); scroll-margin-top: 110px; }
.formLayout { display: grid; grid-template-columns: .75fr 1.25fr; gap: 70px; align-items: start; }
.formSide { position: sticky; top: 130px; }
.formSide h2 { font-size: clamp(2.8rem, 4.2vw, 4.4rem); }
.formSide > p { margin-top: 24px; }
.formSide ul { margin: 30px 0 0; padding: 0; display: grid; gap: 12px; list-style: none; }
.formSide li { display: flex; align-items: center; gap: 10px; color: var(--navy); font-weight: 750; }
.formSide li::before { content: "✓"; color: var(--orange); font-weight: 900; }
.leadForm { padding: 42px; background: #fff; box-shadow: var(--shadow); }
.formIntro h2 { margin: 16px 0 0; font-size: clamp(2rem, 3vw, 3rem); line-height: 1.08; letter-spacing: -.04em; }
.formIntro p { margin: 10px 0 0; color: var(--muted); }
.formGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 30px; }
.honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.formGrid label { display: grid; gap: 8px; color: var(--navy); font-size: .78rem; font-weight: 850; }
.formGrid input, .formGrid select, .formGrid textarea { width: 100%; border: 1px solid rgba(0,38,61,.24); border-radius: 3px; background: #fff; color: var(--ink); padding: 13px 14px; font-size: .93rem; }
.formGrid input, .formGrid select { min-height: 50px; }
.formGrid textarea { resize: vertical; }
.formGrid input:hover, .formGrid select:hover, .formGrid textarea:hover { border-color: var(--navy); }
.fullField { grid-column: 1 / -1; }
.consent { display: flex; align-items: flex-start; gap: 10px; margin-top: 22px; color: var(--muted); font-size: .77rem; line-height: 1.55; }
.consent input { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 2px; accent-color: var(--orange); }
.consent a { color: var(--navy); text-decoration: underline; }
.formSubmit { width: 100%; margin-top: 22px; }
.formPrivacy { margin: 12px 0 0; color: var(--muted); font-size: .73rem; text-align: center; }
.formError { margin: 16px 0 0; color: #f15a22; font-size: .82rem; font-weight: 800; line-height: 1.55; }
.formError a { color: var(--navy); text-decoration: underline; }
.formSubmit:disabled { cursor: wait; opacity: .72; transform: none; }

/* Inner pages */
.innerHero { color: #fff; background: var(--navy-dark); }
.innerHeroCopy { min-height: 600px; padding: 86px 0; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.innerHeroCopy h1 { max-width: 980px; margin: 24px 0; font-size: clamp(3.4rem, 6.5vw, 7rem); line-height: .94; letter-spacing: -.06em; }
.innerHeroCopy > p { max-width: 720px; margin: 0 0 28px; color: rgba(255,255,255,.74); font-size: 1.12rem; line-height: 1.75; }
.innerHeroImage { position: relative; height: clamp(360px, 46vw, 620px); overflow: hidden; }
.innerHeroImage img { object-position: center 43%; }
.contentSection { padding: 108px 0; }
.contentTint { background: var(--soft); }
.contentGrid { display: grid; grid-template-columns: .82fr 1.18fr; gap: 90px; align-items: start; }
.contentGrid h2 { margin: 20px 0 0; font-size: clamp(2.7rem, 4.7vw, 4.8rem); line-height: 1.02; letter-spacing: -.052em; }
.largeCopy { margin: 0; color: var(--muted); font-size: 1.1rem; line-height: 1.84; }
.miniGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 36px; }
.miniGrid article { min-height: 220px; padding: 26px; border: 1px solid var(--line); background: rgba(255,255,255,.7); }
.miniGrid article > span { color: var(--orange); font-size: .78rem; font-weight: 900; }
.miniGrid h3 { margin: 38px 0 10px; color: var(--navy); font-size: 1.25rem; }
.miniGrid p { margin: 0; color: var(--muted); font-size: .88rem; line-height: 1.6; }
.contentGrid blockquote { margin: 34px 0 0; padding: 26px; color: #fff; background: var(--navy); font-size: 1.2rem; font-weight: 800; line-height: 1.55; }

/* LP */
.lpHero { min-height: 690px; position: relative; display: flex; align-items: center; color: #fff; background: var(--navy-dark); }
.lpImage, .lpOverlay { position: absolute; inset: 0; }
.lpImage { z-index: 0; }
.lpImage img { object-position: center 40%; }
.lpOverlay { z-index: 1; background: linear-gradient(90deg, rgba(0,38,61,.98) 0%, rgba(0,38,61,.9) 48%, rgba(0,38,61,.48) 68%, rgba(0,38,61,.08) 100%); }
.lpCopy { position: relative; z-index: 2; padding-block: 90px; }
.lpCopy h1 { max-width: 820px; margin: 22px 0; font-size: clamp(3.25rem, 6.3vw, 6.6rem); line-height: .95; letter-spacing: -.06em; }
.lpCopy p { max-width: 650px; color: rgba(255,255,255,.78); font-size: 1.12rem; line-height: 1.7; }
.lpCopy .button { margin-top: 18px; }
.lpCopy small { display: block; margin-top: 12px; color: rgba(255,255,255,.66); }
.lpTrust { color: #fff; background: var(--orange); }
.lpTrust > div { min-height: 78px; display: grid; grid-template-columns: repeat(4, 1fr); align-items: center; }
.lpTrust span { padding: 10px 24px; border-left: 1px solid rgba(255,255,255,.28); font-size: .82rem; font-weight: 900; text-align: center; }
.lpTrust span:first-child { border-left: 0; }
.lpArgument { padding: 110px 0; }

/* CTA and footer */
.visitCta { position: relative; overflow: hidden; color: #fff; background: linear-gradient(rgba(0,38,61,.34), rgba(0,38,61,.34)), var(--orange); }
.visitCtaInner { min-height: 480px; position: relative; display: flex; align-items: center; justify-content: space-between; gap: 70px; padding-block: 80px; }
.visitCtaInner > div { max-width: 780px; }
.visitCta p { max-width: 650px; color: rgba(255,255,255,.84); line-height: 1.75; }
.visitCta .button { flex: 0 0 auto; }
.footer { color: #fff; background: var(--navy-dark); }
.footerGrid { display: grid; grid-template-columns: 1.35fr 1fr 1fr 1fr; gap: 50px; padding-block: 72px; }
.footerBrand img { width: 170px; height: auto; object-fit: contain; }
.footerBrand p { max-width: 280px; margin: 16px 0 0; color: rgba(255,255,255,.58); font-size: .84rem; line-height: 1.6; }
.footerGrid > div:not(.footerBrand) { display: flex; flex-direction: column; gap: 11px; }
.footerGrid strong { margin-bottom: 8px; color: var(--orange); font-size: .82rem; letter-spacing: .08em; text-transform: uppercase; }
.footerGrid a { color: rgba(255,255,255,.68); font-size: .82rem; line-height: 1.4; }
.footerGrid a:hover { color: #fff; }
.footerBottom { min-height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.45); font-size: .74rem; }
.mobileVisit { display: none; }

/* Consent, thanks and legal */
.cookie { position: fixed; z-index: 300; right: 24px; bottom: 24px; width: min(720px, calc(100% - 48px)); display: grid; grid-template-columns: 1fr auto; gap: 22px; align-items: center; padding: 22px; background: #fff; border: 1px solid var(--line); box-shadow: 0 20px 70px rgba(0,38,61,.22); }
.cookie strong { color: var(--navy); }
.cookie p { margin: 6px 0 0; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.cookieActions { display: flex; gap: 8px; }
.cookie .button { min-height: 46px; padding-inline: 15px; font-size: .75rem; }
.legalPage { padding: 90px 0 120px; }
.legalContent { max-width: 850px; }
.legalContent h1 { margin: 22px 0; font-size: clamp(3rem, 6vw, 6rem); letter-spacing: -.055em; }
.legalContent h2 { margin: 42px 0 12px; color: var(--navy); font-size: 1.45rem; }
.legalContent p { color: var(--muted); line-height: 1.78; }
.thanksPage, .notFound { min-height: 78vh; display: grid; place-items: center; padding: 70px 24px; background: var(--soft); }
.thanksCard, .notFound > div { width: min(700px, 100%); padding: 56px; background: #fff; box-shadow: var(--shadow); }
.thanksIcon { width: 58px; height: 58px; display: grid; place-items: center; margin-bottom: 25px; border-radius: 50%; color: #fff; background: var(--orange); font-size: 1.5rem; font-weight: 900; }
.thanksCard h1, .notFound h1 { margin: 18px 0; font-size: clamp(2.8rem, 6vw, 5.3rem); line-height: .98; letter-spacing: -.055em; }
.thanksCard > p, .notFound p { color: var(--muted); line-height: 1.7; }
.thanksCard > small { display: block; margin-top: 12px; color: var(--muted); }
.nextSteps { margin: 32px 0; padding: 25px; background: var(--soft); }
.nextSteps strong { color: var(--navy); }
.nextSteps ol { margin: 14px 0 0; padding-left: 20px; color: var(--muted); line-height: 1.8; }

@media (max-width: 1020px) {
  .nav { gap: 15px; font-size: .74rem; }
  .conversionHeroGrid { gap: 34px; }
  .conversionHeroCopy h1 { font-size: clamp(3.1rem, 5.8vw, 5rem); }
  .decisionIntro, .visitProofGrid { gap: 60px; }
  .parentQuestionGrid { grid-template-columns: 1fr 1fr; }
  .routineLayout { gap: 52px; }
  .faithSalesCopy { padding-left: 52px; }
  .localHistoryGrid { gap: 54px; }
  .heroPanel { gap: 52px; }
  .conflictGrid, .contentGrid, .proofGrid, .faqGrid { gap: 60px; }
  .faithCopy { padding-left: 52px; }
  .experienceGrid { gap: 50px; }
  .formLayout { gap: 45px; }
  .footerGrid { grid-template-columns: 1.25fr 1fr 1fr; }
  .footerBrand { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  :root { --shell: min(100% - 40px, 720px); }
  .header { height: 76px; }
  .brand img { width: 128px; height: 52px; }
  .menuButton { display: block; }
  .nav { display: none; position: absolute; top: 76px; left: 0; right: 0; padding: 26px; flex-direction: column; align-items: stretch; gap: 20px; background: var(--navy-dark); box-shadow: 0 20px 40px rgba(0,38,61,.15); }
  .navOpen { display: flex; }
  .navCta { justify-content: center; }
  .conversionHeroGrid { min-height: auto; grid-template-columns: 1fr; gap: 0; }
  .conversionHeroCopy { padding: 72px 0 58px; }
  .conversionHeroCopy h1 { max-width: 680px; font-size: clamp(3.2rem, 9.1vw, 5.4rem); }
  .conversionHeroVisual { min-height: 520px; margin: 0 calc((100vw - min(100% - 40px, 720px)) / -2); }
  .conversionHeroVisual::before { background: linear-gradient(0deg, rgba(0,38,61,.52), transparent 48%); }
  .heroSeal { right: 24px; }
  .heroFacts { grid-template-columns: 1fr 1fr; }
  .heroFacts div:nth-child(3) { padding-left: 0; border-left: 0; border-top: 1px solid rgba(255,255,255,.14); }
  .heroFacts div:nth-child(4) { border-top: 1px solid rgba(255,255,255,.14); }
  .decisionSection, .completeFormation, .stagesSection, .routineSection, .localHistorySection { padding: 84px 0; }
  .decisionIntro, .routineLayout, .visitProofGrid, .localHistoryGrid { grid-template-columns: 1fr; gap: 42px; }
  .parentQuestionGrid { margin-top: 46px; }
  .formationPillars { grid-template-columns: 1fr; }
  .formationPillars article { min-height: 275px; }
  .formationPillars h3 { margin-top: 42px; }
  .stageCards { grid-template-columns: 1fr; }
  .routineHeading { position: static; }
  .faithSalesSection { grid-template-columns: 1fr; }
  .faithSalesImage { min-height: 500px; }
  .faithSalesImage::after { background: linear-gradient(0deg, rgba(241,90,34,.34), transparent 38%); }
  .faithSalesCopy { padding: 78px 24px; }
  .localHistoryPhoto { height: 540px; }
  .visitProofSection { padding: 84px 0; }
  .heroPhoto { height: 470px; }
  .heroPanel, .conflictGrid, .experienceGrid, .historyGrid, .proofGrid, .faqGrid, .contentGrid, .formLayout { grid-template-columns: 1fr; }
  .heroPanel { gap: 36px; }
  .trustBar { grid-template-columns: 1fr 1fr; }
  .trustBar span:nth-child(3) { border-left: 0; padding-left: 0; border-top: 1px solid var(--line); }
  .trustBar span:nth-child(4) { border-top: 1px solid var(--line); }
  .conflictSection, .programsSection, .experienceSection, .faqSection, .contentSection, .formSection { padding: 82px 0; }
  .dimensionGrid { grid-template-columns: 1fr; }
  .dimensionGrid article { min-height: 240px; }
  .dimensionGrid h3 { margin-top: 44px; }
  .programGrid { grid-template-columns: 1fr; }
  .faithSection { grid-template-columns: 1fr; }
  .faithImage { min-height: 480px; }
  .faithCopy { padding: 78px 24px; }
  .historyNumber strong { font-size: 9rem; }
  .formSide { position: static; }
  .innerHeroCopy { min-height: 520px; padding: 72px 0; }
  .innerHeroCopy h1 { font-size: clamp(3.3rem, 9.5vw, 5.7rem); }
  .lpHero { min-height: 660px; }
  .lpOverlay { background: linear-gradient(90deg, rgba(0,38,61,.96), rgba(0,38,61,.74)); }
  .lpTrust > div { grid-template-columns: 1fr 1fr; }
  .lpTrust span:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.25); }
  .lpTrust span:nth-child(4) { border-top: 1px solid rgba(255,255,255,.25); }
  .visitCtaInner { flex-direction: column; align-items: flex-start; }
  .cookie { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  :root { --shell: calc(100% - 32px); }
  body { padding-bottom: 70px; }
  .topbar { min-height: 30px; padding-inline: 12px; font-size: .56rem; }
  .header { padding-inline: 16px; }
  .conversionHeroCopy { padding: 58px 0 48px; }
  .conversionHeroCopy h1 { margin-block: 18px 20px; font-size: clamp(2.75rem, 13vw, 3.65rem); line-height: .98; }
  .conversionHeroCopy > p { font-size: 1rem; }
  .heroReassurance { display: grid; }
  .conversionHeroVisual { min-height: 390px; margin-inline: -16px; }
  .conversionHeroVisual img { object-position: center 36%; }
  .heroSeal { right: 16px; bottom: 18px; width: 184px; padding: 15px 16px; }
  .heroFacts { padding-bottom: 10px; }
  .heroFacts div { min-height: 86px; padding: 14px 10px; }
  .heroFacts div:nth-child(3) { padding-left: 0; }
  .heroFacts strong { font-size: .92rem; }
  .heroFacts span { font-size: .68rem; }
  .decisionSection, .completeFormation, .stagesSection, .routineSection, .localHistorySection { padding: 72px 0; }
  .decisionIntro h2, .routineHeading h2, .faithSalesCopy h2, .localHistoryCopy h2, .visitProofGrid h2 { font-size: 2.65rem; }
  .decisionIntro { gap: 30px; }
  .parentQuestionGrid { grid-template-columns: 1fr; gap: 9px; }
  .parentQuestionGrid article { min-height: 150px; }
  .formationPillars article { min-height: 255px; padding: 28px; }
  .stageImage { height: 280px; }
  .stageContent { padding: 28px 24px; }
  .stageContent h3 { font-size: 2.05rem; }
  .routineGrid { grid-template-columns: 1fr; }
  .routineGrid article { min-height: 200px; }
  .faithSalesImage { min-height: 360px; }
  .faithSalesCopy { padding: 66px 16px; }
  .localHistoryPhoto { height: 390px; }
  .historySince { font-size: 5.4rem; }
  .visitProofGrid { gap: 28px; }
  .heroPhoto { height: 360px; }
  .heroPhoto img { object-position: 54% center; }
  .heroPanel { padding-block: 48px 40px; }
  .heroPanel h1 { font-size: 3rem; }
  .heroSide > p { font-size: 1rem; }
  .heroButtons { flex-direction: column; width: 100%; }
  .heroButtons .button { width: 100%; }
  .trustBar { padding-block: 12px; }
  .trustBar span { padding: 15px 12px; }
  .trustBar span:nth-child(3) { padding-left: 0; }
  .conflictGrid h2, .sectionHeading h2, .faithCopy h2, .historyGrid h2, .proofGrid h2, .faqGrid h2, .formSide h2, .visitCta h2, .contentGrid h2 { font-size: 2.7rem; }
  .conflictGrid { gap: 34px; }
  .dimensionSection, .historySection, .proofSection { padding: 78px 0; }
  .sectionHeading { margin-bottom: 40px; }
  .dimensionGrid article { padding: 28px; }
  .programImage { height: 280px; }
  .programCard > div:last-child { padding: 27px; }
  .faithImage { min-height: 360px; }
  .faithCopy { padding: 66px 16px; }
  .mosaic { grid-template-rows: 190px 190px; }
  .historyGrid { gap: 34px; }
  .historyNumber strong { font-size: 7rem; }
  .formLayout { gap: 34px; }
  .leadForm { padding: 26px 20px; }
  .formGrid { grid-template-columns: 1fr; gap: 16px; }
  .fullField { grid-column: auto; }
  .innerHeroCopy { min-height: 500px; }
  .innerHeroCopy h1 { font-size: 3.25rem; }
  .innerHeroImage { height: 330px; }
  .contentGrid { gap: 32px; }
  .miniGrid { grid-template-columns: 1fr; }
  .miniGrid article { min-height: 190px; }
  .lpHero { min-height: 640px; }
  .lpCopy h1 { font-size: 3.25rem; }
  .lpArgument { padding: 78px 0; }
  .visitCtaInner { min-height: 440px; }
  .footerGrid { grid-template-columns: 1fr; padding-block: 60px; }
  .footerBrand { grid-column: auto; }
  .footerBottom { padding-block: 20px; flex-direction: column; align-items: flex-start; justify-content: center; }
  .mobileVisit { position: fixed; z-index: 200; left: 0; right: 0; bottom: 0; min-height: 68px; display: flex; align-items: center; justify-content: center; gap: 22px; padding: 12px 18px; color: var(--navy-dark); background: var(--orange); border-top: 1px solid rgba(0,38,61,.12); font-size: .9rem; font-weight: 900; }
  .cookie { right: 12px; bottom: 82px; width: calc(100% - 24px); padding: 18px; }
  .cookieActions { flex-direction: column-reverse; }
  .cookie .button { width: 100%; }
  .thanksCard, .notFound > div { padding: 36px 24px; }
}

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

/* Static HTML compatibility */
.conversionHeroVisual > img,
.stageImage > img,
.faithSalesImage > img,
.localHistoryPhoto > img,
.innerHeroImage > img,
.lpImage > img,
.programImage > img,
.faithImage > img,
.mosaic > div > img {
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
}
.brand img, .footerBrand img { display:block; }
.staticNotice { padding: 10px 16px; background:#ffffff; color:#00263d; font-size:.78rem; text-align:center; }


/* =========================================================
   AGNUS APROVA 2027 — AJUSTES DO PDF
   Cores oficiais: #f15a22 / #00263d
   ========================================================= */
.agnusAprovaPage { background:#fff; }
.agnusAprovaPage .topbar { background:var(--orange); color:#fff; }
.agnusAprovaPage .header { background:#00263d; }
.agnusAprovaPage .navCta { background:var(--orange); color:#fff !important; }
.agnusAprovaPage h1,.agnusAprovaPage h2,.agnusAprovaPage h3 { font-family:Inter,"Avenir Next","Helvetica Neue","Segoe UI",Arial,sans-serif; font-weight:700; }
.agnusAprovaPage .buttonPrimary { background:var(--orange); color:#fff; border-color:var(--orange); }
.agnusAprovaPage .buttonPrimary:hover { background:#00263d; border-color:#00263d; }

.adjustedHero { background:#fff; }
.adjustedHeroImage { width:100%; height:clamp(470px,56vw,760px); overflow:hidden; background:var(--navy); }
.adjustedHeroImage img { width:100%; height:100%; object-fit:cover; object-position:center center; display:block; }
.adjustedHeroPanel { display:grid; grid-template-columns:1.05fr .95fr; gap:90px; align-items:end; padding-block:64px 66px; }
.adjustedHeroPanel h1 { margin:20px 0 0; color:var(--navy); font-size:clamp(3.5rem,6vw,6.6rem); line-height:.94; letter-spacing:-.06em; }
.adjustedHeroPanel h1 em { display:block; color:var(--orange); font-style:normal; }
.adjustedHeroSide p { margin:0 0 28px; color:#00263d; font-size:1.08rem; line-height:1.78; }

.identitySection { padding:104px 0; border-top:1px solid rgba(0,38,61,.16); }
.identityGrid { display:grid; grid-template-columns:.92fr 1.08fr; gap:120px; align-items:center; }
.identityGrid h2 { margin:22px 0 0; color:var(--navy); font-size:clamp(3.4rem,5.3vw,5.8rem); line-height:1; letter-spacing:-.055em; }
.identityGrid > div:last-child p { max-width:690px; margin:0; color:#00263d; font-size:1.08rem; line-height:1.9; }

.atmosphereSection { display:grid; grid-template-columns:1.07fr .93fr; min-height:650px; background:var(--navy); color:#fff; }
.atmosphereImage { min-height:650px; overflow:hidden; }
.atmosphereImage img { width:100%; height:100%; object-fit:cover; object-position:center center; }
.atmosphereCopy { display:flex; flex-direction:column; justify-content:center; padding:82px max(42px,calc((100vw - 1200px)/2)) 82px 76px; }
.atmosphereCopy h2 { max-width:650px; margin:24px 0 22px; font-size:clamp(3.1rem,4.7vw,5.4rem); line-height:1; letter-spacing:-.055em; }
.atmosphereCopy p { max-width:620px; margin:0; color:rgba(255,255,255,.8); font-size:1.04rem; line-height:1.82; }
.atmosphereCopy blockquote { max-width:590px; margin:34px 0 0; padding:20px 0 20px 24px; border-left:4px solid var(--orange); font-size:1.18rem; font-weight:800; line-height:1.55; }

.campaignStages { padding:78px 0 100px; background:#fff; }
.campaignLogoWrap { width:min(720px,92%); margin:0 auto 48px; }
.campaignLogoWrap img { width:100%; height:auto; display:block; object-fit:contain; }
.stageRows { border-top:1px solid rgba(0,38,61,.16); }
.stageRow { min-height:132px; display:grid; grid-template-columns:70px 1fr 30px; gap:28px; align-items:center; padding:26px 12px; border-bottom:1px solid rgba(0,38,61,.16); transition:background .2s ease; }
.stageRow:hover { background:rgba(241,90,34,.05); }
.stageIndex { color:var(--orange); font-size:1rem; font-weight:900; }
.stageRow h3 { margin:0 0 10px; color:var(--navy); font-size:1.75rem; letter-spacing:-.03em; }
.stageRow p { margin:0; color:#00263d; }
.stageRow b { color:var(--orange); font-size:1.45rem; }

.dnaSection { padding:108px 0; background:var(--navy); color:#fff; }
.dnaHeading { margin:0 auto 58px; text-align:center; }
.dnaHeading .eyebrow { justify-content:center; }
.dnaHeading h2 { margin:22px auto 0; font-size:clamp(3rem,5vw,5.8rem); line-height:1.02; letter-spacing:-.055em; }
.dnaHeading h2 em { color:var(--orange); font-style:normal; }
.dnaCards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.dnaCards article { min-height:310px; padding:34px; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.035); }
.dnaCards article > span { color:var(--orange); font-weight:900; }
.dnaCards h3 { margin:78px 0 14px; font-size:1.55rem; }
.dnaCards p { margin:0; color:rgba(255,255,255,.72); line-height:1.72; }

.adjustedExperience { padding:112px 0; background:#fff; }
.adjustedExperienceGrid { display:grid; grid-template-columns:.86fr 1.14fr; gap:82px; align-items:center; }
.adjustedExperienceGrid h2 { margin:20px 0; color:var(--navy); font-size:clamp(3rem,4.9vw,5.2rem); line-height:1; letter-spacing:-.055em; }
.adjustedExperienceGrid > div:first-child > p { color:#00263d; font-size:1.02rem; line-height:1.82; }
.adjustedExperience .tags span { border-color:rgba(0,38,61,.20); color:var(--navy); background:#fff; }
.adjustedExperience .mosaic img { width:100%; height:100%; object-fit:cover; }

.historyAdjusted { padding:104px 0; background:#ffffff; }
.historyAdjustedGrid { display:grid; grid-template-columns:.72fr 1.28fr; gap:90px; align-items:center; }
.historyYear { color:var(--orange); font-size:clamp(7rem,13vw,13rem); font-weight:800; line-height:.8; letter-spacing:-.08em; }
.historyAdjusted h2 { margin:20px 0 28px; color:var(--navy); font-size:clamp(3rem,4.7vw,5.1rem); line-height:1.02; letter-spacing:-.055em; }
.historyAdjusted p { margin:0 0 12px; color:#00263d; font-size:1.02rem; line-height:1.78; }

.plainOrangeCta { padding:0; background:var(--orange); color:#fff; }
.plainOrangeCtaGrid { min-height:470px; display:grid; grid-template-columns:1.1fr .9fr; gap:70px; align-items:center; padding-block:72px; }
.plainOrangeCta h2 { max-width:760px; margin:20px 0; font-size:clamp(3.2rem,5.4vw,6rem); line-height:.98; letter-spacing:-.06em; }
.plainOrangeCta p { max-width:650px; color:rgba(255,255,255,.88); line-height:1.75; }
.plainOrangeCta .button { margin-top:16px; }
.ctaLogo { display:grid; place-items:center; }
.ctaLogo img { width:min(390px,85%); height:auto; object-fit:contain; }

/* PDF requested a flat final CTA, without texture. */
.plainOrangeCta::before,.plainOrangeCta::after { display:none !important; content:none !important; }

.simpleFooterGrid { grid-template-columns:1fr 1.4fr; align-items:center; padding-block:58px; }
.simpleFooterGrid .footerBrand { grid-column:auto; }
.footerContacts { display:flex !important; flex-direction:row !important; flex-wrap:wrap; align-items:center; gap:10px 14px !important; }
.footerContacts strong { width:100%; margin:0 0 6px; color:var(--orange); }
.footerContacts a,.footerContacts p,.footerContacts span { color:rgba(255,255,255,.82); font-size:.9rem; }
.footerContacts p { width:100%; margin:8px 0 0; line-height:1.65; }
.footerContacts > a:last-child { width:100%; margin-top:4px; color:#fff; font-weight:800; }
.footerSep { opacity:.5; }
.footerBottom { color:rgba(255,255,255,.48); }
.footerGrid strong { color:var(--orange); }

/* Remove old decorative textures and any yellow-like treatment on the adjusted home. */
.agnusAprovaPage .completeFormation::before,.agnusAprovaPage .dimensionSection::before,.agnusAprovaPage .visitCta::before { display:none; }

@media (max-width: 900px) {
  .adjustedHeroImage { height:clamp(420px,78vw,620px); }
  .adjustedHeroPanel,.identityGrid,.adjustedExperienceGrid,.historyAdjustedGrid,.plainOrangeCtaGrid { grid-template-columns:1fr; gap:42px; }
  .adjustedHeroPanel { align-items:start; padding-block:46px 54px; }
  .identityGrid { gap:34px; }
  .atmosphereSection { grid-template-columns:1fr; }
  .atmosphereImage { min-height:520px; }
  .atmosphereCopy { padding:62px var(--mobile-pad,30px); }
  .dnaCards { grid-template-columns:1fr; }
  .dnaCards article { min-height:240px; }
  .dnaCards h3 { margin-top:42px; }
  .historyYear { font-size:7rem; }
  .plainOrangeCtaGrid { min-height:auto; }
  .ctaLogo { justify-content:start; }
  .simpleFooterGrid { grid-template-columns:1fr; gap:32px; }
}
@media (max-width: 620px) {
  .adjustedHeroImage { height:390px; }
  .adjustedHeroPanel h1 { font-size:3.25rem; }
  .identitySection,.dnaSection,.adjustedExperience,.historyAdjusted,.campaignStages { padding-block:74px; }
  .identityGrid h2,.atmosphereCopy h2,.adjustedExperienceGrid h2,.historyAdjusted h2,.plainOrangeCta h2 { font-size:2.9rem; }
  .campaignLogoWrap { width:100%; margin-bottom:28px; }
  .stageRow { grid-template-columns:46px 1fr 22px; gap:12px; padding-inline:0; }
  .stageRow h3 { font-size:1.35rem; }
  .stageRow p { font-size:.88rem; line-height:1.55; }
  .adjustedExperienceGrid { gap:38px; }
  .mosaic { grid-template-rows:210px 210px; }
  .historyYear { font-size:6rem; }
  .footerContacts { align-items:flex-start; }
}


/* ============================================================
   V10 — FIDELIDADE ABSOLUTA AO PDF DE AJUSTES
   Paleta oficial indicada no PDF: laranja #F15A22 e azul #00263D.
   Branco é usado apenas como base neutra/contraste.
   ============================================================ */
.agnusAprovaPage { --navy:#00263d; --navy-dark:#00263d; --orange:#f15a22; --sky:#f15a22; --gold:#f15a22; --ink:#00263d; --muted:#00263d; --white:#fff; }
.agnusAprovaPage .header { background:#00263d !important; }
.agnusAprovaPage .topbar { background:#f15a22 !important; color:#fff !important; }
.agnusAprovaPage .navCta { background:#f15a22 !important; color:#fff !important; }
.agnusAprovaPage .buttonPrimary { background:#f15a22 !important; border-color:#f15a22 !important; color:#fff !important; }
.agnusAprovaPage .buttonPrimary:hover { background:#00263d !important; border-color:#00263d !important; color:#fff !important; }
.agnusAprovaPage .buttonOutline { color:#00263d !important; border-color:rgba(0,38,61,.35) !important; }
.agnusAprovaPage .buttonOutline:hover { color:#f15a22 !important; border-color:#f15a22 !important; }
.agnusAprovaPage .eyebrow { color:#f15a22; }
.agnusAprovaPage .eyebrowLight { color:#fff; }
.agnusAprovaPage .identitySection,
.agnusAprovaPage .campaignStages,
.agnusAprovaPage .adjustedExperience,
.agnusAprovaPage .historyAdjusted { background:#fff !important; }
.agnusAprovaPage .atmosphereSection,
.agnusAprovaPage .dnaSection,
.agnusAprovaPage .footer { background:#00263d !important; }
.agnusAprovaPage .plainOrangeCta { background:#f15a22 !important; background-image:none !important; }
.agnusAprovaPage .plainOrangeCta::before,
.agnusAprovaPage .plainOrangeCta::after { display:none !important; background:none !important; }
.agnusAprovaPage .adjustedHeroSide p,
.agnusAprovaPage .identityGrid > div:last-child p,
.agnusAprovaPage .stageRow p,
.agnusAprovaPage .adjustedExperienceGrid > div:first-child > p,
.agnusAprovaPage .historyAdjusted p { color:#00263d !important; opacity:.72; }
.agnusAprovaPage .identitySection { border-top-color:rgba(0,38,61,.16) !important; }
.agnusAprovaPage .stageRows,
.agnusAprovaPage .stageRow { border-color:rgba(0,38,61,.16) !important; }
.agnusAprovaPage .stageRow:hover { background:rgba(241,90,34,.05) !important; }
.agnusAprovaPage .adjustedExperience .tags span { background:#fff !important; color:#00263d !important; border-color:rgba(0,38,61,.22) !important; }
.agnusAprovaPage .historyYear { color:#f15a22 !important; }
.agnusAprovaPage .footerContacts strong { color:#f15a22 !important; }
.agnusAprovaPage .mobileVisit { background:#f15a22 !important; color:#fff !important; }
