/* GOB-IA-002 M15. Estructura nueva sobre la identidad publicada.
   La comparación alternativa sustituye exclusivamente variables de color. */
/* M19: seguridad de producto y capacidad directiva. */
.eng-security-showcase{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.eng-security-showcase figure{margin:0}
.eng-security-showcase img{display:block;width:100%;height:auto;border:1px solid var(--rule)}
.eng-security-showcase figcaption{font-size:12px;line-height:1.6;margin-top:14px;color:var(--ink-muted)}
.eng-security-controls{list-style:none;padding:0;margin:32px 0;display:grid;gap:20px}
.eng-security-controls li{display:grid;grid-template-columns:30px 1fr;gap:16px;border-top:1px solid var(--rule);padding-top:16px}
.eng-security-controls h3{font-size:24px;margin:0 0 8px}
.eng-security-controls p{margin:0}
.eng-security-scope{grid-column:1/-1;max-width:850px;margin:0}
.eng-visual-leadership .eng-visual-lanes{grid-template-columns:repeat(4,minmax(0,1fr))}
.eng-visual-leadership .eng-visual-lanes>li{position:relative;border-top:2px solid var(--accent)}
.eng-visual-leadership .eng-visual-lanes>li:not(:last-child)::after{content:'→';position:absolute;right:8px;top:20px;color:var(--accent)}
@media(max-width:900px){.eng-security-showcase{grid-template-columns:1fr;gap:32px}.eng-visual-leadership .eng-visual-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.eng-visual-leadership .eng-visual-lanes{grid-template-columns:1fr}.eng-visual-leadership .eng-visual-lanes>li:not(:last-child)::after{content:'↓'}}
html { scroll-padding-top:24px }
body { color:var(--ink) }
.masthead { display:none }
.topbar { border-bottom:1px solid var(--rule); padding-block:25px }
.wordmark { font-size:24px; letter-spacing:.05em; font-weight:600 }
.nav { font-size:13px; gap:22px }
.nav .cta-mini { background:var(--ink); color:var(--paper); border-radius:2px }
.nav a.current { color:var(--accent); text-decoration:underline; text-underline-offset:6px }
.skip-link { position:absolute; left:-9999px }
.skip-link:focus { left:20px; top:8px; z-index:10; padding:12px; background:var(--paper); color:var(--accent) }
.site-footer { padding-top:45px; padding-bottom:35px }
.site-footer .foot-meta { font-family:var(--font-mono); letter-spacing:0 }
.site-footer .foot-links { flex-wrap:wrap }
.site-footer .foot-nav { gap:16px 25px }
.site-footer .monogram { font-style:normal }
.eng { --e-blue:var(--accent); --e-muted:var(--ink-muted); --e-green:var(--state-success); --e-soft:var(--paper-shade); --e-tint:var(--paper-shade); --e-line:var(--rule); color:var(--ink) }
.eng-wrap { width:min(1200px,calc(100% - 80px)); margin-inline:auto }
.eng h1,.eng h2,.eng h3,.eng h4 { font-family:var(--font-heading); font-weight:450; color:var(--ink); line-height:1.12; letter-spacing:-.035em }
.eng h1 { font-size:clamp(42px,5vw,72px); max-width:1000px; text-wrap:balance }
.eng h2 { font-size:clamp(32px,3.5vw,48px); max-width:850px; text-wrap:balance }
.eng h3 { font-size:29px }
.eng h4 { font-size:25px; margin-top:15px }
.eng p { margin:0 }
.eng-kicker { font-family:var(--font-mono); font-size:11px; line-height:1.6; letter-spacing:.09em; text-transform:uppercase; color:var(--accent); margin-bottom:22px!important }
.eng-hero { padding-block:90px 70px }
.eng-home-hero { display:grid; grid-template-columns:1.5fr 1fr; gap:65px; align-items:center }
.eng-lead { font-size:18px; line-height:1.7; color:var(--ink-muted); max-width:750px; margin-top:27px!important }
.eng-home-hero .eng-lead { max-width:620px }
.eng-note { font-size:13px; color:var(--ink-muted); margin-top:20px!important; max-width:760px }
.eng-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:30px }
.eng-button { display:inline-block; padding:13px 20px; background:var(--ink); color:var(--paper); border:1px solid var(--ink); font-size:14px; font-weight:600; line-height:1.6; text-decoration:none; border-radius:2px }
.eng-button:hover { background:var(--accent); color:var(--paper); border-color:var(--accent) }
.eng-link { font-size:14px; color:var(--accent); font-weight:600; text-decoration:underline; text-underline-offset:5px }
.eng-link:hover { text-decoration-thickness:2px }
.eng-back { display:block; color:var(--ink-muted); font-size:13px; margin-bottom:28px; text-decoration:underline; text-underline-offset:5px }
.eng-needs { border-left:1px solid var(--rule); padding-left:34px }
.eng-needs article { padding-block:23px; border-bottom:1px solid var(--rule) }
.eng-needs article:first-child { padding-top:0 }
.eng-needs article:last-child { border-bottom:0 }
.eng-needs .eng-index { margin-bottom:9px }
.eng-needs h2 { font-size:29px; margin-bottom:10px }
.eng-needs p { font-size:14px; color:var(--ink-muted) }
.eng-control { font-size:12px; color:var(--state-success); border-left:2px solid var(--state-success); padding:10px 14px; margin-top:24px!important; line-height:1.7 }
.eng-proof-strip { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--rule); gap:25px; padding-block:22px }
.eng-proof-strip a { font-size:13px; color:var(--ink-muted); display:flex; gap:5px; flex-direction:column }
.eng-proof-strip a:hover strong { text-decoration:underline }
.eng-proof-strip strong { color:var(--accent); font-weight:600 }
.eng-section { padding-block:80px }
.eng-section-head { display:flex; align-items:end; justify-content:space-between; gap:45px; margin-bottom:40px }
.eng-section-head>p { max-width:350px; font-size:15px; color:var(--ink-muted) }
.eng-case { display:grid; grid-template-columns:.9fr 1.1fr; gap:55px; align-items:start; padding-block:46px; border-top:1px solid var(--rule); scroll-margin-top:24px }
.eng-case h3 { font-size:36px }
.eng-case h3 a:hover { text-decoration:underline; text-underline-offset:6px }
.eng-case>div>p:not(.eng-kicker) { color:var(--ink-muted); margin-top:20px }
.eng-tags { display:flex; gap:7px; flex-wrap:wrap; margin-block:20px }
.eng-tags span { font-size:11px; color:var(--ink-muted); border:1px solid var(--rule); padding:4px 9px }
.eng-diagram { margin:0; padding:28px; border:1px solid var(--rule); background:var(--paper) }
.eng-diagram figcaption { font-size:15px; font-weight:600; color:var(--accent); margin-bottom:22px }
.eng-diagram figcaption span { display:block; font-family:var(--font-mono); font-size:10px; font-weight:400; color:var(--ink-muted); margin-top:6px }
.eng-map-origin { font-family:var(--font-heading); font-size:24px; padding-bottom:22px; border-bottom:1px solid var(--rule) }
.eng-map-layers { display:grid; gap:24px; margin-top:25px }
.eng-map-layer { position:relative; padding:0 0 0 22px; border-left:1px solid var(--accent) }
.eng-map-layer::before { content:""; position:absolute; top:7px; left:-4px; width:7px; height:7px; background:var(--accent) }
.eng-map-layer h4 { font-family:var(--font-mono); letter-spacing:.025em; font-weight:500; font-size:11px; margin:0 0 13px; text-transform:uppercase; color:var(--accent); line-height:1.5 }
.eng-map-layer h4 span { margin-right:12px; color:var(--ink-muted) }
.eng-map-layer ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none }
.eng-map-layer li { border-top:1px solid var(--rule); padding-top:12px; min-width:0 }
.eng-map-layer strong { display:block; font-size:13px; line-height:1.5; font-weight:600 }
.eng-map-layer li p { color:var(--ink-muted); font-size:12px; margin-top:9px; line-height:1.65 }
.eng-map-compact { padding:24px; background:var(--paper-shade) }
.eng-map-compact figcaption { font-size:13px; margin-bottom:14px }
.eng-map-compact .eng-map-origin { font-size:21px; padding-bottom:15px }
.eng-map-compact .eng-map-layers { gap:17px; margin-top:18px }
.eng-map-compact .eng-map-layer { padding-left:15px }
.eng-map-compact .eng-map-layer ul { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 15px }
.eng-map-compact .eng-map-layer li { padding-top:8px }
.eng-map-compact .eng-map-layer strong { font-size:11px; font-weight:500 }
.eng-map-compact .eng-control { margin-top:18px!important; font-size:11px }
.eng-map-detail { border-top:1px solid var(--rule); margin-top:20px; padding-top:16px; font-size:13px; color:var(--ink-muted) }
.eng-map-detail summary { color:var(--accent); cursor:pointer; font-weight:600 }
.eng-map-detail p { margin-top:14px }
.eng-tint { background:var(--paper-shade); border-block:1px solid var(--rule) }
.eng-blue { background:var(--paper-inverse); color:var(--ink-inverse) }
.eng-blue h2,.eng-blue h3,.eng-blue .eng-kicker,.eng-blue .eng-link { color:var(--ink-inverse) }
.eng-blue .eng-button { background:var(--ink-inverse); color:var(--paper-inverse); border-color:var(--ink-inverse) }
.eng-blue .eng-button:hover { background:var(--ink-inverse-muted) }
.eng-four { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin-block:44px }
.eng-cap { border-top:2px solid var(--accent); padding-top:20px }
.eng-index { font-family:var(--font-mono); font-size:11px; color:var(--accent); display:block; margin-bottom:20px }
.eng-cap h3 { font-size:26px; line-height:1.2 }
.eng-cap p { font-size:14px; color:var(--ink-muted); margin-top:18px; line-height:1.7 }
.eng-cap .eng-link { display:block; font-size:12px; margin-top:20px }
.eng-method { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); list-style:none; padding:0; margin:40px 0 0; border:1px solid var(--ink-inverse-muted) }
.eng-method li { padding:25px; border-right:1px solid var(--ink-inverse-muted) }
.eng-method li:last-child { border-right:0 }
.eng-method li>span { font-family:var(--font-mono); font-size:11px; color:var(--ink-inverse-muted); display:block; line-height:1.5; margin-bottom:22px }
.eng-method h3 { font-size:26px }
.eng-method p { font-size:13px; color:var(--ink-inverse-muted); margin-top:18px; line-height:1.7 }
.eng-loop { margin-block:26px!important; border-left:2px solid var(--ink-inverse-muted); padding-left:18px; max-width:900px; font-size:14px; color:var(--ink-inverse-muted) }
.eng-two { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start }
.eng-panel { border-top:1px solid var(--rule); padding:28px 0 }
.eng-panel h2 { font-size:33px }
.eng-panel h3 { font-size:28px; margin-bottom:20px }
.eng-panel p { color:var(--ink-muted); margin-bottom:20px; max-width:650px }
.eng-panel p+h3 { margin-top:30px }
.eng-assistants { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:30px; padding:0; margin:36px 0 }
.eng-assistants li { border-top:1px solid var(--rule); padding-top:20px }
.eng-assistants h3 { font-size:26px }
.eng-assistants p { font-size:14px; color:var(--ink-muted); margin-top:15px }
.eng-depth { margin-top:32px; display:grid; grid-template-columns:1fr 1fr; gap:0 40px }
.eng-depth details { border-top:1px solid var(--rule); padding-block:20px }
.eng-depth summary { cursor:pointer; font-family:var(--font-heading); font-size:25px; line-height:1.3 }
.eng-depth p { font-size:15px; color:var(--ink-muted); margin-top:18px; line-height:1.75 }
.eng-public-evidence { list-style:none; padding:0; margin:24px 0 0 }
.eng-public-evidence li { margin-top:14px }
.eng-team-teaser { border-top:1px solid var(--rule) }
.eng-team-teaser .eng-link { display:inline-block; margin-top:24px }
.eng-closing { padding-block:60px; background:var(--paper-shade) }
.eng-closing .eng-wrap { display:flex; align-items:center; justify-content:space-between; gap:40px }
.eng-closing h2 { font-size:42px; max-width:700px }
.eng-closing p:not(.eng-kicker) { margin-top:18px; max-width:600px; color:var(--ink-muted) }
.eng-closing .eng-button { flex-shrink:0 }
.eng-rule { border-top:1px solid var(--rule) }
.eng-blocks { display:grid; grid-template-columns:1fr 1fr; gap:45px 60px }
.eng-blocks article { border-top:1px solid var(--accent); padding-top:24px }
.eng-blocks h2 { font-size:34px }
.eng-blocks p { margin-top:20px; color:var(--ink-muted); max-width:560px }
.eng-takeaway { border-left:2px solid var(--accent); background:var(--paper-shade); padding:22px 25px; margin-top:45px!important; color:var(--ink-muted); max-width:950px }
.eng-evidence { display:grid; grid-template-columns:1fr 1fr; margin-block:35px; border-top:1px solid var(--rule) }
.eng-evidence a { padding:23px 20px 23px 0; border-bottom:1px solid var(--rule); color:var(--accent) }
.eng-evidence a:hover span { text-decoration:underline; text-underline-offset:5px }
.eng-evidence strong { display:block; font-weight:600 }
.eng-evidence span { display:block; font-size:14px; color:var(--ink-muted); margin-top:8px }
.eng-people { display:grid; grid-template-columns:1fr 1fr; gap:70px }
.eng-people h2 { font-size:36px }
.eng-people p:not(.eng-kicker) { margin-block:20px; color:var(--ink-muted); max-width:550px }
.eng-portrait,.eng-initials { width:180px; height:180px; object-fit:cover; margin-bottom:30px }
.eng-initials { display:grid; place-content:center; background:var(--ink); color:var(--paper); font-family:var(--font-heading); font-size:65px }
.eng-people .eng-kicker { margin-bottom:15px!important }
.eng a:focus-visible,.eng summary:focus-visible { outline:2px solid var(--accent); outline-offset:5px }
.eng-blue a:focus-visible { outline-color:var(--ink-inverse) }
.eng-contact-guide { margin:28px 0; padding-left:22px; color:var(--ink-muted) }
.eng-contact-guide li { padding-block:12px; border-bottom:1px solid var(--rule) }
.eng-notes-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 35px; margin:35px 0 0 }
.eng-notes-list article { padding-block:25px; border-top:1px solid var(--rule) }
.eng-notes-list article>span { font-family:var(--font-mono); font-size:11px; color:var(--ink-muted) }
.eng-notes-list h3 { font-size:27px; line-height:1.25; margin:12px 0 }
.eng-notes-list h3 a:hover { text-decoration:underline; text-underline-offset:4px }
.eng-notes-list p { font-size:14px; color:var(--ink-muted); margin-bottom:18px }
@media(max-width:640px) { .eng-notes-list { grid-template-columns:1fr } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto } }
/* Las páginas editoriales y el contacto usan los mismos tokens. */
.hero h1 { font-family:var(--font-heading) }
.hero-sub { color:var(--ink-muted) }
.dark { background:var(--paper-inverse) }
.page .eyebrow { color:var(--accent) }
.dark .eyebrow { color:var(--ink-inverse) }
a.link { text-decoration-color:var(--accent) }
@media(min-width:1060px) { .nav { gap:20px } .topbar { align-items:center } }
@media(max-width:1000px) {
 .eng-home-hero,.eng-case,.eng-two { gap:30px }
 .eng-four,.eng-assistants { grid-template-columns:1fr 1fr }
 .eng-method { grid-template-columns:1fr 1fr }
 .eng-method li:nth-child(2) { border-right:0 }
 .eng-method li:nth-child(-n+2) { border-bottom:1px solid var(--ink-inverse-muted) }
 .eng-closing .eng-wrap { align-items:start; flex-direction:column }
 .eng-people { gap:40px }
 .eng-map-layer ul { grid-template-columns:repeat(2,minmax(0,1fr)) }
}

