.elementor-991 .elementor-element.elementor-element-50e1b19:not(.elementor-motion-effects-element-type-background), .elementor-991 .elementor-element.elementor-element-50e1b19 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;background-image:url("https://abdiandabdi.co.uk/wp-content/uploads/2026/02/facade-of-a-precast-apartment-building.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-991 .elementor-element.elementor-element-50e1b19 > .elementor-background-overlay{background-color:#0C1015;opacity:0.72;mix-blend-mode:multiply;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-991 .elementor-element.elementor-element-50e1b19 > .elementor-container{max-width:700px;}.elementor-991 .elementor-element.elementor-element-50e1b19{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:150px 0px 150px 0px;}.elementor-991 .elementor-element.elementor-element-7f8f360 > .elementor-element-populated{padding:15px 0px 10px 0px;}.elementor-991 .elementor-element.elementor-element-c236bcd{--divider-border-style:dashed;--divider-color:var( --e-global-color-cad974b );--divider-border-width:1px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;--divider-element-spacing:24px;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider-separator{width:60%;margin:0 auto;margin-center:0;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider{text-align:center;padding-block-start:2px;padding-block-end:2px;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider__text{color:var( --e-global-color-primary );font-family:var( --e-global-typography-871b0cb-font-family ), Sans-serif;font-size:var( --e-global-typography-871b0cb-font-size );font-weight:var( --e-global-typography-871b0cb-font-weight );text-transform:var( --e-global-typography-871b0cb-text-transform );font-style:var( --e-global-typography-871b0cb-font-style );text-decoration:var( --e-global-typography-871b0cb-text-decoration );line-height:var( --e-global-typography-871b0cb-line-height );letter-spacing:var( --e-global-typography-871b0cb-letter-spacing );word-spacing:var( --e-global-typography-871b0cb-word-spacing );}.elementor-991 .elementor-element.elementor-element-11c7d65{padding:0px 0px 0px 0px;border-style:none;text-align:center;}.elementor-991 .elementor-element.elementor-element-11c7d65 .elementor-heading-title{color:var( --e-global-color-0db4f03 );}.elementor-991 .elementor-element.elementor-element-a9eff68{margin:32px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-991 .elementor-element.elementor-element-a9eff68 .elementor-heading-title{font-family:var( --e-global-typography-23d7ae9-font-family ), Sans-serif;font-size:var( --e-global-typography-23d7ae9-font-size );font-weight:var( --e-global-typography-23d7ae9-font-weight );text-transform:var( --e-global-typography-23d7ae9-text-transform );font-style:var( --e-global-typography-23d7ae9-font-style );text-decoration:var( --e-global-typography-23d7ae9-text-decoration );line-height:var( --e-global-typography-23d7ae9-line-height );letter-spacing:var( --e-global-typography-23d7ae9-letter-spacing );word-spacing:var( --e-global-typography-23d7ae9-word-spacing );color:var( --e-global-color-bd8ec2f );}.elementor-991 .elementor-element.elementor-element-95d6414{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-991 .elementor-element.elementor-element-60853ba{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-991 .elementor-element.elementor-element-60853ba:not(.elementor-motion-effects-element-type-background), .elementor-991 .elementor-element.elementor-element-60853ba > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F6F0;}.elementor-991 .elementor-element.elementor-element-acfd15e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-991 .elementor-element.elementor-element-19f7292{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-991 .elementor-element.elementor-element-19f7292:not(.elementor-motion-effects-element-type-background), .elementor-991 .elementor-element.elementor-element-19f7292 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9F7F4;}.elementor-991 .elementor-element.elementor-element-f4a72e3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:1024px){.elementor-991 .elementor-element.elementor-element-7f8f360 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider__text{font-size:var( --e-global-typography-871b0cb-font-size );line-height:var( --e-global-typography-871b0cb-line-height );letter-spacing:var( --e-global-typography-871b0cb-letter-spacing );word-spacing:var( --e-global-typography-871b0cb-word-spacing );}.elementor-991 .elementor-element.elementor-element-11c7d65{text-align:center;}.elementor-991 .elementor-element.elementor-element-a9eff68{text-align:center;}.elementor-991 .elementor-element.elementor-element-a9eff68 .elementor-heading-title{font-size:var( --e-global-typography-23d7ae9-font-size );line-height:var( --e-global-typography-23d7ae9-line-height );letter-spacing:var( --e-global-typography-23d7ae9-letter-spacing );word-spacing:var( --e-global-typography-23d7ae9-word-spacing );}}@media(max-width:767px){.elementor-991 .elementor-element.elementor-element-50e1b19{margin-top:-180px;margin-bottom:0px;}.elementor-991 .elementor-element.elementor-element-7f8f360 > .elementor-element-populated{margin:0px 0px -60px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:90px 20px 0px 20px;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider-separator{width:100%;}.elementor-991 .elementor-element.elementor-element-c236bcd .elementor-divider__text{font-size:var( --e-global-typography-871b0cb-font-size );line-height:var( --e-global-typography-871b0cb-line-height );letter-spacing:var( --e-global-typography-871b0cb-letter-spacing );word-spacing:var( --e-global-typography-871b0cb-word-spacing );}.elementor-991 .elementor-element.elementor-element-11c7d65{text-align:center;}.elementor-991 .elementor-element.elementor-element-a9eff68{text-align:center;}.elementor-991 .elementor-element.elementor-element-a9eff68 .elementor-heading-title{font-size:var( --e-global-typography-23d7ae9-font-size );line-height:var( --e-global-typography-23d7ae9-line-height );letter-spacing:var( --e-global-typography-23d7ae9-letter-spacing );word-spacing:var( --e-global-typography-23d7ae9-word-spacing );}}@media(max-width:1024px) and (min-width:768px){.elementor-991 .elementor-element.elementor-element-7f8f360{width:100%;}}@media(min-width:1025px){.elementor-991 .elementor-element.elementor-element-50e1b19:not(.elementor-motion-effects-element-type-background), .elementor-991 .elementor-element.elementor-element-50e1b19 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:fixed;}}




/* Start custom CSS for html, class: .elementor-element-89536b7 *//* ==========================================================================
   GLOBAL RESET & BASE STYLES
   ========================================================================== */
.careers-intro-section *,
.careers-process-section * {
    box-sizing: border-box;
}

/* ==========================================================================
   CAREERS INTRO SECTION (COMPACT & IMAGE FIXED)
   ========================================================================== */
.careers-intro-section {
    background-color: #ffffff;
    padding: 60px 20px;
    font-family: Arial, sans-serif;
}

.careers-intro-container {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center; /* FIXED: Keeps both columns vertically centered without stretching the image box */
    justify-content: space-between;
    gap: 50px;
}

/* Left Column Content */
.careers-intro-content {
    flex: 1.2;
    max-width: 650px;
}

.careers-tagline {
    color: #E27425;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    display: block;
    margin-bottom: 8px;
}

.careers-heading {
    font-size: 34px;
    color: #11161B;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 14px;
}

.careers-text {
    font-size: 15px;
    color: #555555;
    line-height: 1.5;
    margin-bottom: 24px;
}

/* Services Capsules Grid */
.careers-tags-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.career-tag {
    background-color: #F9F6F0;
    color: #11161B;
    border: 1px solid #E5E0D8;
    padding: 8px 14px;
    font-size: 12.5px;
    font-weight: 600;
    border-radius: 4px;
    transition: all 0.3s ease;
    display: inline-block;
}

.career-tag:hover {
    border-color: #E27425;
    color: #E27425;
    background-color: #ffffff;
    transform: translateY(-1px);
}

/* Right Column Image Component */
.careers-intro-image-box {
    flex: 0.8;
    position: relative;
    max-width: 460px;
    width: 100%;
    /* FIXED: This forces the container box to respect the natural landscape ratio of your image */
    display: block; 
}

.careers-intro-img {
    width: 100%;
    height: auto; /* FIXED: Let the image scale naturally based on its width */
    object-fit: contain;
    border-radius: 4px;
    position: relative;
    z-index: 2;
    display: block;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
}

/* Visual accent box matching home template */
.image-accent-border {
    position: absolute;
    width: 100%;
    height: 100%; /* FIXED: Now mirrors the exact layout height of the image frame seamlessly */
    border: 2px solid #E27425;
    top: 12px;
    left: 12px;
    border-radius: 4px;
    z-index: 1;
}

/* ==========================================================================
   RESPONSIVE BREAKPOINTS
   ========================================================================== */
@media (max-width: 992px) {
    .careers-intro-section {
        padding: 40px 15px;
    }

    .careers-intro-container {
        flex-direction: column;
        align-items: flex-start;
        gap: 35px;
    }
    
    .careers-intro-content, 
    .careers-intro-image-box {
        max-width: 100%;
        flex: none;
    }
    
    .careers-heading {
        font-size: 28px;
    }

    .careers-tags-grid {
        gap: 6px;
    }

    .career-tag {
        padding: 6px 12px;
        font-size: 12px;
    }
    
    .image-accent-border {
        display: none; /* Hide standard offset on small screen displays */
    }
}/* End custom CSS */


/* Start custom CSS for html, class: .elementor-element-70e45f7 *//* --- Section Container (Using the Warm Cream background) --- */
.careers-pillars-section {
    background-color: #F9F6F0; /* Warm Cream from homepage styling */
    padding: 100px 20px;
    font-family: Arial, sans-serif;
}

.careers-pillars-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* --- Section Headers --- */
.pillars-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px auto;
}

