html { 
    scroll-behavior: smooth;
}

#menu-mobile {
    position: absolute;
    left: 18px;
}

header, #subscription, #courses-highlight, #contact-us, #unit-introduction, #infrastructure, #entry-methods, #unit-events, .med-section {
    background-color: #190c6d;
    font-family: "Josefin Sans", sans-serif;
}

#infrastructure, #unit-feedbacks, #location-section, #entry-methods, #unit-feedbacks {
    padding: 96px 0;
    background-color: white;
}

.med-section {
    position: relative;
}

.med-section img {
    width: 100%;
}

.med-section .med-buttons {
    position: absolute;
    display: flex;
    bottom: 25px;
    left: 100px;
    gap: 12px;
}

.med-section button {
    background-color: #FFCF00;
    border: none;
    border-radius: 12px;
    padding: 10px 28px;
    font-size: 24px;
    cursor: pointer;
    display: flex;
    gap: 12px;
}

.med-section button a {
    color: #120363;
}

.med-section button a:hover {
    text-decoration: none;
}

.banner-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: absolute;
    left: 40%;
    bottom: 25%;
    width: 20%;
}

.banner-buttons img {
    cursor: pointer;
}

#qrcode-unit {
    filter: none;
    width: auto;
    height: auto;
    margin: 0;
}

#location-section {
    gap: 24px;
    border-bottom: 5px solid #FFCF00;
}

.location-text {
    width: 35%;
    height: -webkit-fill-available;
    color: #120363;
    font-family: "Josefin Sans", sans-serif;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.location-text h3 {
    font-size: 32px;
    font-weight: 700;
    text-align: right;
}

.location-map {
    border: 3px solid #EA4335;
    border-radius: 8px;
}

.location-info {
    display: flex;
    align-items: center;
    justify-content: right;
    text-align: end;
    gap: 12px;
}

.location-info p {
    font-size: 24px;
    font-weight: 600;
    margin: 0;
}

.location-info span {
    font-size: 18px;
    font-style: italic;
}

.location-info i {
    color: #EA4335;
    font-size: 48px;
}

.news-events-modal {
    width: 60% !important;
    max-height: 80% !important;
}

#news-events-carousel .item {
    max-height: 400px;
    max-width: 60% !important;
    height: auto;
    width: auto;
    display: block;
    object-fit: cover;
    object-position: center center;
    border-radius: 12px;
}

.news-events-modal .news-title h4 {
    font-weight: 600;
    padding: 18px 0;
}

.news-events-modal h6 {
    font-size: 14px;
    text-align: end;
    font-style: italic;
}

.news-events-modal .news-text {
    max-height: 200px;
    overflow-y: auto;
    text-align: justify;
}

.news-events-modal .owl-carousel .owl-item img {
    max-height: 100%;
}

#infrastructure .section-title, #unit-events .section-title {
    margin-bottom: 48px;
}

#infrastructure .section-title h4, #entry-methods .section-title h4,
#entry-methods .section-title h5, #unit-feedbacks .section-title h4,
#unit-feedbacks .section-title h5 {
    color: #120363 !important;
}

.unit-feedbacks-slider.owl-carousel.owl-theme.owl-loaded.owl-drag {
    margin-left: -1px;
}

.unit-feedbacks-slider.owl-theme .owl-dots .owl-dot.active span {
    background: transparent;
    border: 6px solid #1f07b9;
    padding: 3px;
    margin: 4px;
}

.unit-feedbacks-slider.owl-theme .owl-dots .owl-dot span {
    background: transparent;
    border: 6px solid #c3c3c3;
    padding: 3px;
    margin: 4px;
}

.unit-feedbacks-slider.owl-theme .owl-nav.disabled+.owl-dots {
    margin-top: 40px;
    display: block !important;
}

.unit-feedbacks-slider .unit-feedback-card {
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, 0.808) transparent;
    height: 350px;
    overflow-y: scroll;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 40px;
    border-radius: 50px;
    background: linear-gradient(110deg, #003dff, #d8d4f0);
    position: relative;
    margin: 12px;
    font-family: "Josefin Sans", sans-serif;
    color: white;
    box-sizing: border-box;
}

.unit-feedbacks-slider .unit-feedback-card h6 {
    font-size: 24px;
    font-weight: bold;
}

.unit-feedbacks-slider .unit-feedback-card p {
    font-size: 18px;
    line-height: 38px;
    text-align: justify;
    margin: 0;
}

.unit-feedbacks-slider .unit-feedback-card span {
    font-size: 14px;
}

.unit-feedbacks-slider .unit-feedback-card i img {
    position: absolute;
    width: 82px;
    height: 82px;
    border-radius: 50%;
    object-fit: cover;
}

.unit-feedbacks-slider .unit-feedback-card i {
    background-color: #ffffff;
    width: 90px;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin-right: 20px;
    border-bottom-right-radius: 0;
}

#entry-methods .card-header {
    padding: 25px 12px;
    color: white;
    text-align: center;
    position: relative;
}

#entry-methods .card-header.enem {
    background: linear-gradient(135deg, #c60101, #e7ad19, #f6bb21);
}

#entry-methods .card-header.vestibular {
    background: linear-gradient(135deg, #f6bb21, #003dff);
}

#entry-methods .card-header.bolsas {
    background: linear-gradient(280deg, #052fa5, #af0e0e, #ff0000, #003dff);
}

#entry-methods .card-header.transferencia {
    background: linear-gradient(110deg, #003dff, #d8d4f0, #d0cbe9);
    color: #333;
}

