/* Agent Management: focused, stable reading and evidence components.
   These components have distinct names to avoid old overlapping-note rules. */
@font-face {
  font-family: "Agent Excalifont";
  src: local("Excalifont"), local("Excalifont Regular"),
    url("https://raw.githubusercontent.com/excalidraw/excalidraw/master/packages/excalidraw/fonts/Excalifont/Excalifont-Regular-a88b72a24fb54c9f94e3b5fdaa7481c9.woff2") format("woff2");
  font-style: normal; font-weight: 400; font-display: swap;
}
.page-case-agent .agent-section-heading {
  font-family: var(--font-display) !important;
  font-size: clamp(38px,4.5vw,68px);
  line-height: 1.03;
  letter-spacing: -.035em !important;
  text-wrap: pretty;
}
.page-case-agent :is(.agent-role-intro,.agent-scale__statement,.agent-news__copy,.agent-learning-heading) .eyebrow { margin-bottom: 20px; }
/* Four physical notes in a real grid, with room for every line of copy. */
body.page-case-agent #overview { padding-block: var(--space-narrative) !important; }
.agent-role-layout { display: grid; grid-template-columns: minmax(0,.83fr) minmax(0,1.4fr); align-items: start; gap: clamp(40px,5vw,80px); }
.agent-role-intro { padding-top: 16px; }
.agent-role-intro h2 { max-width: 12ch; }
.agent-role-board { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; align-items: stretch; }
.agent-role-note { position: relative; min-width: 0; min-height: 282px; padding: clamp(24px,2.3vw,34px); display: flex; flex-direction: column; gap: 24px; color: var(--ink); background: var(--paper-2); border-radius: 3px 5px 3px 2px; box-shadow: 2px 8px 20px rgba(41,46,38,.1); }
.agent-role-note::after { content:""; position: absolute; width: 72px; height: 22px; top: -9px; left: calc(50% - 36px); background: rgba(247,240,207,.53); transform: rotate(-2deg); pointer-events: none; }
.agent-role-note--orange { background: #e6d8b8; }
.agent-role-note--yellow { background: #e6d8b8; }
.agent-role-note--paper { background: #f3f0e7; }
.agent-role-note--ink { background: var(--ink); color: var(--paper); }
.agent-role-note__index { font: 500 13px/1.4 var(--font-body); }
.agent-role-note h3 { font-size: clamp(23px,2vw,29px); line-height: 1.14; letter-spacing: -.02em !important; text-wrap: pretty; }
.agent-role-note p { margin-top: auto; font: 400 14px/1.45 var(--font-body); opacity: .82; }
.agent-role-collaborators { grid-column: 1 / -1; margin-top: 6px; font: 400 14px/1.6 var(--font-body); color: var(--ink-soft); }
.agent-role-collaborators > span { font-weight: 600; color: var(--ink); }
/* Both the number and dots read from one animation progress value. */
body.page-case-agent #problem { padding-block: var(--space-narrative) !important; }
.agent-scale__layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); grid-template-areas: "visual statement" "visual context"; gap: 28px clamp(48px,8vw,130px); align-items: start; }
.agent-scale__statement { grid-area: statement; }
.agent-scale__metric { margin-top: 24px; }
.agent-scale__metric [data-agent-count] { display: block; min-width: 4ch; font: 600 clamp(100px,10vw,154px)/1 var(--font-display) !important; letter-spacing: -.06em; font-variant-numeric: tabular-nums; }
.agent-scale__metric small { display: block; margin-top: 14px; max-width: 28ch; font: 500 clamp(16px,1.4vw,20px)/1.4 var(--font-body); color: var(--ink-soft); }
.agent-scale__visual { grid-area: visual; width: min(100%,430px); margin: auto; }
.agent-scale__field { display: grid; grid-template-columns: repeat(10,minmax(0,1fr)); gap: clamp(7px,1vw,13px); aspect-ratio: 1; width: 100%; }
.agent-scale-dot { display: block; min-width: 0; aspect-ratio: 1; border: 1px solid rgba(41,46,38,.12); border-radius: 47% 52% 43% 51%; background: rgba(41,46,38,.035); }
.agent-scale-dot:nth-child(3n) { border-radius: 49% 42% 51% 46%; transform: rotate(13deg); }
.agent-scale-dot:nth-child(7n) { border-radius: 41% 54% 48% 55%; transform: rotate(-8deg); }
.agent-scale-dot.is-counted { border-color: var(--orange); background: var(--orange); }
.agent-scale__visual figcaption { display: flex; align-items: center; gap: 10px; margin-top: 22px; font: 500 14px/1.4 var(--font-body); color: var(--ink-soft); }
.agent-scale__legend-dot { width: 12px; height: 12px; background: var(--orange); border-radius: 46% 53% 48% 43%; }
.agent-scale__context { grid-area: context; max-width: 44ch; }
/* Explicit family exceptions win over the legacy global body-font sweep;
   sizes remain responsive in their component rules. */
body.page-case.page-case-agent .agent-scale__metric [data-agent-count],
body.page-case.page-case-agent .agent-learning-card__title {
  font-family: var(--font-display) !important;
}
/* A fanned news arrangement with full-bleed, non-clickable screenshots. */
body.page-case-agent #main > #why-it-mattered.agent-news { background: var(--ink) !important; color: var(--paper); padding-block: var(--space-dense); }
.agent-news__layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(40px,5vw,76px); align-items: center; }
.agent-news__copy h2 { max-width: 16ch; font-size: clamp(36px,3.6vw,54px) !important; }
.agent-news__copy .copy { margin-top: 28px; max-width: 43ch; color: rgba(243,240,231,.82); }
.agent-news__copy .eyebrow { color: rgba(243,240,231,.8); }
.agent-news__gallery { min-width: 0; width: min(100%,760px); justify-self: center; }
.agent-news__viewport { position: relative; width: 100%; aspect-ratio: 1.30; touch-action: pan-y; isolation: isolate; }
.agent-news__slide { position: absolute; top: 4%; left: 50%; width: 54%; height: auto; margin: 0 !important; padding: 0; border: 0; border-radius: 16px; overflow: hidden; box-shadow: 0 14px 32px rgba(0,0,0,.2); transform-origin: center; transition: transform 500ms cubic-bezier(.2,.72,.18,1), filter 500ms ease; }
.agent-news__slide[data-position="front"] { z-index: 3; transform: translateX(-50%); filter: none; }
.agent-news__slide[data-position="left"] { z-index: 1; transform: translate(-91%,6%) rotate(-9deg) scale(.88); filter: brightness(.75); }
.agent-news__slide[data-position="right"] { z-index: 2; transform: translate(-9%,6%) rotate(9deg) scale(.88); filter: brightness(.75); }
.agent-news__image { display: block; padding: 0; margin: 0; line-height: 0; }
.agent-news__image img { display: block; width: 100%; height: auto; max-width: none; padding: 0; margin: 0; border: 0; border-radius: 0; object-fit: cover; user-select: none; -webkit-user-drag: none; }
.agent-news__caption { margin-top: 8px; min-height: 90px; padding: 0 8px; }
.agent-news__caption strong { display: block; font: 600 16px/1.45 var(--font-body); }
.agent-news__caption p { margin-top: 6px; max-width: 56ch; font: 400 14px/1.5 var(--font-body); color: rgba(243,240,231,.78); }
.agent-news__toolbar[hidden] { display: none !important; }
.agent-news__toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 12px; padding-inline: 8px; }
.agent-news__position { font: 500 14px/1.4 var(--font-body); color: rgba(243,240,231,.8); }
.agent-news__arrows { display: flex; flex-shrink: 0; gap: 10px; }
.agent-news__arrows button { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid rgba(243,240,231,.5); border-radius: 50%; cursor: pointer; color: var(--paper); transition: background-color 200ms ease, color 200ms ease; }
.agent-news__arrows button:hover { background: var(--paper); color: var(--ink); }
.agent-news__arrows button:focus-visible { outline: 2px solid var(--orange); outline-offset: 4px; }
.agent-news__arrows svg { width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }

