.field .project-experience { margin-bottom:100px; overflow:hidden; }
.project-experience-body { display:grid; grid-template-columns:var(--landing-columns); gap:40px var(--landing-gutter); align-items:start; }
.project-experience-heading h2 { font-size:clamp(32px,3.3vw,48px); margin:0 0 24px; }
.project-experience-heading > p { max-width:540px; font-size:clamp(19px,1.8vw,24px); line-height:1.5; margin:0; }
.employer-strip { --employer-logo-width:190px; --employer-gap:24px; margin-top:40px; padding-top:24px; border-top:1px solid var(--line); }
/* Restore the recorded original broad limit: five pitches (1070px desktop).
   At most N-1 pitches avoids duplicate copies even at partial seam crossings. */
.employer-window,.employer-caption { width:100%; max-width:calc((var(--employer-logo-width) + var(--employer-gap)) * var(--employer-window-pitches)); margin-inline:auto; }
.employer-window { overflow:hidden; }
.employer-caption { margin-block:0 16px; font-size:16px; font-weight:500; color:#555; text-align:center; }
.employer-track { display:flex; width:100%; }
.employer-logos { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:var(--employer-gap); width:100%; }
.employer-logo { width:var(--employer-logo-width); height:110px; display:flex; align-items:center; justify-content:center; flex:none; padding:18px; }
.employer-logo img { display:block; width:auto; height:auto; max-width:100%; max-height:74px; object-fit:contain; }
.employer-strip.is-enhanced .employer-track { width:max-content; animation:employer-scroll var(--employer-duration) linear infinite; }
.employer-strip.is-enhanced .employer-logos { flex-wrap:nowrap; width:auto; padding-right:var(--employer-gap); }
.employer-strip.is-paused .employer-track,.employer-strip:focus-within .employer-track { animation-play-state:paused; }
@media(hover:hover) { .employer-strip:hover .employer-track { animation-play-state:paused; } }
@keyframes employer-scroll { to { transform:translateX(-50%); } }
.experience-quotes { min-width:0; }
.experience-quote-frame { display:grid; min-height:300px; align-items:start; isolation:isolate; }
.experience-quotes figure,.experience-quotes blockquote { margin:0; }
.experience-quotes .experience-quote { grid-area:1/1; padding-block:32px; opacity:0; visibility:hidden; pointer-events:none; }
.experience-quotes .experience-quote.is-active { opacity:1; visibility:visible; pointer-events:auto; }
.experience-quotes blockquote p { font-size:clamp(18px,1.6vw,22px); line-height:1.6; margin:0 0 24px; max-width:560px; }
.experience-quotes figcaption { display:flex; flex-direction:column; gap:3px; font-size:13px; line-height:1.5; }
.experience-quotes figcaption strong { font-weight:600; font-size:14px; }
.project-experience-actions { margin-top:36px; }
@media(max-width:800px) {
  .field .project-experience { margin-bottom:60px; }
  .project-experience-heading h2 { margin-bottom:18px; }
  .employer-strip { margin-top:32px; }
  .employer-strip { --employer-logo-width:160px; }
  .employer-logo { height:100px; padding:16px; }
  .experience-quotes blockquote p { margin-bottom:16px; }
  .project-experience-actions { margin-top:28px; }
}
@media(prefers-reduced-motion:reduce) {
  .experience-quotes .experience-quote { transition:none; }
  .employer-strip.is-enhanced .employer-track { animation:none; transform:none; width:100%; }
  .employer-strip.is-enhanced .employer-logos { flex-wrap:wrap; width:100%; padding:0; }
  .employer-logos { gap:12px; }
  .employer-logo { width:calc(33.333% - 8px); }
}
@media(max-width:600px) and (prefers-reduced-motion:reduce) { .employer-logo { width:calc(50% - 6px); } }
@media print {
  .experience-quote-frame { display:block; min-height:0; }
  .experience-quotes .experience-quote { opacity:1!important; visibility:visible!important; padding-block:16px; }
  .employer-strip.is-enhanced .employer-track { animation:none; transform:none; width:100%; }
  .employer-strip.is-enhanced .employer-logos { flex-wrap:wrap; width:100%; padding:0; }
}
.experience-quotes:focus-visible,.employer-strip:focus-visible { outline:2px solid #c96b12; outline-offset:6px; }
.experience-quotes.motion-static .experience-quote-frame { display:block; min-height:0; }
.experience-quotes.motion-static .experience-quote { opacity:1!important; visibility:visible!important; }
.employer-strip.motion-static .employer-track { animation:none; transform:none; width:100%; }
.employer-strip.motion-static .employer-logos { flex-wrap:wrap; width:100%; padding:0; }
.employer-strip.motion-static .employer-logos[aria-hidden="true"] { display:none; }
@media print { .employer-strip .employer-logos[aria-hidden="true"] { display:none; } }
