:root {
  --navy: #06122f;
  --navy-2: #0a1a43;
  --navy-3: #102553;
  --gold: #d6a254;
  --gold-2: #efc477;
  --cream: #f6f1e8;
  --soft: #f7f8fb;
  --paper: #ffffff;
  --ink: #0b1735;
  --muted: #667085;
  --line: #e5e8ee;
  --container: 1180px;
  --shadow: 0 24px 70px rgba(6,18,47,.12);
  --shadow-sm: 0 12px 35px rgba(6,18,47,.08);
  --radius: 22px;
  --radius-lg: 34px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: "Manrope", "Aptos", "Segoe UI", Arial, sans-serif; color: var(--ink); background: var(--paper); font-size: 16px; line-height: 1.7; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
::selection { background: var(--gold); color: var(--navy); }

.container { width: min(calc(100% - 48px), var(--container)); margin-inline: auto; }
.section { padding: 118px 0; position: relative; }
.section-white { background: var(--paper); }
.section-soft { background: var(--soft); }
.section-heading { margin-bottom: 52px; }
.section-heading.center { max-width: 760px; text-align: center; margin-inline: auto; }
.split-heading { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .7fr); gap: 80px; align-items: end; }

h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.1; letter-spacing: -.035em; color: var(--ink); }
h1 { font-size: clamp(2.75rem, 5.1vw, 4.35rem); font-weight: 750; }
h2 { font-size: clamp(2.1rem, 4vw, 3.35rem); font-weight: 750; margin-bottom: 24px; }
h3 { font-size: 1.25rem; font-weight: 750; margin-bottom: 14px; }
p { color: var(--muted); margin-bottom: 22px; }
.lead { font-size: clamp(1.02rem, 1.5vw, 1.16rem); line-height: 1.75; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 18px; color: #9b6a26; text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; font-weight: 800; }
.eyebrow::before { content: ""; width: 28px; height: 1px; background: currentColor; }
.eyebrow-light { color: var(--gold-2); }

.btn { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 12px 22px; border-radius: 999px; border: 1px solid transparent; font-size: .83rem; font-weight: 800; letter-spacing: -.01em; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease; position: relative; overflow: hidden; }
.btn::after { content: ""; position: absolute; inset: -2px; background: linear-gradient(110deg, transparent 20%, rgba(255,255,255,.45) 48%, transparent 75%); transform: translateX(-130%); transition: transform .6s ease; }
.btn:hover { transform: translateY(-2px); }
.btn:hover::after { transform: translateX(130%); }
.btn-gold { background: var(--gold); color: var(--navy); box-shadow: 0 14px 34px rgba(214,162,84,.2); }
.btn-gold:hover { background: var(--gold-2); box-shadow: 0 18px 40px rgba(214,162,84,.28); }
.btn-navy { background: var(--navy); color: white; }
.btn-navy:hover { background: var(--navy-2); box-shadow: 0 18px 38px rgba(6,18,47,.18); }
.btn-ghost { border-color: rgba(255,255,255,.28); color: white; background: rgba(255,255,255,.03); }
.btn-ghost:hover { border-color: rgba(255,255,255,.6); background: rgba(255,255,255,.07); }
.text-link { display: inline-flex; gap: 10px; align-items: center; font-size: .86rem; font-weight: 800; color: var(--navy); }
.text-link span { transition: transform .25s ease; }
.text-link:hover span { transform: translate(3px,-3px); }

.scroll-progress { position: fixed; inset: 0 0 auto; height: 3px; z-index: 1100; pointer-events: none; }
.scroll-progress span { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--gold), var(--gold-2)); box-shadow: 0 0 18px rgba(214,162,84,.8); }

.site-header { position: fixed; top: 0; left: 0; right: 0; height: 86px; z-index: 1000; transition: height .3s ease, background .3s ease, box-shadow .3s ease, backdrop-filter .3s ease; }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 36px; }
.brand { position: relative; width: 235px; height: 52px; display: flex; align-items: center; z-index: 1002; }
.brand img { position: absolute; width: 100%; height: auto; transition: opacity .25s ease; }
.brand-dark { opacity: 0; }
.main-nav { display: flex; align-items: center; gap: 25px; color: rgba(255,255,255,.78); font-size: .78rem; font-weight: 700; }
.main-nav > a:not(.btn) { position: relative; padding: 10px 0; }
.main-nav > a:not(.btn)::after { content: ""; position: absolute; height: 1px; left: 0; right: 100%; bottom: 4px; background: var(--gold); transition: right .25s ease; }
.main-nav > a:not(.btn):hover { color: white; }
.main-nav > a:not(.btn):hover::after, .main-nav > a.active::after { right: 0; }
.header-cta { min-height: 44px; padding-inline: 18px; }
.site-header.scrolled { height: 72px; background: rgba(255,255,255,.92); backdrop-filter: blur(18px); box-shadow: 0 8px 30px rgba(6,18,47,.08); }
.site-header.scrolled .brand-light { opacity: 0; }
.site-header.scrolled .brand-dark { opacity: 1; }
.site-header.scrolled .main-nav { color: #33405b; }
.site-header.scrolled .main-nav > a:not(.btn):hover { color: var(--navy); }
.menu-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; padding: 11px; z-index: 1002; }
.menu-toggle span { display: block; height: 2px; background: white; margin: 5px 0; transition: .3s ease; }
.site-header.scrolled .menu-toggle span { background: var(--navy); }

.hero { min-height: 820px; padding: 140px 0 72px; background: var(--navy); color: white; position: relative; display: flex; align-items: center; overflow: hidden; }
.hero-grid-bg { position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px); background-size: 80px 80px; mask-image: radial-gradient(circle at 70% 55%, black, transparent 75%); }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 120px; background: linear-gradient(180deg, transparent, rgba(0,0,0,.13)); }
.hero-glow { position: absolute; border-radius: 50%; filter: blur(8px); pointer-events: none; }
.hero-glow-one { width: 560px; height: 560px; right: -170px; top: -180px; background: radial-gradient(circle, rgba(214,162,84,.19), transparent 67%); animation: glowFloat 9s ease-in-out infinite; }
.hero-glow-two { width: 420px; height: 420px; left: -220px; bottom: -150px; background: radial-gradient(circle, rgba(56,92,165,.2), transparent 70%); animation: glowFloat 12s ease-in-out infinite reverse; }
@keyframes glowFloat { 50% { transform: translate3d(28px,18px,0) scale(1.05); } }
.hero-grid { display: grid; grid-template-columns: minmax(0,1.06fr) minmax(420px,.94fr); gap: 58px; align-items: center; position: relative; z-index: 2; }
.hero-copy { max-width: 690px; }
.hero h1 { color: white; margin-bottom: 26px; }
.hero h1 span { color: var(--gold-2); }
.hero-lead { max-width: 650px; color: rgba(255,255,255,.69); font-size: 1.07rem; line-height: 1.8; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 34px 0 38px; }
.hero-proof { display: flex; gap: 28px; padding-top: 28px; border-top: 1px solid rgba(255,255,255,.12); }
.hero-proof > div { display: grid; gap: 2px; }
.hero-proof strong { font-size: 1.05rem; color: white; letter-spacing: -.02em; }
.hero-proof span { font-size: .72rem; color: rgba(255,255,255,.5); }
.hero-visual { min-height: 600px; position: relative; display: flex; align-items: end; justify-content: center; }
.hero-symbol { position: absolute; width: 540px; height: 540px; right: -78px; top: 12px; opacity: .34; filter: drop-shadow(0 0 34px rgba(214,162,84,.18)); transform: rotate(-2deg); }
.hero-symbol img { width: 100%; height:100%; object-fit:contain; }
.portrait-frame { width: min(100%, 470px); height: 600px; position: relative; display: flex; align-items: end; justify-content: center; z-index: 2; }
.portrait-frame::before { content: ""; position: absolute; left: 50%; bottom: 20px; transform: translateX(-50%); width: 435px; height: 435px; border-radius: 50%; background: linear-gradient(145deg, rgba(214,162,84,.2), rgba(255,255,255,.025)); border: 1px solid rgba(214,162,84,.34); box-shadow: inset 0 0 80px rgba(214,162,84,.06); }
.portrait-frame::after { content: ""; position: absolute; left: 50%; bottom: 5px; transform: translateX(-50%); width: 380px; height: 36px; border-radius: 50%; background: rgba(0,0,0,.44); filter: blur(16px); }
.portrait-ring { position: absolute; width: 500px; height: 500px; border-radius: 50%; border: 1px solid rgba(255,255,255,.13); bottom: 0; animation: spinRing 22s linear infinite; }
.portrait-ring::before, .portrait-ring::after { content: ""; position: absolute; width: 9px; height: 9px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 18px rgba(214,162,84,.8); }
.portrait-ring::before { top: 38px; left: 75px; }
.portrait-ring::after { right: 32px; bottom: 112px; }
@keyframes spinRing { to { transform: rotate(360deg); } }
.portrait-frame > img { position: relative; z-index: 3; max-height: 590px; width: auto; filter: drop-shadow(0 25px 34px rgba(0,0,0,.36)); }
.floating-card { position: absolute; z-index: 5; display: flex; align-items: center; gap: 12px; padding: 14px 18px; border: 1px solid rgba(255,255,255,.16); border-radius: 16px; background: rgba(11,27,66,.72); backdrop-filter: blur(16px); color: white; box-shadow: 0 20px 50px rgba(0,0,0,.2); }
.card-years { left: -4px; top: 120px; display: grid; gap: 0; }
.card-years span { color: rgba(255,255,255,.56); font-size: .65rem; text-transform: uppercase; letter-spacing: .12em; }
.card-years strong { color: var(--gold-2); font-size: 1.7rem; line-height: 1.15; }
.card-vision { right: -18px; bottom: 94px; font-size: .72rem; line-height: 1.45; color: rgba(255,255,255,.62); }
.card-vision i { width: 10px; height: 10px; border-radius: 50%; background: var(--gold); box-shadow: 0 0 0 6px rgba(214,162,84,.12); }
.card-vision strong { color: white; }
.scroll-cue { position: absolute; z-index: 3; bottom: 28px; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 7px; color: rgba(255,255,255,.4); font-size: .62rem; text-transform: uppercase; letter-spacing: .16em; }
.scroll-cue span { width: 1px; height: 30px; background: linear-gradient(var(--gold), transparent); animation: scrollCue 1.8s ease infinite; }
@keyframes scrollCue { 50% { transform: translateY(8px); } }

.signal-strip { overflow: hidden; border-bottom: 1px solid var(--line); background: white; }
.signal-track { width: max-content; display: flex; align-items: center; gap: 26px; padding: 19px 0; animation: marquee 32s linear infinite; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; color: #4b5874; }
.signal-track span { white-space: nowrap; }
.signal-track i { width: 5px; height: 5px; border-radius: 50%; background: var(--gold); }
@keyframes marquee { to { transform: translateX(-50%); } }

.about-grid { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 95px; align-items: center; }
.image-stack { min-height: 650px; position: relative; }
.image-main { position: absolute; inset: 0 80px 80px 0; margin: 0; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow); }
.image-main img { width: 100%; height: 100%; object-fit: cover; object-position: center 24%; }
.image-main::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(6,18,47,.25)); }
.image-secondary { position: absolute; right: 0; bottom: 0; width: 210px; height: 300px; margin: 0; border: 8px solid white; border-radius: 22px; overflow: hidden; box-shadow: var(--shadow-sm); }
.image-secondary img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.experience-seal { position: absolute; left: -24px; bottom: 24px; z-index: 3; width: 155px; height: 155px; border-radius: 50%; background: var(--gold); color: var(--navy); display: grid; place-content: center; text-align: center; padding: 20px; box-shadow: 0 20px 45px rgba(214,162,84,.28); }
.experience-seal strong { font-size: 2.1rem; line-height: 1; }
.experience-seal span { font-size: .66rem; line-height: 1.4; font-weight: 800; margin-top: 6px; }
.timeline { margin: 32px 0 30px; border-left: 1px solid var(--line); }
.timeline > div { position: relative; display: grid; grid-template-columns: 105px 1fr; gap: 18px; padding: 0 0 24px 28px; }
.timeline > div:last-child { padding-bottom: 0; }
.timeline > div::before { content: ""; position: absolute; left: -5px; top: 5px; width: 9px; height: 9px; border-radius: 50%; background: white; border: 2px solid var(--gold); }
.timeline span { font-size: .77rem; font-weight: 800; color: var(--navy); }
.timeline p { margin: 0; font-size: .86rem; line-height: 1.55; }

.metrics-section { background: var(--navy); padding: 0; color: white; }
.metrics-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.metric { padding: 48px 34px; border-right: 1px solid rgba(255,255,255,.1); }
.metric:last-child { border-right: 0; }
.metric-no { display: block; color: var(--gold-2); font-size: clamp(1.9rem,3vw,2.8rem); font-weight: 800; letter-spacing: -.055em; line-height: 1; margin-bottom: 20px; }
.metric h3 { color: white; font-size: 1rem; margin-bottom: 8px; }
.metric p { color: rgba(255,255,255,.48); font-size: .76rem; margin: 0; line-height: 1.55; }

