
.elyjobs-page,.elyjob-single{--ely-ink:#17202b;--ely-muted:#69727d;--ely-line:#dfe4e8;--ely-soft:#f5f7f8;--ely-accent:#173f5f;color:var(--ely-ink);font-family:inherit}
.elyjobs-shell{width:min(1180px,calc(100% - 48px));margin:0 auto}
.elyjobs-hero{padding:78px 0 54px;background:#fff;border-bottom:1px solid var(--ely-line)}
.elyjobs-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;margin:0 0 14px;color:var(--ely-accent)}
.elyjobs-hero h1,.elyjob-header h1{font-size:clamp(38px,5vw,68px);line-height:1.03;letter-spacing:-.03em;margin:0 0 18px;font-weight:650}
.elyjobs-hero p{max-width:720px;font-size:18px;line-height:1.65;color:var(--ely-muted);margin:0}
.elyjobs-search{padding:40px 0 80px;background:#fff}
.elyjobs-filter-form{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:16px;align-items:end;padding-bottom:28px;border-bottom:1px solid var(--ely-line)}
.elyjobs-filter-form label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}
.elyjobs-filter-form input,.elyjobs-filter-form select,.elyjob-form input,.elyjob-form textarea{width:100%;box-sizing:border-box;border:1px solid #cfd6dc;background:#fff;padding:13px 14px;font:inherit;color:var(--ely-ink);border-radius:2px}
.elyjobs-filter-form input:focus,.elyjobs-filter-form select:focus,.elyjob-form input:focus,.elyjob-form textarea:focus{outline:2px solid #8aa6bb;outline-offset:1px}
.elyjobs-filter-actions{grid-column:1/-1;display:flex;gap:18px;align-items:center;margin-top:2px}
.elyjobs-filter-actions button,.elyjobs-primary{display:inline-flex;align-items:center;justify-content:center;background:var(--ely-accent);color:#fff!important;border:0;text-decoration:none;padding:14px 22px;font-weight:700;cursor:pointer;border-radius:2px}
.elyjobs-filter-actions a{color:var(--ely-ink);font-weight:600}
.elyjobs-results-head{padding:26px 0 10px;color:var(--ely-muted)}
.elyjobs-list{border-top:1px solid var(--ely-line)}
.elyjobs-item{display:flex;justify-content:space-between;gap:30px;padding:30px 0;border-bottom:1px solid var(--ely-line)}
.elyjobs-item h2,.elyjobs-item h3{font-size:25px;margin:0 0 8px;letter-spacing:-.015em}.elyjobs-item h3{font-size:21px}
.elyjobs-item h2 a,.elyjobs-item h3 a{color:var(--ely-ink);text-decoration:none}
.elyjobs-meta{color:var(--ely-muted);font-size:14px;margin:5px 0 12px}
.elyjobs-item p{margin:0;line-height:1.6;color:#4b5560;max-width:760px}
.elyjobs-item-side{display:flex;min-width:190px;flex-direction:column;align-items:flex-end;justify-content:space-between;color:var(--ely-muted);font-size:13px}
.elyjobs-view{font-weight:700;color:var(--ely-accent);text-decoration:none;font-size:15px}
.elyjobs-empty{padding:45px 0}
.elyjob-single{padding:36px 0 90px;background:#fff}
.elyjobs-back{display:inline-block;margin-bottom:42px;color:var(--ely-muted);text-decoration:none}
.elyjob-header{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;padding-bottom:44px;border-bottom:1px solid var(--ely-line)}
.elyjob-header h1{font-size:clamp(36px,4.7vw,62px);max-width:850px}
.elyjob-posted{font-size:13px;color:var(--ely-muted);margin:14px 0 0}
.elyjob-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,.8fr);gap:80px;padding:58px 0}
.elyjob-section{padding-bottom:38px;margin-bottom:38px;border-bottom:1px solid var(--ely-line)}
.elyjob-section h2,.elyjob-apply h2,.elyjob-related h2{font-size:28px;margin:0 0 18px}
.elyjob-prose{font-size:17px;line-height:1.8;color:#303a44}.elyjob-prose p{margin:0 0 18px}.elyjob-prose ul{padding-left:22px}.elyjob-prose li{margin-bottom:9px}
.elyjob-sidebar{border-left:1px solid var(--ely-line);padding-left:30px}
.elyjob-side-block,.elyjob-consultant{padding:0 0 26px;margin-bottom:26px;border-bottom:1px solid var(--ely-line)}
.elyjob-side-block span,.elyjob-consultant>span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--ely-muted);margin-bottom:8px}
.elyjob-side-block strong{font-size:20px}.elyjob-consultant h3{font-size:22px;margin:4px 0}.elyjob-consultant p{margin:7px 0}
.elyjobs-notice{margin-top:30px;padding:20px 22px;background:var(--ely-soft);border-left:3px solid var(--ely-accent)}
.elyjob-apply{display:grid;grid-template-columns:.8fr 1.6fr;gap:70px;padding:58px 0;border-top:1px solid var(--ely-line)}
.elyjob-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.elyjob-field label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}.elyjob-field-full{grid-column:1/-1}
.elyjob-consent{display:flex!important;gap:10px;align-items:flex-start;font-weight:500!important;line-height:1.5}.elyjob-consent input{width:auto!important;margin-top:4px}
.elyjobs-success{padding:24px;background:var(--ely-soft)}
.elyjob-related{padding-top:52px;border-top:1px solid var(--ely-line)}
@media(max-width:960px){.elyjobs-filter-form{grid-template-columns:1fr 1fr}.elyjobs-search-main{grid-column:1/-1}.elyjob-layout{grid-template-columns:1fr;gap:30px}.elyjob-sidebar{border-left:0;border-top:1px solid var(--ely-line);padding:30px 0 0}.elyjob-apply{grid-template-columns:1fr;gap:28px}}
@media(max-width:640px){.elyjobs-shell{width:min(100% - 30px,1180px)}.elyjobs-hero{padding:52px 0 38px}.elyjobs-filter-form{grid-template-columns:1fr}.elyjobs-search-main{grid-column:auto}.elyjobs-filter-actions{grid-column:auto;align-items:flex-start;flex-direction:column}.elyjobs-item{flex-direction:column}.elyjobs-item-side{min-width:0;align-items:flex-start;gap:16px}.elyjob-header{align-items:flex-start;flex-direction:column}.elyjob-form{grid-template-columns:1fr}.elyjob-field-full{grid-column:auto}.elyjob-apply{padding:42px 0}}


/* V3 — simplified public jobs listing: no search/filter bar */
.elyjobs-listing-section{
    padding:34px 0 80px;
    background:#fff;
}
.elyjobs-listing-section .elyjobs-results-head{
    padding:0 0 22px;
    margin:0;
    color:var(--ely-muted);
    font-size:15px;
}
.elyjobs-listing-section .elyjobs-results-head strong{
    color:var(--ely-ink);
}
.elyjobs-filter-form,
.elyjobs-search-main,
.elyjobs-filter-actions{
    display:none !important;
}
@media(max-width:640px){
    .elyjobs-listing-section{padding:26px 0 60px}
}


/* V4 — opportunity listing based on supplied Elysearch archive layout */
.elyjobs-legacy-list{
    border-top:1px solid var(--ely-line);
}
.elyjobs-legacy-item{
    display:grid;
    grid-template-columns:305px minmax(0,1fr);
    gap:34px;
    padding:30px 0;
    border-bottom:1px solid var(--ely-line);
    align-items:start;
}
.elyjobs-legacy-thumb{
    display:block;
    width:100%;
    aspect-ratio:270/203;
    overflow:hidden;
    background:#f2f2f2;
}
.elyjobs-legacy-thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.elyjobs-legacy-content{
    padding-top:5px;
}
.elyjobs-legacy-meta{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    min-height:28px;
    padding-bottom:18px;
    margin-bottom:18px;
    border-bottom:1px solid #e7eaed;
    color:#7b838a;
    font-size:13px;
}
.elyjobs-legacy-meta strong{
    color:#27313a;
    font-weight:600;
}
.elyjobs-author-dot{
    width:22px;
    height:22px;
    border-radius:50%;
    background:#d9dee2;
    display:inline-block;
}
.elyjobs-meta-sep{
    color:#d6dade;
}
.elyjobs-legacy-content h2{
    margin:0 0 16px;
    font-size:21px;
    line-height:1.35;
    font-weight:500;
    text-transform:uppercase;
    letter-spacing:.025em;
}
.elyjobs-legacy-content h2 a{
    color:#3c454c;
    text-decoration:none;
}
.elyjobs-legacy-content p{
    display:inline;
    margin:0;
    font-size:15px;
    line-height:1.7;
    color:#303840;
}
.elyjobs-readmore{
    display:inline;
    margin-left:7px;
    color:#b55d3d;
    text-transform:uppercase;
    text-decoration:none;
    font-size:12px;
    font-weight:600;
}
.elyjobs-readmore:hover,
.elyjobs-legacy-content h2 a:hover{
    text-decoration:underline;
}
@media(max-width:780px){
    .elyjobs-legacy-item{
        grid-template-columns:1fr;
        gap:20px;
    }
    .elyjobs-legacy-thumb{
        max-width:420px;
    }
}


/* V5 — homepage Selected Opportunities shortcode */
.elyhome-jobs{
    background:#fff;
    padding:46px 0 74px;
    color:#111;
}
.elyhome-jobs-shell{
    width:min(1210px,calc(100% - 48px));
    margin:0 auto;
    display:grid;
    grid-template-columns:280px minmax(0,1fr);
    gap:52px;
    align-items:stretch;
}
.elyhome-jobs-intro{
    padding:17px 0 0;
}
.elyhome-jobs-kicker{
    margin:0 0 10px;
    color:#ef5b24;
    text-transform:uppercase;
    font-size:14px;
    font-weight:700;
    letter-spacing:.01em;
}
.elyhome-jobs-intro h2{
    margin:0 0 14px;
    font-family:Georgia, "Times New Roman", serif;
    font-size:36px;
    line-height:.95;
    font-weight:700;
    letter-spacing:-.02em;
}
.elyhome-jobs-copy{
    margin:0 0 28px;
    max-width:230px;
    font-size:16px;
    line-height:1.45;
}
.elyhome-jobs-all{
    color:#ef5b24;
    text-decoration:none;
    font-weight:700;
    font-size:16px;
}
.elyhome-jobs-all span{
    margin-left:18px;
}
.elyhome-jobs-cards{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
}
.elyhome-job-card{
    border:1px solid #e4e4e4;
    border-top:3px solid #ef5b24;
    min-height:242px;
    display:flex;
    flex-direction:column;
    background:#fff;
}
.elyhome-job-card-body{
    padding:25px 16px 20px;
    flex:1;
}
.elyhome-job-card h3{
    margin:0 0 14px;
    font-family:Georgia, "Times New Roman", serif;
    font-size:22px;
    line-height:1.12;
    font-weight:700;
}
.elyhome-job-card h3 a{
    color:#111;
    text-decoration:none;
}
.elyhome-job-meta,
.elyhome-job-type{
    margin:0 0 12px;
    font-size:15px;
    line-height:1.45;
    color:#111;
}
.elyhome-job-link{
    border-top:1px solid #e5e5e5;
    padding:18px 16px;
    color:#ef5b24;
    text-decoration:none;
    font-weight:700;
    font-size:16px;
    display:flex;
    justify-content:space-between;
    align-items:center;
}
.elyhome-job-link span{
    margin-left:16px;
}
.elyhome-job-card h3 a:hover,
.elyhome-job-link:hover,
.elyhome-jobs-all:hover{
    text-decoration:underline;
}
.elyhome-jobs-empty{
    grid-column:1/-1;
    border:1px solid #e5e5e5;
    padding:25px;
}
@media(max-width:980px){
    .elyhome-jobs-shell{
        grid-template-columns:1fr;
        gap:30px;
    }
    .elyhome-jobs-copy{
        max-width:560px;
    }
}
@media(max-width:760px){
    .elyhome-jobs-cards{
        grid-template-columns:1fr;
    }
}
@media(max-width:640px){
    .elyhome-jobs{
        padding:36px 0 52px;
    }
    .elyhome-jobs-shell{
        width:min(100% - 30px,1210px);
    }
}

/* V6 locked homepage layout */
section.elyhome-jobs.elyhome-jobs--locked{
display:block!important;width:100%!important;max-width:none!important;margin:0!important;
padding:46px 0 74px!important;background:#fff!important;color:#111!important;box-sizing:border-box!important;
}
section.elyhome-jobs.elyhome-jobs--locked *{box-sizing:border-box!important}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-shell{
width:min(1210px,calc(100% - 60px))!important;max-width:1210px!important;margin:0 auto!important;padding:0!important;
display:grid!important;grid-template-columns:280px minmax(0,1fr)!important;gap:52px!important;align-items:stretch!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-intro{padding:17px 0 0!important;margin:0!important}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-kicker{
margin:0 0 10px!important;padding:0!important;color:#ef5b24!important;text-transform:uppercase!important;
font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.2!important;font-weight:700!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-intro h2{
margin:0 0 14px!important;padding:0!important;color:#111!important;font-family:Georgia,"Times New Roman",serif!important;
font-size:36px!important;line-height:.98!important;font-weight:700!important;letter-spacing:-.02em!important;text-transform:none!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-copy{
margin:0 0 28px!important;padding:0!important;max-width:240px!important;color:#111!important;
font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.45!important;font-weight:400!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-all{
display:inline-flex!important;align-items:center!important;gap:18px!important;margin:0!important;padding:0!important;
color:#ef5b24!important;background:none!important;border:0!important;text-decoration:none!important;
font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.2!important;font-weight:700!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-cards{
display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;
align-items:stretch!important;margin:0!important;padding:0!important;width:100%!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-card{
display:flex!important;flex-direction:column!important;min-width:0!important;min-height:246px!important;
margin:0!important;padding:0!important;background:#fff!important;border:1px solid #e4e4e4!important;
border-top:3px solid #ef5b24!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-card-body{
display:block!important;flex:1 1 auto!important;margin:0!important;padding:25px 16px 20px!important;background:#fff!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-card h3{
margin:0 0 14px!important;padding:0!important;color:#111!important;font-family:Georgia,"Times New Roman",serif!important;
font-size:22px!important;line-height:1.12!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-card h3 a{
display:inline!important;color:#111!important;text-decoration:none!important;background:none!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-meta,
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-type{
display:block!important;margin:0 0 12px!important;padding:0!important;color:#111!important;
font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;line-height:1.4!important;font-weight:400!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-link{
display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:57px!important;
margin:0!important;padding:18px 16px!important;background:#fff!important;border:0!important;border-top:1px solid #e5e5e5!important;
border-radius:0!important;color:#ef5b24!important;text-decoration:none!important;font-family:Arial,Helvetica,sans-serif!important;
font-size:16px!important;line-height:1.2!important;font-weight:700!important;
}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-card h3 a:hover,
section.elyhome-jobs.elyhome-jobs--locked .elyhome-job-link:hover,
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-all:hover{
color:#ef5b24!important;text-decoration:none!important;
}
@media(max-width:980px){
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-shell{grid-template-columns:1fr!important;gap:30px!important}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-copy{max-width:560px!important}
}
@media(max-width:760px){
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-cards{grid-template-columns:1fr!important}
}
@media(max-width:640px){
section.elyhome-jobs.elyhome-jobs--locked{padding:36px 0 52px!important}
section.elyhome-jobs.elyhome-jobs--locked .elyhome-jobs-shell{width:calc(100% - 30px)!important}
}

/* V7 — reduced full Jobs page hero title */
.elyjobs-page .elyjobs-hero h1{font-size:44px !important;line-height:1.08 !important;letter-spacing:-.02em !important;}
@media(max-width:760px){.elyjobs-page .elyjobs-hero h1{font-size:36px !important;}}


/* V8 main jobs page heading */
.elyjobs-main-title{
    font-size:38px !important;
    line-height:1.08 !important;
    letter-spacing:-0.02em !important;
}
@media(max-width:760px){
    .elyjobs-main-title{
        font-size:32px !important;
    }
}


/* V10 — uploaded job images */
.elyjob-featured-image{
    margin:0 0 36px;
    width:100%;
    max-height:440px;
    overflow:hidden;
}
.elyjob-featured-image img{
    display:block;
    width:100%;
    height:auto;
    max-height:440px;
    object-fit:cover;
}


/* V11 — reduce individual job page title */
.elyjob-single .elyjob-header h1{
    font-size:44px !important;
    line-height:1.06 !important;
    letter-spacing:-0.025em !important;
    max-width:760px !important;
}
@media(max-width:760px){
    .elyjob-single .elyjob-header h1{
        font-size:34px !important;
        line-height:1.08 !important;
    }
}
