:root{--infra-blue:#213B4D;--infra-teal:#1F93A4;--infra-gray:#5E5E5E;--infra-line:#cfcfcf;--infra-soft:#f4f5f6}.infra-job-board{font-family:"Myriad Pro",Arial,sans-serif;color:#202020;max-width:1560px;margin:0 auto 50px;padding:0 24px;position:relative}.infra-job-hero{height:90px;margin:0 -24px;background:linear-gradient(120deg,rgba(33,59,77,.92),rgba(31,147,164,.65)),url('../img/career-bg.jpg');background-size:cover;background-position:center}.infra-filter-panel{display:grid;grid-template-columns:2.2fr 1fr 1fr 1fr;gap:34px;background:#f3f3f3;margin:-64px auto 36px;padding:34px 52px;border-radius:14px;box-shadow:0 4px 16px rgba(0,0,0,.14);position:relative;z-index:2}.infra-field label{display:block;text-transform:uppercase;font-size:13px;color:var(--infra-gray);margin-bottom:10px}.infra-field input,.infra-field select{width:100%;height:42px;border:1px solid #bfc4c7;border-radius:5px;background:#fff;color:#4c4c4c;padding:0 16px;font-size:14px;box-sizing:border-box}.infra-input-wrap{position:relative}.infra-input-wrap input{padding-left:48px}.infra-search-icon{position:absolute;left:0;top:0;bottom:0;width:48px;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;color:#687078;z-index:1;pointer-events:none}.infra-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:54px}.infra-tab{border:1px solid #c9cdd0;background:#fff;color:#555;padding:13px 21px;border-radius:5px;cursor:pointer;box-sizing:border-box;transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}.infra-tab.is-active,.infra-tab:hover{background:var(--infra-blue);border-color:var(--infra-blue);color:#fff}.infra-job-list{border:1px solid #bfc4c7;background:#fff}.infra-job-row{display:grid;grid-template-columns:125px 1fr 230px;align-items:center;min-height:108px;border-bottom:1px solid #c6cace}.infra-job-row:last-child{border-bottom:0}.infra-job-icon{height:100%;display:flex;align-items:center;justify-content:center;background:#f1f2f3;border-right:1px solid #bfc4c7;color:var(--infra-blue);font-size:34px}.infra-job-thumb{width:52px;height:52px;object-fit:cover;border-radius:8px}.infra-briefcase{width:44px;height:36px;background:var(--infra-blue);border-radius:5px;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:16px;position:relative}.infra-briefcase:before{content:"";position:absolute;width:14px;height:8px;border:4px solid var(--infra-blue);border-bottom:0;border-radius:4px 4px 0 0;top:-10px}.infra-job-main{padding:20px 40px}.infra-job-main h3{margin:0 0 12px;font-size:21px;font-weight:400}.infra-job-main h3 a{color:#2c2c2c;text-decoration:none}.infra-job-meta{display:flex;gap:25px;align-items:center;font-size:14px;color:#161616}.infra-job-meta i{width:1px;height:17px;background:#51575a;display:block}.infra-mobile-excerpt{display:none}.infra-job-action{text-align:right;padding-right:48px}.infra-apply-btn,.infra-submit-btn{background:var(--infra-blue);color:#fff;border:0;border-radius:4px;box-shadow:0 3px 8px rgba(0,0,0,.22);font-weight:700;font-size:17px;padding:18px 24px;min-width:164px;cursor:pointer}.infra-apply-btn span{font-size:28px;vertical-align:-3px;margin-left:8px}.infra-apply-btn:hover,.infra-submit-btn:hover{background:var(--infra-teal)}.infra-load-more{display:block;margin:28px auto 0;background:#fff;border:1px solid var(--infra-blue);color:var(--infra-blue);border-radius:5px;padding:13px 28px;font-weight:700;cursor:pointer}.infra-no-jobs{text-align:center;border:1px dashed #c8c8c8;padding:40px}.infra-application-modal[hidden]{display:none}.infra-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:9998}.infra-modal-card{position:fixed;z-index:9999;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,calc(100% - 32px));max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:30px;box-shadow:0 25px 70px rgba(0,0,0,.35)}.infra-modal-card h3{margin:0 0 22px;font-size:28px;color:var(--infra-blue)}.infra-modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:34px;cursor:pointer}.infra-application-form label{display:block;margin-bottom:14px;font-weight:700;color:#333}.infra-application-form input,.infra-application-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:7px;border:1px solid #c8cdd0;border-radius:5px;padding:12px;font:inherit}.infra-form-message.ok{color:#168000}.infra-form-message.err{color:#b00020}.infra-job-board.is-loading{opacity:.65;pointer-events:none}@media(max-width:900px){.infra-filter-panel{grid-template-columns:1fr 1fr;margin-top:-48px;padding:26px;gap:18px}.infra-job-row{grid-template-columns:86px 1fr;min-height:auto}.infra-job-action{grid-column:2;text-align:left;padding:0 24px 22px}.infra-job-main{padding:22px 24px 10px}.infra-mobile-excerpt{display:block;color:#666;margin-top:10px}.infra-apply-btn{width:100%;max-width:220px}.infra-tabs{margin-bottom:28px}}@media(max-width:560px){.infra-job-board{padding:0 14px}.infra-job-hero{margin:0 -14px;height:70px}.infra-filter-panel{grid-template-columns:1fr;padding:22px 16px;border-radius:12px}.infra-tabs{gap:8px}.infra-tab{padding:10px 12px;font-size:13px}.infra-job-list{border:0}.infra-job-row{grid-template-columns:1fr;border:1px solid #d2d5d7;margin-bottom:14px;border-radius:10px;overflow:hidden}.infra-job-icon{height:74px;border-right:0;border-bottom:1px solid #d2d5d7}.infra-job-main{padding:18px}.infra-job-meta{flex-wrap:wrap;gap:8px 14px}.infra-job-meta i{display:none}.infra-job-action{grid-column:1;padding:0 18px 18px}.infra-apply-btn{max-width:none}.infra-modal-card{padding:24px 18px}}

/* Elementor-managed top banner */
.infra-job-hero{min-height:430px;margin:0 calc(50% - 50vw);width:100vw;background:linear-gradient(120deg,rgba(33,59,77,.82),rgba(0,0,0,.42));background-size:cover;background-position:center;position:relative;display:flex;align-items:center;overflow:hidden}
.infra-job-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.48);z-index:0;pointer-events:none}.infra-hero-content{position:relative;z-index:1;width:100%;max-width:1360px;margin:0 auto;padding:70px 24px 120px;color:#fff;box-sizing:border-box}.infra-hero-breadcrumb{font-size:13px;letter-spacing:.4px;margin-bottom:120px;opacity:.95}.infra-hero-heading{font-family:"Helvetica Compressed Medium","Arial Narrow",Arial,sans-serif;font-size:42px;line-height:1;text-transform:uppercase;letter-spacing:.5px;margin:0 0 22px;color:#fff}.infra-hero-description{font-size:18px;line-height:1.6;margin:0;max-width:720px;color:#fff}.infra-job-hero + .infra-filter-panel{margin-top:-64px}.elementor-editor-active .infra-job-hero{min-height:430px}@media(max-width:900px){.infra-job-hero{min-height:320px}.infra-hero-content{padding:42px 24px 95px}.infra-hero-breadcrumb{margin-bottom:70px}.infra-hero-heading{font-size:36px}.infra-hero-description{font-size:16px}.infra-job-hero + .infra-filter-panel{margin-top:-54px}}@media(max-width:560px){.infra-job-hero{min-height:280px;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.infra-hero-content{padding:34px 18px 84px}.infra-hero-breadcrumb{margin-bottom:50px;font-size:12px}.infra-hero-heading{font-size:32px}.infra-hero-description{font-size:15px}.infra-job-hero + .infra-filter-panel{margin-top:-44px}}
.infra-job-main h3.infra-title-underline a,.infra-job-main h3.infra-title-underline span{display:inline-block;border-bottom:2px solid currentColor;padding-bottom:2px}.infra-job-description{font-size:14px;line-height:1.55;color:#111;margin:0 0 12px}.infra-desc-toggle{border:0;background:transparent;color:var(--infra-blue);font-weight:700;cursor:pointer;padding:0 0 0 4px;font:inherit;text-decoration:underline}.infra-job-main h3 span{color:#2c2c2c}

/* Send CV / future opportunities CTA - matched to INFRA careers layout */
.infra-cv-cta{max-width:1560px;margin:44px auto 56px;padding:34px 58px;background:#f1f1f1;display:grid;grid-template-columns:78px 1fr auto;gap:42px;align-items:center;box-sizing:border-box;font-family:"Myriad Pro",Arial,sans-serif;min-height:116px}
.infra-cv-icon{width:72px;height:72px;background:var(--infra-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:50px;line-height:1;box-sizing:border-box}
.infra-cv-icon svg{width:1em;height:1em;display:block;fill:currentColor}
.infra-cv-heading{margin:0 0 3px;color:var(--infra-blue);font-size:18px;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.2px}
.infra-cv-desc{margin:0;color:var(--infra-gray);font-size:18px;line-height:1.25;font-weight:400}
.infra-cv-btn{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--infra-teal);color:#fff;text-decoration:none;border-radius:5px;padding:18px 24px;font-weight:800;font-size:18px;line-height:1;white-space:nowrap;min-width:164px;min-height:54px;box-shadow:0 3px 10px rgba(0,0,0,.12);transition:background .2s ease,color .2s ease}
.infra-cv-btn:hover,.infra-cv-btn:focus{background:var(--infra-blue);color:#fff;text-decoration:none}
.infra-cv-btn span{font-size:34px;line-height:.7;font-weight:400}
@media(max-width:900px){.infra-cv-cta{grid-template-columns:72px 1fr;gap:22px;padding:30px 24px}.infra-cv-btn{grid-column:1 / -1;justify-self:start}.infra-cv-desc{font-size:17px}.infra-cv-heading{font-size:18px}}
@media(max-width:560px){.infra-cv-cta{grid-template-columns:1fr;text-align:center;justify-items:center;margin:28px auto 40px;padding:28px 18px}.infra-cv-btn{justify-self:stretch}.infra-cv-icon{width:72px;height:72px}}