/* M18/C19: Ignacio dirige el ciclo completo; Nela lleva relaciones y coordinación. */
.eng-profile-cycle { display:grid; grid-template-columns:repeat(5,1fr); gap:12px; list-style:none; margin:26px 0 0; padding:20px 0; border-block:1px solid var(--rule) }
.eng-profile-cycle li { font-size:12px; line-height:1.5; color:var(--ink) }
.eng-profile-cycle span { display:block; margin-bottom:8px; color:var(--accent); font-family:var(--font-mono); font-size:10px }
.eng-workforce-leads { grid-template-columns:1.6fr 1fr; max-width:900px }
.eng-workforce-leads>div .eng-kicker { font-size:9px; margin-bottom:0!important }
.eng-workforce-leads>div:last-child { border-bottom:1px dashed var(--rule); align-self:start; padding-bottom:20px }
.eng-workforce-leads>div:last-child::after { display:none }
.eng-workforce-leads>div:last-child strong { font-size:25px }
.eng-workforce-activation { max-width:900px }
@media(max-width:700px) { .eng-profile-cycle { grid-template-columns:repeat(3,1fr); gap:20px 12px } .eng-workforce-leads { grid-template-columns:1fr; gap:25px } .eng-workforce-leads>div:first-child { order:2 } .eng-workforce-leads>div:last-child { order:1; text-align:left; padding:15px 0; border-block:1px dashed var(--rule) } }

