/* CIOB: navbar, CTA final, rodapé e WhatsApp flutuante da home.
   Atualizar esta folha ao editar estilos equivalentes em index.html. */
:root{--pu:#39016d;--pu2:#4a1485;--f:'Manrope',system-ui,sans-serif;--pad:clamp(20px,5vw,64px)}
.sec{padding-block:clamp(72px,11vw,160px)}
.btn{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:14px 26px;border-radius:999px;font:600 16px/1 var(--f);text-decoration:none;border:1.5px solid var(--pu);background:var(--pu);color:#fff;transition:background .25s,color .25s,border-color .25s;cursor:pointer}
.btn i{font-style:normal;transition:transform .25s}
.btn:hover i{transform:translateX(5px)}
.btn:hover{background:var(--pu2)}
.btn.o{background:transparent;color:var(--pu)}
.btn.o:hover{background:var(--pu);color:#fff}
.on-pu .btn{background:#fff;color:var(--pu);border-color:#fff}
.on-pu .btn:hover{background:var(--lav);border-color:var(--lav)}
.ul{background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .3s;text-decoration:none}
.ul:hover{background-size:100% 1.5px}
header.h{position:sticky;top:0;z-index:50;transition:background .3s,box-shadow .3s,transform .45s cubic-bezier(.22,1,.36,1)}
header.h.hd{transform:translateY(-100%)}
header.h.s{background:var(--bg);box-shadow:0 1px 0 var(--line)}
.h .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.h img{height:40px;width:auto}
.nav{display:flex;align-items:center;gap:clamp(15px,2.2vw,32px)}
.nav a:not(.btn){font-weight:600;font-size:15px}
.nav .btn{min-height:44px;padding:11px 20px;font-size:15px}
.burger{display:none;min-width:48px;min-height:48px;border:0;background:none;cursor:pointer;color:var(--ink);font:600 15px var(--f)}
.btn .ic{width:20px;height:20px}
.wf{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:60;width:52px;height:52px;border-radius:50%;background:var(--pu);color:#fff;display:grid;place-items:center;opacity:0;transform:translateY(12px);pointer-events:none;box-shadow:0 6px 20px rgba(20,16,28,.2);transition:opacity .35s ease,transform .35s cubic-bezier(.22,1,.36,1)}
.wf.is-on{opacity:1;transform:translateY(0);pointer-events:auto}
.wf .ic{display:block;width:28px;height:28px}
.wf.is-on:hover{transform:scale(1.06);background:var(--pu2)}
.wf:focus-visible{outline:3px solid #8b5cf6;outline-offset:4px}
.mo .wf{opacity:0;transform:translateY(12px);pointer-events:none}
@media (prefers-reduced-motion:reduce){.wf{transition:none!important;transform:none!important}}
.fin{background:var(--pu);color:#fff;border-radius:clamp(24px,4vw,56px) clamp(24px,4vw,56px) 0 0;overflow:hidden;position:relative}
.fin h2{font-size:clamp(2.6rem,5.4vw,6rem);max-width:12em;margin-bottom:24px}
.fin p.t{font-size:1.2rem;max-width:28em;margin:0 0 36px;color:#e6dff3}
.fin .sy{position:absolute;right:-6%;bottom:-3%;width:min(46vw,560px);opacity:.1;pointer-events:none}
.fin .wrap{position:relative}
footer.ft{margin-top:clamp(72px,9vw,128px);padding-top:56px;border-top:1px solid rgba(255,255,255,.25);font-size:15px;color:#e6dff3}
.ft-g{display:grid;grid-template-columns:1.3fr .8fr 1fr 1.8fr;gap:clamp(32px,4vw,64px)}
.ft h3{font-size:15px;font-weight:700;letter-spacing:0;line-height:1.2;color:#fff;margin:0 0 20px}
.ft img{height:84px;width:auto;margin-bottom:24px}
.ft p{margin:0 0 12px;max-width:26em}
.ft nav,.ft .fs{display:flex;flex-direction:column;gap:10px}
.ft nav h3,.ft .fs h3{margin-bottom:10px}
.ft a{color:#fff;text-decoration:none}
.ft a.ul{background-size:0 1.5px}
.ft a.ul:hover{background-size:100% 1.5px}
.ft .ci{display:flex;gap:12px;align-items:flex-start;margin:0 0 16px;max-width:none}
.ft .ci svg{flex:none;margin-top:3px;color:var(--lav)}
.ft .so .ic{width:18px;height:18px;margin:0;color:var(--pu)}
.ft .so{display:flex;gap:12px;margin-top:24px}
.ft .so a{width:40px;height:40px;border-radius:50%;background:var(--lav);color:var(--pu);display:grid;place-items:center;transition:background .25s}
.ft .so a:hover{background:#fff}
.ft .fc b{color:#fff;font-weight:600}
.fbar{margin-top:56px;padding:24px 0 8px;border-top:1px solid rgba(255,255,255,.25);text-align:center;font-size:13px}
@media (max-width:900px){.nav{position:fixed;inset:72px 0 0;background:var(--bg);flex-direction:column;align-items:flex-start;gap:8px;padding:32px var(--pad);transform:translateX(100%);visibility:hidden;transition:transform .35s,visibility .35s}
.nav.o{transform:none;visibility:visible}
.nav a:not(.btn){font-size:28px;font-weight:500;min-height:56px;display:flex;align-items:center}
.nav .btn{margin-top:16px}
.burger{display:block}
.ft-g{grid-template-columns:1fr 1fr}
.ft .fb,.ft .fc{grid-column:1/-1}}
@media (max-width:520px){.ft-g{grid-template-columns:1fr}}
header.h{
 position:fixed;top:0;left:0;right:0;width:100%;z-index:70;
 background:transparent;color:#fff;box-shadow:none;
 transition:background .3s ease,box-shadow .3s ease,transform .45s cubic-bezier(.22,1,.36,1),color .3s ease;
}
header.h .wrap{max-width:none;height:84px;padding-inline:clamp(24px,4.2vw,64px);transition:height .3s ease,padding .3s ease,max-width .3s ease}
header.h .brand{display:inline-flex;align-items:center;position:relative}
header.h .logo-top{display:block}
header.h .logo-scroll{display:none}
header.h .nav a:not(.btn){color:#fff}
header.h .nav .btn{background:rgba(255,255,255,.94);color:var(--pu);border-color:rgba(255,255,255,.94)}
header.h .nav .btn:hover{background:#fff;border-color:#fff;color:var(--pu)}
header.h .burger{color:#fff}
header.h.s{background:var(--bg);color:var(--ink);box-shadow:0 1px 0 var(--line)}
header.h.s .wrap{max-width:none;height:72px;padding-inline:clamp(24px,4.2vw,64px)}
header.h.s .logo-top{display:none}
header.h.s .logo-scroll{display:block}
header.h.s .nav a:not(.btn){color:var(--ink)}
header.h.s .nav .btn{background:var(--pu);color:#fff;border-color:var(--pu)}
header.h.s .nav .btn:hover{background:var(--pu2);border-color:var(--pu2);color:#fff}
header.h.s .burger{color:var(--ink)}
@media (max-width:900px){header.h .wrap{height:72px;padding-inline:var(--pad)}
header.h .nav{inset:72px 0 0;color:var(--ink)}
header.h .nav.o{background:var(--bg)}
header.h .nav.o a:not(.btn){color:var(--ink)}
header.h .nav.o .btn{background:var(--pu);color:#fff;border-color:var(--pu)}}
header.h.s .wrap{max-width:none;padding-inline:clamp(24px,4.2vw,64px)}
@media (max-width:900px){header.h.s .wrap{padding-inline:var(--pad)}}
/* Na página de blogs, a navbar utiliza o mesmo estado claro da home após o scroll. */
.site-header-offset{height:72px}
header.h.s .wrap{width:100%;max-width:none}
.fin>.wrap{width:100%;max-width:1320px;padding-inline:var(--pad);margin:0 auto}
.fin .btn i{font-style:normal}
@media(max-width:900px){.h .nav a:not(.btn){text-decoration:none}}

/* CTA final dos blogs: composição compacta, sem alterar o rodapé nem a home.
   Esta folha é utilizada exclusivamente em /blogs/ e nos artigos. */
.fin.sec{padding-block:clamp(54px,5.5vw,84px) clamp(60px,7vw,100px)}
.fin h2{font-size:clamp(2.05rem,3.35vw,3.85rem);line-height:1.13;letter-spacing:-.045em;font-weight:500;max-width:15em;margin:0 0 16px}
.fin p.t{font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.55;max-width:35em;margin:0 0 24px}
.fin>.wrap>.btn{min-height:48px;padding:12px 22px;font-size:15px}
.fin footer.ft{margin-top:clamp(52px,6vw,86px)}
@media(max-width:600px){
 .fin.sec{padding-block:52px 66px}
 .fin h2{font-size:clamp(1.95rem,8vw,2.75rem);line-height:1.16;margin-bottom:14px}
 .fin p.t{font-size:1rem;margin-bottom:22px}
 .fin footer.ft{margin-top:54px}
}


/* Menu mobile priorizado sobre todos os elementos da pagina. */
@media(max-width:900px){
 body.mo header.h{z-index:200;transform:none!important}
 body.mo header.h .nav.o{z-index:1;height:calc(100dvh - 72px);max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}
}