.pillars-subtitle {
    color: #E27425; /* Corporate Orange */
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: block;
    margin-bottom: 12px;
}

.pillars-title {
    font-size: 38px;
    color: #11161B; /* Dark Charcoal */
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 15px;
}

.pillars-lead {
    font-size: 16px;
    color: #555555;
    line-height: 1.6;
}

/* --- Flexible Pillars Grid Architecture --- */
.pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* Specific adjustment to center-align the bottom row if there are 5 items */
.pillars-grid > :nth-child(4) {
    grid-column: span 1;
}

/* --- Individual Pillar Floating Cards --- */
.pillar-card {
    background-color: #ffffff;
    border: 1px solid #E5E0D8;
    padding: 40px 30px;
    border-radius: 4px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.pillar-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(17, 22, 27, 0.08);
    border-color: #E27425;
}

/* --- Card Content Elements --- */
.pillar-icon-box {
    background-color: #E27425; /* Small orange box matching home page layout */
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    margin-bottom: 25px;
}

.pillar-number {
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
}

.pillar-card-title {
    font-size: 20px;
    color: #11161B;
    font-weight: 700;
    margin-bottom: 12px;
}

.pillar-card-text {
    font-size: 15px;
    color: #666666;
    line-height: 1.6;
}

/* --- Grid Breakpoint Adjustments --- */
@media (max-width: 992px) {
    .pillars-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .pillars-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .pillars-title {
        font-size: 32px;
    }
    .pillar-card {
        padding: 30px 25px;
    }
}/* End custom CSS */


