@import url('https://fonts.googleapis.com/css2?family=KoHo:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;1,200;1,300;1,400;1,600;1,700&display=swap');
:root {
    --cor-primaria: rgb(0, 60, 113);
    --cor-primaria-clara: rgba(0, 60, 113, 0.6);
}
body {
  font-family: 'KoHo', sans-serif;
  background-color: #f8f9fa;
  padding-top: 100px;
  font-weight: 400;
}

/* Efeitos na entrada das páginas */
 body {
    opacity: 1;
    transition-duration: 0.9s;
    transition-property: opacity;
  }

  body.fade {
    opacity: 0;
  }
  /* Crédito: https://codepen.io/t_afif/pen/gOmooGQ */
  .spin {
    opacity:1;
    position:absolute;
    left: calc(50% - 40px);
    top: 50vh;
  }
  .spin {
    width: 80px;
    height: 40px;
    --c:radial-gradient(farthest-side,var(--cor-primaria) 93%,#0000);
    background:
    var(--c) 0    0,
    var(--c) 50%  0,
    var(--c) 100% 0;
    background-size: 16px 16px;
    background-repeat: no-repeat;
    animation: barrinha1 1s linear infinite alternate;
  }
  .spin:before {
    content: "";
    position: absolute;
    width: 14px;
    height: 48px;
    background-color:var(--cor-primaria);
    left:0;
    top:1px;
    animation:
      bolinha-1 1s  linear infinite alternate,
      bolinh-2 0.5s cubic-bezier(0,200,.8,200) infinite;
  }
  @keyframes barrinha1 {
    0%      {background-position: 0  100%,50% 0   ,100% 0}
    8%,42%  {background-position: 0  0   ,50% 0   ,100% 0}
    50%     {background-position: 0  0   ,50% 100%,100% 0}
    58%,92% {background-position: 0  0   ,50% 0   ,100% 0}
    100%    {background-position: 0  0   ,50% 0   ,100% 100%}
  }
  @keyframes bolinha-1 {
    100% {left:calc(100% - 8px)}
  }
  @keyframes bolinh-2 {
    100% {top:-0.1px}
  }

/* FIM Efeito fade na entrada das páginas */


.navbar.fixed-top {
  background-color: #fff;
  border-bottom: 1px solid #e0e0e0;
}
.navbar-light .navbar-nav .nav-link {
  color: var(--cor-primaria);

}
.nav-link {
  font-weight: 600;
  padding: 0 7px;
  margin: 0 5px;
}
.nav-link:hover {
  background-color: #eee;
}
.nav-link.social {
  font-size: 1.2em;
  margin: 0;
}
.banner {
  width: calc(100% + 24px);
  margin-left: -12px;
}
.banner img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

.banner2 {
  width: calc(100% + 24px);
  margin-left: -12px;
}

.banner2 img {
  width: 100%;
  height: 538px;
  object-fit: cover;
}


.max{
  font-size: 1.8em;
}
.twitter i {color: #00aced;}
.facebook i {color: #3b5998;}
.instagram i {color: #dd4b39;}
.youtube i {color: #bb0000;}
.nav-link .social:hover {
  background: none;
  color: #666;
}
.social:hover i {
  background: none;
  color: #666;
}
.itens-cesta {
  cursor:pointer;
  display:inline-block;
  background: rgba(255, 0, 0, 0.7);
  color: #fff;
  border-radius: 50%;
  width: 22px;
  line-height: 20px;
  margin-left: 2px;
  text-align: center;
  transform: translate(-6px, -12px);
}
main {
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
    padding-top: 15px;
    padding-bottom: 25px;
}
h1,h2,h3,h4,h5,h6 {
  color: var(--cor-primaria);
  font-weight: 600;
}
a {
  text-decoration: none;
}
.row-cols-xl-auto>* {
        margin-bottom: 20px
    }

    .row-cols-xl-1>* {
        margin-bottom: 20px
    }

    .row-cols-xl-2>* {
        margin-bottom: 20px
    }

    .row-cols-xl-3>* {
        margin-bottom: 20px
    }

    .row-cols-xl-4>* {
        margin-bottom: 20px
    }

    .row-cols-xl-5>* {
        margin-bottom: 20px
    }

    .row-cols-xl-6>* {
        margin-bottom: 20px
    }

.bg-cinza {
  background-color: #f8f9fa;
}
.bg-azul {
  background-color: var(--cor-primaria);
  color: #fff;
}
.btn-azul {
  background-color: var(--cor-primaria);
  color: #fff!important;
}
.btn-azul:hover {
  background-color: var(--cor-primaria-clara);
  color: #fff!important;
}
.card .btn {
  width: 100%;
}
 h5.card-title {
   min-height: 70px;
 }
p.card-text {
  height: 150px;
  overflow: auto;
}
.img-curso {
  border: 0;
  padding: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  margin: 0;
  overflow: hidden;
}
.img-curso a {
  max-height: 220px;
  display: block;
  overflow: hidden;
}
.img-curso a img {
  width: 100%;
  max-width: 100%;
  -webkit-transition: all 0.6s linear;
  transition: all 0.6s linear;
}
.img-curso a img:hover {
  -webkit-transform: scale(1.05, 1.05);
  -ms-transform: scale(1.05, 1.05);
  transform: scale(1.05, 1.05);
}
.card-body .badge {
  line-height: 10px;
}
.card-body .badge a {
  color:var(--cor-primaria);
}
.card-body .badge a:hover {
 color: var(--cor-primaria-clara);
 text-decoration: none;
}
.footer1 h5 {color: #fff}
.footer1 a {
  color: #fff;
  text-decoration: none;
}
.footer1 a:hover {
  background-color: #eee;
  color: #333;
}
.footer1 ul {list-style-type: none;}

.footer2 a {
  color: var(--cor-primaria);
  text-decoration: none;
}
.footer2 a:hover {
  background-color: #eee;
  color: var(--cor-primaria-clara);
}
.fa.i-dir,.fab.i-dir,.fad.i-dir,.fal.i-dir,.far.i-dir,.fas.i-dir {
  margin-left: 10px;
}
.fa.i-esq,.fab.i-esq,.fad.i-esq,.fal.i-esq,.far.i-esq,.fas.i-esq {
  margin-right: 10px;
}
/* Etiquetas disponivel, egotado, fechado */
.card {position: relative;}
.status-do-curso {
  position: absolute;
  display: inline-block;
  min-width: 150px;
  text-align: left;
  text-transform: uppercase;
  font-weight: 500;
  z-index:10;
  padding: 5px 10px;
  transform: rotateZ(-90deg);
}
.disponivel {
  top: 57px;
  left: -30px;
  background-color: #198754;
  color: #fff;
}
.esgotado {
  top: 57px;
  left: 10px;
  background-color: #d8a304;
  color: #fff;
}
.fechado {
  top: 57px;
  left: 50px;
  background-color: #e92546;
  color: #fff;
}
@media (max-width: 768px) {
  .footer1 .bloco{
    width: 50%;
    margin: 0 auto;
  }
}
@media (max-width: 992px) {
  .banner {
  display: none;
}
.navbar-light .navbar-nav .nav-link {
  margin: 5px 0;
  }
  h5.card-title {
  min-height: 50px;
  }
  .nav-link.btn.btn-azul {
  background-color: transparent!important;
  color: var(--cor-primaria)!important;
  text-align: left;
  }
  .nav-link.btn.btn-azul:hover {
  background-color: #eee!important;
  }
  .footer ul {
    padding: 0;
  }
}
@media (max-width: 992px) {
  ul.navbar-nav {
    margin-left: 7px;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-collapse {
    display: block!important;
  }
}
