/* Gestão de TI — menu do topo por frentes (Serviços de TI, Blindagem Digital e
   Investigação Digital) e faixa das frentes no rodapé. Carregado em todas as páginas. */

/* ---------- abas com painel (details) ---------- */
.gti-nav{overflow:visible !important}
.gti-fd{position:static;display:flex;min-width:0}
.gti-fd > summary{list-style:none;flex:1;min-width:0}
.gti-fd > summary::-webkit-details-marker{display:none}
.gti-fd > summary::marker{content:""}
.gti-fd[open] > summary{background:rgba(255,107,26,0.14) !important}
.gti-fdchev{transition:transform .2s}
.gti-fd[open] .gti-fdchev{transform:rotate(180deg)}

/* painel: mesmo visual do painel original de Serviços */
.gti-fp{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:10;border-radius:22px;background:#0C0E17;border:1px solid rgba(255,255,255,0.1);box-shadow:0 40px 120px rgba(0,0,0,0.6);padding:22px;animation:gti-in-up .25s both;text-align:left}
.gti-fp-serv{display:flex;flex-direction:column;gap:10px}
.gti-fp-side{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);gap:18px}
.gti-fgrid{display:grid;gap:8px;min-width:0}
.gti-fgrid4{grid-template-columns:repeat(4,minmax(0,1fr))}
.gti-fgrid3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gti-fside{display:flex;flex-direction:column;gap:10px;min-width:0}
.gti-fcta{text-decoration:none;min-height:100%;box-sizing:border-box}
.gti-fside .gti-fcta{min-height:0}
.gti-fcta:hover{border-color:rgba(255,255,255,0.35) !important}
/* Blindagem: chamada em faixa horizontal abaixo dos cards (sem sobras de altura) */
.gti-frow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.gti-frow > .gti-fcta{grid-column:span 2}
.gti-fcta-row{display:grid !important;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;row-gap:6px !important;align-items:center;padding:18px 22px !important}
.gti-fcta-row > *{grid-column:1}
.gti-fcta-row > :last-child{grid-column:2;grid-row:1 / span 3;margin-top:0 !important;padding:0 26px;white-space:nowrap}
.gti-fcta-row > :nth-child(2){font-size:18px !important}

