.employer-page {
  --ep-ink: #171917;
  --ep-ink-soft: #242824;
  --ep-paper: #f1eee6;
  --ep-cream: #fbf8ef;
  --ep-orange: #f36b32;
  --ep-orange-dark: #d9501e;
  --ep-green: #8cbe72;
  --ep-blue: #14243a;
  --ep-line: rgba(23, 25, 23, .14);
  --ep-muted: #656860;
  color: var(--ep-ink);
  background: var(--ep-paper);
  font-family: 'IBM Plex Sans', sans-serif;
}

.employer-page * { box-sizing: border-box; }
.employer-page h1,
.employer-page h2,
.employer-page h3 { font-family: 'Archivo Black', sans-serif; letter-spacing: -.045em; }
.employer-page p { font-family: 'IBM Plex Sans', sans-serif; }
.employer-page .site-header { background: rgba(251,248,239,.95); border-color: var(--ep-line); }
.employer-page .nav__menu a { color: var(--ep-ink); }
.employer-page .nav__menu a:not(.nav__cta):not(.nav__cta--contact):hover,
.employer-page .nav__menu a.is-active { color: var(--ep-orange-dark); }
.employer-page .nav__cta { color: #fff !important; background: var(--ep-orange); border-color: var(--ep-orange); }
.employer-page .nav__cta--contact { color: var(--ep-ink) !important; border-color: rgba(23,25,23,.3); }
.employer-page .nav__toggle { color: var(--ep-ink); }
.employer-page .site-footer { margin-top: 0; }

.ep-shell { width: min(1220px, calc(100% - 48px)); margin: 0 auto; }
.ep-section { padding: 120px 0; }
.ep-section--paper { background: var(--ep-cream); }
.ep-eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--ep-orange-dark); font: 600 .7rem/1 'IBM Plex Mono', monospace; letter-spacing: .13em; text-transform: uppercase; }
.ep-eyebrow i { width: 25px; height: 2px; background: currentColor; }
.ep-eyebrow--light { color: #ffc18f; }
.ep-section-head { max-width: 880px; margin-bottom: 64px; }
.ep-section-head h2,
.ep-intro-grid h2,
.ep-candidate h2,
.ep-stack h2,
.ep-economics h2 { margin: 20px 0 0; font-size: clamp(2.7rem, 5.6vw, 5.5rem); line-height: .98; }
.ep-section-head p { max-width: 760px; margin: 24px 0 0; color: var(--ep-muted); font-size: 1.08rem; line-height: 1.7; }
.ep-section-head--light h2 { color: #fff; }
.ep-section-head--light p { color: #b9bdb5; }
.ep-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.ep-button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; padding: 0 22px; border: 1px solid transparent; font: 600 .8rem/1 'IBM Plex Mono', monospace; transition: transform .2s ease, color .2s ease, background .2s ease, border-color .2s ease; }
.ep-button:hover { transform: translateY(-3px); }
.ep-button--primary { color: #fff; background: var(--ep-orange); }
.ep-button--primary:hover { color: #fff; background: var(--ep-orange-dark); }
.ep-button--outline { color: var(--ep-ink); border-color: rgba(23,25,23,.35); }
.ep-button--outline:hover { color: var(--ep-ink); border-color: var(--ep-ink); background: rgba(255,255,255,.55); }
.ep-button--light { color: var(--ep-ink); background: #fff; }
.ep-button--outline-light { color: #fff; border-color: rgba(255,255,255,.45); }
.ep-button--outline-light:hover { color: var(--ep-ink); background: #fff; }

.ep-hero { position: relative; overflow: hidden; padding: 96px 0 0; background: var(--ep-cream); }
.ep-hero::before { content: ''; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, transparent 49.9%, rgba(23,25,23,.055) 50%, transparent 50.1%), linear-gradient(rgba(23,25,23,.04) 1px, transparent 1px); background-size: 100% 100%, 100% 96px; }
.ep-hero::after { content: 'EMPLOYERS'; position: absolute; right: -18px; top: 48px; color: rgba(23,25,23,.035); font: 400 clamp(7rem, 18vw, 16rem)/1 'Archivo Black', sans-serif; letter-spacing: -.08em; writing-mode: vertical-rl; }
.ep-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(380px, .8fr); gap: 76px; align-items: center; min-height: 700px; padding-bottom: 68px; }
.ep-hero h1 { max-width: 820px; margin: 24px 0 28px; font-size: clamp(4rem, 6.8vw, 7.6rem); line-height: .89; }
.ep-hero h1 em { color: var(--ep-orange); font-style: normal; }
.ep-hero__copy > p { max-width: 760px; color: var(--ep-muted); font-size: 1rem; line-height: 1.72; }
.ep-hero__copy .ep-lede { color: var(--ep-ink); font-size: 1.23rem; font-weight: 600; line-height: 1.55; }
.ep-hero__copy .ep-actions { margin-top: 34px; }
.ep-support { margin: 18px 0 0; font: 500 .69rem/1.5 'IBM Plex Mono', monospace !important; }
.ep-hero__visual { position: relative; min-height: 610px; isolation: isolate; }
.ep-hero__visual::before { content: ''; position: absolute; inset: 70px 18px 38px 42px; z-index: -1; border: 1px solid rgba(23,25,23,.13); background: rgba(255,255,255,.5); box-shadow: 28px 28px 0 rgba(243,107,50,.14); transform: rotate(2deg); }
.ep-screen-card { position: absolute; width: 94%; margin: 0; overflow: hidden; border: 8px solid #fff; background: #fff; box-shadow: 0 24px 55px rgba(23,25,23,.24); transition: transform .45s cubic-bezier(.22,1,.36,1), box-shadow .45s ease; }
.ep-screen-card img { display: block; width: 100%; height: auto; }
.ep-screen-card--academy { z-index: 1; top: 20px; right: -3%; transform: rotate(4deg); }
.ep-screen-card--growing { z-index: 2; left: -2%; bottom: 4px; transform: rotate(-5deg); }
.ep-hero__visual:hover .ep-screen-card--academy { transform: rotate(1.5deg) translate3d(-8px,-8px,0); box-shadow: 0 30px 65px rgba(23,25,23,.27); }
.ep-hero__visual:hover .ep-screen-card--growing { transform: rotate(-2deg) translate3d(8px,8px,0); box-shadow: 0 30px 65px rgba(23,25,23,.27); }
.ep-promise { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3,1fr); margin: 0; border-top: 1px solid var(--ep-line); color: var(--ep-ink); font: 600 clamp(1rem, 1.75vw, 1.45rem)/1.2 'Archivo Black', sans-serif; text-transform: uppercase; }
.ep-promise span { padding: 25px 20px; border-right: 1px solid var(--ep-line); text-align: center; }
.ep-promise span:last-child { border-right: 0; color: var(--ep-orange-dark); }
.ep-value-band { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--ep-line); border-bottom: 0; background: #fff; }
.ep-value-band article { min-height: 210px; padding: 30px; border-right: 1px solid var(--ep-line); }
.ep-value-band article:last-child { border-right: 0; }
.ep-value-band b { color: var(--ep-orange-dark); font: 600 .68rem/1 'IBM Plex Mono', monospace; }
.ep-value-band strong { display: block; margin: 52px 0 10px; font-size: 1.08rem; }
.ep-value-band p { margin: 0; color: var(--ep-muted); font-size: .86rem; line-height: 1.55; }

.ep-intro-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(360px,.9fr); gap: 100px; align-items: end; }
.ep-intro-grid h2 { margin-top: 22px; }
.ep-intro-copy { padding-left: 42px; border-left: 2px solid var(--ep-orange); }
.ep-intro-copy p { margin: 0 0 20px; color: var(--ep-muted); font-size: 1.08rem; line-height: 1.72; }

.ep-dual { background: var(--ep-paper); }
.ep-dual__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr); gap: 70px; align-items: center; }
.ep-dual__cards { display: grid; grid-template-columns: repeat(2,1fr); border: 1px solid var(--ep-line); }
.ep-dual__cards article { min-height: 510px; padding: 32px; background: #fff; }
.ep-dual__cards article + article { border-left: 1px solid var(--ep-line); background: var(--ep-cream); }
.ep-dual__cards article > span,
.ep-sector > span { color: var(--ep-orange-dark); font: 600 .66rem/1 'IBM Plex Mono', monospace; letter-spacing: .1em; text-transform: uppercase; }
.ep-dual__cards h3 { margin: 68px 0 18px; font-size: 1.65rem; line-height: 1.06; }
.ep-dual__cards p { color: var(--ep-muted); line-height: 1.62; }
.ep-dual__cards ul { margin: 28px 0 0; padding: 0; list-style: none; }
.ep-dual__cards li { padding: 11px 0 11px 18px; border-top: 1px solid var(--ep-line); color: #4f534d; font-size: .82rem; line-height: 1.4; }
.ep-dual__cards li::before { content: '→'; margin-left: -18px; margin-right: 8px; color: var(--ep-orange-dark); }
.ep-figure { margin: 0; padding: 12px; border: 1px solid var(--ep-line); background: var(--ep-cream); box-shadow: 18px 18px 0 rgba(23,25,23,.08); }
.ep-figure img { display: block; width: 100%; height: auto; }
.ep-figure figcaption { padding: 16px 8px 5px; color: var(--ep-muted); font: 500 .62rem/1.45 'IBM Plex Mono', monospace; text-transform: uppercase; }

.ep-sectors { padding: 120px 0; color: #fff; background: var(--ep-ink); }
.ep-sector-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(255,255,255,.18); }
.ep-sector { position: relative; min-height: 430px; overflow: hidden; padding: 44px; background: var(--ep-ink-soft); }
.ep-sector::after { content: ''; position: absolute; right: -80px; bottom: -110px; width: 300px; height: 300px; border: 1px solid rgba(255,255,255,.12); border-radius: 50%; box-shadow: 0 0 0 45px rgba(255,255,255,.035), 0 0 0 90px rgba(255,255,255,.02); }
.ep-sector--skilled { color: #102015; background: #9fca86; }
.ep-sector--skilled > span { color: #274b2e; }
.ep-sector h3 { position: relative; z-index: 1; max-width: 520px; margin: 82px 0 20px; font-size: clamp(2rem,3vw,3.2rem); line-height: 1; }
.ep-sector p { position: relative; z-index: 1; max-width: 560px; color: #bec1ba; line-height: 1.68; }
.ep-sector--skilled p { color: #334839; }
.ep-sector a { position: absolute; z-index: 2; left: 44px; bottom: 38px; color: #fff; font: 600 .72rem/1 'IBM Plex Mono', monospace; text-transform: uppercase; }
.ep-sector--skilled a { color: #102015; }
.ep-sector a b { margin-left: 10px; }

.ep-matching { background: var(--ep-cream); }
.ep-match-grid { display: grid; grid-template-columns: repeat(12,1fr); border-top: 1px solid var(--ep-line); border-left: 1px solid var(--ep-line); }
.ep-match-grid article { grid-column: span 4; min-height: 290px; padding: 30px; border-right: 1px solid var(--ep-line); border-bottom: 1px solid var(--ep-line); background: rgba(255,255,255,.45); transition: transform .2s ease, background .2s ease; }
.ep-match-grid article:nth-child(2), .ep-match-grid article:nth-child(5) { transform: translateY(24px); }
.ep-match-grid article:hover { position: relative; z-index: 2; transform: translateY(-7px); background: #fff; }
.ep-match-grid b { color: var(--ep-orange-dark); font: 600 .68rem/1 'IBM Plex Mono', monospace; }
.ep-match-grid h3 { margin: 75px 0 15px; font-size: 1.35rem; line-height: 1.05; }
.ep-match-grid p { margin: 0; color: var(--ep-muted); font-size: .89rem; line-height: 1.55; }

.ep-candidate__grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(440px,1.1fr); gap: 100px; align-items: center; }
.ep-candidate h2 { margin-bottom: 28px; }
.ep-candidate p { color: var(--ep-muted); font-size: 1.05rem; line-height: 1.7; }
.ep-checks { margin: 30px 0 0; padding: 0; list-style: none; }
.ep-checks li { padding: 15px 0 15px 30px; border-top: 1px solid var(--ep-line); color: #50544e; font-size: .88rem; }
.ep-checks li::before { content: '✓'; margin-left: -30px; margin-right: 14px; color: var(--ep-orange-dark); font-weight: 700; }
.ep-profile-card { margin: 0; padding: 12px; overflow: hidden; background: var(--ep-ink); box-shadow: 22px 22px 0 rgba(243,107,50,.18); }
.ep-profile-card img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; object-position: center top; }

.ep-comparison { background: var(--ep-paper); }
.ep-stack-figure { margin: 0 0 48px; padding: 10px; border: 1px solid var(--ep-line); background: #fff; }
.ep-stack-figure img { display: block; width: 100%; height: auto; }
.ep-tabs { border: 1px solid var(--ep-line); background: #fff; }
.ep-tabs__list { display: flex; border-bottom: 1px solid var(--ep-line); }
.ep-tabs__list button { flex: 1; min-height: 62px; padding: 0 18px; border: 0; border-right: 1px solid var(--ep-line); color: var(--ep-muted); background: var(--ep-cream); font: 600 .72rem/1 'IBM Plex Mono', monospace; cursor: pointer; }
.ep-tabs__list button:last-child { border-right: 0; }
.ep-tabs__list button[aria-selected="true"] { color: #fff; background: var(--ep-ink); }
.ep-tab-panel { padding: 18px; }
.ep-table-scroll { overflow-x: auto; }
.ep-table { width: 100%; min-width: 900px; border-collapse: collapse; }
.ep-table caption { padding: 9px 5px 16px; color: var(--ep-muted); font: 500 .6rem/1.4 'IBM Plex Mono', monospace; text-align: left; text-transform: uppercase; }
.ep-table th,
.ep-table td { padding: 18px; border: 1px solid var(--ep-line); vertical-align: top; text-align: left; font-size: .78rem; line-height: 1.5; }
.ep-table thead th { color: #fff; background: var(--ep-ink); font: 600 .64rem/1.3 'IBM Plex Mono', monospace; text-transform: uppercase; }
.ep-table tbody th { width: 160px; font-size: .82rem; background: var(--ep-cream); }
.ep-lifecycle-table { min-width: 1080px; }
.ep-lifecycle-table td { color: #b5b8b2; font-size: 1rem; text-align: center; }
.ep-lifecycle-table td.is-primary { color: var(--ep-orange-dark); }
.ep-lifecycle-table th small { display: block; margin-top: 5px; color: var(--ep-muted); font-weight: 400; }
.ep-lifecycle-table .is-sixam th,
.ep-lifecycle-table .is-sixam td { color: #fff; background: var(--ep-ink); }
.ep-lifecycle-table .is-sixam td { color: #9fca86; }
.ep-lifecycle-table .is-sixam th small { color: #aaa; }
.ep-legend { display: flex; flex-wrap: wrap; gap: 24px; padding: 8px 4px 18px; color: var(--ep-muted); font: 500 .63rem/1 'IBM Plex Mono', monospace; }
.ep-legend b { color: var(--ep-orange-dark); }

.ep-development { padding: 120px 0; color: #fff; background: var(--ep-ink); }
.ep-development__rail { display: grid; grid-template-columns: repeat(6,1fr); border: 1px solid rgba(255,255,255,.15); }
.ep-development__rail article { min-height: 300px; padding: 24px; border-right: 1px solid rgba(255,255,255,.15); }
.ep-development__rail article:last-child { border-right: 0; }
.ep-development__rail span { color: #ffc18f; font: 600 .65rem/1 'IBM Plex Mono', monospace; }
.ep-development__rail h3 { margin: 58px 0 17px; font-size: 1.35rem; }
.ep-development__rail p { min-height: 65px; color: #aeb2aa; font-size: .82rem; line-height: 1.5; }
.ep-development__rail b { display: block; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); color: #fff; font-size: .75rem; line-height: 1.45; }
.ep-dark-note { margin: 24px 0 0; color: #858981; font: 500 .62rem/1.5 'IBM Plex Mono', monospace !important; text-transform: uppercase; }

.ep-dashboard { background: var(--ep-cream); }
.ep-dashboard-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.ep-dashboard-grid article { min-height: 370px; padding: 25px; border: 1px solid var(--ep-line); background: var(--ep-paper); }
.ep-dashboard-grid article:nth-child(even) { transform: translateY(25px); background: #fff; }
.ep-dashboard-grid > article > span { color: var(--ep-orange-dark); font: 600 .66rem/1 'IBM Plex Mono', monospace; }
.ep-dashboard-grid h3 { margin: 70px 0 22px; font-size: 1.25rem; }
.ep-dashboard-grid ul { margin: 0; padding-left: 17px; }
.ep-dashboard-grid li { margin: 11px 0; color: var(--ep-muted); font-size: .82rem; line-height: 1.45; }
.ep-note { max-width: 800px; margin: 54px 0 0; color: var(--ep-muted); font: 500 .62rem/1.55 'IBM Plex Mono', monospace !important; text-transform: uppercase; }

.ep-stack { padding: 95px 0; color: #fff; background: #263027; }
.ep-stack__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 100px; align-items: end; }
.ep-stack h2 { margin-top: 20px; font-size: clamp(2.6rem,4.7vw,4.8rem); }
.ep-stack p { color: #bdc6bd; font-size: 1.03rem; line-height: 1.7; }
.ep-system-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 30px; }
.ep-system-tags span { padding: 10px 13px; border: 1px solid rgba(255,255,255,.18); color: #d8ddd7; font: 500 .62rem/1 'IBM Plex Mono', monospace; }

.ep-membership { padding: 120px 0; background: var(--ep-paper); }
.ep-price-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.ep-price-grid article { position: relative; min-height: 360px; padding: 28px; border: 1px solid var(--ep-line); background: var(--ep-cream); }
.ep-price-grid article.is-featured { transform: translateY(-16px); color: #fff; background: var(--ep-ink); box-shadow: 12px 12px 0 rgba(243,107,50,.2); }
.ep-price-grid article > span { color: var(--ep-orange-dark); font: 600 .7rem/1 'IBM Plex Mono', monospace; letter-spacing: .1em; text-transform: uppercase; }
.ep-price-grid article.is-featured > span { color: #ffc18f; }
.ep-price-grid h3 { margin: 70px 0 25px; font-size: clamp(2.1rem,3.3vw,3.5rem); line-height: 1; }
.ep-price-grid h3 small { font: 500 .75rem/1 'IBM Plex Mono', monospace; letter-spacing: 0; }
.ep-price-grid p { margin: 7px 0; color: var(--ep-muted); font-size: .85rem; }
.ep-price-grid article.is-featured p { color: #aeb2aa; }
.ep-price-grid strong { position: absolute; left: 28px; right: 28px; bottom: 27px; padding-top: 18px; border-top: 1px solid var(--ep-line); font-size: .78rem; }
.ep-price-grid article.is-featured strong { border-color: rgba(255,255,255,.15); }
.ep-calculator { display: grid; grid-template-columns: minmax(0,.8fr) minmax(500px,1.2fr); gap: 70px; margin-top: 72px; padding: 48px; color: #fff; background: var(--ep-ink); }
.ep-calculator h3 { margin: 22px 0 15px; font-size: 2rem; }
.ep-calculator p { color: #aeb2aa; line-height: 1.65; }
.ep-calculator__form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ep-calculator label { color: #aeb2aa; font: 500 .62rem/1 'IBM Plex Mono', monospace; text-transform: uppercase; }
.ep-calculator select { width: 100%; min-height: 52px; margin-top: 9px; padding: 0 14px; border: 1px solid rgba(255,255,255,.2); border-radius: 0; color: #fff; background: #292d29; font: 500 .8rem/1 'IBM Plex Sans', sans-serif; }
.ep-calculator output { grid-column: 1/-1; display: block; margin-top: 8px; padding: 24px; color: var(--ep-ink); background: var(--ep-orange); }
.ep-calculator output span,
.ep-calculator output strong,
.ep-calculator output small { display: block; }
.ep-calculator output span { font: 600 .6rem/1 'IBM Plex Mono', monospace; text-transform: uppercase; }
.ep-calculator output strong { margin: 12px 0 8px; font: 400 1.65rem/1 'Archivo Black', sans-serif; }
.ep-calculator output small { font-size: .75rem; }
.ep-terms { margin: 20px 0 0; color: var(--ep-muted); font: 500 .58rem/1.5 'IBM Plex Mono', monospace !important; text-align: center; text-transform: uppercase; }

.ep-economics { background: var(--ep-cream); }
.ep-economics__grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 64px; align-items: center; }
.ep-economics__grid > * { min-width: 0; }
.ep-economics h2 { max-width: 620px; font-size: clamp(2.7rem,4.4vw,4.65rem); }
.ep-economics p { color: var(--ep-muted); font-size: 1.03rem; line-height: 1.7; }
.ep-economics figure { width: 100%; margin: 0; padding: 12px; border: 1px solid var(--ep-line); background: #fff; box-shadow: 18px 18px 0 rgba(23,25,23,.08); }
.ep-economics img { display: block; width: 100%; height: auto; }
.ep-economics figcaption { padding: 14px 8px 4px; color: var(--ep-muted); font: 500 .58rem/1.45 'IBM Plex Mono', monospace; text-transform: uppercase; }
.ep-price-context { padding: 0 0 90px; background: var(--ep-cream); }
.ep-price-context details { border-top: 1px solid var(--ep-line); border-bottom: 1px solid var(--ep-line); }
.ep-price-context summary { padding: 25px 0; font: 600 .72rem/1 'IBM Plex Mono', monospace; cursor: pointer; text-transform: uppercase; }
.ep-price-context details div { max-width: 850px; padding-bottom: 25px; color: var(--ep-muted); line-height: 1.65; }

.ep-final { position: relative; overflow: hidden; padding: 120px 0; color: #fff; background: var(--ep-orange-dark); }
.ep-final::after { content: 'WORKFORCE'; position: absolute; right: -20px; bottom: -45px; color: rgba(255,255,255,.08); font: 400 clamp(5rem,14vw,13rem)/1 'Archivo Black', sans-serif; letter-spacing: -.07em; }
.ep-final .ep-shell { position: relative; z-index: 1; }
.ep-final h2 { max-width: 1050px; margin: 22px 0 28px; font-size: clamp(3rem,6vw,6rem); line-height: .95; }
.ep-final p { max-width: 700px; color: #ffe2d3; font-size: 1.08rem; }
.ep-final .ep-actions { margin-top: 35px; }
.ep-text-link { margin-left: 12px; color: #fff; font: 600 .73rem/1 'IBM Plex Mono', monospace; }

[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .75s ease, transform .75s cubic-bezier(.22,1,.36,1); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
  .ep-screen-card { transition: none; }
  [data-reveal] { opacity: 1; transform: none; transition: none; }
}

@media (max-width: 1080px) {
  .ep-hero__grid { grid-template-columns: 1fr; gap: 42px; }
  .ep-hero__visual { width: min(720px,100%); min-height: 820px; }
  .ep-intro-grid,
  .ep-dual__grid,
  .ep-candidate__grid,
  .ep-economics__grid { grid-template-columns: 1fr; gap: 55px; }
  .ep-intro-copy { max-width: 760px; }
  .ep-development__rail { grid-template-columns: repeat(3,1fr); }
  .ep-development__rail article:nth-child(3) { border-right: 0; }
  .ep-development__rail article:nth-child(-n+3) { border-bottom: 1px solid rgba(255,255,255,.15); }
  .ep-dashboard-grid { grid-template-columns: repeat(3,1fr); }
  .ep-price-grid { grid-template-columns: repeat(2,1fr); }
  .ep-calculator { grid-template-columns: 1fr; }
}

@media (max-width: 1180px) {
  .ep-economics__grid { grid-template-columns: 1fr; gap: 55px; }
  .ep-economics h2 { max-width: 850px; }
  .ep-economics figure { width: min(100%, 850px); }
}

@media (max-width: 760px) {
  .ep-shell { width: min(100% - 28px,1220px); }
  .ep-section,
  .ep-sectors,
  .ep-development,
  .ep-membership,
  .ep-final { padding: 82px 0; }
  .ep-section-head { margin-bottom: 42px; }
  .ep-hero { padding-top: 64px; }
  .ep-hero::after { display: none; }
  .ep-hero__grid { min-height: 0; padding-bottom: 48px; }
  .ep-hero h1 { font-size: clamp(3.4rem,16vw,5.6rem); }
  .ep-hero__copy .ep-lede { font-size: 1.05rem; }
  .ep-actions { align-items: stretch; flex-direction: column; }
  .ep-button { width: 100%; }
  .ep-hero__visual { min-height: 102vw; }
  .ep-hero__visual::before { inset: 42px 6px 24px 20px; box-shadow: 14px 14px 0 rgba(243,107,50,.14); }
  .ep-screen-card { width: 96%; border-width: 5px; }
  .ep-screen-card--academy { top: 10px; right: -1%; transform: rotate(3deg); }
  .ep-screen-card--growing { left: -1%; bottom: 10px; transform: rotate(-4deg); }
  .ep-promise,
  .ep-value-band { grid-template-columns: 1fr; }
  .ep-promise span,
  .ep-value-band article { border-right: 0; border-bottom: 1px solid var(--ep-line); }
  .ep-value-band article { min-height: auto; }
  .ep-value-band strong { margin-top: 35px; }
  .ep-intro-copy { padding: 24px 0 0; border-top: 2px solid var(--ep-orange); border-left: 0; }
  .ep-dual__cards,
  .ep-sector-grid,
  .ep-stack__grid { grid-template-columns: 1fr; }
  .ep-dual__cards article { min-height: auto; }
  .ep-dual__cards article + article { border-top: 1px solid var(--ep-line); border-left: 0; }
  .ep-dual__cards h3 { margin-top: 45px; }
  .ep-sector { min-height: 410px; padding: 30px; }
  .ep-sector a { left: 30px; }
  .ep-match-grid { display: block; border: 0; }
  .ep-match-grid article { min-height: auto; margin-bottom: 10px; border: 1px solid var(--ep-line); }
  .ep-match-grid article:nth-child(2), .ep-match-grid article:nth-child(5) { transform: none; }
  .ep-match-grid h3 { margin-top: 45px; }
  .ep-candidate__grid { gap: 45px; }
  .ep-profile-card { box-shadow: 10px 10px 0 rgba(243,107,50,.18); }
  .ep-tabs__list { display: grid; }
  .ep-tabs__list button { border-right: 0; border-bottom: 1px solid var(--ep-line); }
  .ep-tab-panel { padding: 8px; }
  .ep-development__rail,
  .ep-dashboard-grid,
  .ep-price-grid { grid-template-columns: 1fr; }
  .ep-development__rail article { min-height: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.15); }
  .ep-development__rail article:nth-child(3) { border-right: 0; }
  .ep-development__rail h3 { margin-top: 38px; }
  .ep-dashboard-grid article,
  .ep-dashboard-grid article:nth-child(even),
  .ep-price-grid article.is-featured { min-height: auto; transform: none; }
  .ep-dashboard-grid h3 { margin-top: 38px; }
  .ep-price-grid article { min-height: 330px; }
  .ep-calculator { gap: 34px; padding: 28px 20px; }
  .ep-calculator__form { grid-template-columns: 1fr; }
  .ep-calculator output { grid-column: auto; }
  .ep-stack__grid { gap: 35px; }
  .ep-text-link { margin: 10px 0 0; text-align: center; }
}