/* Start custom CSS for html, class: .elementor-element-538eab5 *//* --- Section Container --- */
.careers-process-section {
    background-color: #ffffff;
    padding: 80px 20px;
    font-family: Arial, sans-serif;
    box-sizing: border-box;
}

.careers-process-section * {
    box-sizing: border-box;
}

.careers-process-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* --- Section Headers --- */
.process-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px auto;
}

.process-subtitle {
    color: #E27425;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    display: block;
    margin-bottom: 12px;
}

.process-title {
    font-size: 36px;
    color: #11161B;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 15px;
}

.process-lead {
    font-size: 16px;
    color: #555555;
    line-height: 1.6;
}

/* --- Desktop Layout (Horizontal Track) --- */
.process-timeline-track {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    position: relative;
    padding-top: 10px;
}

.timeline-step {
    flex: 1;
    text-align: center;
    position: relative;
}

.step-node-container {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-bottom: 25px;
}

.step-number-circle {
    width: 50px;
    height: 50px;
    background-color: #ffffff;
    border: 2px solid #E5E0D8;
    color: #11161B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 700;
    position: relative;
    z-index: 3;
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Scroll Active State Modifications */
.timeline-step.is-active .step-number-circle {
    background-color: #E27425;
    border-color: #E27425;
    color: #ffffff;
    box-shadow: 0 0 20px rgba(226, 116, 37, 0.45);
}

/* Desktop Horizontal Line */
.step-connecting-line {
    position: absolute;
    height: 0px;
    border-top: 2px dashed #E5E0D8;
    width: 100%;
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1;
    transition: border-color 0.5s ease;
}

.timeline-step.is-active .step-connecting-line {
    border-color: #E27425;
}

.final-step .step-connecting-line {
    display: none;
}

.step-title {
    font-size: 18px;
    color: #11161B;
    font-weight: 700;
    margin-bottom: 10px;
}

.step-text {
    font-size: 14px;
    color: #666666;
    line-height: 1.6;
    padding: 0 10px;
    margin: 0;
}

/* --- Mobile View Layout (Pulls text cleanly up into circle baselines) --- */
@media (max-width: 992px) {
    .process-timeline-track {
        flex-direction: column;
        gap: 0;
        align-items: flex-start;
        max-width: 600px;
        margin: 0 auto;
    }

    .timeline-step {
        text-align: left;
        display: flex;
        gap: 25px;
        align-items: flex-start;
        width: 100%;
        padding-bottom: 60px;
        position: relative;
    }
    
    .timeline-step.final-step {
        padding-bottom: 0;
    }

    .step-node-container {
        margin-bottom: 0;
        flex-shrink: 0;
        height: 50px;
        position: static;
    }

    .step-connecting-line {
        width: 0px;
        height: 100%;
        border-left: 2px dashed #E5E0D8;
        border-top: none;
        left: 25px;
        top: 50px;
        transform: translateX(-50%);
        z-index: 1;
    }

    .step-content {
        padding-top: 2px; /* Fixed: Completely aligns textual baseline positions to match circle vectors */
    }

    .step-title {
        margin-bottom: 6px;
    }
    
    .step-text {
        padding: 0;
    }
}

@media (max-width: 768px) {
    .process-header {
        margin-bottom: 40px;
    }
    .process-title {
        font-size: 30px;
    }
    .careers-process-section {
        padding: 60px 15px;
    }
}/* End custom CSS */


/* Start custom CSS for html, class: .elementor-element-5226bda *//* ==========================================================================
   GLOBAL CORE CONTAINER CONFIGURATION
   ========================================================================== */

.expertise-categories-section {
    background: #FAF8F5;
    padding: 120px 24px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    overflow: hidden;
}

.expertise-categories-section *,
.expertise-categories-section *::before,
.expertise-categories-section *::after {
    box-sizing: border-box;
}

.expertise-container {
    max-width: 1280px;
    margin: 0 auto;
}

/* ==========================================================================
   SECTION HEADER
   ========================================================================== */

.expertise-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 70px;
}

