:root{--lumen-deep:#39207f;--lumen-violet:#7042c8;--lumen-lilac:#9b51dc;--lumen-pink:#c754df}
body{background:linear-gradient(180deg,#fff 0%,#fbf8ff 34%,#f7f2fd 68%,#fff 100%)}
.site-header{height:104px;padding:0 max(4vw,20px);gap:20px;background:linear-gradient(105deg,#4b2b9b 0%,#7542c8 34%,#9b4fd9 68%,#c653df 100%)}
.site-header .brand{width:330px;height:88px;border-radius:0;box-shadow:none;overflow:visible;flex:none}
.site-header .brand img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.site-header nav .ats-link{color:#fff!important;border:1px solid rgba(255,255,255,.36);border-radius:18px;padding:6px 10px}
.hero{background:linear-gradient(90deg,rgba(52,28,124,.98) 0%,rgba(105,56,184,.9) 38%,rgba(183,70,216,.25) 70%),url('/assets/img/hero-lumen.png') center/cover}
.feature-strip{background:linear-gradient(90deg,#faf7ff,#f2eaff 52%,#fbf5ff)}
.section.soft{background:linear-gradient(115deg,#f8f4ff,#f0e8fb 55%,#faf6ff)}
.page-hero{background:linear-gradient(105deg,#5933a9 0%,#8649cf 48%,#c455df 100%)}
.solutions-band{background:linear-gradient(115deg,#40238e 0%,#7040c5 48%,#b64dda 100%)}
.solutions-band .service{background:rgba(54,25,126,.42)}
.cta-band{background:linear-gradient(110deg,#482693 0%,#7842c8 52%,#c24fdd 100%)}
footer{background:linear-gradient(135deg,#25135c 0%,#43227f 48%,#71319a 100%)}
.button.primary,.button.light{color:#6f37c6}.nav-cta{background:rgba(255,255,255,.08)}
.icon{background:#eee4fb;color:#8242d1}.gradient-text{color:#a95ae5}.pill{background:#efe5fa;color:#7139bf}
@media(max-width:1200px){.site-header .brand{width:260px}.site-header nav{gap:10px;font-size:11.5px}}
@media(max-width:800px){.site-header{height:76px;padding:0 14px}.site-header .brand{width:230px;height:68px}.site-header nav{top:76px;background:linear-gradient(135deg,#5933a9,#914bd2 65%,#c455df)}.hero{background:linear-gradient(90deg,rgba(54,28,126,.94),rgba(103,54,182,.78),rgba(178,67,213,.35)),url('/assets/img/hero-lumen.png') 68% center/cover}}

/* Cabeçalho público padronizado e separado dos banners */
.site-header{height:108px;padding:8px 6%;background:linear-gradient(105deg,#073a91 0%,#0c53bd 58%,#7131e5 100%)}
.site-header .brand{width:420px;height:92px}
.site-header nav{gap:28px;font-size:13px}
.site-header nav .active{position:relative}
.site-header nav .active:after{content:'';position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);width:34px;height:2px;background:#fff}
@media(max-width:1400px){.site-header .brand{width:300px}.site-header nav{gap:13px;font-size:11px}.site-header .nav-cta{padding:10px 13px}}
@media(max-width:800px){.site-header{height:82px;padding:5px 18px}.site-header .brand{width:235px;height:70px}.site-header nav{top:82px;background:linear-gradient(135deg,#073a91,#0c53bd 62%,#7131e5)}.site-header nav .active:after{display:none}}

/* Páginas públicas centralizadas, sem ocupar 100% da tela */
body{background:#f4f6fb}
body>.site-header,body>main,body>.cta-band,body>footer{width:calc(100% - 16px);max-width:1440px;margin-left:auto;margin-right:auto}
body>.site-header{margin-top:8px}
body>footer{margin-bottom:8px}
@media(max-width:520px){body>.site-header,body>main,body>.cta-band,body>footer{width:calc(100% - 8px)}body>.site-header{margin-top:4px}body>footer{margin-bottom:4px}}

/* Fundos em largura total; conteúdo centralizado em até 1400px */
body>.site-header,body>main,body>.cta-band,body>footer{width:100%;max-width:none;margin-left:0;margin-right:0}
body>.site-header{margin-top:0}
body>footer{margin-bottom:0}
.site-header,.page-hero,.section,.cta-band,footer{padding-left:max(24px,calc((100% - 1400px)/2));padding-right:max(24px,calc((100% - 1400px)/2))}
.site-header{height:96px;color:#fff;background:linear-gradient(100deg,rgba(0,39,111,.98) 0%,rgba(0,80,185,.94) 58%,rgba(74,28,211,.92) 100%);box-shadow:inset 0 -1px 0 rgba(255,255,255,.08)}
.site-header .brand{width:330px;height:78px}
@media(max-width:1400px){.site-header .brand{width:270px;height:72px}}
@media(max-width:800px){.site-header{height:76px;padding-left:18px;padding-right:18px}.site-header .brand{width:210px;height:62px}.site-header nav{top:76px}}
@media(max-width:520px){body>.site-header,body>main,body>.cta-band,body>footer{width:100%}.site-header .brand{width:195px}}

/* Navegação pública com melhor leitura */
.site-header nav{gap:24px;font-size:14px;font-weight:650}
.site-header nav>a{letter-spacing:.05px}
.site-header nav .ats-link{font-size:13px;font-weight:700;padding:9px 15px;border:1px solid rgba(255,255,255,.62);border-radius:24px;background:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.site-header nav .ats-link:hover{background:rgba(255,255,255,.2)}
@media(max-width:1400px){.site-header nav{gap:13px;font-size:12.5px}.site-header nav .ats-link{font-size:12px;padding:8px 12px}}

/* Regra global: menu integrado ao banner e rodapé público padronizado */
body{position:relative}
.site-header{position:absolute;top:0;left:0;right:0;width:100%;z-index:20;background:linear-gradient(180deg,rgba(0,28,91,.98) 0%,rgba(0,42,115,.78) 48%,rgba(0,48,126,.28) 78%,rgba(0,48,126,0) 100%);box-shadow:none;border-bottom:0}
.page-hero{min-height:300px;padding-top:166px}
footer{background:#041b49}
@media(max-width:800px){.page-hero{padding-top:126px}.site-header{position:absolute}}

/* Mesmo rodapé da Home em todas as páginas públicas */
.public-footer{min-height:0;padding-top:34px;padding-bottom:14px;background:#041b49}.public-footer .footer-grid{grid-template-columns:1.45fr .72fr 1fr 1.05fr;gap:36px}.public-footer .footer-brand-block img{width:265px;height:72px;object-fit:contain;object-position:left center;border-radius:0}.public-footer .footer-brand-block p{margin:12px 0 0;font-size:12px;line-height:1.5}.public-footer .footer-grid b{font-weight:650;margin-bottom:10px}.public-footer .footer-grid a,.public-footer .footer-grid span{margin-top:5px;font-size:12px}.footer-social{display:flex;gap:16px;margin-top:13px}.footer-social a{font-size:16px!important;font-weight:650}.public-footer .copyright{margin-top:22px;padding-top:13px;display:flex;justify-content:space-between;align-items:center}.public-footer .copyright span{display:flex;align-items:center;gap:10px}.public-footer .copyright a{display:inline;margin:0}.public-footer .copyright i{font-style:normal;color:#8490b1}
@media(max-width:800px){.public-footer .footer-grid{grid-template-columns:1fr 1fr}.public-footer .footer-brand-block{grid-column:1/-1}.public-footer .copyright{align-items:flex-start;gap:10px;flex-direction:column}}
@media(max-width:520px){.public-footer .footer-grid{grid-template-columns:1fr}.public-footer .footer-brand-block{grid-column:auto}}
