/* cmsms stylesheet: Design modified: quarta-feira, 24 de setembro de 2025 10:37:10 */
/* =========================
   Design Tokens (CSS Vars)
   ========================= */
:root{
  /* Tipografia */
  --font-sans: "PT Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;

  /* Cores */
  --clr-text: #111;
  --clr-muted: #666;
  --clr-white: #fff;

  --clr-primary: #3397DB;
  --clr-primary-100: #E6F3FD;
  --clr-primary-200: #CFE9FB;
  --clr-primary-300: #86CAF8;

  --clr-secondary: #092971;       /* azul escuro */
  --clr-brand-ink: #21438E;       /* títulos */
  --clr-brand-link: #006978;      /* links/menu */
  --clr-accent: #F53051;          /* vermelho ação/destaque */
  --clr-salmon: #e67474;          /* salmão */
  --clr-muted-bg: #F2F2F2;        /* cinza claro */
  --clr-brand-yellow: #f7e300;    /* botão header */

  /* Layout & UI */
  --radius-lg: 30px;
  --navbar-min-h: 60px;
  --dot-size: 20px;

  /* Overlays */
  --overlay-dark: rgba(0,0,0,.5);

  /* Transições */
  --easing: cubic-bezier(.2,.7,.2,1);
  --speed-fast: .2s;
  --speed: .3s;
}

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

p{ font-size: clamp(1rem, .6vw + .9rem, 1.3rem); }

h1{
  color: var(--clr-brand-ink);
  text-align: center;
}

h1.uk-light{ color: var(--clr-white); }

section:not(.uk-light) p.subtitulo{ color: var(--clr-primary); }
p.subtitulo{ text-align: center; }

/* Banner */
.uk-titulo-banner{
  font-size: clamp(2rem, 4vw + 1rem, 4em);
  color: var(--clr-white);
}
.uk-subtitulo-banner{
  font-size: clamp(1rem, 1.5vw + .6rem, 1.5em);
  color: var(--clr-white);
}

/* Utilidades de cor */
.uk-text-white, .uk-table tr th{ color: var(--clr-white) !important; }
.uk-text-azul{ color: var(--clr-secondary); }
.uk-text-danger{ color: var(--clr-accent) !important; }

/* Fundos por tema */
.uk-background-primary, .uk-section-primary{ background-color: var(--clr-primary) !important; }
.uk-background-primary-light, .uk-section-primary-light{ background-color: var(--clr-primary-300) !important; }
.uk-background-secondary, .uk-section-secondary, .uk-card-primary{ background-color: var(--clr-secondary) !important; }
.uk-background-salmao, .uk-section-salmao{ background-color: var(--clr-salmon) !important; }
.uk-background-vermelho, .uk-section-vermelho{ background-color: var(--clr-accent) !important; }
.uk-background-muted, .uk-section-muted{ background-color: var(--clr-muted-bg); }

/* Botões */
.btLogin{ font-size: .875rem; }
.uk-button-danger{ background-color: var(--clr-accent); }
header .uk-button-default{
  border-color: var(--clr-brand-yellow);
  color: var(--clr-brand-yellow) !important;
}

/* Navbar */
.uk-navbar-nav>li>a{
  text-transform: none;
  color: var(--clr-brand-link);
  font-size: 1rem;
}
.uk-navbar-nav>li.uk-active>a{
  color: var(--clr-secondary) !important;
  font-weight: 700;
}
.uk-navbar-item, .uk-navbar-nav>li>a, .uk-navbar-toggle{
  min-height: var(--navbar-min-h) !important;
}

/* Dotnav */
.uk-dotnav>*>*{
  width: var(--dot-size);
  height: var(--dot-size);
}
.uk-dotnav>.uk-active>*{
  background-color: var(--clr-accent);
  border-color: transparent;
}

/* Listas e divisores */
.uk-list-divider>:nth-child(n+2){
  margin-top: 0;
  padding-top: 0;
}

/* Botão pill destaque */
.uk-button.uk-button-danger.uk-border-pill{
  font-size: 1.3rem;
  padding: 10px 30px;
  line-height: 30px;
  margin-top: 50px;
}

/* Camadas e overlays */
.camada1{ z-index: 1; }
.camada2{ z-index: 2; }
.camada3{ z-index: 3; }
.uk-overlay-primary{ background: var(--overlay-dark); }