#entry-methods .card-header.diploma {
    background: linear-gradient(135deg, #CBC5EA, #002dc0, #052aa5);
}

#entry-methods .card-icon {
    font-size: 24px;
    margin-bottom: 10px;
}

#entry-methods .card-title {
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 1px;
}

#entry-methods .card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 25px 20px;
    height: 250px;
}

#entry-methods .card-subtitle {
    font-size: 14px;
    color: #666;
    margin-bottom: 20px;
    line-height: 1.4;
    text-align: center;
}

#entry-methods .card-features {
    list-style: none;
    padding: 0;
    overflow-y: auto;
    max-height: 85px;
}

#entry-methods .card-features li {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
    font-size: 13px;
    color: #555;
    line-height: 1.3;
}

#entry-methods .check-icon {
    width: 18px;
    height: 18px;
    background: #4CAF50;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    flex-shrink: 0;
}

#entry-methods .check-icon::after {
    content: '✓';
    color: white;
    font-size: 10px;
    font-weight: bold;
}

#entry-methods .card-button {
    text-align: center;
    width: 100%;
    padding: 12px;
    background: #2c1810;
    color: white;
    border: none;
    border-radius: 25px;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
}

#entry-methods .card-button:hover {
    background: #3d2318;
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(44, 24, 16, 0.3);
}

#infrastructure img {
    width: 300px;
    height: 200px;
    border-radius: 12px 12px 0 0;
}

#infrastructure .infra-card-footer {
    padding: 12px 18px;
    border-radius: 0 0 12px 12px;
    width: 300px;
    height: 150px;
    background-color: #120363;
    color: white;
    overflow-y: auto;
}

#infrastructure .infra-card-footer h5 {
    text-align: center;
    font-weight: 600;
}

#infrastructure .infra-cards {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}

#infrastructure .infra-card {
    transition: 0.3s;
    cursor: pointer;
}

#infrastructure .infra-card:hover {
    transform: scale(1.05);
}

#unit-introduction {
    padding: 144px 5rem 5rem 48px;
    display: flex;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;
}

#unit-introduction .introduction-video {
    border-radius: 12px;
}

#unit-introduction div {
    width: 36%;
}

#unit-introduction h1, #unit-introduction p {
    margin: 0;
    color: white;
}

#unit-introduction h1 {
    font-size: 52px;
    padding: 0 0 18px 0;
}

#unit-introduction p {
    font-size: 20px;
    text-align: justify;
}

.redirect-and-language-wrapper {
    display: flex;
    gap: 40px;
}

.sub-header {
    height: 50px;
    background-color: white;
    padding: 12px 12px 12px 24px;
    display: flex;
    justify-content: space-between;
}

.sub-header i {
    font-size: 18px;
}

.sub-header i, .sub-header a {
    color: #1E1E1E;
}

.call-center, .socials, .socials a, .redirect-profs-students a {
    display: flex;
    align-items: center;
    gap: 8px;
}

.redirect-profs-students {
    display: flex;
    gap: 24px;
}

.glink img {
    border-radius: 100%;
}

.main-header {
    height: 120px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 32px 120px 32px 80px;
    position: relative;
}

#subscription {
    padding: 96px 0 0 0;
}

.section-title {
    gap: 12px;
}

.section-title h4 {
    text-transform: uppercase;
    color: white;
    font-weight: 400;
    font-size: 36px;
    margin: 0;
}

.section-title h5 {
    color: white;
    font-size: 32px;
}

#subscription p:first-of-type {
    margin-bottom: 18px;
}

#subscription h4 span:first-of-type {
    font-weight: bolder;
}

.subscription-container {
    padding: 48px 0;
    background-color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#tabs-control {
    width: fit-content;
    display: flex;
    gap: 24px;
    border-bottom: 1px inset #121212ce;
    margin-bottom: 18px;
    cursor: pointer;
    transition: 0.3s;
}

#tabs-control .tab-selected {
    border-bottom: 4px solid #ffcf00;
}

#tabs-control .item-aba span {
    font-size: 18px;
}

.subscription-filters .row {
    gap: 8px;
}

.subscription-filters .col {
    width: 180px;
    padding: 0;
}

.subscription-filters .select2-container--default .select2-selection--single {
    border: 1px solid #120363;
    border-radius: 12px;
}

.subscription-filters .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #120363;
}

.subscription-filters .select2-container--default .select2-selection--single .select2-selection__arrow b {
    border-color: #120363 transparent transparent transparent;
}

#courses-highlight, #unit-events {
    padding: 96px 0;
}

.course-type-btns {
    margin: 24px 0;
    gap: 8px;
}

.course-type-btns button {
    font-size: 14px;
    padding: 4px 28px;
    border-radius: 18px;
    background-color: transparent;
    border: 1px solid #FFCF00;
    color: #FFCF00;
    cursor: pointer;
}

.course-type-btns .selected {
    background-color: #FFCF00;
    color: #190c6d;
}

.course-card {
    width: 300px;
    border-radius: 12px;
    background-color: white;
}

.course-card .card-title {
    border-radius: 12px 12px 0 0;
    background-color: #FFCF00;
    font-size: 18px;
    padding: 18px 0;
}

.course-card .card-body {
    display: flex;
    flex-direction: column;
    height: 200px;
    overflow-y: auto;
}

.course-card .card-info {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 24px 0 0 24px;
}

.course-card .card-info i {
    color: #120363;
    margin-right: 4px;
    width: 24px;
}

