/* A living cultural atlas. Same palette, same sections, clearer hierarchy. */
body { background: #fff; isolation: isolate; }
[hidden] { display: none !important; }
button { cursor: pointer; }
.backdrop { display: none; }
#ambient-wave {
  position: fixed; inset: 0; width: 100%; height: 100%; z-index: -1;
  pointer-events: none;
  background: radial-gradient(ellipse at 6% 32%, #ffe2dfb0, transparent 52%), radial-gradient(ellipse at 95% 80%, #ffdedb99, transparent 55%), #fff;
}
.section, .band { background: transparent; }
.section--hairline { border-color: #dfd8d340; }
.section { padding-block: clamp(72px, 8vw, 116px); }
.eyebrow { font-size: .75rem; letter-spacing: .15em; }
.mock__caption { font-size: .75rem; letter-spacing: .06em; color: #73737b; }
.lede { font-size: clamp(1.0625rem, 1.5vw, 1.25rem); line-height: 1.7; }
.masthead { background: #fffdfbe6; }
.masthead[data-scrolled='true'] { background: #fffdfbf2; }
.masthead__nav .navlink--featured {
  min-height: 38px;
  padding-inline: 14px;
  border: 1px solid rgba(179, 38, 30, .14);
  border-radius: 999px;
  background: rgba(211, 47, 47, .065);
  color: #30282a;
  font-weight: 700;
  transition: color .18s var(--ease), background-color .18s var(--ease), border-color .18s var(--ease), transform .18s var(--ease);
}
.masthead__nav .navlink--featured::after { display: none; }
.masthead__nav .navlink--featured:hover {
  border-color: rgba(179, 38, 30, .28);
  background: rgba(211, 47, 47, .11);
  color: #9f251f;
  transform: translateY(-1px);
}
.hero { padding-block: clamp(30px, 4vw, 58px) clamp(60px, 6vw, 90px); }
.hero__top { box-shadow: 0 30px 65px -42px #25191bb3; }
.hero .display--hero { max-width: 11ch; font-size: clamp(3rem, 4.5vw, 4.65rem); }
.hero__lede { max-width: 39ch; }
.hero__coverage-note { max-width: 55ch; margin-top: 20px; padding-top: 17px; border-top: 1px solid #d9ceca; color: var(--ink-2); font-size: .875rem; line-height: 1.5; }
.hero__actions .btn--coverage { max-width: 260px; line-height: 1.25; }
.hero .hero__trust { font-size: .75rem; gap: 12px 20px; }
.hero .hero__trust li { flex-wrap: wrap; }
@media (min-width: 1024px) {
  .hero .hero__coverage-note { border-top-color: rgba(255,255,255,.13); color: rgba(255,255,255,.82); }
  .hero__art .event-carousel { display: flex; flex-direction: column; }
  .hero__art .event-carousel__viewport { flex: 1 1 auto; min-height: 500px; aspect-ratio: auto; }
}
.event-carousel__sample { font-size: .8125rem; letter-spacing: .01em; color: rgba(255,255,255,.82); }
.event-carousel__topline { font-size: .75rem; letter-spacing: .04em; }
.event-slide__genre { font-size: .75rem; }
.event-slide p { font-size: .875rem; }
.event-slide:not([data-active]) .event-slide__meta { visibility: hidden; }
.event-carousel__controls { grid-template-columns: 40px minmax(70px, 1fr) auto 40px 40px; gap: 8px; }
.event-carousel__arrow, .event-carousel__pause { width: 40px; height: 40px; }
.event-carousel__pause { color: #fff; border: 1px solid #ffffff38; border-radius: 50%; font-size: .875rem; }
.event-carousel__dots { gap: 7px; }
.event-carousel__dots button { overflow: visible; height: 32px; width: 20px; background: none; border-radius: 0; }
.event-carousel__dots button::before { content: ''; position: absolute; inset: 14px 0; height: 3px; border-radius: 3px; background: #ffffff40; }
.event-carousel__dots button::after { inset: 14px 0; height: 3px; animation: none !important; }
.event-carousel__dots button[data-on] { width: 64px; background: none; }
.event-carousel__dots button[data-on]::after { transform: scaleX(var(--slide-progress, 0)); }
.event-carousel__count { font-size: .75rem; }

/* The existing data layer is an understated product index. */
.band { border-block: 1px solid #d9cfca80; padding-block: 28px 24px; }
.band .shell { display: grid; grid-template-columns: 150px minmax(0,1fr); align-items: center; gap: 12px 40px; }
.band .eyebrow { margin: 7px 0 0; }
.capability-strip { margin: 0; gap: 24px; }
.capability-strip .kpi { padding-left: 24px; border-left: 1px solid #d6ceca; }
.capability-index { display: block; font: .6875rem var(--font-mono); color: #b3261e; letter-spacing: .07em; }
.capability-strip .kpi__fig { font: 700 clamp(1.7rem, 2.6vw, 2.6rem)/1.2 var(--font-display); color: #191a1e; margin: 0; letter-spacing: -.02em; }
.capability-strip .kpi__label { max-width: 25ch; margin-top: 10px; font-size: .875rem; line-height: 1.55; text-transform: none; letter-spacing: 0; }
.band__note { grid-column: 2; margin: 8px 0 0; padding-left: 24px; font-size: .75rem; color: #777178; }

/* Give local venues a tangible place before the evidence. */
#gap .split { align-items: center; }
.notes { margin-top: 24px; }
.notes li { padding-block: 13px; border-bottom: 1px solid #e9ded9; }
.notes h4 { font-size: .9375rem; font-weight: 560; }
.coverage-story { margin: 0; padding: 28px 32px; background: #fffffff0; border: 1px solid #e2dcd7; border-radius: 16px; box-shadow: 0 22px 50px -38px #5b333940; }
.coverage-story__label { display: flex; align-items: center; gap: 9px; color: #a92723; font: 600 .75rem var(--font-mono); letter-spacing: .07em; margin-bottom: 22px; }
.signal-dot { display: inline-block; width: 6px; height: 6px; background: #d32f2f; border-radius: 50%; box-shadow: 0 0 0 5px #d32f2f14; }
.coverage-story__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid #ece6e1; padding: 15px 0; font-size: .9375rem; }
.coverage-story__row > span + span { font-size: .75rem; color: #92858a; white-space: nowrap; }
.coverage-story figcaption { margin-top: 22px; font: 700 clamp(1.6rem, 2.8vw, 2.4rem)/1.25 var(--font-display); text-transform: uppercase; }
.coverage-story figcaption strong { color: #b3261e; font-weight: inherit; }
.impact-intro { margin-top: 76px; display: flex; justify-content: space-between; gap: 20px; padding-bottom: 20px; border-bottom: 1px solid #dcd3cf; }
.impact-intro > p { font-size: .75rem; font-weight: 750; letter-spacing: .13em; }
.impact-intro > span { font-size: .875rem; color: #6f6469; }
.gap-heading { max-width: 830px; margin-bottom: 42px; }
.gap-heading .lede { max-width: 52ch; }
.impact-evidence { margin-top: 0; padding-top: 0; gap: 0; border: 0; border-radius: 16px; overflow: hidden; background: #141416; }
.impact-frame { --edge-reach: 24px; position: relative; isolation: isolate; margin-bottom: 36px; }
.impact-edge { position: absolute; left: calc(-1 * var(--edge-reach)); top: calc(-1 * var(--edge-reach)); width: calc(100% + 2 * var(--edge-reach)); height: calc(100% + 2 * var(--edge-reach)); pointer-events: none; z-index: -1; }
.impact-frame[data-edge-ready] .impact-evidence,
.impact-frame[data-edge-ready] .impact-stat { background: transparent; }
@media (max-width: 700px) { .impact-frame { --edge-reach: 13px; margin-bottom: 26px; } }
.impact-stat { display: flex; flex-direction: column; position: relative; padding: 32px clamp(24px,3vw,42px); color: white; background: radial-gradient(ellipse at 0 100%, #66262542, transparent 65%); }
.impact-stat + .impact-stat { border-left: 1px solid #ffffff24; }
.impact-stat__stage { color: #e5aaa6; font: .6875rem var(--font-mono); letter-spacing: .06em; }
.impact-evidence .impact-stat__qualifier { margin: 0; color: #d1bdbc; font-size: 1rem; }
.impact-evidence .evidence__fig { margin: 0; color: #fff; font: 700 clamp(5.5rem,8vw,7rem)/1.1 var(--font-display); letter-spacing: -.055em; }
.impact-evidence .evidence__fig > span { font-size: .5em; vertical-align: top; line-height: 1.8; margin-left: 7px; }
.impact-evidence .impact-stat__description { min-height: 0; max-width: 29ch; font-size: 1rem; color: #ded4d5; line-height: 1.6; margin-top: 18px; }
.impact-stat__bars { height: 24px; margin-top: 28px; background: repeating-linear-gradient(90deg, #f5655d 0 3px, transparent 3px 8px); mask-image: linear-gradient(90deg, #000, #0003); width: 100%; opacity: .55; }
.impact-stat__meaning { margin-top: 20px; font-size: .8125rem; color: #e2b8b3; }
.impact-source { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-top: 18px; font-size: .75rem; line-height: 1.6; color: #7a6e70; }
.impact-source a { flex: 0 0 auto; color: #924540; border-bottom: 1px solid #cba8a3; }
.impact-source > span { max-width: 63ch; }

/* A visible progression inside the existing mechanism section. */
#how { background: #ffffff50; }
.steps { gap: 0; border-block: 1px solid #e2dcd6; padding-block: 0; }
.step { display: grid; grid-template-columns: 1fr auto; align-content: start; gap: 20px 16px; padding: 28px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.step + .step { border-left: 1px solid #e2dcd6; }
.step::before, .step::after { display: none; }
.step__n { color: #d3aaa7; font-size: 3rem; line-height: 1; font-family: var(--font-display); }
.step__icon { margin: 0; align-self: center; color: #b3261e; }
.step h3 { grid-column: 1 / -1; margin: 0; font-size: 1.125rem; max-width: 22ch; }
.step p { font-size: 1rem; min-height: 7em; }
.step-detail { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 22px; }
.step-detail span { font-size: .6875rem; padding: 5px 8px; border: 1px solid #e3d7d0; border-radius: 4px; color: #7b6164; }
.mechanism-note { width: fit-content; max-width: 100%; margin: 22px auto 0; color: #6f6469; font-size: .875rem; line-height: 1.5; text-align: center; }
.mechanism-note a { color: #a92723; font-weight: 700; text-decoration: underline; text-decoration-color: #d8aaa5; text-underline-offset: 4px; }
.mechanism-note a span { display: inline-block; margin-left: 3px; transition: transform .18s var(--ease); }
.mechanism-note a:hover span { transform: translateX(3px); }

/* An atlas with photographic landmarks; content is the map's focal point. */
.live-surface__layout { align-items: center; }
.event-browser { border-color: #d3c9c5; box-shadow: 0 25px 55px -30px #32252750; }
.event-browser__brand { font-size: .75rem; letter-spacing: .065em; }
.view-switch { grid-template-columns: repeat(3, 1fr); }
.view-switch button { font-size: .8125rem; height: 36px; }
.event-browser__filters span, .event-browser__filters b { font-size: .75rem; }
.event-browser__view { height: 555px; }
.event-browser__map { isolation: isolate; background: #eef0f1; }
.atlas-basemap { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 62% 50%; filter: invert(1) contrast(1.08) brightness(1.06); }
.atlas-location { position: absolute; left: 16px; top: 16px; z-index: 2; padding: 9px 12px; background: #fffffff2; border: 1px solid #d7d9dc; border-radius: 6px; box-shadow: 0 3px 10px #2021240d; font: 700 .75rem var(--font-mono); letter-spacing: .08em; }
.atlas-location span { display: block; margin-top: 3px; font: 400 .75rem var(--font-text); letter-spacing: 0; color: #707078; }
.atlas-attribution { position: absolute; z-index: 6; bottom: 0; right: 0; margin: 0; padding: 5px 8px; background: #ffffffed; color: #4d5159; font: 400 .75rem/1.2 var(--font-text); }
.atlas-attribution a { text-decoration: underline; text-underline-offset: 2px; }
.event-browser__map::after { content: ''; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 65px #f8f5f238; }
.city-map__district { font-size: .625rem; color: #777677; z-index: 1; background: #f8f5efaa; padding: 4px 6px; }
.city-map__district:nth-of-type(1) { left: 5% !important; top: 8% !important; }
.city-map__district:nth-of-type(2) { left: 30% !important; top: 62% !important; }
.atlas-water-label { position: absolute; right: 8%; top: 48%; font: .6875rem var(--font-mono); letter-spacing: .16em; color: #739293; writing-mode: vertical-rl; transform: rotate(-13deg); }
.atlas-note { position: absolute; bottom: 8px; left: 16px; font: .5625rem var(--font-mono); color: #687e81; z-index: 2; }
.photo-pin { display: block; width: 110px; min-height: 0; padding: 4px; border: 1px solid #fff; border-radius: 9px; background: #fff; color: #202024; box-shadow: 0 8px 20px #3b262a30, 0 1px 3px #3b262a20; transition: transform .2s, box-shadow .2s; }
.photo-pin::after { content: ''; position: absolute; left: calc(50% - 5px); bottom: -6px; width: 10px; height: 10px; background: inherit; transform: rotate(45deg); border-right: 1px solid white; border-bottom: 1px solid white; }
.photo-pin img { width: 100%; height: 58px; object-fit: cover; border-radius: 5px; }
.photo-pin > span { display: block; text-align: left; padding: 5px 3px 3px; }
.photo-pin strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .6875rem; font-weight: 700; }
.photo-pin small { display: block; color: #8e5452; font-size: .625rem; }
.photo-pin[data-on], .photo-pin:hover { background: #b3261e; color: #fff; border-color: #fff; box-shadow: 0 10px 26px #9c282751; z-index: 5; transform: translate(-50%,-50%) scale(1.035); }
.photo-pin[data-on] small, .photo-pin:hover small { color: #ffe1dc; }
.photo-pin[data-pin='0'] { left: 22% !important; top: 32% !important; }
.photo-pin[data-pin='3'] { left: 52% !important; top: 20% !important; }
.photo-pin[data-pin='6'] { left: 72% !important; top: 45% !important; }
.photo-pin[data-pin='9'] { left: 24% !important; top: 60% !important; }
.photo-pin[data-pin='12'] { left: 36% !important; top: 10% !important; }
.photo-pin[data-pin='9'], .photo-pin[data-pin='12'] { width: 54px; padding: 3px; border-radius: 9px; }
.photo-pin[data-pin='9'] img, .photo-pin[data-pin='12'] img { height: 45px; }
.photo-pin[data-pin='9'] > span, .photo-pin[data-pin='12'] > span { display: none; }
.map-event { bottom: 30px; left: 16px; right: 16px; grid-template-columns: 128px minmax(0,1fr); min-height: 124px; background: #141416; border: 1px solid #ffffff50; box-shadow: 0 16px 30px -10px #24222b50; }
.map-event img { width: 128px; max-height: 150px; }
.map-event__copy { padding: 16px; }
.map-event__copy span { font-size: .6875rem; }
.map-event__copy h3 { font-size: 1.125rem; line-height: 1.25; }
.map-event__copy p { font-size: .75rem; color: #d0c6c8; }
.event-browser__powered { font-size: .75rem; color: #73717a; background: #fff; }
.stream-event h3 { font-size: .9375rem; }
.stream-event p, .stream-event__time { font-size: .75rem; }
.stream-event { min-height: 103px; }
.event-stream { overflow-y: auto; scrollbar-width: thin; }
.event-stream:focus-within .event-stream__track { animation-play-state: paused; }

/* The included Discovery Assistant is a first-class third widget mode. */
.event-browser__ask { overflow: auto; padding: clamp(20px, 4vw, 38px); background: radial-gradient(circle at 100% 0, #f4d8d433, transparent 42%), #f5f5f3; }
.discovery-assistant { display: grid; gap: 18px; max-width: 560px; margin-inline: auto; }
.discovery-assistant__identity { display: flex; align-items: center; gap: 12px; color: #242126; }
.discovery-assistant__identity > span { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #b3261e; color: #fff; box-shadow: 0 0 0 7px #b3261e12; }
.discovery-assistant__identity b, .discovery-assistant__identity small { display: block; }
.discovery-assistant__identity b { font-size: .875rem; }
.discovery-assistant__identity small { margin-top: 2px; color: #7a7075; font-size: .6875rem; }
.discovery-assistant__query { justify-self: end; max-width: 82%; margin: 5px 0 0; padding: 13px 16px; border-radius: 14px 14px 3px 14px; background: #242126; color: #fff; font-size: .9375rem; line-height: 1.45; box-shadow: 0 10px 24px -18px #111; }
.discovery-assistant__answer { display: grid; gap: 8px; padding: 16px; border: 1px solid #ded8d4; border-radius: 4px 15px 15px 15px; background: #fff; box-shadow: 0 18px 38px -32px #322527; }
.discovery-assistant__answer > p { display: flex; align-items: center; gap: 8px; margin: 0 0 5px; color: #39333a; font-size: .8125rem; font-weight: 700; }
.discovery-assistant__answer > p span { color: #b3261e; }
.discovery-assistant__answer button { display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: 12px; min-height: 68px; padding: 10px 12px; border: 1px solid #ece7e4; border-radius: 8px; background: #fbfaf9; color: #211f23; text-align: left; transition: border-color .2s, transform .2s, background .2s; }
.discovery-assistant__answer time { color: #a92723; font: 700 .6875rem var(--font-mono); }
.discovery-assistant__answer b, .discovery-assistant__answer small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.discovery-assistant__answer b { font-size: .8125rem; }
.discovery-assistant__answer small { margin-top: 4px; color: #756d72; font-size: .6875rem; }
.discovery-assistant__answer i { color: #a92723; font-style: normal; }
.discovery-assistant__note { margin: -4px 0 0; color: #84797e; font-size: .6875rem; text-align: center; }
@media (hover: hover) { .discovery-assistant__answer button:hover { border-color: #d7aaa6; background: #fff7f5; transform: translateX(2px); } }

/* One-line install and a restrained, readable response inspector. */
#integration { background: #ffffff60; }
.embed { border-radius: 12px; border-color: #d6cdc8; box-shadow: 0 16px 40px -30px #38212660; }
.embed__label { background: #f0eae6; }
.embed__facts { gap: 24px; }
.embed__facts li { padding-top: 20px; border-top: 1px solid #dbd0ca; }
.embed__facts b { font-size: 1rem; }
.embed__facts span { font-size: .9375rem; }
.integration-example-note { margin: 14px 0 0; color: #645b60; font-size: .875rem; line-height: 1.5; }
.api-block .integration-example-note { max-width: 28rem; }
.api-disclosure { margin-top: 38px; border: 1px solid #d6cdc8; border-radius: 12px; background: #fff9; overflow: clip; }
.api-disclosure > summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 26px; cursor: pointer; list-style: none; }
.api-disclosure > summary::-webkit-details-marker { display: none; }
.api-disclosure > summary span, .api-disclosure > summary small, .api-disclosure > summary b { display: block; }
.api-disclosure > summary small { margin-bottom: 5px; color: #a92723; font: 700 .6875rem var(--font-mono); letter-spacing: .1em; text-transform: uppercase; }
.api-disclosure > summary b { font-size: 1rem; }
.api-disclosure > summary i { display: grid; place-items: center; flex: 0 0 auto; width: 34px; height: 34px; border: 1px solid #d9ceca; border-radius: 50%; color: #a92723; font: 400 1.4rem/1 var(--font-text); transition: transform .2s; }
.api-disclosure[open] > summary i { transform: rotate(45deg); }
.api-disclosure[open] > summary { border-bottom: 1px solid #e4dcd8; }
.api-block { align-items: center; margin-top: 0; padding: 30px 26px; }
#apicode { overflow: hidden; border: 1px solid #353138; border-radius: 14px; background: #17171c; box-shadow: 0 25px 45px -30px #1b111e75; color: #e8e4e8; }
.api-inspector-bar { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px 18px; border-bottom: 1px solid #ffffff0f; background: #222126; color: #a59eaa; font: .75rem var(--font-mono); }
.api-inspector-bar > span:first-child { display: flex; align-items: center; gap: 9px; color: #e1d8de; }
.api-inspector-bar i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: #f58078; }
#integration #apicode .code__tabs { background: #1c1b20; border-bottom: 1px solid #ffffff12; padding-inline: 10px; }
#apicode .code__tab { color: #aaa2ae; min-height: 46px; padding-inline: 17px; font-size: .8125rem; }
#apicode .code__tab[aria-selected='true'] { color: #fff; background: #ffffff05; border-bottom: 2px solid #ef6962; }
#apicode .code__pane { padding: 16px 0; margin: 0; height: 310px; overflow: auto; scrollbar-color: #57505d #17171c; scrollbar-width: thin; background: #17171c; font: .8125rem/1.85 var(--font-mono); tab-size: 2; }
#apicode .code__pane code { white-space: normal; min-width: max-content; }
.json-line { display: flex; min-height: 1.85em; padding-right: 22px; }
.json-line:hover { background: #ffffff06; }
.json-line__number { flex: 0 0 44px; width: 44px; user-select: none; color: #665e6d; text-align: right; padding-right: 14px; margin-right: 14px; border-right: 1px solid #ffffff08; }
.json-line__content { display: block; white-space: pre; }
#apicode .c-k { color: #e1d7e4; }
#apicode .c-s, #apicode .c-u { color: #dba99e; }
#apicode .c-n, #apicode .c-m { color: #ff7d74; }
#apicode .c-p { color: #847b8c; }
.api-inspector-footer { display: flex; justify-content: space-between; gap: 15px; padding: 11px 17px; border-top: 1px solid #ffffff14; font: .6875rem var(--font-mono); color: #968a9a; }
.api-inspector-footer b { color: #ed8a7f; font-weight: 500; }
.ticks li { font-size: .9375rem; }

/* Questions stay calm; the final invitation gets the closing emphasis. */
.qa { border-top: 1px solid #d9ceca; }
.qa details { border-bottom: 1px solid #d9ceca; padding-block: 2px; }
.qa summary { font-size: 1.0625rem; padding-block: 21px; }
.qa details[open],
.qa details[open] p { background: transparent; }
.qa details p { font-size: 1rem; line-height: 1.75; }
#faq .lede { margin-top: 18px; max-width: 34ch; }
.faq-position { margin: 22px 0 0; color: var(--red-lit); }
.faq-note { margin-top: 18px; font-size: .75rem; line-height: 1.6; color: #7a6e70; max-width: 63ch; }
/* Keep the widget example and its visitor-experience link together. */
.widget-option__preview { margin-top: 16px; }
.api-block .embed { margin: 0; min-width: 0; }
.api-block .embed__code { font-size: .875rem; }
.api-block--stacked { display: grid; gap: 22px; }
.api-block--stacked .eyebrow { margin-bottom: 12px; }
.closer { position: relative; background: #fff7; border-top: 1px solid #e1d6d0; padding-block: clamp(76px,9vw,130px); }
.closer::before, .closer::after { display: none; }
.closer .display { max-width: 24ch; }
.closer__lede { max-width: 52ch; }
.contact { font-size: .875rem; }
.footer { background: #fffffff0; }

/* Native dialog: red invitation, white form. */
.dialog-open { overflow: hidden; }
.demo-dialog { width: min(560px, calc(100% - 32px)); max-height: calc(100dvh - 32px); padding: 0; border: 0; border-radius: 18px; background: #fff; color: #1b191c; box-shadow: 0 40px 110px #0006; overflow: auto; overscroll-behavior: contain; }
.demo-dialog::backdrop { background: #10101499; backdrop-filter: blur(7px); }
.demo-dialog[open] { animation: dialog-arrive .25s ease both; }
.demo-dialog__banner { position: relative; padding: 30px 34px 28px; color: white; background: linear-gradient(120deg,#ba231f,#df3630); overflow: hidden; }
.demo-dialog__banner::after { content: ''; position: absolute; width: 260px; height: 260px; top: -80px; right: -80px; border: 1px solid #ffffff25; border-radius: 50%; box-shadow: 0 0 0 30px #ffffff08, 0 0 0 60px #ffffff08; pointer-events: none; }
.demo-dialog__eyebrow { font: .6875rem var(--font-mono); letter-spacing: .12em; color: #ffe3df; }
.demo-dialog__banner h2 { margin-top: 23px; font: 700 clamp(2.1rem,6vw,3rem)/1.05 var(--font-display); text-transform: uppercase; }
.demo-dialog__banner p { margin-top: 16px; max-width: 35ch; font-size: .9375rem; line-height: 1.55; color: #ffe4df; }
.demo-dialog__close { position: absolute; right: 14px; top: 12px; z-index: 2; width: 44px; height: 44px; border: 1px solid #ffffff60; border-radius: 50%; font: 26px/1 system-ui; }
.demo-form { display: grid; gap: 17px; padding: 26px 34px 30px; }
.demo-form label { display: grid; gap: 7px; font-size: .8125rem; font-weight: 650; }
.demo-form input { width: 100%; min-width: 0; min-height: 48px; padding: 10px 13px; border: 1px solid #dcd5d3; border-radius: 7px; font: 400 1rem var(--font-text); background: #fcfbfa; color: #19171b; }
.demo-form input::placeholder { color: #aaa0a4; }
.demo-form input:focus { outline: 2px solid #d32f2f33; outline-offset: 1px; border-color: #d32f2f; background: #fff; }
.demo-form .btn { margin-top: 5px; width: 100%; min-height: 49px; }
.demo-form__note { text-align: center; font-size: .75rem; color: #85787e; margin-top: -7px; }
.demo-form__result { padding: 14px 16px; border-radius: 8px; border: 1px solid #e7c6be; background: #fff6f2; }
.demo-form__result strong { color: #912c26; font-size: .9375rem; }
.demo-form__result p { color: #706068; font-size: .8125rem; margin-top: 4px; }
@keyframes dialog-arrive { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }

@media (max-width: 1100px) and (min-width: 1024px) {
  .hero__intro { padding: 32px; }
  .hero .display--hero { font-size: 3rem; }
  .hero__actions { gap: 10px; }
  .hero__actions .btn { font-size: .8125rem; padding-inline: 14px; }
}
@media (max-width: 980px) {
  .band .shell { grid-template-columns: 1fr; gap: 25px; }
  .band__note { grid-column: 1; padding-left: 0; }
  .capability-strip .kpi:first-child { padding-left: 0; border-left: 0; }
  .live-surface__layout > div:first-child { max-width: 650px; }
  .event-browser { max-width: 700px; margin-inline: auto; }
  .coverage-story { margin-top: 12px; }
  .impact-intro { flex-direction: column; gap: 8px; }
  .impact-source { flex-direction: column; gap: 8px; }
}
@media (max-width: 860px) {
  .steps { border-block: 0; }
  .step { border-top: 1px solid #d9ceca; padding-inline: 0; }
  .step + .step { border-left: 0; }
  .step p { min-height: 0; max-width: 50ch; }
  .step-detail { margin-top: 15px; }
}
@media (max-width: 760px) {
  .impact-evidence { display: grid; grid-template-columns: 1fr; }
  .impact-stat { display: grid; grid-template-columns: 108px 1fr; gap: 0 18px; padding: 25px; }
  .impact-stat + .impact-stat { border-left: 0; border-top: 1px solid #ffffff24; }
  .impact-stat__stage { grid-column: 1 / -1; }
  .impact-evidence .impact-stat__qualifier { margin-top: 0; grid-column: 1; grid-row: 1; font-size: .8125rem; }
  .impact-evidence .evidence__fig { grid-column: 1; font-size: 4.6rem; }
  .impact-evidence .impact-stat__description { grid-column: 2; grid-row: 1 / 3; align-self: center; min-height: 0; margin: 0; font-size: 1rem; }
  .impact-stat__bars { display: none; }
  .impact-stat__meaning { grid-column: 2; margin-top: 8px; font-size: .75rem; }
}
@media (max-width: 700px) {
  .hero { padding-top: 0; }
  .hero__top { box-shadow: none; }
  .hero .hero__trust { padding-bottom: 12px; }
  .hero__intro { margin-top: 0; padding-top: 30px; }
  .hero__intro::before { border-radius: 0; background: #ffffffb0; }
  .hero .display--hero { max-width: 12ch; font-size: clamp(2.8rem, 13vw, 4rem); }
  .hero__coverage-note { max-width: 52ch; }
  .hero__actions .btn--coverage { max-width: none; }
  .event-carousel__sample { padding-bottom: 13px; font-size: .75rem; }
  .event-slide p { font-size: .75rem; }
  .event-slide__genre { font-size: .6875rem; }
  .event-carousel__dots button[data-on] { width: 40px; }
  .event-carousel__dots button { width: 13px; }
  .event-carousel__controls { padding-inline: 12px; }
  .capability-strip { grid-template-columns: .7fr .85fr 1.45fr; gap: 12px; }
  .capability-strip .kpi { display: block; padding: 0 0 0 12px; border: 0; border-left: 1px solid #e1d5d0; }
  .capability-strip .kpi:first-child { padding-left: 0; border: 0; }
  .capability-index { grid-column: 1 / -1; font-size: .625rem; }
  .capability-strip .kpi__fig { font-size: clamp(1.25rem, 4.9vw, 1.75rem); }
  .capability-strip .kpi__label { font-size: .8125rem; }
  .band__note { margin: 0; }
  .coverage-story { padding: 24px; }
  .coverage-story__row { font-size: .8125rem; }
  .coverage-story__row > span + span { font-size: .6875rem; }
  .impact-intro { margin-top: 46px; }
  .impact-intro > p { font-size: .6875rem; }
  .event-browser__view { height: 510px; }
  .event-browser__bar { align-items: flex-start; flex-direction: column; }
  .view-switch { width: 100%; }
  .view-switch button { min-width: 0; }
  .event-browser__ask { padding: 18px 12px; }
  .discovery-assistant { gap: 14px; }
  .discovery-assistant__answer { padding: 12px; }
  .discovery-assistant__answer button { grid-template-columns: 58px minmax(0,1fr) auto; gap: 8px; padding-inline: 9px; }
  .photo-pin { width: 94px; }
  .photo-pin img { height: 51px; }
  .photo-pin strong { font-size: .625rem; }
  .photo-pin[data-pin='0'] { left: 20% !important; }
  .photo-pin[data-pin='6'] { left: 74% !important; top: 46% !important; }
  .photo-pin[data-pin='12'] { left: 84% !important; top: 18% !important; }
  .map-event { grid-template-columns: 96px minmax(0,1fr); }
  .map-event img { width: 96px; }
  .map-event__copy { padding: 12px; }
  .map-event__copy h3 { font-size: 1rem; }
  .map-event__copy p { font-size: .6875rem; }
  #apicode .code__pane { font-size: .75rem; }
  .api-inspector-bar { font-size: .6875rem; }
  .api-disclosure > summary { padding: 19px 18px; }
  .api-block { padding: 24px 18px; }
  .demo-dialog__banner { padding: 26px 24px; }
  .demo-form { padding: 22px 24px 26px; }
}
@media (max-width: 480px) {
  .event-carousel__dots { gap: 3px; }
  .event-carousel__dots button { width: 5px; }
  .event-carousel__dots button[data-on] { width: 17px; }
}
@media (prefers-reduced-motion: reduce) {
  .event-stream__track { animation: none !important; }
  .demo-dialog[open] { animation: none; }
}

/* Organization audiences and benefits, using the landing's shared rhythm. */
.audience__heading, .value__heading { max-width: 980px; margin-inline: auto; text-align: center; }
.audience__heading .lede, .value__heading .lede { max-width: 68ch; margin-inline: auto; }
.audience__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 28px; }
.audience-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; margin-top: clamp(32px, 4vw, 48px); padding: 0; list-style: none; }
.audience-card { position: relative; display: flex; align-items: center; gap: 20px; grid-column: span 2; padding: 32px 24px 24px; border: var(--hair) solid var(--line-strong); border-radius: var(--r-md); background: rgba(255,255,255,.68); }
.audience-card:nth-child(n+4) { grid-column: span 3; }
.audience-card__number { position: absolute; top: 10px; left: 14px; font: .6875rem var(--font-mono); color: var(--red-lit); }
.audience-card__icon { flex: 0 0 44px; width: 44px; height: 44px; color: var(--red-lit); }
.audience-card h3 { max-width: 29ch; color: var(--ink); font: 650 1.0625rem/1.35 var(--font-text); }
.audience-card p { margin-top: 7px; color: var(--ink-3); font-size: .875rem; line-height: 1.55; }
.audience__note { margin-top: 24px; color: var(--ink-2); font-size: .9375rem; line-height: 1.6; text-align: center; }
.audience__note span { display: block; margin-top: 4px; color: var(--ink-3); font-size: .75rem; }
.value { background: rgba(255,255,255,.3); }
.value-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); margin-top: clamp(32px, 4vw, 48px); padding: 0; list-style: none; border-block: var(--hair) solid var(--line-strong); }
.value-grid li { padding: 28px; }
.value-grid li + li { border-left: var(--hair) solid var(--line-strong); }
.value-grid__number { display: block; margin-bottom: 20px; font: 700 2rem/1 var(--font-display); color: var(--red-lit); }
.value-grid h3 { max-width: 22ch; font: 650 1.125rem/1.4 var(--font-text); }
.value-grid p { margin-top: 12px; font-size: .9375rem; line-height: 1.65; color: var(--ink-2); }
.value__closing { max-width: 65ch; margin: 28px auto 0; text-align: center; }
.value__closing p:first-child { font-size: 1.125rem; line-height: 1.55; font-weight: 550; }
.value__closing p + p { margin-top: 12px; font-size: .75rem; line-height: 1.6; color: var(--ink-3); }
.service-path { display: grid; grid-template-columns: 1fr 1.15fr .85fr 1.4fr; gap: 32px; margin: 32px 0; padding: 22px 0; border-block: var(--hair) solid var(--line-strong); list-style: none; }
.service-path li { position: relative; }
.service-path li + li::before { content: '→'; position: absolute; left: -25px; top: 17px; color: var(--red-lit); }
.service-path span { display: block; margin-bottom: 6px; color: var(--red-lit); font: .625rem/1.5 var(--font-mono); letter-spacing: .06em; text-transform: uppercase; }
.service-path strong { display: block; font-size: .875rem; font-weight: 650; line-height: 1.5; }
@media (max-width: 1023px) {
  .audience-card { gap: 14px; padding-inline: 18px; }
  .audience-card__icon { flex-basis: 36px; width: 36px; height: 36px; }
  .value-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .value-grid li:nth-child(3) { border-left: 0; }
  .value-grid li:nth-child(n+3) { border-top: var(--hair) solid var(--line-strong); }
}
@media (max-width: 760px) {
  .audience-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
  .audience-card, .audience-card:nth-child(n+4) { grid-column: auto; }
  .audience-card:last-child { grid-column: 1 / -1; }
  .service-path { grid-template-columns: 1fr; gap: 26px; padding: 24px; border: var(--hair) solid var(--line-strong); border-radius: var(--r-md); }
  .service-path li + li::before { content: '↓'; left: 0; top: -24px; }
}
@media (max-width: 540px) {
  .audience__heading, .value__heading { text-align: left; }
  .audience__heading .display, .value__heading .display { text-wrap: pretty; }
  .audience__heading .display br, .value__heading .display br { display: none; }
  .audience__actions { justify-content: flex-start; }
  .audience-grid, .value-grid { grid-template-columns: minmax(0,1fr); }
  .audience-card, .audience-card:nth-child(n+4) { grid-column: auto; padding: 28px 20px 22px; gap: 18px; }
  .audience-card__icon { flex-basis: 40px; width: 40px; height: 40px; }
  .value-grid li { position: relative; padding: 24px 0 24px 48px; }
  .value-grid li + li { border-left: 0; border-top: var(--hair) solid var(--line-strong); }
  .value-grid__number { position: absolute; left: 0; top: 26px; font-size: 1.6rem; }
  .value-grid h3 { max-width: none; }
  .value-grid p { margin-top: 8px; }
}
