/******* Do not edit this file *******
Woody Code Snippets CSS and JS
Saved: Nov 09 2026 | 12:15:07 */
/* ===== JOB POSTING CARDS – match .jpc-pos design ===== */

/* Card */
body .elementor-element.job-posting {
    --padding-top: 0px !important; --padding-right: 0px !important;
    --padding-bottom: 0px !important; --padding-left: 0px !important;
    display: block !important;
    width: 100% !important;
    max-width: 1012px !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 23px !important;
    background: #FFFFFF !important;
    border: 1px solid #A9ADBE !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    transition: border-color .3s, box-shadow .3s !important;
}
body .elementor-element.job-posting + .elementor-element.job-posting {
    margin-top: 20px !important;
}
body .elementor-element.job-posting:hover {
    border-color: #36CE6F !important;
    box-shadow: 0 12px 24px 0 rgba(0,0,0,.08) !important;
}
body .elementor-element.job-posting * { box-sizing: border-box !important; }

/* Grid: icon | title + meta | button */
body .elementor-element.job-posting > .e-con-inner {
    display: grid !important;
    grid-template-columns: 64px minmax(0, 1fr) auto !important;
    grid-template-areas: "icon title btn" "icon meta btn" !important;
    align-content: center !important;
    align-items: center !important;
    column-gap: 25px !important;
    row-gap: 6px !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Flatten Elementor wrapper so its children join the grid */
body .elementor-element.job-posting > .e-con-inner > .e-con { display: contents !important; }

/* Briefcase icon circle */
body .elementor-element.job-posting > .e-con-inner::before {
    content: "" !important;
    grid-area: icon !important;
    display: block !important;
    width: 64px !important;
    height: 64px !important;
    border-radius: 50% !important;
    background: #36CE6F url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 12h.01'/%3E%3Cpath d='M16 6V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v2'/%3E%3Cpath d='M22 13a18.15 18.15 0 0 1-20 0'/%3E%3Crect width='20' height='14' x='2' y='6' rx='2'/%3E%3C/svg%3E") center / 30px 30px no-repeat !important;
}

/* Hide the empty spare container (only the one holding the title stays) */
body .elementor-element.job-posting > .e-con-inner > .e-con > .e-con:not(:has(.elementor-widget-image-box)) {
    display: none !important;
}

/* Title */
body .elementor-element.job-posting > .e-con-inner > .e-con > .e-con:has(.elementor-widget-image-box) {
    grid-area: title !important;
    align-self: end !important;
    display: block !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}
body .elementor-element.job-posting .e-con:has(.elementor-widget-image-box) > .e-con-inner,
body .elementor-element.job-posting .elementor-widget-image-box,
body .elementor-element.job-posting .elementor-widget-image-box .elementor-widget-container,
body .elementor-element.job-posting .elementor-image-box-wrapper,
body .elementor-element.job-posting .elementor-image-box-content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}
body .elementor-element.job-posting .elementor-image-box-title,
body .elementor-element.job-posting .elementor-image-box-title a {
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Arimo", sans-serif !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    line-height: 33.6px !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    color: #073A37 !important;
    text-decoration: none !important;
    text-align: left !important;
}

/* "Full Job Posting (PDF)" line */
body .elementor-element.job-posting .elementor-widget-text-editor {
    grid-area: meta !important;
    align-self: start !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
body .elementor-element.job-posting .elementor-widget-text-editor .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
}
body .elementor-element.job-posting .elementor-widget-text-editor p {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Inter", sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 24px !important;
    color: #6C6C6C !important;
    text-align: left !important;
}
body .elementor-element.job-posting .elementor-widget-text-editor p::before {
    content: "" !important;
    flex: 0 0 18px !important;
    width: 18px !important;
    height: 18px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2336CE6F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z'/%3E%3Cpath d='M14 2v5a1 1 0 0 0 1 1h5'/%3E%3Cpath d='M10 9H8'/%3E%3Cpath d='M16 13H8'/%3E%3Cpath d='M16 17H8'/%3E%3C/svg%3E") center / 18px 18px no-repeat !important;
}

/* Button */
body .elementor-element.job-posting .elementor-widget-button {
    grid-area: btn !important;
    align-self: center !important;
    justify-self: end !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}
body .elementor-element.job-posting .elementor-widget-button .elementor-widget-container,
body .elementor-element.job-posting .elementor-button-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}
body .elementor-element.job-posting .elementor-button {
    display: inline-block !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 50.5px !important;
    background: #36CE6F !important;
    border: 0 !important;
    border-radius: 5px !important;
    box-shadow: 0 12px 24px 0 rgba(0,0,0,.12) !important;
    font-family: "Arimo", sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    line-height: 32px !important;
    letter-spacing: 1px !important;
    text-transform: none !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: filter .3s !important;
}
body .elementor-element.job-posting .elementor-button:hover {
    background: #36CE6F !important;
    color: #FFFFFF !important;
    filter: brightness(.94) !important;
}
body .elementor-element.job-posting .elementor-button-content-wrapper,
body .elementor-element.job-posting .elementor-button-text {
    display: inline !important;
    padding: 0 !important;
    font: inherit !important;
    letter-spacing: inherit !important;
    color: inherit !important;
}

/* Tablet */
@media (max-width: 1025px) {
    body .elementor-element.job-posting .elementor-button { padding: 14px 32px !important; }
}

/* Mobile: stacked + centered */
@media (max-width: 769px) {
    body .elementor-element.job-posting > .e-con-inner {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas: "icon" "title" "meta" "btn" !important;
        row-gap: 0 !important;
        justify-items: center !important;
        text-align: center !important;
    }
    body .elementor-element.job-posting > .e-con-inner::before { justify-self: center !important; }
    body .elementor-element.job-posting > .e-con-inner > .e-con > .e-con:has(.elementor-widget-image-box) {
        width: 100% !important;
        margin-top: 16px !important;
    }
    body .elementor-element.job-posting .elementor-image-box-content,
    body .elementor-element.job-posting .elementor-image-box-title,
    body .elementor-element.job-posting .elementor-image-box-title a { text-align: center !important; }
    body .elementor-element.job-posting .elementor-widget-text-editor { width: 100% !important; margin-top: 6px !important; }
    body .elementor-element.job-posting .elementor-widget-text-editor p { justify-content: center !important; text-align: center !important; }
    body .elementor-element.job-posting .elementor-widget-button { justify-self: center !important; margin-top: 16px !important; }
    body .elementor-element.job-posting .elementor-button-wrapper { text-align: center !important; }
    body .elementor-element.job-posting .elementor-button { padding: 14px 50.5px !important; }
}

@media (max-width: 359px) {
    body .elementor-element.job-posting .elementor-image-box-title,
    body .elementor-element.job-posting .elementor-image-box-title a { font-size: 24px !important; line-height: 29px !important; }
    body .elementor-element.job-posting .elementor-button { padding: 14px 28px !important; }
}