.course-card .card-info span {
    color: #4D4D4D;
    font-size: 18px;
}


.course-card .card-pricing {
    margin-top: 24px;
    padding: 0 24px 24px 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    height: 168px; /* Mantém altura fixa */
    overflow-y: auto; /* Scroll vertical quando necessário */
    align-content: flex-start; /* Alinha conteúdo no topo - ESSA É A CHAVE! */
    /* Opcional: customizar scrollbar para ficar mais bonita */
    scrollbar-width: thin;
    scrollbar-color: #FFCF00 transparent;
}

.course-card .card-pricing span {
    background-color: #FFCF00;
    border-radius: 18px;
    padding: 4px 8px;
    color: #1e1e1e;
    font-size: 16px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: max-content;
    transition: 0.3s;
}

.course-card .card-pricing span:hover {
    transform: scale(1.03);
}

.course-card .card-footer {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
    padding: 18px 0;
}

.course-card .card-footer button, .course-card .card-footer a {
    font-size: 18px;
    padding: 4px 30px;
    border-radius: 18px;
    cursor: pointer;
}

.course-card .card-footer button {
    background-color: #120363;
    color: white;
}

.course-card .card-footer a {
    border: 1px solid #120363;
    background-color: transparent;
    color: #120363;
}

.course-cards-slider {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
}

#contact-us {
    padding: 96px 0 48px 0;
}

#highlights-loading {
  width: 40px;
  height: 40px;
  border: 4px solid #cce4ff;
  border-top: 4px solid #007bff;
  border-radius: 50%;
  animation: spinLoad 1s linear infinite;
  margin: 20px auto;
}

.swiper-wrapper {
    width: 100%;
}

.swiper {
    width: 100%;
    max-width: 1200px;
    height: 28em;
    margin: auto;
}

.swiper-slide {
    min-width: 200px !important;
    width: auto !important;
    transition: transform 0.3s ease !important;
    display: flex;
    justify-content: center;
    cursor: pointer;
}

.swiper-slide:active {
    cursor: grabbing;
}

.swiper-slide a {
    cursor: grab;
}

.swiper-slide a:active {
    cursor: grabbing;
}

.swiper-slide img {
    width: 100%;
    height: auto;
    border-radius: 12px;
    object-fit: cover;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

.swiper-slide .news-card {
    position: relative;
}

.swiper-slide .news-card img {
    width: 300px;
    height: 400px !important;
    height: auto;
    border-radius: 12px;
    object-fit: cover;
    border-radius: 24px 0 24px 0;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

.swiper-slide .news-card::before {
    content: '';
    position: absolute;
    bottom: 0;
    width: 300px;
    height: 120px;
    background: linear-gradient(0deg, #000000 0%, #00000083 75%, rgba(255, 255, 255, 0) 100%);
    border-radius: 0 0 24px 0;
}

.swiper-slide .news-card h5 {
    position: absolute;
    color: white;
    bottom: 0;
    text-align: center;
    padding: 0 8px;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.swiper-pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center;
    flex-wrap: nowrap !important;
    gap: 0.5rem;
    margin-top: 1rem;
}
  
  .swiper-pagination .swiper-pagination-bullet {
    background: #D6D6D6;
    width: 10px !important;
    height: 10px;
    border-radius: 50%;
    opacity: 1;
    margin: 0 !important;
    flex: 0 0 auto !important;
}
  
  .swiper-pagination .swiper-pagination-bullet-active {
    background: white;
}

.course-cards-slider .owl-theme .owl-dots, .owl-theme .owl-nav {
    margin-top: 25px !important;
}

.course-cards-slider .owl-prev, .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.course-cards-slider .owl-prev i, .owl-next i {
    color: #FFCF00;
}

.course-cards-slider .owl-prev {
    left: -40px;
}
  
.course-cards-slider .owl-next {
    right: -40px;
}

.course-cards-slider .owl-item {
    display: flex;
    justify-content: center;
}

#modalCursosEmAlta .modal-dialog {
    width: 90vw !important;
    max-width: 90vw !important;
}

#modalCursosEmAlta .modal-content {
    width: 90vw !important;
    max-height: 90vh;
    overflow-y: auto;
}

#modalCursosEmAlta .modal-title {
    width: 99%;
    text-align: center;
}

#modalCursosEmAlta .modal-body {
    padding: 1rem 2.5rem;
}