.expertise-subtitle {
    display: block;
    margin-bottom: 16px;
    color: #EC7427;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2.5px;
    text-transform: uppercase;
}

.expertise-title {
    margin: 0 0 20px;
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -.5px;
    color: #0F1318;
}

.expertise-lead {
    font-size: 17px;
    line-height: 1.65;
    color: #4A525A;
}

/* ==========================================================================
   GRID
   ========================================================================== */

.expertise-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
}

/* ==========================================================================
   CARD
   ========================================================================== */

.expertise-card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    aspect-ratio: 4 / 5;
    overflow: hidden;
    border-radius: 20px;
    background: #11161B;
    border: 1px solid rgba(15,19,24,.05);
    box-shadow: 0 10px 30px rgba(15,19,24,.05);
    cursor: pointer;

    opacity: 0;
    transform: translateY(35px);

    transition:
        transform .7s cubic-bezier(.16,1,.3,1),
        opacity .7s ease,
        box-shadow .35s ease;
}

.card-media-wrapper {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.expertise-card-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .7s cubic-bezier(.16,1,.3,1);
}

.expertise-card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(15,19,24,.08) 0%,
        rgba(15,19,24,.45) 40%,
        rgba(15,19,24,.82) 72%,
        rgba(15,19,24,.98) 100%
    );
}

/* ==========================================================================
   CARD CONTENT
   ========================================================================== */

.expertise-card-content {
    position: relative;
    z-index: 5;
    padding: 28px;
}

/* ==========================================================================
   CARD TITLES (ORANGE)
   ========================================================================== */

