.sg-jobs{color:#233f43;font-size:17px;line-height:1.6}.sg-jobs [hidden]{display:none!important}.sg-intro{max-width:780px;color:#5b6c6b;margin-bottom:32px}.sg-filters{display:grid;grid-template-columns:1.5fr 1fr auto;gap:20px;align-items:end;padding:27px;background:#f5f4ed;border-radius:14px;margin-bottom:25px}.sg-filters label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}.sg-filters input,.sg-filters select{width:100%;min-height:49px;padding:12px 14px;border:1px solid #c7d3cb;border-radius:7px;background:white;color:#233f43;font:inherit;font-size:16px}.sg-filters input:focus-visible,.sg-filters select:focus-visible,.sg-reset:focus-visible{outline:3px solid #dc6f32;outline-offset:3px}.sg-reset{background:transparent;border:0;text-decoration:underline;text-underline-offset:4px;color:#045473;font-family:inherit;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;padding:15px 4px;min-height:49px}.sg-count{font-size:14px;font-weight:600;color:#5b6c6b;margin:0 0 12px}.sg-job{display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding:28px 0;border-top:1px solid #dae1db}.sg-job:last-child{border-bottom:1px solid #dae1db}.sg-job h3{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:5px 0 9px;font-weight:500}.sg-job h3 a{text-decoration:none}.sg-job h3 a:hover{text-decoration:underline}.sg-location{font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#045473;font-weight:600;margin:0}.sg-company{font-size:14px;color:#5b6c6b;margin:0}.sg-job-link{display:flex;align-items:center;gap:18px;white-space:nowrap;font-size:14px;font-weight:600;text-decoration:none;color:#045473;padding:12px 18px;background:#edf1e9;border-radius:999px}.sg-job-link:hover{background:#e1e9db}.sg-job-link span{font-size:21px}.sg-notice{padding:34px;background:#f5f4ed;border-radius:14px}.sg-notice h3{font-size:28px;margin:0 0 16px}.sg-notice p{margin:0 0 23px;max-width:680px}.sg-source{font-size:12px;color:#5b6c6b;margin-top:25px}.sg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:700px){.sg-filters{grid-template-columns:1fr;padding:22px;gap:15px}.sg-reset{justify-self:start;min-height:40px;padding:8px 0}.sg-job{grid-template-columns:1fr;gap:17px;padding:25px 0}.sg-job h3{font-size:22px}.sg-job-link{justify-self:start}.sg-notice{padding:25px}}
.sg-detail-hero h1{max-width:1050px;font-size:clamp(36px,4vw,61px)}.sg-detail-meta{color:#5b6c6b;font-size:17px;margin:24px 0 30px}.sg-detail-meta span{margin:0 12px;color:#aebda9}.sg-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:90px;align-items:start}.sg-description{font-size:18px;line-height:1.75;overflow-wrap:anywhere}.sg-description h2{font-family:Georgia,serif;font-size:32px;margin:42px 0 20px}.sg-description h2:first-child{margin-top:0}.sg-description h3{font-size:26px;margin:30px 0 18px}.sg-description p{margin-bottom:22px}.sg-description li{padding-left:5px;margin-bottom:12px}.sg-description ul,.sg-description ol{padding-left:24px;margin:20px 0 32px}.sg-description strong,.sg-description b{font-weight:650}.sg-description table{width:100%;border-collapse:collapse}.sg-description td,.sg-description th{padding:10px;border-bottom:1px solid #dae1db}.sg-apply{position:sticky;top:145px;padding:30px;background:#edf1e9;border-radius:16px}.sg-apply h2{font-size:31px}.sg-apply>p:not(.eyebrow){font-size:16px}.sg-apply .button{width:100%;gap:24px}.sg-apply .sg-apply-note{font-size:12px!important;line-height:1.65;color:#5b6c6b;margin:20px 0 0}@media(max-width:950px){.sg-detail-layout{gap:40px;grid-template-columns:minmax(0,1fr) 280px}.sg-apply{padding:24px}}@media(max-width:750px){.sg-detail-layout{grid-template-columns:1fr;gap:40px}.sg-apply{position:static}.sg-description{font-size:17px}.sg-description h2{font-size:29px}.sg-detail-meta{font-size:15px}}
/* Site typography and Elementor palette remain authoritative. */
.sg-jobs,.sg-detail-shell{--sg-primary:var(--e-global-color-primary,#045473);--sg-text:var(--e-global-color-text,#263d42);color:var(--sg-text);font-family:inherit}
.sg-jobs h3,.sg-description h2,.sg-description h3,.sg-detail-shell h1,.sg-detail-shell h2{font-family:inherit;color:var(--sg-primary)}
.sg-jobs a,.sg-jobs .sg-location,.sg-reset,.sg-detail-shell a{color:var(--sg-primary)}
.sg-filters,.sg-notice,.sg-apply{background:color-mix(in srgb,var(--sg-primary) 6%,white);border-radius:8px}
.sg-job-link{background:color-mix(in srgb,var(--sg-primary) 9%,white);border-radius:5px}
.sg-detail-shell{width:min(1140px,calc(100% - 40px));margin:0 auto;padding:55px 0}
.sg-detail-hero{padding-bottom:25px}.sg-detail-hero h1{font-size:clamp(30px,4vw,52px);line-height:1.2}
.sg-detail-shell .button{display:inline-flex;padding:14px 22px;background:var(--sg-primary);color:white;border-radius:5px;text-decoration:none}
.sg-description{min-width:0}.sg-description table{display:block;overflow:auto}.sg-description a{overflow-wrap:anywhere}
.sg-detail-shell .breadcrumb{font-size:14px}.sg-detail-shell .eyebrow{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.sg-local-section{max-width:1140px;margin:50px auto;padding:0 24px}

/* Keep title and description stacked inside themes with flex content containers. */
.sg-detail-page{display:block;flex:0 0 100%;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.sg-detail-page .sg-detail-shell{box-sizing:border-box;max-width:1140px}.sg-detail-page .sg-detail-hero .wrap{width:100%;max-width:none;margin:0;padding:0}
