
:root{--bg:#F6F9FC;--alt:#FFFFFF;--fg:#1A2433;--mut:#52607A;--line:#D6E0EB;--h:#0A1F44;--lk:#1F5FA8;--btn:#0A1F44;--btnfg:#fff;--chip:#EAF3FA;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#07142D;--alt:#0B1D3E;--fg:#E4ECF6;--mut:#9FB0C8;--line:#1E3560;--h:#FFFFFF;--lk:#48CAE4;--btn:#00B4D8;--btnfg:#04122B;--chip:#12294F}}
:root[data-theme="dark"]{--bg:#07142D;--alt:#0B1D3E;--fg:#E4ECF6;--mut:#9FB0C8;--line:#1E3560;--h:#FFFFFF;--lk:#48CAE4;--btn:#00B4D8;--btnfg:#04122B;--chip:#12294F}
html{scroll-padding-top:calc(72px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.65 "IBM Plex Sans",system-ui,sans-serif}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:#0A1F44;z-index:30}
h1,h2,h3{font-family:Sora,"IBM Plex Sans",sans-serif;color:var(--h);line-height:1.15;margin:0}
p{margin:0 0 14px;max-width:62ch}
a{color:var(--lk)}
.w{max-width:1120px;margin:0 auto;padding:0 22px}
.btn{display:inline-block;background:var(--btn);color:var(--btnfg);text-decoration:none;font-weight:600;padding:14px 24px;border-radius:8px;border:2px solid var(--btn)}
.btn:hover{filter:brightness(1.1)}
.btn.g{background:transparent;color:inherit;border-color:currentColor}
.btn:focus-visible,a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #00B4D8;outline-offset:3px}
body .ljs-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:#0A1F44}
.nb{display:flex;align-items:center;justify-content:space-between;height:68px}
.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:700 1.1rem Sora,sans-serif;line-height:1}
.logo svg{width:34px;height:30px}
.logo small{display:block;font:400 .52rem "IBM Plex Sans";letter-spacing:.05em;margin-top:4px;opacity:.85}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:6px;align-items:center}
nav li{position:relative}
nav a.t,nav button.t{display:block;color:#DCE8F6;text-decoration:none;padding:24px 12px;font:500 .95rem "IBM Plex Sans";background:none;border:0;cursor:pointer}
nav a.t:hover,nav button.t:hover{color:#00B4D8}
.sub{display:none;position:absolute;left:-40px;top:68px;background:#0A1F44;border:1px solid #1E3560;border-radius:0 0 10px 10px;padding:20px 24px;grid-template-columns:1fr 1fr;gap:28px;width:480px}
li:hover>.sub,li:focus-within>.sub{display:grid}
.sub b{display:block;color:#00B4D8;font:600 .8rem "IBM Plex Sans";margin-bottom:8px}
.sub a{display:block;color:#DCE8F6;text-decoration:none;padding:5px 0;font-size:.93rem}
.sub a:hover{color:#00B4D8}
.ct{background:#00B4D8;color:#04122B;padding:10px 18px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.92rem;margin-left:8px}
.mb{display:none;background:none;border:1px solid #4C6A96;color:#fff;border-radius:8px;padding:8px 14px;font:600 .9rem "IBM Plex Sans"}
.hero{background:#0A1F44;color:#DCE8F6;position:relative;overflow:hidden}
.hin{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:center;padding:64px 0 56px}
.hero h1{color:#fff;font-size:clamp(2.2rem,6vw,4rem);margin-bottom:20px}
.hero p.l{font-size:1.15rem;color:#B9CCE3}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.hero .btn{background:#00B4D8;border-color:#00B4D8;color:#04122B}
.hero .btn.g{background:transparent;color:#fff;border-color:#4C6A96}
.net{width:100%;height:auto;max-height:400px}
.net .ln{stroke:#2C66AE;stroke-width:2;fill:none;stroke-dasharray:400;stroke-dashoffset:400;animation:dr 1.6s ease-out .2s forwards}
.net .ln:nth-of-type(2){animation-delay:.5s}.net .ln:nth-of-type(3){animation-delay:.8s}
.net .nd{fill:#2C66AE}.net .ac{fill:#00B4D8}
@keyframes dr{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.net .ln{animation:none;stroke-dashoffset:0}html{scroll-behavior:auto}}
.st{border-top:1px solid #1E3560;display:grid;grid-template-columns:repeat(3,1fr)}
.st div{padding:22px 22px 24px 0;font-size:.92rem;color:#9FB0C8}
.st b{display:block;font:700 1.9rem Sora,sans-serif;color:#fff}
section{padding:84px 0}
section.alt{background:var(--alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
h2{font-size:clamp(1.7rem,4vw,2.5rem);margin-bottom:14px}
.sub2{color:var(--mut);font-size:1.05rem;margin-bottom:36px}
.sv{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px}
.rw{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;padding:24px 0;border-top:2px solid var(--h)}
.rw:last-child{border-bottom:1px solid var(--line)}
.rw h3{font-size:1.25rem}
.rw p{margin:0 0 8px;color:var(--mut)}
.rw span{font-size:.85rem;color:var(--lk);font-weight:500}
.sg{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sg>div{background:var(--bg);border:1px solid var(--line);border-top:4px solid #00B4D8;border-radius:10px;padding:22px 20px}
.sg h3{font-size:1.2rem;margin-bottom:8px}
.sg p{font-size:.93rem;color:var(--mut);margin:0 0 12px}
.ch{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.ch li{background:var(--chip);color:var(--h);font-size:.78rem;font-weight:500;padding:3px 10px;border-radius:999px}
.ig{display:grid;grid-template-columns:1fr 1fr;gap:16px}
details{background:var(--alt);border:1px solid var(--line);border-radius:12px;padding:0}
section.alt details{background:var(--bg)}
summary{list-style:none;cursor:pointer;padding:22px 24px}
summary::-webkit-details-marker{display:none}
summary small{color:var(--lk);font-weight:600;font-size:.8rem}
summary h3{font-size:1.15rem;margin:6px 0 8px}
summary p{margin:0;color:var(--mut);font-size:.95rem}
summary i{display:inline-block;margin-top:10px;font-style:normal;font-weight:600;color:var(--lk);font-size:.9rem}
details[open] summary i::after{content:" (recolher)"}
details:not([open]) summary i::after{content:" (expandir)"}
.bd{padding:0 24px 22px;border-top:1px solid var(--line);font-size:.95rem}
.bd p{margin:14px 0 0}
.bd code{background:var(--chip);padding:2px 6px;border-radius:4px;font-size:.88rem;color:var(--h)}
.pr{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.pr li{counter-increment:s;position:relative;padding-top:54px}
.pr li::before{content:counter(s);position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;background:var(--h);color:var(--alt);display:grid;place-items:center;font:700 1rem Sora,sans-serif}
.pr h3{font-size:1.05rem;margin-bottom:6px}
.pr p{color:var(--mut);font-size:.95rem;margin:0}
.ab{display:grid;grid-template-columns:1.1fr .9fr;gap:56px}
.vl{display:grid;gap:18px}
.vl div{border-left:3px solid #00B4D8;padding-left:16px}
.vl h3{font-size:1.05rem;margin-bottom:2px}
.vl p{margin:0;color:var(--mut);font-size:.95rem}
.fin{background:#0A1F44;color:#DCE8F6;padding:84px 0}
.fin h2{color:#fff;max-width:20ch}
.fin p{color:#B9CCE3}
.fin .btn{background:#00B4D8;border-color:#00B4D8;color:#04122B}
.fin .btn.g{background:transparent;color:#fff;border-color:#4C6A96}
footer{background:#07142D;color:#8DA3C2;font-size:.9rem;padding:48px 0 28px}
.fg{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:32px}
footer b{display:block;color:#fff;font:600 .9rem Sora,sans-serif;margin-bottom:10px}
footer a{display:block;color:#9FC0E6;text-decoration:none;padding:3px 0}
footer a:hover{color:#00B4D8}
.cp{border-top:1px solid #1E3560;margin-top:32px;padding-top:18px;font-size:.82rem}
@media (max-width:900px){
.mb{display:block}
nav ul{display:none;position:absolute;left:0;right:0;top:68px;background:#0A1F44;flex-direction:column;align-items:stretch;padding:8px 22px 20px;border-top:1px solid #1E3560;max-height:calc(100vh - 68px);overflow:auto}
nav.o ul{display:flex}
nav a.t,nav button.t{padding:12px 0;text-align:left;width:100%}
.sub{display:grid;position:static;border:0;padding:0 0 8px 14px;width:auto;grid-template-columns:1fr;gap:12px}
.ct{margin:10px 0 0;text-align:center}
.hin,.sv,.ab{grid-template-columns:1fr}.hin{padding:36px 0 36px}.net{max-height:230px}
.sg{grid-template-columns:1fr 1fr}.ig{grid-template-columns:1fr}.pr{grid-template-columns:1fr 1fr}
.rw{grid-template-columns:1fr}.fg{grid-template-columns:1fr 1fr}section{padding:60px 0}.ab{gap:32px}}
@media (max-width:520px){.sg,.pr,.fg{grid-template-columns:1fr}.st{grid-template-columns:1fr}.btn{width:100%;text-align:center}}
.js [data-r]{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.js [data-r].in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js [data-r]{opacity:1;transform:none;transition:none}}
.pg{position:fixed;top:env(safe-area-inset-top,0px);left:0;height:3px;width:0;background:#00B4D8;z-index:50}
.hv{position:relative}
.cv{width:100%;height:400px;display:block;touch-action:pan-y}
.pz{position:absolute;right:6px;bottom:6px;background:rgba(10,31,68,.8);color:#DCE8F6;border:1px solid #4C6A96;border-radius:999px;padding:6px 14px;font:500 .8rem "IBM Plex Sans";cursor:pointer}
.pz:hover{border-color:#00B4D8;color:#fff}
.rot{color:#fff;font:600 1.05rem Sora,sans-serif;margin:0}
.rot b{color:#00B4D8;display:inline-block;transition:opacity .25s}
.sg>div,details,.vl div,.rw{transition:transform .25s ease,box-shadow .25s ease}
.sg>div:hover,details:hover{transform:translateY(-5px);box-shadow:0 14px 28px rgba(10,31,68,.18)}
.cr{background:#0A1F44;color:#DCE8F6;border-radius:16px;padding:34px}
.sl{display:none;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:center;min-height:310px}
.sl.on{display:grid;animation:fi .6s ease}
@keyframes fi{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:none}}
.sl h3{color:#fff;font-size:1.6rem;margin:6px 0 12px}
.sl p{color:#B9CCE3}
.tg{color:#00B4D8;font:600 .85rem "IBM Plex Sans"}
.br{display:grid;grid-template-columns:112px 1fr 52px;gap:10px;align-items:center;margin:10px 0;font-size:.88rem}
.br .tr{position:relative;height:20px;background:#12294F;border-radius:4px}
.br .b{position:absolute;top:0;height:100%;width:0;border-radius:4px;background:#4C8FD6;transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.sl.on .b{width:var(--w)}
.br .b.bad{background:#E4707F}.br .b.hi{background:#00B4D8}
.br .mt{position:absolute;top:-3px;bottom:-3px;width:2px;background:#fff}
.br .v{text-align:right;color:#fff;font-weight:600}
.rn{width:128px;display:block;margin:0 auto 14px}
.rg{stroke-dasharray:0 327;transition:stroke-dasharray 1.4s cubic-bezier(.2,.7,.2,1)}
.sl.on .rg{stroke-dasharray:var(--d) 327}
.ctl{display:flex;align-items:center;gap:10px;margin-top:24px}
.ctl button{width:42px;height:42px;border-radius:50%;border:1px solid #4C6A96;background:transparent;color:#fff;cursor:pointer;font-size:1.1rem;line-height:1}
.ctl button:hover{background:#00B4D8;color:#04122B;border-color:#00B4D8}
.dots{display:flex;gap:8px;margin-left:auto}
.dots i{width:30px;height:4px;border-radius:2px;background:#2C4A78;cursor:pointer}
.dots i.on{background:#00B4D8}
@media (max-width:900px){.sl{grid-template-columns:1fr;gap:18px}.cv{height:270px}.cr{padding:22px}}
@media (prefers-reduced-motion:reduce){.sl.on{animation:none}.br .b,.rg{transition:none}}

/* ---- WordPress ---- */
body{background:var(--bg)!important;color:var(--fg)!important}
.wp-site-blocks{padding:0}
.wp-site-blocks>*{margin-block-start:0!important}
.admin-bar .ljs-header{top:calc(32px + env(safe-area-inset-top,0px))}
.admin-bar .pg{top:32px}
@media (max-width:782px){.admin-bar .ljs-header{top:calc(46px + env(safe-area-inset-top,0px))}.admin-bar .pg{top:46px}}
.ljs-main{max-width:860px;margin:0 auto;padding:56px 22px 88px}
.ljs-main h1{font-size:clamp(1.9rem,4.5vw,2.8rem);margin-bottom:12px}
.ljs-main .wp-block-post-title a{color:var(--h);text-decoration:none}
.ljs-main .wp-block-post-title a:hover{color:var(--lk)}
.ljs-main .wp-block-post-date{color:var(--mut);font-size:.9rem;margin:0 0 8px}
.ljs-main .wp-block-post-template{list-style:none;padding:0;margin:24px 0 0}
.ljs-main .wp-block-post-template>li{padding:26px 0;border-top:1px solid var(--line)}
.ljs-main .wp-block-post-content{margin-top:24px}
.ljs-main .wp-block-post-content p,.ljs-main .wp-block-post-content li{max-width:none}
.ljs-main .wp-block-post-content h2{margin:36px 0 12px;font-size:1.6rem}
.ljs-main .wp-block-post-content h3{margin:28px 0 10px;font-size:1.25rem}
.ljs-main .wp-block-post-content img{max-width:100%;height:auto;border-radius:8px}
.ljs-main .wp-block-query-pagination{display:flex;gap:16px;margin-top:28px}
.ljs-main .wp-block-button__link{background:var(--btn);color:var(--btnfg);border-radius:8px;padding:14px 24px;font-weight:600;text-decoration:none}