.ecosystem-section { overflow: hidden; }
.ecosystem-section::before { content: ""; position: absolute; width: 560px; height: 560px; border-radius: 50%; border: 1px solid rgba(214,162,84,.15); right: -320px; top: 60px; box-shadow: 0 0 0 70px rgba(214,162,84,.03), 0 0 0 140px rgba(214,162,84,.02); }
.ecosystem-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 18px; position: relative; }
.ecosystem-card { min-height: 330px; padding: 34px; border-radius: var(--radius); border: 1px solid var(--line); background: white; position: relative; display: flex; flex-direction: column; box-shadow: 0 10px 30px rgba(6,18,47,.03); transform-style: preserve-3d; transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.ecosystem-card:hover { border-color: rgba(214,162,84,.55); box-shadow: var(--shadow-sm); }
.card-index { position: absolute; right: 26px; top: 24px; color: #b2b8c5; font-size: .7rem; font-weight: 800; }
.card-icon { width: 54px; height: 54px; border-radius: 15px; display: grid; place-items: center; margin-bottom: 28px; background: var(--cream); color: #9a6a28; font-size: .74rem; font-weight: 800; letter-spacing: .06em; }
.ecosystem-card h3 { font-size: 1.45rem; }
.ecosystem-card p { max-width: 475px; font-size: .86rem; }
.card-link { margin-top: auto; padding-top: 20px; color: var(--navy); font-size: .78rem; font-weight: 800; }

.expertise-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.expertise-card { padding: 38px 34px; border: 1px solid var(--line); border-radius: var(--radius); background: white; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; position: relative; overflow: hidden; }
.expertise-card::after { content: ""; position: absolute; width: 170px; height: 170px; border-radius: 50%; right: -100px; bottom: -110px; background: rgba(214,162,84,.08); transition: transform .35s ease; }
.expertise-card:hover { transform: translateY(-7px); box-shadow: var(--shadow-sm); border-color: rgba(214,162,84,.4); }
.expertise-card:hover::after { transform: scale(1.35); }
.expertise-card > span { position: absolute; top: 32px; right: 32px; color: #c4c9d2; font-size: .68rem; font-weight: 800; }
.line-icon { width: 56px; height: 56px; border-radius: 18px; display: grid; place-items: center; margin-bottom: 30px; background: var(--navy); color: var(--gold-2); }
.line-icon svg { width: 25px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.expertise-card p { font-size: .86rem; margin: 0; }

.book-section { background: var(--navy); color: white; overflow: hidden; }
.book-bg { position: absolute; width: 760px; height: 760px; border-radius: 50%; right: -250px; top: -280px; border: 1px solid rgba(214,162,84,.16); box-shadow: 0 0 0 90px rgba(214,162,84,.035), 0 0 0 180px rgba(214,162,84,.02); }
.book-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; align-items: center; }
.book-copy { position: relative; z-index: 2; }
.book-copy h2 { color: white; font-size: clamp(2.8rem,5vw,4.8rem); margin-bottom: 8px; }
.book-kicker { color: var(--gold-2) !important; font-size: 1.06rem; font-weight: 700; }
.book-copy > p:not(.book-kicker) { color: rgba(255,255,255,.62); }
.book-topics { list-style: none; padding: 0; margin: 30px 0 34px; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.book-topics li { color: rgba(255,255,255,.75); font-size: .78rem; display: flex; align-items: center; gap: 10px; }
.book-topics li::before { content: "✓"; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: rgba(214,162,84,.14); color: var(--gold-2); font-weight: 800; }
.book-visual { min-height: 590px; position: relative; display: grid; place-items: center; }
.book-orbit { position: absolute; width: 520px; height: 520px; border: 1px solid rgba(255,255,255,.09); border-radius: 50%; }
.book-orbit::before { content: ""; position: absolute; inset: 48px; border: 1px dashed rgba(214,162,84,.2); border-radius: 50%; animation: spinRing 24s linear infinite reverse; }
.book-image { width: min(100%, 500px); aspect-ratio: 4/3; border-radius: 28px; overflow: hidden; box-shadow: 0 35px 80px rgba(0,0,0,.33); transform: rotate(2deg); position: relative; z-index: 2; border: 1px solid rgba(255,255,255,.14); }
.book-image img { width: 100%; height: 100%; object-fit: cover; }
.book-note { position: absolute; left: -5px; bottom: 40px; z-index: 4; width: 155px; padding: 18px; border-radius: 18px; background: var(--gold); color: var(--navy); box-shadow: 0 20px 45px rgba(0,0,0,.24); }
.book-note strong { display: block; font-size: 2rem; line-height: 1; }
.book-note span { display: block; font-size: .68rem; font-weight: 800; margin-top: 6px; }

.speaking-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 85px; align-items: center; }
.speaking-gallery { position: relative; min-height: 590px; }
.speaking-main { position: absolute; inset: 0 30px 45px 0; margin: 0; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow); }
.speaking-main img { width: 100%; height: 100%; object-fit: cover; }
.speaking-main::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 48%, rgba(6,18,47,.72)); }
.speaking-overlay { position: absolute; left: 34px; bottom: 78px; z-index: 3; max-width: 300px; color: white; }
.speaking-overlay span { display: block; color: var(--gold-2); font-size: .66rem; text-transform: uppercase; letter-spacing: .14em; font-weight: 800; margin-bottom: 8px; }
.speaking-overlay strong { font-size: 1.18rem; line-height: 1.35; }
.theme-list { display: grid; gap: 0; margin: 30px 0 34px; border-top: 1px solid var(--line); }
.theme-list span { padding: 14px 0; border-bottom: 1px solid var(--line); font-size: .82rem; font-weight: 700; color: #394660; display: flex; align-items: center; gap: 12px; }
.theme-list span::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--gold); }

.blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.post-card { border: 1px solid var(--line); border-radius: var(--radius); background: white; overflow: hidden; transition: transform .3s ease, box-shadow .3s ease; }
.post-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-sm); }
.post-image { display: block; position: relative; aspect-ratio: 16/10; overflow: hidden; }
.post-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .55s ease; }
.post-card:hover .post-image img { transform: scale(1.045); }
.post-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(6,18,47,.38)); }
.post-image span { position: absolute; z-index: 2; left: 18px; bottom: 16px; padding: 7px 11px; border-radius: 999px; background: rgba(255,255,255,.93); color: var(--navy); font-size: .62rem; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.post-body { padding: 26px; }
.post-meta { color: #8a93a5; font-size: .65rem; text-transform: uppercase; letter-spacing: .09em; font-weight: 800; margin-bottom: 12px; }
.post-card h3 { font-size: 1.19rem; line-height: 1.35; }
.post-card p { font-size: .81rem; line-height: 1.65; }
.post-link { font-size: .75rem; font-weight: 800; color: var(--navy); }

.contact-section { background: linear-gradient(180deg, var(--soft) 50%, white 50%); padding-bottom: 105px; }
.contact-shell { display: grid; grid-template-columns: .92fr 1.08fr; gap: 70px; padding: 64px; border-radius: var(--radius-lg); background: var(--navy); color: white; box-shadow: 0 35px 85px rgba(6,18,47,.19); position: relative; overflow: hidden; }
.contact-shell::before { content: ""; position: absolute; width: 500px; height: 500px; border-radius: 50%; left: -290px; bottom: -300px; border: 1px solid rgba(214,162,84,.18); box-shadow: 0 0 0 70px rgba(214,162,84,.035), 0 0 0 140px rgba(214,162,84,.02); }
.contact-copy { position: relative; z-index: 2; }
.contact-copy h2 { color: white; font-size: clamp(2.25rem,4vw,3.25rem); }
.contact-copy > p { color: rgba(255,255,255,.58); }
.contact-direct { display: grid; gap: 14px; margin-top: 40px; }
.contact-direct a { display: grid; gap: 2px; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.contact-direct small { color: rgba(255,255,255,.45); font-size: .67rem; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
.contact-direct strong { font-size: .95rem; color: white; }
.contact-form { position: relative; z-index: 2; padding: 30px; border-radius: 22px; background: white; color: var(--ink); }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.contact-form label { display: grid; gap: 7px; margin-bottom: 14px; color: var(--navy); font-size: .7rem; font-weight: 800; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; border: 1px solid var(--line); border-radius: 12px; background: #fafbfc; padding: 12px 14px; outline: none; color: var(--ink); font-size: .82rem; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: var(--gold); box-shadow: 0 0 0 4px rgba(214,162,84,.12); background: white; }
.contact-form textarea { resize: vertical; min-height: 110px; }
.contact-form .btn { width: 100%; border: 0; }
.form-note { text-align: center; margin: 10px 0 0; font-size: .64rem; color: #8b94a5; }

.site-footer { padding: 70px 0 26px; background: #030b20; color: white; }
.footer-grid { display: grid; grid-template-columns: 1.6fr .7fr .8fr .7fr; gap: 55px; padding-bottom: 52px; }
.footer-brand img { width: 250px; margin-bottom: 24px; }
.footer-brand p { color: rgba(255,255,255,.45); font-size: .8rem; line-height: 1.6; }
.site-footer h3 { color: var(--gold-2); font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; margin-bottom: 20px; }
.site-footer > .container a, .footer-grid > div:not(.footer-brand) a { display: block; margin: 10px 0; color: rgba(255,255,255,.6); font-size: .76rem; transition: color .2s ease; }
.footer-grid a:hover { color: white; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; padding-top: 24px; border-top: 1px solid rgba(255,255,255,.08); color: rgba(255,255,255,.35); font-size: .66rem; }
.mobile-cta { display: none; }

/* Animation system */
.reveal, .reveal-item { opacity: 0; transform: translateY(22px); transition: opacity .72s cubic-bezier(.2,.75,.25,1), transform .72s cubic-bezier(.2,.75,.25,1); }
.reveal.visible, .reveal-item.visible { opacity: 1; transform: none; }
.reveal-group .reveal-item:nth-child(2) { transition-delay: .08s; }
.reveal-group .reveal-item:nth-child(3) { transition-delay: .16s; }
.reveal-group .reveal-item:nth-child(4) { transition-delay: .24s; }
.reveal-group .reveal-item:nth-child(5) { transition-delay: .32s; }
.reveal-group .reveal-item:nth-child(6) { transition-delay: .4s; }

/* Blog archive and article */
.page-hero { padding: 155px 0 78px; background: var(--navy); color: white; position: relative; overflow: hidden; }
.page-hero::before { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; right: -260px; top: -220px; border: 1px solid rgba(214,162,84,.18); box-shadow: 0 0 0 80px rgba(214,162,84,.03), 0 0 0 160px rgba(214,162,84,.02); }
.page-hero h1 { color: white; max-width: 760px; margin-bottom: 18px; }
.page-hero p { color: rgba(255,255,255,.62); max-width: 620px; }
.page-hero .container { position: relative; z-index: 2; }
.blog-featured { display: grid; grid-template-columns: 1.15fr .85fr; min-height: 460px; border-radius: var(--radius-lg); overflow: hidden; background: var(--navy); box-shadow: var(--shadow); margin-bottom: 52px; }
.blog-featured-image { position: relative; }
.blog-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.blog-featured-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 60%, rgba(6,18,47,.34)); }
.blog-featured-copy { padding: 55px; display: flex; flex-direction: column; justify-content: center; }
.blog-featured-copy h2 { color: white; font-size: clamp(1.9rem,3.4vw,2.8rem); }
.blog-featured-copy p { color: rgba(255,255,255,.58); }
.blog-featured-copy .post-meta { color: var(--gold-2); }
.blog-featured-copy .post-link { color: white; }
.blog-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 32px; }
.filter-group { display: flex; gap: 8px; flex-wrap: wrap; }
.filter-btn { border: 1px solid var(--line); background: white; color: var(--muted); border-radius: 999px; padding: 9px 15px; font-size: .7rem; font-weight: 800; }
.filter-btn.active { background: var(--navy); color: white; border-color: var(--navy); }
.search-box { width: min(100%, 330px); }
.search-box input { width: 100%; border: 1px solid var(--line); border-radius: 999px; padding: 12px 18px; outline: none; }
.search-box input:focus { border-color: var(--gold); box-shadow: 0 0 0 4px rgba(214,162,84,.1); }
.empty-state { display: none; text-align: center; padding: 50px; color: var(--muted); }

.article-hero { padding: 145px 0 58px; background: var(--soft); }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-bottom: 24px; color: #7a8498; font-size: .68rem; font-weight: 700; }
.article-hero h1 { max-width: 940px; font-size: clamp(2.35rem,4.6vw,3.75rem); }
.article-meta { display: flex; flex-wrap: wrap; gap: 14px 24px; color: #7a8498; font-size: .7rem; font-weight: 700; }
.article-cover { width: min(calc(100% - 48px), var(--container)); margin: 0 auto; aspect-ratio: 16/7.2; border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow); }
.article-cover img { width: 100%; height: 100%; object-fit: cover; }
.article-layout { display: grid; grid-template-columns: minmax(0,760px) 300px; gap: 70px; align-items: start; }
.article-content { font-size: .98rem; }
.article-content > p:first-child { font-size: 1.08rem; color: #33405b; }
.article-content h2 { margin-top: 44px; font-size: 2rem; }
.article-content h3 { margin-top: 32px; }
.article-content p { color: #46526a; margin-bottom: 22px; }
.article-content blockquote { margin: 36px 0; padding: 28px 30px; border-left: 4px solid var(--gold); background: var(--cream); border-radius: 0 18px 18px 0; font-size: 1.18rem; font-weight: 700; line-height: 1.55; color: var(--navy); }
.article-sidebar { position: sticky; top: 100px; display: grid; gap: 18px; }
.sidebar-card { padding: 24px; border: 1px solid var(--line); border-radius: 18px; background: white; }
.sidebar-card h3 { font-size: 1.18rem; }
.sidebar-card p { font-size: .78rem; }
.sidebar-links { display: grid; gap: 12px; }
.sidebar-links a { font-size: .76rem; font-weight: 700; line-height: 1.4; }
.sidebar-links a:hover { color: #9b6a26; }
.article-share { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 34px; }
.article-share button { border: 1px solid var(--line); background: white; border-radius: 999px; padding: 10px 14px; font-size: .7rem; font-weight: 800; color: var(--navy); }

@media (max-width: 1080px) {
  .main-nav { gap: 16px; }
  .brand { width: 210px; }
  .hero-grid { grid-template-columns: 1fr .9fr; gap: 30px; }
  .card-years { left: -18px; }
  .card-vision { right: -10px; }
  .about-grid, .book-grid, .speaking-grid { gap: 55px; }
  .footer-grid { grid-template-columns: 1.25fr .7fr .8fr .7fr; gap: 36px; }
}

@media (max-width: 900px) {
  .site-header { height: 74px; }
  .site-header.scrolled { height: 68px; }
  .brand { width: 205px; }
  .menu-toggle { display: block; }
  .main-nav { position: fixed; inset: 0; padding: 110px 28px 40px; display: flex; flex-direction: column; align-items: flex-start; gap: 22px; background: rgba(255,255,255,.98); color: var(--navy); transform: translateX(100%); transition: transform .35s cubic-bezier(.2,.75,.25,1); font-size: 1rem; }
  .menu-open .main-nav { transform: none; }
  .main-nav .btn { margin-top: 10px; }
  .menu-open .brand-light { opacity: 0; }
  .menu-open .brand-dark { opacity: 1; }
  .menu-open .menu-toggle span { background: var(--navy); }
  .menu-open .menu-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-open .menu-toggle span:nth-child(2) { opacity: 0; }
  .menu-open .menu-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .hero { min-height: auto; padding-top: 120px; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { max-width: 760px; }
  .hero-visual { min-height: 570px; max-width: 600px; width: 100%; margin: 5px auto 0; }
  .scroll-cue { display: none; }
  .split-heading { grid-template-columns: 1fr; gap: 16px; }
  .about-grid, .book-grid, .speaking-grid, .contact-shell { grid-template-columns: 1fr; }
  .about-visual { max-width: 630px; width: 100%; margin: 0 auto; }
  .about-copy { max-width: 740px; }
  .metrics-grid { grid-template-columns: repeat(2,1fr); }
  .metric:nth-child(2) { border-right: 0; }
  .metric:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.1); }
  .book-copy { max-width: 650px; }
  .book-visual { min-height: 520px; }
  .speaking-gallery { min-height: 520px; }
  .blog-grid { grid-template-columns: repeat(2,1fr); }
  .blog-grid .post-card:last-child { grid-column: 1 / -1; display: grid; grid-template-columns: .85fr 1.15fr; }
  .blog-grid .post-card:last-child .post-image { aspect-ratio: auto; }
  .contact-shell { padding: 48px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .article-layout { grid-template-columns: 1fr; }
  .article-sidebar { position: static; grid-template-columns: 1fr 1fr; }
  .blog-featured { grid-template-columns: 1fr; }
  .blog-featured-image { min-height: 360px; }
}

@media (max-width: 650px) {
  .container { width: min(calc(100% - 30px), var(--container)); }
  .section { padding: 82px 0; }
  h1 { font-size: clamp(2.35rem, 11vw, 3.15rem); }
  h2 { font-size: clamp(1.85rem, 8.5vw, 2.55rem); }
  .site-header { height: 68px; }
  .brand { width: 175px; }
  .hero { padding: 104px 0 46px; }
  .hero-grid { gap: 12px; }
  .hero-lead { font-size: .98rem; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-actions .btn { width: 100%; }
  .hero-proof { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
  .hero-proof > div:last-child { grid-column: 1 / -1; }
  .hero-visual { min-height: 465px; overflow: hidden; }
  .portrait-frame { height: 485px; width: 370px; }
  .portrait-frame::before { width: 330px; height: 330px; bottom: 18px; }
  .portrait-ring { width: 380px; height: 380px; }
  .portrait-frame > img { max-height: 475px; }
  .hero-symbol { width: 360px; right: -95px; top: 35px; }
  .floating-card { padding: 11px 13px; }
  .card-years { left: 5px; top: 76px; }
  .card-years strong { font-size: 1.35rem; }
  .card-vision { right: 0; bottom: 55px; }
  .signal-track { padding: 15px 0; }
  .about-grid { gap: 52px; }
  .image-stack { min-height: 500px; }
  .image-main { inset: 0 45px 55px 0; }
  .image-secondary { width: 150px; height: 220px; border-width: 6px; }
  .experience-seal { left: -6px; bottom: 10px; width: 125px; height: 125px; }
  .experience-seal strong { font-size: 1.7rem; }
  .timeline > div { grid-template-columns: 80px 1fr; padding-left: 20px; }
  .metrics-grid { grid-template-columns: 1fr; }
  .metric { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.1); padding: 34px 24px; }
  .metric:last-child { border-bottom: 0; }
  .ecosystem-grid, .expertise-grid, .blog-grid { grid-template-columns: 1fr; }
  .ecosystem-card { min-height: 290px; padding: 28px; }
  .book-grid { gap: 30px; }
  .book-copy h2 { font-size: 3rem; }
  .book-topics { grid-template-columns: 1fr; }
  .book-visual { min-height: 390px; }
  .book-orbit { width: 340px; height: 340px; }
  .book-image { width: 330px; }
  .book-note { left: 0; bottom: 14px; width: 130px; padding: 14px; }
  .speaking-gallery { min-height: 440px; }
  .speaking-main { inset: 0 0 30px 0; }
  .speaking-overlay { left: 22px; bottom: 55px; }
  .blog-grid .post-card:last-child { display: block; grid-column: auto; }
  .blog-grid .post-card:last-child .post-image { aspect-ratio: 16/10; }
  .contact-shell { padding: 34px 22px; gap: 32px; border-radius: 25px; }
  .contact-form { padding: 22px 18px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .footer-grid { grid-template-columns: 1fr; gap: 26px; }
  .footer-brand img { width: 220px; }
  .footer-bottom { flex-direction: column; }
  .mobile-cta { display: flex; position: fixed; z-index: 900; left: 14px; right: 14px; bottom: 12px; min-height: 52px; border-radius: 999px; align-items: center; justify-content: center; gap: 12px; background: var(--gold); color: var(--navy); font-size: .78rem; font-weight: 800; box-shadow: 0 14px 35px rgba(6,18,47,.28); }
  .site-footer { padding-bottom: 90px; }
  .page-hero { padding: 120px 0 60px; }
  .blog-featured { min-height: auto; }
  .blog-featured-image { min-height: 250px; }
  .blog-featured-copy { padding: 30px 24px; }
  .blog-toolbar { align-items: stretch; flex-direction: column; }
  .search-box { width: 100%; }
  .article-hero { padding: 112px 0 46px; }
  .article-cover { width: calc(100% - 30px); aspect-ratio: 16/10; border-radius: 22px; }
  .article-content h2 { font-size: 1.7rem; }
  .article-sidebar { grid-template-columns: 1fr; }
}

@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, .reveal-item { opacity: 1; transform: none; }
}

/* V3 — Livros com capas oficiais e galeria de eventos */
.section-title-line { font-size: clamp(2.1rem, 3.6vw, 3.25rem); line-height: 1.04; letter-spacing: -.04em; margin-bottom: 0; }

.books-showcase { background: var(--navy); color: white; overflow: hidden; }
.books-showcase .book-bg { width: 720px; height: 720px; right: -260px; top: -320px; }
.books-heading { position: relative; z-index: 2; align-items: end; }
.books-heading h2 { color: white; }
.books-heading .lead { color: rgba(255,255,255,.61); margin-bottom: 3px; }
.books-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; position: relative; z-index: 2; }
.book-card { min-height: 570px; display: grid; grid-template-columns: minmax(215px,.8fr) minmax(0,1.2fr); gap: 32px; align-items: center; padding: 34px; border-radius: 28px; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 24px 65px rgba(0,0,0,.18); overflow: hidden; position: relative; transform-style: preserve-3d; transition: border-color .3s ease, background .3s ease, transform .3s ease, box-shadow .3s ease; }
.book-card::before { content:""; position:absolute; width:280px; height:280px; border-radius:50%; left:-170px; bottom:-190px; border:1px solid rgba(214,162,84,.14); box-shadow:0 0 0 60px rgba(214,162,84,.025); pointer-events:none; }
.book-card:hover { border-color: rgba(214,162,84,.42); background: rgba(255,255,255,.075); box-shadow: 0 30px 80px rgba(0,0,0,.26); }
.book-card-featured { background: linear-gradient(145deg, rgba(214,162,84,.115), rgba(255,255,255,.04)); }
.book-cover-stage { min-height: 410px; display: grid; place-items: center; position: relative; isolation: isolate; }
.book-cover-stage::before { content:""; position:absolute; inset:42px 12px 24px; border-radius:50%; background:radial-gradient(circle,rgba(214,162,84,.2),transparent 68%); filter:blur(7px); z-index:-1; }
.book-cover { position: relative; width: min(100%, 225px); aspect-ratio: .69; overflow: hidden; border-radius: 5px 12px 12px 5px; background: #10233e; box-shadow: -10px 15px 0 rgba(255,255,255,.06), 0 28px 50px rgba(0,0,0,.43); transform: perspective(900px) rotateY(-6deg) rotateZ(-1.2deg); transition: transform .45s cubic-bezier(.2,.75,.25,1); }
.book-card:hover .book-cover { transform: perspective(900px) rotateY(-1deg) rotateZ(0) translateY(-7px); }
.book-cover::after { content:""; position:absolute; inset:0 auto 0 0; width:9px; background:linear-gradient(90deg,rgba(0,0,0,.34),transparent); pointer-events:none; }
.book-cover img { width:100%; height:100%; object-fit:cover; }
.book-cover-protecao img { object-position:center; }
.book-cover-bigplayers { width:min(100%,255px); aspect-ratio:1/1; border-radius:10px; background:#f6bd00; box-shadow:0 28px 55px rgba(0,0,0,.38); }
.book-cover-bigplayers::after { display:none; }
.book-cover-bigplayers img { object-fit:cover; }
.book-shadow { position:absolute; width:72%; height:24px; left:14%; bottom:15px; border-radius:50%; background:rgba(0,0,0,.45); filter:blur(12px); z-index:-1; }
.book-badge { position:absolute; z-index:4; top:18px; left:10px; padding:8px 12px; border-radius:999px; background:var(--gold); color:var(--navy); font-size:.62rem; text-transform:uppercase; letter-spacing:.1em; font-weight:800; box-shadow:0 10px 25px rgba(0,0,0,.2); }
.book-card-copy { position:relative; z-index:2; }
.book-type { display:inline-flex; align-items:center; gap:8px; margin-bottom:13px; color:var(--gold-2); text-transform:uppercase; letter-spacing:.14em; font-size:.66rem; font-weight:800; }
.book-type::before { content:""; width:20px; height:1px; background:currentColor; }
.book-card h3 { color:white; font-size:clamp(1.75rem,2.5vw,2.35rem); margin-bottom:10px; }
.book-subtitle { color:var(--gold-2)!important; font-size:.91rem; font-weight:700; line-height:1.48; margin-bottom:16px; }
.book-card-copy > p:not(.book-subtitle) { color:rgba(255,255,255,.58); font-size:.82rem; line-height:1.68; }
.book-details { display:flex; flex-wrap:wrap; gap:8px; margin:23px 0 26px; }
.book-details span { padding:7px 10px; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:rgba(255,255,255,.68); font-size:.63rem; font-weight:700; }
.book-card .btn { min-height:46px; padding-inline:18px; }

.events-gallery-section { background: var(--paper); overflow:hidden; }
.gallery-heading { margin-bottom:30px; }
.gallery-title-row { display:grid; grid-template-columns:minmax(0,.72fr) minmax(320px,1fr); align-items:end; gap:70px; }
.gallery-title-row .lead { margin:0 0 3px; }
.gallery-toolbar { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:30px; }
.gallery-filter { border:1px solid var(--line); background:white; color:#46516a; border-radius:999px; padding:10px 15px; font-size:.7rem; font-weight:800; transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease; }
.gallery-filter:hover { transform:translateY(-2px); border-color:rgba(214,162,84,.55); color:var(--navy); }
.gallery-filter.active { background:var(--navy); border-color:var(--navy); color:white; box-shadow:0 10px 25px rgba(6,18,47,.14); }
.event-gallery { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:170px; gap:14px; }
.gallery-item { appearance:none; border:0; padding:0; margin:0; border-radius:18px; background:#e9edf4; overflow:hidden; position:relative; cursor:zoom-in; text-align:left; box-shadow:0 12px 30px rgba(6,18,47,.06); transition:transform .32s ease,box-shadow .32s ease,opacity .25s ease; }
.gallery-item:hover { transform:translateY(-5px); box-shadow:0 20px 45px rgba(6,18,47,.13); }
.gallery-item::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 45%,rgba(3,11,32,.72)); opacity:.85; transition:opacity .3s ease; }
.gallery-item:hover::after { opacity:1; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.2,.75,.25,1); }
.gallery-item:hover img { transform:scale(1.055); }
.gallery-item span { position:absolute; z-index:2; left:16px; right:16px; bottom:14px; color:white; font-size:.68rem; font-weight:800; letter-spacing:.02em; }
.gallery-item-wide { grid-column:span 2; }
.gallery-item-tall { grid-row:span 2; }
.gallery-item.is-hidden { display:none; }

.gallery-lightbox { position:fixed; inset:0; z-index:5000; display:grid; place-items:center; padding:50px 92px; background:rgba(2,8,23,.94); backdrop-filter:blur(14px); opacity:0; visibility:hidden; transition:opacity .25s ease,visibility .25s ease; }
.gallery-lightbox.is-open { opacity:1; visibility:visible; }
.gallery-lightbox figure { width:min(100%,1100px); height:min(82vh,820px); margin:0; display:grid; grid-template-rows:minmax(0,1fr) auto; gap:14px; place-items:center; }
.gallery-lightbox img { max-width:100%; max-height:100%; width:auto; height:auto; border-radius:18px; box-shadow:0 35px 90px rgba(0,0,0,.55); }
.gallery-lightbox figcaption { color:rgba(255,255,255,.78); font-size:.78rem; font-weight:700; text-align:center; }
.lightbox-close,.lightbox-nav { position:absolute; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.07); color:white; display:grid; place-items:center; transition:background .2s ease,transform .2s ease; }
.lightbox-close:hover,.lightbox-nav:hover { background:rgba(255,255,255,.15); transform:scale(1.04); }
.lightbox-close { width:46px; height:46px; border-radius:50%; top:22px; right:24px; font-size:1.75rem; line-height:1; }
.lightbox-nav { width:50px; height:74px; top:50%; transform:translateY(-50%); border-radius:15px; font-size:2.2rem; }
.lightbox-nav:hover { transform:translateY(-50%) scale(1.04); }
.lightbox-prev { left:25px; }
.lightbox-next { right:25px; }
body.lightbox-open { overflow:hidden; }

/* Keep the approved corporate scale and avoid awkward desktop title wraps. */
@media (min-width: 901px) {
  #trajetoria .about-copy h2,
  #grupo-liber .section-heading h2,
  #livro .section-title-line,
  #eventos .section-title-line,
  #palestras .speaking-copy h2 { white-space:nowrap; }
  #trajetoria .about-copy h2,
  #grupo-liber .section-heading h2,
  #palestras .speaking-copy h2 { font-size:clamp(2.15rem,3.25vw,3.05rem); }
}

@media (max-width: 1080px) {
  .book-card { grid-template-columns:190px 1fr; padding:28px; gap:24px; }
  .book-cover-stage { min-height:350px; }
  .event-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 900px) {
  .books-grid { grid-template-columns:1fr; }
  .book-card { grid-template-columns:minmax(210px,.75fr) minmax(0,1.25fr); }
  .gallery-title-row { grid-template-columns:1fr; gap:14px; }
  .event-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:175px; }
  .gallery-lightbox { padding:60px 65px; }
}

@media (max-width: 650px) {
  .section-title-line { font-size:clamp(1.9rem,9vw,2.5rem); }
  .books-heading { gap:12px; }
  .book-card { grid-template-columns:1fr; min-height:auto; padding:25px 20px 28px; gap:18px; }
  .book-cover-stage { min-height:355px; }
  .book-cover { width:205px; }
  .book-cover-bigplayers { width:250px; }
  .book-badge { left:18px; }
  .book-card h3 { font-size:1.75rem; }
  .book-card .btn { width:100%; }
  .gallery-toolbar { flex-wrap:nowrap; overflow-x:auto; margin-inline:-15px; padding:0 15px 8px; scrollbar-width:none; }
  .gallery-toolbar::-webkit-scrollbar { display:none; }
  .gallery-filter { flex:0 0 auto; }
  .event-gallery { grid-template-columns:1fr 1fr; grid-auto-rows:145px; gap:9px; }
  .gallery-item-wide { grid-column:span 2; }
  .gallery-item-tall { grid-row:span 2; }
  .gallery-item { border-radius:13px; }
  .gallery-item span { left:11px; right:11px; bottom:10px; font-size:.61rem; }
  .gallery-lightbox { padding:65px 14px 35px; }
  .gallery-lightbox figure { height:76vh; }
  .lightbox-nav { width:42px; height:58px; top:auto; bottom:18px; transform:none; }
  .lightbox-nav:hover { transform:scale(1.04); }
  .lightbox-prev { left:calc(50% - 52px); }
  .lightbox-next { right:calc(50% - 52px); }
  .lightbox-close { top:14px; right:14px; }
}


/* V4 improvements — gallery, habits and Grupo Liber cards */
.ecosystem-heading-v4 { align-items: end; }
.ecosystem-grid-v4 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.ecosystem-card-v4 { min-height: 100%; padding: 26px; border-radius: 28px; background: linear-gradient(180deg, #ffffff, #fbfbfd); border: 1px solid var(--line); box-shadow: 0 18px 45px rgba(6,18,47,.07); display:grid; gap:22px; }
.ecosystem-logo-shell { padding: 16px; border-radius: 22px; background: linear-gradient(180deg, #fff, #f5f7fb); border: 1px solid #edf0f6; }
.ecosystem-logo { width: 100%; height: auto; border-radius: 18px; }
.ecosystem-copy { display:grid; gap:12px; }
.ecosystem-copy h3 { font-size: 1.32rem; margin-bottom: 0; }
.ecosystem-copy p { margin-bottom: 0; font-size: .84rem; }
.ecosystem-tags { display:flex; flex-wrap:wrap; gap:8px; }
.ecosystem-tags span { padding:7px 11px; border-radius:999px; font-size:.62rem; font-weight:800; letter-spacing:.05em; color:var(--navy); background:rgba(6,18,47,.05); border:1px solid rgba(6,18,47,.08); text-transform:uppercase; }
.ecosystem-card-v4 .btn { width:max-content; min-height:46px; padding-inline:18px; margin-top:4px; }

.gallery-shell { display:grid; grid-template-columns:320px minmax(0,1fr); gap:22px; align-items:start; }
.gallery-side-panel { position:sticky; top:100px; padding:28px; border-radius:28px; background:linear-gradient(180deg, var(--navy), #091734); color:white; box-shadow:0 28px 70px rgba(6,18,47,.18); overflow:hidden; }
.gallery-side-panel::before { content:""; position:absolute; width:240px; height:240px; border-radius:50%; right:-80px; bottom:-90px; border:1px solid rgba(214,162,84,.22); box-shadow:0 0 0 50px rgba(214,162,84,.04), 0 0 0 110px rgba(214,162,84,.025); }
.gallery-side-panel > * { position:relative; z-index:1; }
.gallery-side-kicker { display:inline-flex; padding:8px 12px; border-radius:999px; background:rgba(214,162,84,.16); color:var(--gold-2); font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.12em; }
.gallery-side-panel h3 { color:white; font-size:1.6rem; line-height:1.2; margin:18px 0 14px; }
.gallery-side-panel p { color:rgba(255,255,255,.6); font-size:.83rem; margin-bottom: 18px; }
.gallery-side-stats { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.gallery-side-stats div { padding:14px 12px; border-radius:18px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.04); display:grid; gap:4px; }
.gallery-side-stats strong { font-size:1.18rem; color:var(--gold-2); }
.gallery-side-stats span { font-size:.68rem; color:rgba(255,255,255,.58); }
.gallery-content-panel { padding:18px; border-radius:30px; background:linear-gradient(180deg, #fcfcfe, #f8fafe); border:1px solid #edf0f5; box-shadow:0 18px 45px rgba(6,18,47,.05); }
.event-gallery { grid-auto-flow:dense; }
.gallery-item { border:1px solid rgba(6,18,47,.05); }
.gallery-item::before { content:""; position:absolute; inset:auto 14px 52px; height:1px; background:rgba(255,255,255,.18); z-index:2; opacity:.85; }
.gallery-item span { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.gallery-item span::after { content:"↗"; font-size:.78rem; opacity:.8; }

.habits-section { background:linear-gradient(180deg, white, #fbfbfd); }
.habits-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.habit-card { border-radius:28px; overflow:hidden; border:1px solid var(--line); background:white; box-shadow:0 18px 45px rgba(6,18,47,.06); transition:transform .3s ease, box-shadow .3s ease; }
.habit-card:hover { transform:translateY(-6px); box-shadow:0 28px 60px rgba(6,18,47,.11); }
.habit-image { display:block; aspect-ratio: 4 / 5; overflow:hidden; background:#08162f; }
.habit-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.habit-card:hover .habit-image img { transform:scale(1.03); }
.habit-body { padding:24px 24px 26px; }
.habit-meta { color:#9b6a26; font-size:.65rem; font-weight:800; text-transform:uppercase; letter-spacing:.14em; margin-bottom:10px; }
.habit-card h3 { font-size:1.25rem; margin-bottom:12px; }
.habit-card p { font-size:.82rem; margin-bottom:18px; }

@media (max-width: 1080px) {
  .gallery-shell { grid-template-columns: 280px minmax(0,1fr); }
}

@media (max-width: 900px) {
  .ecosystem-grid-v4, .habits-grid, .gallery-shell { grid-template-columns:1fr; }
  .gallery-side-panel { position:relative; top:auto; }
}

@media (max-width: 650px) {
  .ecosystem-card-v4 { padding:20px; gap:18px; }
  .ecosystem-card-v4 .btn { width:100%; }
  .gallery-content-panel { padding:12px; border-radius:22px; }
  .gallery-side-panel { padding:22px 20px; border-radius:22px; }
  .gallery-side-panel h3 { font-size:1.3rem; }
  .gallery-side-stats { grid-template-columns:1fr 1fr; }
  .habit-body { padding:20px 18px 22px; }
}


/* V5 — heading fix and managed E-books/Manuals carousel */
.ecosystem-heading-v4 > * { min-width: 0; }
@media (min-width: 901px) {
  .ecosystem-heading-v4 { grid-template-columns:minmax(0,1.34fr) minmax(300px,.66fr); gap:48px; align-items:end; }
  #grupo-liber .ecosystem-heading-v4 h2 { white-space:normal !important; max-width:780px; font-size:clamp(2.05rem,3.05vw,3.05rem) !important; line-height:1.08; overflow-wrap:normal; }
  .ecosystem-heading-v4 .lead { max-width:430px; margin:0 0 4px; }
}

.manuals-carousel-section { background:linear-gradient(145deg,#c9903f 0%,#e0ac5a 48%,#d29a46 100%); overflow:hidden; color:var(--navy); }
.manuals-pattern { position:absolute; inset:0; opacity:.2; pointer-events:none; background-image:linear-gradient(30deg,transparent 47%,rgba(255,255,255,.5) 48%,rgba(255,255,255,.5) 52%,transparent 53%),linear-gradient(150deg,transparent 47%,rgba(255,255,255,.5) 48%,rgba(255,255,255,.5) 52%,transparent 53%); background-size:72px 124px; }
.manuals-heading { position:relative; z-index:2; max-width:760px; margin-bottom:38px; }
.manuals-heading .eyebrow { color:white; }
.manuals-heading .section-title-line { color:var(--navy); }
.manuals-heading .lead { color:rgba(6,18,47,.7); margin:12px auto 0; max-width:650px; }
.manuals-carousel-shell { position:relative; z-index:2; padding:18px 72px 48px; }
.manuals-viewport { overflow:hidden; padding:30px 0 38px; }
.manuals-track { display:flex; gap:30px; transition:transform .55s cubic-bezier(.2,.75,.25,1); will-change:transform; }
.manual-cover-slide { flex:0 0 calc((100% - 60px)/3); min-height:500px; margin:0; display:grid; place-items:center; transform:scale(.9); opacity:.7; transition:transform .4s ease,opacity .4s ease,filter .4s ease; }
.manual-cover-slide.is-active { transform:scale(1.04); opacity:1; filter:none; }
.manual-cover-slide img { width:min(100%,330px); height:500px; object-fit:contain; filter:drop-shadow(0 28px 34px rgba(6,18,47,.28)); }
.manuals-arrow { position:absolute; top:50%; transform:translateY(-55%); width:50px; height:68px; border-radius:17px; border:1px solid rgba(6,18,47,.15); background:rgba(255,255,255,.9); color:var(--navy); font-size:2rem; line-height:1; display:grid; place-items:center; box-shadow:0 15px 35px rgba(6,18,47,.15); z-index:3; transition:transform .2s ease,background .2s ease; }
.manuals-arrow:hover { background:white; transform:translateY(-55%) scale(1.05); }
.manuals-prev { left:0; }
.manuals-next { right:0; }
.manuals-dots { display:flex; justify-content:center; gap:8px; margin-top:4px; }
.manuals-dot { width:8px; height:8px; border-radius:999px; border:0; padding:0; background:rgba(6,18,47,.28); transition:width .25s ease,background .25s ease; }
.manuals-dot.is-active { width:26px; background:var(--navy); }
@media (max-width:900px) {
  .manual-cover-slide { flex-basis:calc((100% - 24px)/2); }
  .manuals-track { gap:24px; }
  .manual-cover-slide,.manual-cover-slide img { min-height:430px; height:430px; }
}
@media (max-width:650px) {
  .manuals-carousel-shell { padding:8px 42px 38px; }
  .manuals-heading { margin-bottom:16px; }
  .manual-cover-slide { flex-basis:100%; min-height:390px; transform:scale(.93); }
  .manuals-track { gap:18px; }
  .manual-cover-slide img { width:min(100%,270px); height:390px; }
  .manuals-arrow { width:40px; height:58px; border-radius:14px; }
  .manuals-prev { left:-2px; }
  .manuals-next { right:-2px; }
}

@media (min-width:901px) and (max-width:1150px) {
  .main-nav { gap:11px; font-size:.7rem; }
  .brand { width:185px; }
  .header-cta { padding-inline:14px; }
}

/* Conteúdo avançado do editor do blog */
.article-content .article-image{margin:34px 0;text-align:center}.article-content .article-image img{max-width:100%;height:auto;border-radius:20px;box-shadow:0 18px 48px rgba(6,18,47,.1)}.article-content .article-image figcaption{margin-top:10px;color:var(--muted);font-size:.78rem}.article-table-wrap{width:100%;overflow-x:auto;margin:30px 0;border:1px solid var(--line);border-radius:16px}.article-content table{width:100%;min-width:620px;border-collapse:collapse;background:#fff}.article-content th,.article-content td{padding:14px 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;vertical-align:top}.article-content th:last-child,.article-content td:last-child{border-right:0}.article-content tr:last-child td{border-bottom:0}.article-content th{background:var(--soft);color:var(--navy);font-weight:800}.article-content ul,.article-content ol{padding-left:24px;color:#46526a}.article-content li{margin:8px 0}.article-content hr{border:0;border-top:1px solid var(--line);margin:40px 0}.article-content pre{overflow:auto;padding:22px;border-radius:16px;background:#07142f;color:#eaf0ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88rem;line-height:1.7}.article-content a:not(.btn):not(.text-link){color:#8f6326;text-decoration:underline;text-underline-offset:3px}


/* Legal pages and footer links */
.footer-legal-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.footer-legal-links a{color:rgba(255,255,255,.42);font-size:.66rem;transition:color .2s ease}.footer-legal-links a:hover{color:white}.legal-hero{padding:155px 0 76px;background:var(--navy);position:relative;overflow:hidden;color:white}.legal-hero:before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;right:-240px;top:-300px;border:1px solid rgba(214,162,84,.2);box-shadow:0 0 0 75px rgba(214,162,84,.035),0 0 0 150px rgba(214,162,84,.02)}.legal-hero .container{position:relative;z-index:2}.legal-hero h1{color:white;max-width:850px;margin-bottom:18px}.legal-hero p{max-width:720px;color:rgba(255,255,255,.65);font-size:1.04rem}.legal-updated{display:inline-flex;align-items:center;gap:9px;margin-top:12px;padding:8px 12px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:rgba(255,255,255,.62);font-size:.68rem;font-weight:700}.legal-updated:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}.legal-section{background:linear-gradient(180deg,var(--soft),white)}.legal-layout{display:grid;grid-template-columns:minmax(0,780px) 280px;gap:72px;align-items:start}.legal-content{padding:46px 50px;border-radius:30px;background:white;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.legal-content h2{font-size:1.55rem;margin:42px 0 16px;letter-spacing:-.025em}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:1.15rem;margin:30px 0 12px}.legal-content p,.legal-content li{color:#46526a;font-size:.94rem;line-height:1.82}.legal-content ul{margin:0 0 24px;padding-left:22px}.legal-content li+li{margin-top:9px}.legal-sidebar{position:sticky;top:100px;display:grid;gap:16px}.legal-card{padding:24px;border-radius:22px;background:var(--navy);color:white;box-shadow:var(--shadow-sm)}.legal-card h3{color:white;font-size:1.16rem}.legal-card p{color:rgba(255,255,255,.6);font-size:.78rem}.legal-card a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid rgba(255,255,255,.1);color:white;font-size:.75rem;font-weight:800}.legal-card.light{background:white;color:var(--ink);border:1px solid var(--line);box-shadow:none}.legal-card.light h3{color:var(--ink)}.legal-card.light p{color:var(--muted)}.legal-card.light a{color:var(--navy);border-top-color:var(--line)}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;gap:30px}.legal-sidebar{position:static;grid-template-columns:1fr 1fr}.legal-hero{padding-top:130px}}@media(max-width:650px){.legal-hero{padding:112px 0 58px}.legal-content{padding:30px 22px;border-radius:22px}.legal-content h2{font-size:1.35rem}.legal-sidebar{grid-template-columns:1fr}.footer-legal-links{gap:12px}.footer-bottom{align-items:flex-start}}

/* V4 stability and legal/footer refinements */
[hidden]{display:none!important}
.footer-bottom{align-items:center}
.footer-legal-links{display:flex!important;align-items:center;justify-content:flex-end;gap:22px;flex-wrap:wrap}
.footer-legal-links a{display:inline-flex!important;margin:0!important;white-space:nowrap;color:rgba(255,255,255,.56)!important;font-size:.7rem!important;font-weight:700}
.footer-legal-links a:hover{color:#fff!important}
.gallery-lightbox[hidden]{display:none!important}
.gallery-lightbox.is-open{display:grid}
@media(max-width:650px){.footer-legal-links{justify-content:flex-start;gap:16px}.footer-bottom{align-items:flex-start}}


/* Conteúdo multimídia dos artigos */
.article-content .article-video{margin:38px 0}.article-content .article-video video{display:block;width:100%;max-height:680px;border-radius:20px;background:#020817;box-shadow:0 25px 60px rgba(6,18,47,.16)}.article-content .article-video-embed{position:relative;width:100%;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:#020817;box-shadow:0 25px 60px rgba(6,18,47,.16)}.article-content .article-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.article-content .article-video figcaption{margin-top:11px;text-align:center;color:var(--muted);font-size:.76rem}.article-content .article-table-wrap{width:100%;overflow-x:auto;margin:30px 0}.article-content .article-table-wrap table{min-width:620px}
@media(max-width:650px){.hero-symbol{width:390px;height:390px;right:-105px;top:28px;opacity:.3}.article-content .article-video,.article-content .article-table-wrap{margin:26px 0}.article-content .article-video-embed,.article-content .article-video video{border-radius:14px}}

/* V6 — definitive public-page fixes */
.hero-symbol:empty,.hero-symbol img[src=""]{display:none!important}
.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.legal-page .main-nav> a:not(.btn),.legal-page .main-nav> a:not(.btn):visited{color:#33405b!important}
.legal-page .main-nav> a:not(.btn):hover,.legal-page .main-nav> a:not(.btn):focus{color:var(--navy)!important;background:transparent!important}
.legal-page .main-nav> a:not(.btn)::after{background:var(--gold)!important}
.article-content img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important}
.article-content figure.article-image{width:var(--media-width,100%)!important;max-width:100%!important;margin:32px auto!important;padding:0!important;background:transparent!important}
.article-content figure.article-image.align-left{margin-left:0!important;margin-right:auto!important}.article-content figure.article-image.align-center{margin-left:auto!important;margin-right:auto!important}.article-content figure.article-image.align-right{margin-left:auto!important;margin-right:0!important}
.article-content figure.article-image img{width:100%!important;height:auto!important;border-radius:18px!important;box-shadow:0 16px 42px rgba(6,18,47,.1)}
.article-content figure.article-image figcaption{margin-top:9px;text-align:center;color:var(--muted);font-size:.76rem}
.article-content figure.article-video,.article-content .article-table-wrap{max-width:100%;overflow:hidden}.article-content iframe,.article-content video{max-width:100%;height:auto}
.gallery-item{pointer-events:auto!important;cursor:zoom-in!important}.gallery-lightbox{pointer-events:none!important}.gallery-lightbox.is-open{pointer-events:auto!important;visibility:visible!important;opacity:1!important}.gallery-lightbox figure{pointer-events:none}.gallery-lightbox button{pointer-events:auto}
@media(max-width:650px){.article-content figure.article-image{width:100%!important}.article-content figure.article-image img{border-radius:14px!important}}

/* V6.1 — fail-safe media and legal navigation */
.hero-symbol img:not([src]),.hero-symbol img[src=""],.hero-symbol img[src="#"]{display:none!important}
.hero-symbol:has(img:not([src])),.hero-symbol:has(img[src=""]),.hero-symbol:has(img[src="#"]){display:none!important}
.legal-page .site-header.scrolled .main-nav>a:not(.btn){color:#33405b!important}
.legal-page .site-header.scrolled .main-nav>a:not(.btn):hover{color:var(--navy)!important}
.legal-page .site-header.scrolled .main-nav>a:not(.btn)::after{background:var(--gold)!important}
.article-content>p img,.article-content div:not(.article-video-embed)>img,.article-content a>img{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;object-fit:contain!important;margin:26px auto!important;border-radius:18px!important}
.article-content figure.article-image{box-sizing:border-box!important;overflow:visible!important}
.article-content figure.article-image>img{aspect-ratio:auto!important;min-height:0!important}
.article-content iframe{max-width:100%!important}
.gallery-lightbox[hidden]{display:none!important}.gallery-lightbox:not([hidden]){display:grid!important}

/* V7 — carrossel circular e livros sem recortes */
.books-showcase{padding-top:132px;padding-bottom:126px;overflow:hidden}.books-heading{margin-bottom:56px;align-items:start}.books-heading>div,.books-heading>.lead{min-width:0}.books-heading .lead{padding-top:12px}.books-grid{align-items:stretch}.book-card{min-height:560px;grid-template-columns:minmax(190px,.82fr) minmax(0,1.18fr);overflow:hidden}.book-cover-stage{min-height:390px;padding:22px 8px}.book-cover-stage:before{inset:40px 0 20px}.book-cover{width:min(100%,230px);aspect-ratio:auto;overflow:visible;border-radius:0;background:transparent;box-shadow:none;transform:none}.book-card:hover .book-cover{transform:translateY(-6px)}.book-cover:after{display:none}.book-cover img{display:block;width:100%;height:auto!important;max-height:390px;object-fit:contain!important;border-radius:8px;box-shadow:0 28px 48px rgba(0,0,0,.38)}.book-cover-bigplayers{width:min(100%,255px);aspect-ratio:auto;background:transparent;box-shadow:none}.book-cover-bigplayers img{height:auto!important;max-height:330px;object-fit:contain!important}.book-shadow{bottom:12px;opacity:.7}.book-badge{top:12px;left:8px}.book-card-copy{padding-block:18px}.book-card h3{overflow-wrap:anywhere}
.manuals-carousel-shell{padding:12px 76px 48px}.manuals-viewport{position:relative;overflow:hidden;min-height:555px;padding:22px 0 32px}.manuals-track{position:relative;display:block;height:510px;transform:none;transition:none}.manual-cover-slide{position:absolute;top:0;left:50%;width:min(29vw,330px);height:500px;min-height:0;margin:0;display:grid;place-items:center;opacity:0;pointer-events:none;transform:translateX(-50%) scale(.72);filter:blur(1px);transition:left .55s cubic-bezier(.2,.75,.25,1),transform .55s cubic-bezier(.2,.75,.25,1),opacity .4s ease,filter .4s ease;z-index:0}.manual-cover-slide img{width:100%;height:500px;object-fit:contain;filter:drop-shadow(0 28px 34px rgba(6,18,47,.28))}.manual-cover-slide.is-active{left:50%;transform:translateX(-50%) scale(1);opacity:1;filter:none;pointer-events:auto;z-index:3}.manual-cover-slide.is-prev{left:17%;transform:translateX(-50%) scale(.86);opacity:.88;filter:none;z-index:2}.manual-cover-slide.is-next{left:83%;transform:translateX(-50%) scale(.86);opacity:.88;filter:none;z-index:2}.manual-cover-slide.is-hidden-slide{opacity:0;transform:translateX(-50%) scale(.65);z-index:0}.manuals-arrow{top:48%}.manuals-dots{position:relative;z-index:5;margin-top:0}
.article-content .article-image{display:block;width:min(100%,var(--media-width,100%));max-width:100%;margin:34px auto;text-align:center}.article-content .article-image.align-left{margin-left:0;margin-right:auto}.article-content .article-image.align-center{margin-left:auto;margin-right:auto}.article-content .article-image.align-right{margin-left:auto;margin-right:0}.article-content .article-image img,.article-content img.article-inline-image{display:block;width:100%;max-width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;aspect-ratio:auto!important;margin:0 auto}
@media(max-width:1000px){.book-card{grid-template-columns:170px minmax(0,1fr);padding:28px 24px}.manual-cover-slide{width:min(38vw,300px)}.manual-cover-slide.is-prev{left:12%}.manual-cover-slide.is-next{left:88%}}
@media(max-width:760px){.books-showcase{padding-top:96px;padding-bottom:92px}.books-heading{margin-bottom:34px}.book-card{grid-template-columns:1fr;min-height:auto}.book-cover-stage{min-height:330px}.book-cover img{max-height:330px}.book-cover-bigplayers img{max-height:280px}.manuals-carousel-shell{padding:4px 50px 34px}.manuals-viewport{min-height:445px}.manuals-track{height:410px}.manual-cover-slide,.manual-cover-slide img{width:min(72vw,285px);height:400px}.manual-cover-slide.is-prev,.manual-cover-slide.is-next{opacity:0;pointer-events:none}.manual-cover-slide.is-active{left:50%;transform:translateX(-50%) scale(1)}}

/* V7 — portal de notícias */
.news-portal-page{background:#f5f7fb}.news-portal-hero{padding:150px 0 78px;background:linear-gradient(150deg,var(--navy),#0b1d48);color:#fff;position:relative;overflow:hidden}.news-portal-hero:before{content:"";position:absolute;width:720px;height:720px;border-radius:50%;right:-330px;top:-360px;border:1px solid rgba(214,162,84,.18);box-shadow:0 0 0 90px rgba(214,162,84,.035),0 0 0 180px rgba(214,162,84,.02)}.news-portal-heading{position:relative;z-index:2;display:grid;grid-template-columns:1fr minmax(320px,.65fr);gap:70px;align-items:end;margin-bottom:45px}.news-portal-heading h1{color:#fff;margin:0}.news-portal-heading p{color:rgba(255,255,255,.64);margin:0}.news-top-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.45fr);gap:22px}.news-lead-story{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);min-height:470px;border:1px solid rgba(255,255,255,.13);border-radius:30px;overflow:hidden;background:rgba(255,255,255,.055);box-shadow:0 30px 70px rgba(0,0,0,.22)}.news-lead-image{min-height:100%;overflow:hidden}.news-lead-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.news-lead-story:hover .news-lead-image img{transform:scale(1.035)}.news-lead-copy{display:flex;flex-direction:column;justify-content:center;padding:42px}.news-lead-copy h2{color:#fff;font-size:clamp(2rem,3.4vw,3rem);margin:11px 0 17px}.news-lead-copy p{color:rgba(255,255,255,.62)}.news-kicker{color:var(--gold-2);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.news-story-meta{display:flex;flex-wrap:wrap;gap:9px 18px;color:#8994ab;font-size:.68rem;font-weight:700}.news-lead-copy .news-story-meta{color:rgba(255,255,255,.48);margin:4px 0 25px}.news-category-list{display:flex;flex-wrap:wrap;gap:7px}.news-category-list a{padding:6px 9px;border-radius:999px;background:rgba(214,162,84,.16);color:var(--gold-2);font-size:.61rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.news-category-list.small a{background:#f0f2f6;color:#35415b}.news-top-sidebar{padding:25px;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:rgba(255,255,255,.045)}.news-top-sidebar-head{padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.1)}.news-top-sidebar-head span{color:var(--gold-2);font-size:.62rem;text-transform:uppercase;font-weight:800;letter-spacing:.12em}.news-top-sidebar-head h2{color:#fff;font-size:1.45rem;margin:7px 0 0}.news-top-sidebar article{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.09)}.news-top-sidebar article:last-child{border-bottom:0}.news-top-sidebar h3{font-size:1.02rem;line-height:1.45;margin:9px 0;color:#fff}.news-top-sidebar h3 a{color:#fff}.news-mini-link{color:var(--gold-2);font-size:.68rem;font-weight:800}.news-portal-content{padding:55px 0 110px}.news-category-nav{display:flex;gap:8px;overflow-x:auto;padding:4px 0 18px;margin-bottom:28px;scrollbar-width:none}.news-category-nav::-webkit-scrollbar{display:none}.news-category-nav a{flex:0 0 auto;padding:10px 14px;border:1px solid #dfe3eb;border-radius:999px;background:#fff;color:#526079;font-size:.72rem;font-weight:800}.news-category-nav a span{margin-left:5px;color:#8e98aa}.news-category-nav a.active,.news-category-nav a:hover{background:var(--navy);border-color:var(--navy);color:#fff}.news-category-nav a.active span,.news-category-nav a:hover span{color:rgba(255,255,255,.55)}.news-content-toolbar{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:32px}.news-content-toolbar h2{margin:0 0 8px}.news-content-toolbar p{margin:0}.news-search-form{display:flex;gap:8px;width:min(100%,420px)}.news-search-form input{flex:1;min-width:0;padding:13px 16px;border:1px solid #dfe3eb;border-radius:999px;background:#fff;outline:none}.news-search-form input:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(214,162,84,.11)}.news-search-form button{border:0;border-radius:999px;padding:12px 18px;background:var(--navy);color:#fff;font-weight:800}.news-portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.news-card{overflow:hidden;border:1px solid #e1e5ed;border-radius:24px;background:#fff;box-shadow:0 15px 42px rgba(6,18,47,.055);transition:transform .3s ease,box-shadow .3s ease}.news-card:hover{transform:translateY(-5px);box-shadow:0 25px 55px rgba(6,18,47,.11)}.news-card-image{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:#e9edf4}.news-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.news-card:hover .news-card-image img{transform:scale(1.04)}.news-card-image>span{position:absolute;left:15px;bottom:14px;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--navy);font-size:.62rem;font-weight:800}.news-card-body{padding:23px}.news-card-body h3{font-size:1.22rem;line-height:1.38;margin:13px 0 11px}.news-card-body p{font-size:.82rem;line-height:1.65}.news-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:40px}.news-pagination a{min-width:42px;height:42px;padding:0 13px;display:grid;place-items:center;border:1px solid #dfe3eb;border-radius:12px;background:#fff;color:var(--navy);font-size:.75rem;font-weight:800}.news-pagination a.active,.news-pagination a:hover{background:var(--navy);border-color:var(--navy);color:#fff}.news-empty-state{grid-column:1/-1;padding:65px;text-align:center;border:1px dashed #ccd3df;border-radius:25px;background:#fff}.post-category-list{display:flex;flex-wrap:wrap;gap:5px;margin:0 0 10px}.post-category-list span{padding:5px 8px;border-radius:999px;background:#f1f3f7;color:#4d5a72;font-size:.58rem;font-weight:800}
@media(max-width:1000px){.news-top-grid{grid-template-columns:1fr}.news-top-sidebar{display:grid;grid-template-columns:repeat(3,1fr);gap:0}.news-top-sidebar-head{grid-column:1/-1}.news-top-sidebar article{padding:20px 14px;border-bottom:0;border-right:1px solid rgba(255,255,255,.09)}.news-top-sidebar article:last-child{border-right:0}.news-portal-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.news-portal-hero{padding:116px 0 65px}.news-portal-heading{grid-template-columns:1fr;gap:14px}.news-lead-story{grid-template-columns:1fr}.news-lead-image{min-height:260px}.news-lead-copy{padding:28px 22px}.news-top-sidebar{grid-template-columns:1fr}.news-top-sidebar article{border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}.news-content-toolbar{align-items:stretch;flex-direction:column}.news-search-form{width:100%}.news-portal-grid{grid-template-columns:1fr}.news-empty-state{padding:40px 20px}}
.article-category-list{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}.article-category-list a{padding:7px 10px;border-radius:999px;background:rgba(214,162,84,.14);color:#8c6228;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.section.books-showcase{padding-top:max(110px,var(--cms-section-spacing,118px))!important;padding-bottom:max(110px,var(--cms-section-spacing,118px))!important}
@media(max-width:760px){.section.books-showcase{padding-top:88px!important;padding-bottom:88px!important}}


/* V7.1 — acabamento dos livros e navegação por âncora */
#livro,#ebooks,#eventos,#grupo-liber,#palestras,#habitos,#contato{scroll-margin-top:86px}
.book-card.tilt-card{transform:none!important}
.book-card::before,.book-cover-stage::before,.book-shadow{display:none!important}
.book-card{overflow:hidden;isolation:isolate}
.book-cover-stage{padding:22px 14px;overflow:visible}
.book-cover,.book-cover-bigplayers{overflow:visible!important;transform:none!important}
.book-cover img,.book-cover-bigplayers img{width:auto!important;max-width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important;margin-inline:auto}
.book-cover-protecao img{max-height:390px!important}
.book-cover-bigplayers img{max-height:310px!important}
.book-card:hover .book-cover{transform:translateY(-4px)!important}
.book-badge{z-index:5}
@media(max-width:760px){.book-cover-protecao img{max-height:320px!important}.book-cover-bigplayers img{max-height:270px!important}}


/* V8 — carrossel infinito estável e portal de notícias editorial */
.manuals-carousel-shell{padding:14px 70px 42px!important}
.manuals-viewport{overflow:hidden!important;min-height:0!important;padding:28px 0 36px!important}
.manuals-track{position:relative!important;display:flex!important;align-items:center!important;gap:var(--manual-gap,28px)!important;height:auto!important;min-height:510px!important;will-change:transform!important;transition:transform .56s cubic-bezier(.2,.75,.25,1)}
.manual-cover-slide{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;flex:0 0 var(--manual-slide-width,330px)!important;width:var(--manual-slide-width,330px)!important;height:500px!important;min-height:500px!important;margin:0!important;display:grid!important;place-items:center!important;opacity:.36!important;pointer-events:none!important;transform:scale(.82)!important;filter:saturate(.82)!important;z-index:1!important;transition:transform .42s ease,opacity .42s ease,filter .42s ease!important}
.manual-cover-slide.is-visible{opacity:.78!important;pointer-events:auto!important;filter:none!important;transform:scale(.9)!important}
.manual-cover-slide.is-active{opacity:1!important;transform:scale(1)!important;filter:none!important;z-index:3!important}
.manual-cover-slide.is-side{z-index:2!important}
.manual-cover-slide img{display:block!important;width:100%!important;max-width:340px!important;height:500px!important;object-fit:contain!important;object-position:center!important;filter:drop-shadow(0 24px 30px rgba(6,18,47,.23))!important}
.manuals-arrow{top:49%!important}
.manuals-dots{margin-top:2px!important}
@media(max-width:1020px){.manuals-carousel-shell{padding-inline:54px!important}.manuals-track{min-height:455px!important}.manual-cover-slide,.manual-cover-slide img{height:440px!important;min-height:440px!important;max-width:310px!important}}
@media(max-width:700px){.manuals-carousel-shell{padding:4px 46px 32px!important}.manuals-viewport{padding:16px 0 24px!important}.manuals-track{min-height:400px!important}.manual-cover-slide,.manual-cover-slide img{height:390px!important;min-height:390px!important;max-width:285px!important}.manuals-arrow{width:40px!important;height:56px!important}}

.news-portal-page{background:#f5f7fb}
.news-portal-hero{padding:132px 0 112px!important;background:linear-gradient(145deg,#05102a 0%,#0a1b43 100%)!important;position:relative;overflow:hidden}
.news-portal-hero:before{width:560px!important;height:560px!important;right:-250px!important;top:-300px!important}
.news-portal-heading{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr)!important;gap:64px!important;align-items:end!important;margin:0!important;position:relative;z-index:2}
.news-portal-heading h1{font-size:clamp(2.6rem,5vw,4.3rem)!important;color:#fff!important;margin:0!important}
.news-portal-heading p{max-width:520px;color:rgba(255,255,255,.68)!important;font-size:1rem;line-height:1.75;margin:0!important}
.news-editorial-section{position:relative;margin-top:-68px;padding:0 0 38px;z-index:4}
.news-editorial-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(310px,.62fr);gap:22px;align-items:stretch}
.news-feature-card{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(330px,.96fr);min-height:420px;border:1px solid #e1e6ef;border-radius:28px;background:#fff;overflow:hidden;box-shadow:0 26px 70px rgba(6,18,47,.14)}
.news-feature-image{position:relative;display:block;min-height:420px;overflow:hidden;background:#e8ecf3}
.news-feature-image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s ease}
.news-feature-card:hover .news-feature-image img{transform:scale(1.035)}
.news-feature-badge{position:absolute;left:22px;top:22px;padding:9px 13px;border-radius:999px;background:var(--gold);color:var(--navy);font-size:.64rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.news-feature-body{display:flex;flex-direction:column;justify-content:center;padding:38px 40px;min-width:0}
.news-feature-body h2{font-size:clamp(1.75rem,2.8vw,2.55rem);line-height:1.16;margin:16px 0 15px;color:var(--navy)}
.news-feature-body p{font-size:.92rem;line-height:1.7;margin-bottom:24px}
.news-feature-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:auto;padding-top:20px;border-top:1px solid #e7eaf0}
.news-read-link{display:inline-flex;align-items:center;gap:9px;color:var(--navy);font-size:.76rem;font-weight:850;white-space:nowrap}
.news-read-link span{color:#9c6924;transition:transform .2s ease}.news-read-link:hover span{transform:translateX(3px)}
.news-latest-panel{padding:25px;border:1px solid #e1e6ef;border-radius:28px;background:#fff;box-shadow:0 22px 55px rgba(6,18,47,.09)}
.news-latest-head{padding-bottom:18px;border-bottom:1px solid #e7eaf0}.news-latest-head>span{color:#996824;font-size:.63rem;text-transform:uppercase;letter-spacing:.12em;font-weight:850}.news-latest-head h2{font-size:1.45rem;margin:6px 0 0}
.news-latest-list{display:grid}.news-latest-list article{display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid #e9ecf1}.news-latest-list article:last-child{border-bottom:0;padding-bottom:0}
.news-latest-thumb{display:block;width:92px;aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:#e9edf3}.news-latest-thumb img{width:100%;height:100%;object-fit:cover}
.news-latest-list h3{font-size:.93rem;line-height:1.38;margin:7px 0 0}.news-latest-list .news-story-meta{font-size:.61rem}
.news-portal-content{padding:42px 0 110px!important}
.news-content-toolbar{padding:26px 28px;border:1px solid #e2e6ee;border-radius:22px;background:#fff;box-shadow:0 12px 36px rgba(6,18,47,.045)}
.news-category-nav{margin-bottom:18px!important}
.news-portal-grid{margin-top:26px}
.news-card{border-radius:22px!important}.news-card-body{padding:22px!important}.news-card-body h3{font-size:1.16rem!important}
@media(max-width:1040px){.news-editorial-grid{grid-template-columns:1fr}.news-latest-panel{padding:22px}.news-latest-list{grid-template-columns:repeat(3,1fr);gap:0}.news-latest-list article{grid-template-columns:76px minmax(0,1fr);padding:15px;border-bottom:0;border-right:1px solid #e9ecf1}.news-latest-list article:last-child{border-right:0;padding-bottom:15px}.news-latest-thumb{width:76px}}
@media(max-width:800px){.news-portal-heading{grid-template-columns:1fr!important;gap:15px!important}.news-portal-hero{padding:112px 0 95px!important}.news-editorial-section{margin-top:-52px}.news-feature-card{grid-template-columns:1fr}.news-feature-image{min-height:280px;aspect-ratio:16/9}.news-feature-body{padding:28px 24px}.news-latest-list{grid-template-columns:1fr}.news-latest-list article{grid-template-columns:88px minmax(0,1fr);border-right:0;border-bottom:1px solid #e9ecf1}.news-latest-list article:last-child{border-bottom:0}.news-content-toolbar{align-items:stretch!important;flex-direction:column!important;padding:22px}.news-search-form{width:100%!important}}
@media(max-width:520px){.news-feature-footer{align-items:flex-start;flex-direction:column}.news-portal-hero{padding-bottom:82px!important}.news-editorial-section{margin-top:-40px}.news-feature-card,.news-latest-panel{border-radius:21px}.news-feature-image{min-height:220px}.news-feature-body h2{font-size:1.65rem}.news-latest-list article{grid-template-columns:72px minmax(0,1fr)}.news-latest-thumb{width:72px}}


/* V9 — topo do portal, faixa do artigo e notícias relacionadas */
.portal-header:not(.scrolled){background:transparent!important;box-shadow:none!important;backdrop-filter:none!important}
.portal-header:not(.scrolled) .brand-light{opacity:1!important}.portal-header:not(.scrolled) .brand-dark{opacity:0!important}
.portal-header:not(.scrolled) .main-nav{color:rgba(255,255,255,.78)!important}.portal-header:not(.scrolled) .main-nav>a:not(.btn):hover{color:#fff!important}
.portal-header:not(.scrolled) .menu-toggle span{background:#fff!important}

.news-portal-hero{padding:132px 0 72px!important;background:linear-gradient(140deg,#05102a 0%,#0a1c47 72%,#102654 100%)!important;overflow:hidden!important;position:relative!important}
.news-portal-hero:before{content:""!important;position:absolute!important;width:540px!important;height:540px!important;right:-190px!important;top:-330px!important;border-radius:50%!important;border:1px solid rgba(214,162,84,.2)!important;box-shadow:0 0 0 72px rgba(214,162,84,.035),0 0 0 145px rgba(214,162,84,.018)!important}
.news-portal-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,transparent,black 60%,transparent);pointer-events:none}
.news-portal-hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:70px;align-items:end}
.news-portal-copy{min-width:0}.news-portal-copy h1{color:#fff!important;font-size:clamp(2.7rem,5vw,4.4rem)!important;line-height:1!important;margin:0 0 18px!important;letter-spacing:-.055em!important}.news-portal-copy p{max-width:700px;margin:0!important;color:rgba(255,255,255,.68)!important;font-size:1.02rem;line-height:1.75}
.news-portal-highlight{padding:22px 23px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.055);backdrop-filter:blur(12px);color:#fff;box-shadow:0 22px 55px rgba(0,0,0,.16)}
.news-portal-highlight>span{display:block;color:var(--gold-2);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.news-portal-highlight>strong{display:block;font-size:2.6rem;line-height:1;margin:13px 0 4px;color:#fff}.news-portal-highlight>small{display:block;color:rgba(255,255,255,.52);font-size:.7rem}.news-portal-highlight>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:17px}.news-portal-highlight b{padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.07);color:rgba(255,255,255,.68);font-size:.58rem}
.news-editorial-section{margin:0!important;padding:34px 0 42px!important;background:#f5f7fb!important}.news-editorial-grid{grid-template-columns:minmax(0,1.55fr) minmax(310px,.55fr)!important;gap:22px!important}.news-feature-card{min-height:380px!important;border-radius:26px!important}.news-feature-image{min-height:380px!important}.news-feature-body{padding:34px 36px!important}.news-feature-body h2{font-size:clamp(1.7rem,2.5vw,2.35rem)!important}.news-latest-panel{border-radius:26px!important}

.article-title-band{padding:142px 0 70px!important;background:linear-gradient(140deg,#05102a 0%,#0a1c47 76%,#102654 100%)!important;color:#fff!important;position:relative!important;overflow:hidden!important}
.article-title-effect{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:74px 74px;mask-image:radial-gradient(circle at 80% 45%,black,transparent 72%)}
.article-title-effect:before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-170px;top:-250px;border:1px solid rgba(214,162,84,.22);box-shadow:0 0 0 65px rgba(214,162,84,.035),0 0 0 130px rgba(214,162,84,.018)}
.article-title-inner{position:relative;z-index:2}.article-title-band h1{max-width:980px!important;color:#fff!important;font-size:clamp(2.25rem,4.4vw,3.75rem)!important;line-height:1.12!important;margin:18px 0 24px!important}.article-title-band .breadcrumb{color:rgba(255,255,255,.52)!important}.article-title-band .breadcrumb a{color:rgba(255,255,255,.7)!important}.article-title-band .article-meta{color:rgba(255,255,255,.58)!important}.article-title-band .article-category-list a{background:rgba(214,162,84,.16)!important;color:var(--gold-2)!important;border:1px solid rgba(214,162,84,.2)!important}
.article-cover{margin-top:-28px!important;position:relative;z-index:3;border:7px solid #fff!important}.article-body-section{padding-top:80px!important}
.article-related-section{background:#f5f7fb!important;padding-top:90px!important}.article-related-heading{align-items:end}.article-related-heading h2{margin-bottom:0}.article-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-related-card{overflow:hidden;border:1px solid #e1e5ed;border-radius:23px;background:#fff;box-shadow:0 15px 42px rgba(6,18,47,.06);transition:.28s}.article-related-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(6,18,47,.11)}.article-related-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#e8ecf3}.article-related-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.article-related-card:hover img{transform:scale(1.04)}.article-related-card>div{padding:22px}.article-related-card>div>span{display:block;color:#956724;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.article-related-card h3{font-size:1.15rem;line-height:1.38;margin:10px 0}.article-related-card p{font-size:.8rem;line-height:1.65;margin-bottom:15px}

@media(max-width:1000px){.news-portal-hero-inner{grid-template-columns:1fr;gap:25px}.news-portal-highlight{max-width:360px}.news-editorial-grid{grid-template-columns:1fr!important}.article-related-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.portal-header:not(.scrolled) .main-nav{color:var(--navy)!important}.news-portal-hero{padding:112px 0 58px!important}.news-portal-copy h1{font-size:2.75rem!important}.news-portal-highlight{max-width:none}.news-feature-card{grid-template-columns:1fr!important}.news-feature-image{min-height:250px!important}.article-title-band{padding:116px 0 54px!important}.article-cover{margin-top:-18px!important;border-width:4px!important}.article-related-grid{grid-template-columns:1fr}.article-related-heading{display:block!important}.article-related-heading .text-link{margin-top:15px}}


/* V12 — Consentimento de cookies e preferências LGPD */
.footer-legal-links button,[data-cookie-preferences]{appearance:none;border:0;background:transparent;color:inherit;font:inherit;padding:0;cursor:pointer}.footer-legal-links button{display:inline-flex;color:rgba(255,255,255,.58);font-size:.77rem;white-space:nowrap}.footer-legal-links button:hover{color:#fff}.legal-cookie-preferences{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 0!important;border-top:1px solid #e5e8ee!important;color:var(--navy)!important;font-size:.76rem!important;font-weight:800!important;text-align:left}.cookie-consent-root{position:relative;z-index:7000}.cookie-banner{position:fixed;z-index:7000;left:50%;bottom:22px;transform:translateX(-50%);width:min(calc(100% - 32px),1180px);display:grid;grid-template-columns:minmax(230px,.72fr) minmax(320px,1.2fr) auto;align-items:center;gap:26px;padding:20px 22px;border:1px solid rgba(239,196,119,.28);border-radius:24px;background:linear-gradient(135deg,rgba(3,11,32,.98),rgba(10,26,67,.98));box-shadow:0 26px 80px rgba(2,8,23,.38);backdrop-filter:blur(20px);color:#fff}.cookie-banner[hidden]{display:none!important}.cookie-brand{display:flex;align-items:center;gap:13px;min-width:0}.cookie-brand-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:15px;background:rgba(255,255,255,.08);border:1px solid rgba(239,196,119,.26)}.cookie-brand-icon img{width:30px;height:30px;object-fit:contain}.cookie-brand div{display:grid;gap:2px}.cookie-brand span{color:var(--gold-2);font-size:.62rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.cookie-brand strong{color:#fff;font-size:1.02rem;line-height:1.25}.cookie-banner-copy p{margin:0 0 5px;color:rgba(255,255,255,.68);font-size:.78rem;line-height:1.55}.cookie-banner-copy a{color:var(--gold-2);font-size:.7rem;font-weight:800}.cookie-banner-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.cookie-btn{min-height:43px;display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border-radius:999px;border:1px solid transparent;font-size:.7rem;font-weight:800;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}.cookie-btn:hover{transform:translateY(-1px)}.cookie-btn-primary{background:var(--gold);color:var(--navy);box-shadow:0 10px 24px rgba(214,162,84,.2)}.cookie-btn-secondary{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);color:#fff}.cookie-btn-outline{background:transparent;border-color:rgba(239,196,119,.42);color:var(--gold-2)}.cookie-modal{position:fixed;z-index:7100;inset:0;display:grid;place-items:center;padding:24px}.cookie-modal[hidden]{display:none!important}.cookie-modal-backdrop{position:absolute;inset:0;background:rgba(2,8,23,.72);backdrop-filter:blur(8px)}.cookie-modal-card{position:relative;width:min(100%,680px);max-height:min(86vh,760px);overflow:auto;padding:30px;border-radius:28px;background:#fff;border:1px solid #e5e8ee;box-shadow:0 38px 100px rgba(2,8,23,.38)}.cookie-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:20px;border-bottom:1px solid #e8ebf1}.cookie-modal-head span{color:#9b6a26;font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.cookie-modal-head h2{margin:6px 0 0;font-size:clamp(1.55rem,3vw,2.15rem);color:var(--navy);letter-spacing:-.035em}.cookie-modal-close{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:50%;border:1px solid #e1e5ed;background:#f7f8fb;color:var(--navy);font-size:1.45rem;cursor:pointer}.cookie-modal-intro{margin:20px 0;color:#667085;font-size:.83rem}.cookie-category-list{display:grid;gap:12px}.cookie-category{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;padding:18px;border:1px solid #e4e8ef;border-radius:19px;background:#fbfcfe}.cookie-category strong{display:block;color:var(--navy);font-size:.88rem;margin-bottom:4px}.cookie-category p{margin:0;color:#6b7588;font-size:.72rem;line-height:1.5}.cookie-required{padding:7px 10px;border-radius:999px;background:rgba(6,18,47,.06);color:var(--navy);font-size:.62rem;font-weight:800;white-space:nowrap}.cookie-switch{position:relative;width:50px;height:28px;flex:0 0 50px}.cookie-switch input{position:absolute;opacity:0;pointer-events:none}.cookie-switch i{position:absolute;inset:0;border-radius:999px;background:#d9dee7;transition:.22s ease;box-shadow:inset 0 0 0 1px rgba(6,18,47,.05)}.cookie-switch i:after{content:"";position:absolute;width:22px;height:22px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 3px 10px rgba(6,18,47,.2);transition:.22s ease}.cookie-switch input:checked+i{background:var(--gold)}.cookie-switch input:checked+i:after{transform:translateX(22px);background:var(--navy)}.cookie-switch input:focus-visible+i{outline:3px solid rgba(214,162,84,.26);outline-offset:2px}.cookie-modal-links{display:flex;gap:18px;flex-wrap:wrap;margin:18px 0;color:#8b6125;font-size:.7rem;font-weight:800}.cookie-modal-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:20px;border-top:1px solid #e8ebf1}.cookie-modal-actions .cookie-btn-secondary{color:var(--navy);border-color:#dfe4ec;background:#f7f8fb}.cookie-modal-open{overflow:hidden}
@media(max-width:980px){.cookie-banner{grid-template-columns:1fr auto}.cookie-banner-copy{grid-column:1/-1;grid-row:2}.cookie-banner-actions{grid-column:2;grid-row:1/3;max-width:250px}.cookie-banner-actions .cookie-btn{width:100%}}
@media(max-width:700px){.cookie-banner{bottom:10px;width:calc(100% - 20px);grid-template-columns:1fr;gap:14px;padding:18px;border-radius:20px}.cookie-banner-copy,.cookie-banner-actions{grid-column:auto;grid-row:auto;max-width:none}.cookie-banner-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.cookie-banner-actions .cookie-btn-primary{grid-column:1/-1;grid-row:1}.cookie-banner-actions .cookie-btn{width:100%;padding-inline:10px}.cookie-modal{padding:10px}.cookie-modal-card{padding:22px 18px;border-radius:22px}.cookie-category{grid-template-columns:1fr auto;padding:15px;gap:12px}.cookie-modal-actions{display:grid;grid-template-columns:1fr}.cookie-modal-actions .cookie-btn{width:100%}}

.site-footer [data-cookie-preferences]{display:block;margin:9px 0;color:rgba(255,255,255,.58);font-size:.77rem;text-align:left;transition:color .2s ease}.site-footer [data-cookie-preferences]:hover{color:#fff}.footer-legal-links [data-cookie-preferences]{display:inline-flex;margin:0}

/* V13 — Empresas do Grupo em carrossel compacto */
.ecosystem-section {
  padding: 92px 0 82px;
}
.ecosystem-section .section-heading {
  margin-bottom: 34px;
}
.ecosystem-carousel {
  --company-gap: 18px;
  position: relative;
  padding: 0 56px 42px;
}
.ecosystem-carousel-viewport {
  overflow: hidden;
  padding: 10px 4px 22px;
}
.ecosystem-carousel-track {
  display: flex;
  gap: var(--company-gap);
  will-change: transform;
}
.ecosystem-slide {
  flex: 0 0 var(--company-slide-width, calc((100% - 36px) / 3));
  min-width: 0;
}
.ecosystem-carousel .ecosystem-card-v4 {
  min-height: 376px;
  height: 100%;
  padding: 18px;
  gap: 14px;
  border-radius: 22px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 14px 34px rgba(6,18,47,.065);
  transform: none;
}
.ecosystem-carousel .ecosystem-card-v4:hover {
  transform: translateY(-4px);
  box-shadow: 0 22px 48px rgba(6,18,47,.11);
}
.ecosystem-carousel .ecosystem-logo-shell {
  height: 126px;
  padding: 11px;
  border-radius: 17px;
  display: grid;
  place-items: center;
  overflow: hidden;
}
.ecosystem-carousel .ecosystem-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 12px;
}
.ecosystem-carousel .ecosystem-copy {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 9px;
  min-width: 0;
}
.ecosystem-carousel .ecosystem-tags {
  gap: 6px;
  min-height: 27px;
}
.ecosystem-carousel .ecosystem-tags span {
  padding: 5px 8px;
  font-size: .55rem;
  letter-spacing: .04em;
}
.ecosystem-carousel .ecosystem-copy h3 {
  margin: 0;
  font-size: 1.12rem;
  line-height: 1.22;
}
.ecosystem-carousel .ecosystem-copy p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  margin: 0;
  font-size: .76rem;
  line-height: 1.58;
}
.ecosystem-carousel .ecosystem-card-v4 .btn {
  width: max-content;
  min-height: 42px;
  margin-top: auto;
  padding: 9px 16px;
  font-size: .73rem;
}
.ecosystem-carousel-arrow {
  position: absolute;
  top: calc(50% - 28px);
  z-index: 5;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(6,18,47,.1);
  border-radius: 50%;
  background: rgba(255,255,255,.96);
  color: var(--navy);
  display: grid;
  place-items: center;
  font-size: 1.65rem;
  line-height: 1;
  box-shadow: 0 12px 30px rgba(6,18,47,.12);
  transition: transform .22s ease, background .22s ease, color .22s ease, border-color .22s ease;
}
.ecosystem-carousel-arrow:hover {
  transform: translateY(-2px);
  background: var(--navy);
  border-color: var(--navy);
  color: white;
}
.ecosystem-carousel-prev { left: 0; }
.ecosystem-carousel-next { right: 0; }
.ecosystem-carousel-dots {
  position: absolute;
  left: 50%;
  bottom: 5px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}
.ecosystem-carousel-dot {
  width: 7px;
  height: 7px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(6,18,47,.22);
  transition: width .22s ease, background .22s ease;
}
.ecosystem-carousel-dot.is-active {
  width: 24px;
  background: var(--gold);
}

@media (max-width: 1080px) {
  .ecosystem-carousel {
    --company-gap: 16px;
    padding-inline: 52px;
  }
  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 364px;
  }
}

@media (max-width: 700px) {
  .ecosystem-section {
    padding: 76px 0 68px;
  }
  .ecosystem-section .section-heading {
    margin-bottom: 24px;
  }
  .ecosystem-carousel {
    --company-gap: 12px;
    padding: 0 0 64px;
  }
  .ecosystem-carousel-viewport {
    padding: 8px 2px 18px;
  }
  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 346px;
    padding: 16px;
    border-radius: 20px;
  }
  .ecosystem-carousel .ecosystem-logo-shell {
    height: 116px;
  }
  .ecosystem-carousel .ecosystem-copy p {
    -webkit-line-clamp: 3;
  }
  .ecosystem-carousel .ecosystem-card-v4 .btn {
    width: 100%;
  }
  .ecosystem-carousel-arrow {
    top: auto;
    bottom: 4px;
    width: 40px;
    height: 40px;
  }
  .ecosystem-carousel-prev {
    left: calc(50% - 94px);
  }
  .ecosystem-carousel-next {
    right: calc(50% - 94px);
  }
  .ecosystem-carousel-dots {
    bottom: 20px;
  }
}
.ecosystem-slide.is-active {
  border-color: rgba(214,162,84,.48);
  box-shadow: 0 22px 52px rgba(6,18,47,.11);
}

/* V14 — Logos sem corte e empresa central em evidência no desktop */
.ecosystem-carousel .ecosystem-logo-shell {
  background: #fff;
  border: 1px solid rgba(6,18,47,.07);
}

.ecosystem-carousel .ecosystem-logo {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
}

.ecosystem-carousel .ecosystem-card-v4 {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  transition: transform .32s cubic-bezier(.2,.75,.25,1),
              background .32s ease,
              border-color .32s ease,
              box-shadow .32s ease;
}

@media (min-width: 701px) {
  .ecosystem-carousel .ecosystem-slide.is-active {
    background: linear-gradient(145deg, var(--navy), var(--navy-2));
    border-color: rgba(239,196,119,.62);
    box-shadow: 0 28px 66px rgba(6,18,47,.24);
    transform: translateY(-8px) scale(1.015);
  }

  .ecosystem-carousel .ecosystem-slide.is-active::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 240px;
    height: 240px;
    right: -126px;
    bottom: -138px;
    border-radius: 50%;
    border: 1px solid rgba(239,196,119,.2);
    box-shadow: 0 0 0 48px rgba(239,196,119,.04),
                0 0 0 98px rgba(239,196,119,.022);
    pointer-events: none;
  }

  .ecosystem-carousel .ecosystem-slide.is-active:hover {
    transform: translateY(-10px) scale(1.015);
    box-shadow: 0 32px 72px rgba(6,18,47,.28);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell {
    background: rgba(255,255,255,.98);
    border-color: rgba(239,196,119,.34);
    box-shadow: 0 12px 28px rgba(0,0,0,.12);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy h3 {
    color: #fff;
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy p {
    color: rgba(255,255,255,.72);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-tags span {
    color: var(--gold-2);
    background: rgba(239,196,119,.1);
    border-color: rgba(239,196,119,.23);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .btn-gold {
    background: var(--gold-2);
    color: var(--navy);
    box-shadow: 0 14px 32px rgba(0,0,0,.18);
  }
}

@media (max-width: 700px) {
  .ecosystem-carousel .ecosystem-slide.is-active {
    background: linear-gradient(180deg, #fff, #fbfbfd);
    border-color: var(--line);
    box-shadow: 0 14px 34px rgba(6,18,47,.065);
    transform: none;
  }

  .ecosystem-carousel .ecosystem-slide.is-active:hover {
    transform: none;
  }
}

/* V15 — Carrossel de empresas com mais respiro, logos íntegros e transição premium */
.ecosystem-carousel {
  --company-gap: 22px;
  padding: 2px 62px 50px;
}

.ecosystem-carousel-viewport {
  position: relative;
  overflow: hidden;
  padding: 20px 8px 30px;
}

.ecosystem-carousel-track {
  align-items: stretch;
  gap: var(--company-gap);
  will-change: transform;
  backface-visibility: hidden;
}

.ecosystem-carousel .ecosystem-slide {
  min-width: 0;
  opacity: .88;
  transform: translateY(4px) scale(.975);
  transform-origin: center center;
  transition:
    transform .52s cubic-bezier(.22,.72,.2,1),
    opacity .42s ease,
    filter .42s ease,
    background-color .42s ease,
    border-color .42s ease,
    box-shadow .42s ease;
}

.ecosystem-carousel .ecosystem-slide.is-nearby {
  opacity: .94;
  filter: saturate(.96);
}

.ecosystem-carousel .ecosystem-slide.is-offstage {
  opacity: .68;
  pointer-events: none;
}

.ecosystem-carousel .ecosystem-card-v4 {
  min-height: 418px;
  height: 100%;
  padding: 24px;
  gap: 0;
  border-radius: 26px;
  border-color: rgba(6,18,47,.09);
  background: linear-gradient(180deg,#fff 0%,#fbfcff 100%);
  box-shadow: 0 16px 38px rgba(6,18,47,.075);
}

/* The image area has enough internal margin and always renders the full logo. */
.ecosystem-carousel .ecosystem-logo-shell {
  width: 100%;
  height: 150px;
  margin: 0 0 19px;
  padding: 14px 18px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 20px;
  background: #fff;
  border: 1px solid rgba(6,18,47,.075);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.6);
}

.ecosystem-carousel .ecosystem-logo,
.ecosystem-carousel .ecosystem-logo-shell img {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  padding: 8px 12px !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 0 !important;
  transform: none !important;
}

.ecosystem-carousel .ecosystem-copy {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.ecosystem-carousel .ecosystem-tags {
  min-height: 28px;
  margin: 0 0 13px;
  gap: 7px;
  align-content: flex-start;
}

.ecosystem-carousel .ecosystem-tags span {
  padding: 6px 9px;
  border-radius: 999px;
  font-size: .56rem;
  line-height: 1.15;
  letter-spacing: .045em;
}

.ecosystem-carousel .ecosystem-copy h3 {
  margin: 0 0 10px;
  font-size: 1.18rem;
  line-height: 1.22;
  letter-spacing: -.025em;
}

.ecosystem-carousel .ecosystem-copy p {
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  font-size: .77rem;
  line-height: 1.68;
}

.ecosystem-carousel .ecosystem-card-v4 .btn {
  width: max-content;
  min-width: 170px;
  min-height: 48px;
  margin-top: 22px;
  padding: 10px 12px 10px 18px;
  justify-content: space-between;
  gap: 14px;
  border-radius: 15px;
  background: var(--navy);
  color: #fff;
  border-color: var(--navy);
  box-shadow: 0 12px 26px rgba(6,18,47,.15);
  font-size: .73rem;
}

.ecosystem-carousel .ecosystem-card-v4 .btn > span {
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(255,255,255,.12);
  transition: transform .25s ease, background .25s ease;
}

.ecosystem-carousel .ecosystem-card-v4 .btn:hover {
  background: var(--navy-2);
  border-color: var(--navy-2);
  transform: translateY(-2px);
  box-shadow: 0 17px 34px rgba(6,18,47,.2);
}

.ecosystem-carousel .ecosystem-card-v4 .btn:hover > span {
  transform: translate(2px,-2px);
  background: rgba(255,255,255,.2);
}

@media (min-width: 701px) {
  .ecosystem-carousel .ecosystem-slide.is-active {
    opacity: 1;
    filter: none;
    transform: translateY(-10px) scale(1.022);
    background: linear-gradient(145deg,#071536 0%,#0b2255 100%);
    border-color: rgba(239,196,119,.7);
    box-shadow: 0 30px 72px rgba(6,18,47,.25);
  }

  .ecosystem-carousel.is-transitioning .ecosystem-slide.is-active {
    transform: translateY(-3px) scale(.992);
    box-shadow: 0 20px 48px rgba(6,18,47,.16);
  }

  .ecosystem-carousel.is-transitioning.is-settling .ecosystem-slide.is-active {
    transform: translateY(-10px) scale(1.022);
    box-shadow: 0 30px 72px rgba(6,18,47,.25);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell {
    border-color: rgba(239,196,119,.34);
    box-shadow: 0 14px 34px rgba(0,0,0,.15);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy h3 {
    color: #fff;
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy p {
    color: rgba(255,255,255,.7);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-tags span {
    color: var(--gold-2);
    background: rgba(239,196,119,.1);
    border-color: rgba(239,196,119,.24);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .btn {
    background: var(--gold);
    border-color: var(--gold);
    color: var(--navy);
    box-shadow: 0 15px 34px rgba(0,0,0,.2);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .btn > span {
    background: rgba(6,18,47,.1);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .btn:hover {
    background: var(--gold-2);
    border-color: var(--gold-2);
  }
}

.ecosystem-carousel-arrow {
  width: 48px;
  height: 48px;
  top: calc(50% - 36px);
  border-radius: 16px;
  border-color: rgba(6,18,47,.09);
  background: rgba(255,255,255,.98);
  box-shadow: 0 14px 34px rgba(6,18,47,.13);
  font-size: 1.55rem;
  transition: transform .25s ease, background .25s ease, color .25s ease, box-shadow .25s ease;
}

.ecosystem-carousel-arrow:hover {
  transform: translateY(-2px) scale(1.03);
  background: var(--navy);
  color: #fff;
  box-shadow: 0 18px 40px rgba(6,18,47,.19);
}

.ecosystem-carousel-dot {
  width: 8px;
  height: 8px;
  background: rgba(6,18,47,.18);
  transition: width .3s ease, background .3s ease, transform .3s ease;
}

.ecosystem-carousel-dot.is-active {
  width: 30px;
  background: var(--gold);
  transform: scaleY(1.08);
}

@media (max-width: 1080px) {
  .ecosystem-carousel {
    --company-gap: 18px;
    padding-inline: 56px;
  }

  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 404px;
    padding: 22px;
  }

  .ecosystem-carousel .ecosystem-logo-shell {
    height: 142px;
  }
}

@media (max-width: 700px) {
  .ecosystem-carousel {
    --company-gap: 12px;
    padding: 0 0 66px;
  }

  .ecosystem-carousel-viewport {
    padding: 8px 2px 18px;
  }

  .ecosystem-carousel .ecosystem-slide,
  .ecosystem-carousel .ecosystem-slide.is-active,
  .ecosystem-carousel.is-transitioning .ecosystem-slide.is-active,
  .ecosystem-carousel.is-transitioning.is-settling .ecosystem-slide.is-active {
    opacity: 1;
    filter: none;
    transform: none;
    background: linear-gradient(180deg,#fff 0%,#fbfcff 100%);
    border-color: rgba(6,18,47,.09);
    box-shadow: 0 15px 36px rgba(6,18,47,.08);
  }

  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 392px;
    padding: 20px;
    border-radius: 23px;
  }

  .ecosystem-carousel .ecosystem-logo-shell {
    height: 138px;
    margin-bottom: 17px;
    padding: 12px 15px;
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy h3 {
    color: var(--navy);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-copy p {
    color: var(--muted);
  }

  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-tags span {
    color: var(--navy);
    background: rgba(6,18,47,.05);
    border-color: rgba(6,18,47,.08);
  }

  .ecosystem-carousel .ecosystem-card-v4 .btn,
  .ecosystem-carousel .ecosystem-slide.is-active .btn {
    width: 100%;
    min-width: 0;
    background: var(--navy);
    border-color: var(--navy);
    color: #fff;
  }

  .ecosystem-carousel .ecosystem-slide.is-active .btn > span {
    background: rgba(255,255,255,.12);
  }

  .ecosystem-carousel-arrow {
    top: auto;
    bottom: 3px;
    width: 42px;
    height: 42px;
    border-radius: 14px;
  }
}

/* V16 — Área dos logos adaptável ao tamanho real da arte, sem corte ou deformação */
.ecosystem-carousel .ecosystem-card-v4 {
  min-height: 444px;
}

.ecosystem-carousel .ecosystem-logo-shell {
  height: 180px;
  min-height: 180px;
  padding: 22px 24px;
  overflow: hidden;
  isolation: isolate;
}

/*
 * Não força a imagem a ocupar 100% de largura e altura ao mesmo tempo.
 * A arte é reduzida proporcionalmente até caber por inteiro no espaço.
 */
.ecosystem-carousel .ecosystem-logo,
.ecosystem-carousel .ecosystem-logo-shell img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  padding: 0 !important;
  margin: auto !important;
  object-fit: scale-down !important;
  object-position: center center !important;
  transform: none !important;
  flex: 0 1 auto;
}

/* Garante respiro também no card azul em destaque. */
@media (min-width: 701px) {
  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell {
    padding: 24px 26px;
  }
}

@media (max-width: 1080px) {
  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 428px;
  }

  .ecosystem-carousel .ecosystem-logo-shell {
    height: 170px;
    min-height: 170px;
    padding: 20px 22px;
  }
}

@media (max-width: 700px) {
  .ecosystem-carousel .ecosystem-card-v4 {
    min-height: 408px;
  }

  .ecosystem-carousel .ecosystem-logo-shell,
  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell {
    height: 158px;
    min-height: 158px;
    padding: 18px 20px;
  }
}

/* V17 — Logo em preenchimento total e transição premium do carrossel de empresas */
.ecosystem-carousel .ecosystem-logo-shell,
.ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell,
.ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-logo-shell {
  height: 180px;
  min-height: 180px;
  padding: 0 !important;
  overflow: hidden;
  border-radius: 20px;
  background: #fff;
  isolation: isolate;
}

/* Preenche integralmente a área branca mantendo a proporção da arte. */
.ecosystem-carousel .ecosystem-logo,
.ecosystem-carousel .ecosystem-logo-shell img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: inherit;
  transform: scale(1.001) !important;
}

.ecosystem-carousel-track {
  will-change: transform;
}

.ecosystem-carousel .ecosystem-slide {
  will-change: transform, opacity, background-color, box-shadow;
  transition:
    transform .72s cubic-bezier(.16,1,.3,1),
    opacity .58s ease,
    filter .58s ease,
    background .68s ease,
    border-color .68s ease,
    box-shadow .68s cubic-bezier(.16,1,.3,1);
}

@media (min-width: 701px) {
  .ecosystem-carousel .ecosystem-slide.is-nearby {
    transform: translateY(4px) scale(.972);
    opacity: .82;
    filter: saturate(.9);
  }

  /* Card que está saindo do destaque. */
  .ecosystem-carousel .ecosystem-slide.is-outgoing {
    transform: translateY(-2px) scale(.992) !important;
    opacity: .9;
    background: linear-gradient(145deg,#0a1a43 0%,#123064 100%);
    border-color: rgba(239,196,119,.28);
    box-shadow: 0 20px 48px rgba(6,18,47,.17);
  }

  /* Card que entra no centro recebe o azul progressivamente durante o movimento. */
  .ecosystem-carousel .ecosystem-slide.is-incoming {
    transform: translateY(-8px) scale(1.018) !important;
    opacity: 1;
    filter: none;
    background: linear-gradient(145deg,#071536 0%,#0b2255 100%);
    border-color: rgba(239,196,119,.68);
    box-shadow: 0 29px 70px rgba(6,18,47,.24);
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-copy h3 {
    color: #fff;
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-copy p {
    color: rgba(255,255,255,.7);
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-tags span {
    color: var(--gold-2);
    background: rgba(239,196,119,.1);
    border-color: rgba(239,196,119,.24);
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming .btn {
    background: var(--gold);
    border-color: var(--gold);
    color: var(--navy);
    box-shadow: 0 15px 34px rgba(0,0,0,.2);
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming .btn > span {
    background: rgba(6,18,47,.1);
  }

  .ecosystem-carousel.is-transitioning .ecosystem-slide.is-active:not(.is-outgoing) {
    transform: translateY(-8px) scale(1.018);
  }
}

@media (max-width: 1080px) {
  .ecosystem-carousel .ecosystem-logo-shell,
  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell,
  .ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-logo-shell {
    height: 170px;
    min-height: 170px;
  }
}

@media (max-width: 700px) {
  .ecosystem-carousel .ecosystem-logo-shell,
  .ecosystem-carousel .ecosystem-slide.is-active .ecosystem-logo-shell,
  .ecosystem-carousel .ecosystem-slide.is-incoming .ecosystem-logo-shell {
    height: 158px;
    min-height: 158px;
    border-radius: 17px;
  }

  .ecosystem-carousel .ecosystem-slide.is-incoming,
  .ecosystem-carousel .ecosystem-slide.is-outgoing {
    transform: none !important;
    opacity: 1;
    filter: none;
    background: linear-gradient(180deg,#fff 0%,#fbfcff 100%);
    border-color: rgba(6,18,47,.09);
    box-shadow: 0 15px 36px rgba(6,18,47,.08);
  }
}

/* V18 — dois perfis do Instagram */
.instagram-blocks{display:grid;gap:20px;margin-top:24px}.instagram-blocks>.instagram-block{margin-top:0}.instagram-blocks.has-two{grid-template-columns:repeat(2,minmax(0,1fr))}.instagram-blocks.has-two .instagram-block{min-height:292px;grid-template-columns:1fr;align-content:space-between;gap:28px;padding:34px}.instagram-blocks.has-two .instagram-block:before{right:-8px;top:-94px;font-size:270px}.instagram-block-secondary{background:linear-gradient(145deg,var(--navy-2),#102a61)}.instagram-block-copy{position:relative;z-index:2}.instagram-blocks.has-two .instagram-block .btn{width:max-content}.instagram-blocks.has-two .instagram-block h3{font-size:clamp(1.42rem,2.25vw,2rem)}
@media(max-width:900px){.instagram-blocks.has-two{grid-template-columns:1fr}.instagram-blocks.has-two .instagram-block{min-height:0;grid-template-columns:1fr auto;align-items:center}.instagram-blocks.has-two .instagram-block .btn{width:auto}}
@media(max-width:650px){.instagram-blocks.has-two .instagram-block{grid-template-columns:1fr;padding:26px 22px;gap:20px}.instagram-blocks.has-two .instagram-block .btn{width:100%}}


/* V22 — responsivo, conteúdo inspiracional e navegação móvel */
.habits-carousel-shell{position:relative;width:min(100%,680px);margin:0 auto;padding:0 64px 42px}
.habits-carousel-viewport{overflow:hidden;border-radius:30px;background:var(--navy);box-shadow:0 28px 70px rgba(6,18,47,.16)}
.habits-carousel-track{display:flex;width:100%;transform:translate3d(0,0,0);transition:transform .78s cubic-bezier(.22,.72,.18,1);will-change:transform}
.habit-carousel-slide{flex:0 0 100%;min-width:0;position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:#07142f}
.habit-carousel-slide img{width:100%;height:100%;object-fit:cover;transform:scale(1.015);transition:transform 1s cubic-bezier(.22,.72,.18,1),filter .65s ease}
.habit-carousel-slide::after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(3,11,32,.72));pointer-events:none}
.habit-carousel-slide>span{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 17px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.93);color:var(--navy);font-size:.72rem;font-weight:800;box-shadow:0 14px 38px rgba(0,0,0,.22);backdrop-filter:blur(12px)}
.habit-carousel-slide>span b{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--gold);font-size:.78rem}
.habit-carousel-slide.is-active img{transform:scale(1)}
.habits-carousel-arrow{position:absolute;z-index:4;top:calc(50% - 37px);width:46px;height:46px;display:grid;place-items:center;padding:0;border:1px solid #dfe4ec;border-radius:50%;background:#fff;color:var(--navy);font-size:1.65rem;line-height:1;cursor:pointer;box-shadow:0 14px 38px rgba(6,18,47,.12);transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
.habits-carousel-arrow:hover{transform:scale(1.06);background:var(--gold);border-color:var(--gold)}
.habits-carousel-prev{left:2px}.habits-carousel-next{right:2px}
.habits-carousel-dots{position:absolute;left:50%;bottom:6px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:7px}
.habits-carousel-dot{width:7px;height:7px;padding:0;border:0;border-radius:999px;background:#cbd1dc;cursor:pointer;transition:width .3s ease,background .3s ease}
.habits-carousel-dot.is-active{width:24px;background:var(--gold)}
.mobile-cta{display:none!important}
.back-to-top{display:none;position:fixed;z-index:950;right:16px;bottom:18px;width:48px;height:48px;place-items:center;padding:0;border:1px solid rgba(6,18,47,.12);border-radius:50%;background:var(--gold);color:var(--navy);font-size:1.15rem;font-weight:900;box-shadow:0 16px 38px rgba(6,18,47,.24);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s ease,visibility .25s ease,transform .25s ease,background .25s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:none}.back-to-top:active{transform:scale(.96)}
@media(max-width:900px){
.main-nav>a:not(.btn){width:100%;padding:11px 0 12px;color:var(--navy)!important;background:transparent!important;border-radius:0!important;-webkit-tap-highlight-color:rgba(214,162,84,.16)}
.main-nav>a:not(.btn):hover,.main-nav>a:not(.btn):focus-visible,.main-nav>a:not(.btn).active{color:var(--gold)!important;background:transparent!important}
.main-nav>a:not(.btn)::after{bottom:3px;height:2px;background:var(--gold)!important}
.portal-header:not(.scrolled) .main-nav>a:not(.btn):hover,.portal-header:not(.scrolled) .main-nav>a:not(.btn):focus-visible,.portal-header:not(.scrolled) .main-nav>a:not(.btn).active{color:var(--gold)!important}
.site-footer{padding-bottom:34px}.back-to-top{display:grid}
}
@media(max-width:650px){
.hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%}
.hero-proof>div{min-width:0;padding:2px 10px 2px 0;border-right:1px solid rgba(255,255,255,.18)}
.hero-proof>div+div{padding-left:10px}.hero-proof>div:last-child{grid-column:auto;padding-right:0;border-right:0}
.hero-proof strong{font-size:clamp(.96rem,4.4vw,1.2rem);white-space:normal;line-height:1.15}
.hero-proof span{margin-top:5px;font-size:.57rem;line-height:1.35}
.habits-carousel-shell{width:100%;padding:0 0 38px}.habits-carousel-viewport{border-radius:21px}.habit-carousel-slide{aspect-ratio:4/5}
.habit-carousel-slide>span{left:14px;right:14px;bottom:14px;min-height:44px;padding:9px 13px}
.habits-carousel-arrow{top:50%;width:40px;height:40px;border-color:rgba(255,255,255,.42);background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(6,18,47,.2)}
.habits-carousel-prev{left:10px}.habits-carousel-next{right:10px}.back-to-top{right:14px;bottom:14px;width:46px;height:46px}
}
@media(prefers-reduced-motion:reduce){.habits-carousel-track,.habit-carousel-slide img,.back-to-top{transition:none!important}}