/* cards: cada serviço com a sua cor (número, borda e itens ao passar o mouse) */
.gti-fp .gti-fcard{position:relative;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s}
.gti-fnum{background:color-mix(in srgb,var(--c) 15%,transparent);color:var(--c);border:1px solid color-mix(in srgb,var(--c) 35%,transparent);transition:background .2s,color .2s}
.gti-fp .gti-fcard:hover,.gti-fp .gti-fcard:focus-visible,.gti-fp .gti-fcard[aria-current="page"]{background:color-mix(in srgb,var(--c) 9%,rgba(12,14,23,0.6)) !important;border-color:color-mix(in srgb,var(--c) 55%,transparent) !important;box-shadow:inset 3px 0 0 var(--c),0 10px 30px color-mix(in srgb,var(--c) 12%,transparent)}
.gti-fp .gti-fcard:hover .gti-fnum,.gti-fp .gti-fcard[aria-current="page"] .gti-fnum{background:var(--c);color:#0B0B12}
.gti-fchip{transition:border-color .2s,color .2s}
.gti-fp .gti-fcard:hover .gti-fchip,.gti-fp .gti-fcard[aria-current="page"] .gti-fchip{border-color:color-mix(in srgb,var(--c) 35%,transparent) !important;color:#E4E5EC !important}
.gti-fp .gti-fcard[aria-current="page"]::after{content:"";position:absolute;top:14px;right:14px;width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c)}

/* ---------- 7 abas no topo ---------- */
/* cada aba com a largura do seu texto; a sobra é dividida igualmente */
@media (min-width: 1240px){
  .gti-nav{grid-template-columns:repeat(7,auto) !important}
  .gti-nav .gti-tab{padding:10px 14px !important;gap:10px !important}
}
@media (min-width: 1440px){
  .gti-nav .gti-tab{padding:10px 12px !important;gap:9px !important}
  .gti-nav .gti-ti{width:32px !important;height:32px !important}
}
@media (min-width: 1240px) and (max-width: 1439px){
  .gti-nav .gti-ti{display:none !important}
}
/* painel "Quem somos" (original) alinhado à sua aba no novo menu */
@media (min-width: 1240px){ #quem{left:calc(9% + 4px) !important} }
@media (min-width: 1000px) and (max-width: 1239px){ #quem{left:calc(25% + 4px) !important} }
@media (min-width: 761px) and (max-width: 999px){ #quem{left:auto !important;right:0 !important} }
/* notebooks menores: 4 + 3 abas */
@media (min-width: 1000px) and (max-width: 1239px){
  .gti-nav{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
  .gti-nav > :nth-child(5){border-left:0 !important}
  .gti-nav > :nth-child(n+5),.gti-nav > :nth-child(n+5) > summary{border-top:1px solid rgba(255,255,255,0.06)}
  .gti-nav > :nth-child(5) > summary{border-left:0 !important}
  .gti-nav > :last-child{grid-column:span 2}
}
/* tablets e celulares: Home, Quem somos, Direito e Publicações em 2 colunas;
   Serviços de TI, Blindagem Digital e Investigação Digital em linhas inteiras, com o painel logo abaixo */
@media (max-width: 999px){
  .gti-nav{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .gti-nav > .gti-tab.gti-tab:nth-child(n),.gti-nav > .gti-fd{border-left:0 !important;border-top:1px solid rgba(255,255,255,0.06) !important}
  .gti-nav > .gti-tab.gti-tab:nth-child(2),.gti-nav > .gti-tab.gti-tab:nth-child(7){border-left:1px solid rgba(255,255,255,0.06) !important}
  .gti-nav > .gti-tab.gti-tab:nth-child(1),.gti-nav > .gti-tab.gti-tab:nth-child(2){border-top:0 !important}
  .gti-nav > :nth-child(6){order:1}
  .gti-nav > :nth-child(7){order:2}
  .gti-fd{order:5;grid-column:1 / -1;flex-direction:column;position:relative}
  .gti-fd > summary.gti-tab{flex-direction:row !important;justify-content:flex-start !important;text-align:left !important;padding:12px 16px !important;min-height:60px !important;border-left:0 !important}
  .gti-fd > summary.gti-tab > span:last-of-type{align-items:flex-start !important}
  .gti-fd > summary.gti-tab > span:last-of-type > span:nth-child(2){display:flex !important}
  .gti-fd > summary.gti-tab > span:last-of-type > span:first-child{font-size:15px !important}
  .gti-fd > summary.gti-tab > svg{position:static !important;margin-left:auto !important}
  .gti-fp{position:static;margin:0 10px 10px;padding:12px;box-shadow:none;animation:none;border-radius:16px}
  .gti-fp-side{grid-template-columns:minmax(0,1fr)}
  .gti-fgrid4,.gti-fgrid3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gti-fcta{min-height:0}
  .gti-frow{grid-template-columns:minmax(0,1fr)}
  .gti-frow > .gti-fcta{grid-column:auto}
}
@media (max-width: 999px) and (min-width: 561px){
  .gti-fcta-row{grid-template-columns:minmax(0,1fr) auto}
}
@media (max-width: 760px){
  .gti-fgrid4,.gti-fgrid3{grid-template-columns:minmax(0,1fr)}
  .gti-fp .gti-fcard{padding:14px !important}
}
@media (max-width: 560px){
  .gti-fcta-row{grid-template-columns:minmax(0,1fr)}
  .gti-fcta-row > :last-child{grid-column:1;grid-row:auto;margin-top:8px !important;min-height:46px}
}

/* ---------- rodapé: faixa das frentes ---------- */
.gti-ftband{grid-column:1 / -1;flex:1 1 100%;min-width:0;padding-top:30px;border-top:1px solid rgba(255,255,255,0.07)}
.gti-ftbg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 44px}
.gti-ftbcol{display:flex;flex-direction:column;min-width:0}
.gti-ftbcol2{grid-column:span 2}
.gti-ftbl2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:44px}
.gti-ftband .gti-fl{white-space:normal !important;line-height:1.35}
@media (max-width: 980px){
  .gti-ftbg{grid-template-columns:minmax(0,1fr)}
  .gti-ftbcol2{grid-column:auto}
}
@media (max-width: 560px){
  .gti-ftbl2{grid-template-columns:minmax(0,1fr)}
}

/* ---------- Home › Diferenciais: os 6 cards ocupam toda a altura da coluna ao lado ---------- */
.gti-dfg{align-content:stretch !important;grid-auto-rows:1fr}
.gti-dfg > .gti-dfc{justify-content:space-between}

/* ---------- Home: faixa "Frentes de atuação" e bloco da Investigação Digital ---------- */
.gti-frw{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:20px;align-items:stretch}
.gti-frc{position:relative;overflow:hidden;border-radius:26px;padding:30px;background:radial-gradient(80% 60% at 0% 0%,color-mix(in srgb,var(--c) 10%,transparent),rgba(14,16,26,0) 70%),linear-gradient(180deg,#0E101A,#080910);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);display:flex;flex-direction:column;gap:12px;min-width:0}
.gti-frc-tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:5px 12px;border-radius:999px;background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);font-family:'Chakra Petch',sans-serif;font-size:11.5px;font-weight:600;letter-spacing:.1em;color:#F4F4F7}
.gti-frc-tag > span{width:7px;height:7px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c)}
.gti-frc-h{margin:4px 0 0;font-family:Sora,sans-serif;font-size:24px;font-weight:700;letter-spacing:-0.02em;line-height:1.2;color:#F4F4F7}
.gti-frc-p{margin:0;color:#A9ABBB;font-size:15px;line-height:1.6;max-width:62ch}
.gti-frls{margin-top:auto;padding-top:8px;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
.gti-frls2{grid-template-columns:repeat(2,minmax(0,1fr))}
.gti-frl{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,0.06);background:rgba(255,255,255,0.02);color:#F4F4F7;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s}
.gti-frl:hover,.gti-frl:focus-visible{background:color-mix(in srgb,var(--c) 9%,rgba(12,14,23,0.6));border-color:color-mix(in srgb,var(--c) 55%,transparent);box-shadow:inset 3px 0 0 var(--c);color:#F4F4F7}
.gti-frl-dot{flex:none;width:9px;height:9px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c)}
.gti-frl-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.gti-frl-n{font-weight:700;font-size:15px;line-height:1.3}
.gti-frl-s{font-size:13px;line-height:1.45;color:#8E90A2}
.gti-frl-a{flex:none;color:var(--c);opacity:.6;transition:transform .2s,opacity .2s}
.gti-frl:hover .gti-frl-a{opacity:1;transform:translateX(3px)}
.gti-frx{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px 36px;align-items:center}
.gti-frx-l{display:flex;flex-direction:column;gap:12px;min-width:0}
.gti-frx .gti-frls{margin-top:0;padding-top:0}
@media (max-width: 980px){
  .gti-frw,.gti-frx{grid-template-columns:minmax(0,1fr)}
}
@media (max-width: 640px){
  .gti-frls2{grid-template-columns:minmax(0,1fr)}
  .gti-frc{padding:22px;border-radius:20px}
  .gti-frc-h{font-size:21px}
}