/* M17/C18: capacidades visibles y equipo humano con grupos dinámicos de agentes. */
.eng-mechanisms { display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid var(--rule); padding-block:22px; gap:20px }
.eng-mechanisms a { display:flex; flex-direction:column; gap:7px; color:var(--ink); text-decoration:none; padding-inline:14px; border-left:1px solid var(--rule) }
.eng-mechanisms a:first-child { padding-left:0; border-left:0 }
.eng-mechanisms strong { font-size:14px; color:var(--accent); font-weight:600 }
.eng-mechanisms span { font-size:12px; line-height:1.6; color:var(--ink-muted) }
.eng-mechanisms a:hover strong { text-decoration:underline; text-underline-offset:4px }
.eng-trajectory { display:grid; grid-template-columns:repeat(3,1fr); list-style:none; padding:0; margin:28px 0; gap:15px; border-top:1px solid var(--rule) }
.eng-trajectory li { padding-top:16px; display:flex; flex-direction:column; gap:6px }
.eng-trajectory strong { font-family:var(--font-mono); color:var(--accent); font-size:15px; font-weight:500 }
.eng-trajectory span { font-size:12px; line-height:1.5; color:var(--ink-muted) }
.eng-workforce { margin:0 }
.eng-workforce-leads { display:grid; grid-template-columns:1fr 1fr; gap:45px; max-width:760px; margin:45px auto 0; position:relative }
.eng-workforce-leads>div { padding:20px 10px 30px; text-align:center; border-bottom:1px solid var(--accent); display:flex; flex-direction:column; gap:9px; position:relative }
.eng-workforce-leads>div::after { content:""; position:absolute; bottom:-25px; height:25px; left:50%; width:1px; background:var(--accent) }
.eng-workforce-leads strong { font-family:var(--font-heading); font-size:30px; font-weight:450 }
.eng-workforce-leads span { font-family:var(--font-mono); font-size:11px; color:var(--ink-muted) }
.eng-workforce-activation { margin:25px auto 0!important; padding:22px 10px; border-top:1px solid var(--accent); text-align:center; font-family:var(--font-mono); font-size:12px; color:var(--accent); max-width:760px }
.eng-agent-groups { display:grid; grid-template-columns:repeat(6,1fr); gap:20px; border-top:1px solid var(--rule); padding-top:28px }
.eng-agent-groups section { min-width:0; position:relative; padding:15px 0 0 }
.eng-agent-groups section::before { content:""; position:absolute; top:-28px; height:28px; width:1px; left:13px; background:var(--rule) }
.eng-agent-groups h3 { font-size:23px; margin:22px 0 16px; letter-spacing:-.02em }
.eng-agent-groups ul { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:7px }
.eng-agent-groups li { font-family:var(--font-mono); font-size:10px; padding:5px 7px; border:1px solid var(--rule); color:var(--ink-muted) }
.eng-agent-cluster { display:flex; align-items:center; height:35px; padding-left:1px }
.eng-agent-cluster i { display:block; width:22px; height:22px; border:1px solid var(--accent); border-radius:50%; background:var(--paper-shade); margin-left:-6px }
.eng-agent-cluster i:first-child { margin-left:0; background:var(--accent) }
.eng-agent-cluster i:nth-child(2n) { transform:translateY(-6px) }
.eng-agent-cluster i:nth-child(3n) { transform:translateY(6px) }
.eng-workforce-tools { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; padding:30px 0; margin-top:35px; border-block:1px solid var(--rule) }
.eng-workforce-tools h3 { font-family:var(--font-body); font-size:14px; letter-spacing:0; font-weight:600 }
.eng-workforce-tools p { margin-top:9px; color:var(--ink-muted); font-size:13px }
.eng-workforce-loop { margin-top:25px!important; font-family:var(--font-mono); font-size:12px; line-height:1.8; color:var(--accent) }
@media(max-width:1000px) { .eng-agent-groups { grid-template-columns:repeat(3,1fr); gap:30px } .eng-agent-groups section::before { display:none } }
@media(max-width:700px) {
 .eng-mechanisms { grid-template-columns:1fr 1fr; gap:25px 20px }
 .eng-mechanisms a { padding:0; border:0 }
 .eng-workforce-leads { gap:20px; margin-top:30px }
 .eng-workforce-leads span { font-size:10px }
 .eng-workforce-activation { font-size:10px }
 .eng-agent-groups { grid-template-columns:1fr 1fr; gap:30px 20px }
 .eng-agent-groups h3 { font-size:23px }
 .eng-workforce-tools { grid-template-columns:1fr; gap:23px }
}

