/* Editorial structures for individual employers. Distinction is in reading order and content architecture, not color. */
.employer-specific-hero .page-hero-inner { padding-bottom: clamp(5rem,9vw,9rem); padding-top: clamp(5rem,9vw,9rem); }
.employer-specific-hero h1 { font-size: clamp(3rem, 5.6vw, 6rem); line-height: .99; max-width: 16ch; }
.employer-specific-hero .lede { max-width: 58ch; }
.employer-back { border-bottom: 1px solid currentColor; display: inline-block; font-size: .68rem; letter-spacing: .1em; margin-top: 1.7rem; padding-bottom: .3rem; text-transform: uppercase; }
.employer-story > header { border-top: 1px solid var(--bronze); display: grid; gap: clamp(2rem,7vw,7rem); grid-template-columns: minmax(180px,.34fr) minmax(0,1fr); padding: 1.25rem 0 3.3rem; }
.employer-story > header h2 { color: var(--navy); font-family: var(--serif); font-size: clamp(2.6rem,4.2vw,5rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.01; margin: 0; max-width: 17ch; }
.employer-module { color: #383f42; min-width: 0; }
.employer-module .kicker { font-size: .62rem; }
.employer-module h3 { color: var(--navy); font-family: var(--serif); font-size: clamp(1.65rem,2.3vw,2.7rem); font-weight: 500; line-height: 1.13; margin: 0 0 .95rem; }
.employer-module p { font-size: .95rem; line-height: 1.7; margin: 0; max-width: 72ch; }
.employer-module .employer-count { color: #8d643c; font-family: var(--serif); font-size: 1.45rem; font-style: italic; }
.employer-module .module-sources { color: #625b52; font-size: .72rem; line-height: 1.6; margin-top: 1.1rem; }
.module-sources a, .employer-facts a { border-bottom: 1px solid var(--bronze); color: var(--navy); overflow-wrap: anywhere; }
.employer-questions, .employer-evidence { display: grid; gap: clamp(2rem,7vw,7rem); grid-template-columns: minmax(180px,.4fr) minmax(0,1fr); margin: auto; max-width: 1500px; padding: clamp(4rem,8vw,7rem) 5vw; }
.employer-questions { background: #eeeae2; }
.employer-questions h2, .employer-evidence h2, .employer-next h2 { color: var(--navy); font-family: var(--serif); font-size: clamp(2.3rem,3.6vw,4.2rem); font-weight: 500; letter-spacing: -.035em; line-height: 1.03; margin: .5rem 0 1rem; }
.employer-questions ol { border-top: 1px solid #bdb8ad; counter-reset: question; list-style: none; margin: 0; padding: 0; }
.employer-questions li { border-bottom: 1px solid #bdb8ad; color: var(--navy); counter-increment: question; display: grid; font-family: var(--serif); font-size: clamp(1.2rem,1.7vw,1.6rem); gap: 1.4rem; grid-template-columns: 2.3rem 1fr; line-height: 1.25; padding: 1rem 0; }
.employer-questions li::before { color: var(--walnut); content: counter(question,decimal-leading-zero); font-size: .8em; font-style: italic; }
.employer-evidence { border-top: 1px solid var(--line); }
.employer-evidence > div:first-child p:not(.kicker) { color: #60615d; font-size: .86rem; max-width: 40ch; }
.employer-facts, .employer-caveats { list-style: none; margin: 0; padding: 0; }
.employer-facts li { border-bottom: 1px solid var(--line); padding: 1rem 0; }
.employer-facts li:first-child { border-top: 1px solid var(--line); }
.employer-facts li p { color: var(--navy); font-family: var(--serif); font-size: 1.2rem; line-height: 1.22; margin: 0 0 .5rem; }
.employer-facts li span { color: #625b52; font-size: .73rem; }
.employer-caveats { background: #ede5d8; border-left: 2px solid var(--bronze); margin-top: 2rem; padding: 1.2rem 1.6rem; }
.employer-caveats li { color: #40464b; font-size: .82rem; line-height: 1.6; margin-bottom: .7rem; }
.employer-caveats li:last-child { margin-bottom: 0; }
.employer-next { border-top: 1px solid var(--line); }
.employer-next p:not(.kicker) { color: #525454; max-width: 60ch; }

/* 01 L3Harris: vertical chronology; each stage follows the prior one. */
.employer-story--timeline { background: #f0f1ef; }
.employer-timeline { border-left: 1px solid #b3b9bb; list-style: none; margin: 0 0 0 clamp(1rem,7vw,6rem); padding: 0; }
.employer-timeline > li { border-bottom: 1px solid var(--line); padding: 1.6rem 0 2.5rem clamp(2rem,5vw,6rem); position: relative; }
.employer-timeline > li::before { background: var(--navy); border-radius: 50%; content: ''; height: .5rem; left: -.27rem; position: absolute; top: 2.2rem; width: .5rem; }
.employer-timeline .employer-module { display: grid; gap: 2rem; grid-template-columns: minmax(3rem,.15fr) minmax(0,1fr); }

/* 02 Home Depot: evidence dossier, one principal record and two supporting lenses. */
.employer-story--dossier { background: #f4efe7; }
.employer-dossier-lead { background: #e8e0d4; border-left: 3px solid var(--bronze); padding: clamp(1.4rem,3vw,3rem); }
.employer-dossier-lead .employer-module { display: grid; gap: 2rem; grid-template-columns: 3rem 1fr; }
.employer-dossier-pair { display: grid; gap: clamp(2rem,5vw,5rem); grid-template-columns: repeat(2,minmax(0,1fr)); padding-top: 3rem; }
.employer-dossier-pair .employer-module { border-top: 1px solid var(--bronze); padding-top: 1.2rem; }
.employer-story--dossier + .employer-evidence { background: #f9f8f3; }

/* 03 Lumen: staggered layers and a questions-first path. */
.employer-story--layers { background: #f0f0eb; }
.employer-layers { counter-reset: layer; }
.employer-layers .employer-module { border-top: 1px solid #aeb6b1; display: grid; gap: 1.3rem; grid-template-columns: minmax(90px,.24fr) minmax(0,1fr); max-width: 900px; padding: 2rem 0; }
.employer-layers .employer-module:nth-child(2) { margin-left: auto; }
.employer-layers .employer-module:nth-child(3) { margin-left: clamp(1rem,8vw,7rem); }
.employer-story--layers + .employer-evidence { background: #f7f8f4; }

/* 04 Microsoft: an event sequence across the equity and retirement decisions. */
.employer-story--sequence { background: #ebeff4; }
.employer-sequence { border-top: 1px solid #9aaac0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.employer-sequence .employer-module { border-right: 1px solid #9aaac0; padding: 1.35rem clamp(1rem,2vw,2.5rem) 1.5rem 0; }
.employer-sequence .employer-module + .employer-module { padding-left: clamp(1rem,2vw,2.5rem); }
.employer-sequence .employer-module:last-child { border-right: 0; }
.employer-sequence .employer-count { display: block; font-size: 2.3rem; margin-bottom: 1.5rem; }

/* 05 Micron: one principal household exposure and two adjacent exposures. */
.employer-story--exposure { background: #f0edf1; }
.employer-exposure { display: grid; gap: clamp(2rem,5vw,6rem); grid-template-columns: minmax(0,1fr) minmax(250px,.7fr); }
.employer-exposure-main { border-left: 3px solid #8b748d; padding-left: clamp(1.5rem,3vw,3rem); }
.employer-exposure-main h3 { font-size: clamp(2.3rem,3.5vw,3.8rem); }
.employer-exposure-side .employer-module { border-top: 1px solid #b1a8b5; padding: 1.4rem 0; }

/* 06 Northrop Grumman: three horizontal income-design bands, not a dossier. */
.employer-story--blueprint { background: #f2f0e9; }
.employer-blueprint { border-top: 1px solid #ad9b79; }
.employer-blueprint .employer-module { border-bottom: 1px solid #ad9b79; display: grid; gap: 2rem; grid-template-columns: minmax(4rem,.2fr) minmax(0,1fr); padding: clamp(1.5rem,3vw,3rem) 0; }
.employer-blueprint .employer-module:nth-child(even) { margin-left: clamp(0px,8vw,8rem); }
.employer-blueprint .employer-count { color: #906b41; font-size: 3rem; }

/* 07 FedEx: one identity/eligibility starting point followed by two branches. */
.employer-story--branch { background: #edeaed; }
.employer-branch-lead { border-top: 1px solid #aa9ba8; margin-bottom: 2.7rem; padding: 1.5rem 0; }
.employer-branch-lead .employer-module { display: grid; gap: 2rem; grid-template-columns: minmax(4rem,.2fr) minmax(0,1fr); }
.employer-branches { display: grid; gap: clamp(2rem,5vw,6rem); grid-template-columns: repeat(2,minmax(0,1fr)); margin-left: clamp(2rem,9vw,9rem); }
.employer-branches .employer-module { border-top: 2px solid #8e7188; padding-top: 1.5rem; }
.employer-story--branch + .employer-evidence { background: #f8f7f5; }

@media (max-width: 900px) {
  .employer-story > header, .employer-questions, .employer-evidence { grid-template-columns: 1fr; }
  .employer-sequence { grid-template-columns: 1fr; }
  .employer-sequence .employer-module, .employer-sequence .employer-module + .employer-module { border-bottom: 1px solid #9aaac0; border-right: 0; padding: 1.5rem 0; }
  .employer-exposure { grid-template-columns: 1fr; }
  .employer-branches { margin-left: 0; }
}
@media (max-width: 600px) {
  .employer-specific-hero h1 { font-size: clamp(2.8rem, 12vw, 4.4rem); }
  .employer-timeline { margin-left: .35rem; }
  .employer-timeline > li { padding-left: 1.3rem; }
  .employer-timeline .employer-module, .employer-dossier-lead .employer-module, .employer-layers .employer-module, .employer-blueprint .employer-module, .employer-branch-lead .employer-module { display: block; }
  .employer-dossier-pair, .employer-branches { grid-template-columns: 1fr; }
  .employer-layers .employer-module:nth-child(2), .employer-layers .employer-module:nth-child(3), .employer-blueprint .employer-module:nth-child(even) { margin-left: 0; }
  .employer-module .employer-count { display: block; margin-bottom: .8rem; }
}