.education-card {
    width: 250px;
    background: white;
    border-radius: 15px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.education-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

.subscribe-anchor-floating {
    color: #120363;
    background: #FFCF00;
    font-size: 16px;
    border: 3px solid #FFCF00;
    border-radius: 24px 24px 24px 0;
    padding: 6px 18px 5px;
    position: fixed;
    bottom: 95px;
    right: 11px;
    z-index: 1040;
    animation: shadow-pulse 1s infinite;
    font-family: "Josefin Sans", sans-serif;
    text-transform: uppercase;
}

.subscribe-anchor-floating:hover {
    text-decoration: none;
}

.subscribe-anchor {
    position: absolute;
    top: 86%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.subscribe-anchor h4 {
    font-family: "Lato", sans-serif !important;
    font-size: 44px !important;
    font-weight: 800 !important;
    color: #FFCF00;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.151) !important;
}

.subscribe-anchor div {
    width: 0; 
    height: 0; 
    border-left: 40px solid transparent;
    border-right: 40px solid transparent;
    border-top: 40px solid #FFCF00;
    animation: jumpInfinite 2s infinite;
}

.subscribe-anchor:hover {
    text-decoration: none;
}

.upload-docs-requisited i {
    color: #ffc107;
    font-size: 2.8rem;
    display: block;
    text-align: center;
}

.upload-docs-requisited h3 {
    color: #2f824e;
    font-size: 1.4rem;
    font-weight: bold;
    text-transform: uppercase;
    display: block;
    text-align: center;
    margin-top: 12px;
}

.upload-docs-requisited h4 {
    color: #003187;
    font-size: 1.1rem;
    font-weight: bold;
    text-transform: normal;
    display: block;
    text-align: left;
    margin-top: 18px;
}

.form-upload-docs {
    margin-top: 37px;
}

.form-upload-docs .form-group {
    margin-bottom: 0;
}

.form-upload-docs .desc-files-extension {
    color: #636465;
    font-size: .7rem;
    text-transform: normal;
    display: block;
    text-align: right;
    margin-top: -4px;
}

.footer-upload-docs-requisited {
    margin-top: 30px;
}

body {
    font-family: 'Open Sans', sans-serif;
    overflow-x: hidden;
}

#media-images-subscribe .slick-prev:before,
.slick-next:before {
    color: #000;
}

#media-images-subscribe {
    width: 90%;
    margin: 0 auto;
    margin-top: 30px;
}

#media-images-subscribe img {
    height: 56px;
}

table {
    width: 100%;
}

#image-or {
    background-image: url(../../images/ou.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    max-width: 9% !important;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    background: #1853aa !important;
    border-radius: 16px;
    padding: 6px;
}

textarea {
    resize: none;
}

.select2-container {
    width: 100% !important;
    text-transform: uppercase;
    font-size: .9rem;
}

.select2-selection__rendered {
    line-height: 43px !important;
}

.select2-container .select2-selection--single {
    height: 44px !important;
}

.select2-selection__arrow {
    height: 42px !important;
}

.mestrados-doutorados-div .select2-container .select2-selection--single {
    background: #6096C7 !important;
    height: 48px !important;
}

.mestrados-doutorados-div .select2-selection__rendered {
    font-family: 'Roboto Condensed', sans-serif !important;
    color: white !important;
    font-weight: 500 !important;
    text-transform: none !important;
    font-size: 1.25rem !important;
}

.mestrados-doutorados-div input:disabled, .mestrados-doutorados-div .select2-container--disabled .select2-selection--single {
    background-color: #8B8B8B !important;
}

#filter-pos-graduation {
    display: none;
}

#filter-extension {
    display: none;
}

#filter-recognition {
    display: none;
}

header {
    /* background-image: url('../../images/bg-head.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    background-attachment: fixed; */
    background-color: #190c6d;
}

header .logo-header {
    width: 100%;
    max-width: 210px;
    height: auto;
}

#subscription-title-modal {
    width: 90%;
}

#subscription-title-modal img {
    max-width: 200px;
}

.pricing-info-modal p {
    color: red;
    width: 320px;
    text-align:justify;
    padding-top: 18px;
    font-size: 12px;
}

.subscription-selects {
    gap: 8px;
    display: flex;
    flex-direction: column;
    width: 44%;
}

.values-med {
    width: 44%;
}

.modal-body-data {
    display: flex;
    gap: 8px;
    justify-content: space-between;
    max-height: 350px;
    overflow: auto;
}

.time-until {
    background-color: #83f062;
    padding: 4px;
    border-radius: 4px;
    padding-bottom: 4px;
}

.discount-sm {
    font-size: calc(1em - 2px);
    font-style: italic;
    color: #636465;
}

.vertical-fillet-modal {
    border-radius: 10px;
    background: #007AC4;
    width: 5px;
    display: block;
    padding-top: 13px;
}

.checkbox-div {
    display: flex;
    justify-content: center;
}

.med-subscription-form input {
    background: #6096C7 !important;
    color: white !important;
}

.med-subscription-form input::placeholder {
    color: white !important;
}

.form-cols {
    flex-grow: 1;
    max-width: 100%;
    padding: 0 1rem !important;
}

.modal-footer-subscription {
    border-top: 1px solid #e9ecef;
    display: flex;
    justify-content: center;
    gap: 16px;
    padding: 1rem 0;
}

.mt-5 {
    margin-top: 5px;
}

.mt-10 {
    margin-top: 10px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-24 {
    margin-top: 24px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-96 {
    margin-top: 96px;
}

i {
    color: #fff;
}

.icon-menu {
    font-size: 22px;
    padding-top: 10px;
}

.space-between {
    display: flex;
    justify-content: space-between;
}

.space-around {
    display: flex;
    justify-content: space-around;
}

.center {
    display: flex;
    justify-content: center;
}

.end {
    display: flex;
    justify-content: flex-end;
}

.space-evenly {
    display: flex;
    justify-content: space-evenly;
}

.space-between-end {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: flex-end;
}

header button.btn {
    color: #190c6d;
    font-weight: 600;
}

.med-banner {
    display: flex;
    position: relative;
}

.vertical-fillet {
    border-radius: 10px;
    background: #007AC4;
    width: 7px;
    height: 100%;
    display: block;
    padding-top: 13px;
}

.timer-header {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.4em;
    color: #FC4D4D;
    font-weight: 700;
}

.timer-day {
    position: absolute;
    bottom: 12px;
    left: 201px;
}

.timer-hour {
    position: absolute;
    bottom: 12px;
    left: 243px;
}

.timer-minute {
    position: absolute;
    bottom: 12px;
    left: 283px;
}

.title {
    color: #003187;
    font-weight: 700;
    font-size: 2.2rem;
}

/* GRID ESCOLHA DE INSCRIÃƒâ€¡ÃƒÆ’O */

.choice-subscription {
    padding: 13px 0;
    background: #ffcf00;
    font-weight: 600;
}

.choice-subscription .col {
    padding: 0px 6px;
}

.choice-subscription button.btn.btn-primary {
    height: 44px
}

/* GRID INSCRIÃƒâ€¡ÃƒÆ’O */

.grid-form-subscription {
    font-family: "Josefin Sans", sans-serif;
    display: none;
    margin: 30px 0;
    padding: 10px 0;
}

#ctrl-btn-prova-agora {
    display: none;
}

#price-course {
    font-weight: bold;
    color: green;
}

