/* H4H Step 4E.2 — Careers visual refinement + explicit CSS delivery */
:root{
    --h4h-careers-ink:#17181a;
    --h4h-careers-ink-soft:#232427;
    --h4h-careers-orange:#f28a16;
    --h4h-careers-cream:#fbf7f1;
    --h4h-careers-line:#e7e1d9;
    --h4h-careers-muted:#6d6b68;
    --h4h-careers-white:#fff;
}

/* Careers index hero */
.h4h-careers-hero{
    position:relative;
    overflow:hidden;
    padding:88px 0 82px;
    background:var(--h4h-careers-ink);
    color:#fff;
    border-bottom:3px solid var(--h4h-careers-orange);
}
.h4h-careers-hero::before{
    content:"";
    position:absolute;
    inset:-180px auto auto -110px;
    width:520px;
    height:520px;
    border:1px solid rgba(242,138,22,.14);
    border-radius:50%;
    box-shadow:0 0 0 58px rgba(242,138,22,.035),0 0 0 116px rgba(242,138,22,.02);
    pointer-events:none;
}
[dir="rtl"] .h4h-careers-hero::before{inset:-180px -110px auto auto}
.h4h-careers-hero-inner{
    position:relative;
    z-index:1;
    max-width:880px;
    text-align:center;
    margin-inline:auto;
}
.h4h-careers-hero-inner>span{
    display:inline-flex;
    align-items:center;
    gap:9px;
    margin-bottom:14px;
    color:var(--h4h-careers-orange);
    font-size:13px;
    font-weight:800;
}
.h4h-careers-hero-inner>span::before{
    content:"";
    width:28px;
    height:2px;
    background:currentColor;
}
.h4h-careers-hero h1{
    margin:0;
    font-size:clamp(42px,5vw,66px);
    line-height:1.16;
    font-weight:800;
    letter-spacing:-.025em;
}
.h4h-careers-hero p{
    max-width:760px;
    margin:19px auto 0;
    color:#d8d8d8;
    font-size:16px;
    line-height:2;
}

