@charset "utf-8";
/* CSS Document */
body {
  font-family: 'Roboto', sans-serif;
}

/*TOPO DO SITE*/
  :root{
    --brand:#0f4c81;         /* cor principal (ajuste conforme sua identidade) */
    --brand-600:#0b3a63;
    --text:#1f2937;          /* cinza escuro para texto */
    --bg:#ffffff;            /* fundo do header */
    --muted:#6b7280;         /* cinza para estados */
    --ring:#94c0ff;          /* foco */
  }

  /* Reset mínimo do header */
  * { box-sizing:border-box; }
  body { margin:0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Inter, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif; color:var(--text); }
  a { color:inherit; text-decoration:none; }
  a:focus-visible, button:focus-visible { outline:3px solid var(--ring); outline-offset:2px; border-radius:6px; }
 
  /* Header fixo com sombra ao rolar */
  .site-header{
    position:sticky; top:0; z-index:1000;
    background:var(--bg); border-bottom:1px solid #e5e7eb;
    transition: box-shadow .2s ease;
  }
  .site-header.is-scrolled{ box-shadow:0 4px 14px rgba(0,0,0,.08); }


 .container-topo {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    height: 64px;
}

  /* LOGO */
  .brand{
    display:flex; align-items:center; gap:10px; font-weight:700; letter-spacing:.2px;
  }
  .brand img{ height:57px; width:auto; display:block; }
  .brand .text{ color:var(--brand); font-size:1.05rem; }

  /* NAV DESKTOP */
  nav[aria-label="Principal"]{ display:none; }
  .nav-list{
    display:flex; align-items:center; gap:18px;
  }