/* Bordas & figuras */
.uk-border-rounded{ border-radius: var(--radius-lg); }
figure.image{
  border: 1px solid #e6e6e6;
  background: #fafafa;
}
figure.image figcaption{
  font-size: .9rem;
  text-align: center;
  padding: 5px;
}

/* Heading bullet */
.uk-heading-bullet::before{
  border-left: calc(5px + 0.1em) solid var(--clr-accent);
}

/* Blockquote */
blockquote{
  font-size: 1rem;
  font-style: normal;
  font-weight: 400;
  color: var(--clr-muted);
  text-align: justify;
}
@media (min-width: 801px){
  blockquote{ padding: 0 20%; }
}

/* Sticky */
header .uk-sticky,
section .uk-sticky{ z-index: 99 !important; }

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

/* Waves */
.uk-wave-bottom{
  position: absolute; bottom: 0; left: 0; width: 100%;
  overflow: hidden; line-height: 0;
}
.uk-wave-bottom svg{
  position: relative; display: block;
  width: calc(113% + 1.3px); height: 150px;
}
.uk-wave-bottom .shape-fill{ fill: #fff; }
.uk-wave-bottom.colegios .shape-fill{ fill: #F8F8F8; }
@media (max-width: 767px){
  .uk-wave-bottom svg{ width: calc(142% + 1.3px); height: 87px; }
}

/* Switch */
.switch{ display: inline-block; height: 15px; position: relative; width: 45px; margin-left: 20px; }
.switch input{ display:none; }
.slider{
  background-color: #E2E8F7; position: absolute; inset: 0;
  cursor: pointer; transition: background-color var(--speed) var(--easing);
}
.slider:before{
  content:""; position: absolute; bottom: -5px; left: -5px;
  width: 26px; height: 26px; background-color: #8B9ABC; border-radius: 50%;
  transition: transform var(--speed) var(--easing), background-color var(--speed) var(--easing);
}
input:checked + .slider{ background-color: #59AAD3; }
input:checked + .slider:before{ background-color: var(--clr-secondary); transform: translateX(26px); }
.slider.round{ border-radius: 24px; }

/* Offcanvas claro (variação custom) */
.uk-offcanvas-bar-light{
  position: absolute; top: 0; bottom: 0; left: -270px;
  box-sizing: border-box; width: 270px; padding: 20px;
  background: #f8f8f8; overflow-y: auto; -webkit-overflow-scrolling: touch;
}
.uk-offcanvas-bar-animation{ transition: left var(--speed) var(--easing); }
@media (min-width: 960px){
  .uk-offcanvas-bar-light{ left: -350px; width: 350px; padding: 40px; }
}
.uk-offcanvas-flip .uk-offcanvas-bar-light{ left: auto; right: -270px; }
.uk-offcanvas-flip .uk-offcanvas-bar-animation{ transition-property: right; }
.uk-offcanvas-flip .uk-open > .uk-offcanvas-bar-light{ left: auto; right: 0; }
@media (min-width: 960px){
  .uk-offcanvas-flip .uk-offcanvas-bar-light{ right: -350px; }
}
.uk-offcanvas-flip .uk-offcanvas-reveal .uk-offcanvas-bar-light{ left: auto; right: 0; }
.uk-offcanvas-reveal .uk-offcanvas-bar-light{ left: 0; }
.uk-open > .uk-offcanvas-bar-light{ left: 0; }

/* Acessibilidade de movimento reduzido */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }
}

/* =========================
   Responsividade do banner
   ========================= */
@media (min-width: 1201px){
  .uk-heading-banner{ font-size: 3.5rem; }
  .uk-lead-banner{ font-size: 1.8rem; }
  .uk-negative-margin-top{ margin-top: -200px !important; }
  #depoimentos{ min-height: 600px; }
}

/* 800–1200px */
@media (min-width: 800px) and (max-width: 1200px){
  .uk-heading-banner{ font-size: 2.7rem; }
  .uk-lead-banner{ font-size: 1.6rem; }
  .uk-img-banner{ display: none; }
}

/* 651–799px */
@media (min-width: 651px) and (max-width: 799px){
  .uk-heading-banner{ font-size: 2.7rem; }
  .uk-lead-banner{ font-size: 1.6rem; }
  .uk-img-banner{ width: 80% !important; }
}

/* <=650px */
@media (max-width: 650px){
  .uk-heading-banner{ font-size: 2rem; }
  .uk-lead-banner{ font-size: 1.2rem; }
}
