*,
html {
  font-family: "Inter", sans-serif;
  scroll-behavior: smooth;
}

body {
  background-color: white;
}

:root {
  --primary: #0CACAD;
  --secondary: #19232C;
  --container: #211F20;
  --dark: #211F20;
  --gray: #ffffff45;
  --light: #ffffff;
}

#hero {
  background: rgb(248, 248, 249);
  background: linear-gradient(90deg, rgba(248, 248, 249, 1) 70%, rgba(25, 35, 44, 1) 70%, rgba(25, 35, 44, 1) 100%);
}

#cta h3 {
  font-weight: 600;
  text-align: left;
  color: #757575;
}

#cta h3 b {
  color: var(--secondary);
}


#whatsappFloatingButton {
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 60px;
  height: 60px;
  background-color: #25d366;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  z-index: 1000;
  animation: whatsappButtonAnimation 0.5s;
}

#whatsappFloatingButton:hover {
  background-color: var(--primary);
  transition: 0.25s all;
}

#whatsappFloatingButton svg {
  width: 36px;
  fill: #fff;
}

@-webkit-keyframes whatsappButtonAnimation {
  0% {
    transform: scale3d(0, 0, 0);
    transition: transform 0.3s ease-in-out;
  }

  100% {
    transform: scale3d(1, 1, 1);
    transition: transform 0.5s cubic bezier(0.18, 0.89, 0.32, 1.28);
  }
}

h1 {
  font-size: calc(1.2rem + 1.8vw);
  font-weight: 600;
}

h2 {
  font-weight: 200;
  font-size: calc(1rem + 0.7vw);
}

h3 {
  font-size: calc(1.8rem + 1vw);
  font-weight: 700;
  color: var(--secondary);
}

h4 {
  color: var(--primary);
}

p {
  font-size: 20px;
  margin-bottom: 0;
}

footer {
  background: linear-gradient(90deg, #19232C 0%, #000000 100%);
}

footer p {
  font-weight: 200;
}

footer p a {
  color: white;
  font-weight: 500;
  text-decoration: none;
}


footer p a:hover {
  color: var(--primary);
}

.absoluted {
  position: absolute;
}

.img-shadow img {
  max-height: 430px;
  object-fit: cover;
  position: relative;
}

.prod-cards h4 {
  color: var(--secondary);
  font-weight: 600;
}

.slide p {
  font-weight: 400;
  font-size: 20px !important;
}

.pace {
  -webkit-pointer-events: none;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pace-inactive {
  display: none;
}

.pace .pace-progress {
  background: var(--primary);
  position: fixed;
  z-index: 2000;
  top: 0;
  right: 100%;
  width: 100%;
  height: .1rem;
}

.text-1st {
  color: var(--primary);
}

.text-2nd {
  color: var(--secondary);
}

.text-3rd {
  color: var(--dark);
}

.bg-1st {
  background-color: var(--primary);
}

.bg-2nd {
  background-color: var(--secondary);
}

.bg-3rd {
  background-color: var(--container);
}

.nav-link {
  font-weight: 600;
}

.btn-main {
  font-weight: 600;
  border: none;
  background-color: var(--primary);
  padding: 16px 32px;
  border-radius: 8px;
  box-shadow: 0px 8px 16px rgba(12, 172, 173, 0.25);
  transition: .35s;
}

.btn-main span {
  font-weight: 400;
  font-family: "Inter", sans-serif !important;
}

.btn-main:hover {
  background-color: var(--primary) !important;
  border: none;
  box-shadow: 0px 2px 16px var(--primary);
}

.pointer {
  color: var(--secondary);
  transition: .15s;
}

.pointer:hover {
  background-color: var(--secondary);
  color: var(--light);
  border-radius: 64px;
}

#bruno {
  background-color: #F8F8F9;
}

#vantagens {
  background-color: #F8F8F9;
}

#vantagens p {
  line-height: normal;
  color: #CCCCCC;
  font-size: 32px;
}

#vantagens p b {
  color: var(--secondary);
  text-decoration: underline;
  text-decoration-color: var(--primary);
}

#vantagens h5 {
  font-family: 'Inter', sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 100%;
  color: #FFFFFF;
}

#expertise .row div {
  grid-gap: 16px;
}

#expertise .circle {
  border-radius: 64px;
  display: inline-block;
}

#expertise h4 {
  font-size: 32px;
  text-align: left;
  line-height: normal;
}

#expertise :is(h3, h4) {
  color: var(--dark);
}

#expertise .odd img {
  border-radius: 100px 5px 5px 5px;
  width: 100%;
}

#expertise .even img {
  border-radius: 5px 5px 100px 5px;
  width: 100%;
}

#expertise .desc {
  align-self: center;
}

#hero-path {
  bottom: 24px;
  left: 5%;
}

#ir {
  width: 44px;
}

