/* Compact Work hero — the geography and its markers are separate layers. */
body[data-page=work][data-audience-map] {
  --map-land: #e7e7dc;
  --map-dot: #65715c;
  --map-canvas: #fafaf6;
  --map-note: #71766d;
  --map-line: #d8dacf;
  --map-speed: 350ms;
  --map-radius: 4px;
  --map-hit: 44px;
}
body[data-page=work][data-audience-map] #world {display:none}
body[data-page=work][data-audience-map] #wash {background:var(--map-canvas)!important}
body[data-page=work][data-audience-map] #opening {min-height:0;justify-content:flex-start;gap:0;padding-top:32px;padding-bottom:16px}
body[data-page=work][data-audience-map] #opening .breadcrumb {margin-bottom:24px}
body[data-page=work][data-audience-map] #opening .hero-description {max-width:1100px;margin-top:24px}
body[data-page=work][data-audience-map] #section-1 {padding-top:28px}
.audience-map {width:min(660px,100%);align-self:center;margin:28px auto 0;position:relative;isolation:isolate}
.audience-map-stage {position:relative;width:100%;aspect-ratio:838/310}
.audience-geography {display:block;width:100%;height:100%;overflow:visible}
.audience-land {fill:var(--map-land);stroke:var(--map-land);stroke-width:1.1;stroke-linejoin:round}
.audience-dots circle {fill:var(--map-dot);opacity:.52;transition:fill var(--map-speed) ease,opacity var(--map-speed) ease}
.audience-dots .is-active {fill:var(--audience-active);opacity:1}
.audience-controls {display:flex;align-items:center;justify-content:center;gap:10px;margin-top:8px}
.audience-hexes {display:grid;grid-template-columns:repeat(15,28px);gap:0}
.audience-selector,.audience-playback {display:grid;place-items:center;border:0;background:none;padding:0;height:var(--map-hit);min-width:0;color:var(--map-dot);cursor:pointer}
.audience-selector svg {width:10px;height:12px;overflow:visible;transition:transform var(--map-speed) ease}
.audience-selector path {fill:var(--map-dot);opacity:.36;stroke:transparent;stroke-width:1.5}
.audience-selector[aria-pressed=true] path {fill:var(--project-color);stroke:var(--project-color);opacity:1}
.audience-selector[aria-pressed=true] svg {transform:scale(1.32)}
.audience-selector:is(:hover,:focus-visible) svg {transform:scale(1.55)}
.audience-selector:focus-visible,.audience-playback:focus-visible {outline:2px solid var(--audience-active);outline-offset:-4px;border-radius:var(--map-radius)}
.audience-playback {width:var(--map-hit)}
.audience-playback svg {width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.audience-play-mark {display:none}
.audience-playback[data-paused=true] .audience-play-mark {display:block;fill:currentColor;stroke:none}
.audience-playback[data-paused=true] .audience-pause-mark {display:none}
.audience-map figcaption {font:400 10px/1.5 Geist,sans-serif;color:var(--map-note);text-align:center;margin:0}
.audience-preview {position:absolute;z-index:3;left:48%;top:18%;width:224px;background:var(--map-canvas);border:1px solid var(--map-line);border-radius:var(--map-radius);padding:7px;box-shadow:0 6px 24px #26302218}
.audience-preview[hidden] {display:none!important}
.audience-preview-link {display:block;color:inherit;text-decoration:none}
.audience-preview img {width:100%;height:auto;aspect-ratio:320/185;object-fit:contain;background:var(--map-land);display:block;border-radius:0}
.audience-preview-name {display:block;font:500 14px/1.35 Geist,sans-serif;margin:9px 5px 3px}
.audience-preview-scope {display:block;font:400 11px/1.4 Geist,sans-serif;color:var(--map-note);margin:0 5px}
.audience-preview-action {display:flex;justify-content:space-between;font:400 11px/1.4 Geist,sans-serif;margin:9px 5px 3px}
.audience-preview-close {position:absolute;right:-10px;top:-12px;width:28px;height:28px;border:1px solid var(--map-line);border-radius:50%;background:var(--map-canvas);font:18px Geist,sans-serif;color:inherit;cursor:pointer;z-index:1}
@media(max-width:760px) {
  body[data-page=work][data-audience-map] #opening {padding-top:44px;padding-bottom:20px}
  .audience-map {margin-top:30px;width:100%}
  .audience-controls {gap:0;margin-top:8px}
  .audience-hexes {grid-template-columns:repeat(8,32px)}
  .audience-selector:nth-child(n+9) {transform:translateX(16px)}
  .audience-preview {width:180px;left:30%;top:0;padding:5px}
  .audience-preview-close {width:var(--map-hit);height:var(--map-hit);right:-9px;top:-30px}
  .audience-map figcaption {font-size:9px}
}
@media(prefers-reduced-motion:reduce) {.audience-map * {transition:none!important}}
/* 9 Oct refinement: compact contact sheet and enterprise-to-consumer continuum. */
.work-view-switch {display:flex;justify-content:center;gap:24px;margin:0 0 18px;font:400 12px/1.4 Geist,sans-serif}
.work-view-switch a {min-height:44px;display:flex;align-items:center;color:var(--map-note);text-decoration:none;border-bottom:1px solid transparent}
.work-view-switch a[aria-current=page] {color:var(--ink,#18201c);border-color:currentColor}
.audience-map-stage {min-height:300px;display:flex;align-items:center}
.audience-geography {height:auto;aspect-ratio:838/310}
.audience-preview {width:240px;top:4%;left:49%;box-shadow:none;border-radius:var(--map-radius)}
.audience-preview img {aspect-ratio:4/3;object-fit:contain}
.audience-preview-devices {display:flex;gap:7px;margin:7px 5px 0}
.audience-preview-devices img {width:13px;height:13px;background:none}
.audience-preview-close {width:var(--map-hit);height:var(--map-hit)}
.audience-thumbnails {display:grid;grid-template-columns:repeat(15,36px);gap:3px;align-items:center}
.audience-selector {width:36px;height:44px;border-bottom:2px solid transparent;padding:5px 0;transition:transform var(--map-speed) ease,border-color var(--map-speed) ease}
.audience-selector > img {display:block;width:36px;height:30px;object-fit:contain;border-radius:2px;opacity:.62;transition:opacity var(--map-speed) ease}
.audience-selector[aria-pressed=true] {border-color:var(--project-color);transform:translateY(-3px)}
.audience-selector[aria-pressed=true] > img,.audience-selector:hover > img {opacity:1}
.audience-evidence {font:400 11px/1.55 Geist,sans-serif;text-align:center;max-width:640px;margin:10px auto 0;color:var(--map-note)}
.audience-evidence summary {cursor:pointer;min-height:32px;list-style:none;text-decoration:underline;text-underline-offset:3px}
.audience-evidence-body {padding:12px 18px;border:1px solid var(--map-line);text-align:left}
.audience-evidence small {font-size:10px;letter-spacing:.04em;text-transform:uppercase}
.audience-evidence p {margin:6px 0}
.audience-evidence .audience-fact {color:var(--ink,#18201c);font-size:12px}
.audience-evidence a {display:block;color:inherit;margin-top:4px;font-size:10px}
.audience-region-markers {fill:var(--audience-active)}
.region-halo {fill:none;stroke:var(--audience-active);stroke-width:1;opacity:.55}
.work-range {display:none}
.audience-map[data-view=range] {width:min(960px,100%)}
.audience-map[data-view=range] .work-range {display:block}
.audience-map[data-view=range] :is(.audience-map-stage,.audience-controls,.audience-map-caption,.audience-evidence) {display:none}
.range-canvas {height:326px;position:relative;margin-top:14px}
.range-canvas::before {content:'';position:absolute;left:0;right:0;bottom:25px;height:1px;background:var(--map-line)}
.range-project {position:absolute;left:var(--card-x);top:var(--card-y);width:var(--card-w);padding:4px;transform:translateX(-50%);border:1px solid var(--map-line);border-radius:var(--map-radius);background:var(--map-canvas);cursor:pointer;transition:transform var(--map-speed) ease,border-color var(--map-speed) ease,opacity var(--map-speed) ease;z-index:1}
.range-art {display:block;width:100%;height:auto;aspect-ratio:320/185;object-fit:contain}
.range-project:is(:hover,:focus-visible),.range-project[aria-pressed=true] {transform:translateX(-50%) translateY(-5px) scale(1.16);z-index:5;border-color:var(--project-color)}
.range-project:focus-visible {outline:2px solid var(--project-color);outline-offset:3px}
.range-stamps {display:flex;gap:5px;justify-content:flex-end;padding:5px 2px 0;min-height:17px}
.range-stamps img {width:12px;height:12px;opacity:.65}
.range-axis {position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;font:400 11px/1.4 Geist,sans-serif;color:var(--map-note)}
.range-detail {display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--map-line);margin-top:26px;padding:0 0 16px;font:400 12px/1.5 Geist,sans-serif}
.range-detail strong {display:block;font-size:15px;font-weight:500}
.range-detail div>span {color:var(--map-note)}
.range-detail button {border:0;background:none;color:inherit;min-height:44px;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.range-caption {font:400 11px/1.5 Geist,sans-serif;color:var(--map-note);text-align:center;margin-top:12px}
@media(max-width:760px) {
 .audience-map-stage {min-height:285px;align-items:flex-start;padding-top:55px}
 .audience-geography {opacity:.8}
 .audience-preview {width:190px;left:calc(50% - 95px);top:5px}
 .audience-preview img {aspect-ratio:4/3}
 .audience-preview-close {top:-12px}
 .audience-thumbnails {grid-template-columns:repeat(8,32px);gap:3px}
 .audience-selector {width:32px}
 .audience-selector > img {width:32px;height:27px}
 .audience-selector:nth-child(n+9) {transform:none}
 .audience-selector[aria-pressed=true] {transform:translateY(-3px)}
 .work-view-switch {gap:22px;margin-bottom:10px}
 .range-canvas {height:530px;margin:0 8px}
 .range-canvas::before {left:50%;right:auto;top:30px;bottom:30px;width:1px;height:auto}
 .range-project {left:var(--mobile-x,25%);top:var(--mobile-y);width:var(--mobile-w,82px)}
 .range-axis {top:0;bottom:0;display:block;text-align:center}
 .range-axis span {position:absolute;left:0;right:0}
 .range-axis span:last-child {bottom:0}
 .range-detail {margin-top:12px;gap:12px}
 .range-detail strong {font-size:14px}
 .range-caption {font-size:10px}
}
body[data-page=work][data-audience-map] #opening {position:relative}
#opening > .work-view-switch {position:absolute;right:5vw;top:20px;margin:0}
.audience-map-stage {min-height:276px}
.audience-preview {top:1%}
.audience-preview img {aspect-ratio:1.45}
.audience-preview-devices img {aspect-ratio:1}
.range-canvas {transform-origin:top center;height:326px;margin-top:0}
.range-stamps {position:absolute;right:4px;bottom:3px;padding:3px;background:var(--map-canvas);border-radius:2px}
.range-project {padding:0;border:1px solid var(--map-line)}
.range-art {aspect-ratio:4/3}
@media(max-width:760px) {
 #opening > .work-view-switch {position:static;order:-1;margin:0 auto 20px}
 .audience-map-stage {min-height:268px}
 .audience-preview img {aspect-ratio:1.45}
 .audience-preview-devices img {aspect-ratio:1}
 .range-canvas {height:574px}
}
.audience-evidence-body p {font:400 12px/1.55 Geist,sans-serif}
.region-halo {stroke-width:1.8;opacity:.85}

/* Geography focus refinement: enlarged map, quieter contact sheet, progressive range. */
.audience-map {width:min(920px,100%);margin-top:30px}
.audience-map-stage {height:350px;min-height:350px;aspect-ratio:auto;overflow:hidden}
.audience-geography {height:100%;width:100%;aspect-ratio:auto;overflow:hidden}
.audience-land {opacity:.52}
.audience-preview {width:258px;top:26px;left:auto;right:28px;padding:6px}
.audience-map[data-preview-side=left] .audience-preview {left:28px;right:auto}
.audience-preview-link > img {aspect-ratio:auto;height:auto;object-fit:initial}
.audience-thumbnails {grid-template-columns:repeat(15,44px);gap:7px;padding:12px 14px}
.audience-controls {gap:4px;margin-top:4px}
.audience-selector {width:44px;height:48px;padding:7px 5px;border:1px solid transparent;border-radius:4px;position:relative}
.audience-selector > img {width:32px;height:30px;opacity:.32;filter:grayscale(.7)}
.audience-selector[aria-pressed=true] {border-color:var(--project-color);background:color-mix(in srgb,var(--project-color) 7%,transparent);transform:none}
.audience-selector[aria-pressed=true]::after {content:'';position:absolute;bottom:-6px;left:17px;width:8px;height:2px;background:var(--project-color)}
.audience-selector:is([aria-pressed=true],:hover,:focus-visible)>img {opacity:1;filter:none}
.audience-map figcaption {font-size:10px;margin-top:8px}
.range-project {opacity:var(--card-fade);overflow:hidden}
.range-project:is(:hover,:focus-visible),.range-project[aria-pressed=true] {opacity:1}
.range-art {aspect-ratio:auto;object-fit:initial;height:auto}
.range-stamps {min-height:0}
.range-canvas::before {background:linear-gradient(90deg,var(--map-line) 40%,transparent)}
@media(max-width:1000px) and (min-width:761px) {
 .audience-thumbnails {grid-template-columns:repeat(8,44px);gap:7px}
}
@media(max-width:760px) {
 .audience-map-stage {height:340px;min-height:340px;padding-top:0;align-items:flex-end}
 .audience-geography {height:235px;opacity:1}
 .audience-preview,.audience-map[data-preview-side=left] .audience-preview {width:174px;top:4px;left:auto;right:8px}
 .audience-map[data-preview-side=left] .audience-preview {left:8px;right:auto}
 .audience-preview-scope {font-size:10px}
 .audience-preview-name {margin-top:6px}
 .audience-preview-devices {margin-top:4px}
 .audience-thumbnails {grid-template-columns:repeat(5,44px);gap:9px;padding:12px 0}
 .audience-selector {width:44px;padding:7px 5px}
 .audience-selector[aria-pressed=true] {transform:none}
 .audience-controls {align-items:flex-start;gap:2px}
 .audience-playback {width:30px;margin-top:12px}
 .audience-selector[aria-pressed=true]::after {left:15px}
 .audience-map figcaption {font-size:9px}
}

/* Third Work concept: qualitative scope × interaction map. */
.audience-map[data-view=quadrant] {width:min(1000px,100%)}
.audience-map[data-view=quadrant] > :is(.audience-map-stage,.audience-controls,.audience-map-caption,.audience-evidence,.work-range) {display:none}
.human-quadrant {--quadrant-color:var(--map-dot);--quadrant-thumb:76px;--quadrant-label:10px;--quadrant-chart:380px;font-family:Geist,sans-serif}
.quadrant-intro {display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:22px;font-size:13px;color:var(--map-note)}
.quadrant-intro>span:first-child {font-size:20px;letter-spacing:-.03em;color:var(--ink)}
.quadrant-top-axis,.quadrant-bottom-axis {display:flex;justify-content:space-between;gap:16px;font-size:10px;color:var(--map-note)}
.quadrant-top-axis {margin-bottom:8px}
.quadrant-top-axis>span:last-child {text-transform:uppercase;letter-spacing:.08em;font-size:9px}
.quadrant-plot {position:relative;height:var(--quadrant-chart);border-top:1px solid var(--map-line);border-bottom:1px solid var(--map-line);isolation:isolate}
.quadrant-cross {position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent calc(50% - .5px),var(--map-line) 50%,transparent calc(50% + .5px)),linear-gradient(transparent calc(50% - .5px),var(--map-line) 50%,transparent calc(50% + .5px))}
.quadrant-label {position:absolute;font-size:var(--quadrant-label);color:var(--map-note);z-index:1;pointer-events:none}
.q-expert {top:10px;left:12px}.q-human {top:10px;right:12px}.q-focused {bottom:10px;left:12px}.q-everyday {bottom:10px;right:12px}
.q-human {color:var(--ink)}
.quadrant-footprint {position:absolute;width:100%;height:100%;inset:0;pointer-events:none;overflow:hidden}
.quadrant-footprint ellipse {fill:color-mix(in srgb,var(--quadrant-color) 5%,transparent);stroke:color-mix(in srgb,var(--quadrant-color) 35%,transparent);stroke-width:1;stroke-dasharray:3 5;transition:cx var(--map-speed),cy var(--map-speed),rx var(--map-speed),ry var(--map-speed)}
.quadrant-project {position:absolute;left:var(--qx);top:var(--qy);width:var(--quadrant-thumb);min-height:var(--map-hit);padding:0;transform:translate(-50%,-50%);border:0;background:transparent;color:var(--ink);cursor:pointer;z-index:2;transition:transform var(--map-speed),opacity var(--map-speed)}
.quadrant-project>img {display:block;width:100%;height:auto;border:1px solid transparent;border-radius:var(--map-radius);opacity:.75;transition:opacity var(--map-speed),border-color var(--map-speed)}
.quadrant-project-name {display:block;font-size:9px;line-height:1.2;text-align:left;margin-top:4px;white-space:nowrap}
.quadrant-project[aria-pressed=true]>img,.quadrant-project:is(:hover,:focus-visible)>img {border-color:var(--project-color);opacity:1}
.quadrant-project[aria-pressed=true],.quadrant-project:is(:hover,:focus-visible) {transform:translate(-50%,-50%) scale(1.08);z-index:4}
.quadrant-project:focus-visible {outline:2px solid var(--project-color);outline-offset:5px;border-radius:var(--map-radius)}
.quadrant-stamps {position:absolute;right:3px;top:3px;display:flex;gap:3px;background:var(--map-canvas);padding:2px;border-radius:var(--map-radius)}
.quadrant-stamps img {width:10px;height:10px}
.quadrant-bottom-axis {margin-top:8px}
.quadrant-bottom-axis i {font-style:normal;margin:0 10px}
.quadrant-reading {display:flex;justify-content:space-between;gap:32px;align-items:center;margin-top:22px;padding-bottom:16px;border-bottom:1px solid var(--map-line)}
.quadrant-reading strong {font-size:14px;font-weight:500}
.quadrant-reading p {font:400 12px/1.6 Geist,sans-serif;margin:6px 0 0;max-width:680px;color:var(--map-note)}
.quadrant-reading>button {border:0;background:none;white-space:nowrap;min-height:var(--map-hit);font:400 12px Geist,sans-serif;cursor:pointer;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.quadrant-preview {position:absolute;width:230px;left:15%;top:54%;z-index:6;background:var(--map-canvas);padding:6px;border:1px solid var(--map-line);border-radius:var(--map-radius)}
.quadrant-preview[data-side=right] {left:auto;right:12%}
.quadrant-preview[hidden] {display:none}
.quadrant-preview-action {display:block;width:100%;text-align:left;padding:0;background:none;border:0;cursor:pointer;color:var(--ink);font-family:Geist,sans-serif}
.quadrant-preview-action>img {display:block;width:100%;height:auto}
.quadrant-preview-title {display:block;font-size:14px;margin:8px 4px 3px}
.quadrant-preview-scope {display:block;font-size:11px;line-height:1.4;color:var(--map-note);margin:0 4px}
.quadrant-preview-cta {display:block;font-size:11px;margin:10px 4px 4px}
.quadrant-close {position:absolute;right:-12px;top:-18px;width:var(--map-hit);height:var(--map-hit);background:var(--map-canvas);border:1px solid var(--map-line);border-radius:50%;cursor:pointer;font:18px Geist,sans-serif;color:var(--ink)}
.quadrant-method {font:400 11px/1.6 Geist,sans-serif;color:var(--map-note);margin-top:10px}
.quadrant-method summary {min-height:32px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;list-style:none}
.quadrant-method p {font:400 12px/1.6 Geist,sans-serif;max-width:750px;margin:8px 0}
@media(max-width:760px) {
 #opening>.work-view-switch {gap:14px;flex-wrap:wrap;justify-content:flex-start;margin-bottom:18px;font-size:11px}
 .human-quadrant {--quadrant-thumb:46px;--quadrant-label:9px;--quadrant-chart:420px}
 .quadrant-intro {display:block;margin-bottom:16px}
 .quadrant-intro>span {display:block;font-size:11px;margin-top:6px}
 .quadrant-project-name {font-size:8px;white-space:normal}
 .quadrant-stamps {display:none}
 .quadrant-project {min-height:var(--map-hit)}
 .quadrant-reading {gap:16px;align-items:flex-start;flex-direction:column;margin-top:18px}
 .quadrant-reading p {font-size:12px}
 .quadrant-reading>button {min-height:var(--map-hit)}
 .quadrant-preview,.quadrant-preview[data-side=right] {width:190px;left:calc(50% - 95px);right:auto;top:43%}
 .quadrant-top-axis,.quadrant-bottom-axis {font-size:9px}
 .quadrant-bottom-axis i {margin:0 3px}
 .q-human {max-width:100px;text-align:right}
}

@media(max-width:760px) {.quadrant-project {left:var(--qmx);top:var(--qmy)}}

body:has(.audience-map[data-view=quadrant]) .scroll-cue {display:none}
/* Readability pass: strong structure, restrained marks, generous editorial type. */
body[data-page=work][data-audience-map] {--concept-axis:#8d978f;--concept-label:#3b463f}
.concept-intent {font:300 clamp(28px,3vw,38px)/1.25 Oswald,sans-serif;letter-spacing:-.015em;text-align:center;margin:24px auto 38px;color:var(--ink);max-width:740px}
.concept-intent>span {color:var(--concept-label)}
.audience-map[data-view=quadrant]>.concept-intent {display:none}
.audience-map {margin-top:42px}
.work-view-switch {font-size:13px}
.human-quadrant {--quadrant-thumb:104px;--quadrant-label:17px;--quadrant-chart:420px}
.quadrant-plot {border:1.5px solid var(--concept-axis)}
.quadrant-cross {background:linear-gradient(90deg,transparent calc(50% - .75px),var(--concept-axis) calc(50% - .75px),var(--concept-axis) calc(50% + .75px),transparent calc(50% + .75px)),linear-gradient(transparent calc(50% - .75px),var(--concept-axis) calc(50% - .75px),var(--concept-axis) calc(50% + .75px),transparent calc(50% + .75px))}
.quadrant-label {font-weight:500;color:var(--concept-label);background:var(--map-canvas);padding:4px 8px;letter-spacing:-.02em}
.q-expert,.q-human {top:-16px}.q-focused,.q-everyday {bottom:-16px}
.quadrant-top-axis,.quadrant-bottom-axis {font-size:13px;color:var(--concept-label)}
.quadrant-top-axis {margin-bottom:28px}
.quadrant-top-axis>span:last-child {font-size:11px;letter-spacing:.04em}
.quadrant-bottom-axis {margin-top:28px}
.quadrant-point {display:block;width:10px;height:10px;margin:0 auto;border-radius:50%;background:var(--project-color);border:2px solid var(--map-canvas);outline:1px solid var(--project-color)}
.quadrant-project-name {font-size:12px;line-height:1.2;text-align:center;margin-top:7px;white-space:nowrap;color:var(--concept-label)}
.quadrant-project[aria-pressed=true] .quadrant-point {box-shadow:0 0 0 7px color-mix(in srgb,var(--project-color) 12%,transparent),0 0 22px color-mix(in srgb,var(--project-color) 30%,transparent)}
.quadrant-footprint ellipse {fill:color-mix(in srgb,var(--quadrant-color) 9%,transparent);stroke:color-mix(in srgb,var(--quadrant-color) 38%,transparent);stroke-dasharray:none;stroke-width:1;filter:drop-shadow(0 0 12px color-mix(in srgb,var(--quadrant-color) 22%,transparent))}
.quadrant-project[aria-pressed=true],.quadrant-project:is(:hover,:focus-visible) {transform:translate(-50%,-50%);z-index:4}
.quadrant-preview,.quadrant-preview[data-side=right] {transform:translate(-50%,-50%);right:auto;box-shadow:0 0 28px color-mix(in srgb,var(--quadrant-color) 18%,transparent);border-color:color-mix(in srgb,var(--quadrant-color) 40%,var(--map-line))}
.quadrant-preview-title {font-size:16px;margin-top:10px}
.quadrant-preview-scope[hidden] {display:none}
.quadrant-preview-cta {font-size:12px}
.quadrant-reading {display:block;text-align:center;border:0;margin:30px auto 0;max-width:760px;padding:0}
.quadrant-reading strong {font:400 28px/1.3 Oswald,sans-serif;letter-spacing:-.015em}
.quadrant-reading p {font:400 16px/1.65 Geist,sans-serif;margin:10px auto;max-width:680px;color:var(--concept-label)}
.quadrant-reading>button {font-size:13px}
.range-axis {font:400 22px/1.25 Oswald,sans-serif;color:var(--concept-label)}
.range-canvas {height:348px}
.range-canvas::before {bottom:36px;height:1.5px;background:linear-gradient(90deg,var(--concept-axis),var(--concept-axis) 55%,transparent)}
.range-project[aria-pressed=true] {transform:translateX(-50%) translateY(-5px) scale(1.4);opacity:1}
.range-detail {display:block;text-align:center;border:0;margin:26px auto 0;max-width:700px;padding:0}
.range-detail strong {font:400 28px/1.3 Oswald,sans-serif}
.range-detail div>span {display:block;font-size:16px;line-height:1.6;margin-top:8px;color:var(--concept-label)}
.range-detail button {font-size:13px;margin-top:10px}
.range-caption {font-size:14px;margin-top:12px;color:var(--concept-label)}
.audience-land {opacity:.12}
.audience-land-focus {fill:var(--map-land);opacity:.95}
.audience-map-stage {height:380px;min-height:380px}
.audience-preview-name {font:400 23px/1.25 Oswald,sans-serif;margin-top:12px}
.audience-preview-scope {font-size:14px;line-height:1.5;color:var(--concept-label)}
.audience-preview-action {font-size:13px;margin-top:12px}
.audience-map-caption strong {display:block;font:400 25px/1.3 Oswald,sans-serif;color:var(--ink)}
.audience-map-caption span {display:block;font-size:11px;line-height:1.5;margin-top:5px;color:var(--map-note)}
body[data-page=work][data-audience-map] .scroll-cue {display:none}
@media(max-width:760px) {
 .concept-intent {font-size:28px;margin:12px auto 30px}
 .human-quadrant {--quadrant-thumb:72px;--quadrant-label:12px;--quadrant-chart:440px}
 .quadrant-project-name {font-size:10px;white-space:normal;max-width:68px;margin:7px auto 0}
 .quadrant-label {padding:3px 5px}
 .q-human {max-width:150px}
 .q-expert,.q-human {top:-13px}.q-focused,.q-everyday {bottom:-13px}
 .quadrant-top-axis,.quadrant-bottom-axis {font-size:11px}
 .quadrant-top-axis>span:last-child {font-size:9px}
 .quadrant-reading strong,.range-detail strong {font-size:26px}
 .quadrant-reading p,.range-detail div>span {font-size:15px;line-height:1.6}
 .range-canvas {height:574px}
 .range-axis {font-size:20px}
 .range-canvas::before {height:auto;bottom:35px;background:linear-gradient(var(--concept-axis),transparent)}
 .range-project[aria-pressed=true] {transform:translateX(-50%) scale(1.18)}
 .audience-map-stage {height:370px;min-height:370px}
 .audience-geography {height:245px}
 .audience-preview-name {font-size:20px}
 .audience-preview-scope {font-size:12px}
 .audience-preview-action {font-size:11px}
 .audience-map-caption strong {font-size:23px}
 .audience-map-caption span {font-size:10px}
}

.quadrant-preview-content>img {display:block;width:100%;height:auto}
.quadrant-preview-action.quadrant-preview-cta {width:auto;min-height:32px;font-size:12px;text-decoration:underline;text-underline-offset:3px}

.audience-land-focus {fill:#d7ddcd}
@media(max-width:760px) {
 .human-quadrant {--quadrant-thumb:48px}
 .quadrant-project-name {width:68px;max-width:none;left:50%;position:relative;transform:translateX(-50%)}
}
/* Four contained quadrant directions; shared project semantics and interaction. */
.audience-map[data-view=quadrant] {width:min(1180px,100%)}
.quadrant-layout {display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:64px;align-items:center;padding:26px 0 14px}
.quadrant-stage {position:relative;isolation:isolate;min-width:0}
.quadrant-editorial {position:relative;z-index:1}
.quadrant-kicker {font:400 11px/1.5 Geist,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--map-note)}
.quadrant-editorial h2 {font:300 clamp(30px,3.3vw,46px)/1.14 Oswald,sans-serif;letter-spacing:-.025em;margin:16px 0 20px;color:var(--ink)}
.quadrant-editorial h2>span {color:var(--concept-label)}
.quadrant-treatment-note {font:400 14px/1.6 Geist,sans-serif;color:var(--map-note);max-width:330px;margin:0 0 28px}
.quadrant-editorial .quadrant-reading {text-align:left;margin:0;padding-top:22px;border-top:1px solid var(--map-line)}
.quadrant-editorial .quadrant-reading strong {font:500 18px/1.4 Geist,sans-serif}
.quadrant-editorial .quadrant-reading p {font-size:14px;line-height:1.65;margin:8px 0;max-width:340px}
.quadrant-editorial .quadrant-reading>button {font-size:12px}
.human-quadrant {--quadrant-thumb:56px;--quadrant-chart:400px;--quadrant-label:13px;--treatment-blue:#566cca;--treatment-light:#e8eaf1;--treatment-warm:#dba251}
.quadrant-project-name {font-size:11px;width:90px;position:relative;left:50%;transform:translateX(-50%);margin-top:8px}
.quadrant-top-axis,.quadrant-bottom-axis {font-size:11px}
.quadrant-top-axis>span:last-child {font-size:9px}
.quadrant-label {font-size:13px}
.quadrant-mesh {display:none;position:absolute;inset:-34px -35px;width:calc(100% + 70px);height:calc(100% + 68px);z-index:-2;pointer-events:none;fill:var(--treatment-warm);mask-image:radial-gradient(ellipse at 30% 60%,black 20%,transparent 73%)}
.quadrant-carousel-controls {display:flex;justify-content:center;align-items:center;gap:14px;margin:30px auto 4px;font:400 13px Geist,sans-serif}
.quadrant-carousel-controls button {cursor:pointer;border:0;background:transparent;color:var(--concept-label);min-height:44px;padding:8px 13px;font:inherit}
.quadrant-carousel-controls button:focus-visible {outline:2px solid var(--treatment-blue);outline-offset:3px}
.quadrant-treatment-buttons {display:flex;gap:6px}
.quadrant-treatment-buttons button {border-bottom:2px solid transparent;opacity:.62}
.quadrant-treatment-buttons button span {font-size:10px;margin-right:5px}
.quadrant-treatment-buttons button[aria-pressed=true] {border-color:var(--ink);opacity:1;color:var(--ink)}
.quadrant-carousel-controls .quadrant-previous,.quadrant-carousel-controls .quadrant-next {border:1px solid var(--map-line);border-radius:50%;width:44px;padding:0;font-size:19px}
.quadrant-counter {font-size:11px;color:var(--map-note);min-width:30px}
.human-quadrant>.quadrant-method {margin-top:12px;text-align:center}
.human-quadrant>.quadrant-method p {text-align:left;margin-left:auto;margin-right:auto}
/* 01 — the silhouette is its own background, so points/previews never clip. */
.human-quadrant[data-treatment=sculpted] .quadrant-plot {border:0;background:none}
.human-quadrant[data-treatment=sculpted] .quadrant-plot::before {content:'';position:absolute;inset:-12px -5px -12px -16px;border-radius:22px 130px 130px 22px;background:var(--treatment-light);box-shadow:14px 0 0 #acb8e6,28px 0 0 var(--treatment-blue);z-index:-2}
.human-quadrant[data-treatment=sculpted] .quadrant-cross {border-radius:22px 130px 130px 22px;opacity:.6}
.human-quadrant[data-treatment=sculpted] .quadrant-label {background:transparent;color:#414f86;font-weight:500}
.human-quadrant[data-treatment=sculpted] .q-expert,.human-quadrant[data-treatment=sculpted] .q-human {top:7px}
.human-quadrant[data-treatment=sculpted] .q-focused,.human-quadrant[data-treatment=sculpted] .q-everyday {bottom:7px}
.human-quadrant[data-treatment=sculpted] .quadrant-point {background:var(--treatment-blue);outline-color:var(--treatment-blue);border-color:var(--treatment-light)}
/* 02 — a local warm halftone field rather than a page-wide decoration. */
.human-quadrant[data-treatment=mesh] .quadrant-mesh {display:block}
.human-quadrant[data-treatment=mesh] .quadrant-plot {background:color-mix(in srgb,var(--map-canvas) 90%,transparent);border-color:color-mix(in srgb,var(--treatment-warm) 48%,var(--map-line))}
.human-quadrant[data-treatment=mesh] .quadrant-cross {opacity:.6}
.human-quadrant[data-treatment=mesh] .quadrant-point {box-shadow:0 0 0 5px color-mix(in srgb,var(--project-color) 9%,transparent)}
/* 03 — two independent axes, with no rankings or invented numerical ticks. */
.human-quadrant[data-treatment=scatter] .quadrant-plot {border-width:0 0 2px 2px;border-color:var(--concept-label);background:radial-gradient(ellipse at 80% 20%,#ecf2e880,transparent 68%)}
.human-quadrant[data-treatment=scatter] .quadrant-cross,.human-quadrant[data-treatment=scatter] .quadrant-label {display:none}
.human-quadrant[data-treatment=scatter] .quadrant-point {width:15px;height:15px;outline:0;border:0;opacity:.8}
.human-quadrant[data-treatment=scatter] .quadrant-project[aria-pressed=true] .quadrant-point {opacity:1;box-shadow:0 0 0 7px color-mix(in srgb,var(--project-color) 13%,transparent)}
.human-quadrant[data-treatment=scatter] .quadrant-footprint {opacity:.5}
/* 04 — graph-paper rhythm, confined to the plotted space. */
.human-quadrant[data-treatment=grid] .quadrant-plot {background-image:linear-gradient(90deg,#919b8616 1px,transparent 1px),linear-gradient(#919b8616 1px,transparent 1px),conic-gradient(from 90deg at 50% 50%,#e6eadc55 0 25%,transparent 0 50%,#ece8f155 0 75%,transparent 0);background-size:24px 24px,24px 24px,100% 100%}
.human-quadrant[data-treatment=grid] .quadrant-label {font-weight:600;letter-spacing:.03em;font-size:12px;text-transform:uppercase}
.human-quadrant[data-treatment=grid] .quadrant-point {border-radius:3px;width:12px;height:12px}
/* Adjacent concepts have their own restrained local pattern. */
.audience-map[data-view=map] .audience-map-stage::before {content:'';position:absolute;inset:12px 4%;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,#7b866735 .8px,transparent 1px);background-size:13px 13px;mask-image:radial-gradient(ellipse,black 12%,transparent 70%)}
.audience-map[data-view=range] .range-canvas::after {content:'';position:absolute;inset:-12px -15px 35px;z-index:-1;pointer-events:none;background-image:linear-gradient(90deg,#68785e1c 1px,transparent 1px),linear-gradient(#68785e1c 1px,transparent 1px);background-size:32px 32px;transform:perspective(600px) rotateX(10deg);mask-image:linear-gradient(90deg,#000b,transparent 85%)}
.range-canvas {isolation:isolate}
@media(max-width:900px) {
 .quadrant-layout {grid-template-columns:1fr;gap:36px;max-width:650px;margin:auto}
 .quadrant-editorial {max-width:600px;text-align:center}
 .quadrant-editorial h2 {font-size:38px;max-width:520px;margin-left:auto;margin-right:auto}
 .quadrant-treatment-note {max-width:480px;margin-left:auto;margin-right:auto}
 .quadrant-editorial .quadrant-reading {text-align:center}
 .quadrant-editorial .quadrant-reading p {max-width:550px;margin-left:auto;margin-right:auto}
}
@media(max-width:760px) {
 .human-quadrant {--quadrant-thumb:48px;--quadrant-chart:440px}
 .quadrant-layout {padding-top:12px;gap:28px}
 .quadrant-stage {margin:0 10px}
 .quadrant-label {font-size:11px;letter-spacing:-.02em}
 .quadrant-project-name {width:68px;font-size:10px}
 .quadrant-top-axis,.quadrant-bottom-axis {font-size:10px}
 .quadrant-top-axis>span:last-child {display:none}
 .quadrant-editorial h2 {font-size:34px}
 .quadrant-editorial .quadrant-reading p {font-size:14px}
 .quadrant-carousel-controls {gap:5px;flex-wrap:wrap;margin-top:24px}
 .quadrant-treatment-buttons {gap:0}
 .quadrant-treatment-buttons button {padding:8px 6px;font-size:11px}
 .quadrant-treatment-buttons button span {display:none}
 .quadrant-counter {flex-basis:100%;text-align:center;margin-top:6px}
 .human-quadrant[data-treatment=sculpted] .quadrant-plot::before {inset:-8px -2px -8px -8px;border-radius:16px 80px 80px 16px;box-shadow:8px 0 0 #acb8e6,16px 0 0 var(--treatment-blue)}
 .human-quadrant[data-treatment=sculpted] .quadrant-cross {border-radius:16px 80px 80px 16px}
 .human-quadrant[data-treatment=grid] .quadrant-label {font-size:10px;letter-spacing:0}
 .quadrant-mesh {inset:-18px -12px;width:calc(100% + 24px);height:calc(100% + 36px)}
}

/* Product identities and soft scope bubbles — owner revision. */
.human-quadrant .quadrant-reading[hidden]{display:none}
.human-quadrant[data-treatment] .quadrant-point{width:30px;height:30px;border:0;outline:0;background:var(--project-color);opacity:.42;box-shadow:none;border-radius:50%;animation:scope-breathe 4.8s ease-in-out infinite}
.human-quadrant .quadrant-project[data-bridge="true"] .quadrant-point{width:40px;height:40px;animation:scope-breathe-human 3.6s ease-in-out infinite}
.human-quadrant .quadrant-project[aria-pressed="true"] .quadrant-point{opacity:.65;box-shadow:0 0 24px color-mix(in srgb,var(--project-color) 22%,transparent)}
.human-quadrant[data-treatment="sculpted"] .quadrant-plot{border:1px solid #929b91;border-radius:80px 0 0 80px;background:transparent}
.human-quadrant[data-treatment="sculpted"] .quadrant-plot::before{display:none}
.human-quadrant[data-treatment="sculpted"] .quadrant-cross{border-radius:80px 0 0 80px}
.human-quadrant[data-treatment="sculpted"] .quadrant-label{color:var(--map-ink);background:var(--map-canvas)}
@keyframes scope-breathe{0%,100%{transform:scale(.94)}50%{transform:scale(1.08)}}
@keyframes scope-breathe-human{0%,100%{transform:scale(.88)}50%{transform:scale(1.18)}}
.world-pulse-view .audience-controls,.world-pulse-view .work-range{display:none!important}
.world-pulse-view .concept-intent{max-width:720px;margin:32px auto 28px;font-size:clamp(30px,3.3vw,44px);line-height:1.18;text-wrap:balance}
.world-pulse-stage{position:relative;width:min(100%,980px);aspect-ratio:838/350;margin:0 auto;isolation:isolate}
.world-pulse-land{position:absolute;inset:6% 0;width:100%;height:88%;overflow:visible}
.world-pulse-nodes{position:absolute;inset:6% 0}
.world-pulse-node{position:absolute;left:var(--wx);top:var(--wy);width:48px;height:48px;transform:translate(-50%,-50%);border:0;background:none;padding:0;cursor:pointer;z-index:1}
.world-pulse-bubble{position:absolute;inset:8px;border-radius:50%;background:var(--bubble-color);opacity:.32;animation:world-breathe 3.8s ease-in-out infinite;animation-delay:var(--delay);box-shadow:0 0 0 10px color-mix(in srgb,var(--bubble-color) 10%,transparent)}
.world-pulse-node img{position:absolute;left:50%;top:50%;width:150px;max-width:none;height:auto;transform:translate(-50%,-50%) scale(.15);opacity:0;border-radius:4px;pointer-events:none;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .3s;box-shadow:0 8px 30px #23372b18}
.world-pulse-node.is-emerging{z-index:4}
.world-pulse-node.is-emerging img{opacity:1;transform:translate(-50%,-65%) scale(1)}
.world-pulse-node.is-emerging .world-pulse-bubble{opacity:.6;inset:0}
.world-pulse-node:focus-visible{outline:2px solid var(--bubble-color);outline-offset:5px;border-radius:50%}
.world-pulse-toggle{display:block;margin:12px auto 0;min-height:44px;padding:0 14px;border:0;background:none;text-decoration:underline;text-underline-offset:5px;font:12px Geist,sans-serif;color:var(--map-ink);cursor:pointer}
.world-pulse-view .audience-map-caption{display:block;text-align:center;font-size:10px;opacity:.55;margin-top:2px}
.motion-paused .world-pulse-bubble{animation-play-state:paused}
@keyframes world-breathe{0%,100%{transform:scale(.7);opacity:.2}50%{transform:scale(1.35);opacity:.5}}
@media(max-width:760px){.world-pulse-stage{aspect-ratio:838/430}.world-pulse-node img{width:94px}.world-pulse-node{width:36px;height:44px}.world-pulse-bubble{inset:12px 8px}.human-quadrant[data-treatment] .quadrant-point{width:24px;height:24px}.human-quadrant .quadrant-project[data-bridge="true"] .quadrant-point{width:32px;height:32px}}
@media(prefers-reduced-motion:reduce){.human-quadrant[data-treatment] .quadrant-point,.world-pulse-bubble{animation:none!important}.world-pulse-node img{transition:none}}

/* A single deliberate reveal; small, still land clusters provide context. */
.world-pulse-stage{aspect-ratio:838/310;margin-top:72px}
.world-pulse-land{inset:0;height:100%}
.world-pulse-nodes{inset:0}
.world-pulse-bubble{inset:20px;opacity:.36;animation:none;box-shadow:none}
.world-pulse-node img{top:0;transform:translate(-50%,-100%) translateY(-18px) scale(.92);opacity:0;transition:none;transform-origin:50% 100%}
.world-pulse-node.is-emerging .world-pulse-bubble{inset:20px;opacity:.36;animation:world-single-bubble 4.4s cubic-bezier(.45,0,.25,1) both}
.world-pulse-node.is-emerging img{animation:world-single-preview 4.4s cubic-bezier(.22,.7,.25,1) both}
.world-pulse-node.is-held .world-pulse-bubble{animation:none;transform:scale(3);opacity:.48}
.world-pulse-node.is-held img{animation:none;opacity:1;transform:translate(-50%,-100%) translateY(-18px) scale(1)}
.motion-paused .world-pulse-node .world-pulse-bubble,.motion-paused .world-pulse-node img{animation-play-state:paused}
@keyframes world-single-bubble{0%,100%{transform:scale(1);opacity:.36}22%,67%{transform:scale(3.6);opacity:.48}88%{transform:scale(1);opacity:.36}}
@keyframes world-single-preview{0%,17%,100%{opacity:0;transform:translate(-50%,-100%) translateY(-8px) scale(.88)}30%,68%{opacity:1;transform:translate(-50%,-100%) translateY(-18px) scale(1)}87%{opacity:0;transform:translate(-50%,-100%) translateY(-26px) scale(.96)}}
@media(max-width:760px){.world-pulse-stage{aspect-ratio:838/310;margin-top:65px}.world-pulse-bubble,.world-pulse-node.is-emerging .world-pulse-bubble{inset:19px 15px}.world-pulse-node img{width:88px}}
@media(prefers-reduced-motion:reduce){.world-pulse-node.is-emerging img{animation:none;opacity:1;transform:translate(-50%,-100%) translateY(-18px)}.world-pulse-node.is-emerging .world-pulse-bubble{animation:none;transform:scale(2)}}

/* Denser global field and a more legible product reveal. */
.world-pulse-node img{width:240px}
@media(max-width:760px){.world-pulse-node img{width:128px}.world-pulse-stage{margin-top:88px}}

/* Reference-sized scattered circles, with room for each continent to read. */
.world-pulse-stage{width:min(100%,1080px)}

/* Smaller unmasked dots; strong selected reveal and a travelling mobile camera. */
.world-pulse-camera{position:absolute;inset:0}
.world-pulse-node img{width:280px;box-shadow:0 10px 32px #23372b25}
.world-pulse-node.is-held .world-pulse-bubble{transform:scale(4.5);opacity:1}
@keyframes world-single-bubble{0%,100%{transform:scale(1);opacity:.5}22%,67%{transform:scale(4.5);opacity:1}88%{transform:scale(1);opacity:.5}}
@media(max-width:760px){
 .world-pulse-stage{height:380px;aspect-ratio:auto;margin-top:20px;overflow:hidden}
 .world-pulse-camera{inset:auto;width:720px;height:266.35px;left:0;top:0;transition:transform 1.1s cubic-bezier(.45,0,.2,1);will-change:transform}
 .world-pulse-node img{width:196px}
 .world-pulse-node{width:44px;height:44px}
 .world-pulse-bubble,.world-pulse-node.is-emerging .world-pulse-bubble{inset:18px}
}
@media(prefers-reduced-motion:reduce){.world-pulse-camera{transition:none}.world-pulse-node.is-emerging .world-pulse-bubble{opacity:1}}

/* Keep the reveal close to its circle; reserve the headline's reading space. */
.world-pulse-node img,.world-pulse-node.is-held img{transform:translate(-50%,-100%) translateY(-4px) scale(1)}
@keyframes world-single-preview{0%,17%,100%{opacity:0;transform:translate(-50%,-100%) translateY(4px) scale(.9)}30%,68%{opacity:1;transform:translate(-50%,-100%) translateY(-4px) scale(1)}87%{opacity:0;transform:translate(-50%,-100%) translateY(-10px) scale(.97)}}
@media(prefers-reduced-motion:reduce){.world-pulse-node.is-emerging img{transform:translate(-50%,-100%) translateY(-4px)}}

/* Main Work hero: compact first viewport and local preview collision handling. */
.work-main-map .world-pulse-toggle{margin:0 auto;width:44px;height:44px;border:1px solid #bfc5b9;border-radius:50%;text-decoration:none;font-size:16px;padding:0}
.world-pulse-node img{left:var(--preview-left,50%);top:var(--preview-top,0px)}
.world-pulse-node img,.world-pulse-node.is-held img{transform:translate(var(--preview-x,-50%),var(--preview-y,-100%)) translateY(var(--preview-gap,-4px)) scale(1)}
@keyframes world-single-preview{0%,17%,100%{opacity:0;transform:translate(var(--preview-x,-50%),var(--preview-y,-100%)) translateY(var(--preview-gap,-4px)) scale(.9)}30%,68%{opacity:1;transform:translate(var(--preview-x,-50%),var(--preview-y,-100%)) translateY(var(--preview-gap,-4px)) scale(1)}87%{opacity:0;transform:translate(var(--preview-x,-50%),var(--preview-y,-100%)) translateY(var(--preview-gap,-4px)) scale(.97)}}
@media(prefers-reduced-motion:reduce){.world-pulse-node.is-emerging img{transform:translate(var(--preview-x,-50%),var(--preview-y,-100%)) translateY(var(--preview-gap,-4px))}}

/* Preserve page typography and positions; adjust only the map stage. */
.work-main-map .world-pulse-stage{margin-top:28px;height:clamp(220px,calc(100svh - 500px),300px);aspect-ratio:auto}
@media(max-width:760px){.work-main-map .world-pulse-stage{margin-top:24px;height:300px}}

/* Faster, readable opening atlas cycle; the lower journey contains no dots. */
.world-pulse-node.is-emerging .world-pulse-bubble,.world-pulse-node.is-emerging img{animation-duration:3s}



.work-main-map .world-pulse-stage{margin-top:-22px}@media(max-width:760px){.work-main-map .world-pulse-stage{margin-top:-26px}}.world-pulse-node.is-emerging .world-pulse-bubble,.world-pulse-node.is-emerging img{animation-duration:1.9s}
