@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-latin-ext.6bb06407.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/ibm-plex-mono-latin.01d28544.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/ibm-plex-sans-latin-ext.d160e209.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/ibm-plex-sans-latin.e2291e84.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Jost';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/jost-latin-ext.312ef2b8.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:'Jost';font-style:normal;font-weight:400 500;font-display:swap;src:url(../fonts/jost-latin.7726a5cd.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}

/* ------------------------------------------------------------------ base
   Cópia literal do bloco <style> do design. As regras de <a> ficam dentro de
   :where() para terem especificidade zero: assim as classes extraídas dos
   antigos style="" continuam vencendo, exatamente como o estilo inline vencia. */
*{box-sizing:border-box}
body{margin:0;background:#fff;font-family:'IBM Plex Sans',system-ui,sans-serif;color:#233c4a;-webkit-font-smoothing:antialiased}
html,body{height:auto;min-height:100%}
html{scroll-behavior:smooth}
:where(a){color:#0E4E72}
:where(a:hover){color:#C42D14}
summary::-webkit-details-marker{display:none}
img{max-width:100%}

/* <picture> é apenas um invólucro para o srcset: display:contents faz a caixa
   dele desaparecer, de modo que a <img> continua sendo filha direta do pai e o
   layout fica idêntico ao do design, que usava <img> solta. */
picture{display:contents}

/* ------------------------------------------------------- estilos do design
   Uma classe por combinação de style/style-hover/style-focus do arquivo
   original, na ordem em que aparecem no documento. */

.s1{position:absolute;left:-9999px;top:0;background:#0E4E72;color:#fff;padding:12px 18px;font:400 14px/1 'IBM Plex Sans',sans-serif;z-index:200}
.s1:focus{left:12px;top:12px}
.s2{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(14,78,114,.14)}
.s3{max-width:1240px;margin:0 auto;padding:11px clamp(16px,3vw,44px);display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,32px);flex-wrap:nowrap}
.s4{display:block;flex:none}
.s5{height:clamp(34px,3.6vw,46px);width:auto;display:block}
.s6{height:42px;width:auto;display:block}
.s7{display:flex;align-items:center;gap:clamp(12px,1.4vw,26px);flex-wrap:nowrap}
.s8{font:400 14px/1 'IBM Plex Sans',sans-serif;color:#2c4a5c;text-decoration:none;white-space:nowrap}
.s8:hover{color:#C42D14}
.s9{font:500 14px/1 'IBM Plex Sans',sans-serif;color:#fff;background:#0E4E72;text-decoration:none;padding:14px clamp(16px,1.8vw,24px);border-radius:6px;white-space:nowrap}
.s9:hover{background:#093a56;color:#fff}
.s10{display:flex;align-items:center;gap:10px}
.s11{font:500 14px/1 'IBM Plex Sans',sans-serif;color:#fff;background:#0E4E72;text-decoration:none;padding:14px 18px;border-radius:6px;white-space:nowrap}
.s12{width:48px;height:48px;border:1px solid rgba(14,78,114,.24);background:#fff;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;padding:0}
.s13{display:block;width:20px;height:1.5px;background:#0E4E72}
.s14{border-top:1px solid rgba(14,78,114,.14);background:#fff;padding:8px clamp(16px,3vw,44px) 18px;display:flex;flex-direction:column}
.s15{font:400 16px/1 'IBM Plex Sans',sans-serif;color:#2c4a5c;text-decoration:none;padding:16px 0;border-bottom:1px solid rgba(14,78,114,.1)}
.s16{font:400 16px/1 'IBM Plex Sans',sans-serif;color:#2c4a5c;text-decoration:none;padding:16px 0}
.s17{display:block}
.s18{background:#eef4f8}
.s19{max-width:1240px;margin:0 auto;padding:clamp(44px,5vw,72px) clamp(20px,4vw,44px) 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(32px,4vw,56px);align-items:end}
.s20{padding-bottom:clamp(44px,5vw,72px)}
.s21{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#C42D14;margin-bottom:22px}
.s22{font:500 clamp(36px,4.6vw,58px)/1.08 Jost,sans-serif;color:#0E4E72;margin:0 0 14px;letter-spacing:-.02em;text-wrap:pretty}
.s23{font:400 clamp(19px,2vw,25px)/1.35 Jost,sans-serif;color:#2c6f96;margin:0 0 22px;max-width:24ch;text-wrap:pretty}
.s24{font:400 clamp(16px,1.5vw,18px)/1.7 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 34px;max-width:44ch;text-wrap:pretty}
.s25{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:34px}
.s26{font:500 15px/1 'IBM Plex Sans',sans-serif;color:#fff;background:#F53E22;text-decoration:none;padding:19px 30px;border-radius:6px}
.s26:hover{background:#C42D14;color:#fff}
.s27{font:400 15px/1 'IBM Plex Sans',sans-serif;color:#0E4E72;text-decoration:none;padding:18px 24px;border:1px solid rgba(14,78,114,.3);border-radius:6px;background:#fff}
.s27:hover{border-color:#0E4E72;color:#0E4E72}
.s28{font:400 14px/1.6 'IBM Plex Sans',sans-serif;color:#546f7e;margin:-18px 0 34px}
.s29{align-self:end;min-width:0}
.s30{display:block;width:100%;aspect-ratio:3/4;max-height:540px;object-fit:cover;object-position:50% 12%;border-radius:10px 10px 0 0}
.s31{border-top:1px solid rgba(14,78,114,.16);background:#eef4f8}
.s32{max-width:1240px;margin:0 auto;padding:26px clamp(20px,4vw,44px);display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:clamp(20px,3vw,36px)}
.s33{font:500 15px/1.4 'IBM Plex Sans',sans-serif;color:#0E4E72;margin-bottom:5px}
.s34{font:400 13.5px/1.5 'IBM Plex Sans',sans-serif;color:#4f6f80}
.s35{background:#fff;padding:clamp(60px,7vw,100px) clamp(20px,4vw,44px);scroll-margin-top:clamp(84px,13vw,140px)}
.s36{max-width:1240px;margin:0 auto}
.s37{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.s38{width:26px;height:1px;background:#F53E22;display:block;flex:none}
.s39{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#C42D14}
.s40{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 18px;letter-spacing:-.015em;max-width:22ch;text-wrap:pretty}
.s41{font:400 17px/1.7 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 44px;max-width:58ch;text-wrap:pretty}
.s42{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0;background:#fff;border:1px solid rgba(14,78,114,.14);border-radius:10px;overflow:hidden}
.s43{background:#fff;padding:30px 26px;box-shadow:0 0 0 1px rgba(14,78,114,.14)}
.s44{font:500 17px/1.4 Jost,sans-serif;color:#0E4E72;margin-bottom:9px}
.s45{font:400 14.5px/1.65 'IBM Plex Sans',sans-serif;color:#4f6f80}
.s46{background:#0E4E72;padding:clamp(60px,7vw,100px) clamp(20px,4vw,44px);scroll-margin-top:clamp(84px,13vw,140px)}
.s47{width:26px;height:1px;background:#FBC2B6;display:block;flex:none}
.s48{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#FBC2B6}
.s49{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#fff;margin:0 0 18px;letter-spacing:-.015em;max-width:24ch;text-wrap:pretty}
.s50{font:400 17px/1.7 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.8);margin:0 0 44px;max-width:56ch;text-wrap:pretty}
.s51{display:grid;grid-template-columns:repeat(auto-fit,minmax(275px,1fr));gap:clamp(16px,2vw,24px)}
.s52{background:#0b4265;border:1px solid rgba(255,255,255,.16);border-radius:10px;padding:28px 26px;display:flex;flex-direction:column;gap:14px}
.s53{font:500 19px/1.3 Jost,sans-serif;color:#fff;margin:0}
.s54{font:400 14.5px/1.65 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.8);margin:0}
.s55{max-width:1240px;margin:clamp(40px,5vw,60px) auto 0;background:#0b4265;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:clamp(28px,3.5vw,40px);display:flex;flex-wrap:wrap;gap:24px 40px;align-items:center;justify-content:space-between}
.s56{min-width:0}
.s57{font:500 clamp(21px,2.2vw,26px)/1.3 Jost,sans-serif;color:#fff;margin-bottom:8px}
.s58{font:400 15px/1.6 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.78)}
.s59{flex:none;font:500 16px/1 'IBM Plex Sans',sans-serif;color:#fff;background:#F53E22;text-decoration:none;padding:20px 32px;border-radius:8px}
.s59:hover{background:#C42D14;color:#fff}
.s60{max-width:1240px;margin:0 auto;display:flex;flex-wrap:wrap;gap:clamp(32px,4.5vw,64px);align-items:flex-start}
.s61{flex:1 1 300px;max-width:470px;min-width:0}
.s62{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 15%;border-radius:10px}
.s63{flex:2 1 400px;min-width:0}
.s64{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 22px;letter-spacing:-.015em;text-wrap:pretty}
.s65{font:400 16.5px/1.72 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 16px;text-wrap:pretty}
.s66{font:400 16.5px/1.72 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 32px;text-wrap:pretty}
.s67{border-top:1px solid rgba(14,78,114,.16);padding-top:22px;display:flex;flex-wrap:wrap;gap:10px 14px}
.s68{font:500 13px/1.2 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#0E4E72;background:#eef4f8;padding:11px 15px;border-radius:5px}
.s69{background:#eef4f8;padding:clamp(54px,6vw,88px) clamp(20px,4vw,44px);scroll-margin-top:clamp(84px,13vw,140px)}
.s70{font:500 clamp(26px,2.9vw,36px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 40px;letter-spacing:-.015em;text-wrap:pretty}
.s71{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(32px,4.5vw,72px);align-items:start}
.s72{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#546f7e;margin-bottom:26px}
.s73{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:20px}
.s74{display:flex;gap:14px;align-items:flex-start}
.s75{flex:none;width:7px;height:7px;border-radius:50%;background:#F53E22;margin-top:8px}
.s76{font:500 16px/1.45 'IBM Plex Sans',sans-serif;color:#0E4E72}
.s77{font:400 14.5px/1.5 'IBM Plex Sans',sans-serif;color:#4f6f80;margin-top:2px}
.s78{min-width:0;display:flex;flex-direction:column;gap:24px}
.s79{display:block;flex:none;margin-top:1px}
.s80{font:400 14.5px/1.6 'IBM Plex Sans',sans-serif;color:#4f6f80;margin-top:3px}
.s81{margin:5px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:5px}
.s82{font:400 14.5px/1.6 'IBM Plex Sans',sans-serif;color:#4f6f80}
.s83{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 18px;letter-spacing:-.015em;text-wrap:pretty}
.s84{font:400 17px/1.7 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 44px;max-width:56ch;text-wrap:pretty}
.s85{margin:0 0 clamp(16px,2vw,24px);min-width:0}
.s86{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:8px}
.s87{font:400 14px/1.6 'IBM Plex Sans',sans-serif;color:#4f6f80;padding-top:12px}
.s88{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:clamp(16px,2vw,24px)}
.s89{margin:0;min-width:0}
.s90{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:8px}
.s91{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%;border-radius:8px}
.s92{background:#eef4f8;padding:clamp(60px,7vw,100px) clamp(20px,4vw,44px);scroll-margin-top:clamp(84px,13vw,140px)}
.s93{display:flex;gap:clamp(14px,1.8vw,22px);overflow-x:auto;padding-bottom:12px}
.s94{margin:0;flex:0 0 clamp(260px,32vw,380px)}
.s95{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
.s96{font:400 13.5px/1.6 'IBM Plex Sans',sans-serif;color:#4f6f80;padding-top:10px}
.s97{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:clamp(36px,5vw,64px);align-items:start}
.s98{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#fff;margin:0 0 20px;letter-spacing:-.015em;text-wrap:pretty}
.s99{font:400 17px/1.7 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.82);margin:0 0 36px;max-width:46ch;text-wrap:pretty}
.s100{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#FBC2B6;margin-bottom:20px}
.s101{display:flex;gap:16px;align-items:flex-start}
.s102{flex:none;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font:500 13px/1 'IBM Plex Mono',monospace;color:#fff}
.s103{font:400 15.5px/1.65 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.86)}
.s104{margin-top:36px;padding-top:26px;border-top:1px solid rgba(255,255,255,.2);display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:22px}
.s105{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.12em;color:#FBC2B6;margin-bottom:7px}
.s106{font:400 15px/1.6 'IBM Plex Sans',sans-serif;color:#fff}
.s107{color:#fff;text-decoration:none}
.s107:hover{color:#FBC2B6}
.s108{background:#fff;border-radius:12px;padding:clamp(28px,3.5vw,40px)}
.s109{font:500 clamp(21px,2.2vw,26px)/1.3 Jost,sans-serif;color:#0E4E72;margin-bottom:26px}
.s110{display:block;text-align:center;font:500 16px/1 'IBM Plex Sans',sans-serif;color:#fff;background:#F53E22;text-decoration:none;padding:21px 30px;border-radius:8px}
.s110:hover{background:#C42D14;color:#fff}
.s111{margin-top:26px;padding-top:24px;border-top:1px solid rgba(14,78,114,.16)}
.s112{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.12em;color:#546f7e;margin-bottom:8px}
.s113{font:400 15px/1.65 'IBM Plex Sans',sans-serif;color:#233c4a;font-style:normal}
.s114{background:#eef4f8;padding:clamp(60px,7vw,100px) clamp(20px,4vw,44px) 0;scroll-margin-top:clamp(84px,13vw,140px)}
.s115{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 34px;letter-spacing:-.015em;text-wrap:pretty}
.s116{max-width:1240px;margin:0 auto 0;border-radius:12px;overflow:hidden;border:1px solid rgba(14,78,114,.16)}
.s117{width:100%;height:clamp(300px,38vw,440px);border:0;display:block}
.s118{height:clamp(60px,7vw,100px)}
.s119{max-width:920px;margin:0 auto}
.s120{font:500 clamp(28px,3.2vw,40px)/1.15 Jost,sans-serif;color:#0E4E72;margin:0 0 44px;letter-spacing:-.015em;text-wrap:pretty}
.s121{border-top:1px solid rgba(14,78,114,.16)}
.s122{border-bottom:1px solid rgba(14,78,114,.16)}
.s123{cursor:pointer;list-style:none;padding:24px 0;font:500 17.5px/1.45 Jost,sans-serif;color:#0E4E72}
.s124{font:400 16px/1.75 'IBM Plex Sans',sans-serif;color:#40606f;margin:0 0 24px;max-width:64ch}
.s125{background:#093a56;padding:clamp(50px,6vw,80px) clamp(20px,4vw,44px) 32px}
.s126{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(28px,4vw,56px);padding-bottom:44px;border-bottom:1px solid rgba(255,255,255,.16)}
.s127{height:auto;width:100%;max-width:300px;display:block;margin-bottom:22px}
.s128{font:400 14px/1.7 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.72);margin:0}
.s129{font:500 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#FBC2B6;margin-bottom:16px}
.s130{font:400 14.5px/1.75 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.86);font-style:normal}
.s131{font:400 14.5px/1.75 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.86);display:flex;flex-direction:column;gap:6px}
.s132{display:flex;flex-direction:column;gap:10px}
.s133{font:400 14.5px/1.4 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.86);text-decoration:none}
.s133:hover{color:#FBC2B6}
.s134{padding-top:28px;text-align:center}
.s135{font:400 12.5px/1.7 'IBM Plex Sans',sans-serif;color:rgba(255,255,255,.62);margin:0}

/* ------------------------------------------------- navegação e acessibilidade
   Substitui a lógica React do componente. No original:
     navDesktop = largura >= 1000    navMobile  = largura <  1000
     menuAberto = largura <  1000 && menu aberto
   Estas regras vêm depois das classes de estilo para vencer por ordem de fonte. */

.nav-panel{display:none}

/* Logo do cabeçalho: horizontal no desktop, só a marca no celular.
   display:none tira a imagem oculta do fluxo e da árvore de acessibilidade,
   então nunca há dois nomes concorrentes para o mesmo link. */
.logo-mobile{display:none}

@media (max-width:999.98px){
  .nav-desktop{display:none}
  .nav-panel.is-open{display:flex}
  .logo-desktop{display:none}
  .logo-mobile{display:block}
}

@media (min-width:1000px){
  .nav-mobile{display:none}
}

/* Foco visível em toda a navegação por teclado. currentColor acompanha a cor do
   próprio elemento, então o anel aparece tanto nas seções claras quanto nas escuras. */
:focus-visible{outline:2px solid currentColor;outline-offset:2px}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
