:root{--ps-v106-navy:#092e62;--ps-v106-blue:#009cd9;--ps-v106-purple:#6435c9;--ps-v106-green:#55b947;--ps-v106-ink:#17304d;--ps-v106-muted:#66758a;--ps-v106-line:#e5eaf0;--ps-v106-bg:#f7f9fc;--ps-v106-radius:18px;--ps-v106-shadow:0 16px 40px rgba(18,49,84,.10)}
body.ps-v106-menu-open{overflow:hidden}
.ps-v106-header{position:sticky;top:0;z-index:1200;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(9,46,98,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.ps-v106-header__inner{max-width:1220px;height:76px;margin:0 auto;padding:0 22px;display:flex;align-items:center;gap:24px}
.ps-v106-brand{display:flex;align-items:center;flex:0 0 auto}.ps-v106-brand img{display:block;width:auto;height:48px}
.ps-v106-desktop-nav{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;min-width:0}.ps-v106-desktop-nav>a,.ps-v106-nav-trigger{border:0;background:transparent;color:var(--ps-v106-ink);font:600 13px/1.2 Inter,Arial,sans-serif;padding:12px 10px;border-radius:10px;white-space:nowrap;cursor:pointer}.ps-v106-desktop-nav>a:hover,.ps-v106-nav-trigger:hover,.ps-v106-nav-group:focus-within>.ps-v106-nav-trigger{background:#f2f6fb;color:var(--ps-v106-navy)}
.ps-v106-nav-group{position:relative}.ps-v106-nav-trigger i{margin-left:3px}.ps-v106-nav-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:#fff;border:1px solid var(--ps-v106-line);border-radius:14px;padding:8px;box-shadow:var(--ps-v106-shadow);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.18s ease}.ps-v106-nav-group:hover .ps-v106-nav-menu,.ps-v106-nav-group:focus-within .ps-v106-nav-menu{opacity:1;visibility:visible;transform:none}.ps-v106-nav-menu a{display:block;padding:11px 12px;border-radius:9px;color:var(--ps-v106-ink);font-weight:600}.ps-v106-nav-menu a:hover{background:#f3f7fb;color:var(--ps-v106-blue)}
.ps-v106-header-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.ps-v106-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 17px;border-radius:12px;font-weight:700;line-height:1.2;border:1px solid transparent;transition:.18s ease}.ps-v106-btn:hover{transform:translateY(-1px)}.ps-v106-btn--primary{background:var(--ps-v106-navy);color:#fff!important;box-shadow:0 8px 20px rgba(9,46,98,.16)}.ps-v106-btn--primary:hover{background:#0d3d7f}.ps-v106-btn--ghost{background:#fff;color:var(--ps-v106-navy)!important;border-color:#cfd9e5}.ps-v106-btn--ghost:hover{border-color:var(--ps-v106-blue);color:var(--ps-v106-blue)!important}
.ps-v106-menu-toggle{display:none;width:44px;height:44px;border:0;background:#f2f6fb;border-radius:12px;padding:11px;cursor:pointer}.ps-v106-menu-toggle span{display:block;height:2px;background:var(--ps-v106-navy);margin:4px 0;border-radius:3px}
.ps-v106-mobile-menu{position:fixed;inset:0;z-index:1300;background:rgba(5,24,48,.48);opacity:0;visibility:hidden;transition:.2s ease}.ps-v106-mobile-menu.is-open{opacity:1;visibility:visible}.ps-v106-mobile-menu__panel{position:absolute;right:0;top:0;height:100%;width:min(88vw,390px);background:#fff;padding:20px;overflow-y:auto;transform:translateX(100%);transition:.25s ease}.ps-v106-mobile-menu.is-open .ps-v106-mobile-menu__panel{transform:none}.ps-v106-mobile-menu__top{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid var(--ps-v106-line);margin-bottom:10px}.ps-v106-mobile-menu__top strong{font-size:18px;color:var(--ps-v106-navy)}.ps-v106-mobile-menu__top button{width:42px;height:42px;border:0;border-radius:10px;background:#f3f6fa;color:var(--ps-v106-navy);font-size:18px}.ps-v106-mobile-menu__panel>a,.ps-v106-mobile-menu details>a,.ps-v106-mobile-menu summary{display:block;padding:13px 10px;border-radius:10px;color:var(--ps-v106-ink);font-weight:650}.ps-v106-mobile-menu__panel>a:hover,.ps-v106-mobile-menu details>a:hover{background:#f4f7fb}.ps-v106-mobile-menu details{border-top:1px solid #eef1f5}.ps-v106-mobile-menu summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between}.ps-v106-mobile-menu details>a{padding-left:32px;color:#53657b}.ps-v106-mobile-menu__actions{display:grid;gap:9px;margin-top:18px}
.ps-v106-footer{background:#082b5d;color:rgba(255,255,255,.78);padding:54px 0 0;margin-top:0}.ps-v106-footer__grid{display:grid;grid-template-columns:1.35fr .8fr .8fr 1fr;gap:34px}.ps-v106-footer__grid h4{color:#fff;margin:0 0 14px;font-size:14px;text-transform:uppercase;letter-spacing:.08em}.ps-v106-footer__grid a,.ps-v106-footer__grid span{display:block;color:rgba(255,255,255,.72);padding:5px 0}.ps-v106-footer__grid a:hover{color:#fff}.ps-v106-footer__brand img{height:52px;width:auto;margin-bottom:14px}.ps-v106-footer__brand p{max-width:390px;line-height:1.7;color:rgba(255,255,255,.66)}.ps-v106-footer__social{display:flex;gap:8px}.ps-v106-footer__social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.09);display:flex;align-items:center;justify-content:center;padding:0}.ps-v106-footer__social i{margin:0!important}.ps-v106-footer__bottom{margin-top:38px;border-top:1px solid rgba(255,255,255,.11);padding:18px 0;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:rgba(255,255,255,.46)}
@media(max-width:1080px){.ps-v106-desktop-nav{display:none}.ps-v106-menu-toggle{display:block}.ps-v106-header__inner{height:70px}.ps-v106-brand img{height:44px}.ps-v106-footer__grid{grid-template-columns:1.4fr 1fr 1fr}.ps-v106-footer__grid>div:last-child{grid-column:2/4}}
@media(max-width:720px){.ps-v106-header__inner{height:64px;padding:0 14px;gap:10px}.ps-v106-brand img{height:39px}.ps-v106-hide-mobile{display:none}.ps-v106-btn{min-height:42px;padding:9px 13px}.ps-v106-header-actions .ps-v106-btn--primary{font-size:0;width:44px;padding:0}.ps-v106-header-actions .ps-v106-btn--primary i{font-size:18px;margin:0!important}.ps-v106-footer{padding-top:38px}.ps-v106-footer__grid{grid-template-columns:1fr;gap:25px}.ps-v106-footer__grid>div:last-child{grid-column:auto}.ps-v106-footer__bottom{flex-direction:column;gap:4px}.ps-v106-footer__brand{text-align:center}.ps-v106-footer__brand p{margin-left:auto;margin-right:auto}.ps-v106-footer__social{justify-content:center}}
@media(prefers-reduced-motion:reduce){.ps-v106-nav-menu,.ps-v106-mobile-menu,.ps-v106-mobile-menu__panel,.ps-v106-btn{transition:none!important}}

/* PORTALP 1.0.6.2.6 — menu móvel acima do cabeçalho e dentro do viewport */
@media (max-width:1080px) {
  .ps-v106-mobile-menu {position:fixed!important;inset:0!important;width:100%!important;height:100dvh;max-width:100vw;z-index:2147482000!important;overflow:hidden;}
  .ps-v106-mobile-menu__panel {box-sizing:border-box!important;position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:min(88vw,390px)!important;max-width:100vw!important;height:100%!important;height:100dvh!important;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
  .ps-v106-mobile-menu__panel *, .ps-v106-header__inner * {box-sizing:border-box;min-width:0;}
  .ps-v106-mobile-menu__panel a,.ps-v106-mobile-menu summary {overflow-wrap:anywhere;white-space:normal;}
}
@media(max-width:420px){.ps-v106-header__inner{gap:6px!important}.ps-v106-header-actions{gap:5px!important}.ps-v106-brand{min-width:0}.ps-v106-menu-toggle{flex-shrink:0}}

/* PORTALP V1.0.6.2.7 — compactação vertical do cabeçalho SOMENTE na Home v1061.
   O seletor :has() restringe o ajuste ao layout da nova Home e sua prévia. */
@media (max-width:600px) {
  body:has(.ps-home-v1061) .ps-v106-header {
    padding:0!important;margin:0!important;min-height:0!important;height:auto!important;
  }
  body:has(.ps-home-v1061) .ps-v106-header__inner {
    box-sizing:border-box!important;height:60px!important;min-height:60px!important;
    padding:0 12px!important;margin:0 auto!important;align-items:center!important;
  }
  body:has(.ps-home-v1061) .ps-v106-brand,
  body:has(.ps-home-v1061) .ps-v106-header-actions {margin-top:0!important;margin-bottom:0!important;align-self:center!important;}
  body:has(.ps-home-v1061) .ps-v106-brand img {height:38px!important;max-height:38px!important;}
  body:has(.ps-home-v1061) .ps-v106-menu-toggle {width:44px;height:44px;}
}


/* PORTALP V1.0.6.2.8 — topo mobile enxuto, sem depender de :has().
   Classe exclusiva da Home Moderna; não afeta menus do restante do portal. */
@media screen and (max-width:600px) {
  .ps-v106-header.ps-v106-header--home-v1061 {
    box-sizing:border-box!important;
    margin:0!important; padding:0!important;
    min-height:0!important; height:54px!important;
    max-height:54px!important;
    display:block!important;
  }
  .ps-v106-header.ps-v106-header--home-v1061 > .ps-v106-header__inner {
    box-sizing:border-box!important;
    display:flex!important; flex-direction:row!important;
    align-items:center!important; justify-content:space-between!important;
    width:100%!important; max-width:100%!important;
    height:54px!important; min-height:0!important; max-height:54px!important;
    margin:0 auto!important; padding:0 12px!important;
    gap:8px!important;
  }
  .ps-v106-header--home-v1061 .ps-v106-brand,
  .ps-v106-header--home-v1061 .ps-v106-header-actions {
    display:flex!important; align-items:center!important;
    align-self:center!important; margin:0!important; padding:0!important;
    height:auto!important; min-height:0!important;
    transform:none!important; position:static!important;
  }
  .ps-v106-header--home-v1061 .ps-v106-brand img {
    display:block!important; width:auto!important; height:35px!important; max-height:35px!important;
  }
  .ps-v106-header--home-v1061 .ps-v106-menu-toggle {
    width:44px!important; height:44px!important; min-height:44px!important;
    margin:0!important;
  }
  /* A sobreposição do menu é fixa e não participa da altura do cabeçalho. */
}

/* PORTALP V1.0.6.2.11 — compensação do menu fixo legado não se aplica ao shell moderno sticky.
   A classe só existe em páginas renderizadas pelo layout público moderno. */
body.ps-body-modern-shell { padding-top:0!important; margin-top:0!important; }
