.graduacao-smart-page .smart-presentation {
    padding-bottom: 78px;
}
.smart-presentation__grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr));
    gap: 36px;
    align-items: start;
}
.smart-editorial {
    text-align: justify;
    min-width: 0;
    overflow-wrap: anywhere;
}
.smart-editorial img, .smart-editorial iframe {
    max-width: 100%;
}
.graduacao-smart-page .braganca-course-card h3 {
    overflow-wrap: anywhere;
}
.graduacao-smart-page .braganca-course-card__actions .viewCourse {
    color: #fff;
    background: var(--braganca-navy);
}
.graduacao-smart-page .braganca-course-card__actions .viewCourse:hover {
    background: var(--braganca-blue);
}
.graduacao-smart-page button:focus-visible, .graduacao-smart-page a:focus-visible {
    outline: 3px solid #ff9800;
    outline-offset: 4px;
}
.smart-proof .braganca-differentials {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.smart-unit-modal .modal-content {
    border-radius: 18px;
    overflow: hidden;
}
.smart-unit-modal .modal-header {
    background: #00365d;
    padding: 22px;
}
.smart-unit-modal .modal-title {
    color: #fff;
    font-size: 22px;
    padding-right: 25px;
}
.smart-unit-modal .close {
    color: #fff;
    opacity: 1;
    min-width: 44px;
    min-height: 44px;
    margin-top: -10px;
}
.smart-unit-modal .modal-body {
    padding: 26px;
}
.smart-unit-summary {
    margin: -26px -26px 24px;
    padding: 28px 26px;
    border-bottom: 1px solid #dce8ef;
    background: linear-gradient(135deg, #f2f9fc, #fff);
}
.smart-unit-eyebrow {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #22617f;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.smart-unit-course {
    margin: 12px 0 18px;
    color: #00365d;
    font-size: 24px;
    font-weight: 800;
    line-height: 1.25;
    overflow-wrap: anywhere;
}
.smart-unit-details {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 28px;
}
.smart-unit-detail {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}
.smart-unit-detail > i {
    color: #087eac;
    font-size: 19px;
}
.smart-unit-detail span,
.smart-unit-detail strong {
    display: block;
    line-height: 1.5;
}
.smart-unit-detail span {
    color: #516b7c;
    font-size: 11px;
}
.smart-unit-detail strong {
    color: #153047;
    font-size: 12px;
    overflow-wrap: anywhere;
}
.smart-unit-description {
    margin: 18px 0 0;
    color: #435e70;
    font-size: 13px;
    line-height: 1.65;
}
.smart-unit-detail[hidden],
.smart-unit-description[hidden] {
    display: none;
}
.smart-unit-modal select {
    min-height: 48px;
    width: 100%;
}
.smart-unit-retry {
    margin-top: 16px;
    background: #00365d;
    color: #fff;
}
.smart-unit-retry[hidden] {
    display: none;
}
@media (max-width: 767px) {
    .smart-unit-course {
        font-size: 18px;
    }
    .smart-unit-description {
        display: none;
    }
    .smart-proof .braganca-differentials {
        grid-template-columns: 1fr;
    }
    .smart-unit-modal .modal-title {
        font-size: 18px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .graduacao-smart-page *, .graduacao-smart-page *::before, .graduacao-smart-page *::after {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

.smart-unit-status:empty { display: none; }

.graduacao-smart-page .braganca-hero__stats .smart-period-summary {
    font-size: 11px;
}

/* Chamada de inscrição: contraste, brilho no CTA e movimento reduzido pelo bloco global acima. */
.smart-enrollment {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(290px, .85fr);
    gap: 48px;
    align-items: center;
    padding: 48px;
    border: 1px solid #246784;
    border-radius: 28px;
    color: #fff;
    background: radial-gradient(ellipse at 0 100%, #096b83 0%, transparent 60%), #00365d;
    box-shadow: 0 22px 48px rgba(0, 54, 93, .16);
    overflow: hidden;
}
.smart-enrollment::before {
    content: '';
    position: absolute;
    z-index: -1;
    top: -140px;
    right: -100px;
    width: 490px;
    height: 490px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: 50%;
    box-shadow: 0 0 0 55px rgba(255, 255, 255, .035), 0 0 0 110px rgba(255, 255, 255, .025);
    pointer-events: none;
}
.smart-enrollment__copy .braganca-eyebrow {
    color: #9ee7fb;
}
.smart-enrollment__copy h2 {
    margin: 0 0 22px;
    color: #fff;
    font-size: clamp(27px, 3vw, 39px);
    font-weight: 800;
    line-height: 1.18;
    overflow-wrap: anywhere;
}
.smart-enrollment__copy > p {
    max-width: 530px;
    margin-bottom: 30px;
    color: #e0eef5;
    font-size: 15px;
    line-height: 1.7;
}
.smart-enrollment__steps {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 22px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.smart-enrollment__steps li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #e0eef5;
    font-size: 12px;
}
.smart-enrollment__steps li > span {
    color: #ffbc61;
    font-size: 12px;
    font-weight: 800;
}
.smart-enrollment__action {
    padding: 30px 26px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 20px;
    background: rgba(0, 29, 51, .58);
    text-align: center;
}
.smart-enrollment__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    margin-bottom: 16px;
    border-radius: 18px;
    color: #ffb34a;
    background: rgba(255, 179, 74, .12);
    font-size: 30px;
    animation: smart-enrollment-float 5s ease-in-out infinite;
}
.smart-enrollment__action > strong {
    display: block;
    margin-bottom: 8px;
    color: #fff;
    font-size: 23px;
    line-height: 1.3;
}
.smart-enrollment__action > p {
    margin: 0 0 24px;
    color: #e0eef5;
    font-size: 13px;
}
.smart-enrollment__button {
    width: 100%;
    min-height: 56px;
    margin: 0;
    font-size: 16px;
}
/* Sobrescreve o contorno escuro herdado do CTA compartilhado. */
.graduacao-smart-page .smart-enrollment__button:focus-visible {
    outline: 3px solid #ffbc61 !important;
    outline-offset: 4px;
}
.smart-enrollment__back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    margin-top: 12px;
    color: #e0eef5;
    font-size: 12px;
    text-decoration: underline;
    text-underline-offset: 4px;
}
.smart-enrollment__back:hover,
.smart-enrollment__back:focus {
    color: #ffbc61;
}
@keyframes smart-enrollment-float {
    0%, 100% { transform: translateY(0) rotate(-4deg); }
    50% { transform: translateY(-6px) rotate(4deg); }
}
@media (max-width: 991px) {
    .smart-enrollment {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 32px;
    }
    .smart-enrollment__action {
        width: 100%;
        max-width: 480px;
        justify-self: center;
    }
}
@media (max-width: 480px) {
    .smart-enrollment {
        gap: 24px;
        padding: 28px 20px;
        border-radius: 20px;
    }
    .smart-enrollment__copy h2 br {
        display: none;
    }
    .smart-enrollment__steps {
        flex-direction: column;
    }
    .smart-enrollment__action {
        padding: 24px 16px;
    }
}
