
/* Employment Hero Jobs Plugin - Custom Card Style */

.eh-jobs-container {
    margin: 20px 0;
    width: 100%;
}

.eh-jobs-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 10px 0;
}

@media (max-width: 900px) {
    .eh-jobs-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

.eh-job-card {
    background: #bbc7d6 !important;
    color: #0D294B !important;
    border: none;
    border-radius: 4px;
    box-shadow: none;
    padding: 40px 38px 44px 38px;
    display: flex;
    flex-direction: column;
    position: relative;
    font-family: "National Book", Arial, Helvetica, sans-serif;
}

/* All inner elements and icons inherit card color */
.eh-job-card *,
.eh-job-card svg {
    color: #0D294B !important;
    fill: #0D294B !important;
}

.eh-job-header {
    margin-bottom: 26px;
    padding-bottom: 0;
    border-bottom: none;
}

/* Title is large and elegant */
.eh-job-title {
    font-size: 2.65rem;
    line-height: 1.1;
    font-weight: 600;
    margin: 0 0 28px 0;
    color: #0D294B !important;
    font-family: inherit;
    letter-spacing: normal;
}

/* Team/Department */
.eh-job-department {
    display: block;
    color: #223661;
    font-size: 0.85rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    margin-bottom: 2rem;
    font-weight: 400;
}

/* Bullet-list job details */
.eh-job-details {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 30px;
    font-size: 1.13em;
    color: #0D294B;
    font-family: inherit;
}

.eh-job-location,
.eh-job-type,
.eh-job-salary,
.eh-job-experience,
.eh-job-remote,
.eh-job-industry,
.eh-job-date {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1rem;
    color: #0D294B !important;
}

.eh-job-location svg,
.eh-job-type svg,
.eh-job-salary svg,
.eh-job-experience svg,
.eh-job-remote svg,
.eh-job-industry svg,
.eh-job-date svg {
    flex-shrink: 0;
    color: #0D294B !important;
    fill: #0D294B !important;
    opacity: 0.7;
}

.eh-job-description {
    color: #0D294B !important;
    font-size: 1.18rem;
    font-family: inherit;
    line-height: 1.47;
    margin: 0 0 44px 0;
}

/* Footer bar matches sample (not floating, not round, no shadow) */
.eh-job-footer {
    margin-top: auto;
    border-top: 1px solid #879fbf33;
    padding-top: 27px;
    padding-bottom: 0;
    display: flex;
    justify-content: flex-start;
}

/* Link-style Apply Now */
.eh-job-apply-btn {
    background: none;
    border: none;
    color: #0D294B;
    font-size: 1.11rem;
    font-family: inherit;
    font-weight: 500;
    padding: 0;
    margin: 0;
    text-transform: none;
    box-shadow: none;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    transition: color 0.15s;
    text-decoration: none;
    outline: none;
    min-width: 0;
    height: unset;
    letter-spacing: 0.02em;
}

.eh-job-apply-btn svg {
    transition: transform 0.2s;
}

.eh-job-apply-btn:hover,
.eh-job-apply-btn:focus {
    color: #0a2041;
    text-decoration: underline;
}
.eh-job-apply-btn:hover svg,
.eh-job-apply-btn:focus svg {
    transform: translateX(2px);
}

/* Error and empty states */
.eh-jobs-error {
    background: #fee2e2;
    color: #dc2626;
    padding: 16px;
    border-radius: 8px;
    text-align: center;
    margin: 20px 0;
    font-family: inherit;
}

.eh-jobs-empty {
    background: #f6f9fb;
    color: #18304b;
    padding: 18px;
    border-radius: 8px;
    text-align: center;
    margin: 24px 0;
    font-size: 1.1em;
    font-family: inherit;
}

/* Responsive Card */
@media (max-width: 768px) {
    .eh-job-card {
        border-radius: 7px;
        padding: 17px 6px 30px 6px;
    }
    .eh-job-title {
        font-size: 1.28rem;
        margin-bottom: 16px;
    }
    .eh-job-description {
        font-size: 1rem;
        margin-bottom: 18px;
    }
    .eh-job-footer {
        padding-top: 16px;
    }
}