.expertise-card .card-title,
.expertise-card h3,
.expertise-card h3.card-title,
.expertise-card-content .card-title {
    margin: 0 0 10px;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.2px;

    color: #EC7427 !important;
}

/* Keep title orange on hover */

.expertise-card:hover .card-title,
.expertise-card:hover h3 {
    color: #EC7427 !important;
}

/* ==========================================================================
   DESCRIPTION
   ========================================================================== */

.card-description {
    margin: 0;
    font-size: 13.5px;
    line-height: 1.55;
    color: #E2E8F0;
    opacity: .95;
}

/* ==========================================================================
   HOVER EFFECT
   ========================================================================== */

.expertise-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(15,19,24,.18);
}

.expertise-card:hover .expertise-card-bg {
    transform: scale(1.08);
}

.expertise-card.card-is-visible {
    opacity: 1;
    transform: translateY(0);
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width:1200px){

    .expertise-card-grid{
        grid-template-columns:repeat(3,1fr);
        gap:24px;
    }

    .expertise-title{
        font-size:36px;
    }

}

@media (max-width:992px){

    .expertise-card-grid{
        grid-template-columns:repeat(2,1fr);
        gap:20px;
    }

    .expertise-card-content{
        padding:24px;
    }

    .expertise-card .card-title{
        font-size:19px;
    }

}

@media (max-width:576px){

    .expertise-card-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .expertise-card{
        aspect-ratio:4/4.8;
    }

    .expertise-title{
        font-size:30px;
    }

    .expertise-categories-section{
        padding:70px 16px;
    }

}/* End custom CSS */


/* Start custom CSS for html, class: .elementor-element-d7e3e79 *//* ==========================================================================
   CAREERS APPLICATION FORM SECTION
   ========================================================================== */
.careers-apply-section {
    background-color: #FFFFFF; /* Exact light baseline tone from your theme */
    padding: 100px 24px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    box-sizing: border-box;
    overflow: hidden; /* Fixed syntax error (overflow-hidden: hidden changed to overflow: hidden) */
}

.careers-apply-section * {
    box-sizing: border-box;
}

.apply-container {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 70px;
    align-items: start;
}

/* ==========================================================================
   LEFT COLUMN: BRAND TYPOGRAPHY
   ========================================================================== */
.apply-info-side {
    position: -webkit-sticky;
    position: sticky;
    top: 60px; /* Pins cleanly below header navigation when scrolling */
    padding-bottom: 20px;
}

.apply-subtitle {
    color: #EC7427 !important; /* Your specific orange choice */
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    display: block;
    margin-bottom: 16px;
}

.apply-title {
    font-size: 40px;
    color: #0F1318; /* Near-black corporate headers */
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin: 0 0 24px 0;
}

.apply-text {
    font-size: 16px;
    color: #4A525A;
    line-height: 1.65;
    margin: 0 0 35px 0;
}

/* Notice box styling */
.apply-meta-note {
    display: flex;
    gap: 16px;
    background: rgba(236, 116, 39, 0.05);
    border-left: 3px solid #EC7427;
    padding: 20px;
    border-radius: 4px 12px 12px 4px;
}

.note-icon-wrapper {
    flex-shrink: 0;
    margin-top: 2px;
}

.note-text {
    font-size: 14px;
    color: #4A525A;
    line-height: 1.5;
    margin: 0;
}

.note-text strong {
    color: #0F1318;
}

/* ==========================================================================
   RIGHT COLUMN: CALIBRATED FIELD FORM WRAPPER (Mobile Fixed)
   ========================================================================== */
.apply-form-side {
    width: 100%;
}

.form-wrapper-card {
    background: #FFFFFF;
    border: 1px solid rgba(15, 19, 24, 0.06);
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(15, 19, 24, 0.02);
}

/* Hide raw breaks generated natively by WordPress formatting filters */
.form-wrapper-card br {
    display: none !important;
}

/* 
   FIXES FIELD ALIGNMENT AND REMOVES THE DOUBLE SPACING ISSUES
   Targeting the structural row container directly to control uniform grouping.
*/
.form-wrapper-card p {
    display: flex !important;
    flex-direction: column !important;
    margin: 0 0 36px 0 !important; /* Increased slightly to accommodate dynamic error notices gracefully */
    padding: 0 !important;
    width: 100%;
    position: relative; /* Base anchor context for error positions */
}

