@font-face {
  font-family: 'Herokid Bold Condensed';
  font-style: normal;
  font-weight: normal;
  src: local('Herokid Bold Condensed'),
    url('/site/midia/arquivos/herokid-bold-condensed.otf') format('opentype');
  font-display: swap;
}

@font-face {
  font-family: 'Herokid Bold Narrow';
  font-style: normal;
  font-weight: normal;
  src: local('Herokid Bold Narrow'),
    url('/site/midia/arquivos/herokid-bold-narrow.otf') format('opentype');
  font-display: swap;
}

@font-face {
  font-family: 'Herokid Regular Condensed';
  font-style: normal;
  font-weight: normal;
  src: local('Herokid Regular Condensed'),
    url('/site/midia/arquivos/herokid-regular-condensed.otf') format('opentype');
  font-display: swap;
}

:root {
 --color-blue: #0053EF;
 --color-red: #FF0032;
 --color-white: #FFFFFF;
 --color-gray: #353535;
}


html {box-sizing: border-box;font-family:"Nunito", sans-serif; scroll-behavior: smooth;}
*, *:before, *:after {box-sizing: inherit;}

header {
 box-shadow: 0px 2px 15px 0 #00000014;
 z-index: 999;
 position: sticky;
 top: 0;
 background-color: #0053EE;

}
.bottom-star-animated{
    position: absolute;
    bottom: -20%;
    left: -8%;
}
.spinner {
  animation: rotate 30s linear infinite;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.transparent-card{
  padding: 32px;
  align-items: center;
  flex: 1 0 0;
  align-self: stretch;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.20);
  text-wrap: nowrap;
  
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.6s ease-out;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


.transparent-card.animate {
  opacity: 1;
  transform: translateY(0);
  animation: fadeInUp 0.6s ease-out forwards;
}



.section-subtitle{
   font-family: 'Herokid Bold Condensed', sans-serif;
   color: #0053EE;
   font-size: 36px;
   font-style: normal;
   font-weight: 700;
   line-height: 100%;
   text-wrap: nowrap;
   text-transform: uppercase;
}


.transparent-card-title{
  color: #EAF3FF;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  min-width: 194px;
  text-align: center;
}
.transparent-card-text{
  color: #FFF;
  text-align: center;
  font-family: Roboto;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 38.4px */
}
.transparent-card-link{
  color: #FFF;
  text-align: center;
  font-family: Roboto;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 160%; /* 38.4px */
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
}
.transparent-card-link:hover{
  color: white;
  
}
.bg-blue-img{
  background: 
    linear-gradient(90deg, rgba(0, 35, 87, 0.00) 0%, rgba(0, 35, 87, 0.50) 100%),
    linear-gradient(270deg, rgba(0, 35, 87, 0.18) 0%, rgba(0, 35, 87, 0.90) 100%),
    url(https://www.ucs.br/site/midia/arquivos/vestibular-medicina-bg-img.png) center/cover no-repeat,
    #0053EE;
  min-height: 100vh;
    overflow: hidden;
}
.front-card{
  border-radius: 8px;
  border: 1px solid #0053E5;
  background: rgba(255, 255, 255, 0.80);
  box-shadow: 0px 4px 4px 0px rgba(0, 83, 229, 0.20);
  padding: 32px;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  flex: 1 0 0;
}
.front-card-title{
  color: #0053E5;
  font-family: 'Herokid Bold Narrow', sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.box-title{
  font-family: 'Herokid Bold Narrow', sans-serif;
  color: #0053E5;
  font-size: 26px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}
.line{
  width: 100%;
  border-top: 1px solid #D9D9D9;
}
.box-button{
  display: flex;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex: 1 0 0;
  border-radius: 8px;
  background: #0053EE;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  color: white;
  transition: .7s;
  
}
.box-button-red{
  display: flex;
  height: 51px;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex: 1 0 0;
  border-radius: 8px;
  background: #E5231E;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  color: #FFF;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  color:white;
  transition: .7s;
}
.box-button-red:hover{
  color:white;
  transform: scale(1.05);
}
.box-button:hover{
  color: white;
  transform: scale(1.05);
}
.year-title{
  color: #FFF;
  leading-trim: both;
  text-edge: cap;
  font-family: 'Herokid Regular Condensed', sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
}
a, a:hover {
 text-decoration: none;
 color: var(--color-blue);
}
.bottom-star{
  position: absolute;
  bottom: 0;
  right: 0;
}
a:hover {
 color: #0046b5;
}
.grow{
    min-height: 60vh;
}
.nav-button{
  color: #0053EE;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  display: flex;
  height: 51px;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: #FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  text-wrap: nowrap;
}

ul.navbar-nav.mr-auto {
 gap: 1rem;
}

.navbar {
  padding: 16px 24px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.navbar-brand {
 color: white;
}

.navbar-nav:hover {
 color: var(--color-red);
}


.nav-link {
 padding: 0 !important;
}

ul.navbar-nav.menu{
 align-items: center;
 font-family: 'Nunito', sans-serif;
 font-weight: 400;
 color: white;
 text-transform: uppercase;
 font-size: .85rem;
}

li.nav-item.menu {
 padding: 0 .8rem;
}

a.nav-link.menu.button {
 background-color: var(--color-red);
 color: var(--color-white);
 padding: .5rem 1.5rem;
 border-radius: 6px;
 font-size: 1rem;
 box-shadow: 0px 4px 6px rgb(0 0 0 / 0.12%);
}

a.nav-link.menu.button:hover, a.nav-link.menu.button:active {
 background-color: #249cb6;
 color: var(--color-blue);
}

a.active-item{
  color: white !important;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-transform: uppercase;
}

.collapse.navbar-collapse {
 justify-content: end;
}

button:focus {
 outline: 1px solid #cecece;
}

.breadcrumb {
 padding: 2rem 1rem;
 margin-bottom: 0;
}

section {
 //min-height: 85vh;
 padding: 7rem 0;
 background-color: #f7f7f7;
}

section.min {
 padding: 4rem 0;
}

section.bg-blue {
 background-color: var(--color-blue);
}


h1 {
 margin: 0;
}

h1 > a.navbar-brand {
 font-size: 40px;
 font-style: normal;
 font-weight: 700;
 line-height: normal;
 text-transform: uppercase;
 font-family: 'Herokid Bold Condensed', sans-serif;

 letter-spacing: 1px;
 color: white !important;
}

h2.section-title {
 font-family: 'Herokid Bold Condensed', sans-serif;
 color: #0053EE;
 font-size: 64px;
 font-style: normal;
 font-weight: 700;
 line-height: 100%;
 text-wrap: nowrap;
 text-transform: uppercase;
}

h3.section-{
color: #0053E5;
font-family: 'Bebas Neue', sans-serif;
font-size: 36px;
font-style: normal;
font-weight: 700;
line-height: normal;
}

.card .subtitle {
 font-family: 'Herokid Bold Condensed', sans-serif;
 color: #0053E5;
 font-size: 36px;
 font-style: normal;
 font-weight: 700;
 line-height: normal;
 text-align:center;
 
}

h3.subtitle.inline {
 display: inline;
}

h3.subtitle.blue.light {
 color: var(--color-blue);
 font-weight: 300;
}

h3.subtitle.gray {
 color: var(--color-gray);
 font-size: 1.3rem;
}

h3.subtitle.white {
 color: var(--color-white);
 font-weight: 800;
}

h4.subtitle {
 color: var(--color-gray);
}

p.text-base, ul.section-list, span {
 color: var(--color-gray);
 font-family: "Nunito", sans-serif;
 font-size: 1rem;
}

p.text-base.white {
 color: var(--color-white);
}

span.divisor {
 font-size: 1.4rem;
 font-weight: bold;
 padding: 0 .5rem;
}

.box{
  padding: 32px;
  border-radius: 8px;
  border: 1px solid #0053E5;
  background:#FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 83, 229, 0.20);
  gap:48px;
  display: flex;
  flex-direction: column;
}

.img-fluid.border-radius {
 border-radius: .5rem;
}
.bottom-rigth-start{
  position: absolute;
  bottom: -20%;
  left: -8%;
}
a.btn-primary, a.btn-secondary, h3.card-title, p.card-text {
 font-family: "Nunito", sans-serif;
}
.card-subtitle{
  color: #3F3F3F;
  font-family: Roboto;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 32px */
}

a.btn-primary, a.btn-secondary {
 display: flex;
 justify-content: center;
 padding: 1rem;
 border-radius: 5px;
 font-weight: 700;
 font-size: 1.2rem;
 transition: .3s;
}

a.btn-primary:hover, a.btn-secondary:hover {
 transition: .3s;
 transform: scale(1.05);
}

a.btn-primary.red {
  text-align:center;
  display: flex;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex: 1 0 0;
  border-radius: 8px;
  background: #E5231E;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  color: #FFF;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
}

a.btn-primary.red:hover {
 transition: .3s;
}

a.btn-primary.red.sm {
 font-size: .9rem;
 padding: 0.8rem 1rem;
 margin: 0 0 0 1rem;
}

a.btn-primary.blue {
 background-color: var(--color-blue);
 color: var(--color-white);
 box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

a.btn-primary.blue:hover {
 background-color: #0052d6;
}

a.btn-primary.blue.xl {
 height: 40%;
 align-items: center;
}

a.btn-primary.blue.xxl {
 padding: 5rem;
 align-items: center;
 color: var(--color-white);
 text-transform: uppercase;
 font-weight: 900;
 box-shadow: 4px 0 4px 0 #00000025;
}

a.btn-secondary.blue {
  border-radius: 8px;
  background: #FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  color: #0053EE;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  text-align:center;
} 

a.btn-secondary.blue.sm {
 padding: .5rem;
} 

a.btn-secondary.blue.lighter.md {
 height: 100%;
 align-items: center;
}

a.btn-secondary.white {
 color: var(--color-white);
 border: 1px solid var(--color-white);
 background: none;
} 

a.btn-secondary.red {
 border: 1px solid var(--color-red);
 color: var(--color-red);
 background: none;
}

.wrapper-card {
 padding: 2rem;
 margin-top: 3rem;
 border-radius: 5px;
 background-color: var(--color-white);
 border: 1px solid #0053E5;
}

.flex {
 display: flex;
}

.cards {
  display: flex;
  flex-direction: row;
  gap:24px;
  flex-wrap: wrap;
}

.card {
  border-radius:8px;
  border:1px solid #0053E5;
  background:#FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 83, 229, 0.20);
  display: flex;
  padding:32px;
  padding-right: 32px;
  padding-left: 32px;
  flex-direction: column;
  justify-content: start;
  gap:24px;
  min-width: 353px;

  margin-inline: auto;
}

.card.line.margin {
 margin-top: 3rem;
}

p.card-text {
 color: var(--color-white);
 font-weight: 500;
 font-size: 1.2rem;
}

i.bi.bi-calendar-week, i.bi.bi-journal-text, i.bi.bi-geo-alt {
 font-size: 3rem;
 color: #00b1ff;
}

.texto-btn-gabarito {
 font-size: 1.3rem;
}

hr.line-course {
 border: 2px solid var(--color-0);
 width: 5%;
 margin: 1rem auto 0;
 background-color: var(--color-0);
}

h4 {
 color: #787878;
}

.card-faq {
 background-color: #0050e1;
 color: var(--color-0);
 justify-content: center;
 display: flex;
 padding: 2rem;
 border-radius: 60px; 
 margin: 4rem 0 2rem;
}

.card-faq:hover {
 transform: scale(1.1);
}

.card-faq {
 transition: transform 0.3s;
}

.table td, .table th {
 vertical-align: middle;
}

.table-bordered {
 border: 1px solid #f7f7f7;
 padding: 0 1rem;
}

a.link-back {
 //font-size: 2rem;
 color: var(--color-red);
}

a.link-back.white, a.link.white {
 color: var(--color-white);
}

a.link.white {
 text-decoration: underline;
}

ul, li > a.link-general {
 text-decoration: none !important;
}

#accordion {
 transition: .2s;
 cursor: pointer;
}

#accordion p {
 font-size: 1rem;
 font-family: 'Nunito';
 padding: 1rem;
 margin-bottom: 0;
 color: var(--color-gray);
}

#accordion a {
 font-weight: bold;
}

.card-header.accordion {
 background-color: transparent;
 color: 3F3F3F;
 display: grid;
 grid-template-columns: 34fr 1fr;
 gap: 1rem;
 padding: 1.5rem;
border-bottom: 1px solid rgba(0, 83, 238, 0.50);
}

.card-title.accordion {
 font-size: 1.2rem;
 font-family: 'Nunito';
 font-weight: 500;
 margin: 0;
}

.card-body.accordion {
 background-color: #fff;
 padding: 0 1.25rem;
}

.card-body ul, ol {
 font-size: 1rem;
 font-family: 'Nunito';
 padding: 1.5rem;
 margin-bottom: 0;
 color: #616161;
 padding-left: 3rem;
}

.accordion .card-header.accordion:after {
  font-family: 'Font Awesome 5 Free';
  content: "\f077";
  color: var(--color-0);
  font-weight: bold;
  float: right;
  margin-right: 17px;
}

.accordion .card-header.collapsed:after {
  content: "\f078"; 
}

.card-header.accordion:last-child {
 border-radius: 0 0 5px 5px !important;
}

.box-faixa {
 background-color: #0053ef;
 padding: 1rem;
 font-size: 16px;
 text-align: center; 
 margin-top: 35px;
 margin-bottom: 30px;
 border-radius: 4px;
}

.box-faixa:hover {
 transition: .3s;
 transform: scale(1.03);
}

span.faixa {
 font-family: "Nunito";
 color: var(--color-white);
 font-size: 1.2rem;
}

.box-resultado{
  background-color: #f8f8f8;
  padding: 2rem 1rem;
  border-radius: 4px;
}
.navbar-light .navbar-nav .nav-link{
  color: white !important;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 900;
  line-height: normal;
  text-transform: uppercase;

}
.nav-link{
    border-bottom: 1px solid #0000;
  width: fit-content;
}
.nav-link.menu:hover {
    border-bottom: 1px solid white;
}

.tiny-paragraph{
  color: #2B2B2B;
  font-family: Roboto;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
  margin: 0px !important;
}
.btn-edital{
  color: #FFF;
  font-family: Roboto;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  display: flex;
  padding: 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: #0053EE;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  text-align: center;
  text-wrap:nowrap;
  z-index: 10;
  transition: .7s;
}

.btn-edital:hover{
  color: #FFF;
  transform: scale(1.1);
}
/*====================== utils ================ */
.flex-col{
  display: flex;
  flex-direction: column;
}
.gap-8{
  gap:24px;
}
.gap-48{
  gap:48px;
}
.gap-24{
  gap:24px;
}
.gap-40{
  gap:40px;
}
.mb-74{
  margin-bottom:74px;
}
.mb-56{
  margin-bottom:56px;
}

.mt-32 {
 margin-top: 2rem;
}

.leading-28 {
 line-height: 1.75rem;
}

.flex{
  display:flex;
}
.space-between{
  justify-content: space-between;
}
.items-center{
  align-items:center;
}
.justify-center{
  justify-content: center;
}
.relative{
  position:relative;
}
.mb-40{
  margin-bottom:40px;
}
.wrap{
    flex-wrap: wrap;
}
.max-w-500{
  max-width: 500px;
}
.min-h-full {
 min-height: 100%;
}
.flex-1{
  flex:1
}
.z-1{
  z-index: 1;
}
.opacity-50{
    opacity: 50%;
}
.dt-p-0{
  padding: 0px;
}

/*====================== tablet ================ */
@media (min-width: 992px) and (max-width: 1199px) {
 h1 > a.navbar-brand, .year-title {
  font-size: 1.6rem;
 }

 .navbar-light .navbar-nav .nav-link {
  padding: 0;
 }

 a.nav-link.menu.button {
  padding: 0.5rem 1rem;
 }

 .navbar-nav.menu {
  align-items: unset !important;
 }

 li.nav-item.menu {
  padding: .5rem 0;
 }
}

/*====================== celular ================ */
@media (max-width: 991px) {

 h1 > a.navbar-brand {
  font-size: 24px;
 }

 ul.navbar-nav.menu {
  align-items: unset;
 }

 li.nav-item.menu, a.nav-item.menu:active {
  padding: .5rem 0;
 }

 a.btn-primary.red.sm {
  margin: 1rem 0 0 0;
 }

 span.divisor {
  visibility: hidden;
 }

 h2.section-title {
  font-size: 40px;
 }

 h3.subtitle.inline {
  display: block;
  padding: 0 3rem;
 }
 ul.navbar-nav.menu {
  align-items: unset;
 }

 li.nav-item.menu, a.nav-item.menu:active {
  padding: .5rem 0;
 }

 a.btn-primary.red.sm {
  margin: 1rem 0 0 0;
 }

 .row.cards, .row.buttons{
   flex-direction: column;
 }

 .full {
  max-width: 100%;
 }
 .year-title {
  font-size: 2rem;
 }
 
 
 .sm-none{
   display: none;
 }
 .sm-p-32{
   padding: 32px;
 }
 .sm-flex-col{
   flex-direction: column;
 }
 
 .bottom-star-animated{
   bottom: -7%;
   left: -39%;
 }
 
}