/* Sample note sits next to the discovery title; sector angles retain the data. */
.agent-discovery-header { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(280px,.8fr); gap: clamp(40px,5vw,72px); align-items: center; margin-bottom: clamp(48px,6vw,80px); }
body.page-case-agent .agent-discovery-header .discovery-v29__heading { max-width: none; margin: 0; }
body.page-case-agent .agent-discovery-header .discovery-v29__heading .h2 { font-size: clamp(42px,5vw,74px) !important; line-height: 1.02 !important; max-width: 16ch; }
.agent-sample-note { position: relative; width: min(100%,350px); justify-self: end; padding: 26px 26px 28px; background: #f0d574; color: var(--ink); box-shadow: 3px 10px 26px rgba(41,46,38,.12); border-radius: 2px 4px 3px 1px; transform: rotate(1.2deg); }
.agent-sample-note::before { content:""; position: absolute; left: calc(50% - 40px); top: -12px; width: 80px; height: 25px; background: rgba(241,232,200,.78); transform: rotate(-4deg); }
.agent-sample-note__eyebrow { font: 500 14px/1.4 var(--font-body); margin-bottom: 10px; }
.agent-sample-note h3 { display: flex; align-items: baseline; gap: 12px; font: 500 22px/1.2 var(--font-display); letter-spacing: -.02em !important; }
.agent-sample-note h3 strong { font: 600 64px/1 var(--font-display); }
.agent-sample-note__pie { width: 220px; max-width: 100%; margin: 14px auto 16px; overflow: visible; }
.agent-pie-internal { fill: var(--orange); }
.agent-pie-external { fill: #f8edc5; }
.agent-pie-outline { fill: none; stroke: var(--ink); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.agent-pie-echo { fill: none; stroke: var(--ink); opacity: .55; stroke-width: .9; stroke-linejoin: round; }
body.page-case.page-case-agent .agent-sample-note__pie text { font: 400 32px/1 "Agent Excalifont", "Segoe Print", "Comic Sans MS", cursive !important; fill: var(--ink); }
.agent-sample-note__legend { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; font: 400 15px/1.4 var(--font-body); }
.agent-sample-note__legend li { display: flex; align-items: center; gap: 7px; }
.agent-pie-key { width: 14px; height: 14px; border: 1px solid rgba(41,46,38,.5); border-radius: 2px; }
.agent-pie-key--internal { background: var(--orange); }
.agent-pie-key--external { background: repeating-linear-gradient(118deg,#f8edc5 0 4px,#cbc1a0 4px 5px); }
/* The explainer trades places with the icon, not the title or another note. */
body.page-case-agent #learning { padding-block: var(--space-narrative) !important; }
.agent-learning-heading { display: flex; justify-content: space-between; align-items: end; gap: 36px; margin-bottom: 48px; }
.agent-learning-heading h2 { max-width: 17ch; }
.agent-learning-heading > p { max-width: 28ch; font: 400 15px/1.5 var(--font-body); color: var(--ink-soft); }
.agent-learning-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 24px; }
.agent-learning-note { min-width: 0; background: #e6d8b8; border-radius: 3px; box-shadow: 2px 10px 24px rgba(41,46,38,.10); }
.agent-learning-note--2, .agent-learning-note--4 { background: #f3f0e7; }
.agent-learning-note--3 { background: #d7decd; }
.agent-learning-card { width: 100%; min-height: 360px; padding: 26px; display: flex; flex-direction: column; gap: 18px; text-align: left; color: var(--ink); border-radius: inherit; cursor: pointer; }
.agent-learning-card__space { display: grid; position: relative; min-height: 152px; width: 100%; }
.agent-learning-card__icon { grid-area: 1 / 1; align-self: start; width: 88px; height: 88px; object-fit: contain; }
.agent-learning-card__detail { grid-area: 1 / 1; align-self: start; display: block; font: 400 14px/1.5 var(--font-body); max-width: 32ch; }
.agent-learning-card__title { display: block; margin-top: auto; font: 500 clamp(24px,2vw,29px)/1.13 var(--font-display) !important; letter-spacing: -.025em; text-wrap: pretty; }
.agent-learning-card__hint { margin-top: 2px; display: flex; justify-content: space-between; align-items: center; font: 500 13px/1.4 var(--font-body); }
.agent-learning-card__hint > span { display: inline-block; font: 400 22px/1 var(--font-body); transition: transform 200ms ease; }
.agent-learning-card.is-enhanced .agent-learning-card__detail { position: relative; visibility: hidden; opacity: 0; transition: opacity 200ms ease, visibility 0s linear 200ms; }
.agent-learning-card.is-enhanced .agent-learning-card__icon { opacity: 1; transition: opacity 200ms ease; }
.agent-learning-card[data-open="true"] .agent-learning-card__detail { opacity: 1; visibility: visible; transition-delay: 0s; }
.agent-learning-card[data-open="true"] .agent-learning-card__icon { opacity: 0; }
.agent-learning-card[data-open="true"] .agent-learning-card__hint > span { transform: rotate(45deg); }
.agent-learning-card:hover { box-shadow: inset 0 0 0 1px rgba(41,46,38,.2); }
.agent-learning-card:focus-visible { outline: 2px solid var(--ink); outline-offset: 5px; }
html:not(.js) .agent-learning-card__space { display: block; }
html:not(.js) .agent-learning-card__icon { margin-bottom: 20px; }
html:not(.js) .agent-learning-card__hint { display: none; }
@media (max-width: 1160px) {
  .agent-role-layout { grid-template-columns: minmax(0,.85fr) minmax(0,1.3fr); gap: 32px; }
  .agent-role-board { gap: 24px; }
  .agent-role-note { min-height: 300px; padding: 24px; }
  .agent-learning-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .agent-learning-card { min-height: 320px; }
  .agent-learning-card__space { min-height: 128px; }
  .agent-learning-card__title { font-size: 28px !important; }
}
@media (max-width: 900px) {
  .agent-role-layout { grid-template-columns: 1fr; gap: 44px; }
  .agent-role-intro h2 { max-width: 19ch; }
  .agent-role-note { min-height: 265px; }
  .agent-news__layout { grid-template-columns: 1fr; }
  .agent-news__copy h2 { max-width: 24ch; }
  .agent-news__copy .copy { max-width: 56ch; }
  .agent-news__gallery { justify-self: center; }
  .agent-discovery-header { grid-template-columns: minmax(0,1.1fr) minmax(250px,.8fr); gap: 28px; }
  .agent-sample-note { padding-inline: 20px; }
  .agent-sample-note__legend { gap: 10px; }
}
@media (max-width: 700px) {
  .agent-scale__layout { grid-template-columns: 1fr; grid-template-areas: "statement" "visual" "context"; gap: 32px; }
  .agent-scale__metric { display: flex; gap: 24px; align-items: center; margin-top: 18px; }
  .agent-scale__metric [data-agent-count] { width: 3.15ch; min-width: 3.15ch; flex-shrink: 0; font-size: clamp(80px,20vw,110px) !important; }
  .agent-scale__metric small { margin: 0; max-width: 16ch; font-size: 15px; }
  .agent-scale__visual { width: min(100%,330px); margin-inline: 0; }
  .agent-scale__field { gap: 9px; }
  .agent-scale__context { max-width: none; }
  .agent-discovery-header { grid-template-columns: 1fr; gap: 42px; }
  .agent-sample-note { justify-self: center; width: min(100% - 8px,340px); }
  .agent-learning-heading { display: block; }
  .agent-learning-heading > p { margin-top: 20px; max-width: none; }
  .agent-learning-grid { gap: 20px; }
  .agent-learning-card { padding: 22px; }
}
@media (max-width: 550px) {
  .agent-role-board { grid-template-columns: 1fr; gap: 28px; }
  .agent-role-note { min-height: 240px; padding: 28px; }
  .agent-role-note h3 { font-size: 28px; }
  .agent-learning-grid { grid-template-columns: 1fr; }
  .agent-learning-card { min-height: 330px; padding: 28px; }
  .agent-learning-card__space { min-height: 130px; }
  .agent-learning-card__detail { font-size: 15px; }
  .agent-news__position { font-size: 12px; max-width: 22ch; }
  .agent-news__toolbar { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .agent-news__slide, .agent-learning-card *, .agent-news__arrows button { animation: none !important; transition: none !important; }
}
@media print {
  .agent-learning-card__icon, .agent-learning-card__hint, .agent-news__toolbar { display: none !important; }
  .agent-learning-card__detail { position: static !important; opacity: 1 !important; visibility: visible !important; }
  .agent-news__slide[hidden] { display: block !important; }
  .agent-role-note, .agent-sample-note, .agent-learning-note { break-inside: avoid; }
}

/* Two source-authored learning icons, with descriptions revealed in-place. */
.page-case-agent .agent-zfi-learnings { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(140px,.48fr) repeat(2,minmax(0,1fr)); gap: 28px; align-items: stretch; margin-top: 24px; }
.agent-zfi-learnings__label { padding-top: 16px; }
.agent-zfi-instruction { max-width: 18ch; margin-top: 14px; font: 400 13px/1.5 var(--font-body); color: rgba(243,240,231,.72); }
.agent-zfi-note { position: relative; min-width: 0; background: #f3f0e7; color: var(--ink); border-radius: 3px 5px 3px 2px; box-shadow: 2px 8px 20px rgba(0,0,0,.14); }
.agent-zfi-note--yellow { background: #e6d8b8; }
.agent-zfi-note::before { content: ""; position: absolute; top: -10px; left: calc(50% - 36px); width: 72px; height: 22px; background: rgba(247,240,207,.58); transform: rotate(-3deg); pointer-events: none; z-index: 2; }
.agent-zfi-card { width: 100%; height: 100%; padding: 28px; display: flex; flex-direction: column; gap: 18px; color: var(--ink); text-align: left; border: 0; border-radius: inherit; background: transparent; cursor: pointer; }
.agent-zfi-card__top { display: flex; align-items: flex-start; justify-content: space-between; font: 500 13px/1.4 var(--font-body); }
.agent-zfi-card__top img { width: 64px; height: 64px; object-fit: contain; }
body.page-case-agent .agent-zfi-card__title { display: block; font: 500 clamp(27px,2.5vw,36px)/1.12 var(--font-display) !important; letter-spacing: -.025em; min-height: 1.12em; max-width: 18ch; }
.agent-zfi-card__space { display: grid; align-items: start; min-height: 90px; }
.agent-zfi-card__detail { display: block; font: 400 16px/1.5 var(--font-body); }
.agent-zfi-card.is-enhanced .agent-zfi-card__detail { visibility: hidden; opacity: 0; transition: opacity 200ms ease, visibility 0s linear 200ms; }
.agent-zfi-card[data-open="true"] .agent-zfi-card__detail { visibility: visible; opacity: 1; transition-delay: 0s; }
.agent-zfi-card__hint { display: flex; justify-content: space-between; align-items: center; gap: 12px; font: 500 12px/1.4 var(--font-body); margin-top: auto; }
.agent-zfi-card__hint i { font: 400 24px/1 var(--font-body); transition: transform 180ms ease; }
.agent-zfi-card[data-open="true"] .agent-zfi-card__hint i { transform: rotate(45deg); }
.agent-zfi-card:is(:hover,:focus-visible) { box-shadow: inset 0 0 0 2px var(--orange); }
.agent-zfi-card:focus-visible { outline: 2px solid var(--paper); outline-offset: 4px; }
html:not(.js) .agent-zfi-card__hint { display: none; }
/* The lifecycle has four rows, not three. Its decision has real space rather
   than extending below an overflow-hidden viewport. Compact windows flow. */
body.page-case-agent .lifecycle-scene__sticky { padding: 52px 0 28px !important; overflow: visible !important; }
body.page-case-agent .lifecycle-scene__sticky > .shell { height: 100%; display: grid !important; grid-template-rows: auto auto minmax(230px,1fr) auto !important; align-items: start; row-gap: 12px; }
body.page-case-agent .lifecycle-scene .lifecycle-scene__title { font-size: clamp(36px,3.5vw,54px) !important; line-height: 1.07 !important; max-width: 27ch !important; margin: 0 !important; padding-bottom: .07em; }
body.page-case-agent .lifecycle-deck { height: min(28vh,280px) !important; margin-top: 12px !important; align-self: center; }
body.page-case-agent .lifecycle-flip { height: min(27vh,265px) !important; }
body.page-case-agent .lifecycle-scene__decision { width: min(900px,100%) !important; max-width: 900px !important; margin: 8px auto 0 !important; transform: none !important; }
body.page-case-agent .lifecycle-scene__conclusion { font-size: clamp(19px,1.65vw,24px) !important; line-height: 1.45 !important; max-width: 72ch !important; overflow: visible; }
body.page-case-agent .lifecycle-why { opacity: 1 !important; transform: none !important; min-height: 170px !important; width: min(740px,100%); margin-top: 12px !important; }
body.page-case-agent .lifecycle-why summary { min-height: 46px; padding: 12px 2px !important; }
body.page-case-agent .lifecycle-why__body { top: 52px !important; max-height: none !important; padding: 4px 0 12px !important; overflow: visible !important; }
body.page-case-agent .lifecycle-why__body p { font-size: 15px !important; line-height: 1.5 !important; max-width: none !important; }
/* A local dark surface is explicit so it remains readable during theme changes. */
body.page-case-agent #main > .decision-band--ink { background: var(--ink) !important; color: var(--paper) !important; }
body.page-case-agent .decision-band--ink .decision-band__title { color: var(--paper) !important; line-height: 1.1; }
body.page-case-agent .decision-band--ink .decision-band__copy { color: #e5e2da !important; opacity: 1; }
body.page-case-agent .decision-band__inner { user-select: text; -webkit-user-select: text; }
@media (max-width: 980px), (max-height: 849px), (prefers-reduced-motion: reduce) {
  body.page-case-agent .lifecycle-scene { height: auto !important; min-height: 0 !important; padding: var(--space-dense) 0 !important; }
  body.page-case-agent .lifecycle-scene__sticky { position: relative !important; top: auto !important; height: auto !important; min-height: 0 !important; padding: 0 !important; overflow: visible !important; }
  body.page-case-agent .lifecycle-scene__sticky > .shell { height: auto !important; display: block !important; }
  body.page-case-agent .lifecycle-scene__title { margin-block: 18px 32px !important; }
  body.page-case-agent .lifecycle-deck { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; height: auto !important; margin: 32px 0 !important; }
  body.page-case-agent .lifecycle-flip { position: relative !important; inset: auto !important; width: 100% !important; height: 268px !important; opacity: 1 !important; transform: none !important; }
  body.page-case-agent .lifecycle-scene__decision { margin-top: 36px !important; }
  body.page-case-agent .lifecycle-why { min-height: 0 !important; }
  body.page-case-agent .lifecycle-why__body { position: static !important; max-height: none !important; padding: 8px 0 20px !important; overflow: visible !important; }
}
@media (max-width: 980px) {
 .page-case-agent .agent-zfi-learnings { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .agent-zfi-learnings__label { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 24px; }
 .agent-zfi-instruction { margin: 0; max-width: none; }
}
@media (max-width: 900px) { .agent-news__layout { grid-template-columns: 1fr; } .agent-news__copy h2 { max-width: 24ch; } .agent-news__gallery { max-width: 700px; } }
@media (max-width: 700px) { body.page-case-agent .lifecycle-deck { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 550px) {
 .page-case-agent .agent-zfi-learnings { grid-template-columns: 1fr; gap: 28px; }
 .agent-zfi-learnings__label { display: block; }
 .agent-zfi-instruction { margin-top: 8px; }
 .agent-zfi-card { padding: 26px; }
 .agent-zfi-card__title { min-height: 0 !important; }
 .agent-news__slide { border-radius: 9px; }
 .agent-news__caption { min-height: 122px; }
 .agent-news__caption p { font-size: 13px; }
}
@media (max-width: 480px) { body.page-case-agent .lifecycle-deck { grid-template-columns: 1fr; } body.page-case-agent .lifecycle-flip { height: 260px !important; } }
@media (prefers-reduced-motion: reduce) { .agent-news__slide,.agent-zfi-card * { transition: none !important; } }
@media print {
 .agent-news__toolbar, .agent-zfi-card__hint { display: none !important; }
 .agent-news__viewport { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; aspect-ratio: auto; }
 .agent-news__slide { position: static; width: 100%; transform: none !important; filter: none !important; }
 .agent-zfi-card__detail { opacity: 1 !important; visibility: visible !important; }
}

/* Static reading remains complete when enhancement is unavailable. */
html:not(.js) .agent-news__viewport { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; aspect-ratio: auto; }
html:not(.js) .agent-news__slide { position: static; width: 100%; transform: none; filter: none; overflow: visible; box-shadow: none; }
html:not(.js) .agent-news__slide figcaption { position: static; width: auto; height: auto; clip: auto; clip-path: none; white-space: normal; display: block; font: 400 13px/1.5 var(--font-body); margin-top: 14px; }
html:not(.js) .agent-news__slide figcaption span { display: block; margin-top: 8px; }
html:not(.js) .agent-news__caption { display: none; }
html:not(.js) body.page-case-agent .lifecycle-scene { height: auto !important; }
html:not(.js) body.page-case-agent .lifecycle-scene__sticky { position: relative !important; height: auto !important; }
html:not(.js) body.page-case-agent .lifecycle-scene__sticky > .shell { display: block !important; height: auto !important; }
html:not(.js) body.page-case-agent .lifecycle-deck { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; height: auto !important; margin-block: 32px !important; }
html:not(.js) body.page-case-agent .lifecycle-flip { position: relative !important; inset: auto !important; width: 100% !important; height: 270px !important; transform: none !important; opacity: 1 !important; }
html:not(.js) body.page-case-agent .lifecycle-why { min-height: 0 !important; }
html:not(.js) body.page-case-agent .lifecycle-why__body { position: static !important; }
@media (max-width: 700px) {
 html:not(.js) .agent-news__viewport { grid-template-columns: 1fr; }
 html:not(.js) body.page-case-agent .lifecycle-deck { grid-template-columns: 1fr; }
}
/* The inherited city comparison used fixed desktop columns even on phones.
   Keep it in the viewport so the repaired sections do not inherit page overflow. */
@media (max-width: 980px) {
 body.page-case-agent .city-story-v13__stage { grid-template-columns: minmax(0,1fr) !important; gap: 32px !important; }
 body.page-case-agent .city-story-v13__visual { position: relative !important; top: auto !important; min-width: 0; }
 body.page-case-agent .city-story-v13__steps { min-width: 0; max-width: 100%; }
}
/* Narrow phones must shrink the inherited single-column grids below their
   desktop min-content widths instead of extending the page horizontally. */
@media (max-width: 550px) {
 body.page-case-agent .screen-flow__sticky,
 body.page-case-agent .before-after__grid { grid-template-columns: minmax(0,1fr) !important; min-width: 0 !important; }
 body.page-case-agent .screen-flow__copy,
 body.page-case-agent .screen-flow__frame,
 body.page-case-agent .screen-flow__rail,
 body.page-case-agent .before-after__grid > div { min-width: 0 !important; max-width: 100% !important; }
 body.page-case-agent .flow-step { max-width: 100% !important; }
}

/* v62 · 95k magnetic field -------------------------------------------------
   Inspired by Componentry's Magnet Lines interaction: the field responds to
   cursor proximity, but keeps the marks as dots and uses slower, softer motion. */
body.page-case-agent #problem .agent-scale__metric [data-agent-count] {
  min-width: 0;
  font-variant-numeric: normal;
}
body.page-case-agent #problem .agent-scale__visual {
  width: min(100%, 470px);
  padding: clamp(20px, 2.5vw, 30px);
  border-radius: 28px;
  background: color-mix(in srgb, var(--paper-2) 72%, transparent);
  cursor: default;
}
body.page-case-agent #problem .agent-scale__field {
  grid-template-columns: repeat(10, minmax(0, 1fr));
  gap: clamp(9px, 1.15vw, 15px);
  aspect-ratio: auto;
  width: 100%;
  padding-block: 6px;
  overflow: visible;
}
body.page-case-agent #problem .agent-scale-dot {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  border: 0;
  background: var(--orange);
  border-radius: 50%;
  box-shadow: none;
  transform: translate3d(0,0,0) scale(1);
  transform-origin: center;
  will-change: transform;
  opacity: .94;
}
body.page-case-agent #problem .agent-scale-dot:nth-child(3n),
body.page-case-agent #problem .agent-scale-dot:nth-child(7n) {
  border-radius: 50%;
  transform: translate3d(0,0,0) scale(1);
}
body.page-case-agent #problem .agent-scale-dot:nth-child(4n) { opacity: .88; }
body.page-case-agent #problem .agent-scale-dot:nth-child(6n) { opacity: .98; }
body.page-case-agent #problem .agent-scale__visual figcaption {
  margin-top: 18px;
  opacity: .68;
}
@media (hover:hover) and (pointer:fine) {
  body.page-case-agent #problem .agent-scale__visual:hover .agent-scale-dot { opacity: 1; }
}
@media (max-width: 980px) {
  body.page-case-agent #problem .agent-scale__visual { width:min(100%,390px); padding:20px; }
  body.page-case-agent #problem .agent-scale__field { gap:9px; }
}
@media (prefers-reduced-motion: reduce) {
  body.page-case-agent #problem .agent-scale-dot { transform:none !important; }
}

/* ========================================================================== 
   V63; stable case-study surfaces, evidence blending and lifecycle pacing
   ========================================================================== */

/* Case-study sections own their tone. The previous global background scrub
   changed the entire viewport while an outgoing section was still readable,
   which made decisions and sticky scenes appear to flash darker/lighter. */
body.page-case-agent #main {
  background: var(--paper) !important;
}
body.page-case-agent #main > .bg-transition-breath {
  display: none !important;
}
body.page-case-agent #main > :is(.case-hero-v2,.section--paper,.agent-role-section,.agent-analogy-intro,.city-story-v13,.before-after,.decision-band--paper) {
  background-color: var(--paper) !important;
  background-image: none !important;
}
body.page-case-agent #main > :is(.section--sand,.lifecycle-scene) {
  background-color: var(--paper-2) !important;
  background-image: none !important;
}
body.page-case-agent #main > :is(.section--ink,.decision-band--ink) {
  background-color: var(--ink) !important;
  background-image: none !important;
}
body.page-case-agent #main > .screen-flow {
  background-color: #08070c !important;
  background-image: none !important;
}

/* Let large tone changes travel with the section edge rather than recolouring
   content that is still on screen. The ramp sits inside existing section
   padding, so it adds no extra scroll distance. */
body.page-case-agent #why-it-mattered {
  background-image: linear-gradient(to bottom, var(--paper) 0, var(--ink) 92px, var(--ink) 100%) !important;
}
body.page-case-agent #user {
  background-image: linear-gradient(to bottom, var(--ink) 0, var(--paper) 96px, var(--paper) 100%) !important;
}
body.page-case-agent #direction {
  background-image: linear-gradient(to bottom, var(--paper) 0, var(--ink) 94px, var(--ink) 100%) !important;
}
body.page-case-agent #agent-lifecycle {
  background-image: linear-gradient(to bottom, var(--ink) 0, var(--paper-2) 96px, var(--paper-2) 100%) !important;
}
body.page-case-agent #technical-landscape {
  background-image: linear-gradient(to bottom, var(--paper-2) 0, var(--paper) 88px, var(--paper) 100%) !important;
}
body.page-case-agent #solution {
  background-image: linear-gradient(to bottom, var(--paper) 0, #08070c 104px, #08070c 100%) !important;
}

