﻿/* Final site polish: typography, testimonials, stats, contact, and payment modal. */

:root {
    --copy-font: "Segoe UI", Arial, Helvetica, sans-serif;
    --copy-color: rgb(11, 41, 69);
}

/* Final contact hero lock: keeps the contact banner red even when older page CSS resets backgrounds. */
html body:not(.course-page) main .contact-modern-hero,
html body:not(.course-page) main section.contact-modern-hero.reveal-section {
    background-color: #e31f26 !important;
    background-image:
        radial-gradient(circle at 8% 20%, rgba(255, 255, 255, 0.16) 0 2px, transparent 3px),
        radial-gradient(circle at 72% 18%, rgba(255, 255, 255, 0.14), transparent 30%),
        linear-gradient(135deg, #e31f26 0%, #ed1c24 55%, #c80f18 100%) !important;
    background-repeat: repeat, no-repeat, no-repeat !important;
    background-size: 26px 26px, auto, cover !important;
    background-position: 0 0, center, center !important;
}

/* Absolute last footer lock: keeps footer full-width and readable. */
html body > footer,
html body footer {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    clear: both !important;
    background: #071b32 !important;
}

html body footer .it-footer-wrap,
html body footer .it-footer-style-4,
html body footer .it-footer-area,
html body footer .it-copyright-area {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: #071b32 !important;
    color: #ffffff !important;
}

html body footer .it-footer-area {
    padding-top: 72px !important;
    padding-bottom: 44px !important;
}

html body footer .container {
    max-width: 1320px !important;
    width: 100% !important;
}

html body footer .it-footer-widget,
html body footer .it-footer-widget *,
html body footer .it-footer-widget-title,
html body footer .it-footer-widget-text p,
html body footer .it-footer-widget-menu ul li,
html body footer .it-footer-widget-menu ul li a,
html body footer .footer-contact-item strong,
html body footer .footer-contact-item a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body footer .it-footer-widget-text p,
html body footer .footer-contact-item a,
html body footer .it-footer-widget-menu ul li a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    font-size: 15px !important;
    line-height: 1.65 !important;
}

html body footer .it-footer-widget-social a,
html body footer .footer-contact-icon {
    background: rgba(255,255,255,.12) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.22) !important;
}

html body footer .it-copyright-area {
    border-top: 1px solid rgba(255,255,255,.14) !important;
    padding: 18px 0 !important;
}

/* Final footer lock: visible text and full-width background after older footer CSS. */
html body > footer,
html body footer {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    clear: both !important;
    background: #071b32 !important;
}

html body footer .it-footer-wrap,
html body footer .it-footer-style-4,
html body footer .it-footer-area,
html body footer .it-copyright-area {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: #071b32 !important;
    color: #ffffff !important;
}

html body footer .it-footer-area {
    padding-top: 72px !important;
    padding-bottom: 44px !important;
}

html body footer .container {
    max-width: 1320px !important;
    width: 100% !important;
}

html body footer .it-footer-widget,
html body footer .it-footer-widget *,
html body footer .it-footer-widget-title,
html body footer .it-footer-widget-text p,
html body footer .it-footer-widget-menu ul li,
html body footer .it-footer-widget-menu ul li a,
html body footer .footer-contact-item strong,
html body footer .footer-contact-item a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body footer .it-footer-widget-text p,
html body footer .footer-contact-item a,
html body footer .it-footer-widget-menu ul li a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    font-size: 15px !important;
    line-height: 1.65 !important;
}

html body footer .it-footer-widget-social a,
html body footer .footer-contact-icon {
    background: rgba(255,255,255,.12) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.22) !important;
}

html body footer .it-copyright-area {
    border-top: 1px solid rgba(255,255,255,.14) !important;
    padding: 18px 0 !important;
}

/* Final typography/readability pass: paragraph body text only, hero copy untouched. */
html body main section:not([class*="hero"]):not(.it-breadcrumb-area) p,
html body main .it-about-area p,
html body main .ed-about-page-extra-context p,
html body main .ed-about-added-context p,
html body main .postbox-dsc p,
html body main .it-course-details-wrap p,
html body main .it-blog-area p,
html body main .it-contact-area p,
html body main .it-faq-area p,
html body main .it-gallery-area p {
    font-family: var(--copy-font, "Jost", Arial, sans-serif) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
    color: #12304d !important;
}

