.gi-jobs-page .gi-page-hero,.gi-job-detail-page .gi-page-hero{background:linear-gradient(135deg,var(--gi-navy) 0%,var(--gi-blue) 56%,var(--gi-teal) 100%)}
.gi-jobs-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.gi-job-public-card{position:relative;padding:27px;border:1px solid var(--gi-border);border-radius:15px;background:#fff;box-shadow:0 10px 25px rgba(13,47,82,.08)}
.gi-job-public-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--gi-blue-2);border-radius:15px 0 0 15px}
.gi-job-public-card:nth-child(3n+2)::before{background:var(--gi-teal)}
.gi-job-public-card:nth-child(3n)::before{background:var(--gi-gold)}
.gi-job-public-ref{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--gi-muted)}
.gi-job-public-card h3{margin:7px 0 9px;font-size:23px;line-height:1.2}
.gi-job-public-card h3 a{color:var(--gi-navy);text-decoration:none}
.gi-job-public-card h3 a:hover,.gi-job-public-card h3 a:focus{text-decoration:underline}
.gi-job-public-meta,.gi-job-detail-meta{display:flex;gap:8px;flex-wrap:wrap}
.gi-job-public-meta span,.gi-job-detail-meta span{padding:6px 9px;border-radius:999px;background:#eef4f8;color:#40566b;font-size:12px;font-weight:800}
.gi-job-public-card p{color:var(--gi-muted)}
.gi-jobs-empty{grid-column:1/3;padding:38px;border:1px dashed #b9cbd8;border-radius:15px;background:#f8fbfd;text-align:center}
.gi-jobs-empty h2{margin:0 0 7px;color:var(--gi-navy)}
.gi-jobs-empty p{margin:0;color:var(--gi-muted)}
.gi-job-detail-page .gi-page-hero p{max-width:900px}
.gi-job-detail-meta{margin:16px 0 0}
.gi-job-detail-meta span{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.24)}
.gi-job-detail-shell{max-width:1180px}
.gi-job-back{display:inline-block;margin-bottom:22px;color:var(--gi-blue-dark);font-weight:800;text-decoration:none}
.gi-job-back:hover,.gi-job-back:focus{text-decoration:underline}
.gi-job-detail-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(420px,.9fr);gap:34px;align-items:start}
.gi-job-description{display:grid;gap:24px}
.gi-job-description section{padding:28px;border:1px solid var(--gi-border);border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(13,47,82,.06)}
.gi-job-description h2{margin:0 0 12px;color:var(--gi-navy);font-size:25px}
.gi-job-copy{white-space:pre-line;color:var(--gi-text);line-height:1.65}
.gi-job-apply-card{position:sticky;top:18px;border:1px solid #cfdde8;border-radius:18px;background:#fff;box-shadow:0 20px 42px rgba(13,47,82,.13);overflow:hidden;padding:30px}
.gi-job-apply-card::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--gi-blue-2),var(--gi-teal),var(--gi-green))}
.gi-job-apply-card h2{margin:3px 0 7px;color:var(--gi-navy);font-size:27px;line-height:1.15}
.gi-job-apply-card>p{color:var(--gi-muted)}
.gi-job-application-form{display:grid;gap:12px;margin-top:20px}
.gi-job-form-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;align-items:center}
.gi-job-form-row label{font-size:13px;font-weight:800;color:#2a4054;text-align:right}
.gi-job-form-row label span{color:#a9472f}
.gi-job-form-row-top{align-items:start}
.gi-job-form-row-top>label{padding-top:12px}
.gi-job-application-form input,.gi-job-application-form textarea{width:100%;font:inherit;color:var(--gi-text);background:#fff;border:1px solid #b8c8d7;border-radius:11px;padding:12px 13px;box-shadow:0 3px 9px rgba(13,47,82,.05)}
.gi-job-application-form input:focus,.gi-job-application-form textarea:focus{outline:none;border-color:var(--gi-blue-2);box-shadow:0 0 0 4px rgba(31,115,183,.12),0 7px 15px rgba(13,47,82,.08)}
.gi-job-application-form textarea{resize:vertical;min-height:120px}
.gi-job-application-form input[type="file"]{padding:9px;background:#f8fbfd}
.gi-job-form-row small{display:block;margin-top:5px;color:var(--gi-muted);font-size:11px}
.gi-job-form-actions{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;margin-top:6px}
.gi-job-form-actions .gi-button{min-height:48px;padding:12px 20px;border-radius:10px;box-shadow:0 7px 16px rgba(20,93,160,.2)}
.gi-job-application-status{display:none;margin-top:11px;padding:10px 12px;border-radius:9px;font-size:13px;font-weight:700}
.gi-job-application-status.success{display:block;color:#245a41;background:#edf7f0;border:1px solid #c9e2d1}
.gi-job-application-status.error{display:block;color:#8d1e1e;background:#fff2f2;border:1px solid #e7c4c4}
.gi-job-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.gi-job-privacy-note{margin:18px 0 0!important;padding-top:14px;border-top:1px solid #e5ebf0;font-size:12px!important}
.gi-job-privacy-note a{color:var(--gi-blue-dark);font-weight:800}
@media(max-width:980px){.gi-job-detail-layout{grid-template-columns:1fr}.gi-job-apply-card{position:relative;top:auto}}
@media(max-width:700px){.gi-jobs-public-grid{grid-template-columns:1fr}.gi-jobs-empty{grid-column:auto}.gi-job-form-row,.gi-job-form-actions{grid-template-columns:1fr;gap:6px}.gi-job-form-row label{text-align:left}.gi-job-form-row-top>label{padding-top:0}.gi-job-form-actions>span{display:none}}
@media(max-width:520px){.gi-job-apply-card{padding:25px 18px}.gi-job-description section{padding:24px 18px}}