#ctrl-btn-agendar {
    display: none;
}

#ctrl-btn-inscricao {
    display: none;
}

#regulamento-exame-bolsas {
    display: none;
}

.grid-form-subscription .embed-responsive {
    height: 210px !important;
}

#notas-enem h3 {
    color: #003187;
    font-weight: 700;
    font-size: 1.6rem;
}

.form-subscribe *:required {
    background-image: url(../../images/icons/asterisk.svg) !important;
}


.form-subscribe *:required,
.form-subscribe select {
    background-repeat: no-repeat !important;
    background-position: center right 8px !important;
    background-size: 13px 13px !important;
}

.form-subscribe select {
    background-image: url(../../images/icons/down.svg) !important;
}

select::-ms-expand {
    display: none !important;
}

select {
    appearance: none;
}

.form-subscribe .required-msg {
    background: url(../../images/icons/asterisk.svg) no-repeat center left / 13px 13px;
    padding-left: 18px;
    font-size: .8rem;
    margin-left: 13px;
    margin-top: 10px;
}

#notas-enem .form-group {
    margin-bottom: 0;
}

#notas-enem label {
    font-size: 12px;
    line-height: 0
}

label[for="gridCheckAcceptGradesEnem"] {
    font-size: 16px !important;
}

#grid-grades-enem .form-group label {
    color: #120363 !important;
}

.grid-form-subscription input,
.grid-form-subscription select {
    font-family: 'Josefin Sans', sans-serif;
    background: #fff !important;
    color: #120363 !important;
    padding-right: 40px;
    border-radius: 12px;
    border: 1px solid #120363 !important;
}

.grid-form-subscription input::placeholder {
    color: #120363 !important;
}

#details-pos-graduation-course {
    display: none;
}

#details-graduation-course button {
    font-size: .7rem;
}

#collapse-course-pos-details {
    font-size: .9rem;
}

#details-pos-graduation-course button {
    font-size: .7rem;
}

.video-home {
    padding: 0;
}

.grid-form-subscription ::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: white;
    opacity: 1;
    /* Firefox */
}

.grid-form-subscription :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: white;
}

.grid-form-subscription ::-ms-input-placeholder {
    /* Microsoft Edge */
    color: white;
}

.grid-form-subscription .col-6:first-child span {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
}

.grid-form-subscription .col-6:first-child h3 {
    font-size: 1.4rem;
    font-weight: 700;
}

.grid-dates-agendamento {
    display: none;
}

.aceite-form-inscricao {
    font-size: 1rem;
    font-family: "Josefin Sans", sans-serif;
    margin: 0 0 0 8px;
}

#contact-footer .aceite-form-inscricao {
    color: white;
}

#gridCheckAcceptFaleSubscribe {
    margin-bottom: 3px;
}

.obs-form {
    font-size: .8rem;
}

/* GRID CURSOS */

* {
    box-sizing: border-box;
}

.slick-slide {
    font-family: none;
}

.slick-slide {
    margin: 0px 20px;
}

.slick-slide img {
    width: 100%;
}

.slick-slide {
    transition: all ease-in-out .3s;
}

.regular img {
    max-width: 350px;
    height: 200px
}

.grid-courses {
    padding: 16px 10px 30px 10px;
    background-color: #190c6d;
}

.grid-courses h1 {
    padding: 15px 0;
    color: #FFBB00;
}

.grid-phrase strong {
    font-size: 2.2rem;
    padding: 30px 0;
    color: #FFBB00;
}


.grid-courses .title-curso {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: .9rem;
    text-transform: uppercase;
    color: white;
}

i.fa.fa-play {
    top: 49%;
    left: 45%;
    right: 0;
    transform: translateY(-50%);
    font-size: 3.4rem;
    opacity: 0.7;
    cursor: pointer;
    transition: all .4s ease;
    -webkit-transition: all .4s ease;
}

i.fa.fa-play:hover {
    opacity: 1;
    color: red;
    transition: all .4s ease;
    -webkit-transition: all .4s ease;
}

/* FORMAS DE PAGAMENTO */

.payments {
    padding: 20px 0;
}

.payments img {
    width: auto;
    height: 68px;
    display: block;
    margin: 0 auto;
}

.payments span {
    font-size: .8rem
}

/* CARROUSSEL COURSES GRADUATION/EXTENSION */

#grid-courses-pos-graduation {
    display: none;
}

#grid-courses-extension {
    display: none;
}

.carousel {
    margin: 0px auto 20px;
    width: 100%;
}

.carousel .carousel-item {
    text-align: center;
    overflow: visible !important;
    color: white;
}

.carousel .carousel-item:not(.main-banner) {
    position: relative;
}