html body main :is(.it-hero-area, .ed-hero-full-slide, .it-hero-content, .ed-hero-copy, .course-hero, .contact-modern-hero, [class*="hero"]) p {
    font-family: inherit;
}

html body main :is(.theme-bg, .red-bg, .black-bg, .grey-bg, .dark-bg, .it-cta-4-area, .red-cta, .contact-modern-hero, [class*="dark"], [class*="cta"]) p,
html body footer p,
html body footer a,
html body .ttm-section .ttm-card .ttm-text {
    color: #ffffff !important;
}

html body main :is(.gray-bg, .grey-bg, .white-bg, .it-about-area, .ed-about-page, .wcu-section) p {
    color: #12304d !important;
}

html body .wcu-section .wcu-card h4 {
    font-family: var(--copy-font, "Jost", Arial, sans-serif) !important;
    font-size: 18px !important;
    line-height: 1.18 !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
}

html body .wcu-section .wcu-card:nth-child(4) h4 {
    font-size: 20px !important;
    font-weight: 700 !important;
}

/* User selected copy style: keep all normal content text like the About extra paragraph. */
html body:not(.course-page) main p,
html body:not(.course-page) main .ed-admin-rich-text,
html body:not(.course-page) main .ed-admin-rich-text p,
html body:not(.course-page) main .it-about-text,
html body:not(.course-page) main .ed-about-page-extra-context .ed-admin-rich-text,
html body:not(.course-page) main .ed-about-more-card .ed-admin-rich-text,
html body:not(.course-page) main .ed-about-more-card .ed-admin-rich-text p,
html body:not(.course-page) main .ed-about-extra-description {
    font-family: var(--copy-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #4d5f75 !important;
    letter-spacing: 0 !important;
}

/* Keep headings strong and clean after the paragraph font normalization. */
html body:not(.course-page) main :is(h1, h2, h3, h4, h5, h6) {
    font-family: var(--copy-font) !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
}

html body:not(.course-page) main h1:not(.it-breadcrumb-title) {
    font-size: clamp(36px, 4.2vw, 56px) !important;
    line-height: 1.12 !important;
}

html body:not(.course-page) main h2:not(.it-breadcrumb-title) {
    font-size: clamp(30px, 3.2vw, 42px) !important;
    line-height: 1.16 !important;
}

html body:not(.course-page) main h3:not(.it-breadcrumb-title) {
    font-size: clamp(24px, 2.25vw, 32px) !important;
    line-height: 1.2 !important;
}

html body:not(.course-page) main h4,
html body:not(.course-page) main h5,
html body:not(.course-page) main h6 {
    line-height: 1.24 !important;
}

/* About Mission/Vision should be visible content, not hidden behind a collapsed panel. */
html body main .it-about-area .ed-about-more-panel {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
    max-height: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    transform: none !important;
    margin-top: 24px !important;
}

html body main .it-about-area .ed-about-more-card {
    min-height: 0 !important;
    padding: 22px !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    border: 1px solid rgba(224, 33, 33, .14) !important;
    box-shadow: 0 14px 34px rgba(31, 36, 50, .08) !important;
}

html body main .it-about-area .ed-about-more-card h5 {
    margin: 0 0 10px !important;
    font-size: 22px !important;
    line-height: 1.22 !important;
    font-weight: 800 !important;
    color: #0b2945 !important;
}

html body main .it-about-area .ed-about-more-card span {
    margin-bottom: 14px !important;
}

@media (max-width: 767.98px) {
    html body main .it-about-area .ed-about-more-panel {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
}

html body:not(.course-page) main .contact-modern-hero .container {
    position: relative !important;
    z-index: 2 !important;
}

html,
body,
body :where(a, p, span, li, label, input, select, textarea, button, small, strong, b, em, div),
body :where(h1, h2, h3, h4, h5, h6) {
    font-family: var(--copy-font) !important;
    letter-spacing: 0 !important;
}

body :where(i, [class^="fa-"], [class*=" fa-"], .fa, .fas, .far, .fal, .fab) {
    font-family: "Font Awesome 6 Pro", "Font Awesome 5 Pro", "Font Awesome 5 Free", "FontAwesome" !important;
}

body p,
main p,
.dp-content p,
.ed-admin-rich-text p,
.ed-about-page-extra-context p,
.it-about-text p,
.it-contact-3-area p,
.ttm-section p,
.it-footer-area p {
    font-family: var(--copy-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 21px !important;
    color: var(--copy-color) !important;
    letter-spacing: 0 !important;
}

.ed-admin-rich-text p,
.ed-about-page .ed-admin-rich-text p,
.ed-about-page-extra-context p,
.it-about-text p,
.it-about-right p {
    margin: 0 0 18px !important;
    font-family: var(--copy-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #4d5f75 !important;
}

.ed-about-page-extra-context h4,
.it-about-right h4 {
    margin: 26px 0 10px !important;
    font-family: var(--copy-font) !important;
    font-size: 24px !important;
    font-weight: 800 !important;
    line-height: 1.22 !important;
    color: #0b2945 !important;
}

.ed-about-page-extra-context .ed-admin-rich-text p,
.ed-about-page .ed-about-page-extra-context .ed-admin-rich-text p {
    color: #4d5f75 !important;
}

body:not(.course-page) .contact-modern-hero {
    position: relative !important;
    min-height: 330px !important;
    display: block !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 8% 20%, rgba(255, 255, 255, .16) 0 2px, transparent 3px),
        radial-gradient(circle at 70% 18%, rgba(255, 255, 255, .12), transparent 28%),
        linear-gradient(135deg, #e31f26 0%, #ed1c24 55%, #c80f18 100%) !important;
}

body:not(.course-page) .contact-modern-hero::before {
    opacity: .22 !important;
}

body:not(.course-page) .contact-modern-hero-row {
    min-height: 330px !important;
    align-items: center !important;
}

body:not(.course-page) .contact-modern-small,
body:not(.course-page) .contact-modern-title,
body:not(.course-page) .contact-modern-desc,
body:not(.course-page) .contact-modern-breadcrumb,
body:not(.course-page) .contact-modern-breadcrumb a {
    color: #ffffff !important;
}

body:not(.course-page) .contact-modern-title {
    font-size: clamp(42px, 5.2vw, 65px) !important;
    line-height: 1.02 !important;
}

body:not(.course-page) .contact-modern-desc {
    max-width: 560px !important;
    font-size: 17px !important;
    line-height: 1.55 !important;
    color: rgba(255, 255, 255, .96) !important;
}

body:not(.course-page) .contact-modern-image img {
    max-height: 330px !important;
    object-fit: contain !important;
}

.ttm-section,
.ttm-section .ttm-wrap {
    overflow: visible !important;
}

.ttm-section .ttm-track {
    cursor: grab !important;
    overscroll-behavior-x: contain !important;
    touch-action: pan-x pan-y !important;
    user-select: none !important;
}

.ttm-section .ttm-track.ttm-dragging {
    cursor: grabbing !important;
    scroll-behavior: auto !important;
}

.ttm-section .ttm-card .ttm-text,
.ttm-section .ttm-person h5,
.ttm-section .ttm-person span {
    color: #ffffff !important;
}

.ed-real-stats-section {
    position: relative !important;
    padding: 42px 0 !important;
    background:
        radial-gradient(circle at 14% 20%, rgba(255, 255, 255, .22), transparent 28%),
        linear-gradient(135deg, #e31f26 0%, #b9131b 52%, #071b32 100%) !important;
    overflow: hidden !important;
}

.ed-real-stats-section::before {
    content: "";
    position: absolute;
    inset: 12px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 8px;
    pointer-events: none;
}

.ed-real-stats {
    position: relative !important;
    gap: 18px !important;
}

.ed-real-stat-item {
    position: relative !important;
    min-height: 150px !important;
    padding: 26px 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, .2) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, .94) !important;
    box-shadow: 0 18px 45px rgba(5, 18, 36, .18) !important;
    isolation: isolate !important;
    animation: msolStatFloat 4.8s ease-in-out infinite !important;
}

.ed-real-stat-item:nth-child(2) {
    animation-delay: .2s !important;
}

.ed-real-stat-item:nth-child(3) {
    animation-delay: .4s !important;
}

.ed-real-stat-item:nth-child(4) {
    animation-delay: .6s !important;
}

.ed-real-stat-item::before {
    content: "";
    position: absolute;
    inset: -45% auto auto -20%;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: rgba(248, 198, 47, .22);
    z-index: -1;
}

.ed-real-stat-item::after {
    content: "";
    position: absolute;
    inset: auto -26px -34px auto;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: rgba(227, 31, 38, .12);
    z-index: -1;
}

.ed-real-stat-item strong {
    color: #e31f26 !important;
    text-shadow: 0 8px 24px rgba(227, 31, 38, .18) !important;
}

.ed-real-stat-item span {
    color: #071b32 !important;
    font-weight: 700 !important;
}

@keyframes msolStatFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

.header .pay-now-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 112px !important;
    margin-left: 15px !important;
    padding: 13px 18px !important;
    border: 2px solid #f8c62f !important;
    border-radius: 6px !important;
    background: #f8c62f !important;
    color: #071b32 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.header .pay-now-button:hover {
    background: #ffffff !important;
    color: #e31f26 !important;
}

.pay-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.pay-modal.is-open {
    display: flex;
}

.pay-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7, 27, 50, .6);
}

