/* ==========================================================================
   WP Custom CSS Scratch File (With Responsiveness &amp; Scroll Fixes)
   ========================================================================== */

/* 1. Root Cause Scroll Fix: Override Gutenberg's 100vw breakout on alignfull containers */
.text-image-block.alignfull,
.text-image-block .launch-emt-career.alignfull,
.emt-advantage.alignfull,
.custom-hero.alignfull,
.full-width-container-block {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
}

/* Custom Hero Styles */
.custom-hero {
    background-image: url(https://uat.unitekemt.com/wp-content/uploads/2026/07/home-hero-image-1-scaled.jpg);
    background-position: top center;
    color: #ffffff;
    background-size: cover;
    background-repeat: no-repeat;
}

.custom-hero section {
    padding-top: 230px !important;
    padding-bottom: 230px !important;
}

.custom-hero .custom-hero-text {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
}

.custom-hero h1 {
    font-size: 76px;
    line-height: 64px;
    margin-right: 16px;
}

.custom-hero h2 {
    font-size: 48px;
    line-height: 48px;
    font-weight: 700;
    text-transform: uppercase;
}

@media (min-width: 1541px) {
    .emt-hero__cover {
        margin: 0 auto;
        width: 100%;
    }

    .emt-hero__cover .wp-block-cover__inner-container {
        margin: 0 auto !important;
        width: 108rem !important;
        padding-left: clamp(6rem, 15.046vw, 16.25rem) !important;
    }
}

/* Hero Get Started Fix for Custom Hero */
.hero-get-started-wrapper {
    background-color: transparent !important;
}

.hero-get-started-block {
    margin: -100px auto 0 auto !important;
}

/* Featured Cards Custom Section */
.card-third {
    width: 32%;
    padding: 32px 16px !important;
    display: flex !important;
    flex-direction: column;
}

.card-third>.wp-block-group__inner-container {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.card-third p {
    font-size: 14px !important;
    margin-top: auto;
    /* Push paragraph text to align if needed, or leave normal */
}

/* Ensure the cards parent container wraps and stretches equal heights */
.program-columns .wp-block-group.is-layout-flex {
    flex-wrap: wrap !important;
    align-items: stretch !important;
    gap: 16px 2% !important;
    /* Row gap and column gap */
}

@media (max-width: 1024px) {
    .card-third {
        width: 49% !important;
        /* 2 columns on tablet */
    }
}

@media (max-width: 768px) {
    .card-third {
        width: 100% !important;
        /* 1 column on mobile */
    }
}

.headline-regular {
    font-size: 40px;
    line-height: 48px;
    font-weight: 400;
}

.featured-cards-custom p {
    font-size: 16px;
    line-height: 24px;
    font-weight: 300;
}

.card-headline {
    font-size: 24px;
    font-weight: 700;
    line-height: 24px;
    text-transform: uppercase;
    color: #FF4030 !important;
}

.featured-cards-custom h3 {
    font-size: 64px;
    line-height: 64px;
    font-weight: 700;
}

.card-large {
    padding: 32px 32px 24px 32px;
    border-radius: 24px;
    min-width: 376px !important;
}

.card-large p:first-of-type {
    font-size: 28px;
    line-height: 40px;
}

.card-large .wp-block-buttons {
    width: 100%;
    padding-top: 36px;
}

.card-disclaimer {
    color: #fff;
    margin: 16px auto 0 auto !important;
}

/* Text Image Block Custom */
.text-image-block {
    overflow: hidden;
}

/* Fix desktop overlap and horizontal scrollbar issue on Media &amp; Text blocks */
.text-image-block .hero-split.alignfull {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

@media (max-width: 1024px) {

    /* Scale down the 120px spacers on tablet for the hero-split block */
    .text-image-block .hero-split .wp-block-spacer {
        height: 64px !important;
    }
}

@media (max-width: 768px) {

    /* Force all Media &amp; Text blocks with class .hero-split to stack vertically starting at 768px */
    .text-image-block .hero-split {
        display: flex !important;
        flex-direction: column !important;
    }

    /* Keep media (image) on top for the right-aligned image block */
    .text-image-block .launch-emt-career {
        flex-direction: column-reverse !important;
    }

    .text-image-block .hero-split .wp-block-media-text__media {
        width: 100% !important;
        height: auto !important;
        min-height: 250px !important;
    }

    .text-image-block .hero-split .wp-block-media-text__media img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        min-width: 0 !important;
        min-height: 100% !important;
    }

    .text-image-block .hero-split .wp-block-media-text__content {
        width: 100% !important;
        padding: 40px 16px !important;
        /* Unified padding for mobile content */
    }

    /* Reset double padding/margins */
    .text-image-block .hero-split .inner-text-left,
    .text-image-block .hero-split .inner-text-right,
    .text-image-block .hero-split .inner-text-left>.wp-block-group__inner-container,
    .text-image-block .hero-split .inner-text-right>.wp-block-group__inner-container {
        padding: 0 !important;
        margin: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    .text-image-block .hero-split .inner-text-left>.wp-block-group__inner-container>*,
    .text-image-block .hero-split .inner-text-right>.wp-block-group__inner-container>* {
        margin-left: 0 !important;
        margin-right: 0 !important;
        max-width: 100% !important;
    }

    /* Reduce spacer heights inside the content on mobile */
    .text-image-block .hero-split .wp-block-spacer {
        height: 40px !important;
    }
}

.outline-cta .btn-apply {
    border: 2px solid #AB1F2C;
    background-color: transparent;
    color: #AB1F2C;
}

.inner-text-right>.wp-container-core-group-is-layout-7c87d427> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    margin-left: 0 !important;
}

.inner-text-left>.wp-block-group__inner-container>* {
    margin-right: 0 !important;
}

.hero-split .inner-text-left h2 {
    font-size: 48px;
    font-weight: 400;
    line-height: 56px;
}

.hero-split .inner-text-left h3 {
    font-size: 32px;
    font-weight: 400;
    line-height: 40px;
}

.hero-split .inner-text-right h2 {
    font-size: 40px;
    font-weight: 400;
    line-height: 48px;
}

.hero-split .inner-text-right p {
    font-weight: 300;
}

/* EMT Advantage Custom Block */
.emt-advantage {
    background: #2f3741;
    margin-bottom: 0px;
    box-sizing: border-box;
    /* Default desktop padding matching .header-container */
    padding-left: 9.375rem !important;
    padding-right: 9.375rem !important;
}

.emt-advantage .wp-block-group__inner-container {
    max-width: 1728px;
    margin: 0 auto;
}

.emt-advantage .wp-block-group {
    padding-left: 0 !important;
    /* Replaced default ad-hoc padding */
}

.emt-advantage h2 {
    font-size: 64px;
    font-weight: 400;
    line-height: 72px;
}

.emt-advantage .wp-block-group:nth-of-type(2) {
    width: 50%;
}

.emt-advantage p {
    font-weight: 300 !important;
}

.emt-advantage .subheading {
    font-size: 16px !important;
    font-weight: 500 !important;
}

.emt-advantage .emt-feature {
    flex: 1;
    min-width: 260px;
    padding: 0 28px !important;
    border-left: 1px solid rgba(255, 255, 255, .2);
}

.emt-advantage .emt-feature img {
    margin-bottom: 28px;
}

.emt-advantage .emt-feature h4 {
    color: #fff;
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
    margin: 0;
}

/* --- Alignment &amp; Responsiveness matching .header-container --- */
@media (min-width: 1541px) {
    .emt-advantage {
        padding-left: clamp(6rem, 15.046vw, 16.25rem) !important;
        padding-right: clamp(6rem, 15.046vw, 16.25rem) !important;
    }
}

@media (min-width: 1281px) and (max-width: 1540px) {
    .emt-advantage {
        padding-left: 9.375rem !important;
        padding-right: 9.375rem !important;
    }
}

@media (min-width: 1025px) and (max-width: 1280px) {
    .emt-advantage {
        padding-left: 5rem !important;
        padding-right: 5rem !important;
    }
}

@media (max-width: 1024px) {
    .emt-advantage {
        padding-left: 3.125rem !important;
        padding-right: 3.125rem !important;
    }

    .emt-advantage h2 {
        font-size: 36px !important;
        line-height: 44px !important;
    }

    /* Stack header and text block vertically on tablet/mobile */
    .emt-advantage .wp-block-group.is-nowrap {
        flex-direction: column !important;
        flex-wrap: wrap !important;
        gap: 24px !important;
    }

    .emt-advantage .wp-block-group.is-nowrap>.wp-block-group,
    .emt-advantage .wp-block-group:nth-of-type(2) {
        width: 100% !important;
        flex-basis: auto !important;
    }
}

@media (min-width: 768px) and (max-width: 870px) {
    .emt-advantage {
        padding-left: 2rem !important;
        padding-right: 2rem !important;
    }
}

@media (max-width: 767.98px) {
    .emt-advantage {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

@media (max-width: 1024px) {
    .emt-advantage .wp-block-group.is-content-justification-space-between {
        flex-wrap: wrap !important;
    }

    .emt-advantage .emt-feature {
        border-left: none;
        border-top: 1px solid rgba(255, 255, 255, .2);
        padding: 24px 0 !important;
        min-width: 100%;
    }

    /* Align icon and text horizontally on mobile/tablet */
    .emt-advantage .emt-feature .wp-block-group__inner-container {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 20px !important;
    }

    .emt-advantage .emt-feature img {
        margin-bottom: 0 !important;
    }
}



/* Flex Half */
.flex-half {
    display: flex;
    justify-content: space-between;
    padding: 80px 0 120px 0;
}

.flex-half img {
    width: 100%;
}

.flex-half h3 {
    font-size: 40px;
    font-weight: 400;
    line-height: 48px;
    margin-bottom: 24px;
}

.flex-half p {
    font-size: 16px !important;
    font-weight: 300 !important;
    line-height: 24px !important;
}

.flex-half h4 {
    font-size: 24px;
    font-weight: 400;
    line-height: 32px;
    margin-bottom: 16px;
    margin-top: 24px;
}

.flex-half ul {
    padding-left: 28px;
}

.flex-half li {
    font-size: 16px;
    line-height: 32px;
    font-weight: 500;
}

.continuing-education h2 {
    font-size: 40px;
    line-height: 48px;
    font-weight: 400;
}

.continuing-education p {
    font-size: 16px;
    font-weight: 500;
}

.program-tabs-bar {
    background-color: #28323C !important;
}

.program-tab:not(.active) {
    background-color: #FF4030 !important;
}

.program-tab.active {
    background-color: #ffffff !important;
    color: #AB1F2C !important;
    margin-bottom: -2px !important;
}

.program-tab.active::after {
    background-color: #ffffff !important;
}

/* Exam Prep App Custom Block */
.exam-prep-app {
    padding-bottom: 0 !important;
    /* Allow the phone mockup to sit flush at the bottom */
}

.exam-prep-app>.wp-block-columns {
    align-items: flex-end !important;
}

/* Add bottom padding on the text column to keep it spaced from the bottom */
.exam-prep-app>.wp-block-columns>.wp-block-column:first-child {
    padding-bottom: 80px !important;
}

.exam-prep-app>.wp-block-columns>.wp-block-column:last-child {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.exam-prep-app .wp-block-image {
    margin: 0;
}

.exam-prep-app h2 {
    font-size: 40px;
    font-weight: 400;
    padding-bottom: 10px;
    padding-top: 30px;
}

/* --- Alignment &amp; Responsiveness --- */
@media (max-width: 1024px) {

    /* Stack the main column sections vertically */
    .exam-prep-app>.wp-block-columns {
        flex-direction: column !important;
        gap: 32px !important;
    }

    .exam-prep-app>.wp-block-columns>.wp-block-column {
        width: 100% !important;
        flex-basis: auto !important;
    }

    /* Keep App Store &amp; Google Play badges side-by-side instead of stacking vertically */
    .exam-prep-app .wp-block-column .wp-block-columns {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 16px !important;
        align-items: center !important;
    }

    .exam-prep-app .wp-block-column .wp-block-columns .wp-block-column {
        width: auto !important;
        flex: none !important;
        /* Prevent column blocks from expanding */
        margin: 0 !important;
    }

    /* Hide the empty spacer columns on tablet/mobile */
    .exam-prep-app .wp-block-column .wp-block-columns .wp-block-column:empty {
        display: none !important;
    }

    .exam-prep-app .wp-block-column .wp-block-columns .wp-block-column img {
        height: 40px !important;
        width: auto !important;
    }
}

@media (max-width: 768px) {

    /* Scale down and center the phone mockup image on mobile screens */
    .exam-prep-app img.wp-image-57341 {
        width: 100% !important;
        max-width: 320px !important;
        height: auto !important;
        margin: 0 auto !important;
    }
}

/* Approvals and Student Resources Custom Block */
.approvals h2 {
    font-size: 40px;
    font-weight: 400;
}

.approvals p {
    font-weight: 300;
}

.approvals a {
    color: #007ACC;
    font-weight: 500;
}

p.student-resources-description {
    padding-bottom: 50px;
    border-bottom: 1px solid #ACB4BC;
}

/* Program Columns w/Callouts Custom Block */
section.program-columns {
    margin-top: -4.25em !important;
    position: relative;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Reset inner nested container to avoid double margins/padding */
div.program-columns {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Extend background color upward to cover the white gap without changing margins */
section.program-columns::before {
    content: "";
    position: absolute;
    top: -120px;
    /* Stretch upward behind the form */
    left: 0;
    width: 100%;
    height: 120px;
    background-color: #28323C;
    /* Match container background */
    z-index: -1;
}

@media (max-width: 1024px) {
    .program-columns .wp-block-spacer {
        height: 64px !important;
        /* Scale down the 120px/64px spacers on tablet */
    }
}

@media (max-width: 768px) {
    /* Force the block edge-to-edge on mobile screens and adjust overlap/padding */
    section.program-columns {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: -6.25em !important;
        padding-top: 120px !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    div.program-columns {
        margin-top: 0 !important;
        padding-top: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .program-columns .wp-block-spacer {
        height: 40px !important;
        /* Scale down spacers even more on mobile */
    }
}

@media (max-width: 408px) {
    section.program-columns {
        margin-top: -7.8em !important;
        padding-top: 140px !important;
    }
}

.program-columns h2 {
    font-size: 40px;
    font-weight: 400 !important;
}

.program-columns h2 strong {
    font-weight: 400 !important;
}

.program-columns p {
    font-weight: 300;
}

.program-columns .header-cta {
    justify-content: flex-start;
}

.program-columns a {
    background-color: #FF4030;
    color: #fff;
}

.program-columns a:hover {
    background-color: #AB1F2C;
    color: #fff;
}

/* All Programs Page Tabs */
.all-programs p {
    font-size: 16px !important;
}

.all-programs li {
    font-size: 16px !important;
}

.all-programs .header-cta {
    justify-content: flex-start;
}

.program-tabs-description a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Tuition and Financing Options Block */
.tuition-financing-options {
    background-color: #ffffff !important;
}

.tuition-financing-options .unitek-advantage-heading {
    color: #28323C;
}

.tuition-financing-options .unitek-advantage-body-text {
    color: #28323C;
}

.tuition-financing-options .unitek-advantage-cta-button {
    background-color: #AB1F2C;
    color: #ffffff;
}

.tuition-financing-options .unitek-advantage-features {
    display: none;
}

.tuition-financing-options .unitek-advantage-left {
    gap: 1rem;
    margin-right: 8em;
}

/* Curriculum Section Dark */
.curriculum-table-dark #curriculum-sections-2 {
    background-color: #28323C !important;
}

.curriculum-table-dark #curriculum-sections-2 .bsn-curriculum-title {
    color: #ffffff !important;
}

.curriculum-table-dark #curriculum-sections-2 .bsn-curriculum-intro-col p {
    color: #ffffff !important;
}

.curriculum-table-dark #curriculum-sections-2 .bsn-curriculum-totals-label {
    color: #ffffff !important;
}

.curriculum-table-dark .bsn-curriculum-totalcredits-bar b {
    color: #ffffff !important;
}

.curriculum-table-dark .bsn-curriculum-totalcredits-bar span {
    color: #ffffff !important;
}

/* Misc Styles */
.mega-menu-header {
    display: none;
}

.border-bottom {
    border-bottom: 1px solid #ACB4BC;
    padding-bottom: 48px;
}

.unitek-advantage-body-text p {
    margin-bottom: 20px;
}

.emt-admissions-requirements .header-cta {
    justify-content: center;
}

.emt-admissions-requirements a {
    color: #ffffff;
    text-decoration: none;
}

.emt-admissions-requirements h3 {
    font-size: 40px;
    font-weight: 400;
}

.emt-admissions-requirements h4 {
    font-size: 24px;
    font-weight: 600;
}

.bls-highlight {
    font-size: 24px;
    font-weight: 400 !important;
    color: #14D0FA;
}

.dark-wave {
    margin-bottom: -1px;
}

.dark-wave img {
    width: 100%;
}

.bsn-nclex-meta {
    display: none;
}

.hero-get-started-wrapper:has(.get-started-hero-program) {
    background: linear-gradient(to bottom, transparent 40%, #F2F4F7 60%) !important;
}

.subnav-program-page .page-sub-nav-bar-container {
    box-shadow: 0 0.375rem 0.375rem -0.25rem rgba(48, 48, 48, 0.08);
}

a.bsn-card-arrow {
    display: none;
}

.bsn-feature-block {
    border-bottom: 2px solid #ACB4BC !important;
}

.get-started-dark-description {
    max-width: 65% !important;
}

.page-title-content-panel {
    flex: 0 0 50% !important;
}

.page-title-content {
    max-width: 35rem !important;
}

.bsn-nclex-label {
    font-size: 1rem !important;
    font-weight: 400 !important;
    margin-bottom: 0 !important;
}

.tabs-html p {
    font-size: 18px !important;
    line-height: 26px !important;
}

.tabs-html a {
    color: #007ACC !important;
    font-size: 18px !important;
    font-weight: 500 !important;
}

.tabs-html .program-tabs-details {
    padding: 80px 0;
}

.btn-long {
    justify-content: flex-start;
}

.btn-long a {
    width: fit-content;
    color: #fff;
}

.curriculum-no-title .bsn-curriculum-totals-label {
    display: none !important;
}

@media (min-width: 1541px) {

    .program-tabs-bar-inner,
    .program-tabs-content {
        padding-left: clamp(6rem, 15.046vw, 16.25rem) !important;
        padding-right: clamp(6rem, 15.046vw, 16.25rem) !important;
    }
}

@media screen and (min-width: 1025px) {
    .bsn-program-wrap .bsn-program-right {
        min-height: fit-content !important;
    }
}

@media (max-width: 600px) {
    .wp-block-heading.campus-name.has-large-font-size {
        font-size: 2rem !important;
        line-height: 2.5rem !important;
    }
}
}

/* Validation error tip styling */
.get-started-dark-block .wpcf7-not-valid-tip {
    color: #2bff00 !important;
}