/* Main index */
.h4h-careers-main{
    padding:54px 0 94px;
    background:#fff;
}
.h4h-careers-filter{
    display:grid;
    grid-template-columns:minmax(0,2fr) minmax(220px,1fr) auto;
    gap:12px;
    align-items:end;
    margin:0 0 54px;
    padding:18px 20px 20px;
    background:var(--h4h-careers-ink-soft);
    border-top:3px solid var(--h4h-careers-orange);
    box-shadow:0 14px 38px rgba(0,0,0,.07);
}
.h4h-careers-filter label{
    display:grid;
    gap:7px;
    margin:0;
    color:#e9e9e9;
    font-size:11px;
    font-weight:800;
}
.h4h-careers-filter input,
.h4h-careers-filter select{
    box-sizing:border-box;
    width:100%;
    height:46px;
    margin:0;
    padding:0 14px;
    border:1px solid #4b4c4e;
    border-radius:0;
    outline:0;
    background:#fff;
    color:#222;
    font:600 13px/1.2 inherit;
    transition:border-color .2s ease,box-shadow .2s ease;
}
.h4h-careers-filter input:focus,
.h4h-careers-filter select:focus{
    border-color:var(--h4h-careers-orange);
    box-shadow:0 0 0 3px rgba(242,138,22,.15);
}
.h4h-careers-filter button{
    height:46px;
    min-width:118px;
    padding:0 24px;
    border:0;
    background:var(--h4h-careers-orange);
    color:#fff;
    font:800 13px/1 inherit;
    cursor:pointer;
    transition:background .2s ease,transform .2s ease;
}
.h4h-careers-filter button:hover{background:#db7710;transform:translateY(-1px)}

.h4h-careers-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:27px;
}
.h4h-careers-heading>div>span{
    display:block;
    margin-bottom:5px;
    color:var(--h4h-careers-orange);
    font-size:12px;
    font-weight:800;
}
.h4h-careers-heading h2{
    margin:0;
    color:#1b1b1b;
    font-size:clamp(29px,3vw,40px);
    line-height:1.35;
    font-weight:800;
}
.h4h-careers-heading>strong{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:5px 12px;
    border:1px solid var(--h4h-careers-line);
    background:var(--h4h-careers-cream);
    color:#686561;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

/* Compact job grid */
.h4h-job-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    align-items:stretch;
}
.h4h-job-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:286px;
    padding:24px 24px 21px;
    overflow:hidden;
    border:1px solid var(--h4h-careers-line);
    background:var(--h4h-careers-cream);
    box-shadow:0 10px 30px rgba(22,22,22,.035);
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.h4h-job-card::before{
    content:"";
    position:absolute;
    inset-block-start:0;
    inset-inline-start:0;
    width:4px;
    height:58px;
    background:var(--h4h-careers-orange);
}
.h4h-job-card:hover{
    transform:translateY(-4px);
    border-color:#d9cfc3;
    box-shadow:0 18px 42px rgba(22,22,22,.075);
}
.h4h-job-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    color:var(--h4h-careers-orange);
    font-size:11px;
    font-weight:800;
}
.h4h-job-card-top small{
    max-width:48%;
    overflow:hidden;
    color:#8a8680;
    font-size:10px;
    font-weight:700;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.h4h-job-card h3{
    margin:17px 0 8px;
    color:#1d1d1d;
    font-size:22px;
    line-height:1.55;
    font-weight:800;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden;
}
.h4h-job-card>p{
    margin:0 0 17px;
    overflow:hidden;
    color:var(--h4h-careers-muted);
    font-size:13px;
    line-height:1.85;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
}
.h4h-job-tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:1px;
}
.h4h-job-tags span{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:4px 8px;
    border:1px solid #e2dbd2;
    background:#fff;
    color:#514e4a;
    font-size:10.5px;
    font-weight:700;
    line-height:1.4;
}
.h4h-job-card-footer{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:16px;
    margin-top:auto;
    padding-top:18px;
    border-top:1px solid #e5ddd3;
}
.h4h-job-card-footer>div{display:grid;gap:3px}
.h4h-job-card-footer small{color:#89847d;font-size:10px;font-weight:700}
.h4h-job-card-footer strong{color:#272727;font-size:12px;font-weight:800;direction:ltr}
.h4h-job-card-footer a{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#222;
    font-size:12px;
    font-weight:800;
    text-decoration:none;
    white-space:nowrap;
}
.h4h-job-card-footer a::after{content:"←";color:var(--h4h-careers-orange);font-size:15px;transition:transform .2s ease}
[dir="ltr"] .h4h-job-card-footer a::after{content:"→"}
.h4h-job-card-footer a:hover{color:var(--h4h-careers-orange)}
.h4h-job-card-footer a:hover::after{transform:translateX(-3px)}
[dir="ltr"] .h4h-job-card-footer a:hover::after{transform:translateX(3px)}

.h4h-careers-empty{
    padding:70px 28px;
    border:1px dashed #d9d0c5;
    background:var(--h4h-careers-cream);
    text-align:center;
}
.h4h-careers-empty h3{margin:0 0 8px;color:#202020;font-size:25px}
.h4h-careers-empty p{max-width:620px;margin:0 auto;color:#777;font-size:14px;line-height:1.8}

/* Detail hero */
.h4h-job-hero{
    position:relative;
    overflow:hidden;
    padding:52px 0 56px;
    background:var(--h4h-careers-ink);
    color:#fff;
    border-bottom:3px solid var(--h4h-careers-orange);
}
.h4h-job-hero::after{
    content:"";
    position:absolute;
    inset-inline-end:-140px;
    top:-150px;
    width:440px;
    height:440px;
    border:1px solid rgba(242,138,22,.13);
    border-radius:50%;
    box-shadow:0 0 0 55px rgba(242,138,22,.026),0 0 0 110px rgba(242,138,22,.018);
    pointer-events:none;
}
.h4h-job-hero>.h4h-shell{position:relative;z-index:1}
.h4h-job-back{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:24px;
    color:#c8c8c8;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}
.h4h-job-back::before{content:"→";color:var(--h4h-careers-orange)}
[dir="ltr"] .h4h-job-back::before{content:"←"}
.h4h-job-back:hover{color:#fff}
.h4h-job-kicker{
    display:block;
    margin-bottom:8px;
    color:var(--h4h-careers-orange);
    font-size:12px;
    font-weight:800;
}
.h4h-job-hero h1{
    max-width:980px;
    margin:0;
    color:#fff;
    font-size:clamp(38px,4.5vw,58px);
    line-height:1.3;
    font-weight:800;
}
.h4h-job-hero>.h4h-shell>p{
    max-width:820px;
    margin:14px 0 0;
    color:#d2d2d2;
    font-size:15px;
    line-height:1.9;
}
.h4h-job-hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:22px;
}
.h4h-job-hero-meta span{
    padding:6px 10px;
    border:1px solid #454648;
    background:#202124;
    color:#ededed;
    font-size:11px;
    font-weight:700;
}

/* 70 / 30 detail + sticky application */
.h4h-job-detail-wrap{padding:62px 0 96px;background:#fff}
.h4h-job-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,7fr) minmax(310px,3fr);
    gap:44px;
    align-items:start;
}
.h4h-job-content{min-width:0}
.h4h-job-info-section{
    margin:0 0 35px;
    padding:0 0 36px;
    border-bottom:1px solid var(--h4h-careers-line);
}
.h4h-job-info-section:last-child{margin-bottom:0}
.h4h-job-section-title{
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:21px;
}
.h4h-job-section-title>span{
    display:grid;
    place-items:center;
    flex:0 0 32px;
    width:32px;
    height:32px;
    background:var(--h4h-careers-cream);
    border:1px solid #eadfce;
    color:var(--h4h-careers-orange);
    font-size:10px;
    font-weight:800;
}
.h4h-job-section-title h2{margin:0;color:#1f1f1f;font-size:25px;line-height:1.45;font-weight:800}
.h4h-job-facts{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1px;
    overflow:hidden;
    border:1px solid var(--h4h-careers-line);
    background:var(--h4h-careers-line);
}
.h4h-job-facts>div{min-height:82px;padding:15px 17px;background:#fbf9f6}
.h4h-job-facts dt{margin:0 0 7px;color:#817c75;font-size:10.5px;font-weight:700}
.h4h-job-facts dd{margin:0;color:#282828;font-size:13px;font-weight:800;line-height:1.65}
.h4h-job-facts-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.h4h-job-rich{color:#3e3e3e;font-size:14px;line-height:2}
.h4h-job-rich p:first-child{margin-top:0}
.h4h-job-rich p:last-child{margin-bottom:0}
.h4h-job-rich ul,.h4h-job-rich ol{padding-inline-start:24px}
.h4h-job-rich li{margin-bottom:5px}

.h4h-application-column{position:relative;min-width:0}
.h4h-application-card{
    position:sticky;
    top:96px;
    padding:26px;
    border:1px solid #dfd7cd;
    border-top:3px solid var(--h4h-careers-orange);
    background:var(--h4h-careers-cream);
    box-shadow:0 18px 50px rgba(0,0,0,.07);
}
.h4h-application-card>span{display:block;color:var(--h4h-careers-orange);font-size:11px;font-weight:800}
.h4h-application-card h2{margin:5px 0 21px;color:#1f1f1f;font-size:24px;line-height:1.45}
.h4h-job-application-form{display:grid;gap:14px}
.h4h-job-application-form label{display:grid;gap:6px;margin:0;color:#353535;font-size:11px;font-weight:800}
.h4h-job-application-form input,
.h4h-job-application-form textarea{
    box-sizing:border-box;
    width:100%;
    margin:0;
    padding:10px 11px;
    border:1px solid #d8d0c7;
    border-radius:0;
    outline:0;
    background:#fff;
    color:#222;
    font:600 12px/1.6 inherit;
}
.h4h-job-application-form input{min-height:42px}
.h4h-job-application-form textarea{min-height:112px;resize:vertical}
.h4h-job-application-form input:focus,
.h4h-job-application-form textarea:focus{border-color:var(--h4h-careers-orange);box-shadow:0 0 0 3px rgba(242,138,22,.12)}
.h4h-job-application-form label small,.h4h-job-application-form>small{color:#b42318;font-size:10px;font-weight:700}
.h4h-file-field em{color:#7c7770;font-size:9.5px;font-style:normal;font-weight:600}
.h4h-consent{grid-template-columns:18px 1fr!important;align-items:start;gap:8px!important;line-height:1.75}
.h4h-consent input{width:15px;height:15px;min-height:0;margin-top:3px}
.h4h-job-application-form button{
    min-height:46px;
    border:0;
    background:var(--h4h-careers-orange);
    color:#fff;
    font:800 13px/1 inherit;
    cursor:pointer;
    transition:background .2s ease;
}
.h4h-job-application-form button:hover{background:#db7710}
.h4h-form-success{margin-bottom:17px;padding:12px 13px;background:#eaf7ed;color:#176b2c;font-size:12px;line-height:1.7}
.h4h-form-closed{padding:19px;border:1px solid #f0d0a8;background:#fff2e3}
.h4h-form-closed strong{font-size:16px}.h4h-form-closed p{margin:7px 0 0;color:#6f5d49;font-size:12px;line-height:1.75}
.h4h-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}

/* Laravel paginator normalization inside careers */
.h4h-careers-main nav[role="navigation"]{margin-top:38px}
.h4h-careers-main nav[role="navigation"] svg{width:17px;height:17px}

@media(max-width:1120px){
    .h4h-job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .h4h-job-detail-grid{grid-template-columns:minmax(0,1fr) 330px;gap:32px}
    .h4h-job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:860px){
    .h4h-careers-hero{padding:70px 0 66px}
    .h4h-careers-filter{grid-template-columns:1fr 1fr}
    .h4h-careers-filter button{grid-column:1/-1}
    .h4h-job-detail-grid{grid-template-columns:1fr}
    .h4h-application-card{position:static}
}
@media(max-width:680px){
    .h4h-careers-hero{padding:58px 0 54px}
    .h4h-careers-hero p{font-size:14px}
    .h4h-careers-main{padding:38px 0 68px}
    .h4h-careers-filter{grid-template-columns:1fr;margin-bottom:38px;padding:16px}
    .h4h-careers-filter button{grid-column:auto}
    .h4h-careers-heading{align-items:flex-start;flex-direction:column;gap:12px}
    .h4h-job-grid{grid-template-columns:1fr}
    .h4h-job-card{min-height:270px;padding:22px 20px 19px}
    .h4h-job-card h3{font-size:20px}
    .h4h-job-card-footer{align-items:flex-start;flex-direction:column;gap:12px}
    .h4h-job-hero{padding:38px 0 43px}
    .h4h-job-detail-wrap{padding:40px 0 68px}
    .h4h-job-facts,.h4h-job-facts-two{grid-template-columns:1fr}
    .h4h-job-info-section{padding-bottom:30px;margin-bottom:29px}
    .h4h-job-section-title h2{font-size:22px}
    .h4h-application-card{padding:22px 18px}
}