.nav-link {
    padding: 8px 10px;
    border-radius: 10px;
    font-weight: 500;
    color: #111827;
    margin-right: 8px;
}
  .nav-link:hover{ background:#f3f4f6; color: #00ab5a;}
  .nav-link[aria-current="page"], .nav-link.active {
    color: #ffffff;
    background: #00ab5a;
    border: 1px solid #01aa5a;
}

  /* BOTÃO HAMBURGER (MOBILE) */
  .menu-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:42px; height:42px; border-radius:10px; border:1px solid #e5e7eb; background:#fff;
  }
  .menu-toggle:hover{ background:#f9fafb; }
  .menu-icon{ width:22px; height:22px; position:relative; }
  .menu-icon span{
    position:absolute; left:0; right:0; height:2px; background:#111827; border-radius:1px; transition:transform .2s ease, opacity .2s ease, top .2s ease;
  }
  .menu-icon span:nth-child(1){ top:4px; }
  .menu-icon span:nth-child(2){ top:10px; }
  .menu-icon span:nth-child(3){ top:16px; }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1){ top:10px; transform:rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2){ opacity:0; }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3){ top:10px; transform:rotate(-45deg); }

  /* MENU MOBILE (dropdown) */
  .mobile-panel{
    display:none; background:#ffffff; border-bottom:1px solid #e5e7eb;
  }
  .mobile-panel.open{ display:block; }
  .mobile-list{ list-style:none; padding:8px 16px 16px; margin:0; }
  .mobile-link{
    display:block; padding:12px; border-radius:10px; font-weight:500;
  }
  .mobile-link:hover{ background:#f3f4f6; }
  .mobile-link.active, .mobile-link[aria-current="page"]{
    color:var(--brand); background:#eff6ff; border:1px solid #dbeafe;
  }

  /* BREAKPOINT: DESKTOP ≥ 992px */
  @media (min-width: 992px){
    .menu-toggle{ display:none; }
    nav[aria-label="Principal"]{ display:block;padding-top: 20px }
    .mobile-panel{ display:none !important; }
  }

  /* Prefere menos animação */
  @media (prefers-reduced-motion: reduce){
    .site-header, .menu-icon span{ transition:none; }
  }
/*TOPO DO SITE*/

.novo-bt {
    padding: 10px;
    margin-top: 10px;
    border: solid 1px #afafaf;
    border-radius: 5px;
    color: #418171;
}
.novo-bt:hover {
    color: #fff;
    background: #418171;
    text-decoration: none;
}

a, a:focus, a:visited{
    outline: 0!important;
    text-decoration: none;
	color: #418171;
}
a:hover{
	color: #fff;
    text-decoration: none;
}
hr {
    border: solid 3px #bcbcbc;
    margin-top: 20px;
    margin-bottom: 20px;
}
.fundo-geral {
	background: #f0f0f0;
	font-family: "Roboto";
}
.bg-busca {
	background: url(https://repositoriotr.suprema.edu.br/assets/layout/bg-busca.webp) no-repeat center center #fff;
    background-size: cover;
	height: 520px;
}
.bg-busca-interno {
	background: url(https://repositoriotr.suprema.edu.br/assets/layout/bg-busca.webp) no-repeat center center #fff;
    background-size: cover;
	height: 245px;
}
.logo-topo {
	padding-top: 3vh;
    margin-bottom: 3px;
    text-align: center;
}
.h1 {
	font-size: 32px;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
    text-align: center;
}
.h2 {
	font-size: 32px;
	color: #235478;
	font-weight: 400;
    text-align: center;
}
tit-interno-verde {
    color: #007771;
    border-bottom: solid 5px #b9b9b9;
    padding-bottom: 8px;
    margin-bottom: 20px;
}
.linha-verde {
    width: 100px;
    background: #3caa6e;
    height: 5px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}
.busca {
    width: 100%;
    display: block;
    font-size: 18px;
    padding: 0.7em 1em 0.6em;
    color: #0d5f5e;
    border-radius: 30px;
    background-color: #ffffff;
    text-align: center;
    margin-top: 20px;
    border: none;
    box-shadow: 0 0 8px rgb(0 0 0 / 30%);
}
.bt-busca {
    width: 50%;
    display: block;
    font-size: 18px;
    padding: 0.7em 1em 0.6em;
    color: #fff;
    border-radius: 30px;
    background-color: #418171;
    text-align: center;
    margin-top: 20px;
    border: none;
    box-shadow: 0 0 8px rgb(0 0 0 / 30%);
	margin-left: auto;
	margin-right: auto;
}
.bt-busca:hover {
    background-color: #2de392;
	transition: all .5s ease;
}
.thumb {
    background-color: #fff;
    font-size: 18px;
    color: #333;
    line-height: 20px;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0 0 4px rgb(0 0 0 / 20%);
    height: 70px;
    display: flex;
    align-items: center;
    gap: 7px;
	margin-bottom: 10px;
	border: solid 2px #fff;
}
.thumb:hover {
    border: solid 2px #418171;
	transition: all .60s ease;
}
.espacamento {
    height: 40px
}
.pontilhado {
	background: url(https://repositoriotr.suprema.edu.br/assets/layout/bg-pontilhado.webp) no-repeat center top #f0f0f0;
}
.ultimas {
    background-color: #fff;
    font-size: 16px;
    color: #333;
    line-height: 20px;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0 0 4px rgb(0 0 0 / 20%);
    height: auto;
	margin-bottom: 20px;
	border: solid 2px #fff;
}
.ultimas:hover {
    border: solid 2px #418171;
	transition: all .60s ease;
}
.titulo {
    font-size: 20px;
    color: #3b6270;
    line-height: 20px;
	font-weight: 600;
}
.categoria {
    font-size: 14px;
    color: #3c886b;
    line-height: 20px;
	font-weight: 600
}
.rodape {
    font-size: 14px;
    color: #fff;
    padding-top: 20px;
	padding-bottom: 20px;
	background: #333;
	text-align: center;
	margin-top: 40px;
}
.conteudo-geral {
    background: #fff;
    font-size: 16px;
    padding: 20px 20px 35px 20px;
    box-shadow: 0 0 4px rgb(0 0 0 / 20%);
    margin-bottom: 20px;
    border-radius: 10px;
    color: #333;
    line-height: 20px;
    width: 100%;
}
.busca-conteudo {
    width: 100%;
    display: block;
    font-size: 16px;
    padding: 0.7em 1em 0.6em;
    color: #757575;
    border-radius: 10px;
    background-color: #f0f0f0;
    margin-top: 20px;
    border: solid 2px #d8d8d8;
    font-weight: 600;
}
.onselect {
    display: block;
    width: 100%;
    border-radius: 10px;
    appearance: none;
    padding: 0.7em 1em 0.6em;
    color: #757575;
    font-size: 16px;
    background: url(https://repositoriotr.suprema.edu.br/assets/layout/arrow-select.png) no-repeat 98% 15px #f0f0f0;
    font-weight: 600;
    margin-top: 20px;
    border: solid 2px #d8d8d8;
}
.verde {
    font-size: 18px;
    color: #447d74;
    font-weight: 500;
    margin-top: 10px;
}
.hr-claro {
	border: solid 3px #dfdfdf;
    margin-top: 20px;
    margin-bottom: 20px;
}
tr:hover {
	background-color: #447d74;
	color: #fff;
	transition: all .40s ease;
}
.tit-interno {
	font-size: 24px;
	color: #333;
	font-weight: 500
}
.base-verde {
	border-left: solid 10px #447d74;
    padding-left: 10px;
}
.bt-download {
	background: #418171;
	border-radius: 5px;
	color: #fff;
	padding: 15px;
	float: left
}
.bt-download:hover {
	background-color: #2de392;
    transition: all .5s ease;
}
.tit-verde {
	color: #418171;
    font-weight: 600;
}
.fino {
	border: solid 1px #dfdfdf;
    margin-top: 25px;
    margin-bottom: 25px;
}