.carousel .carousel-item h4 {
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1rem;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.carousel .carousel-item img {
    width: 100%;
    max-width: 100vw;
    display: inline-block;
}

.carousel .carousel-item .btn {
    border-radius: 2px;
    font-size: 10px;
    text-transform: uppercase;
    font-weight: bold;
    border: none;
    background: #ffbb00;
    padding: 6px 14px;
    color: #0070b8;
}

.carousel .carousel-item .btn:hover {
    background: #072ce4;
    color: white;
}

.carousel .carousel-item .btn i {
    font-size: 14px;
    font-weight: bold;
    margin-left: 5px;
    color: #0070b8;
}

.carousel .thumb-wrapper {
    text-align: left;
    /* background: #fff;
	box-shadow: 0px 2px 2px rgba(0,0,0,0.1);    */
}

.carousel .thumb-content {
    margin-top: 10px;
    font-size: 13px;
}

.carousel-control-prev,
.carousel-control-next {
    height: 44px;
    width: 44px;
    background: none;
    margin: auto 0;
    border-radius: 50%;
    border: 3px solid rgba(0, 0, 0, 0.8);
}

.carousel-control-prev i,
.carousel-control-next i {
    font-size: 36px;
    position: absolute;
    top: 50%;
    display: inline-block;
    margin: -19px 0 0 0;
    z-index: 5;
    left: 0;
    right: 0;
    color: rgba(0, 0, 0, 0.8);
    text-shadow: none;
    font-weight: bold;
}

.carousel-control-prev i {
    margin-left: -3px;
}

.carousel-control-next i {
    margin-right: -3px;
}

.carousel-indicators {
    bottom: -60px;
}

.carousel-indicators li,
.carousel-indicators li.active {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin: 4px;
    border: none;
}

.carousel-indicators li {
    background: #d6d6d6e0;
}

.carousel-indicators li.active {
    background: white;
}

/* GRID DIFERENCIAL */

.grid-differential {
    padding: 20px 0;
    background-color: #190c6d;
}

.grid-differential h1 {
    color: #FFBB00;
}

.grid-differential img {
    margin: 0 auto;
    max-width: 110px;
    display: block;
}

.grid-differential span {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
    color: white;
    font-size: 1rem;
    line-height: 15px;
    margin-top: 10px;
}

/* GRID FEEDBACK */
.grid-feedback {
    /* background-color: #0070B8; */
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.grid-feedback .left-content {
    background: url(../../images/quotes.png) no-repeat #c70000;
    border-bottom-right-radius: 12px;
    border-top-right-radius: 14px;
    background-size: 34%;
    background-position-x: 9%;
    padding: 20px;
    position: relative;
}


.grid-feedback h1 {
    padding: 15px 0;
    color: white;
}

.grid-feedback p {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
    color: white;
    font-size: 1rem;
    line-height: 23px;
    margin-top: 25px;
    min-height: 142px;
}

.grid-feedback p::before {
    font-family: FontAwesome;
    content: "\f10d";
    padding-right: 12px
}

.grid-feedback h2 {
    font-family: 'Roboto Condensed', sans-serif;
    text-transform: uppercase;
    font-weight: 400;
    color: white;
    font-size: 1rem;
    margin-top: 17px;
    line-height: 13px;
}

.grid-feedback h3 {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
    color: white;
    font-size: .8rem;
    margin-top: 0px;
}

.thumb-student img {
    border-radius: 100%;
    width: 70px;
    height: 70px;
}

.grid-feedback .bio {
    padding-left: 19px
}

.feedback-people {
    background: url(../../images/feedback.jpg) no-repeat;
    background-size: contain;
    background-position-x: 19%;
    margin: 20px 0;
}


.pagination-container {
    display: block;
}

.pagination {
    position: absolute;
    bottom: -2px;
    right: 22px;
    font-size: 1.5rem;
}

.pagination a {
    display: inline-block;
    padding: 0 10px;
    cursor: pointer;
}

.pagination a.disabled {
    opacity: .3;
    pointer-events: none;
    cursor: not-allowed;
}

.pagination a.current {
    background: #f3f3f3;
}

/* RODAPE */

footer {
    font-family: 'Roboto Condensed', sans-serif;
}

#contact-footer {
    margin-top: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#contact-footer .row {
    width: 70%;
}

#contact-footer input, #contact-footer textarea {
    font-size: 16px;
    border-radius: 12px;
    padding: 8px 18px;
    width: 100%;
    color: #120363;
}

#contact-footer input::placeholder, #contact-footer textarea::placeholder {
    color: #120363;
}

#contact-footer .select2-container--default .select2-selection--single {
    border: 1px solid #120363;
    border-radius: 12px;
}

#contact-footer .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #120363;
    text-transform: none;
    padding-left: 18px;
}

#contact-footer button {
    margin-top: 18px;
    font-size: 18px;
    padding: 4px 28px;
    border-radius: 18px;
    background-color: #FFCF00;
    color: #190c6d;
    border: 1px solid #FFCF00;
    cursor: pointer;
}

.copyright {
    font-family: "Josefin Sans", sans-serif;
    padding: 40px 60px 24px 60px;
}

.copyright p, .copyright span {
    font-size: 16px;
    margin: 0;
}

.copyright span {
    font-weight: bold;
}

.copyright h5 {
    font-size: 18px;
    font-weight: bold;
    border-bottom: 4px solid #FFCF00;
    width: fit-content;
    margin-bottom: 24px;
}