.pay-box {
    position: relative;
    width: min(100%, 520px);
    max-height: calc(100vh - 36px);
    overflow: auto;
    padding: 30px;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 26px 80px rgba(7, 27, 50, .26);
}

.pay-box h3 {
    margin: 0 0 8px;
    color: #071b32;
    font-size: 28px;
    font-weight: 900;
}

.pay-box p {
    margin-bottom: 18px !important;
}

.pay-close {
    position: absolute;
    top: 12px;
    right: 14px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #f2f4f7;
    color: #071b32;
    font-size: 24px;
    line-height: 1;
}

.pay-box label {
    margin: 0 0 7px;
    color: #071b32;
    font-size: 13px;
    font-weight: 800;
}

.pay-box input,
.pay-box select {
    width: 100%;
    height: 48px;
    margin-bottom: 14px;
    padding: 0 14px;
    border: 1px solid #d8dee8;
    border-radius: 6px;
    color: #071b32;
    background: #ffffff;
    font-family: var(--copy-font);
}

.pay-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.pay-submit {
    width: 100%;
    height: 52px;
    border: 0;
    border-radius: 6px;
    background: #e31f26;
    color: #ffffff;
    font-weight: 900;
}

.pay-message {
    min-height: 20px;
    margin-top: 12px;
    color: #071b32;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.pay-message[data-type="error"] {
    color: #dc2626;
}

