/* M&G Norte Excelência — Landing Page (Tema Escuro & Dourado)
   Autoria: Uebsites - https://uebsites.com.br | 23/05/2026 16:44 (UTC-03:00) */

*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body.mgl-page { margin:0; padding:0; font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; color:var(--c-texto); background:var(--c-fundo); line-height:1.55; -webkit-font-smoothing:antialiased; }
body.mgl-page img { max-width:100%; height:auto; display:block; }
body.mgl-page a { color:var(--c-secundaria); text-decoration:none; transition:color .2s; }
body.mgl-page a:hover { color:var(--c-destaque); }
body.mgl-page h1,body.mgl-page h2,body.mgl-page h3,body.mgl-page h4 { font-family:'Plus Jakarta Sans','Inter',sans-serif; line-height:1.2; margin:0 0 .5em; color:#fff; letter-spacing:-.01em; }
body.mgl-page ul { margin:0; padding:0; list-style:none; }
body.mgl-page p { margin:0 0 1em; }

.mgl-container { width:100%; max-width:1180px; margin:0 auto; padding:0 22px; }
.mgl-skip { position:absolute; left:-9999px; top:0; padding:8px 14px; background:#000; color:#fff; z-index:9999; }
.mgl-skip:focus { left:8px; top:8px; }

.mgl-eyebrow { display:inline-block; background:rgba(201,168,76,.15); color:var(--c-secundaria); padding:6px 12px; border-radius:999px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; border:1px solid rgba(201,168,76,.25); }

/* Botões */
body.mgl-page .mgl-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:12px 22px; border-radius:10px; font-weight:600; font-size:14px; cursor:pointer; transition:transform .2s, box-shadow .2s, background .2s; border:0; text-decoration:none; white-space:nowrap; }
.mgl-btn-lg { padding:15px 28px; font-size:15px; }
body.mgl-page .mgl-btn-destaque { background:linear-gradient(135deg, var(--c-secundaria), var(--c-ouro-escuro)); color:#fff; box-shadow:0 8px 18px -6px rgba(201,168,76,.5); }
body.mgl-page .mgl-btn-destaque:hover { transform:translateY(-2px); background:linear-gradient(135deg, var(--c-destaque), var(--c-secundaria)); color:#fff; box-shadow:0 12px 24px -6px rgba(201,168,76,.65); }
body.mgl-page .mgl-btn-secundaria { background:var(--c-secundaria); color:var(--c-fundo); }
body.mgl-page .mgl-btn-secundaria:hover { background:var(--c-destaque); color:var(--c-fundo); transform:translateY(-2px); }
body.mgl-page .mgl-btn-ghost { background:rgba(201,168,76,.08); color:var(--c-destaque); border:1.5px solid rgba(201,168,76,.4); backdrop-filter:blur(4px); }
body.mgl-page .mgl-btn-ghost:hover { background:rgba(201,168,76,.18); color:#fff; transform:translateY(-2px); }

/* Header */
.mgl-header { position:sticky; top:0; z-index:100; background:rgba(17,24,39,.92); backdrop-filter:blur(12px); border-bottom:1px solid rgba(201,168,76,.12); transition:box-shadow .3s; }
.mgl-header.is-scrolled { box-shadow:0 8px 24px -12px rgba(0,0,0,.4); }
.mgl-header-inner { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 22px; }
.mgl-logo { display:flex; align-items:center; gap:10px; font-weight:800; color:var(--c-secundaria); }
.mgl-logo img { max-height:var(--logo-altura, 46px); width:auto; }
.mgl-logo-txt { font-family:'Plus Jakarta Sans',sans-serif; font-size:17px; color:var(--c-secundaria); }
.mgl-nav { flex:1; }
.mgl-nav-list { display:flex; gap:6px; justify-content:center; flex-wrap:wrap; }
.mgl-nav-list a { display:inline-block; padding:8px 12px; font-size:14px; font-weight:500; color:rgba(255,255,255,.75); border-radius:6px; }
.mgl-nav-list a:hover, .mgl-nav-list a.is-active { color:var(--c-secundaria); background:rgba(201,168,76,.08); }
.mgl-nav-list a.is-active { font-weight:700; }
body.mgl-page .mgl-header-cta { padding:12px 24px; font-size:14px; background:linear-gradient(135deg, #25D366, #1ebe5d); color:#fff; font-weight:700; border-radius:999px; box-shadow:0 8px 20px -6px rgba(37,211,102,.45); text-decoration:none; }
body.mgl-page .mgl-header-cta:hover { background:linear-gradient(135deg, #1ebe5d, #17a34a); color:#fff; box-shadow:0 12px 24px -6px rgba(37,211,102,.6); transform:translateY(-2px); }

.mgl-nav-toggle { display:none; background:transparent; border:0; flex-direction:column; gap:4px; cursor:pointer; padding:8px; }
.mgl-nav-toggle span { display:block; width:22px; height:2px; background:var(--c-secundaria); border-radius:2px; transition:transform .2s, opacity .2s; }
.mgl-nav-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6px) rotate(45deg); }
.mgl-nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.mgl-nav-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6px) rotate(-45deg); }

/* Hero */
.mgl-hero { position:relative; overflow:hidden; padding:80px 0 90px; background:linear-gradient(160deg, var(--c-fundo) 0%, var(--c-primaria) 40%, var(--c-grafite) 100%); color:#fff; }
.mgl-hero-bg { position:absolute; inset:0; background:
    radial-gradient(ellipse at 50% 50%, rgba(212,175,55,.12), transparent 60%),
    radial-gradient(circle at 85% 15%, rgba(201,168,76,.08), transparent 40%),
    radial-gradient(circle at 15% 85%, rgba(201,168,76,.06), transparent 45%);
    pointer-events:none;
}

/* Efeito Glow central */
.mgl-glow { position:absolute; inset:0; pointer-events:none; background:radial-gradient(ellipse 60% 50% at 50% 45%, rgba(212,175,55,.14), transparent 70%); z-index:1; }

/* Linhas geométricas douradas */
.mgl-geo-lines { position:absolute; inset:0; pointer-events:none; z-index:2; overflow:hidden; }
.mgl-geo-lines::before { content:''; position:absolute; top:20px; right:30px; width:180px; height:180px; border:2px solid rgba(201,168,76,.35); border-radius:0; clip-path:polygon(0 0, 100% 0, 100% 30%, 70% 30%, 70% 70%, 30% 70%, 30% 100%, 0 100%); animation:mglGeoRotate 20s linear infinite; }
.mgl-geo-lines::after { content:''; position:absolute; bottom:30px; left:25px; width:140px; height:140px; border:2px solid rgba(201,168,76,.25); clip-path:polygon(30% 0, 100% 0, 100% 100%, 0 100%, 0 70%, 30% 70%); animation:mglGeoRotate 25s linear infinite reverse; }
@keyframes mglGeoRotate { 0% { transform:rotate(0deg); } 100% { transform:rotate(360deg); } }

/* Container de partículas */
.mgl-particulas { position:absolute; inset:0; pointer-events:none; z-index:1; overflow:hidden; }
.mgl-particula { position:absolute; width:3px; height:3px; background:var(--c-secundaria); border-radius:50%; opacity:0; animation:mglParticula var(--dur, 6s) var(--delay, 0s) infinite ease-in-out; }
@keyframes mglParticula {
    0% { opacity:0; transform:translateY(0) scale(.5); }
    20% { opacity:.8; }
    80% { opacity:.4; }
    100% { opacity:0; transform:translateY(-120px) scale(0); }
}

.mgl-hero-inner { position:relative; z-index:3; display:grid; grid-template-columns:1.1fr 1fr; gap:50px; align-items:center; }
.mgl-hero .mgl-eyebrow { background:rgba(201,168,76,.2); color:var(--c-destaque); border-color:rgba(201,168,76,.35); }
.mgl-h1 { font-size:clamp(28px, 4.4vw, 50px); color:#fff; font-weight:800; line-height:1.1; }
.mgl-hero-sub { font-size:clamp(15px, 1.4vw, 18px); color:rgba(255,255,255,.82); max-width:560px; }
.mgl-hero-ctas { display:flex; gap:12px; flex-wrap:wrap; margin:24px 0 22px; }
.mgl-hero-badges { display:flex; flex-wrap:wrap; gap:14px 22px; margin-top:18px; }
.mgl-hero-badges li { display:flex; align-items:center; gap:8px; color:rgba(255,255,255,.85); font-size:13.5px; font-weight:500; }
.mgl-hero-badges svg { color:var(--c-secundaria); flex-shrink:0; }

.mgl-hero-img { position:relative; min-height:380px; }
.mgl-hero-img img { width:100%; height:auto; border-radius:18px; box-shadow:0 30px 60px -20px rgba(0,0,0,.7); border:1px solid rgba(201,168,76,.2); }
.mgl-hero-placeholder { position:relative; height:100%; min-height:380px; }
.mgl-orb { position:absolute; border-radius:50%; filter:blur(40px); opacity:.4; }
.mgl-orb-1 { width:280px; height:280px; background:var(--c-secundaria); top:20px; right:30px; animation:mglFloat 8s ease-in-out infinite; }
.mgl-orb-2 { width:220px; height:220px; background:var(--c-ouro-escuro); bottom:10px; left:0; animation:mglFloat 9s ease-in-out infinite reverse; }
.mgl-card-float { position:relative; z-index:2; background:rgba(26,35,50,.92); color:#fff; padding:24px; border-radius:14px; box-shadow:0 25px 50px -20px rgba(0,0,0,.6); border:1px solid rgba(201,168,76,.25); width:300px; margin:80px auto 0; animation:mglFloat 6s ease-in-out infinite; backdrop-filter:blur(8px); }
.mgl-card-float-h { font-size:12px; color:var(--c-secundaria); font-weight:700; letter-spacing:.05em; text-transform:uppercase; margin-bottom:14px; }
.mgl-card-float-line { height:8px; background:rgba(201,168,76,.15); border-radius:4px; margin-bottom:8px; width:100%; }
.mgl-card-float-line.w70 { width:70%; }
.mgl-card-float-line.w90 { width:90%; }
.mgl-card-float-tag { display:inline-block; margin-top:10px; background:rgba(201,168,76,.18); color:var(--c-destaque); font-size:11px; font-weight:700; padding:5px 10px; border-radius:6px; border:1px solid rgba(201,168,76,.3); }

@keyframes mglFloat { 0%,100% { transform:translateY(0) } 50% { transform:translateY(-14px) } }

/* Seções genéricas */
.mgl-sec { padding:80px 0; }
.mgl-sec-alt { background:var(--c-fundo-alt); }
.mgl-sec-h { text-align:center; max-width:760px; margin:0 auto 50px; }
.mgl-sec-h h2 { font-size:clamp(24px, 2.6vw, 36px); color:#fff; }
.mgl-sec-h p { color:rgba(255,255,255,.65); font-size:16px; }

/* Sobre */
.mgl-sobre-grid { display:grid; grid-template-columns:1.1fr 1fr; gap:50px; align-items:center; }
.mgl-sobre-txt p { color:rgba(255,255,255,.75); }
.mgl-pilares { display:grid; grid-template-columns:repeat(2, 1fr); gap:14px; margin-top:20px; }
.mgl-pilares li { background:var(--c-grafite); border:1px solid rgba(201,168,76,.18); padding:16px; border-radius:10px; display:flex; flex-direction:column; gap:4px; }
.mgl-pilar-icone { color:var(--c-secundaria); margin-bottom:6px; }
.mgl-pilares strong { font-size:14px; color:var(--c-destaque); }
.mgl-pilares span { font-size:13px; color:rgba(255,255,255,.6); }
.mgl-sobre-img img { border-radius:18px; box-shadow:0 20px 40px -16px rgba(0,0,0,.5); border:1px solid rgba(201,168,76,.15); }
.mgl-sobre-placeholder { width:100%; min-height:360px; border-radius:18px; background:linear-gradient(135deg, var(--c-grafite), var(--c-primaria)); box-shadow:0 20px 40px -16px rgba(0,0,0,.5); border:1px solid rgba(201,168,76,.2); }

/* Cards NR-01 */
.mgl-cards-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:20px; }
.mgl-card { position:relative; background:var(--c-grafite); padding:28px 22px 22px; border-radius:14px; border:1px solid rgba(201,168,76,.15); transition:transform .25s, box-shadow .25s, border-color .25s; }
.mgl-card:hover { transform:translateY(-4px); box-shadow:0 18px 36px -14px rgba(201,168,76,.2); border-color:rgba(201,168,76,.4); }
.mgl-card-num { position:absolute; top:-14px; left:22px; background:linear-gradient(135deg, var(--c-secundaria), var(--c-ouro-escuro)); color:#fff; font-weight:800; padding:6px 12px; border-radius:8px; font-size:13px; }
.mgl-card h3 { font-size:17px; color:var(--c-destaque); margin-top:6px; }
.mgl-card p { color:rgba(255,255,255,.65); font-size:14px; margin:0; }

.mgl-stats { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:16px; margin-top:40px; padding:30px; background:var(--c-grafite); border-radius:16px; border:1px solid rgba(201,168,76,.12); text-align:center; }
.mgl-stats-cards { box-shadow:none; background:transparent; padding:0; margin-bottom:40px; border:none; }
.mgl-stats-cards .mgl-stat { background:var(--c-grafite); padding:22px 16px; border-radius:12px; border:1px solid rgba(201,168,76,.12); }
.mgl-stat strong { display:block; font-size:clamp(26px,3vw,38px); font-weight:800; color:var(--c-secundaria); font-family:'Plus Jakarta Sans',sans-serif; }
.mgl-stat span { font-size:13px; color:rgba(255,255,255,.6); }

/* Diferenciais (features) */
.mgl-features { display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:18px; }
.mgl-feature { background:var(--c-grafite); padding:26px 22px; border-radius:14px; border:1px solid rgba(201,168,76,.15); transition:transform .25s, box-shadow .25s, border-color .25s; }
.mgl-feature:hover { transform:translateY(-4px); box-shadow:0 18px 36px -16px rgba(201,168,76,.2); border-color:rgba(201,168,76,.35); }
.mgl-feature-icone { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:12px; background:linear-gradient(135deg, var(--c-secundaria), var(--c-ouro-escuro)); color:#fff; margin-bottom:14px; }
.mgl-feature h3 { font-size:16px; color:var(--c-destaque); }
.mgl-feature p { color:rgba(255,255,255,.6); font-size:14px; margin:0; }

/* Timeline */
.mgl-timeline { position:relative; counter-reset:tl; display:grid; grid-template-columns:repeat(auto-fit, minmax(260px,1fr)); gap:24px; padding:0; }
.mgl-timeline li { background:var(--c-grafite); padding:24px 22px 22px; border-radius:14px; border:1px solid rgba(201,168,76,.15); display:flex; gap:14px; align-items:flex-start; position:relative; }
.mgl-timeline-num { width:36px; height:36px; border-radius:50%; background:linear-gradient(135deg, var(--c-secundaria), var(--c-ouro-escuro)); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; flex-shrink:0; }
.mgl-timeline li h3 { font-size:15px; color:var(--c-destaque); margin-bottom:4px; }
.mgl-timeline li p { font-size:13.5px; color:rgba(255,255,255,.6); margin:0; }

/* Benefícios */
.mgl-beneficios { display:grid; grid-template-columns:repeat(auto-fit, minmax(260px,1fr)); gap:12px; }
.mgl-beneficios li { display:flex; align-items:center; gap:10px; background:var(--c-grafite); padding:14px 16px; border-radius:10px; border:1px solid rgba(201,168,76,.12); font-size:14px; font-weight:500; color:rgba(255,255,255,.85); }
.mgl-check-circle { width:24px; height:24px; border-radius:50%; background:rgba(201,168,76,.15); color:var(--c-secundaria); display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }

/* CTA meio */
.mgl-cta-meio { position:relative; padding:60px 0; background:linear-gradient(135deg, var(--c-primaria), var(--c-fundo)); color:#fff; overflow:hidden; }
.mgl-cta-meio::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 50% 50%, rgba(201,168,76,.1), transparent 65%); pointer-events:none; }
.mgl-cta-meio-inner { position:relative; display:flex; justify-content:space-between; align-items:center; gap:30px; flex-wrap:wrap; }
.mgl-cta-meio h2 { color:#fff; font-size:clamp(22px,2.4vw,30px); margin:0 0 6px; }
.mgl-cta-meio p { color:rgba(255,255,255,.75); margin:0; max-width:560px; }

/* Depoimentos */
.mgl-depos { display:grid; grid-template-columns:repeat(auto-fit, minmax(280px,1fr)); gap:20px; }
.mgl-depo { margin:0; background:var(--c-grafite); padding:28px 24px; border-radius:14px; border:1px solid rgba(201,168,76,.12); position:relative; }
.mgl-quote { color:var(--c-secundaria); opacity:.5; width:32px; height:32px; margin-bottom:6px; }
.mgl-depo blockquote { margin:0 0 14px; font-style:italic; color:rgba(255,255,255,.8); font-size:15px; line-height:1.55; }
.mgl-depo figcaption strong { display:block; color:var(--c-destaque); font-size:14px; }
.mgl-depo figcaption span { color:rgba(255,255,255,.5); font-size:12px; }

/* FAQ */
.mgl-faq-wrap { max-width:880px; }
.mgl-faq { display:flex; flex-direction:column; gap:10px; }
.mgl-faq-item { background:var(--c-grafite); border:1px solid rgba(201,168,76,.12); border-radius:10px; overflow:hidden; transition:box-shadow .2s, border-color .2s; }
.mgl-faq-item[open] { border-color:var(--c-secundaria); box-shadow:0 10px 24px -16px rgba(201,168,76,.2); }
.mgl-faq-item summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 20px; font-weight:600; color:var(--c-destaque); font-size:15px; }
.mgl-faq-item summary::-webkit-details-marker { display:none; }
.mgl-faq-item summary svg { transition:transform .25s; color:var(--c-secundaria); }
.mgl-faq-item[open] summary svg { transform:rotate(180deg); }
.mgl-faq-resp { padding:0 20px 18px; color:rgba(255,255,255,.7); font-size:14.5px; }
.mgl-faq-resp p { margin:0; }

/* Formulário */
.mgl-form-wrap { max-width:100%; }
.mgl-form-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:24px; align-items:start; }
.mgl-form-lead { background:var(--c-grafite); padding:30px; border-radius:16px; border:1px solid rgba(201,168,76,.15); }
.mgl-form-row { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.mgl-form-lead label { display:flex; flex-direction:column; gap:6px; font-weight:600; font-size:13px; color:rgba(255,255,255,.85); }
.mgl-form-lead input { padding:11px 13px; border:1.5px solid rgba(201,168,76,.2); border-radius:8px; font-size:14px; font-weight:400; color:#fff; background:rgba(17,24,39,.6); transition:border-color .2s, box-shadow .2s; font-family:inherit; outline:none; }
.mgl-form-lead input:invalid { box-shadow:none; }
.mgl-form-lead input:focus { outline:none; border-color:var(--c-secundaria); box-shadow:0 0 0 3px rgba(201,168,76,.15); }
.mgl-form-lead input::placeholder { color:rgba(255,255,255,.4); }
.mgl-form-lead.was-validated input:invalid { border-color:#ef4444; }
.mgl-form-lgpd { font-size:12px; color:rgba(255,255,255,.5); margin:6px 0 18px; }
.mgl-form-submit { width:100%; }

.mgl-form-aside { background:linear-gradient(135deg, var(--c-primaria), var(--c-fundo)); color:#fff; padding:30px; border-radius:16px; border:1px solid rgba(201,168,76,.15); }
.mgl-form-aside h3 { color:var(--c-destaque); font-size:20px; margin-bottom:18px; }
.mgl-form-contatos { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; font-size:14px; }
.mgl-form-contatos li { color:rgba(255,255,255,.85); }
.mgl-form-contatos strong { display:block; color:var(--c-secundaria); font-size:11px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:2px; font-weight:600; }
.mgl-form-contatos a { color:#fff; }
.mgl-form-contatos a:hover { color:var(--c-destaque); }
.mgl-form-aside .mgl-btn { width:100%; }

/* Footer */
.mgl-footer { background:var(--c-fundo); color:rgba(255,255,255,.7); padding:60px 0 0; border-top:1px solid rgba(201,168,76,.12); }
.mgl-footer-grid { display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:34px; padding-bottom:40px; }
.mgl-footer h4 { color:var(--c-secundaria); font-size:14px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px; }
.mgl-footer ul li { margin-bottom:8px; font-size:13.5px; }
.mgl-footer a { color:#fff; }
.mgl-footer a:hover { color:var(--c-destaque); }
.mgl-logo-footer { color:var(--c-secundaria); margin-bottom:14px; }
.mgl-logo-footer .mgl-logo-txt { color:var(--c-secundaria); }
.mgl-redes { display:flex; gap:10px; margin-top:14px; }
.mgl-redes a { width:38px; height:38px; border-radius:50%; background:rgba(201,168,76,.1); border:1px solid rgba(201,168,76,.2); display:inline-flex; align-items:center; justify-content:center; color:var(--c-secundaria); transition:background .2s, transform .2s, color .2s; }
.mgl-redes a:hover { background:var(--c-secundaria); transform:translateY(-2px); color:var(--c-fundo); }
.mgl-footer-bottom { padding:18px 0; border-top:1px solid rgba(201,168,76,.1); font-size:12.5px; color:rgba(255,255,255,.5); text-align:center; }
.mgl-dev-credito { margin-left:4px; }
.mgl-dev-credito a { color:var(--c-secundaria); font-weight:600; }
.mgl-dev-credito a:hover { color:var(--c-destaque); }

/* WhatsApp flutuante */
body.mgl-page .mgl-whats-float { position:fixed; right:18px; bottom:18px; z-index:90; width:60px; height:60px; border-radius:50%; background:linear-gradient(135deg, #25d366, #128c7e); color:#fff; display:inline-flex; align-items:center; justify-content:center; box-shadow:0 6px 20px rgba(37,211,102,.5); animation:mglPulse 2.4s infinite; transition:transform .2s, box-shadow .2s; }
body.mgl-page .mgl-whats-float:hover { transform:scale(1.1) translateY(-2px); color:#fff; box-shadow:0 10px 30px rgba(37,211,102,.6); }
@keyframes mglPulse { 0% { box-shadow:0 6px 20px rgba(37,211,102,.5), 0 0 0 0 rgba(37,211,102,.4); } 70% { box-shadow:0 6px 20px rgba(37,211,102,.5), 0 0 0 14px rgba(37,211,102,0); } 100% { box-shadow:0 6px 20px rgba(37,211,102,.5), 0 0 0 0 rgba(37,211,102,0); } }

/* Animação fade-in (intersection observer) */
.mgl-fade { opacity:0; transform:translateY(20px); transition:opacity .6s ease, transform .6s ease; transition-delay:var(--d, 0ms); }
.mgl-fade.is-visible { opacity:1; transform:none; }

/* Responsivo */
@media (max-width: 980px) {
    .mgl-hero-inner, .mgl-sobre-grid, .mgl-form-grid { grid-template-columns:1fr; }
    .mgl-cta-meio-inner { flex-direction:column; text-align:center; }
    .mgl-header-cta span { display:none; }
}
@media (max-width: 820px) {
    .mgl-nav-toggle { display:flex; order:3; }
    .mgl-nav-list { position:absolute; top:100%; left:0; right:0; flex-direction:column; gap:0; background:var(--c-fundo); border-top:1px solid rgba(201,168,76,.15); padding:10px; max-height:0; overflow:hidden; transition:max-height .3s; box-shadow:0 14px 30px -14px rgba(0,0,0,.4); }
    .mgl-nav-list.is-open { max-height:80vh; overflow:auto; }
    .mgl-nav-list a { padding:12px 14px; width:100%; text-align:center; font-weight:600; }
    .mgl-nav-list { align-items:center; }
    .mgl-header-inner { position:relative; }
    .mgl-header-cta { display:none; }
    .mgl-nav { order:2; }
    .mgl-geo-lines::before { width:100px; height:100px; }
    .mgl-geo-lines::after { width:80px; height:80px; }
}
@media (max-width: 640px) {
    .mgl-sec { padding:54px 0; }
    .mgl-hero { padding:50px 0 60px; }
    .mgl-pilares, .mgl-form-row { grid-template-columns:1fr; }
    .mgl-footer-grid { grid-template-columns:1fr 1fr; }
    .mgl-card-float { width:100%; max-width:300px; }
    .mgl-hero-img { min-height:300px; }
    .mgl-geo-lines { display:none; }
}
@media (max-width: 460px) {
    .mgl-footer-grid { grid-template-columns:1fr; }
    .mgl-btn { padding:12px 18px; font-size:13.5px; }
    .mgl-hero-ctas .mgl-btn { flex:1; min-width:0; }
}

/* ============ Mega Menu (overrides via CSS vars + body classes) ============ */
/* As cores/raio/sombra/overlay são definidos via <style id="mgl-mega-vars"> inline. */

/* Header dinâmico */
body.mgl-mm-sticky .mgl-header { position:sticky; top:0; }
body:not(.mgl-mm-sticky) .mgl-header { position:relative; top:auto; }
body.mgl-mm-estilo-claro .mgl-header { background: var(--mgl-mm-bg, #fff); }
body.mgl-mm-estilo-escuro .mgl-header { background: var(--mgl-mm-bg, #0a1f3d); border-bottom-color:rgba(255,255,255,.08); }
body.mgl-mm-estilo-escuro .mgl-logo-txt { color:#fff; }
body.mgl-mm-estilo-escuro .mgl-nav-toggle span { background:#fff; }
body.mgl-mm-estilo-transparente .mgl-header { background:transparent; border:none; box-shadow:none; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px); }

body.mgl-mm-largura-limitada .mgl-header-inner { max-width:1280px; margin:0 auto; padding:14px clamp(1rem, 3vw, 2rem); }

body.mgl-mm-align-esquerda .mgl-mega { justify-content:flex-start; }
body.mgl-mm-align-centro   .mgl-mega { justify-content:center; }
body.mgl-mm-align-direita  .mgl-mega { justify-content:flex-end; }

body.mgl-mm-no-chevron .mgl-mega__chev { display:none; }

/* Container do mega substitui .mgl-nav original quando ativo */
.mgl-mega { flex:1; display:flex; align-items:center; gap:4px; }
.mgl-mega__menu { display:flex; gap:2px; margin:0; padding:0; list-style:none; flex-wrap:wrap; }
.mgl-mega__item { position:relative; }

.mgl-mega__link {
    display:inline-flex; align-items:center; gap:6px;
    padding:10px 14px;
    background:transparent; border:0; cursor:pointer;
    color: var(--mgl-mm-link, #0B3B6F);
    font-family:inherit; font-size:14px; font-weight:500;
    border-radius:8px;
    transition:color .2s, background .2s;
    text-decoration:none;
    position:relative;
}
.mgl-mega__link::after {
    content:'';
    position:absolute;
    left:14px; right:14px; bottom:5px;
    height:2px;
    background: var(--mgl-mm-underline, #F59E0B);
    transform:scaleX(0);
    transform-origin:center;
    transition:transform .25s ease;
    border-radius:2px;
}
.mgl-mega__link:hover,
.mgl-mega__item--open > .mgl-mega__link,
.mgl-mega__link[aria-expanded="true"] { color: var(--mgl-mm-link-hover, #11A8AB); background:rgba(11,59,111,.06); }
.mgl-mega__link:hover::after,
.mgl-mega__item--open > .mgl-mega__link::after,
.mgl-mega__link[aria-expanded="true"]::after { transform:scaleX(1); }
.mgl-mega__link .mgl-mega__icon { flex-shrink:0; }

/* CTA highlight (gradiente) */
.mgl-mega__link--highlight {
    background:linear-gradient(135deg, var(--mgl-mm-destaque-bg, #25d366), color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 80%, #000));
    color: var(--mgl-mm-destaque-tx, #fff) !important;
    padding:10px 16px;
    box-shadow:0 6px 14px -6px color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 70%, transparent);
}
.mgl-mega__link--highlight:hover { color: var(--mgl-mm-destaque-tx, #fff) !important; transform:translateY(-1px); background:linear-gradient(135deg, color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 88%, #000), color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 65%, #000)); }
.mgl-mega__link--highlight::after { display:none; }

/* Painel (dropdown / mega) */
.mgl-mega__panel {
    position:absolute; top:100%; left:0;
    margin-top:8px;
    background: var(--mgl-mm-painel-bg, #fff);
    border:1px solid var(--mgl-mm-painel-bd, #e5e7eb);
    color: var(--mgl-mm-painel-tx, #0F172A);
    border-radius: var(--mgl-mm-raio, 14px);
    box-shadow: var(--mgl-mm-sombra, 0 20px 50px rgba(15,15,30,.18));
    padding:18px;
    min-width:280px;
    max-width:min(92vw, 720px);
    opacity:0; visibility:hidden; transform:translateY(-6px);
    transition:opacity .22s, transform .22s, visibility .22s;
    z-index:120;
}
.mgl-mega__item--open > .mgl-mega__panel { opacity:1; visibility:visible; transform:translateY(0); }
.mgl-mega__panel--mega { left:50%; transform:translate(-50%, -6px); width:min(92vw, 960px); max-width:none; padding:22px; }
.mgl-mega__item--open > .mgl-mega__panel--mega { transform:translate(-50%, 0); }

.mgl-mega__layout { display:grid; grid-template-columns:1fr 280px; gap:24px; align-items:start; }
.mgl-mega__panel--mega:not(:has(.mgl-mega__feature)) .mgl-mega__layout { grid-template-columns:1fr; }
.mgl-mega__groups { display:grid; grid-template-columns:repeat(auto-fit, minmax(180px, 1fr)); gap:18px; }
.mgl-mega__group { min-width:0; }
.mgl-mega__heading { font-size:12px; text-transform:uppercase; letter-spacing:.06em; color: var(--mgl-mm-painel-mu, #64748b); margin:0 0 8px; font-weight:700; }

.mgl-mega__cards, .mgl-mega__sublist { display:flex; flex-direction:column; gap:4px; margin:0; padding:0; list-style:none; }
.mgl-mega__card, .mgl-mega__sublist a {
    display:flex; align-items:flex-start; gap:10px;
    padding:8px 10px; border-radius:8px;
    color: var(--mgl-mm-painel-tx, #0F172A);
    text-decoration:none;
    transition:background .2s, transform .15s;
}
.mgl-mega__card:hover, .mgl-mega__sublist a:hover { background:rgba(17,168,171,.08); transform:translateX(2px); }
.mgl-mega__card .mgl-mega__icon, .mgl-mega__sublist .mgl-mega__icon { color: var(--mgl-mm-link-hover, #11A8AB); flex-shrink:0; margin-top:2px; }
.mgl-mega__card strong, .mgl-mega__sublist strong { display:block; font-size:13.5px; font-weight:600; color: var(--mgl-mm-painel-tx, #0F172A); }
.mgl-mega__card small, .mgl-mega__sublist small { display:block; font-size:12px; color: var(--mgl-mm-painel-mu, #64748b); margin-top:2px; }
.mgl-mega__muted { color: var(--mgl-mm-painel-mu, #64748b); font-size:13px; font-style:italic; }

/* Card de destaque (mega) */
.mgl-mega__feature {
    background:linear-gradient(135deg, color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 15%, var(--mgl-mm-painel-bg, #fff)), color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 6%, var(--mgl-mm-painel-bg, #fff)));
    border:1px solid color-mix(in srgb, var(--mgl-mm-destaque-bg, #25d366) 30%, transparent);
    border-radius:10px;
    padding:18px;
    display:flex; flex-direction:column; gap:10px; align-items:flex-start;
}
.mgl-mega__feature .mgl-mega__icon { color: var(--mgl-mm-destaque-bg, #25d366); width:28px; height:28px; }
.mgl-mega__feature h5 { margin:0; font-size:15px; color: var(--mgl-mm-painel-tx, #0F172A); }
.mgl-mega__feature p { margin:0; color: var(--mgl-mm-painel-mu, #64748b); font-size:13px; line-height:1.5; }
.mgl-mega__feature-btn {
    display:inline-flex; align-items:center; gap:6px;
    background: var(--mgl-mm-destaque-bg, #25d366);
    color: var(--mgl-mm-destaque-tx, #fff);
    padding:9px 16px; border-radius:8px;
    font-size:13px; font-weight:600;
    text-decoration:none;
    transition:transform .15s, filter .15s;
}
.mgl-mega__feature-btn:hover { transform:translateY(-1px); filter:brightness(1.08); color: var(--mgl-mm-destaque-tx, #fff); }

/* Backdrop quando algum painel está aberto (desktop) */
@media (min-width:1024px) {
    body.mgl-mega-open::before {
        content:''; position:fixed; inset:0;
        background:rgba(0,0,0, var(--mgl-mm-overlay, .28));
        z-index:80;
        pointer-events:none;
        animation:mglOverlayIn .25s ease;
    }
    @keyframes mglOverlayIn { from { opacity:0 } to { opacity:1 } }
}

/* Responsivo mega menu */
@media (max-width:820px) {
    .mgl-mega { display:none; }
    .mgl-mega.is-mobile-open {
        display:flex; flex-direction:column; align-items:stretch;
        position:absolute; top:100%; left:0; right:0;
        background:var(--mgl-mm-bg, #fff);
        border-top:1px solid var(--mgl-mm-painel-bd, #e5e7eb);
        padding:14px; gap:6px;
        max-height:80vh; overflow:auto;
        box-shadow: var(--mgl-mm-sombra, 0 14px 28px rgba(0,0,0,.12));
    }
    .mgl-mega__menu { flex-direction:column; gap:2px; width:100%; align-items:center; }
    .mgl-mega__item { width:100%; }
    .mgl-mega__link { width:100%; justify-content:center; padding:12px 14px; font-weight:600; text-align:center; }
    .mgl-mega__panel, .mgl-mega__panel--mega {
        position:static; transform:none !important;
        width:auto; max-width:none; min-width:0;
        opacity:1; visibility:hidden;
        margin:0; padding:0;
        max-height:0; overflow:hidden;
        box-shadow:none; border:0; background:transparent;
        transition:max-height .3s ease;
    }
    .mgl-mega__item--open > .mgl-mega__panel,
    .mgl-mega__item--open > .mgl-mega__panel--mega { visibility:visible; max-height:1000px; padding:8px 0 14px 14px; border-left:2px solid var(--mgl-mm-underline, #F59E0B); margin:4px 0 8px 8px; }
    .mgl-mega__layout { grid-template-columns:1fr; gap:14px; }
    .mgl-mega__groups { grid-template-columns:1fr; }
    body.mgl-mega-open::before { display:none; }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration:.001ms !important; transition-duration:.001ms !important; }
    html { scroll-behavior:auto; }
    .mgl-fade { opacity:1; transform:none; }
}