#depoimentos #commas::before {
  content: '';
  background: url(../img/commas.svg) no-repeat;
  display: inline-block;
  margin-top: 16px;
  margin-bottom: 8px;
  padding: 24px;
  border-radius: 4px;
  border: none !important;
  font-size: 0 !important;
}

figure {
  margin: 0;
  padding: 10px;
}

figure a {
  display: block;
}

mark {
  padding: 0 5px;
  background-color: #dddddd;
}

::backdrop {
  background-color: rgba(0, 0, 0, 0.5);
}

.action .video span {
  color: var(--secondary);
}

.action .video,
.uberaba {
  cursor: pointer;
  display: inline-block;
  transition: ease-in-out 200ms;
}

:is(.action .video, .uberaba):hover {
  transform: scale3d(1.05, 1.05, 1.05);
}

#videoModal p {
  right: 2%;
  top: 2%;
}

.blurBg {
  background: rgba(0, 0, 0, 0.5);
}

.closeVideo {
  background: #8080807a;
  color: white;
  border-radius: 100%;
  padding: 15%;
  font-weight: 900;
}

.prod-cards {
  text-align: left;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  padding-right: 5%;
  padding-left: 5%;
}

#avalicao .top {
  margin-top: -24px;
}

#avalicao .top span {
  background-color: white;
  border: 2px solid rgba(217, 217, 217, 0.33);
  padding: 10px 32px;
  border-radius: 64px;
}

#avalicao p {
  font-weight: 200;
  line-height: normal;
}


#avalicao :is(h4, h5) {
  color: var(--secondary);
}

.tag {
  background: rgba(25, 35, 44, 0.15);
  border-radius: 4px;
}

.border-bottom,
.border-top {
  border-color: 2px solid rgba(216, 216, 216, 0.33) !important;

}

.card {
  width: 100%;
  background-color: #fff;
  text-align: left;
  position: relative;
  height: 440px;
  box-shadow: 0px 12px 18px 0px rgb(206 206 206 / 30%);
  border: none !important;
  border-radius: 20px;
}

.btn-produto {
  font-weight: 600;
  font-size: 20px;
  color: var(--primary);
}

.courses {
  margin-top: 30px;
  margin-bottom: 60px;
}

.course-item {
  width: 33%;
  padding-right: 15px;
  padding-left: 15px;
  margin-bottom: 30px;
  float: left;
}

.course-heading {
  font-weight: 500;
  font-size: 12px;
  color: #aab2bd;
  text-transform: uppercase;
  text-align: center;
}

.course-info {
  padding: 7%;
  min-height: 140px;
}

.course-meta {
  color: #aab2bd;
  font-weight: 300;
  font-size: 25px;
  position: absolute;
  left: 7%;
  bottom: 7%;
  transition: .2s;
}

.course-meta:hover {
  transform: scale(1.1);
}

.course-duration:before {
  display: inline-block;
  content: "•";
  padding-right: 5px;
  padding-left: 5px;
}

.course-caption {
  position: absolute;
  right: 5%;
  bottom: 5%;
  font-size: 18px;
  color: #aab2bd;
}

.course-thumbnail img {
  width: 100%;
  border-radius: 20px 20px 0 0;
}

.course-thumbnail2 img {
  width: 100%;
}

.main-carousel {
  padding-left: 5%;
  padding-right: 5%;
}


#numeros {
  padding: 0;
}

#numeros .carousel-cell {
  width: 100%;
  padding: 0 5px;
}

#numeros .flickity-viewport {
  border-radius: 10px;
  transition: height 0.2s;
}

#numeros h4 {
  font-weight: 500;
  font-size: 28px;
  line-height: 109.5%;
  color: #384247;
}

#numeros h3 {
  font-family: 'Crimson Pro';
  font-style: normal;
  font-weight: 700;
  font-size: 32px;
  line-height: 109.5%;
  color: #BC9869;
  text-align: center;
}

#numeros .numero h2 {
  font-weight: 500;
  font-size: 72px;
  line-height: 100%;
  text-align: left;
  color: #000000;
}

#numeros .numero h4 {
  text-decoration: underline;
  text-decoration-color: var(--primary);
}

#l1,
#l4 {
  border-radius: 0px 100px;
}

#l2 {
  border-radius: 100px 100px 100px 0px;
}

#l3 {
  border-radius: 100px 0px;
}

.copyright .six {
  height: 18px;
}


.footer-transiction {
  background-image: url("../images/dots-footer.svg");
  background-repeat: repeat;
  background-color: var(--container);
  height: 27px;
}

.navbar-light .navbar-toggler {
  border-radius: 32px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  padding: 10px 10px;
  border: none;
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='orangered' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.social-medias,
.education {
  gap: 12px;
}

.social-medias {
  margin-top: 24px;
}

.social-medias a {
  background-color: #19232C;
  box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.25);
  border-radius: 100px;
  transition: ease-in-out 125ms;
}

.social-medias a:hover {
  background-color: var(--primary);
}

.social-medias img {
  padding: 10px;
}