.copyright hr {
    border-top: 1px solid rgb(0 0 0 / 35%);
}

.copyright img {
    width: 250px;
    height: 70px;
    margin-right: 100px;
}

.copyright .socials {
    margin-top: 8px;
}

.copyright .socials i {
    color: #000;
}

/* RESPONSIVE HOME */

@media screen and (max-width:1660px) {
    .main-header {
        padding: 32px 60px;
    }
    .med-section button {
        bottom: 5%;
        left: 8%;
    }
}

@media screen and (max-width:1440px) {
    header .logo-header {
        width: 80%;
    }
    .main-header {
        padding: 32px 30px;
    }
    .section-title h4 {
		font-size: 32px;
	}
    .section-title h5 {
        font-size: 24px;
    }
    .sub-header a {
        font-size: 14px;
	}
    .course-card .card-title {
        font-size: 18px;
    }
    .course-card .card-info span {
        font-size: 16px;
    }
    .subscribe-anchor {
        top: 87%;
    }
    .subscribe-anchor h4 {
        font-size: 32px !important;
        margin-bottom: 8px !important;
    }
    .subscribe-anchor div {
        border-left: 19px solid transparent;
        border-right: 19px solid transparent;
        border-top: 19px solid #FFCF00;
    }
    #unit-introduction div {
        width: 500px;
    }
    .news-events-modal {
        max-height: 85% !important;
    }
}

@media screen and (max-width:1280px) {
    .med-section button {
        padding: 0 12px;
    }
    .med-section button a, .med-section button {
        font-size: 16px;
    }
    .section-title h4, .section-title h5 {
        text-align: center;
    }
    .swiper {
        overflow: hidden;
    }
    .swiper-slide img {
        width: 95%;
    }
    .banner-buttons {
        width: 25%;
        gap: 8px;
    }
    .banner-buttons img{
        width: inherit;
    }
}

@media screen and (max-width:1024px) {
    .contact-footer-wrapper {
        justify-content: center !important;
        gap: 12px;
    }
    .carousel .carousel-item {
        padding: 0;
    }
    .subscribe-anchor h4 {
        font-size: 24px !important;
    }
    .subscribe-anchor div {
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        border-top: 20px solid #FFCF00;
    }
    .swiper-slide img {
        width: 90%;
    }
    #unit-introduction div {
        width: 85%;
    }
    #unit-introduction h1 {
        text-align: center;
    }
    .location-text {
        width: 80%;
    }
    .location-text h3 {
        text-align: justify;
    }
}

@media screen and (max-width:783px) {
    .news-events-modal {
        height: 80% !important;
        width: 90% !important;
    }

    .med-section button {
        display: flex;
        justify-content: center;
        align-items: center;
        bottom: 12%;
    }
    
    .med-section button a, .med-section button {
        font-size: 12px;
        padding: 4px;
    }

    .main-header {
        justify-content: center;
    }

    .main-header .main-logo {
        padding-top: 12px;
    }

    .section-title h4 {
        font-size: 24px;
    }

    .section-title h5 {
        font-size: 18px;
    }

    .section-title img {
        width: 250px;
    }

    #tabs-control .item-aba span {
        font-size: 16px;
    }

    .subscription-filters .select2-container--default .select2-selection--single .select2-selection__rendered {
        font-size: 14px !important;
    }

    .subscription-filters .select2-container--default .select2-selection--single .select2-selection__arrow,
    #contact-footer .select2-container--default .select2-selection--single .select2-selection__arrow {
        right: 10px;
    }

    .sub-header {
        flex-wrap: wrap;
        height: auto !important;
        padding: 18px;
        justify-content: center;
        column-gap: 18px;
        row-gap: 8px;
    }

    .subscribe-anchor-floating {
        right: auto;
        left: 12px;
        bottom: 36px;
        font-size: 12px;
        padding: 4px 8px;
    }

    #tabs-control {
        flex-wrap: wrap;
        gap: 8px 20px;
    }

    .filters-wrapper {
        padding: 0 18px;
        flex-wrap: wrap;
    }

    .row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .slick-next {
        right: 0px !important;
        z-index: 9999 !important;
    }
    
    .slick-prev {
        left: 0px !important;
        z-index: 9999 !important;
    }
    
    header {
        background-image: none;
    }

    #image-or {
        display: none !important;
    }

    .med-banner {
        justify-content: center;
    }

    .banner-right {
        /* display: none; */
        display: flex;
        justify-content: center;
    }
    
    .gif-animation {
        display: none;
    }

    .gif-animation img {
        max-width: 100%;
    }

    .subscription-selects {
        width: 100%;
    }

    .file-btns-med {
        flex-direction: column;
    }

    .file-btns-med input, .file-btns-med span, .file-btns-med label {
        width: 100% !important;
    }

    .select2-selection__arrow b {
        left: 90% !important;
    }
    
    .values-med {
        width: 100%;
    }

    .name-input {
        padding-bottom: 8px !important;
    }

    .modal-body-data {
        flex-direction: column;
    }

    .subscription-selects {
        margin-bottom: 1em;
    }

    .checkbox-div {
        align-items: start;
    }

    .checkbox-div input {
        margin-top: 6px;
    }

    .vertical-fillet-modal {
        display: none;
    }

    .inputs-div-med {
        gap: .5rem;
    }

    .btns-access-mobile button {
        font-size: .7rem !important;
    }

    .btns-access-mobile {
        justify-content: space-between;
        margin-top: 18px;
    }

    .choice-subscription .col {
        margin-bottom: 4px !important;
        flex: 0 0 100%;
    }

    .choice-subscription .btn {
        margin-top: 10px;
    }

    .form-subscription-mobile {
        margin-top: 20px;
    }

    .form-subscription-mobile .btn {
        margin-bottom: 10px;
    }

    .modal {
        padding: 0 !important;
    }

    .grid-courses h1 {
        font-size: 2rem;
        text-align: center;
    }

    .grid-phrase strong {
        font-size: 2rem;
        text-align: center;
        padding-top: 40px !important;
    }

    .grid-differential h1 {
        font-size: 2rem;
        text-align: center;
    }

    .grid-feedback .left-content {
        border-radius: 0;
    }

    .feedback-people {
        display: none;
    }

    footer {
        background-image: none;
        padding-bottom: 0 !important;
    }

    footer .btn {
        margin-top: 10px;
    }

    .conteudo {
        padding: 30px 10px 14px 10px;
        text-align: justify;
    }

    .conteudo ul li {
        display: block !important;
        width: 100%
    }

    .conteudo ul li span {
        display: block !important;
    }

    .topo-secao {
        display: none;
    }

    .bt-ingresso-2 {
        text-align: center !important;
        display: block !important;
        margin-top: 10px;
    }

    .hc-offcanvas-nav li.item-menu>.nav-item-wrapper .nav-item-link::before {
        content: "";
        display: none !important;
    }

    .hc-offcanvas-nav li.store>.nav-item-wrapper .nav-item-link::before {
        content: "";
        display: none !important;
    }

    .banner-buttons {
        width: 40%;
        left: 35%;
        bottom: 22%;
        gap: 4px;
    }

    .contact-footer-info {
        justify-content: center;
        gap: 12px;
    }
}