.pay-message[data-type="success"] {
    color: #15803d;
}

.it-contact-3-area {
    background: #ffffff !important;
}

.it-contact-3-area .row {
    align-items: stretch !important;
}

.it-contact-3-left {
    height: 100% !important;
}

.it-contact-3-form-box {
    overflow: hidden !important;
    padding: 34px 34px 28px !important;
    border: 1px solid #eef1f5 !important;
    border-right: 6px solid #e31f26 !important;
    border-radius: 8px 18px 18px 8px !important;
    background: #ffffff !important;
    box-shadow: 0 22px 60px rgba(7, 27, 50, .1) !important;
}

.it-contact-3-form-box .it-section-title {
    color: #071b32 !important;
    font-size: 34px !important;
    line-height: 1.18 !important;
    font-weight: 900 !important;
}

.it-contact-3-form-box input,
.it-contact-3-form-box textarea,
.it-contact-3-form-box select {
    border-color: #d9e1ec !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #071b32 !important;
}

.it-contact-3-form-box textarea {
    min-height: 112px !important;
}

.it-contact-3-form-box button[type="submit"] {
    width: 100% !important;
    border-radius: 7px !important;
    background: #e31f26 !important;
    box-shadow: 0 12px 25px rgba(227, 31, 38, .2) !important;
}

