/* Good Earth Renewable — Premium Dark Career • v3.2.1 • #050505 / #5ea260 / Anek Latin — Final UI Refinement 2026-10-04 */
:root{--gec-green:#5ea260;--gec-bg:#050505;--gec-text:#fff;--gec-muted:#b8b8b8;--gec-border:rgba(255,255,255,.12);--gec-card-border:rgba(255,255,255,.08)}
html{scroll-behavior:smooth}
body.page-id-314, body.page-id-314 .site, body.page-id-314 main, body.single-gec_job, body.career, body.post-type-archive-gec_job{
  background:#050505!important;color:#fff!important;
}
body.page-id-314 .elementor, body.page-id-314 .e-con, body.page-id-314 .elementor-element{--e-global-color-text:#fff}
body.page-id-314 #page, body.page-id-314 .site-content, body.page-id-314 .elementor-section, body.page-id-314 .e-con{ background:#050505}
body:has(.ges-career-hero) .gec-plugin-hero, body:has(#ges-career-page-intro) .gec-plugin-hero{ display:none!important}
body:has(.gec-apply-header) #ges-career-listings-style-heading{ display:none!important}
body:has(.gec-apply-header) .ges-career-listings-style-heading{ display:none!important}

/* ─── HERO — TRUE FULL-WIDTH WEBSITE BANNER (560–650 desktop, 480–600 mobile) ─── */
.gec-plugin-hero,
.ges-career-hero{
  position:relative!important;
  left:50%!important;
  right:50%!important;
  margin-left:-50vw!important;
  margin-right:-50vw!important;
  width:100vw!important;
  max-width:100vw!important;
  max-width:none!important;
  height:600px!important;
  min-height:560px!important;
  max-height:650px!important;
  display:flex!important;
  align-items:center!important;
  background:#000!important;
  overflow:hidden!important;
  color:#fff!important;
  font-family:"Anek Latin",Manrope,system-ui,sans-serif!important;
  box-sizing:border-box!important;
}
.gec-hero-inner,
.ges-hero-inner{
  position:relative!important;
  z-index:2!important;
  max-width:1440px!important;
  width:100%!important;
  margin:0 auto!important;
  padding:0 28px!important;
  display:block!important;
  box-sizing:border-box!important;
  height:auto!important;
}
.gec-hero-topline,
.ges-hero-topline{
  display:inline-flex!important; align-items:center!important; gap:10px!important;
  color:#5ea260!important; font-size:12px!important; font-weight:700!important;
  letter-spacing:.14em!important; text-transform:uppercase!important; margin:0 0 18px!important;
}
.gec-hero-title,
.ges-hero-title{
  margin:0!important; color:#fff!important; font-family:"Anek Latin",Manrope,sans-serif!important;
  font-weight:500!important; font-size:clamp(38px,4.8vw,68px)!important; line-height:.96!important; letter-spacing:-.04em!important;
}
.gec-hero-desc,
.ges-hero-desc{
  max-width:560px!important; margin:18px 0 0!important; color:rgba(255,255,255,.82)!important;
  font-size:clamp(15px,1.2vw,18px)!important; line-height:1.6!important; font-weight:400!important;
}
.gec-eyebrow, .ges-eyebrow{ display:none!important }
.gec-hero-body, .ges-hero-body{ display:none!important }
/* hero image — absolute edge-to-edge banner */
.gec-hero-media, .ges-hero-media{ display:none!important }
.gec-hero-img, .ges-hero-img{
  position:absolute!important; inset:0!important; width:100%!important; height:100%!important;
  border-radius:0!important; aspect-ratio:unset!important; border:0!important; overflow:hidden!important; background:#000!important;
  z-index:1!important;
}
.gec-hero-img img, .ges-hero-img img{
  max-width:none!important; max-width:none!important;
  width:100%!important; height:100%!important; object-fit:cover!important; object-position:center 35%!important;
  display:block!important; filter:saturate(1.04) contrast(1.02) brightness(.96)!important;
}
.gec-hero-gradient, .ges-hero-gradient{
  position:absolute!important; inset:0!important; z-index:1!important;
  background:linear-gradient(90deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.35) 42%, rgba(0,0,0,.12) 72%, rgba(0,0,0,0) 100%), linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,0) 55%, rgba(0,0,0,.22) 100%)!important;
}
/* stats cards floating right inside banner */
.gec-hero-stats, .ges-hero-stats{ display:none!important; /* hidden for new hero */ }
/* hidden stats replaced */ .gec-hero-stats-old, .ges-hero-stats-old{
  position:absolute!important; right:32px!important; top:50%!important; bottom:auto!important;
  transform:translateY(-50%)!important;
  width:min(240px, 28vw)!important;
  background:rgba(16,16,16,.76)!important; backdrop-filter:blur(14px)!important; -webkit-backdrop-filter:blur(14px)!important;
  border:1px solid rgba(255,255,255,.13)!important; border-radius:16px!important; padding:18px 14px!important;
  display:flex!important; flex-direction:column!important; gap:10px!important; justify-content:center!important;
  box-shadow:0 20px 44px rgba(0,0,0,.42)!important; z-index:2!important;
}
.gec-stat, .ges-stat{ display:flex!important; align-items:center!important; gap:10px!important; color:#e9e9e9!important; font-size:13px!important; font-weight:600!important}
.gec-stat-ico, .ges-ico{ width:32px!important; height:32px!important; display:grid!important; place-items:center!important; border-radius:999px!important; background:rgba(94,162,96,.18)!important; color:#5ea260!important; border:1px solid rgba(94,162,96,.32)!important; flex:0 0 auto!important}
.gec-stat-ico svg, .ges-ico svg, .ges-hero-stats svg{ width:16px!important; height:16px!important; stroke-width:1.7!important}
@media(max-width:1100px){ .gec-hero-inner,.ges-hero-inner{ gap:24px!important} .gec-hero-stats,.ges-hero-stats{ right:20px!important; width:min(220px,30vw)!important} }
@media(max-width:900px){
  .gec-plugin-hero,.ges-career-hero{ height:560px!important; min-height:480px!important }
  .gec-hero-inner,.ges-hero-inner{ grid-template-columns:1fr!important; padding:0 24px!important; align-content:center!important}
  .gec-hero-stats,.ges-hero-stats{ right:16px!important; width:min(200px, 42vw)!important}
}
@media(max-width:640px){
  .gec-plugin-hero,.ges-career-hero{ height:520px!important; min-height:480px!important; max-height:600px!important; align-items:flex-end!important; padding-bottom:28px!important}
  .gec-hero-inner,.ges-hero-inner{ padding:0 16px!important; grid-template-columns:1fr!important; height:auto!important}
  .gec-plugin-hero h1, .ges-career-hero h1{ font-size:38px!important; line-height:.96!important}
  .gec-hero-img img, .ges-hero-img img{
  max-width:none!important; object-position:center 30%!important}
  .gec-hero-gradient, .ges-hero-gradient{ background:linear-gradient(180deg, rgba(5,5,5,.08) 0%, rgba(5,5,5,.62) 55%, rgba(5,5,5,.88) 100%), linear-gradient(90deg, rgba(5,5,5,.55) 0%, transparent 70%)!important}
  .gec-hero-stats, .ges-hero-stats{ display:none!important; /* hidden for new hero */ }
/* hidden stats replaced */ .gec-hero-stats-old, .ges-hero-stats-old{
    position:static!important; transform:none!important; width:100%!important; margin-top:18px!important;
    background:rgba(255,255,255,.04)!important; border:1px solid rgba(255,255,255,.08)!important; backdrop-filter:none!important;
    flex-direction:row!important; flex-wrap:wrap!important; gap:8px!important; padding:12px!important; border-radius:14px!important;
  }
  .gec-stat, .ges-stat{ flex:1 1 auto!important; justify-content:center!important; background:rgba(255,255,255,.03)!important; border:1px solid rgba(255,255,255,.08)!important; border-radius:999px!important; padding:8px 10px!important; font-size:12px!important}
  .ges-stat{ flex:1 1 46%!important }
  .ges-hero-stats{ position:static!important; width:100%!important; bottom:auto!important; top:auto!important; transform:none!important}
}

/* ─── LISTING WRAP ─── */
.gec-wrap.gec-dark.gec-redesign{ --gec-green:#5ea260; --gec-muted:#b8b8b8; background:#050505!important; color:#fff!important; font-family:"Anek Latin",Manrope,system-ui,sans-serif!important; width:100vw!important; margin-left:calc(50% - 50vw)!important; margin-right:calc(50% - 50vw)!important; max-width:none!important; padding:0 0 56px!important; min-height:50vh}
.gec-wrap.gec-dark .gec-inner{ max-width:1440px; margin:0 auto; padding:36px 24px 0}
@media(max-width:640px){ .gec-wrap.gec-dark .gec-inner{ padding:28px 16px 0}}
.gec-apply-header{ margin:0 0 22px}
.gec-apply-title{ display:flex; align-items:center; gap:clamp(18px,2vw,32px); margin:0 0 10px}
.gec-apply-title h2{ margin:0; color:#fff; font-size:clamp(34px,3.2vw,44px); font-weight:500; letter-spacing:-.035em; line-height:1; white-space:nowrap}
.gec-apply-line{ flex:0 0 clamp(50px,10vw,160px); height:1px; background:linear-gradient(90deg,#5ea260, rgba(94,162,96,0)); display:block}
.gec-apply-sub{ margin:0; color:#b8b8b8; font-size:15px; line-height:1.5; max-width:680px}

/* Controls */
.gec-controls{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin:22px 0 14px}
.gec-search{ flex:1 1 520px; max-width:640px; position:relative; display:flex; align-items:center}
.gec-search{ position:relative!important; }
.gec-search svg, .gec-search .search-icon{ position:absolute!important; left:18px!important; top:50%!important; transform:translateY(-50%)!important; width:18px!important; height:18px!important; stroke:rgba(255,255,255,.55)!important; pointer-events:none!important}
.gec-search input, .gec-search .search-input{ width:100%!important; height:52px!important; padding-left:48px!important; padding-right:44px!important; padding-top:0!important; padding-bottom:0!important; } border:1px solid rgba(255,255,255,.14); border-radius:12px; background:rgba(255,255,255,.03); color:#fff; font-size:14px; outline:none; transition:.2s}
.gec-search input::placeholder{ color:rgba(255,255,255,.5)}
.gec-search input:focus{ border-color:#5ea260; background:rgba(255,255,255,.05); box-shadow:0 0 0 3px rgba(94,162,96,.14)}
.gec-clear-btn{ position:absolute; right:10px; width:28px; height:28px; display:grid; place-items:center; border:0; background:rgba(255,255,255,.08); color:rgba(255,255,255,.8); border-radius:999px; cursor:pointer; font-size:12px}
.gec-clear-btn[hidden]{ display:none!important}
.gec-control-actions{ display:flex; gap:10px; align-items:center; margin-left:auto}
/* Filters button — Good Earth green only */
.gec-filter-btn{
  display:inline-flex!important; align-items:center!important; gap:8px!important;
  height:44px!important; padding:0 18px!important;
  border:1px solid #5ea260!important;
  background:transparent!important;
  color:#5ea260!important;
  border-radius:10px!important; font-weight:700!important; font-size:13px!important;
  cursor:pointer!important; transition:.2s!important; white-space:nowrap!important;
}
.gec-filter-btn:hover, .gec-filter-btn[aria-expanded="true"]{
  background:#5ea260!important; color:#fff!important; border-color:#5ea260!important;
}
.gec-filter-btn:hover svg, .gec-filter-btn[aria-expanded="true"] svg{ stroke:#fff!important}
.gec-filter-btn svg{ width:16px!important; height:16px!important; stroke:#5ea260!important}
.gec-filter-btn .gec-filter-badge{
  min-width:20px!important; height:20px!important; padding:0 6px!important;
  display:inline-grid!important; place-items:center!important;
  background:#5ea260!important; color:#fff!important; font-size:11px!important; font-weight:800!important; border-radius:999px!important; line-height:1!important;
}
.gec-filter-btn[aria-expanded="true"] .gec-filter-badge{ background:#fff!important; color:#5ea260!important}
.gec-filter-badge[hidden]{ display:none!important}
.gec-sort{ position:relative; display:flex; align-items:center; height:44px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.02); border-radius:10px; padding:0 34px 0 12px; transition:.2s}
.gec-sort:hover{ border-color:rgba(94,162,96,.35)}
.gec-sort select{ appearance:none; -webkit-appearance:none; border:0; background:transparent; color:#fff; font-size:13px; font-weight:600; outline:none; cursor:pointer; padding-right:6px}
.gec-sort select option{ color:#111}
.gec-sort-arrow{ position:absolute; right:10px; width:14px; height:14px; pointer-events:none; stroke:rgba(255,255,255,.6)}
@media(max-width:720px){
  .gec-controls{ flex-direction:column; align-items:stretch}
  .gec-search{ max-width:none}
  .gec-control-actions{ margin-left:0; width:100%; justify-content:space-between}
  .gec-filter-btn{ flex:1; justify-content:center}
  .gec-sort{ flex:1; justify-content:center}
}
.gec-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin:8px 0 10px; min-height:22px}
.gec-count{ color:#b8b8b8; font-size:13px; font-weight:500}
.gec-clear-link{ border:0; background:none; color:#5ea260; font-size:13px; font-weight:600; cursor:pointer; padding:0}
.gec-clear-link:hover{ text-decoration:underline}
.gec-clear-link[hidden]{ display:none!important}

/* Job grid — elegant horizontal rows with View Job CTA */
.gec-grid{ display:grid; gap:0}
.gec-card, .gec-job-row{
  display:flex!important; align-items:center!important; justify-content:space-between!important;
  gap:20px!important; padding:22px 4px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:transparent!important; border-left:0!important; border-right:0!important; border-top:0!important; border-radius:0!important; box-shadow:none!important; transition:.22s!important; cursor:pointer!important; min-height:88px!important;
}
.gec-card:hover, .gec-job-row:hover{ background:rgba(255,255,255,.016)!important; border-bottom-color:rgba(94,162,96,.32)!important}
.gec-card:focus-visible, .gec-job-row:focus-visible{ outline:2px solid #5ea260; outline-offset:2px}
.gec-card > div:first-child, .gec-job-left{ flex:1; min-width:0; display:flex; gap:14px; align-items:flex-start}
.gec-job-ico{ width:28px; height:28px; display:grid; place-items:center; border-radius:999px; border:1px solid rgba(94,162,96,.22); background:rgba(94,162,96,.08); color:#5ea260; flex:0 0 auto; margin-top:2px}
.gec-job-ico svg{ width:14px; height:14px; stroke-width:1.8}
.gec-card h3{ margin:0 0 8px!important; color:#fff!important; font-size:17px!important; font-weight:600!important; line-height:1.25!important; letter-spacing:-.01em!important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.gec-card h3 a{ color:#fff!important; text-decoration:none}
.gec-job-meta{ display:flex; flex-wrap:wrap; gap:14px; color:#9aa0a6; font-size:13px; line-height:1}
.gec-job-meta span{ display:inline-flex; align-items:center; gap:6px; color:#9aa0a6; font-weight:500}
.gec-job-meta svg{ width:14px; height:14px; stroke:#5ea260; flex:0 0 auto}
.gec-meta, .gec-desc{ display:flex!important; }
.gec-wrap.gec-dark .gec-desc{ display:none!important}
.gec-pill{ display:none}
.gec-card-foot{ flex:0 0 auto; display:flex; align-items:center; gap:10px}
/* View Job CTA — Good Earth green, proper SVG, never hidden by theme */
.gec-card-foot .gec-link,
.gec-card-foot .gec-view-link{
  display:inline-flex!important; align-items:center!important; justify-content:center!important;
  gap:8px!important; color:#5ea260!important; font-size:13px!important; font-weight:700!important;
  text-decoration:none!important; white-space:nowrap!important; opacity:1!important; visibility:visible!important;
}
.gec-card-foot .gec-link::before{ display:none!important}
.gec-card-foot .gec-link::after{ content:none!important}
.gec-view-text, .gec-view-job span:first-child{ color:#5ea260!important; font-size:13px!important; font-weight:700!important; letter-spacing:.01em}
.gec-view-arrow, .gec-view-job-arrow{
  width:32px!important; height:32px!important; display:grid!important; place-items:center!important;
  border-radius:999px!important; border:1px solid rgba(94,162,96,.5)!important;
  background:transparent!important; color:#5ea260!important; flex:0 0 auto!important;
  transition:all .22s ease!important; line-height:1!important;
}
.gec-view-arrow svg{ width:14px!important; height:14px!important; display:block!important; stroke:currentColor!important; stroke-width:2!important; fill:none!important; opacity:1!important}
.gec-card:hover .gec-view-arrow, .gec-job-row:hover .gec-view-arrow, .gec-view-job-arrow{
  background:#5ea260!important; color:#fff!important; border-color:#5ea260!important; transform:translateX(5px)!important;
}
.gec-card:hover .gec-view-text, .gec-job-row:hover .gec-view-text{ color:#fff!important}
.gec-card-foot span{ display:none!important}
.gec-card-foot .gec-view-text, .gec-card-foot .gec-view-arrow, .gec-card-foot .gec-link{ display:inline-flex!important}
@media(max-width:760px){
  .gec-card, .gec-job-row{ flex-direction:column; align-items:stretch; padding:16px 0; gap:12px}
  .gec-card h3{ font-size:16px!important; white-space:normal; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
  .gec-job-meta{ gap:10px}
  .gec-card-foot{ justify-content:flex-start}
}
.gec-wrap.gec-dark .gec-grid{ gap:0!important; grid-template-columns:1fr!important}
.gec-wrap.gec-dark .gec-card{ padding:22px 4px!important; min-height:88px!important; align-items:center!important; justify-content:space-between!important}

/* Empty / skeleton / Load more */
.gec-empty{ padding:48px 24px; text-align:center; background:rgba(255,255,255,.03)!important; border:1px solid rgba(255,255,255,.1)!important; border-radius:12px!important; color:#fff!important}
.gec-empty h3, .gec-empty h4{ margin:0 0 8px!important; color:#fff!important; font-size:16px!important}
.gec-empty p{ color:#9aa0a6!important; margin:0!important}
.gec-skeleton{ padding:16px 0}
.gec-skel-row{ height:88px; background:linear-gradient(90deg, rgba(255,255,255,.04), rgba(255,255,255,.07), rgba(255,255,255,.04)); background-size:200% 100%; animation:gecShimmer 1.2s infinite; border-bottom:1px solid rgba(255,255,255,.06)}
@keyframes gecShimmer{ 0%{background-position:200% 0} 100%{background-position:-200% 0}}
.gec-load-wrap{ text-align:center; margin-top:28px}
.gec-load-btn{ background:transparent!important; border:1px solid rgba(255,255,255,.14)!important; color:#fff!important; border-radius:999px!important; padding:12px 22px!important; font-weight:600!important; font-size:13px!important; display:inline-flex; align-items:center; gap:8px}
.gec-load-btn:hover{ border-color:#5ea260!important; background:rgba(94,162,96,.1)!important}
.gec-load-btn:disabled{ opacity:.5; cursor:not-allowed}

/* ─── Overlay + Drawer — Good Earth dark ─── */
.gec-overlay{ position:fixed; inset:0; background:rgba(0,0,0,.56); backdrop-filter:blur(2px); z-index:999; opacity:1; transition:opacity .3s}
.gec-overlay[hidden]{ display:block!important; opacity:0; pointer-events:none}
.gec-drawer{ position:fixed; top:0; right:0; height:100vh; height:100dvh; width:min(420px, 92vw); background:#050505!important; background-color:#050505!important; border-left:1px solid rgba(255,255,255,.1)!important; z-index:1000; display:flex; flex-direction:column; transform:translateX(0); transition:transform .32s cubic-bezier(.22,1,.36,1); box-shadow:-24px 0 60px rgba(0,0,0,.55); overflow:hidden}
.gec-drawer[hidden]{ display:flex!important; transform:translateX(100%); pointer-events:none}
.gec-drawer[aria-hidden="true"]{ transform:translateX(100%)}
.gec-drawer-head{ display:flex; align-items:center; justify-content:space-between; padding:20px 20px 16px; border-bottom:1px solid rgba(255,255,255,.08); flex:0 0 auto; background:#050505}
.gec-drawer-head h3{ margin:0; color:#fff; font-size:18px; font-weight:700; letter-spacing:-.01em}
.gec-drawer-close{ width:36px; height:36px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.04); color:#fff; border-radius:999px; cursor:pointer; font-size:14px; transition:.15s}
.gec-drawer-close:hover{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.2)}
.gec-drawer-body{ flex:1; overflow:auto; padding:6px 20px 20px; overscroll-behavior:contain; background:#050505}
.gec-drawer-body::-webkit-scrollbar{ width:6px}
.gec-drawer-body::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.12); border-radius:999px}
.gec-drawer-foot{ display:flex; gap:12px; padding:16px 20px; border-top:1px solid rgba(255,255,255,.08); background:#050505; flex:0 0 auto}
.gec-drawer-foot .gec-btn{ flex:1; justify-content:center; height:44px; border-radius:999px; font-weight:700}
.gec-drawer-foot .gec-btn.outline{ background:transparent!important; border-color:rgba(255,255,255,.18)!important; color:#fff!important}
.gec-drawer-foot .gec-btn:not(.outline){ background:#5ea260!important; border-color:#5ea260!important; color:#fff!important}
.gec-drawer-foot .gec-btn:not(.outline):hover{ background:#4a8a4f!important}
.gec-apply-badge{ margin-left:6px; min-width:18px; height:18px; padding:0 5px; display:inline-grid; place-items:center; background:#fff; color:#5ea260; font-size:11px; font-weight:800; border-radius:999px}
.gec-apply-badge[hidden]{ display:none!important}
@media(max-width:640px){
  .gec-drawer{ top:auto; bottom:0; right:0; left:0; width:100%; height:min(84vh, 640px); height:min(84dvh, 640px); border-left:0; border-top:1px solid rgba(255,255,255,.08); border-radius:18px 18px 0 0; transform:translateY(0)}
  .gec-drawer[hidden], .gec-drawer[aria-hidden="true"]{ transform:translateY(100%)}
  .gec-drawer-head{ padding:16px 16px 12px}
  .gec-drawer-body{ padding:6px 16px 16px}
}
.gec-group{ padding:16px 0; border-bottom:1px solid rgba(255,255,255,.07)}
.gec-group:last-child{ border-bottom:0}
.gec-group h4{ margin:0 0 12px; color:#fff!important; font-size:13px; font-weight:700; letter-spacing:-.01em; display:flex; justify-content:space-between; align-items:center}
.gec-opts{ display:flex; flex-direction:column; gap:8px}
.gec-check{ display:flex; gap:10px; align-items:center; color:#d6d6d6!important; font-size:13px; cursor:pointer; padding:6px 0; line-height:1.2}
.gec-check:hover{ color:#fff!important}
.gec-check input[type="checkbox"], .gec-check input[type="radio"]{ width:18px; height:18px; accent-color:#5ea260; flex:0 0 auto; border-radius:4px; cursor:pointer; border:1px solid rgba(255,255,255,.18)}
.gec-check input[type="checkbox"]:checked, .gec-check input[type="radio"]:checked{ accent-color:#5ea260; border-color:#5ea260}
.gec-check:has(input:checked){ color:#fff!important; font-weight:600}
.gec-opts .gec-range{ display:flex; gap:10px}
.gec-range input{ flex:1; height:42px; padding:0 12px; border:1px solid rgba(255,255,255,.14); border-radius:10px; background:#101210; color:#fff; outline:none; font-size:13px}
.gec-range input::placeholder{ color:rgba(255,255,255,.4)}
.gec-range input:focus{ border-color:#5ea260; background:#151815; box-shadow:0 0 0 3px rgba(94,162,96,.14)}
.gec-group button{ font-family:inherit}
.gec-group button[style*="Show"]{ color:#5ea260!important}
.gec-drawer-loading{ padding:16px 0; color:#9aa0a6; font-size:13px}

/* ─── Detail — Snapshot refined ─── */
.gec-wrap.gec-dark .gec-detail-main{background:transparent!important;border:none!important;color:#fff!important;padding:0!important}
.gec-wrap.gec-dark .gec-detail-main h1{color:#fff!important;font-size:clamp(24px,3vw,36px)!important}
.gec-wrap.gec-dark .gec-jd{color:#e5e7eb!important}
.gec-wrap.gec-dark .gec-snap{
  background:#0f1110!important; background-color:#0f1110!important;
  border:1px solid rgba(255,255,255,.1)!important; border-radius:14px!important;
  overflow:hidden!important; position:sticky!important; top:24px!important;
}
.gec-wrap.gec-dark .gec-snap-head{
  background:#5ea260!important; color:#fff!important;
  display:flex!important; justify-content:space-between!important; align-items:center!important;
  padding:16px 18px!important; font-weight:700!important; font-size:14px!important;
}
.gec-wrap.gec-dark .gec-snap-head span:last-child{ background:#fff!important; color:#5ea260!important; font-weight:800!important}
.gec-wrap.gec-dark .gec-snap-body{ padding:8px 18px 12px!important}
.gec-wrap.gec-dark .gec-row{
  display:grid!important; grid-template-columns:40px minmax(0,1fr)!important; gap:12px!important;
  align-items:center!important; align-content:center!important;
  width:100%!important; height:auto!important; min-height:0!important; max-height:none!important;
  padding:14px 0!important; margin:0!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important; font-size:13px!important;
}
.gec-wrap.gec-dark .gec-row-main{
  display:flex!important; flex-direction:column!important; justify-content:flex-start!important;
  align-items:flex-start!important; align-self:center!important; height:auto!important; min-height:0!important;
  max-height:none!important; gap:3px!important; margin:0!important; padding:0!important;
}
.gec-wrap.gec-dark .gec-row-ico{ align-self:center!important; margin:0!important; }
.gec-wrap.gec-dark .gec-row:last-child{ border-bottom:0!important}
.gec-row-ico{
  width:40px!important; height:40px!important; display:grid!important; place-items:center!important;
  border-radius:999px!important; background:rgba(94,162,96,.12)!important; color:#5ea260!important;
  border:1px solid rgba(94,162,96,.22)!important; flex:0 0 auto!important;
}
.gec-row-ico svg{ width:16px!important; height:16px!important; stroke-width:1.7!important; display:block!important}
.gec-wrap.gec-dark .gec-label{
  color:rgba(255,255,255,.62)!important; text-transform:uppercase!important; letter-spacing:.08em!important;
  font-size:11px!important; font-weight:600!important; line-height:1!important; margin:0!important;
}
.gec-wrap.gec-dark .gec-val{
  color:#fff!important; font-weight:600!important; font-size:13px!important; text-align:left!important;
  white-space:normal!important; overflow:visible!important; text-overflow:clip!important; word-break:break-word!important;
}
.gec-row-main{ display:flex!important; flex-direction:column!important; gap:3px!important; min-width:0!important; justify-content:flex-start!important; align-items:flex-start!important; height:auto!important; min-height:0!important}
@media(max-width:960px){ .gec-wrap.gec-dark .gec-val{ max-width:160px} }

/* ─── Share — 40px aligned ─── */
.gec-wrap.gec-dark .gec-share{
  border-top:1px solid rgba(255,255,255,.08)!important; padding:16px 18px!important; background:transparent!important;
}
.gec-wrap.gec-dark .gec-share h4{ color:#fff!important; font-size:13px!important; font-weight:700!important; margin:0 0 12px!important}
.gec-wrap.gec-dark .gec-share-btns{
  display:flex!important; gap:10px!important; align-items:center!important; justify-content:flex-start!important; flex-wrap:nowrap!important;
}
.gec-wrap.gec-dark .gec-share-btn{
  width:40px!important; height:40px!important; min-width:40px!important; min-height:40px!important;
  border-radius:999px!important; border:1px solid rgba(255,255,255,.16)!important;
  background:transparent!important; color:#fff!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  padding:0!important; line-height:1!important; flex:0 0 auto!important; cursor:pointer!important;
  font-size:13px!important; font-weight:700!important;
}
.gec-wrap.gec-dark .gec-share-btn svg{ width:18px!important; height:18px!important; display:block!important; stroke-width:1.8!important}
.gec-wrap.gec-dark .gec-share-btn:hover{ border-color:#5ea260!important; background:rgba(94,162,96,.12)!important; color:#fff!important}

/* Similar */
.gec-wrap.gec-dark .gec-similar{ margin-top:28px!important}
.gec-wrap.gec-dark .gec-similar h3{ color:#fff!important; font-size:16px!important; font-weight:700!important}
.gec-wrap.gec-dark .gec-similar .gec-card{flex-direction:column!important; align-items:flex-start!important; background:rgba(255,255,255,.04)!important; border:1px solid rgba(255,255,255,.1)!important; border-radius:12px!important; padding:16px!important}
.gec-wrap.gec-dark .gec-similar .gec-card h3{font-size:15px!important}

/* ─── APPLY MODAL — fixed viewport above header ─── */
html.gec-modal-open, body.gec-modal-open{ overflow:hidden!important; overscroll-behavior:none!important; height:100%}
.gec-modal{
  position:fixed!important; inset:0!important; width:100vw!important; height:100vh!important; height:100dvh!important;
  min-height:100vh; min-height:100dvh; background:rgba(0,0,0,.62)!important; backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px);
  display:grid!important; place-items:center!important; z-index:999999!important; padding:16px!important; margin:0!important;
  opacity:0; pointer-events:none; transition:opacity .22s ease; isolation:isolate; transform:none!important; filter:none!important;
}
.gec-modal.open{ opacity:1!important; pointer-events:auto!important}
.gec-modal[hidden]{ display:grid!important; opacity:0!important; pointer-events:none!important}
.gec-modal.open[hidden]{ display:grid!important; opacity:1!important; pointer-events:auto!important}
.gec-modal-box{
  position:relative!important; z-index:1000000!important; background:#0f1410!important; border:1px solid rgba(255,255,255,.12)!important; border-radius:16px!important;
  max-width:680px!important; width:100%!important; width:min(680px, calc(100vw - 32px))!important;
  max-height:90vh!important; max-height:90dvh!important; overflow:auto!important; -webkit-overflow-scrolling:touch; overscroll-behavior:contain;
  color:#fff!important; padding:28px 24px 24px!important; margin:auto!important; box-shadow:0 24px 64px rgba(0,0,0,.55), 0 8px 24px rgba(0,0,0,.35)!important; transform:none!important;
}
.gec-modal-close{ position:absolute!important; top:12px!important; right:12px!important; width:36px!important; height:36px!important; border-radius:999px!important; border:1px solid rgba(255,255,255,.12)!important; background:rgba(255,255,255,.04)!important; color:#fff!important; display:grid!important; place-items:center!important; cursor:pointer!important; z-index:1000001!important}
.gec-modal-close:hover{ background:rgba(255,255,255,.08)!important}
.gec-field label{ color:rgba(255,255,255,.85)!important}
.gec-field input, .gec-field select, .gec-field textarea{ background:rgba(255,255,255,.06)!important; border:1px solid rgba(255,255,255,.14)!important; color:#fff!important}
.gec-field input::placeholder, .gec-field textarea::placeholder{ color:rgba(255,255,255,.45)!important}
.gec-consent{ background:rgba(255,255,255,.05)!important; border:1px solid rgba(255,255,255,.1)!important; color:rgba(255,255,255,.85)!important}
.gec-toast{ position:fixed; bottom:20px; right:20px; background:#111827; color:#fff; padding:12px 16px; border-radius:10px; font-size:13px; display:none; z-index:1200}
.gec-modal .gec-btn, #gec-apply-form button[type="submit"], #gec-apply-box button[type="submit"], .gec-modal-box button[type="submit"]{
  background:#5ea260!important; background-color:#5ea260!important; border:1px solid #5ea260!important; color:#fff!important; border-radius:999px!important;
}
.gec-modal .gec-btn:hover, #gec-apply-form button[type="submit"]:hover{ background:#4a8a4f!important; border-color:#4a8a4f!important}
.gec-modal .gec-btn.outline, #gec-apply-form button.outline, .gec-modal-box .gec-btn.outline{
  background:transparent!important; color:#fff!important; border-color:rgba(255,255,255,.22)!important;
}
.gec-modal .gec-btn.outline:hover{ border-color:#5ea260!important; color:#5ea260!important}
.gec-modal button[type="submit"]:not(.outline){ background:#5ea260!important; color:#fff!important}
@media(max-width:640px){
  .gec-modal{ padding:12px!important; align-items:center!important}
  .gec-modal-box{ padding:22px 16px 18px!important; width:calc(100vw - 24px)!important; max-height:92vh!important; max-height:92dvh!important}
}
/* accessibility focus */
.gec-filter-btn:focus-visible, .gec-drawer-close:focus-visible, .gec-clear-link:focus-visible, .gec-sort select:focus-visible, .gec-search input:focus-visible, .gec-view-link:focus-visible{ outline:2px solid #5ea260; outline-offset:2px}


/* ─── Brand lock: prevent Elementor/theme accent (pink) from leaking into Careers UI ─── */
.gec-wrap.gec-dark a.gec-link,
.gec-wrap.gec-dark a.gec-view-job,
.gec-wrap.gec-dark .gec-view-job,
.gec-wrap.gec-dark .gec-view-text,
.gec-wrap.gec-dark .gec-view-job span:first-child{
  color:#5ea260!important;
  text-decoration:none!important;
}
.gec-wrap.gec-dark a.gec-view-job:hover,
.gec-wrap.gec-dark a.gec-view-job:hover span:first-child{
  color:#ffffff!important;
}
.gec-wrap.gec-dark .gec-view-job{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  font-size:13px!important;
  font-weight:700!important;
}
.gec-wrap.gec-dark .gec-view-job-arrow{
  width:32px!important;height:32px!important;display:grid!important;place-items:center!important;
  border-radius:999px!important;border:1px solid rgba(94,162,96,.5)!important;
  background:transparent!important;color:#5ea260!important;flex:0 0 auto!important;
  transition:all .22s ease!important;
}
.gec-wrap.gec-dark .gec-view-job-arrow svg{width:14px!important;height:14px!important;display:block!important;stroke:currentColor!important;fill:none!important}
.gec-wrap.gec-dark a.gec-view-job:hover .gec-view-job-arrow{background:#5ea260!important;color:#fff!important;border-color:#5ea260!important;transform:translateX(5px)!important}
.gec-drawer-close,
.gec-modal-close{
  color:#fff!important;
  background:rgba(255,255,255,.04)!important;
  border-color:rgba(255,255,255,.14)!important;
  text-decoration:none!important;
}
.gec-drawer-close:hover,
.gec-modal-close:hover{color:#fff!important;background:rgba(94,162,96,.14)!important;border-color:#5ea260!important}
.gec-drawer-close:focus,
.gec-modal-close:focus{color:#fff!important;outline:2px solid #5ea260!important;outline-offset:2px}
.gec-apply-meta{margin:0 0 16px!important;color:#b8b8b8!important;font-size:13px!important;line-height:1.5!important}
