/* Company experience: evidence first; all case content uses native HTML. */
.experience-page { --exp-border:#2c4355; }
.exp-hero .page-hero-inner { padding-block:2rem 1.8rem; }
.exp-hero::after { display:none; }
.exp-hero .breadcrumbs { margin-bottom:1.8rem; }
.exp-hero-grid { display:grid; grid-template-columns:1.15fr 1fr; column-gap:3rem; row-gap:1.3rem; align-items:start; }
.exp-hero h1 { max-width:none; font-size:clamp(2.3rem,4.2vw,3.7rem); line-height:1.08; letter-spacing:-.045em; margin:0 0 1.2rem; }
.exp-hero h1 span { color:var(--lime); }
.exp-intro > p:not(.eyebrow) { max-width:62ch; margin-bottom:.85rem; }
.exp-hero .lead { font-size:1.25rem; font-weight:650; margin-bottom:1rem; color:#fff; }
.exp-tech-panel { padding:1.5rem 1.6rem; border:1px solid #43582b; border-radius:var(--radius-md); background:linear-gradient(140deg,#132b36,#102130); }
.exp-kicker { margin:0 0 .55rem; font-size:.72rem; font-weight:800; line-height:1.5; text-transform:uppercase; letter-spacing:.09em; color:var(--lime); }
.exp-tech-panel h2 { font-size:1.15rem; margin:0 0 1.15rem; }
.exp-tech-panel > p:not(.exp-kicker) { font-size:.9rem; margin:1.1rem 0 .5rem; }
.exp-featured-clients { list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr 1fr; gap:.65rem .9rem; }
.exp-featured-clients li { color:#fff; font-weight:750; line-height:1.35; font-size:1.05rem; }
.exp-facts { display:grid; grid-template-columns:1.15fr 1fr 1fr 1.4fr; gap:1rem; margin:1.6rem 0 1.1rem; padding:1.1rem 0; border-block:1px solid var(--exp-border); }
.exp-facts div { min-width:0; }
.exp-facts dt { font-size:1.55rem; line-height:1.3; color:var(--lime); font-weight:800; }
.exp-facts dd { margin:0; font-size:.85rem; color:#c5d4df; }
.exp-jump { display:flex; flex-wrap:wrap; gap:.6rem 1.4rem; font-size:.85rem; font-weight:750; }
.exp-jump a { color:#d4e2ea; text-decoration:underline; }
.exp-jump a:hover { color:var(--lime); }
.exp-section { padding-block:clamp(2.8rem,5vw,4.2rem); background:#07111c; border-top:1px solid #182e40; }
.exp-section-raised { background:#0b1928; }
.exp-section-intro { max-width:58rem; margin-bottom:1.65rem; }
.exp-section-intro .eyebrow { margin-bottom:.65rem; }
.exp-section h2 { font-size:clamp(1.8rem,3.4vw,2.75rem); line-height:1.15; margin-bottom:1rem; letter-spacing:-.035em; }
.exp-section-intro > p:last-child { margin-bottom:0; max-width:79ch; }
.exp-industries { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.9rem; }
.exp-industry { padding:1.2rem 1.25rem; border:1px solid var(--exp-border); border-radius:.75rem; background:#10263b; }
.exp-industry:first-child { grid-column:span 2; }
.exp-industry h3 { font-size:1.02rem; margin-bottom:.8rem; line-height:1.4; color:var(--lime); }
.exp-client-list { display:flex; flex-wrap:wrap; gap:.4rem .5rem; padding:0; margin:0; list-style:none; }
.exp-client-list li { border:1px solid #354c5f; border-radius:.3rem; color:#edf5fa; padding:.2rem .55rem; font-size:.88rem; line-height:1.5; background:#0b1b2a; }
.exp-projects { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.1rem; }
.exp-project { display:flex; flex-direction:column; padding:1.5rem; border:1px solid var(--exp-border); border-top:3px solid var(--lime); border-radius:.8rem; background:#10263b; min-width:0; }
.exp-project h3 { margin-bottom:.4rem; font-size:1.25rem; line-height:1.4; }
.exp-project h4 { font-size:1rem; line-height:1.45; font-weight:650; color:#fff; margin:0 0 .9rem; }
.exp-project > p:not(.exp-kicker) { font-size:.93rem; line-height:1.65; margin-bottom:.9rem; }
.exp-project-detail { border-top:1px solid var(--exp-border); padding-top:.8rem; color:#b1c6d6; }
.exp-project .text-link { font-size:.85rem; margin-top:auto; }
.exp-map { margin:0 0 1.6rem; border:1px solid var(--exp-border); border-radius:.8rem; overflow:hidden; background:#0b1928; }
.exp-map img { width:100%; height:auto; }
.exp-map figcaption { padding:.8rem 1.2rem; border-top:1px solid var(--exp-border); font-size:.8rem; line-height:1.5; color:#b5c9d8; }
.exp-regions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.exp-region { border:1px solid var(--exp-border); border-radius:.75rem; padding:1.25rem; background:#10263b; }
.exp-region:first-child { border-color:#5e712a; }
.exp-region:last-child { grid-column:span 2; }
.exp-region h3 { font-size:1.08rem; color:var(--lime); margin-bottom:.7rem; }
.exp-region dl { margin:0; }
.exp-region dl > div + div { margin-top:.55rem; }
.exp-region dt { font-weight:750; color:#fff; font-size:.9rem; }
.exp-region dd { margin:0; font-size:.85rem; color:#c4d5e1; }
.exp-language { display:grid; grid-template-columns:1fr 1.25fr; align-items:center; gap:1.5rem; margin-top:1.1rem; padding:1.4rem; border-left:3px solid var(--lime); background:#10263b; }
.exp-language h3 { font-size:1.15rem; margin:0; }
.exp-language .eyebrow { margin-bottom:.6rem; }
.exp-language p:last-child { margin:0; font-size:.94rem; }
.exp-archive,.exp-portfolio { display:grid; gap:.65rem; }
.exp-accordion { border:1px solid var(--exp-border); border-radius:.6rem; background:#10263b; overflow:hidden; }
.exp-accordion summary { cursor:pointer; padding:1rem 1.3rem; color:#f5f8fb; font-size:1rem; font-weight:750; line-height:1.45; }
.exp-accordion summary::marker { color:var(--lime); }
.exp-accordion summary:hover { background:#18364f; }
.exp-accordion summary:focus-visible { outline:3px solid var(--lime); outline-offset:-4px; }
.exp-accordion summary > span { display:inline-block; margin-left:.7rem; font-size:.8rem; font-weight:500; color:#b6cbd9; white-space:nowrap; }
.exp-accordion-body { padding:0 1.3rem .5rem; max-width:90ch; }
.exp-accordion-body p { font-size:.94rem; }
.exp-archive-cases { display:grid; grid-template-columns:1fr 1fr; gap:0 1.5rem; padding:0 1.3rem; }
.exp-archive-cases article { border-top:1px solid var(--exp-border); padding-block:1.2rem .4rem; min-width:0; }
.exp-archive-cases h3 { font-size:1.05rem; margin-bottom:.5rem; }
.exp-archive-cases p:not(.exp-kicker) { font-size:.92rem; line-height:1.65; }
.exp-method { margin-top:1.6rem; padding:1.5rem; border-left:3px solid var(--lime); background:#10263b; }
.exp-method h3 { font-size:1.15rem; }
.exp-method p { max-width:86ch; }
.exp-leadership { display:grid; grid-template-columns:1.35fr 1fr; gap:3rem; align-items:start; }
.exp-leadership aside { padding:1.5rem; border:1px solid var(--exp-border); border-radius:.8rem; background:#10263b; }
.exp-leadership h3 { font-size:1.25rem; }
.exp-small-links { margin:1rem 0 0; font-size:.83rem; }
@media(max-width:1000px) {
 .exp-hero-grid { gap:1.5rem; grid-template-columns:1.1fr 1fr; }
 .exp-projects { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .exp-industries { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .exp-industry:first-child { grid-column:auto; }
 .exp-regions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .exp-region:last-child { grid-column:auto; }
}
@media(max-width:700px) {
 .exp-hero .page-hero-inner { padding-top:1.3rem; }
 .exp-hero .breadcrumbs { margin-bottom:1.5rem; }
 .exp-hero-grid { grid-template-columns:1fr; gap:1.3rem; }
 .exp-hero h1 { font-size:clamp(2rem,8.5vw,3rem); }
 .exp-hero .lead { font-size:1.13rem; }
 .exp-intro p { font-size:.94rem; }
 .exp-tech-panel { padding:1.2rem; }
 .exp-featured-clients li { font-size:.97rem; }
 .exp-facts { grid-template-columns:1fr 1fr; gap:.9rem 1.1rem; margin-top:1.25rem; }
 .exp-facts dt { font-size:1.4rem; }
 .exp-facts dd { font-size:.78rem; }
 .exp-jump { gap:.6rem 1rem; font-size:.82rem; }
 .exp-projects,.exp-industries,.exp-regions,.exp-language,.exp-leadership,.exp-archive-cases { grid-template-columns:1fr; }
 .exp-project { padding:1.25rem; }
 .exp-section { padding-block:2.5rem; }
 .exp-region:last-child { grid-column:auto; }
 .exp-language { gap:.9rem; }
 .exp-leadership { gap:1.5rem; }
 .exp-map figcaption { padding:.75rem; }
 .exp-accordion summary { padding:.95rem 1rem; }
 .exp-archive-cases { padding-inline:1rem; }
 .exp-accordion summary > span { margin-left:.35rem; }
}

/* Keep headline evidence ahead of the client panel on narrow screens. */
.exp-intro { grid-column:1; grid-row:1; }
.exp-tech-panel { grid-column:2; grid-row:1; }
.exp-hero-grid > .exp-facts { grid-column:1/-1; grid-row:2; margin:0; }
@media(max-width:700px) { .exp-intro,.exp-tech-panel,.exp-hero-grid > .exp-facts { grid-column:auto; grid-row:auto; } }

/* Bring the delivery map into view from linked previews. */
#delivery { scroll-margin-top:calc(var(--header-height) + 1.25rem); }
#delivery.exp-section { padding-top:2rem; }