.it-contact-list li {
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: 0 12px 38px rgba(7, 27, 50, .08) !important;
}

@media (max-width: 991.98px) {
    .header .pay-now-button {
        width: 100% !important;
        margin: 12px 0 8px !important;
    }

    .pay-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .ed-real-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 575.98px) {
    body p,
    main p,
    .dp-content p,
    .it-contact-3-area p,
    .ttm-section p,
    .it-footer-area p {
        font-size: 15px !important;
        line-height: 21px !important;
    }

    .ed-real-stats {
        grid-template-columns: 1fr !important;
    }

    .it-contact-3-form-box {
        padding: 24px 18px !important;
    }
}

/* Non-course page cleanup: keep remaining pages visually consistent. */
body:not(.course-page) main .it-breadcrumb-area {
    min-height: 300px !important;
    padding: 72px 0 64px !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
}

body:not(.course-page) main .it-breadcrumb-area .container,
body:not(.course-page) main .it-breadcrumb-area .row {
    width: 100% !important;
}

body:not(.course-page) main .it-breadcrumb-thumb {
    max-height: 230px !important;
    overflow: hidden !important;
}

body:not(.course-page) main .it-breadcrumb-thumb > img:not([class*="shape"]) {
    width: min(100%, 380px) !important;
    max-height: 230px !important;
    object-fit: contain !important;
}

body:not(.course-page) main .it-breadcrumb-content {
    padding: 0 !important;
}

body:not(.course-page) main .it-breadcrumb-title,
body:not(.course-page) main .it-breadcrumb-title.style-2,
body:not(.course-page) main .it-breadcrumb-content h1,
body:not(.course-page) main .it-breadcrumb-content h2,
body:not(.course-page) main .it-breadcrumb-content h3 {
    margin-bottom: 14px !important;
    font-size: clamp(34px, 4.4vw, 52px) !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
}

body:not(.course-page) main :is(.pt-130, .pt-120, .pt-110, .pt-100) {
    padding-top: 72px !important;
}

body:not(.course-page) main :is(.pb-130, .pb-120, .pb-110, .pb-100, .pb-95, .pb-90) {
    padding-bottom: 72px !important;
}

body:not(.course-page) main section + section,
body:not(.course-page) main section + div[class*="area"],
body:not(.course-page) main div[class*="area"] + section {
    margin-top: 0 !important;
}

body:not(.course-page) main :is(.it-course-section-title-box, .section-title, .it-section-title-box, .ed-online-section-title) {
    margin-bottom: 28px !important;
}

body:not(.course-page) main h1:not(.it-breadcrumb-title) {
    font-size: clamp(34px, 4vw, 50px) !important;
    line-height: 1.16 !important;
}

body:not(.course-page) main h2:not(.it-breadcrumb-title) {
    font-size: clamp(28px, 3.1vw, 40px) !important;
    line-height: 1.18 !important;
}

body:not(.course-page) main h3:not(.it-breadcrumb-title) {
    font-size: clamp(22px, 2.2vw, 30px) !important;
    line-height: 1.22 !important;
}

body:not(.course-page) main h4 {
    font-size: clamp(18px, 1.5vw, 23px) !important;
    line-height: 1.28 !important;
}

body:not(.course-page) main h5 {
    font-size: clamp(16px, 1.2vw, 20px) !important;
    line-height: 1.3 !important;
}

body:not(.course-page) main h6 {
    font-size: clamp(15px, 1vw, 18px) !important;
    line-height: 1.35 !important;
}

body:not(.course-page) main :is(h1, h2, h3, h4, h5, h6) {
    letter-spacing: 0 !important;
}

body:not(.course-page) .dp-content-area,
body:not(.course-page) .it-blog-area,
body:not(.course-page) .it-faq-area,
body:not(.course-page) .it-career-area,
body:not(.course-page) .it-contact-3-area,
body:not(.course-page) .it-about-area {
    overflow: hidden !important;
}

