/* cmsms stylesheet: Design modified: quinta-feira, 4 de setembro de 2025 18:53:02 */
/* ===============  Design tokens  =============== */
:root{
  /* Tipografia */
  --font-sans: 'PT Sans', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;

  /* Cores básicas */
  --white: #fff;
  --black: #080808;
  --text: #222;
  --muted-100: #f2f2f2;
  --muted-200: #fafafa;
  --gray-300: #e6e6e6;
  --gray-600: #666;
  --gray-700: #555;

  /* Marca / tema (pega do CMSMS se existir) */
  --brand: #273686;

  /* Paleta do layout */
  --blue-400: #5eabd1;
  --blue-500: #2550a6;
  --blue-600: #273686;

  --red-600: #d53d4a;
  --red-700: #bb3535;

  --accent-1: #F79F61;

  /* Gradientes (cores) */
  --grad-azul-from: #274d93;
  --grad-azul-to:   #810cb5;

  --grad-laranja-from: #ff5f00;
  --grad-laranja-mid:  #ff9600;
  --grad-laranja-to:   #ff5f00;

  --grad-roxo-from: #4d0539;
  --grad-roxo-mid:  #730128;
  --grad-roxo-to:   #b50c21;

  /* Z-index */
  --z-1: 1;
  --z-2: 2;
  --z-3: 3;
  --z-section: 99;
  --z-header: 99999999;

  /* Tamanhos fluidos (clamp = min, preferência, max) */
  --fs-heading-banner: clamp(2rem, 3.2vw + 1rem, 3.5rem);
  --fs-lead-banner:    clamp(1.2rem, 1.2vw + 1rem, 1.8rem);
  --fs-h2:             clamp(1.75rem, 1.4vw + 1rem, 2.5rem);
}

/* ===============  Base & reset leve  =============== */
html, body, p, h1, h2, h3, h4, h5, h6,
.uk-navbar-nav > li > a{
  font-family: var(--font-sans) !important;
}

.uk-text-white, footer dt,
.uk-table tr th{ color: var(--white) !important; }

.btLogin{ font-size: .875rem; }

/* Títulos de banner com tamanhos fluidos */
.uk-titulo-banner{
  font-size: 4em; /* fallback */
  font-size: var(--fs-heading-banner);
  color: var(--white) !important;
}
.uk-subtitulo-banner{
  font-size: 1.5em; /* fallback */
  font-size: var(--fs-lead-banner);
  color: var(--white) !important;
}

/* ===============  Cores utilitárias  =============== */
.uk-text-azul{ color: var(--blue-400); }

.uk-background-azul,
.uk-table thead{ background-color: var(--blue-600); }

.uk-background-azul-claro{ background-color: var(--blue-500); }

.uk-background-azul-degrade{
  background: linear-gradient(69deg, var(--grad-azul-from) 25%, var(--grad-azul-to) 100%);
}

.uk-background-laranja-degrade{
  background: linear-gradient(65deg,
    var(--grad-laranja-from) 0%,
    var(--grad-laranja-mid) 35%,
    var(--grad-laranja-to) 100%);
}

.uk-background-roxo-degrade{
  background: linear-gradient(69deg,
    var(--grad-roxo-from) 0%,
    var(--grad-roxo-mid) 35%,
    var(--grad-roxo-to) 100%);
}

.uk-background-muted,.uk-section-muted{ background-color: var(--muted-100); }
.uk-background-vermelho,.uk-section-vermelho{ background-color: var(--red-600); }

/* ===============  Componentes  =============== */
/* Botão primário do UIkit usando a cor do tema */
.uk-button-primary{ background-color: var(--brand); }

/* Navbar */
.uk-navbar-nav > li > a{
  text-transform: none;
  color: var(--text);
  font-size: 1rem;
}
.uk-navbar-item, .uk-navbar-nav > li > a, .uk-navbar-toggle{
  min-height: 60px !important;
}

/* Dropdown (menu) */
.uk-dropdown{
  background: var(--red-600);
  padding: 0;
  z-index: 9999 !important;
}
.uk-dropdown::before{
  content: "";
  position: absolute;
  width: 0; height: 0;
  border-style: solid;
  border-width: 0 10px 10px 10px;
  border-color: transparent transparent var(--red-600) transparent;
  top: -0.5em; left: 10px;
}
.uk-dropdown.submenu::before{
  border-width: 10px 10px 10px 0;
  border-color: transparent var(--red-600) transparent transparent;
  top: .8em; left: -.5em;
}

.uk-dropdown li a{
  padding: 10px 25px 10px 22px;
  color: var(--white);
  border-bottom: 1px solid var(--red-700);
  transition: padding .2s linear;
}
.uk-dropdown li:last-child a{ border: 0; }
.uk-dropdown li:hover > a{
  padding-left: 28px;
  padding-right: 19px;
  color: var(--white);
}
.uk-dropdown li.uk-active > a{
  color: var(--white);
  font-weight: 700;
}

/* Camadas utilitárias */
.camada1{ z-index: var(--z-1); }
.camada2{ z-index: var(--z-2); }
.camada3{ z-index: var(--z-3); }

/* Overlays */
.uk-overlay-primary{ background: rgba(0,0,0,.5); }

/* ===============  Tipografia de seções  =============== */
h1.uk-light{ color: rgba(255,255,255,1); }

h2{
  position: relative;
  padding: 0;
  font-weight: 300;
  font-size: 40px;                 /* fallback */
  font-size: var(--fs-h2);
  color: #054F99;
  transition: all .4s ease;
}
h2 strong{ font-weight: 600; }
h2.titulo{ text-align: center; }
h2.titulo span{
  font-weight: 300;
  word-spacing: 3px;
  line-height: 2em;
  padding-bottom: .35em;
  color: rgba(0,0,0,.5);
}
h2.titulo::before{
  position: absolute;
  left: 50%; bottom: 0;
  width: 60px; height: 1px;
  content: "";
  margin-left: -30px;
  background-color: var(--accent-1);
}

.uk-heading-bullet::before{
  border-left: calc(5px + .1em) solid var(--red-600);
}

/* Figuras / cards */
figure.image{
  border: 1px solid var(--gray-300);
  background: var(--muted-200);
}
figure.image figcaption{
  font-size: .9rem;
  text-align: center;
  padding: 5px;
}
.uk-card-dep{ border: 1px solid #4fb7cd; }
.uk-card-dep.uk-border-rounded{ border-radius: 20px; }

/* Texto corrido */
blockquote{
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  color: var(--gray-600);
  text-align: justify;
}
article p{ text-indent: 30px; }

/* Marcas / logotipo */
a.marca{ display:block; width:80px; padding:0; }
a.marca .regis{ fill: rgba(255,255,255,.4); }

/* Sticky headers */
header .uk-sticky{ z-index: var(--z-header) !important; }
section .uk-sticky{ z-index: var(--z-section) !important; }

/* ===============  Responsividade (simplificada)  =============== */
/* Como usamos clamp() nos títulos, só guardamos ajustes pontuais */
@media (max-width: 650px){
  .uk-heading-small{ color: var(--gray-700); font-size: 1.2rem; }
}
@media (min-width: 651px) and (max-width: 799px){
  .uk-img-banner{ width: 80% !important; }
  .uk-heading-small{ color: var(--gray-700); }
}
@media (min-width: 800px) and (max-width: 1200px){
  .uk-img-banner{ display: none; }
  .uk-heading-small{ color: var(--gray-700); }
}
@media (min-width: 1201px){
  .uk-heading-small{ color: var(--gray-700); }
}