/* Background annotations are removed; hand-drawn language now belongs only to
   evidence objects and authored illustrations. */
body.page-case-agent .scroll-scribble,
body.page-case-agent .editorial-grid-lines {
  display: none !important;
}

/* Adnan: the illustration background is colour-matched to paper and the edge
   is feathered so the image reads as part of the page rather than a scan. */
body.page-case-agent .persona__portrait img {
  mix-blend-mode: multiply !important;
  filter: contrast(1.06) saturate(.86) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  -webkit-mask-image: radial-gradient(ellipse 82% 82% at 50% 47%, #000 73%, rgba(0,0,0,.92) 84%, transparent 100%) !important;
  mask-image: radial-gradient(ellipse 82% 82% at 50% 47%, #000 73%, rgba(0,0,0,.92) 84%, transparent 100%) !important;
}

/* ZFI evidence uses the real guided-install screen, not a placeholder. */
body.page-case-agent .zfi-product-evidence {
  margin: 0;
  align-self: center;
  color: var(--paper);
}
body.page-case-agent .zfi-product-evidence img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 26px 70px rgba(0,0,0,.28);
}
body.page-case-agent .zfi-product-evidence figcaption {
  display: grid;
  gap: 5px;
  margin-top: 16px;
  padding-inline: 3px;
}
body.page-case-agent .zfi-product-evidence figcaption span {
  font: 600 12px/1.35 var(--font-body) !important;
  color: var(--orange-soft);
}
body.page-case-agent .zfi-product-evidence figcaption strong {
  font: 500 16px/1.4 var(--font-body) !important;
  color: rgba(243,240,231,.82);
}

/* Brainstorming: supplied puzzle SVG is the visual anchor. All explanatory
   copy remains live HTML rather than baked into the artwork. */
body.page-case-agent .brainstorm-concept-v63 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(150px,.58fr) minmax(0,1.42fr);
  gap: clamp(24px,3vw,42px);
  align-items: center;
  margin: 0;
  padding: clamp(22px,2.5vw,34px);
  border: 1px solid rgba(41,46,38,.13);
  border-radius: 24px;
  background: rgba(243,240,231,.48);
}
body.page-case-agent .brainstorm-concept-v63__core {
  display: grid;
  place-items: center;
  min-height: 260px;
}
body.page-case-agent .brainstorm-concept-v63__core img {
  width: min(100%,270px);
  height: auto;
}
body.page-case-agent .brainstorm-concept-v63__notes {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid rgba(41,46,38,.16);
  border-left: 1px solid rgba(41,46,38,.16);
}
body.page-case-agent .brainstorm-concept-v63__notes article {
  min-height: 160px;
  padding: 20px;
  border-right: 1px solid rgba(41,46,38,.16);
  border-bottom: 1px solid rgba(41,46,38,.16);
}
body.page-case-agent .brainstorm-concept-v63__notes span {
  display: block;
  margin-bottom: 24px;
  font: 600 11px/1 var(--font-body) !important;
  color: var(--orange);
}
body.page-case-agent .brainstorm-concept-v63__notes strong {
  display: block;
  font: 600 clamp(18px,1.45vw,23px)/1.15 var(--font-display) !important;
  letter-spacing: -.02em;
}
body.page-case-agent .brainstorm-concept-v63__notes p {
  margin-top: 9px;
  font: 400 13.5px/1.48 var(--font-body) !important;
  color: var(--ink-soft);
}

/* Layout reference: keep the authored hand-drawn image generous and quiet. */
body.page-case-agent .design-phase__art--layout img {
  display: block;
  width: 100%;
  height: auto;
  mix-blend-mode: multiply !important;
  filter: contrast(1.03) saturate(.92) !important;
}

/* Technical landscape: background-matched exports plus a gentle vertical
   feather remove the visible rectangular scan boundary. */
body.page-case-agent .before-after__image {
  mix-blend-mode: multiply !important;
  filter: contrast(1.04) saturate(.9) !important;
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%) !important;
  mask-image: linear-gradient(to bottom, transparent 0, #000 5%, #000 95%, transparent 100%) !important;
}

/* Lifecycle: conclusion first, disclosure second. The disclosure has reserved
   space, so reveal/open states never push the rest of the sticky composition. */
body.page-case-agent .lifecycle-scene__conclusion {
  opacity: 0 !important;
  transform: translateY(10px);
  transition: opacity 420ms ease, transform 520ms var(--ease) !important;
}
body.page-case-agent .lifecycle-scene.is-conclusion-ready .lifecycle-scene__conclusion {
  opacity: 1 !important;
  transform: translateY(0);
}
body.page-case-agent .lifecycle-scene .lifecycle-why {
  position: relative;
  opacity: 0 !important;
  transform: translateY(8px) !important;
  pointer-events: none;
  border-bottom: 0 !important;
  transition: opacity 380ms ease, transform 480ms var(--ease) !important;
}
body.page-case-agent .lifecycle-scene.is-why-ready .lifecycle-why {
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto;
}
body.page-case-agent .lifecycle-why summary {
  position: relative;
}
body.page-case-agent .lifecycle-why summary::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1.5px;
  background: rgba(41,46,38,.42);
  transform: scaleX(.22);
  transform-origin: left center;
  transition: transform 460ms cubic-bezier(.22,.78,.18,1), background-color 320ms ease;
}
body.page-case-agent .lifecycle-why[open] summary::before {
  transform: scaleX(1);
  background: var(--orange);
}
body.page-case-agent .lifecycle-why summary::after {
  transition: transform 360ms cubic-bezier(.22,.78,.18,1), color 260ms ease !important;
}
body.page-case-agent .lifecycle-why[open] summary::after {
  transform: rotate(45deg) !important;
  color: var(--ink);
}

@media (min-width: 981px) and (min-height: 850px) {
  body.page-case-agent .lifecycle-why__body {
    position: absolute !important;
    left: 0;
    right: 0;
    top: 52px !important;
    width: 100%;
  }
}

@media (max-width: 980px), (max-height: 849px), (prefers-reduced-motion: reduce) {
  body.page-case-agent .lifecycle-scene__conclusion,
  body.page-case-agent .lifecycle-scene .lifecycle-why {
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto;
  }
}
@media (max-width: 760px) {
  body.page-case-agent .brainstorm-concept-v63 { grid-template-columns: 1fr; }
  body.page-case-agent .brainstorm-concept-v63__core { min-height: 190px; }
  body.page-case-agent .brainstorm-concept-v63__core img { width: min(58vw,230px); }
  body.page-case-agent .brainstorm-concept-v63__notes { grid-template-columns: 1fr; }
  body.page-case-agent .brainstorm-concept-v63__notes article { min-height: 0; }
}