body:not(.course-page) main .container > :last-child,
body:not(.course-page) main .row > [class*="col-"] > :last-child {
    margin-bottom: 0 !important;
}

body :is(a, button, .it-btn, .theme-btn, .it-btn-yellow, .apply-button, .pay-now-button, [class*="card"], [class*="box"], [class*="item"]) {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease, color .22s ease, opacity .22s ease !important;
}

body :is(a, button, .it-btn, .theme-btn, .it-btn-yellow, .apply-button, .pay-now-button):hover {
    transform: translateY(-2px);
}

body main :is([class*="card"], [class*="box"], [class*="item"]):hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 46px rgba(7, 27, 50, .14) !important;
}

.wcu-section .wcu-grid {
    align-items: stretch !important;
}

.wcu-section .wcu-card {
    min-height: 169px !important;
    height: auto !important;
    padding: 0px 1px 4px !important;
    overflow: hidden !important;
}

.wcu-section .wcu-card h4 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 14px auto 0 !important;
    font-size: clamp(18px, 2.1vw, 24px) !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-align: center !important;
}

.wcu-section .wcu-icon {
    flex: 0 0 auto !important;
}

@media (max-width: 991.98px) {
    body:not(.course-page) main .it-breadcrumb-area {
        min-height: 250px !important;
        padding: 58px 0 52px !important;
    }

    body:not(.course-page) main .it-breadcrumb-thumb {
        display: none !important;
    }

    body:not(.course-page) main :is(.pt-130, .pt-120, .pt-110, .pt-100) {
        padding-top: 50px !important;
    }

    body:not(.course-page) main :is(.pb-130, .pb-120, .pb-110, .pb-100, .pb-95, .pb-90) {
        padding-bottom: 50px !important;
    }

    .wcu-section .wcu-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .wcu-section .wcu-card {
        min-width: 0 !important;
        min-height: 188px !important;
        padding: 14px 8px 26px !important;
        border-radius: 8px !important;
    }

    .wcu-section .wcu-icon {
        width: 54px !important;
        height: 54px !important;
        margin: 0 auto 10px !important;
        border-radius: 12px !important;
    }

    .wcu-section .wcu-card h4 {
        font-size: clamp(16px, 5vw, 22px) !important;
        line-height: 1.08 !important;
    }

    body:not(.course-page) .contact-modern-hero,
    body:not(.course-page) .contact-modern-hero-row {
        min-height: 280px !important;
    }

    body:not(.course-page) .contact-modern-hero-content {
        padding: 42px 0 28px !important;
    }
}