@media screen and (max-width:576px) {
    label[for="gridCheckAcceptGradesEnem"], label[for="gridCheckAcceptSubscribe"] {
        font-size: 12px !important;
    }
    .pricing-info-modal p {
        width: 300px;
    }
    #grid-grades-enem .form-group {
        width: 83vw !important;
    }
    #contact-footer label {
        white-space: normal !important;
        padding-right: 5rem;
    }
    #contact-footer #gridCheckAcceptFaleSubscribe {
        width: 75%;
    }
    #btn-enviar-contact-footer {
        margin-top: 32px;
    }
    .section-title {
        padding: 0 18px;
    }
    .copyright {
        padding: 24px 12px;
    }
    .copyright img {
        margin: 24px auto;
        width: 120px;
        height: 35px;
    }
    .contact-footer-wrapper {
        flex-direction: column;
    }
    #menu-mobile {
        left: 4px;
    }
    .main-header {
        justify-content: end;
        padding: 12px 8px;
    }
    #modal-subscription-wrapper .container {
        padding: 0 !important;
    }
    #modalCursosEmAltaContent {
        padding: 1rem 0 !important;
    }
    .form-subscription-mobile .col {
        padding: 4px !important;
    }
    #regulamento-exame-bolsas {
        margin: 0 0 12px !important;
    }
    #modalCursosEmAlta .modal-dialog {
        width: 98vw !important;
    }
    .subscribe-anchor h4 {
        font-size: 14px !important;
        margin-bottom: 8px !important;
    }
    .redirect-and-language-wrapper {
        gap: 8px;
        flex-wrap: wrap;
    }
    .gtranslate_wrapper {
        width: 100%;
        display: flex;
        justify-content: center;
    }
    .redirect-profs-students a {
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
    }
    .sub-header {
        row-gap: 18px !important;
    }
    .call-center {
        padding: 12px 0 0 0;
    }
    #unit-introduction {
        padding-left: 8px;
        padding-right: 8px;
    }
    #unit-introduction h1 {
        font-size: 1.8rem !important;
    }
    .unit-feedbacks-slider .unit-feedback-card {
        width: 90vw !important;
    }
    .location-text h3 {
        font-size: 1.2rem !important;
    }
    .location-info p {
        font-size: 0.7rem !important;
    }
    .location-info p {
        font-size: 1rem !important;
    }
    .med-section .med-buttons {
        left: 24px;
        gap: 8px;
    }
    .med-section button a, .med-section button {
        border-radius: 8px;
    }
}

@media screen and (max-width:415px) {
    .med-section button {
        bottom: 10%;
    }
    .sub-header {
        gap: 4px;
        padding: 8px;
        justify-content: start;
    }
    .sub-header span, .sub-header a {
        font-size: 12px !important;
    }
    .sub-header .socials {
        margin-left: 12px;
    }
    .subscribe-anchor h4 {
        margin-bottom: 4px !important;
    }
    .subscribe-anchor div {
        border-left: 15px solid transparent;
        border-right: 15px solid transparent;
        border-top: 15px solid #FFCF00;
    }
    .banner-buttons {
        gap: 0;
    }
    .banner-buttons {
        left: 32%;
    }
    .med-section .med-buttons {
        bottom: 12px;
    }
}

@keyframes shadow-pulse{
    0% {
        box-shadow: 0 0 0 0px rgb(253 192 77);
    }
    100% {
        box-shadow: 0 0 0 35px rgba(0, 0, 0, 0);
    }
}

@keyframes jumpInfinite {
    0% {
      margin-bottom: 0;
    }
    50% {
      margin-bottom: -5px;
    }
    100% {
      margin-bottom: 0;
    }
}

@keyframes spinLoad {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}