.form-wrapper-card p:last-child {
    margin-bottom: 0 !important;
}

/* Neutralize the default inner field spans to prevent nested margin stackups */
.form-wrapper-card .wpcf7-form-control-wrap {
    display: block !important;
    margin: 0 !important; 
    padding: 0 !important;
    width: 100% !important;
}

/* Field Labels - Firmly attached to the field box directly beneath it with precise spacing */
.form-wrapper-card label {
    display: block !important;
    font-size: 14px;
    color: #0F1318;
    font-weight: 700;
    margin: 0 0 12px 0 !important; /* REVISED: Adds just a little extra clean breathing space above the field box */
    padding: 0 !important;
    text-align: left;
}

/* Input Fields (Text, Email, Telephone, Select Menus, Textarea) */
.form-wrapper-card input[type="text"],
.form-wrapper-card input[type="email"],
.form-wrapper-card input[type="tel"],
.form-wrapper-card select,
.form-wrapper-card textarea {
    width: 100% !important;
    max-width: 100% !important;
    background-color: #FAF8F5; /* Matches layout canvas background tone */
    color: #0F1318;
    border: 1px solid rgba(15, 19, 24, 0.08);
    border-radius: 8px;
    padding: 14px 16px;
    font-size: 15px;
    font-family: inherit;
    transition: border-color 0.25s ease, box-shadow 0.25s ease, background-color 0.25s ease;
    outline: none;
    margin: 0 !important;
}

/* Interactive focus targets */
.form-wrapper-card input:focus,
.form-wrapper-card select:focus,
.form-wrapper-card textarea:focus {
    border-color: #EC7427;
    box-shadow: 0 0 0 3px rgba(236, 116, 39, 0.12);
    background-color: #FFFFFF;
}

.form-wrapper-card textarea {
    min-height: 130px;
    resize: vertical;
}

/* Light placeholder calibration styling */
.form-wrapper-card ::placeholder {
    color: #94A3B8;
    opacity: 1;
}

/* ==========================================================================
   CONTACT FORM 7 VALIDATION ERROR MESSAGES
   ========================================================================== */
.form-wrapper-card .wpcf7-not-valid-tip {
    font-size: 13px !important;
    color: #DC2626 !important; /* Clean alert red */
    font-weight: 500;
    margin-top: 6px !important;
    display: block !important;
    text-align: left;
}

/* ==========================================================================
   SUBMIT BUTTON ACTION BUTTON
   ========================================================================== */
.form-wrapper-card input[type="submit"] {
    width: 100%;
    background-color: #0F1318; /* Dark premium finish */
    color: #FFFFFF;
    border: none;
    border-radius: 8px;
    padding: 16px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    margin-top: 6px;
    transition: background-color 0.2s ease, transform 0.15s ease;
}

.form-wrapper-card input[type="submit"]:hover {
    background-color: #EC7427; /* Transitions to signature theme orange */
}

.form-wrapper-card input[type="submit"]:active {
    transform: scale(0.99);
}

/* ==========================================================================
   RESPONSIVE DESIGN SYSTEM (COMPACT MOBILE OVERRIDES)
   ========================================================================== */
@media (max-width: 992px) {
    .apply-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .apply-info-side {
        position: static; /* Disables sticky anchoring for linear stack scrolls */
    }
    .apply-title {
        font-size: 32px;
    }
}

@media (max-width: 576px) {
    .careers-apply-section {
        padding: 40px 16px; /* Optimized outer safety padding */
    }
    .form-wrapper-card {
        padding: 20px 16px; /* Wider content field area availability on phone display */
        border-radius: 14px;
    }
    .apply-title {
        font-size: 26px;
        margin-bottom: 16px;
    }
    .apply-text {
        font-size: 15px;
        margin-bottom: 24px;
    }
    .form-wrapper-card p {
        margin: 0 0 30px 0 !important; /* Balanced layout spacing for errors on mobile screens */
    }
    .form-wrapper-card label {
        font-size: 13.5px;
        margin-bottom: 10px !important; /* REVISED: Adds clean breathing room for labels on mobile screen widths */
    }
}/* End custom CSS */