/* M16: visuales por función; colores y tipografía idénticos en A/B. */
.article-practice { border-block:1px solid var(--rule); padding-block:28px; margin-bottom:35px }
.article-practice h2 { font-family:var(--font-heading); font-size:28px; margin-block:15px }
.article-practice p { font-family:var(--font-body); font-size:15px; line-height:1.7; color:var(--ink-muted) }
.article-practice .article-practice-note { font-size:12px; margin-top:15px }
.eng-visual { margin:0; padding:0 }
.eng-visual figcaption>p { max-width:760px; color:var(--ink-muted); margin-top:20px }
.eng-visual-lanes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; padding:0; margin:40px 0; list-style:none }
.eng-visual-lanes>li { border-top:2px solid var(--accent); padding-top:22px; position:relative; min-width:0 }
.eng-visual-lanes h3 { font-size:29px }
.eng-visual-lanes ul { padding:0; margin-top:22px; list-style:none }
.eng-visual-lanes ul li { border-top:1px solid var(--rule); padding-block:12px; font-size:14px; color:var(--ink-muted) }
.eng-visual-footer { border-left:2px solid var(--accent); padding-left:20px; color:var(--ink-muted); font-size:14px; max-width:950px }
.eng-visual-journey .eng-visual-lanes { grid-template-columns:repeat(4,minmax(0,1fr)) }
.eng-visual-journey .eng-visual-lanes>li:not(:last-child)::after { content:"→"; position:absolute; right:0; top:16px; color:var(--accent) }
.eng-visual-brief { background:var(--paper-shade); border:1px solid var(--rule); padding:35px }
.eng-visual-brief h3 { font-family:var(--font-mono); font-size:13px; letter-spacing:.02em }
.eng-visual-layers .eng-visual-lanes { display:block; border-left:1px solid var(--accent); padding-left:25px }
.eng-visual-layers .eng-visual-lanes>li { display:grid; grid-template-columns:35px 200px 1fr; gap:20px; align-items:start; border-top:1px solid var(--rule); padding-block:24px }
.eng-visual-layers .eng-index { margin:0; padding-top:6px }
.eng-visual-layers ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 }
.eng-visual-layers ul li { border:0; padding-top:4px }
.eng-visual-boundary .eng-visual-lanes>li:nth-child(2) { border:1px solid var(--accent); padding:22px }
.eng-test-scroll { overflow:auto; margin-block:35px }
.eng-test-table { width:100%; border-collapse:collapse; text-align:left; font-size:15px }
.eng-test-table th,.eng-test-table td { border-bottom:1px solid var(--rule); padding:20px 22px 20px 0; line-height:1.6; vertical-align:top }
.eng-test-table thead { font-family:var(--font-mono); color:var(--accent); font-size:11px }
.eng-test-table tbody td { color:var(--ink-muted); width:36% }
.eng-case-evidence { display:grid; grid-template-columns:.8fr 1.2fr; gap:55px; align-items:center; border-top:1px solid var(--rule) }
.eng-case-evidence h2 { font-size:38px }
.eng-case-evidence .eng-link { display:inline-block; margin-top:25px }
.eng-case-evidence figure { margin:0; min-width:0 }
.eng-case-evidence img { display:block; width:100%; height:auto; border:1px solid var(--rule) }
.eng-case-evidence figcaption { font-size:12px; color:var(--ink-muted); margin-top:15px; line-height:1.7 }
.eng-artifact { border:1px solid var(--rule); padding:28px; background:var(--paper-shade) }
.eng-artifact ol { margin:0; padding:0; list-style:none }
.eng-artifact ol>li { display:grid; grid-template-columns:28px 1fr; gap:15px; padding-block:18px; border-top:1px solid var(--rule) }
.eng-artifact li>span { font-family:var(--font-mono); font-size:10px; color:var(--accent); padding-top:5px }
.eng-artifact h3 { font-size:26px }
.eng-artifact strong { font-size:13px; display:block; margin-top:9px; font-weight:500 }
.eng-artifact li p { font-size:12px; color:var(--ink-muted); margin-top:8px }
.eng-delivery { border-top:1px solid var(--rule); margin-top:50px; padding-top:40px }
@media(max-width:1000px) {
 .eng-visual-journey .eng-visual-lanes { grid-template-columns:1fr 1fr }
 .eng-case-evidence { gap:30px }
 .eng-visual-layers .eng-visual-lanes>li { grid-template-columns:25px 1fr }
 .eng-visual-layers ul { grid-column:2; margin-top:0 }
}
@media(max-width:700px) {
 .eng-visual-lanes,.eng-visual-journey .eng-visual-lanes,.eng-case-evidence { grid-template-columns:1fr }
 .eng-visual-layers ul { display:block }
 .eng-visual-brief { padding:23px }
 .eng-case-evidence h2 { font-size:34px }
 .eng-test-table { font-size:12px }
 .eng-test-table th,.eng-test-table td { padding:14px 10px 14px 0; overflow-wrap:anywhere }
 .eng-test-table thead { font-size:10px }
 .eng-visual-lanes>li { padding-top:20px }
}
@media(max-width:700px) {
 .eng-wrap { width:calc(100% - 40px) }
 .eng-hero { padding-block:50px }
 .eng-home-hero,.eng-case,.eng-two,.eng-people,.eng-blocks,.eng-depth { grid-template-columns:1fr }
 .eng-home-hero { gap:40px }
 .eng-needs { padding-left:22px }
 .eng-section { padding-block:52px }
 .eng-section-head { display:block }
 .eng-section-head>p { margin-top:22px }
 .eng-proof-strip { grid-template-columns:1fr; gap:15px }
 .eng-proof-strip a { flex-direction:row; gap:14px; justify-content:space-between }
 .eng-proof-strip a span { text-align:right }
 .eng-proof-strip strong { max-width:55% }
 .eng-case { padding-block:32px; gap:27px }
 .eng-case h3 { font-size:32px }
 .eng-diagram { padding:20px }
 .eng-four,.eng-assistants { gap:30px 22px }
 .eng-cap h3 { font-size:25px }
 .eng-method { grid-template-columns:1fr }
 .eng-method li { border-right:0; border-bottom:1px solid var(--ink-inverse-muted) }
 .eng-method li:last-child { border-bottom:0 }
 .eng-method li>span { margin-bottom:12px }
 .eng-evidence { grid-template-columns:1fr }
 .eng-blocks { gap:35px }
 .eng-closing { padding-block:45px }
 .eng-closing h2 { font-size:36px }
 .eng-lead { font-size:17px }
 .eng-portrait,.eng-initials { width:140px; height:140px }
 .eng .eng-home-hero h1 { font-size:43px }
 .eng-people { gap:55px }
 .eng-actions { gap:18px }
 .eng-button { font-size:13px }
}
@media(max-width:360px) {
 .eng-four,.eng-assistants,.eng-map-layer ul,.eng-map-compact .eng-map-layer ul { grid-template-columns:1fr }
 .eng .eng-home-hero h1 { font-size:38px }
}