/* Subtle light-tone ramps keep the editorial paper/sand shifts from reading as
   hard seams without adding any blank transition spacer. */
body.page-case-agent #discovery {
  background-image: linear-gradient(to bottom, var(--paper) 0, var(--paper-2) 72px, var(--paper-2) 100%) !important;
}
body.page-case-agent #design {
  background-image: linear-gradient(to bottom, var(--paper) 0, var(--paper-2) 68px, var(--paper-2) 100%) !important;
}
body.page-case-agent #layout {
  background-image: linear-gradient(to bottom, var(--paper-2) 0, var(--paper) 68px, var(--paper) 100%) !important;
}
body.page-case-agent #impact {
  background-image: linear-gradient(to bottom, var(--paper) 0, var(--paper-2) 68px, var(--paper-2) 100%) !important;
}


/* ========================================================================== 
   V64; restore the horizontal editorial strokes in the city-story bridge
   ========================================================================== */
body.page-case-agent .agent-analogy-intro .editorial-grid-lines {
  display: block !important;
  opacity: .72 !important;
  background-image: repeating-linear-gradient(
    to bottom,
    transparent 0,
    transparent clamp(76px, 9vh, 94px),
    rgba(41,46,38,.16) clamp(76px, 9vh, 94px),
    rgba(41,46,38,.16) calc(clamp(76px, 9vh, 94px) + 1px)
  ) !important;
  mask-image: linear-gradient(to bottom, transparent 3%, #000 14%, #000 90%, transparent 100%) !important;
  -webkit-mask-image: linear-gradient(to bottom, transparent 3%, #000 14%, #000 90%, transparent 100%) !important;
}

/* Keep the supplied ZFI screenshot intact and legible. */
body.page-case-agent .zfi-product-evidence img {
  object-fit: contain;
  object-position: center;
}

/* V65 · Brainstorming uses the supplied authored SVG. Its outlined caption
   shapes are covered in the asset, then restored here as live Excalifont text. */
body.page-case-agent .brainstorm-board-v65 {
  margin: 0;
  min-width: 0;
}
body.page-case-agent .brainstorm-board-v65__stage {
  position: relative;
  width: 100%;
  aspect-ratio: 1136 / 1056;
  overflow: hidden;
  background: #fff;
  border-radius: clamp(16px, 1.8vw, 24px);
  box-shadow: 0 18px 48px rgba(41,46,38,.08);
}
body.page-case-agent .brainstorm-board-v65__art {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.page-case-agent .brainstorm-board-v65__caption {
  position: absolute;
  z-index: 2;
  margin: 0;
  color: #212121;
  font-family: "Agent Excalifont", "Segoe Print", "Bradley Hand", cursive !important;
  font-size: clamp(12px, 1.28vw, 19px);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -.012em;
  text-wrap: balance;
  pointer-events: none;
}
body.page-case-agent .brainstorm-board-v65__caption--status {
  left: 2.65%;
  top: 43.15%;
  width: 55%;
}
body.page-case-agent .brainstorm-board-v65__caption--market {
  left: 70.1%;
  top: 43.15%;
  width: 27.4%;
}
body.page-case-agent .brainstorm-board-v65__caption--history {
  left: 2.65%;
  top: 94.0%;
  width: 31%;
}
body.page-case-agent .brainstorm-board-v65__caption--maintain {
  left: 39.2%;
  top: 94.0%;
  width: 58%;
}
@media (max-width: 760px) {
  body.page-case-agent .brainstorm-board-v65__stage {
    border-radius: 14px;
  }
  body.page-case-agent .brainstorm-board-v65__caption {
    font-size: clamp(10px, 2.2vw, 13px);
    line-height: 1.12;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.page-case-agent .brainstorm-board-v65 { transform: none !important; }
}

/* ========================================================================== 
   V66; At-a-glance hierarchy, sticky KPIs, persona breathing room
   ========================================================================== */

/* Keep the case-study page to one semantic H1 while giving “At a glance”
   the visual authority requested for the section opener. */
body.page-case-agent .pitch-v24__copy .pitch-v24__title {
  margin: 0;
  max-width: 10ch;
  font: 500 clamp(52px, 7vw, 108px)/.9 var(--font-display) !important;
  letter-spacing: -.055em !important;
  text-wrap: balance;
}
body.page-case-agent .pitch-v24__copy .pitch-v24__statement {
  max-width: 18ch;
  margin-top: clamp(24px, 3vw, 42px);
  font: 500 clamp(26px, 2.6vw, 42px)/1.02 var(--font-display) !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
}
body.page-case-agent .pitch-v24__copy .copy {
  margin-top: 20px !important;
}

/* Outcomes behave like authored sticky notes instead of a dashboard strip. */
body.page-case-agent .pitch-v24__metrics {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: clamp(22px, 3vw, 38px) !important;
  align-items: start;
  border-top: 0 !important;
  padding-top: 0 !important;
}
body.page-case-agent .pitch-metric {
  --pitch-r: -1.4deg;
  position: relative;
  display: flex !important;
  min-height: clamp(235px, 22vw, 300px) !important;
  padding: clamp(24px, 2.4vw, 34px) !important;
  flex-direction: column;
  align-content: initial !important;
  gap: 10px !important;
  border: 0 !important;
  border-radius: 3px 5px 3px 2px !important;
  box-shadow: 2px 14px 34px rgba(41,46,38,.12) !important;
  transform: rotate(var(--pitch-r));
  color: var(--ink);
}
body.page-case-agent .pitch-metric::before {
  content: "";
  position: absolute;
  width: 66px;
  height: 19px;
  top: -9px;
  left: calc(50% - 33px);
  background: rgba(243,240,231,.62);
  border: 1px solid rgba(41,46,38,.06);
  transform: rotate(-2deg);
  pointer-events: none;
}
body.page-case-agent .pitch-metric--yellow { --pitch-r: -1.7deg; background: #e6d8b8 !important; }
body.page-case-agent .pitch-metric--orange { --pitch-r: 1.2deg; background: #e6d8b8 !important; margin-top: 22px; }
body.page-case-agent .pitch-metric--paper { --pitch-r: -.6deg; background: #f3f0e7 !important; margin-top: 5px; }
body.page-case-agent .pitch-metric--ink { --pitch-r: 1.5deg; background: var(--ink) !important; color: var(--paper) !important; margin-top: 27px; }
body.page-case-agent .pitch-metric strong {
  margin-top: 6px;
  font: 650 clamp(44px,4.4vw,72px)/.86 var(--font-display) !important;
  letter-spacing: -.05em !important;
}
body.page-case-agent .pitch-metric--quote strong { font-size: clamp(34px,3.8vw,58px) !important; }
body.page-case-agent .pitch-metric b {
  margin-top: auto;
  font: 650 clamp(17px,1.45vw,22px)/1.08 var(--font-body) !important;
  letter-spacing: -.02em !important;
}
body.page-case-agent .pitch-metric span {
  max-width: 28ch;
  font: 500 12px/1.45 var(--font-body) !important;
  opacity: .7;
}
body.page-case-agent .pitch-metric--ink span { color: rgba(243,240,231,.7); }

/* “My role” label removed; keep intentional spacing above the actual story. */
body.page-case-agent .agent-role-intro { padding-top: 0 !important; }

/* Admin Adnan gets a full viewport to read before the next research chapter. */
body.page-case-agent #user {
  min-height: 100svh;
  display: flex;
  align-items: center;
}
body.page-case-agent #user > .shell { width: 100%; }

/* Planning & testing is a sticky note in its own right, not paper blending into
   the surrounding background. The tone stays warm and within the page palette. */
body.page-case-agent .journey__notes .journey-note--2 {
  background: #e6d8b8 !important;
  box-shadow: 2px 18px 42px rgba(41,46,38,.14) !important;
  outline: 1px solid rgba(41,46,38,.07);
}
body.page-case-agent .journey__notes .journey-note--2::before {
  background: rgba(243,240,231,.72) !important;
}

@media (max-width: 1000px) {
  body.page-case-agent .pitch-v24__metrics { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.page-case-agent .pitch-metric--orange,
  body.page-case-agent .pitch-metric--ink { margin-top: 18px; }
}
@media (max-width: 620px) {
  body.page-case-agent .pitch-v24__metrics { grid-template-columns: 1fr !important; gap: 30px !important; }
  body.page-case-agent .pitch-metric { min-height: 220px !important; margin-top: 0 !important; }
  body.page-case-agent #user { min-height: 100svh; }
}
@media (prefers-reduced-motion: reduce) {
  body.page-case-agent .pitch-metric { transform: none !important; }
}

/* ========================================================================== 
   V67; Cognitive-load hierarchy and chart alignment
   ========================================================================== */
body.page-case-agent .cognitive-v24__layout {
  align-items: start !important;
}
body.page-case-agent .cognitive-v67__head {
  align-self: start;
  padding-top: 0;
}
body.page-case-agent .cognitive-v67__title {
  margin: 0;
  max-width: 8.5ch;
  font: 500 clamp(52px, 6.6vw, 104px)/.9 var(--font-display) !important;
  letter-spacing: -.052em !important;
  text-wrap: balance;
}
body.page-case-agent .cognitive-v67__statement {
  max-width: 18ch;
  margin: clamp(28px, 3.2vw, 48px) 0 0;
  font: 500 clamp(25px, 2.35vw, 38px)/1.04 var(--font-display) !important;
  letter-spacing: -.032em !important;
  text-wrap: balance;
}
body.page-case-agent .cognitive-v67__head .copy {
  max-width: 43ch;
  margin-top: 20px !important;
}
body.page-case-agent .cognitive-v67__chart {
  align-self: start;
  padding-top: 0 !important;
}
@media (max-width: 980px) {
  body.page-case-agent .cognitive-v67__title { max-width: 12ch; }
  body.page-case-agent .cognitive-v67__chart { margin-top: 10px; }
}

/* ========================================================================== 
   V68; Brainstorm board scale + unclipped live captions
   ========================================================================== */
body.page-case-agent .brainstorm-board-v65 {
  width: min(100%, 720px);
  justify-self: center;
  margin-inline: auto;
}
body.page-case-agent .brainstorm-board-v65__stage {
  width: 100%;
  aspect-ratio: 1136 / 1056;
  overflow: visible;
  background: transparent;
  border-radius: 0;
  box-shadow: none;
}
body.page-case-agent .brainstorm-board-v65__art {
  inset: 0 auto auto 50%;
  width: 84%;
  height: auto;
  transform: translateX(-50%);
  object-fit: contain;
}
body.page-case-agent .brainstorm-board-v65__caption {
  font-size: clamp(11px, 1.08vw, 17px);
  line-height: 1.16;
  overflow: visible;
}
body.page-case-agent .brainstorm-board-v65__caption--status {
  left: 10.23%;
  top: 36.25%;
  width: 46.2%;
}
body.page-case-agent .brainstorm-board-v65__caption--market {
  left: 66.88%;
  top: 36.25%;
  width: 23.02%;
}
body.page-case-agent .brainstorm-board-v65__caption--history {
  left: 10.23%;
  top: 78.96%;
  width: 28%;
}
body.page-case-agent .brainstorm-board-v65__caption--maintain {
  left: 40.93%;
  top: 78.96%;
  width: 50%;
}
@media (max-width: 760px) {
  body.page-case-agent .brainstorm-board-v65 {
    width: min(100%, 560px);
  }
  body.page-case-agent .brainstorm-board-v65__stage {
    border-radius: 0;
  }
  body.page-case-agent .brainstorm-board-v65__art {
    width: 82%;
  }
  body.page-case-agent .brainstorm-board-v65__caption {
    font-size: clamp(9px, 2.35vw, 12px);
    line-height: 1.12;
  }
  body.page-case-agent .brainstorm-board-v65__caption--status { left: 10%; top: 35.4%; width: 47%; }
  body.page-case-agent .brainstorm-board-v65__caption--market { left: 66.5%; top: 35.4%; width: 24%; }
  body.page-case-agent .brainstorm-board-v65__caption--history { left: 10%; top: 77.1%; width: 30%; }
  body.page-case-agent .brainstorm-board-v65__caption--maintain { left: 40.5%; top: 77.1%; width: 51%; }
}

/* ========================================================================== 
   V69; story coherence, disclosure motion, walkthrough rebuild
   ========================================================================== */

/* Admin Adnan gets a longer isolated chapter so neighbouring tones never crowd
   the persona on a single viewport. */
body.page-case-agent #user {
  min-height: 130svh !important;
  padding-block: clamp(150px, 18svh, 240px) !important;
}
body.page-case-agent #user .persona {
  min-height: 82svh;
  align-items: center !important;
}
body.page-case-agent #discovery {
  padding-top: clamp(150px, 18svh, 240px) !important;
}

/* Discovery stays clean: no decorative scribble or pseudo-decoration behind
   the research heading or findings. */
body.page-case-agent #discovery::before,
body.page-case-agent #discovery::after,
body.page-case-agent #discovery .discovery-v29__heading::before,
body.page-case-agent #discovery .discovery-v29__heading::after,
body.page-case-agent #discovery .research-summary::before,
body.page-case-agent #discovery .research-summary::after,
body.page-case-agent #discovery .scroll-scribble {
  content: none !important;
  display: none !important;
  background: none !important;
}
body.page-case-agent #discovery .research-insights--scribble,
body.page-case-agent #discovery .insight-card--scribble {
  background-image: none !important;
}

/* Decisions use one repeated editorial grammar across the case study: number,
   concise learning, one supporting sentence. */
body.page-case-agent .decision-band {
  padding: clamp(54px, 7vh, 84px) 0 !important;
}
body.page-case-agent .decision-band__inner,
body.page-case-agent .decision-inline,
body.page-case-agent .architecture-lead-note {
  display: grid !important;
  grid-template-columns: minmax(88px, 112px) minmax(0, 1fr) !important;
  gap: clamp(20px, 3vw, 40px) !important;
  align-items: start !important;
  width: min(100%, 980px) !important;
  max-width: 980px !important;
  margin-inline: auto !important;
  padding-top: 18px !important;
  border-top: 1px solid currentColor !important;
  border-bottom: 0 !important;
}
body.page-case-agent .decision-inline {
  grid-column: 1 / -1;
  margin-top: clamp(34px, 5vh, 54px) !important;
}
body.page-case-agent .architecture-lead-note {
  margin: clamp(24px, 3.5vh, 38px) 0 clamp(28px, 4vh, 44px) !important;
}
body.page-case-agent .decision-band__index,
body.page-case-agent .decision-inline > span,
body.page-case-agent .architecture-lead-note > span {
  padding-top: .35em !important;
  font: 700 13px/1.25 var(--font-body) !important;
  letter-spacing: .045em !important;
  color: var(--orange) !important;
}
body.page-case-agent .decision-band__title,
body.page-case-agent .decision-inline h3,
body.page-case-agent .architecture-lead-note h3 {
  margin: 0 !important;
  max-width: 24ch !important;
  font: 600 clamp(28px, 2.65vw, 42px)/1.02 var(--font-display) !important;
  letter-spacing: -.035em !important;
  text-wrap: balance;
}
body.page-case-agent .decision-band__copy,
body.page-case-agent .decision-inline p,
body.page-case-agent .architecture-lead-note p {
  margin: 9px 0 0 !important;
  max-width: 58ch !important;
  font: 500 clamp(15px, 1.05vw, 17px)/1.5 var(--font-body) !important;
  opacity: .74 !important;
}
body.page-case-agent .decision-inline--dark,
body.page-case-agent .decision-band--ink .decision-band__inner {
  border-color: rgba(243,240,231,.34) !important;
}
body.page-case-agent .decision-inline--dark p,
body.page-case-agent .decision-band--ink .decision-band__copy {
  color: rgba(243,240,231,.82) !important;
  opacity: 1 !important;
}

/* Shared accordion language for ZFI and the lifecycle rationale. JS animates
   the content height; the line and plus animate in sync. */
body.page-case-agent .story-accordion {
  position: relative !important;
  width: 100%;
  margin-top: 24px !important;
  border-top: 1px solid currentColor !important;
  border-bottom: 0 !important;
}
body.page-case-agent .zfi-more.story-accordion { min-height: 126px !important; }
body.page-case-agent .lifecycle-why.story-accordion {
  min-height: 150px !important;
  width: min(740px, 100%) !important;
}
body.page-case-agent .story-accordion > summary {
  position: relative !important;
  min-height: 54px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px;
  padding: 15px 2px !important;
  list-style: none !important;
  cursor: pointer;
  font: 700 16px/1.25 var(--font-body) !important;
}
body.page-case-agent .story-accordion > summary::-webkit-details-marker { display: none; }
body.page-case-agent .story-accordion > summary::before {
  content: "" !important;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 2px;
  background: currentColor;
  opacity: .42;
  transform: scaleX(.24);
  transform-origin: left center;
  transition: transform 460ms cubic-bezier(.22,.78,.18,1), opacity 280ms ease !important;
}
body.page-case-agent .story-accordion[open] > summary::before {
  transform: scaleX(1);
  opacity: .72;
}
body.page-case-agent .story-accordion > summary::after {
  content: "+" !important;
  flex: none;
  font: 400 26px/1 var(--font-body) !important;
  color: var(--orange) !important;
  transform: rotate(0deg);
  transition: transform 420ms cubic-bezier(.22,.78,.18,1) !important;
}
body.page-case-agent .story-accordion[open]:not(.is-closing) > summary::after {
  transform: rotate(45deg) !important;
}
body.page-case-agent .story-accordion__body,
body.page-case-agent .zfi-more__body.story-accordion__body,
body.page-case-agent .lifecycle-why__body.story-accordion__body {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  height: 0;
  max-height: none !important;
  overflow: hidden !important;
  padding: 0 !important;
  opacity: 0;
  transform: translateY(-5px);
  transition: height 460ms cubic-bezier(.22,.78,.18,1), opacity 280ms ease, transform 420ms cubic-bezier(.22,.78,.18,1) !important;
}
body.page-case-agent .story-accordion[open]:not(.is-closing) > .story-accordion__body {
  opacity: 1;
  transform: translateY(0);
}
body.page-case-agent .story-accordion.is-closing > .story-accordion__body {
  opacity: 0;
  transform: translateY(-5px);
}
body.page-case-agent .story-accordion__inner {
  padding: 15px 2px 22px;
}
body.page-case-agent .story-accordion__inner p {
  margin: 0 !important;
  max-width: 58ch !important;
  font: 500 15px/1.55 var(--font-body) !important;
  opacity: .78;
}
body.page-case-agent .story-accordion--dark { color: var(--paper); }
body.page-case-agent .story-accordion--light { color: var(--ink); }

/* ZFI hierarchy and note motion. */
body.page-case-agent .agent-zfi-learnings__title {
  margin: 0;
  max-width: 12ch;
  font: 600 clamp(30px, 3vw, 44px)/1 var(--font-display) !important;
  letter-spacing: -.035em;
}
body.page-case-agent .agent-zfi-instruction {
  margin-top: 12px !important;
  font-size: 14px !important;
}
body.page-case-agent .agent-zfi-card__space { min-height: 64px !important; }
body.page-case-agent .agent-zfi-card.is-enhanced .agent-zfi-card__detail {
  transform: translateY(7px);
  transition: opacity 340ms ease, transform 460ms cubic-bezier(.22,.78,.18,1), visibility 0s linear 460ms !important;
}
body.page-case-agent .agent-zfi-card[data-open="true"] .agent-zfi-card__detail {
  transform: translateY(0);
  transition-delay: 0s !important;
}
body.page-case-agent .agent-zfi-card__hint { font-size: 14px !important; }

/* Remove the separate visible lifecycle label; the heading now carries the
   context. With one less row, keep the sticky layout balanced. */
body.page-case-agent .lifecycle-scene__sticky > .shell {
  grid-template-rows: auto minmax(250px, 1fr) auto !important;
  row-gap: 18px !important;
}
body.page-case-agent .lifecycle-scene__title {
  max-width: 23ch !important;
  margin-bottom: 8px !important;
}
body.page-case-agent .lifecycle-scene__conclusion {
  max-width: 62ch !important;
}

/* Low-fi testing: both directions get equal area and identical framing. */
body.page-case-agent .validation-v29__visuals {
  position: relative !important;
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2.2vw, 28px) !important;
  align-items: stretch !important;
}
body.page-case-agent .validation-v29__visuals .iteration-card--primary,
body.page-case-agent .validation-v29__visuals .iteration-card--secondary {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: 100% !important;
  z-index: auto !important;
  transform: none !important;
  display: flex;
  flex-direction: column;
}
body.page-case-agent .validation-v29__visuals .iteration-card img {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: contain !important;
  background: #fff !important;
}
body.page-case-agent .validation-v29__visuals .iteration-card__body {
  margin-top: auto;
}

/* High-fidelity walkthrough: heading stays above the carousel, each screen
   owns the frame aspect ratio, and the indicator lives inside the frame. */
body.page-case-agent .screen-flow {
  height: var(--flow-height, 610vh) !important;
  min-height: 560vh !important;
}
body.page-case-agent .screen-flow__sticky {
  position: sticky !important;
  top: 0 !important;
  height: 100svh !important;
  display: grid !important;
  grid-template-columns: minmax(260px, .78fr) minmax(0, 1.72fr) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  column-gap: clamp(42px, 5vw, 76px) !important;
  row-gap: clamp(20px, 2.5vh, 30px) !important;
  align-items: center !important;
  overflow: hidden !important;
  padding: calc(var(--header-h) + 22px) var(--gutter) 28px !important;
}
body.page-case-agent .screen-flow__header {
  grid-column: 1 / -1;
  grid-row: 1;
  align-self: start;
  position: relative;
  z-index: 4;
}
body.page-case-agent .screen-flow__title {
  margin: 0;
  color: var(--paper);
  font: 500 clamp(48px, 5.8vw, 88px)/.88 var(--font-display) !important;
  letter-spacing: -.052em !important;
}
body.page-case-agent .screen-flow__headline {
  margin: 12px 0 0 !important;
  max-width: 31ch !important;
  color: rgba(243,240,231,.84);
  font: 500 clamp(23px, 2.25vw, 34px)/1.08 var(--font-display) !important;
  letter-spacing: -.025em !important;
}
body.page-case-agent .screen-flow__copy {
  grid-column: 1;
  grid-row: 2;
  position: relative !important;
  width: 100%;
  height: clamp(220px, 34vh, 340px) !important;
  min-height: 0 !important;
  align-self: center;
}
body.page-case-agent .flow-step {
  position: absolute !important;
  inset: 50% 0 auto 0 !important;
  bottom: auto !important;
  max-width: 390px !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(243,240,231,.24) !important;
  opacity: 0;
  transform: translateY(calc(-50% + 16px)) !important;
  transition: opacity 320ms ease, transform 520ms cubic-bezier(.22,.78,.18,1) !important;
  pointer-events: none;
}
body.page-case-agent .flow-step.is-active {
  opacity: 1 !important;
  transform: translateY(-50%) !important;
}
body.page-case-agent .flow-step strong {
  margin-bottom: 12px !important;
  font: 700 14px/1.25 var(--font-body) !important;
  letter-spacing: .04em !important;
  color: var(--orange-soft) !important;
}
body.page-case-agent .flow-step h3 {
  font: 500 clamp(27px, 2.8vw, 42px)/1 var(--font-display) !important;
  letter-spacing: -.035em !important;
}
body.page-case-agent .flow-step p {
  margin-top: 12px !important;
  max-width: 38ch;
  font: 500 16px/1.5 var(--font-body) !important;
  color: rgba(243,240,231,.72) !important;
  opacity: 1 !important;
}
body.page-case-agent .screen-flow__frame {
  --frame-ratio: var(--flow-aspect, 1.54639);
  grid-column: 2;
  grid-row: 2;
  position: relative !important;
  justify-self: center;
  align-self: center;
  width: min(100%, 92svh) !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: var(--frame-ratio) !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: transparent !important;
  box-shadow: 0 28px 84px rgba(0,0,0,.34) !important;
}
body.page-case-agent .flow-screen {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
  filter: none !important;
}
body.page-case-agent .screen-flow__rail {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  top: auto !important;
  bottom: 14px !important;
  z-index: 5;
  transform: translateX(-50%) !important;
  width: max-content;
  max-width: calc(100% - 24px);
  display: flex !important;
  flex-direction: row !important;
  align-items: center;
  justify-content: center;
  gap: 6px !important;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(8,7,12,.74);
  backdrop-filter: blur(8px);
  pointer-events: none;
}
body.page-case-agent .screen-flow__rail span,
body.page-case-agent .screen-flow__rail span.is-active {
  width: 28px !important;
  height: 3px !important;
  flex: 0 0 auto;
  border-radius: 999px !important;
  background: rgba(243,240,231,.34) !important;
  transition: width 300ms cubic-bezier(.22,.78,.18,1), background-color 260ms ease !important;
}
body.page-case-agent .screen-flow__rail span.is-active {
  width: 42px !important;
  background: var(--orange) !important;
}

/* Release-priority labels are supporting copy, but never micro-text. */
body.page-case-agent .effort-impact-method :is(span,b,small),
body.page-case-agent .balance__features :is(span,b),
body.page-case-agent .balance .label {
  font-size: 14px !important;
  line-height: 1.35 !important;
}
body.page-case-agent .effort-impact-method b { font-size: 16px !important; }
body.page-case-agent .effort-impact-method small { opacity: .72; }

@media (max-width: 980px) {
  body.page-case-agent #user {
    min-height: 112svh !important;
    padding-block: clamp(110px, 14svh, 170px) !important;
  }
  body.page-case-agent #discovery { padding-top: clamp(110px, 14svh, 170px) !important; }
  body.page-case-agent .decision-band__inner,
  body.page-case-agent .decision-inline,
  body.page-case-agent .architecture-lead-note {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.page-case-agent .decision-band__index,
  body.page-case-agent .decision-inline > span,
  body.page-case-agent .architecture-lead-note > span { padding-top: 0 !important; }
}

@media (max-width: 900px), (prefers-reduced-motion: reduce) {
  body.page-case-agent .screen-flow {
    height: auto !important;
    min-height: 0 !important;
    padding: clamp(86px, 12vw, 120px) var(--gutter) !important;
  }
  body.page-case-agent .screen-flow__sticky {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    display: block !important;
    overflow: visible !important;
    padding: 0 !important;
  }
  body.page-case-agent .screen-flow__header { margin-bottom: 46px; }
  body.page-case-agent .screen-flow__title { font-size: clamp(48px, 13vw, 76px) !important; }
  body.page-case-agent .screen-flow__headline { max-width: 22ch !important; }
  body.page-case-agent .screen-flow__copy {
    height: auto !important;
    display: grid !important;
    gap: 28px;
    margin-bottom: 44px;
  }
  body.page-case-agent .flow-step {
    position: relative !important;
    inset: auto !important;
    opacity: 1 !important;
    transform: none !important;
    max-width: none !important;
  }
  body.page-case-agent .screen-flow__frame {
    width: 100% !important;
    aspect-ratio: auto !important;
    display: grid !important;
    gap: 18px;
    overflow: visible !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  body.page-case-agent .flow-screen {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    opacity: 1 !important;
    transform: none !important;
    border-radius: 10px;
  }
  body.page-case-agent .screen-flow__rail { display: none !important; }
}

@media (max-width: 760px) {
  body.page-case-agent .validation-v29__visuals { grid-template-columns: 1fr !important; }
  body.page-case-agent .agent-zfi-learnings__title { max-width: none; }
}

/* V69 readability floor for the release-priority legend. */
body.page-case-agent .effort-impact-method :is(span,small),
body.page-case-agent .balance__features :is(span,b),
body.page-case-agent .balance .label {
  font-size: 15px !important;
}
body.page-case-agent .effort-impact-method b { font-size: 17px !important; }

/* ========================================================================== 
   V70; hierarchy, cards, larger validation/final screens, roadmap + epilogue
   ========================================================================== */

/* Decision 01 stays part of Discovery instead of becoming another full-page
   colour block. It uses the same number/title/copy grammar as later decisions. */
body.page-case-agent .decision-card-wide-v70 {
  width: min(100%, 1120px);
  margin: clamp(64px, 9vh, 110px) auto 0;
  padding: clamp(28px, 3.2vw, 46px);
  display: grid;
  grid-template-columns: minmax(90px, 128px) minmax(0, 1fr);
  gap: clamp(24px, 3vw, 46px);
  align-items: start;
  background: var(--paper);
  border: 1px solid rgba(41,46,38,.16);
  border-radius: 18px;
  box-shadow: 0 18px 48px rgba(41,46,38,.07);
}
body.page-case-agent .decision-card-wide-v70__index {
  padding-top: .42em;
  font: 700 13px/1.25 var(--font-body);
  letter-spacing: .045em;
  color: var(--orange);
}
body.page-case-agent .decision-card-wide-v70__title {
  max-width: 24ch;
  font: 600 clamp(32px, 3vw, 48px)/1 var(--font-display);
  letter-spacing: -.04em;
}
body.page-case-agent .decision-card-wide-v70__copy {
  margin-top: 10px;
  max-width: 58ch;
  font: 500 clamp(16px, 1.1vw, 18px)/1.5 var(--font-body);
  opacity: .72;
}

/* Brainstorming + Layout Design: the chapter name is H1; the argument is H3. */
body.page-case-agent .design-phase__title-v70 {
  margin: 0;
  max-width: 10ch;
  font: 500 clamp(56px, 6.6vw, 102px)/.88 var(--font-display);
  letter-spacing: -.055em;
  text-wrap: balance;
}
body.page-case-agent .design-phase__statement-v70 {
  margin: clamp(26px, 3.2vw, 46px) 0 0;
  max-width: 18ch;
  font: 500 clamp(26px, 2.55vw, 40px)/1.04 var(--font-display);
  letter-spacing: -.032em;
  text-wrap: balance;
}
body.page-case-agent .design-phase__grid > div > .copy {
  margin-top: 20px !important;
}
body.page-case-agent .brainstorm-image-v70 {
  width: min(100%, 720px);
  justify-self: center;
  margin: 0 auto;
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.page-case-agent .brainstorm-image-v70 img {
  width: 100%;
  height: auto;
  object-fit: contain;
  background: transparent;
}

/* The two tested directions need enough pixels to actually be evaluated. */
body.page-case-agent .validation-v29__grid {
  grid-template-columns: 1fr !important;
  align-items: start !important;
}
body.page-case-agent .validation-v29__copy {
  width: min(100%, 1060px);
}
body.page-case-agent .validation-v29__copy .h2 { max-width: 13ch !important; }
body.page-case-agent .validation-v29__visuals {
  width: min(100%, 1220px) !important;
  margin: clamp(44px, 6vh, 76px) auto 0 !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(22px, 3vw, 36px) !important;
}
body.page-case-agent .validation-v29__visuals .iteration-card {
  min-width: 0;
  border-radius: 18px !important;
  overflow: hidden;
}
body.page-case-agent .validation-v29__visuals .iteration-card img {
  aspect-ratio: 16 / 9 !important;
  object-fit: contain !important;
  padding: clamp(8px, .9vw, 14px);
}
body.page-case-agent .validation-v29__visuals .iteration-card__body {
  padding: clamp(18px, 2vw, 26px) !important;
}
body.page-case-agent .validation-v29__visuals .iteration-card__body .h4 {
  font-size: clamp(25px, 2.1vw, 34px) !important;
}
body.page-case-agent .validation-v29__visuals .iteration-card__body :is(.label,.copy-sm) {
  font-size: 15px !important;
  line-height: 1.45 !important;
}

/* Give the high-fidelity frames ~13% more presence without stealing the
   narrative column or letting the sticky composition escape the viewport. */
@media (min-width: 901px) {
  body.page-case-agent .screen-flow__sticky {
    grid-template-columns: minmax(245px, .66fr) minmax(0, 1.96fr) !important;
    column-gap: clamp(32px, 4vw, 60px) !important;
  }
  body.page-case-agent .screen-flow__frame {
    width: min(100%, 104svh, 1040px) !important;
  }
}

/* Roadmap is a proper chapter, with the same breathing room as Admin Adnan. */
body.page-case-agent .roadmap-section-v70 {
  min-height: 130svh;
  display: flex;
  align-items: center;
  padding-block: clamp(150px, 18svh, 240px) !important;
}
body.page-case-agent .roadmap-section-v70 > .shell { width: min(100%, var(--content)); }
body.page-case-agent .roadmap-section-v70__title {
  margin: 0;
  max-width: 10ch;
  font: 500 clamp(58px, 7vw, 108px)/.88 var(--font-display);
  letter-spacing: -.058em;
  text-wrap: balance;
}
body.page-case-agent .roadmap-section-v70__statement {
  margin-top: clamp(28px, 3.4vw, 48px);
  max-width: 22ch;
  font: 500 clamp(27px, 2.6vw, 42px)/1.04 var(--font-display);
  letter-spacing: -.034em;
  text-wrap: balance;
}
body.page-case-agent .roadmap-section-v70 .roadmap {
  width: min(100%, 1120px);
  margin-top: clamp(70px, 9vh, 110px) !important;
}

/* Platform migration becomes a dark, screen-led chapter like Final Experience.
   The product screen keeps its full 16:9 geometry instead of being cropped. */
body.page-case-agent .architecture-shift-v70 {
  min-height: 100svh;
  display: flex;
  align-items: center;
  background: #08070c !important;
  color: var(--paper) !important;
  padding-block: clamp(120px, 15svh, 190px) !important;
}
body.page-case-agent .architecture-shift-v70__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(48px, 6.5vw, 86px);
  align-items: start;
}
body.page-case-agent .architecture-shift-v70__copy {
  display: grid;
  grid-template-columns: minmax(320px, .95fr) minmax(360px, 1.05fr);
  gap: clamp(48px, 7vw, 110px);
  align-items: end;
}
body.page-case-agent .architecture-shift-v70__title {
  max-width: 13ch;
  font: 500 clamp(48px, 5.1vw, 78px)/.9 var(--font-display);
  letter-spacing: -.052em;
  text-wrap: balance;
}
body.page-case-agent .architecture-shift-v70__body {
  margin: 0 0 .15em !important;
  max-width: 46ch;
  color: rgba(243,240,231,.72) !important;
  opacity: 1 !important;
}
body.page-case-agent .architecture-shift-v70__media {
  width: min(100%, 1240px);
  justify-self: center;
  aspect-ratio: 16 / 9;
  display: grid;
  place-items: center;
  overflow: visible;
}
body.page-case-agent .architecture-shift-v70__media img {
  width: 100%;
  height: auto;
  max-height: min(74svh, 820px);
  object-fit: contain;
  object-position: center;
  border-radius: 12px;
  filter: none !important;
  box-shadow: 0 34px 90px rgba(0,0,0,.38);
}

@media (max-width: 980px) {
  body.page-case-agent .decision-card-wide-v70 { grid-template-columns: 1fr; gap: 12px; }
  body.page-case-agent .validation-v29__visuals { grid-template-columns: 1fr !important; }
  body.page-case-agent .roadmap-section-v70 {
    min-height: 112svh;
    padding-block: clamp(110px, 14svh, 170px) !important;
  }
  body.page-case-agent .architecture-shift-v70__copy { grid-template-columns: 1fr; gap: 24px; }
  body.page-case-agent .architecture-shift-v70__title { max-width: 13ch; }
  body.page-case-agent .architecture-shift-v70__body { margin-top: 0 !important; }
  body.page-case-agent .architecture-shift-v70__media img { max-height: none; }
}

@media (max-width: 760px) {
  body.page-case-agent .design-phase__title-v70 { font-size: clamp(52px, 15vw, 78px); }
  body.page-case-agent .design-phase__statement-v70 { font-size: clamp(25px, 7vw, 34px); }
  body.page-case-agent .brainstorm-image-v70 { width: min(100%, 560px); }
  body.page-case-agent .roadmap-section-v70__title { font-size: clamp(54px, 15vw, 80px); }
  body.page-case-agent .architecture-shift-v70__title { font-size: clamp(46px, 12vw, 70px); }
}

/* ========================================================================== 
   V71; one card language for every product decision
   ========================================================================== */
body.page-case-agent .decision-card-wide-v71 {
  width: min(100%, 1120px) !important;
  margin: clamp(54px, 7vh, 92px) auto 0 !important;
  padding: clamp(28px, 3.2vw, 46px) !important;
  display: grid !important;
  grid-template-columns: minmax(90px, 128px) minmax(0, 1fr) !important;
  gap: clamp(24px, 3vw, 46px) !important;
  align-items: start !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
  border: 1px solid rgba(41,46,38,.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 48px rgba(41,46,38,.07) !important;
}
body.page-case-agent .decision-card-wide-v71 .decision-card-wide-v70__index {
  padding-top: .42em !important;
  font: 700 13px/1.25 var(--font-body) !important;
  letter-spacing: .045em !important;
  color: var(--orange) !important;
}
body.page-case-agent .decision-card-wide-v71 .decision-card-wide-v70__title {
  margin: 0 !important;
  max-width: 24ch !important;
  font: 600 clamp(32px, 3vw, 48px)/1 var(--font-display) !important;
  letter-spacing: -.04em !important;
  text-wrap: balance;
}
body.page-case-agent .decision-card-wide-v71 .decision-card-wide-v70__copy {
  margin: 10px 0 0 !important;
  max-width: 58ch !important;
  font: 500 clamp(16px, 1.1vw, 18px)/1.5 var(--font-body) !important;
  color: currentColor !important;
  opacity: .72 !important;
}
body.page-case-agent .decision-card-wide-v71--dark {
  background: #2d2e31 !important;
  color: var(--paper) !important;
  border-color: rgba(243,240,231,.18) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,.18) !important;
}
body.page-case-agent .decision-card-wide-v71--dark .decision-card-wide-v70__copy {
  color: rgba(243,240,231,.84) !important;
  opacity: 1 !important;
}
body.page-case-agent .architecture-decision-v71 {
  margin: clamp(28px, 4vh, 48px) 0 clamp(34px, 5vh, 58px) !important;
}
body.page-case-agent .decision-card-section-v71 {
  padding-block: clamp(64px, 9vh, 108px) !important;
}
body.page-case-agent .decision-card-section-v71 .decision-card-wide-v71 {
  margin-top: 0 !important;
}

/* Retire the earlier line-only decision treatment now that all decisions use cards. */
body.page-case-agent .decision-inline,
body.page-case-agent .decision-band__inner,
body.page-case-agent .architecture-lead-note {
  border-top: 0 !important;
}

@media (max-width: 700px) {
  body.page-case-agent .decision-card-wide-v71 {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 24px !important;
  }
}

/* V72 · Agent Management cover: product-led, large-screen MacBook composition. */
.agent-hero-v72 {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  padding: 82px clamp(24px,5vw,78px) 34px;
  background: var(--paper);
  color: var(--ink);
  isolation: isolate;
}
.agent-hero-v72__stage {
  position: relative;
  width: min(100%,1600px);
  min-height: calc(100svh - 116px);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(340px,.72fr) minmax(620px,1.45fr);
  align-items: center;
  gap: clamp(30px,4vw,70px);
}
.agent-hero-v72__copy { position: relative; z-index: 4; align-self: center; padding-block: clamp(30px,7vh,86px); }
.agent-hero-v72__kicker {
  margin: 0 0 24px;
  font: 600 13px/1.25 var(--font-body);
  letter-spacing: .015em;
  color: var(--ink-soft);
}
.agent-hero-v72__title {
  margin: 0;
  max-width: 7ch;
  font-family: var(--font-display);
  font-size: clamp(76px,8.6vw,148px);
  font-weight: 600;
  line-height: .78;
  letter-spacing: -.065em;
}
.agent-hero-v72__title > span { display:block; }
.agent-hero-v72__title > span + span { margin-top: .055em; }
.agent-hero-v72__subtitle {
  max-width: 28ch;
  margin: clamp(28px,4.2vh,44px) 0 0;
  font: 500 clamp(19px,1.65vw,27px)/1.35 var(--font-body);
  letter-spacing: -.025em;
}
.agent-hero-v72__facts {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
  max-width: 620px;
  margin: clamp(26px,3.7vh,40px) 0 0;
  padding-top: 18px;
  border-top: 1px solid rgba(41,46,38,.24);
}
.agent-hero-v72__facts dt { font: 500 12px/1.3 var(--font-body); color: var(--ink-soft); }
.agent-hero-v72__facts dd { margin: 6px 0 0; font: 500 clamp(14px,1vw,17px)/1.35 var(--font-body); }
.agent-hero-v72__visual {
  position: relative;
  z-index: 3;
  justify-self: end;
  width: min(69vw,1030px);
  min-width: 0;
  transform-style: preserve-3d;
  perspective: 1800px;
}
.agent-hero-v72__accent {
  position: absolute;
  z-index: -1;
  right: -8%;
  bottom: 7%;
  width: 48%;
  height: 56%;
  background: var(--orange);
  border-radius: 2px;
  transform: rotate(2.5deg);
  opacity: .96;
}
.agent-hero-v72__float {
  position: relative;
  transform-origin: 52% 54%;
  animation: agentHeroFloatV72 7.5s cubic-bezier(.45,0,.2,1) infinite alternate;
}
.agent-macbook-v72 {
  --hero-rx: 1.2deg;
  --hero-ry: -1.8deg;
  position: relative;
  margin: 0;
  transform: rotateX(var(--hero-rx)) rotateY(var(--hero-ry)) rotateZ(-1deg);
  transform-style: preserve-3d;
  transition: transform 780ms cubic-bezier(.16,1,.3,1);
  filter: drop-shadow(0 32px 42px rgba(41,46,38,.2));
}
.agent-macbook-v72__lid {
  position: relative;
  padding: clamp(8px,.75vw,12px);
  border-radius: clamp(14px,1.35vw,22px) clamp(14px,1.35vw,22px) clamp(9px,.75vw,13px) clamp(9px,.75vw,13px);
  background: linear-gradient(145deg,#3a3b3d 0%,#0b0c0e 44%,#27282a 100%);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.11), inset 0 -2px 5px rgba(0,0,0,.75);
}
.agent-macbook-v72__camera {
  position: absolute;
  z-index: 3;
  top: 4px;
  left: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #151618;
  box-shadow: 0 0 0 1px rgba(255,255,255,.06);
  transform: translateX(-50%);
}
.agent-macbook-v72__screen {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1600/929;
  border-radius: clamp(6px,.55vw,9px);
  background: #f8f9fb;
}
.agent-macbook-v72__screen img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  transform: scale(1.012) translate3d(0,0,0);
  animation: agentHeroScreenV72 10s ease-in-out infinite alternate;
}
.agent-macbook-v72__sheen {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(112deg,transparent 18%,rgba(255,255,255,.08) 40%,transparent 58%);
  transform: translateX(-35%);
  animation: agentHeroSheenV72 8.5s ease-in-out infinite;
}
.agent-macbook-v72__base {
  position: relative;
  z-index: 2;
  width: 108%;
  height: clamp(15px,1.65vw,26px);
  margin-left: -4%;
  margin-top: -1px;
  border-radius: 2px 2px 18px 18px;
  background: linear-gradient(180deg,#d8d8d5 0%,#aaa9a5 48%,#deddd8 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 5px 8px rgba(41,46,38,.14);
  transform: perspective(500px) rotateX(62deg);
  transform-origin: 50% 0;
}
.agent-macbook-v72__base span {
  position:absolute;
  top:0;
  left:50%;
  width:18%;
  height:44%;
  border-radius:0 0 9px 9px;
  background:rgba(90,90,88,.32);
  transform:translateX(-50%);
}
.agent-hero-v72__caption {
  width: min(390px,43%);
  margin: 22px 3% 0 auto;
  font: 500 clamp(14px,1.05vw,17px)/1.45 var(--font-body);
  color: var(--ink-soft);
  text-align: right;
}
.agent-hero-v72__scroll {
  position: absolute;
  z-index: 5;
  right: 2px;
  bottom: 8px;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--ink);
  font: 500 12px/1 var(--font-body);
}
.agent-hero-v72__scroll > span:last-child {
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border:1px solid rgba(41,46,38,.36);
  border-radius:50%;
  transition:transform .28s ease,background .28s ease,color .28s ease;
}
.agent-hero-v72__scroll:hover > span:last-child { transform:translateY(5px); background:var(--orange); color:var(--paper); }
@keyframes agentHeroFloatV72 { from { transform:translate3d(0,7px,0); } to { transform:translate3d(0,-9px,0); } }
@keyframes agentHeroScreenV72 { from { transform:scale(1.012) translate3d(-.25%,0,0); } to { transform:scale(1.022) translate3d(.35%,-.18%,0); } }
@keyframes agentHeroSheenV72 { 0%,28% { transform:translateX(-55%); opacity:0; } 44% { opacity:.52; } 67%,100% { transform:translateX(68%); opacity:0; } }

@media (max-width:1180px) {
  .agent-hero-v72__stage { grid-template-columns:minmax(300px,.78fr) minmax(500px,1.28fr); gap:24px; }
  .agent-hero-v72__visual { width:min(66vw,850px); }
  .agent-hero-v72__title { font-size:clamp(68px,8.2vw,112px); }
}
@media (max-width:900px) {
  .agent-hero-v72 { padding:76px 20px 44px; overflow:hidden; }
  .agent-hero-v72__stage { min-height:auto; display:block; }
  .agent-hero-v72__copy { padding:40px 4px 28px; }
  .agent-hero-v72__title { max-width:none; font-size:clamp(64px,14vw,104px); line-height:.82; }
  .agent-hero-v72__subtitle { max-width:34ch; }
  .agent-hero-v72__facts { max-width:none; }
  .agent-hero-v72__visual { width:106%; margin:12px -3% 0; }
  .agent-hero-v72__accent { right:-3%; bottom:5%; width:42%; height:52%; }
  .agent-hero-v72__caption { width:min(520px,82%); margin:16px 3% 0 auto; }
  .agent-hero-v72__scroll { display:none; }
}
@media (max-width:600px) {
  .agent-hero-v72 { padding-inline:16px; }
  .agent-hero-v72__copy { padding-top:28px; }
  .agent-hero-v72__kicker { margin-bottom:18px; }
  .agent-hero-v72__title { font-size:clamp(58px,18vw,82px); }
  .agent-hero-v72__facts { grid-template-columns:1fr 1fr; gap:16px; }
  .agent-hero-v72__facts > div:last-child { grid-column:1 / -1; }
  .agent-hero-v72__visual { width:112%; margin-left:-6%; margin-right:-6%; }
  .agent-hero-v72__caption { width:88%; font-size:14px; }
}
@media (hover:none), (pointer:coarse), (prefers-reduced-motion:reduce) {
  .agent-hero-v72__float, .agent-macbook-v72__screen img, .agent-macbook-v72__sheen { animation:none !important; }
  .agent-macbook-v72 { --hero-rx:1deg; --hero-ry:-1deg; transition:none; }
}

/* V72 polish · keep the product screen dominant without letting it cover the story copy. */
@media (min-width:901px) {
  .agent-hero-v72__stage { grid-template-columns:minmax(390px,.84fr) minmax(560px,1.16fr); gap:clamp(28px,3vw,52px); }
  .agent-hero-v72__title { font-size:clamp(76px,7.1vw,116px); max-width:7.1ch; }
  .agent-hero-v72__visual { width:min(61vw,920px); }
  .agent-hero-v72__facts { max-width:560px; }
}
@media (min-width:901px) {
  .agent-hero-v72__visual { width:min(58vw,860px); margin-right:-1.5vw; }
}
@media (max-width:600px) {
  .agent-hero-v72__title { font-size:clamp(50px,15.5vw,72px); letter-spacing:-.07em; }
}

/* ========================================================================== 
   V73; decisions, influence hierarchy, cleaner hero + At a glance
   ========================================================================== */

/* Hero is scale-led; the product screen now belongs to At a glance. */
body.page-case-agent .agent-hero-v72__stage {
  grid-template-columns: minmax(420px,.92fr) minmax(420px,.78fr) !important;
  gap: clamp(54px,7vw,130px) !important;
}
body.page-case-agent .agent-hero-v73__signal {
  position: relative;
  min-height: clamp(470px,62vh,700px);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  padding: clamp(34px,4.2vw,62px);
  background: var(--orange);
  color: var(--ink);
  border-radius: 2px;
  isolation: isolate;
}
body.page-case-agent .agent-hero-v73__signal-field {
  position: absolute;
  inset: -18%;
  z-index: -1;
  opacity: .24;
  background-image: radial-gradient(circle at center, rgba(41,46,38,.75) 0 2px, transparent 2.4px);
  background-size: 46px 46px;
  transform: rotate(-7deg) scale(1.08);
  animation: agentSignalDriftV73 18s linear infinite alternate;
}
body.page-case-agent .agent-hero-v73__signal-copy { width: 100%; }
body.page-case-agent .agent-hero-v73__signal-label {
  display: block;
  margin-bottom: clamp(70px,11vh,130px);
  font: 650 13px/1.3 var(--font-body);
}
body.page-case-agent .agent-hero-v73__signal-copy strong {
  display: block;
  font: 600 clamp(112px,13vw,210px)/.7 var(--font-display);
  letter-spacing: -.075em;
}
body.page-case-agent .agent-hero-v73__signal-copy p {
  max-width: 19ch;
  margin: 24px 0 0;
  font: 600 clamp(22px,2vw,31px)/1.05 var(--font-display);
  letter-spacing: -.03em;
}
body.page-case-agent .agent-hero-v73__signal-flow {
  margin-top: clamp(42px,6vh,72px);
  padding-top: 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  border-top: 1px solid rgba(41,46,38,.5);
  font: 600 13px/1 var(--font-body);
}
body.page-case-agent .agent-hero-v73__signal-flow i { font-style: normal; opacity: .5; }
@keyframes agentSignalDriftV73 { from { transform: rotate(-7deg) translate3d(-18px,-10px,0) scale(1.08); } to { transform: rotate(-7deg) translate3d(24px,20px,0) scale(1.08); } }

/* At a glance: evidence first, stickies, then the product screen as a visual buffer
   before the ownership sticky-note chapter. */
body.page-case-agent #pitch {
  padding-bottom: clamp(150px,20vh,250px) !important;
}
body.page-case-agent #pitch .pitch-v24__top {
  display: block !important;
}
body.page-case-agent #pitch .pitch-v24__copy {
  width: min(100%, 840px);
}
body.page-case-agent #pitch .pitch-v24__metrics {
  margin-top: clamp(70px,9vh,110px) !important;
}
body.page-case-agent .pitch-device-v73 {
  position: relative;
  width: min(100%, 1240px);
  margin: clamp(120px,15vh,180px) auto 0;
  padding-inline: clamp(0px,2vw,28px);
  perspective: 1800px;
}
body.page-case-agent .pitch-device-v73__halo {
  position: absolute;
  z-index: -1;
  left: 5%;
  right: 5%;
  bottom: 8%;
  height: 42%;
  background: var(--orange);
  transform: rotate(-1.1deg);
  opacity: .94;
}
body.page-case-agent .pitch-device-v73__macbook { margin: 0; }
body.page-case-agent .pitch-device-v73 figcaption {
  width: min(520px,70%);
  margin: 24px 4% 0 auto;
  text-align: right;
  color: var(--ink-soft);
  font: 500 15px/1.45 var(--font-body);
}
body.page-case-agent .agent-role-section {
  padding-top: clamp(120px,16vh,200px) !important;
}