.social-medias p {
  line-height: normal;
  border: 2px solid #757575;
  border-radius: 100px;
  padding: 10px;
  font-size: 16px;
}

.education {
  margin-top: 32px;
}

#vantagens .education {
  margin-top: 8px;
}

#vantagens .education p {
  color: var(--secondary);
}

#vantagens .sub {
  font-weight: 200;
  color: var(--secondary);
}

.certifications {
  cursor: pointer;
  gap: 8px;
  margin-top: 48px;
}

#slider .carousel-cell {
  width: 75%;
  padding: 0 5px;
  height: 360px;
  object-fit: cover;
}

#slider .flickity-viewport {
  border-radius: 8px;
}

#expertise .exp-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 16px;
}

#expertise p {
  font-weight: 200;
}

#expertise .exp-card {
  padding: 40px 24px;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: 0px 4px 16px rgba(25, 35, 44, 0.1);
  border-radius: 8px;
  transition: ease-in-out 200ms;
}

#expertise .exp-card:hover {
  box-shadow: 0px 12px 16px rgba(25, 35, 44, 0.15);
}


/* RESPONSIVE */
@media screen and (max-width: 1199px) {
  .course-item {
    width: 50%;
  }

  #numeros .is-fullscreen .carousel-cell {
    top: 32%;
  }
}


@media screen and (max-width: 767px) {

  .certifications {
    gap: 4px;
    margin-top: 32px;
    margin-bottom: 32px;
  }

  .closeVideo {
    width: 60px;
    height: 60px;
  }

  #videoModal p {
    bottom: 15%;
    left: 45%;
    top: unset;
    right: unset;
  }

  #slider .flickity-viewport {
    border-radius: 4px;
  }

  .absoluted {
    position: relative;
  }

  #slider .carousel-cell {
    width: 90%;
    height: 200px;
  }

  #vantagens .education {
    margin-top: 22px;
  }

  .btn-main span {
    font-size: 16px;
  }

  #expertise .exp-row {
    grid-template-columns: repeat(1, 1fr) !important;
  }

  .circle img {
    height: 32px;
  }

  #cta button {
    width: 100%;
  }

  #depoimentos {
    margin-bottom: 160px;
  }

  #hero-path {
    width: 100%;
    left: 0;
  }

  #whatsappFloatingButton {
    width: 58px;
    height: 58px;
  }

  #whatsappFloatingButton svg {
    width: 32px;
  }

  #produtos .flickity-prev-next-button.next {
    right: -24px !important;
  }

  #produtos .flickity-prev-next-button.previous {
    left: -24px !important;
  }

  #navbar_top #logo {
    width: 75%;
  }

  #expertise .row {
    gap: 16px;
  }

  main #conceito {
    width: 100%;
  }

  .course-item {
    width: 100%;
  }

  .btn-main {
    padding: 12px 20px;
  }

  .carousel-loja {
    margin-bottom: -100px;
  }

  .desc>div {
    justify-content: center;
    margin-top: -88px;
    padding-bottom: 64px;
  }

  .desc>div h3 {
    color: var(--light);
    text-shadow: 0px 4px 20px rgba(0, 0, 0, 0.75);
  }

  .desc p {
    padding: 0 6px;
    text-align: justify;
  }

  .flickity-prev-next-button {
    top: 44% !important;
  }

  footer .logo-footer {
    height: 70px;
  }

  .card {
    height: 390px;
  }

  .navbar-brand {
    margin-right: 0;
  }

  .dots-sobre {
    margin-top: -70px;
  }

  #numeros .flickity-viewport {
    border-radius: 0px;
  }

  #numeros .is-fullscreen .carousel-cell {
    display: block;
    height: 300px;
    min-width: 150px;
    max-width: 100%;
    margin-right: 10px;
    top: 25%;
    transform: translateY(-50%);
  }

  .flickity-enabled.is-fullscreen .flickity-fullscreen-button-exit {
    margin: 3% 4% 0 0;
  }
}

@media screen and (max-width: 999px) {
  #expertise .exp-row {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media screen and (max-width: 991px) {

  #navbarNav ul span {
    font-size: 15px;
    color: var(--secondary);
  }

  #hero {
    background: linear-gradient(180deg, rgba(248, 248, 249, 1) 70%, rgba(25, 35, 44, 1) 70%, rgba(25, 35, 44, 1) 100%)
  }
}

@media screen and (max-width: 1450px) {
  .img-shadow::after {
    height: 101.5%;
    margin-top: -61%;
  }
}

@media screen and (max-width: 767px) {
  #navbarNav img {
    width: 40px;
    height: 40px;
  }

  #logo {
    width: 40%;
  }
}

@media screen and (max-width: 373px) {

  #navbarNav img,
  .video,
  .certifications {
    display: none !important;
  }

  #navbarNav ul span {
    margin: 0 !important;
  }

  .education {
    margin-bottom: 32px !important;
  }
}