@media (max-width: 575.98px) {
    body:not(.course-page) main .it-breadcrumb-area {
        min-height: 210px !important;
        padding: 42px 0 38px !important;
    }

    body:not(.course-page) main .it-breadcrumb-title,
    body:not(.course-page) main .it-breadcrumb-title.style-2,
    body:not(.course-page) main .it-breadcrumb-content h1,
    body:not(.course-page) main .it-breadcrumb-content h2,
    body:not(.course-page) main .it-breadcrumb-content h3 {
        font-size: 34px !important;
    }

    body:not(.course-page) main :is(.pt-130, .pt-120, .pt-110, .pt-100) {
        padding-top: 36px !important;
    }

    body:not(.course-page) main :is(.pb-130, .pb-120, .pb-110, .pb-100, .pb-95, .pb-90) {
        padding-bottom: 36px !important;
    }

    .wcu-section {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .wcu-section .wcu-grid {
        gap: 10px !important;
    }

    .wcu-section .wcu-card {
        min-height: 156px !important;
        padding: 10px 6px 22px !important;
    }

    .wcu-section .wcu-icon {
        width: 50px !important;
        height: 50px !important;
        margin-bottom: 8px !important;
    }

    .wcu-section .wcu-card h4 {
        font-size: clamp(14px, 4.75vw, 18px) !important;
        line-height: 1.08 !important;
    }

    .wcu-section .wcu-wave {
        height: 30px !important;
    }

    .ed-admin-rich-text p,
    .ed-about-page .ed-admin-rich-text p,
    .ed-about-page-extra-context p,
    .it-about-text p,
    .it-about-right p {
        font-size: 16px !important;
        line-height: 1.55 !important;
        color: #4d5f75 !important;
    }

    .ed-about-page-extra-context h4,
    .it-about-right h4 {
        font-size: 22px !important;
        line-height: 1.22 !important;
    }

    body:not(.course-page) .contact-modern-hero,
    body:not(.course-page) .contact-modern-hero-row {
        min-height: auto !important;
    }

    body:not(.course-page) .contact-modern-hero {
        padding-bottom: 0 !important;
    }

    body:not(.course-page) .contact-modern-title {
        font-size: 38px !important;
    }

    body:not(.course-page) .contact-modern-desc {
        font-size: 15px !important;
        line-height: 1.5 !important;
    }

    body:not(.course-page) .contact-modern-image {
        height: 210px !important;
    }

    body:not(.course-page) .contact-modern-image img {
        max-height: 210px !important;
    }
}

/* End-of-file page locks for rules that are also defined inline on old pages. */
html body main .it-about-right,
html body main .it-about-text,
html body main .ed-about-page-extra-context,
html body main .ed-about-added-context,
html body main .ed-about-page-extra-context .ed-admin-rich-text {
    font-family: var(--copy-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #4d5f75 !important;
}

html body main .it-about-text p,
html body main .it-about-area .it-about-right .it-about-text p,
html body main .ed-about-page-extra-context p,
html body main .ed-about-page-extra-context .ed-admin-rich-text p,
html body main .ed-about-extra-description {
    margin: 0 0 18px !important;
    font-family: var(--copy-font) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #4d5f75 !important;
}

html body main .ed-about-page-extra-context h4,
html body main .ed-about-added-context h5 {
    margin: 26px 0 10px !important;
    font-family: var(--copy-font) !important;
    font-size: 22px !important;
    font-weight: 800 !important;
    line-height: 1.22 !important;
    color: #0b2945 !important;
}

html body:not(.course-page) main .contact-modern-hero,
html body:not(.course-page) main section.contact-modern-hero.reveal-section {
    background-color: #e31f26 !important;
    background-image:
        radial-gradient(circle at 8% 20%, rgba(255, 255, 255, 0.16) 0 2px, transparent 3px),
        radial-gradient(circle at 72% 18%, rgba(255, 255, 255, 0.14), transparent 30%),
        linear-gradient(135deg, #e31f26 0%, #ed1c24 55%, #c80f18 100%) !important;
    background-repeat: repeat, no-repeat, no-repeat !important;
    background-size: 26px 26px, auto, cover !important;
    background-position: 0 0, center, center !important;
}

/* Absolute last footer lock: keeps footer full-width and readable. */
html body > footer,
html body footer {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    clear: both !important;
    background: #071b32 !important;
}

html body footer .it-footer-wrap,
html body footer .it-footer-style-4,
html body footer .it-footer-area,
html body footer .it-copyright-area {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: #071b32 !important;
    color: #ffffff !important;
}

html body footer .it-footer-area {
    padding-top: 72px !important;
    padding-bottom: 44px !important;
}

html body footer .container {
    max-width: 1320px !important;
    width: 100% !important;
}

html body footer .it-footer-widget,
html body footer .it-footer-widget *,
html body footer .it-footer-widget-title,
html body footer .it-footer-widget-text p,
html body footer .it-footer-widget-menu ul li,
html body footer .it-footer-widget-menu ul li a,
html body footer .footer-contact-item strong,
html body footer .footer-contact-item a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body footer .it-footer-widget-text p,
html body footer .footer-contact-item a,
html body footer .it-footer-widget-menu ul li a,
html body footer .it-copyright-area p,
html body footer .it-copyright-area a {
    font-size: 15px !important;
    line-height: 1.65 !important;
}

html body footer .it-footer-widget-social a,
html body footer .footer-contact-icon {
    background: rgba(255,255,255,.12) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.22) !important;
}

html body footer .it-copyright-area {
    border-top: 1px solid rgba(255,255,255,.14) !important;
    padding: 18px 0 !important;
}