/* Decision 01 is the model: every decision now uses this exact card grammar. */
body.page-case-agent .decision-card-wide-v71 {
  width: min(100%,1120px) !important;
  min-width: 0 !important;
  margin: clamp(54px,7vh,92px) auto 0 !important;
  padding: clamp(30px,3.4vw,48px) !important;
  grid-template-columns: minmax(150px,180px) minmax(0,1fr) !important;
  gap: clamp(28px,3.8vw,58px) !important;
  background: var(--paper) !important;
  color: var(--ink) !important;
  border: 1px solid rgba(41,46,38,.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 48px rgba(41,46,38,.08) !important;
}
body.page-case-agent .decision-card-wide-v70__index {
  display: flex !important;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding-top: 0 !important;
  color: var(--orange) !important;
}
body.page-case-agent .decision-card-wide-v73__icon {
  display: block;
  width: 42px;
  height: 42px;
  flex: none;
}
body.page-case-agent .decision-card-wide-v70__index > span {
  font: 700 13px/1.25 var(--font-body);
  letter-spacing: .045em;
}
body.page-case-agent .decision-card-wide-v71 .decision-card-wide-v70__title {
  max-width: 30ch !important;
  font-size: clamp(30px,2.75vw,44px) !important;
  line-height: 1.02 !important;
}
body.page-case-agent .decision-card-wide-v71 .decision-card-wide-v70__copy {
  max-width: 68ch !important;
  font-size: clamp(16px,1.05vw,18px) !important;
}
body.page-case-agent .decision-card-breakout-v73 {
  grid-column: 1 / -1 !important;
  justify-self: center;
}
body.page-case-agent .agent-zfi-learnings > .decision-card-breakout-v73 {
  grid-column: 1 / -1 !important;
  width: min(100%,1120px) !important;
}
body.page-case-agent .decision-card-v73__architecture-wrap {
  position: relative;
  z-index: 4;
  padding-top: clamp(90px,11vh,140px);
  padding-bottom: clamp(54px,7vh,84px);
}
body.page-case-agent .decision-card-v73__architecture-wrap .decision-card-wide-v71 { margin-top: 0 !important; }
body.page-case-agent .decision-card-section-v73--black {
  background: #08070c !important;
  color: var(--paper) !important;
  padding-block: clamp(95px,12vh,150px) !important;
}
body.page-case-agent .decision-card-section-v73--black .decision-card-wide-v71 {
  margin-top: 0 !important;
}

/* Accordion rules use two equal full-length rules; expansion is expressed by
   colour/weight + the content motion rather than an oddly short lower stroke. */
body.page-case-agent .story-accordion {
  border-top: 1px solid currentColor !important;
  border-bottom: 1px solid currentColor !important;
}
body.page-case-agent .story-accordion > summary::before {
  transform: scaleX(1) !important;
  opacity: .22 !important;
  background: currentColor !important;
}
body.page-case-agent .story-accordion[open] > summary::before {
  transform: scaleX(1) !important;
  opacity: .72 !important;
  background: var(--orange) !important;
}

/* Design influence becomes a proper chapter. The roadmap is a subsection,
   deliberately outside the sticky-note set. */
body.page-case-agent .design-influence-v73 {
  margin-top: clamp(150px,20vh,250px);
  padding-top: clamp(70px,9vh,110px);
  border-top: 1px solid rgba(41,46,38,.22);
}
body.page-case-agent .design-influence-v73__head {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(280px,.55fr);
  column-gap: clamp(50px,8vw,130px);
  align-items: end;
}
body.page-case-agent .design-influence-v73__head .eyebrow { grid-column: 1 / -1; margin-bottom: 20px; }
body.page-case-agent .design-influence-v73__head h2 {
  margin: 0;
  max-width: 10ch;
  font: 500 clamp(64px,7.2vw,116px)/.86 var(--font-display);
  letter-spacing: -.058em;
  text-wrap: balance;
}
body.page-case-agent .design-influence-v73__head > p:last-child {
  margin: 0 0 .35em;
  max-width: 34ch;
  font: 500 clamp(18px,1.45vw,23px)/1.4 var(--font-body);
}
body.page-case-agent .design-influence-v73__notes {
  margin-top: clamp(70px,9vh,110px);
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: clamp(22px,2.5vw,34px);
  align-items: start;
}
body.page-case-agent .design-influence-note {
  position: relative;
  min-height: clamp(300px,28vw,380px);
  padding: clamp(26px,2.5vw,34px);
  display: flex;
  flex-direction: column;
  color: var(--ink);
  background: var(--paper);
  box-shadow: 2px 14px 34px rgba(41,46,38,.12);
  border-radius: 4px 8px 5px 3px;
}
body.page-case-agent .design-influence-note::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  width: 68px;
  height: 20px;
  transform: translateX(-50%) rotate(-2deg);
  background: rgba(243,240,231,.62);
}
body.page-case-agent .design-influence-note--orange { background:#e6d8b8; transform:rotate(-1.2deg); }
body.page-case-agent .design-influence-note--yellow { background:#e6d8b8; transform:translateY(20px) rotate(.8deg); }
body.page-case-agent .design-influence-note--paper { background:#f3f0e7; transform:translateY(4px) rotate(-.45deg); }
body.page-case-agent .design-influence-note--ink { background:var(--ink); color:var(--paper); transform:translateY(24px) rotate(1deg); }
body.page-case-agent .design-influence-note > span { font:700 12px/1 var(--font-body); opacity:.62; }
body.page-case-agent .design-influence-note h3 {
  margin-top: auto;
  font: 600 clamp(28px,2.5vw,38px)/.98 var(--font-display);
  letter-spacing: -.035em;
}
body.page-case-agent .design-influence-note p {
  margin: 16px 0 0;
  font: 500 15px/1.48 var(--font-body);
  opacity: .76;
}
body.page-case-agent .design-influence-v73__caveat {
  margin: clamp(70px,9vh,110px) 0 0 auto;
  width: min(100%,660px);
  font: 500 15px/1.55 var(--font-body);
  color: var(--ink-soft);
}
body.page-case-agent .roadmap-subsection-v73 {
  margin-top: clamp(150px,18vh,220px);
  padding-top: clamp(54px,7vh,86px);
  border-top: 1px solid rgba(41,46,38,.22);
}
body.page-case-agent .roadmap-subsection-v73__title {
  margin: 0;
  max-width: 12ch;
  font: 500 clamp(48px,5.4vw,82px)/.9 var(--font-display);
  letter-spacing: -.05em;
}
body.page-case-agent .roadmap-subsection-v73__statement {
  margin-top: 26px;
  max-width: 25ch;
  font: 500 clamp(24px,2.3vw,36px)/1.08 var(--font-display);
  letter-spacing: -.03em;
}
body.page-case-agent .roadmap-subsection-v73 .roadmap {
  width: 100%;
  margin-top: clamp(62px,8vh,100px) !important;
}

/* Learnings: no instruction copy and no icon/text swap. The icon stays; detail
   opens underneath the title. */
body.page-case-agent .agent-learning-heading {
  display: block !important;
}
body.page-case-agent .agent-learning-heading h2 { max-width: 18ch; }
body.page-case-agent .agent-learning-card__space {
  display: block !important;
  min-height: 94px !important;
}
body.page-case-agent .agent-learning-card__icon {
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
}
body.page-case-agent .agent-learning-card__detail {
  position: static !important;
  display: block !important;
  max-height: 0;
  margin-top: 0;
  overflow: hidden;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(-4px);
  font: 500 14px/1.5 var(--font-body) !important;
  transition: max-height 420ms cubic-bezier(.22,.78,.18,1), margin 320ms ease, opacity 260ms ease, transform 360ms ease, visibility 0s linear 420ms !important;
}
body.page-case-agent .agent-learning-card[data-open="true"] .agent-learning-card__detail {
  max-height: 120px;
  margin-top: 18px;
  opacity: .82 !important;
  visibility: visible !important;
  transform: none;
  transition-delay: 0s !important;
}
body.page-case-agent .agent-learning-card[data-open="true"] .agent-learning-card__icon { opacity:1 !important; }

@media (max-width: 1100px) {
  body.page-case-agent .design-influence-v73__notes { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.page-case-agent .design-influence-note--yellow,
  body.page-case-agent .design-influence-note--ink { transform:none; }
}
@media (max-width: 900px) {
  body.page-case-agent .agent-hero-v72__stage { display:block !important; }
  body.page-case-agent .agent-hero-v73__signal { min-height: 520px; margin-top: 18px; }
  body.page-case-agent .pitch-device-v73 { margin-top: 90px; }
  body.page-case-agent .design-influence-v73__head { grid-template-columns:1fr; gap:30px; }
  body.page-case-agent .design-influence-v73__head .eyebrow { grid-column:auto; }
}
@media (max-width: 700px) {
  body.page-case-agent .agent-hero-v73__signal { min-height: 420px; padding: 28px; }
  body.page-case-agent .agent-hero-v73__signal-copy strong { font-size: clamp(96px,31vw,142px); }
  body.page-case-agent .agent-hero-v73__signal-flow { flex-wrap:wrap; }
  body.page-case-agent .pitch-device-v73 figcaption { width: 88%; }
  body.page-case-agent .decision-card-wide-v71 { grid-template-columns: 1fr !important; gap: 22px !important; }
  body.page-case-agent .decision-card-wide-v70__index { flex-direction: row; align-items:center; }
  body.page-case-agent .decision-card-wide-v73__icon { width:34px; height:34px; }
  body.page-case-agent .design-influence-v73__notes { grid-template-columns:1fr; gap:30px; }
  body.page-case-agent .design-influence-note { min-height: 280px; transform:none !important; }
  body.page-case-agent #pitch { padding-bottom: 130px !important; }
  body.page-case-agent .agent-role-section { padding-top: 90px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.page-case-agent .agent-hero-v73__signal-field { animation:none !important; }
}

/* V74 Agent hierarchy/alignment polish */
.city-story-v74__label{margin:0 0 12px;font:600 clamp(18px,1.6vw,24px)/1.2 var(--font-display);letter-spacing:-.015em}
.decision-card-wide-v73__icon{width:56px!important;height:56px!important}
.decision-card-breakout-v73,.decision-card-v73__architecture-wrap,.decision-card-wide-v71{width:min(100%,1180px)!important;margin-inline:auto!important;box-sizing:border-box}
.design-phase__grid,.design-phase__grid--reverse{align-items:start!important}
.iteration-card__body{padding-bottom:18px!important}
.impact-direct-note{color:var(--orange);font-weight:700}
.agent-learning-card__hint{width:44px;height:44px;display:grid!important;place-items:center;margin-top:auto;border:1px solid rgba(41,46,38,.28);border-radius:50%;font-size:0!important}
.agent-learning-card__hint span{font-size:22px!important;line-height:1}
.agent-news__caption{display:none!important}
.insight-card>.copy-sm{opacity:0;max-height:0;margin-top:0;overflow:hidden;transition:opacity 240ms ease,max-height 320ms ease,margin-top 320ms ease}
.insight-card:is(:hover,:focus-within)>.copy-sm{opacity:1;max-height:10rem;margin-top:12px}
@media(prefers-reduced-motion:reduce){.insight-card>.copy-sm{transition:none!important}}
