/* YOUPOL public site: identity hero, the live week panel with its territory
   rails, the numbered rows of the services, the about/team/contact pages,
   the video and person records. Same language as site-editorial.css: square
   translucent panels, the YOUPOL red for action, no accent stripes. */

/* ---- identity hero --------------------------------------------------- */
.id-hero {position:relative;padding:54px 0 40px}
.id-hero .container {display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.9fr);gap:48px;align-items:start}
.id-hero__overline {display:block;font-size:.86rem;color:#c9a0a6;margin-bottom:18px}
.id-hero__mark {font-size:clamp(3.4rem,8vw,6.6rem);font-weight:700;letter-spacing:-.06em;line-height:.95;margin:0 0 10px;color:#f1efe9}
.id-hero__mark span {color:inherit}
.id-hero__tagline {font-size:clamp(1.35rem,2.4vw,1.9rem);font-weight:500;line-height:1.3;letter-spacing:-.02em;color:#eeede9;margin:0 0 18px;max-width:22ch}
.id-hero__lede {font-size:1.02rem;line-height:1.75;color:#bfc3cc;max-width:62ch;margin:0 0 24px}
.id-hero__lede b {color:#f3e8eb;font-weight:600}
.id-hero__actions {display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.id-hero__actions .btn {padding:12px 20px;font-size:.92rem}
.id-hero__paper {font-size:.86rem;color:#aab0bc;margin-top:18px}
.id-hero__paper a {color:#e9b4b8}
.id-what {border:1px solid #353641;background:rgba(20,23,32,.9);padding:26px 28px;border-radius:4px}
.id-what__title {font-size:.8rem;color:#c9a0a6;margin:0 0 14px}
.id-what ol {list-style:none;margin:0;padding:0}
.id-what li {padding:14px 0;border-top:1px solid #ffffff12}
.id-what li:first-child {border-top:0;padding-top:0}
.id-what__k {display:block;font-size:.74rem;color:#9aa1ae;margin-bottom:4px}
.id-what__h {display:block;font-size:1.02rem;font-weight:600;color:#f1efe9;margin-bottom:5px}
.id-what__h a {color:inherit;text-decoration:none}
.id-what__h a:hover {color:#ff8589}
.id-what p {margin:0;font-size:.88rem;line-height:1.6;color:#b3b7c1}
.id-what__n {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#f3e8eb}
@media (max-width:900px) {.id-hero .container {grid-template-columns:minmax(0,1fr);gap:28px}}

/* ---- the live week panel --------------------------------------------- */
.live {padding:36px 0 46px}
.live__head {display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 24px;margin-bottom:18px}
.live__head h2 {font-size:clamp(1.5rem,2.3vw,2.1rem);margin:0}
.live__meta {font-size:.84rem;color:#aab0bc}
.live__meta a {color:#e9b4b8}
.live__grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.live__cell {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px 22px;min-width:0;display:flex;flex-direction:column}
.live__cell--synth {grid-column:span 4}
.live__cell--themes {grid-column:span 2}
.live__cell--rail {grid-column:span 2}
.live__cell--half {grid-column:span 3}
.live__cell-head {display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.live__cell-head h3 {font-size:.98rem;font-weight:600;margin:0;color:#f1efe9}
.live__cell-head a,.live__cell-foot a {font-size:.8rem;color:#e9b4b8;text-decoration:none;white-space:nowrap}
.live__cell-head a:hover,.live__cell-foot a:hover {color:#ff8589}
.live__cell-sub {font-size:.78rem;color:#9aa1ae;margin:-8px 0 12px}
.live__cell-foot {margin-top:auto;padding-top:12px;font-size:.78rem;color:#9aa1ae}
.live__synth-title {font-size:1.25rem;font-weight:600;line-height:1.35;margin:0 0 10px;color:#f3f1ea;letter-spacing:-.015em}
.live__synth-text {font-size:.96rem;line-height:1.75;color:#c6c9d1;margin:0}
.live__synth-meta {font-size:.76rem;color:#8e95a3;margin-top:12px}
.live__synth-empty {font-size:.94rem;line-height:1.7;color:#b3b7c1;margin:0}
.live__latest {list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.live__latest button {text-align:left;background:#22252b;border:1px solid #3b3d44;color:#e8e6df;padding:9px 11px;border-radius:3px;cursor:pointer;font:inherit;font-size:.86rem;line-height:1.4}
.live__latest button:hover {border-color:#8a4b55}
.live__latest small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.wk-themes {list-style:none;margin:0;padding:0}
.wk-themes li {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 3.2rem;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid #ffffff0d}
.wk-themes li:last-child {border-bottom:0}
.wk-themes a {color:#e8e6df;text-decoration:none;font-size:.86rem;display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wk-themes a:hover {color:#ff8589}
.wk-themes .theme-icon {width:15px;height:15px;flex:none;color:#ff8589}
.wk-themes .bar {height:7px;border-radius:999px;background:#ffffff0c;overflow:hidden}
.wk-themes .bar i {display:block;height:100%;width:0;background:linear-gradient(90deg,#9f2733,#ef5865);transition:width 1s var(--ease-out,ease)}
.bars--on .wk-themes .bar i {width:var(--w)}
.wk-themes .val {font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.8rem;color:#f3e8eb;text-align:right}

/* territory rails: vertical, advancing on their own */
.rail {position:relative;margin:0 -6px;flex:1;min-height:0}
.rail__viewport {height:430px;overflow-y:auto;scroll-snap-type:y proximity;scrollbar-width:thin;padding:0 6px}
.rail__list {list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rail__list li {scroll-snap-align:start}
.rail__fade {position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(180deg,transparent,rgba(20,23,32,.95));pointer-events:none}
.rail__controls {display:flex;align-items:center;gap:8px;margin-top:10px}
.rail__controls button {font:inherit;font-size:.74rem;padding:5px 9px;border-radius:3px;background:#25282b;color:#d9d7d0;border:1px solid #4a4d51;cursor:pointer}
.rail__controls button[aria-pressed="true"] {background:#47212c;border-color:#d85a64;color:#ffe7e7}
.rail__controls span {font-size:.74rem;color:#8e95a3;margin-left:auto}
.rc {display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;align-items:start;border:1px solid #30323a;background:#191c23;padding:10px;border-radius:3px;cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit}
.rc:hover,.rc:focus-visible {border-color:#8a4b55;outline:none}
.rc__thumb {position:relative;aspect-ratio:16/9;background:#262a30;border-radius:2px;overflow:hidden}
.rc__thumb img {width:100%;height:100%;object-fit:cover;display:block}
.rc__thumb--tt {display:flex;align-items:flex-end;padding:6px;font-size:.62rem;line-height:1.25;color:#cfd3db;background:linear-gradient(160deg,#2a2e35,#1a1d23)}
.rc__dur {position:absolute;right:4px;bottom:4px;background:#000c;color:#fff;font-size:.62rem;padding:1px 4px;border-radius:2px;font-family:var(--font-mono)}
.rc__title {font-size:.86rem;font-weight:500;line-height:1.4;color:#eeede9;margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rc__meta {font-size:.72rem;color:#9aa1ae;line-height:1.45;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.rc__meta i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b)}
.rc__flag {font-size:.66rem;padding:1px 6px;border-radius:2px;background:#292c2f;color:#d2d0ca}
.rc__flag--sum {background:#3b1c23;color:#ffd6d6}
.live__people {list-style:none;margin:0;padding:0}
.live__people li {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:center;padding:7px 0;border-bottom:1px solid #ffffff0d}
.live__people li:last-child {border-bottom:0}
.live__people a {color:#e8e6df;text-decoration:none;font-size:.9rem}
.live__people a:hover {color:#ff8589}
.live__people .n {font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.78rem;color:#c9ccd3}
.live__people .split {grid-column:1 / -1;height:5px;margin:0}
.live__args {list-style:none;margin:0;padding:0;counter-reset:arg}
.live__args li {padding:9px 0;border-bottom:1px solid #ffffff0d;font-size:.9rem;line-height:1.5;color:#dcdad3;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}
.live__args li::before {counter-increment:arg;content:counter(arg,decimal-leading-zero);font-family:var(--font-mono);color:#ff8589;font-size:.78rem;padding-top:3px}
.live__args li:last-child {border-bottom:0}
.live__args small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:3px}
.live__feed {list-style:none;margin:0;padding:0}
.live__feed li {padding:8px 0;border-bottom:1px solid #ffffff0d}
.live__feed li:last-child {border-bottom:0}
.live__feed a,.live__feed button {font:inherit;background:none;border:0;padding:0;color:#e8e6df;text-decoration:none;font-size:.88rem;line-height:1.45;text-align:left;cursor:pointer;display:block}
.live__feed a:hover,.live__feed button:hover {color:#ff8589}
.live__feed small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.live__counters {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.live__counter {border:1px solid #30323a;background:#191c23;padding:12px 12px 10px;border-radius:3px}
.live__counter b {display:block;font-size:1.5rem;font-weight:500;color:#f3e8eb;font-family:var(--font-mono);font-variant-numeric:tabular-nums;line-height:1.1}
.live__counter span {display:block;font-size:.72rem;color:#9aa1ae;margin-top:4px;line-height:1.35}
.live__foot {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;font-size:.84rem;color:#aab0bc}
@media (max-width:1100px) {.live__cell--synth,.live__cell--themes,.live__cell--half {grid-column:span 6}.live__cell--rail {grid-column:span 2}}
@media (max-width:760px) {.live__grid {grid-template-columns:minmax(0,1fr)}.live__cell--synth,.live__cell--themes,.live__cell--half,.live__cell--rail {grid-column:span 1}.rail__viewport {height:360px}.live__counters {grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- the base, by territory ------------------------------------------ */
.base-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}
.base-card {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px 22px}
.base-card h3 {font-size:1.05rem;margin:0 0 12px;display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.base-card h3 a {font-size:.78rem;color:#e9b4b8;text-decoration:none;font-weight:400}
.base-card dl {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0}
.base-card dd {font-size:1.35rem;font-weight:500;color:#f3e8eb;margin:0;font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.base-card dt {font-size:.74rem;color:#9aa1ae;margin-top:2px}
.base-card p {font-size:.82rem;color:#aab0bc;line-height:1.55;margin:12px 0 0}
@media (max-width:860px) {.base-grid {grid-template-columns:minmax(0,1fr)}}

/* ---- the chain, in six steps ----------------------------------------- */
.chain {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;counter-reset:step}
.chain a {display:block;border:1px solid #353641;background:rgba(20,23,32,.9);padding:16px 16px 14px;border-radius:4px;text-decoration:none;color:inherit;min-height:100%}
.chain a:hover {border-color:#8a4b55}
.chain__n {font-family:var(--font-mono);font-size:.72rem;color:#ff8589}
.chain__t {display:block;font-weight:600;color:#f1efe9;margin:4px 0 4px;font-size:.96rem}
.chain__d {display:block;font-size:.8rem;line-height:1.5;color:#aab0bc}
@media (max-width:1000px) {.chain {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px) {.chain {grid-template-columns:minmax(0,1fr)}}

/* ---- numbered rows (services, about) --------------------------------- */
.rows {list-style:none;margin:0;padding:0;border-top:1px solid #353641}
.rows li {display:grid;grid-template-columns:3.2rem minmax(0,1.1fr) minmax(0,1.4fr) auto;gap:16px 22px;align-items:start;padding:22px 0;border-bottom:1px solid #353641;position:relative}
.rows__n {font-family:var(--font-mono);font-size:.82rem;color:#ff8589;padding-top:4px}
.rows__t {font-size:1.08rem;font-weight:600;color:#f1efe9;margin:0 0 6px;letter-spacing:-.01em}
.rows__m {font-size:.76rem;color:#9aa1ae;line-height:1.5}
.rows__d {font-size:.92rem;line-height:1.7;color:#c0c3cb;margin:0}
.rows__a {display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.rows__a .btn {font-size:.82rem;padding:9px 14px}
.rows__a a:not(.btn) {font-size:.82rem;color:#e9b4b8;text-decoration:none}
@media (max-width:860px) {.rows li {grid-template-columns:2.6rem minmax(0,1fr)}.rows__d,.rows__a {grid-column:2}}

/* ---- about / team / contact ------------------------------------------ */
.about-lead {font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.5;color:#eeede9;max-width:36ch;letter-spacing:-.015em;margin:0}
.about-cols {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.about-col {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:22px}
.about-col h3 {font-size:1rem;margin:0 0 8px}
.about-col p {font-size:.9rem;line-height:1.7;color:#bfc3cc;margin:0}
.about-col .n {font-family:var(--font-mono);font-size:1.6rem;font-weight:500;color:#f3e8eb;display:block;margin-bottom:6px}
@media (max-width:860px) {.about-cols {grid-template-columns:minmax(0,1fr)}}
.timeline {list-style:none;margin:0;padding:0}
.timeline li {display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:18px;padding:14px 0;border-bottom:1px solid #ffffff12;font-size:.92rem;line-height:1.6;color:#c6c9d1}
.timeline li:last-child {border-bottom:0}
.timeline time {font-family:var(--font-mono);font-size:.8rem;color:#ff8589;padding-top:3px}
.timeline b {color:#f1efe9;font-weight:600}
.team-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.team-card {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px;display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:start}
.team-card img {width:84px;height:84px;object-fit:cover;border-radius:3px;filter:saturate(.85)}
.team-card h3 {font-size:1.02rem;margin:0 0 2px}
.team-card .role {font-size:.82rem;color:#e9b4b8;margin:0 0 4px}
.team-card .aff {font-size:.76rem;color:#9aa1ae;margin:0 0 8px;line-height:1.45}
.team-card p {font-size:.86rem;line-height:1.6;color:#bfc3cc;margin:0 0 8px}
.team-card .links {display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem}
.team-card .links a {color:#e9b4b8;text-decoration:none}
@media (max-width:860px) {.team-grid {grid-template-columns:minmax(0,1fr)}}
.contact-grid {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}
.contact-aside .rows li {grid-template-columns:minmax(0,1fr) auto;padding:14px 0}
.contact-aside .rows__t {font-size:.95rem;margin:0 0 2px}
.contact-aside .rows__d {font-size:.84rem}
.contact-form {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:24px}
.contact-form h2 {font-size:1.3rem;margin:0 0 14px}
.contact-form .f {display:grid;gap:5px;margin-bottom:13px}
.contact-form label {font-size:.8rem;color:#b3b7c1}
.contact-form input,.contact-form select,.contact-form textarea {font:inherit;font-size:.92rem;background:#15181e;color:#eeede9;border:1px solid #4a4d55;border-radius:3px;padding:10px 12px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus {outline:none;border-color:#d85a64}
.contact-form textarea {min-height:150px;resize:vertical}
.contact-form .f--2 {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.contact-form__status {min-height:1.4em;font-size:.86rem;margin-top:10px;color:#c9ccd3}
.contact-form__note {font-size:.76rem;color:#9aa1ae;margin-top:10px;line-height:1.5}
@media (max-width:860px) {.contact-grid {grid-template-columns:minmax(0,1fr)}.contact-form .f--2 {grid-template-columns:minmax(0,1fr)}}

/* ---- video record ------------------------------------------------------ */
.rec {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);gap:22px;align-items:start}
.rec__main,.rec__side {display:grid;gap:14px;min-width:0}
.rec-head {padding:8px 0 4px}
.rec-head__k {display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.8rem;color:#aab0bc;margin-bottom:10px;align-items:center}
.rec-head__k i {display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--o,#64748b);margin-right:6px;vertical-align:1px}
.rec-head__k a {color:#e9b4b8;text-decoration:none}
.rec-head h1 {font-size:clamp(1.5rem,2.6vw,2.3rem);line-height:1.25;letter-spacing:-.02em;margin:0 0 8px}
.rec-head__orig {font-size:.9rem;color:#9aa1ae;margin:0 0 10px}
.rec-head__stats {display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.84rem;color:#c0c3cb}
.rec-head__stats b {color:#f3e8eb;font-weight:500;font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.rec-box {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:18px 20px}
.rec-box h2 {font-size:.95rem;font-weight:600;margin:0 0 10px;color:#f1efe9}
.rec-box p {font-size:.94rem;line-height:1.72;color:#c6c9d1;margin:0}
.rec-box .note {font-size:.76rem;color:#8e95a3;margin-top:10px;line-height:1.5}
.rec-player {position:relative;aspect-ratio:16/9;background:#101216;border-radius:3px;overflow:hidden;border:1px solid #353641}
.rec-player--tt {aspect-ratio:9/13;max-width:360px}
.rec-player img {width:100%;height:100%;object-fit:cover;display:block;opacity:.85}
.rec-player button {position:absolute;inset:0;width:100%;height:100%;background:none;border:0;cursor:pointer;display:grid;place-items:center;color:#fff;font:inherit}
.rec-player button span {background:#b72230;padding:11px 18px;border-radius:3px;font-size:.9rem;display:inline-flex;gap:8px;align-items:center}
.rec-player iframe {position:absolute;inset:0;width:100%;height:100%;border:0}
.rec-args {list-style:none;margin:0;padding:0}
.rec-args li {display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid #ffffff0d;font-size:.92rem;line-height:1.55;color:#dcdad3}
.rec-args li:last-child {border-bottom:0}
.rec-args .theme-icon {width:16px;height:16px;color:#ff8589;margin-top:4px}
.rec-args small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.rec-people {display:flex;flex-wrap:wrap;gap:8px}
.rec-people a,.rec-people span {font-size:.84rem;padding:5px 10px;border-radius:3px;background:#292c2f;color:#e8e6df;text-decoration:none;border:1px solid transparent}
.rec-people a {border-color:#5a3a41;background:#2a1f23}
.rec-people a:hover {border-color:#d85a64;color:#fff}
.rec-themes {list-style:none;margin:0;padding:0}
.rec-themes li {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) 3.4rem 4.6rem;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid #ffffff0d;font-size:.86rem}
.rec-themes li:last-child {border-bottom:0}
.rec-themes a {color:#e8e6df;text-decoration:none;display:flex;gap:6px;align-items:center;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rec-themes .theme-icon {width:15px;height:15px;color:#ff8589;flex:none}
.rec-themes .bar {height:7px;border-radius:999px;background:#ffffff0c;overflow:hidden;position:relative}
.rec-themes .bar i {display:block;height:100%;width:var(--w);background:linear-gradient(90deg,#9f2733,#ef5865)}
.rec-themes .bar em {position:absolute;top:-3px;bottom:-3px;width:2px;background:#cfd3db;left:var(--t)}
.rec-themes .val {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#f3e8eb;text-align:right}
.rec-themes .typ {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#8e95a3;font-size:.74rem;text-align:right}
.rec-hist {display:flex;align-items:flex-end;gap:2px;height:84px;margin-top:6px}
.rec-hist i {flex:1;background:linear-gradient(180deg,#ef5865,#9f2733);min-width:2px;border-radius:2px 2px 0 0;height:var(--h)}
.rec-hist__x {display:flex;justify-content:space-between;font-size:.7rem;color:#8e95a3;margin-top:6px;font-family:var(--font-mono)}
.rec-kv {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0}
.rec-kv div {min-width:0}
.rec-kv dt {font-size:.72rem;color:#9aa1ae}
.rec-kv dd {margin:0;font-size:.95rem;color:#eeede9;font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.rec-list {list-style:none;margin:0;padding:0}
.rec-list li {padding:8px 0;border-bottom:1px solid #ffffff0d}
.rec-list li:last-child {border-bottom:0}
.rec-list a {color:#e8e6df;text-decoration:none;font-size:.88rem;line-height:1.45;display:block}
.rec-list a:hover {color:#ff8589}
.rec-list small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.rec-list small i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b);margin-right:5px}
@media (max-width:960px) {.rec {grid-template-columns:minmax(0,1fr)}}

/* ---- person record ------------------------------------------------------ */
.pr-head {display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:22px;align-items:end;padding:8px 0 18px}
.pr-head h1 {font-size:clamp(1.9rem,3.4vw,3rem);letter-spacing:-.03em;line-height:1.1;margin:0 0 6px}
.pr-head__k {font-size:.86rem;color:#aab0bc}
.pr-stats {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pr-stats div {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:12px 14px}
.pr-stats b {display:block;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:500;font-size:1.4rem;color:#f3e8eb}
.pr-stats span {font-size:.72rem;color:#9aa1ae}
.pr-grid {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);gap:22px;align-items:start}
.pr-grid > div {display:grid;gap:14px;min-width:0}
.pr-months {display:flex;align-items:flex-end;gap:3px;height:120px;margin-top:8px}
.pr-months a {flex:1;display:block;background:#4a2129;border-radius:2px 2px 0 0;height:var(--h);min-height:2px;position:relative;text-decoration:none}
.pr-months a:hover {background:#d85a64}
.pr-months__x {display:flex;justify-content:space-between;font-size:.7rem;color:#8e95a3;margin-top:6px;font-family:var(--font-mono)}
.pr-chan {list-style:none;margin:0;padding:0}
.pr-chan li {display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:7px 0;border-bottom:1px solid #ffffff0d;font-size:.86rem}
.pr-chan li:last-child {border-bottom:0}
.pr-chan a {color:#e8e6df;text-decoration:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr-chan a:hover {color:#ff8589}
.pr-chan i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b);margin-right:6px}
.pr-chan .n {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#c9ccd3;font-size:.78rem}
.pr-co {display:flex;flex-wrap:wrap;gap:8px}
.pr-co a {font-size:.84rem;padding:5px 10px;border-radius:3px;background:#2a1f23;border:1px solid #5a3a41;color:#e8e6df;text-decoration:none}
.pr-co a:hover {border-color:#d85a64;color:#fff}
.pr-co a small {color:#c9a0a6;font-family:var(--font-mono);margin-left:6px}
@media (max-width:960px) {.pr-head,.pr-grid {grid-template-columns:minmax(0,1fr)}.pr-stats {grid-template-columns:repeat(2,minmax(0,1fr))}}
.people-dir {display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;list-style:none;margin:0;padding:0}
.people-dir a {display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:10px 12px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:3px;color:#e8e6df;text-decoration:none;font-size:.9rem}
.people-dir a:hover {border-color:#8a4b55}
.people-dir small {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#9aa1ae;font-size:.74rem;white-space:nowrap}

/* ---- method: the interactive chain ------------------------------------- */
.mchain {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:22px}
.mchain__steps {display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none}
.mchain__steps button {width:100%;font:inherit;background:#191c23;border:1px solid #30323a;color:#d9d7d0;padding:10px 6px 8px;border-radius:3px;cursor:pointer;display:grid;gap:4px;justify-items:center;text-align:center;min-height:100%}
.mchain__steps button[aria-selected="true"] {background:#47212c;border-color:#d85a64;color:#fff}
.mchain__steps button:hover {border-color:#8a4b55}
.mchain__steps .n {font-family:var(--font-mono);font-size:.68rem;color:#ff8589}
.mchain__steps .t {font-size:.74rem;line-height:1.25;font-weight:500}
.mchain__flow {height:6px;margin:12px 2px 18px;background:#ffffff0c;border-radius:999px;overflow:hidden;position:relative}
.mchain__flow i {position:absolute;top:0;bottom:0;width:18%;background:linear-gradient(90deg,transparent,#ef5865,transparent);animation:mflow 4.8s linear infinite}
@keyframes mflow {from {left:-20%} to {left:100%}}
@media (prefers-reduced-motion:reduce) {.mchain__flow i {animation:none;left:41%}}
.mchain__panel {display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:start}
.mchain__panel[hidden] {display:none}
.mchain__panel h3 {font-size:1.15rem;margin:0 0 8px}
.mchain__panel p {font-size:.92rem;line-height:1.7;color:#c6c9d1;margin:0 0 10px}
.mchain__facts {display:grid;gap:8px;margin:0}
.mchain__facts div {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px;padding:8px 0;border-bottom:1px solid #ffffff0d;font-size:.84rem}
.mchain__facts dt {color:#9aa1ae}
.mchain__facts dd {margin:0;color:#eeede9}
.mchain__panel a {color:#e9b4b8}
@media (max-width:1000px) {.mchain__steps {grid-template-columns:repeat(4,minmax(0,1fr))}.mchain__panel {grid-template-columns:minmax(0,1fr)}}
.contact-form input,.contact-form select,.contact-form textarea {width:100%;max-width:100%;min-width:0;box-sizing:border-box}
.contact-aside .rows li,.rows li {min-width:0}
.rows__t,.rows__d,.rows__m {overflow-wrap:anywhere}

/* ---- the brand typeface: a condensed grotesque in the key of the YOU.POL shield.
   Display level only (wordmark, page and section titles, the big figures); the body stays Inter. */
body.observatory {--font-display:'Big Shoulders Display','Inter',sans-serif}
.observatory :is(h1,h2,.hero__title,.section__title,.navbar__title,.id-hero__mark,.live__head h2,.home-section-heading h2,.home-spectrum__title,.chart-title,.workspace__heading h1,.brief__title,.live__synth-title,.pr-head h1,.rec-head h1,.contact-form h2) {font-family:var(--font-display)!important;font-weight:700;letter-spacing:.005em}
.observatory .navbar__title {font-size:1.55rem;font-weight:800;letter-spacing:.01em}
.observatory .id-hero__mark {font-weight:800;letter-spacing:-.005em;font-size:clamp(4rem,9.5vw,8rem)}
.observatory .id-hero__tagline {font-family:var(--font-body);font-weight:500}
.observatory :is(.section__title,.live__head h2,.home-section-heading h2,.home-spectrum__title,.workspace__heading h1) {font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.1}
.observatory .hero__title {font-size:clamp(2.6rem,5.2vw,4.6rem);line-height:1.05;letter-spacing:0}
.observatory .hero--short .hero__title {font-size:clamp(2.4rem,4.4vw,3.9rem)}
.observatory :is(.rec-head h1,.pr-head h1) {line-height:1.05}
.observatory .live__synth-title {font-size:1.55rem;line-height:1.15;letter-spacing:.005em}
.observatory :is(.hero__data-number,.base-card dd,.pr-stats b,.live__counter b,.overview-metrics dd,.home-corpus__figures dd,.spectrum-bar__pct) {font-family:var(--font-display);font-weight:700;letter-spacing:.01em}
.observatory .base-card dd {font-size:1.75rem}
.observatory .pr-stats b {font-size:1.9rem}

/* ---- the side panel of the records ------------------------------------ */
.drawer-overlay {position:fixed;inset:0;background:rgba(6,8,12,.55);z-index:1190;opacity:0;transition:opacity .25s ease}
.drawer-overlay.is-open {opacity:1}
.drawer-overlay[hidden] {display:none}
.drawer {position:fixed;top:0;right:0;bottom:0;width:min(880px,94vw);z-index:1200;background:#13161c;border-left:1px solid #3a3c44;box-shadow:-24px 0 60px rgba(0,0,0,.45);transform:translateX(100%);transition:transform .28s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column}
.drawer.is-open {transform:none}
.drawer[hidden] {display:none}
.drawer__bar {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px 10px 20px;border-bottom:1px solid #2d3038;background:#15181e;flex:none}
.drawer__page {font-size:.84rem;color:#e9b4b8;text-decoration:none;padding:8px 12px;border:1px solid #5a3a41;border-radius:3px;background:#2a1f23}
.drawer__page:hover {border-color:#d85a64;color:#fff}
.drawer__close {width:40px;height:40px;border-radius:3px;border:1px solid #4a4d55;background:#22252b;color:#e8e6df;cursor:pointer;display:grid;place-items:center}
.drawer__close svg {width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none}
.drawer__close:hover {border-color:#d85a64}
.drawer__body {overflow-y:auto;flex:1;padding:6px 22px 40px;-webkit-overflow-scrolling:touch}
.drawer__body .section {padding:14px 0 10px}
.drawer__body .container {width:auto;max-width:none;padding:0}
.drawer__body .rec,.drawer__body .pr-grid,.drawer__body .pr-head {grid-template-columns:minmax(0,1fr)}
.drawer__body .hero--short {padding:8px 0 10px}
.drawer__body .chart-grid {grid-template-columns:minmax(0,1fr)}
.drawer__body .video-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.drawer__loading {padding:40px 0;color:#aab0bc;font-size:.95rem}
body.drawer-open {overflow:hidden}
@media (max-width:760px) {.drawer {width:100vw;border-left:0}.drawer__body {padding:6px 14px 40px}.drawer__body .video-grid {grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce) {.drawer,.drawer-overlay {transition:none}}
.drawer-overlay:not(.is-open) {pointer-events:none}

/* ---- motion: letters, figures, panels --------------------------------- */
[data-letters] .ltr {display:inline-block;opacity:0;transform:translateY(.32em) rotate(2deg);transform-origin:bottom left}
[data-letters].ltr-go .ltr {animation:ltr .55s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i) * var(--ltr-step,28ms))}
@keyframes ltr {to {opacity:1;transform:none}}
.mo {opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d,0ms)}
.mo.mo-in {opacity:1;transform:none}
.mo.mo-in:hover {transition-delay:0ms}
.id-hero__mark .ltr:nth-child(n) {transform-origin:bottom center}
.drawer__body .mo {opacity:1;transform:none}
@media (prefers-reduced-motion:reduce) {[data-letters] .ltr {opacity:1;transform:none;animation:none}.mo {opacity:1;transform:none;transition:none}}

/* the hero aside, with its symbols */
.id-what li {display:grid;grid-template-columns:34px minmax(0,1fr);gap:0 12px;align-items:start}
.id-what__ico {width:34px;height:34px;border-radius:4px;background:#2a1f23;border:1px solid #5a3a41;display:grid;place-items:center;color:#ff8589;grid-row:span 3}
.id-what__ico svg {width:18px;height:18px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}
.id-what__k {margin-bottom:2px}
.id-what__h {font-size:.98rem;margin-bottom:3px}
.id-what p {font-size:.84rem;line-height:1.55}
.id-what__fig {display:block;font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:#f3e8eb;letter-spacing:.01em;line-height:1;margin:6px 0 2px}

/* symbols of the chain and the services */
.ico {width:22px;height:22px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;color:#ff8589;display:block;margin-bottom:8px}
.rows__n .ico {margin:4px 0 0}
.id-what li > :not(.id-what__ico) {grid-column:2}
.id-what__ico {grid-row:1 / span 4}
.chain {list-style:none;margin:0;padding:0}
.rows {list-style:none}

/* ---- the week, one panel ------------------------------------------------ */
.id-hero__mark .you,.id-hero__mark .you span {color:#f04b4b}
.wk-section {padding-top:10px}
.wk {padding:0!important;overflow:hidden}
.wk__head {display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 28px;padding:24px 26px 18px;border-bottom:1px solid #30323a}
.wk__kicker {display:block;font-size:.8rem;color:#c9a0a6;margin-bottom:6px}
.wk__head h2 {margin:0;font-size:clamp(1.6rem,2.6vw,2.3rem)}
.wk__figures {display:flex;flex-wrap:wrap;gap:10px 26px;margin:0}
.wk__figures div {min-width:0}
.wk__figures dd {margin:0;font-family:var(--font-display);font-weight:700;font-size:1.65rem;color:#f3e8eb;letter-spacing:.01em;line-height:1}
.wk__figures dt {font-size:.72rem;color:#9aa1ae;margin-top:3px}
.wk__grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));}
.wk__cell {padding:20px 22px;border-right:1px solid #30323a;border-bottom:1px solid #30323a;min-width:0;display:flex;flex-direction:column}
.wk__cell:nth-child(6n) {border-right:0}
.wk__synth {grid-column:span 6;border-right:0}
.wk__rail {grid-column:span 2}
.wk__themes {grid-column:span 3}
.wk__people {grid-column:span 3;border-right:0}
.wk__args {grid-column:span 3}
.wk__gone {grid-column:span 3;border-right:0}
.wk__cell-head {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin-bottom:10px}
.wk__cell-head a {font-size:.8rem;color:#e9b4b8;text-decoration:none}
.wk__cell-head a:hover {color:#ff8589}
.wk__cell-head .chart-header__toggle {margin:0}
.wk__label {font-size:.82rem;color:#c9a0a6}
.wk__meta {font-size:.76rem;color:#8e95a3}
.wk__synth-title {font-size:1.35rem;font-weight:600;line-height:1.3;margin:8px 0 10px;color:#f3f1ea;letter-spacing:-.015em;max-width:70ch}
.wk__synth-text {font-size:.98rem;line-height:1.75;color:#c6c9d1;margin:0;max-width:95ch}
.wk__note {font-size:.76rem;color:#8e95a3;margin:10px 0 0;line-height:1.55}
.wk__note a {color:#e9b4b8}
.wk__empty {font-size:.92rem;line-height:1.65;color:#b3b7c1;margin:0}
.wk__latest {list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}
.wk__latest button {text-align:left;background:#22252b;border:1px solid #3b3d44;color:#e8e6df;padding:9px 11px;border-radius:3px;cursor:pointer;font:inherit;font-size:.86rem;line-height:1.4;width:100%}
.wk__latest button:hover {border-color:#8a4b55}
.wk__latest small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.wk .rail__viewport {height:380px}
.wk .pulse__cols {margin-top:0}
.wk .who-list {margin:0}
.wk__foot {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 26px;font-size:.82rem;color:#aab0bc}
@media (max-width:1100px) {.wk__rail {grid-column:span 2}.wk__themes,.wk__people,.wk__args,.wk__gone {grid-column:span 6;border-right:0}}
@media (max-width:760px) {.wk__grid {grid-template-columns:minmax(0,1fr)}.wk__cell,.wk__synth,.wk__rail,.wk__themes,.wk__people,.wk__args,.wk__gone {grid-column:span 1;border-right:0}.wk .rail__viewport {height:340px}.wk__head,.wk__cell,.wk__foot {padding-left:16px;padding-right:16px}}

/* the three strips under the panel */
.home-strips .container {display:grid;gap:34px}
.strip__head {display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.strip__head h2 {margin:0;font-size:clamp(1.4rem,2.2vw,1.9rem)}
.strip__head a {font-size:.82rem;color:#e9b4b8;text-decoration:none;white-space:nowrap}
.strip__head a:hover {color:#ff8589}
.strip__note {font-size:.86rem;line-height:1.65;color:#aab0bc;margin:10px 0 0;max-width:100ch}
.strip__terr {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.strip__terr a {display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding:14px 16px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;color:#dcdad3;text-decoration:none;font-size:.84rem}
.strip__terr a:hover {border-color:#8a4b55}
.strip__terr b {font-size:1.02rem;color:#f1efe9;margin-right:auto}
.strip__terr em {font-style:normal;font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:#f3e8eb;letter-spacing:.01em;margin-right:4px}
.strip__chain {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.strip__chain a {display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;color:#eeede9;text-decoration:none;font-weight:600;font-size:.92rem}
.strip__chain a:hover {border-color:#8a4b55}
.strip__chain .ico {margin:0;flex:none}
.strip__team {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.strip__team a {display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;color:inherit;text-decoration:none}
.strip__team a:hover {border-color:#8a4b55}
.strip__team img {width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;filter:saturate(.85)}
.strip__team b {display:block;font-size:1rem;color:#f1efe9;font-family:var(--font-display);font-weight:700;letter-spacing:.01em}
.strip__team small {display:block;font-size:.76rem;color:#9aa1ae;line-height:1.45;margin-top:2px}
@media (max-width:860px) {.strip__terr,.strip__team {grid-template-columns:minmax(0,1fr)}.strip__chain {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px) {.strip__chain {grid-template-columns:repeat(2,minmax(0,1fr))}}

/* the hero aside, three lines */
.id-what {padding:22px 24px}
.id-what ul {list-style:none;margin:0;padding:0}
.id-what li {display:grid;grid-template-columns:38px minmax(0,1fr);gap:0 14px;align-items:center;padding:14px 0;border-top:1px solid #ffffff12}
.id-what li:first-child {border-top:0;padding-top:0}
.id-what li:last-child {padding-bottom:0}
.id-what li > :not(.id-what__ico) {grid-column:2}
.id-what__ico {grid-row:1;width:38px;height:38px}
.id-what p {margin:0;font-size:.92rem;line-height:1.6;color:#c6c9d1}
.id-what p b {display:block;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#ff8589;font-weight:600;margin-bottom:3px}
.id-what p em {font-style:normal;font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:#f3e8eb;letter-spacing:.01em;margin-right:5px}
.id-hero__lede {font-size:1.04rem}
.wk__cell .panel-scope {padding:0 0 12px;margin-bottom:12px}

/* ---- the three parts under the panel ----------------------------------- */
.home-part {padding:52px 0 56px}
.part__head {display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:26px;max-width:960px}
.part__ico {width:52px;height:52px;border-radius:4px;background:#2a1f23;border:1px solid #5a3a41;display:grid;place-items:center;color:#ff8589;align-self:center}
.part__ico .ico {margin:0;width:26px;height:26px}
.part__head .section__title {margin:4px 0 8px}
.part__head .section__description {margin:0}
.part__foot {margin:20px 0 0;font-size:.86rem;color:#aab0bc}
.part__foot a {color:#e9b4b8;text-decoration:none}
.part__foot a:hover {color:#ff8589}
.terr-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.terr {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px 22px;display:flex;flex-direction:column;transition:border-color .2s}
.terr:hover {border-color:#8a4b55}
.terr__head {display:flex;align-items:center;gap:10px;margin-bottom:14px}
.terr__code {font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:#ff8589;letter-spacing:.06em;padding:2px 7px;border:1px solid #5a3a41;border-radius:3px;background:#2a1f23}
.terr__head h3 {margin:0;font-size:1.25rem;font-family:var(--font-display);font-weight:700;letter-spacing:.01em}
.terr__plat {margin-left:auto;font-size:.74rem;color:#9aa1ae;white-space:nowrap}
.terr__figs {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 14px}
.terr__figs dd {margin:0;font-family:var(--font-display);font-weight:700;font-size:1.45rem;color:#f3e8eb;letter-spacing:.01em;line-height:1}
.terr__figs dt {font-size:.7rem;color:#9aa1ae;margin-top:3px}
.terr__split-label {font-size:.74rem;color:#c9a0a6;margin:8px 0 6px}
.terr .split {height:8px;margin:0 0 6px}
.terr .split-legend {gap:4px 12px;font-size:.74rem}
.terr .split-legend a {color:#c6c9d1;text-decoration:none}
.terr .split-legend a:hover {color:#fff}
.terr__top {list-style:none;margin:0;padding:0}
.terr__top li {display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:5px 0;border-bottom:1px solid #ffffff0d;font-size:.86rem}
.terr__top li:last-child {border-bottom:0}
.terr__top a {color:#e8e6df;text-decoration:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.terr__top a:hover {color:#ff8589}
.terr__top i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b);margin-right:7px}
.terr__top span {font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:#9aa1ae;font-size:.78rem}
.terr__more {margin-top:auto;padding-top:14px;font-size:.84rem;color:#e9b4b8;text-decoration:none}
.terr__more:hover {color:#ff8589}
@media (max-width:960px) {.terr-grid {grid-template-columns:minmax(0,1fr)}}
.mchain--six .mchain__steps {grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.mchain--six .mchain__steps button {padding:14px 10px 12px;gap:6px}
.mchain--six .mchain__steps .t {font-size:.9rem;font-weight:600}
.mchain--six .ico--step {margin:0 0 2px;width:22px;height:22px}
.mchain__steps button[aria-selected="true"] .ico--step {color:#fff}
@media (max-width:860px) {.mchain--six .mchain__steps {grid-template-columns:repeat(3,minmax(0,1fr))}}
.people-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.person-card {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:24px 22px 20px;display:grid;grid-template-columns:96px minmax(0,1fr);gap:4px 18px;align-items:start;transition:border-color .2s}
.person-card:hover {border-color:#8a4b55}
.person-card img {grid-row:1 / span 5;width:96px;height:96px;border-radius:50%;object-fit:cover;filter:saturate(.85);border:2px solid #3a2a2e}
.person-card h3 {margin:0;font-size:1.3rem;font-family:var(--font-display);font-weight:700;letter-spacing:.01em}
.person-card__role {margin:0;font-size:.84rem;color:#ff8589}
.person-card__aff {margin:0;font-size:.76rem;color:#9aa1ae;line-height:1.45}
.person-card__desc {margin:8px 0 0;font-size:.88rem;line-height:1.6;color:#c6c9d1}
.person-card__links {display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:.8rem}
.person-card__links a {color:#e9b4b8;text-decoration:none}
.person-card__links a:hover {color:#ff8589}
@media (max-width:960px) {.people-grid {grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px) {.person-card {grid-template-columns:72px minmax(0,1fr)}.person-card img {width:72px;height:72px;grid-row:1 / span 3}}
.id-hero {overflow:hidden}
/* narrow screens: nothing decorative or tabular may widen the page */
.observatory .id-hero {overflow:hidden}
.wk .chart-header__toggle,.wk__cell-head .chart-header__toggle {flex-wrap:wrap;max-width:100%}
.wk .chart-header__toggle .pill-toggle {max-width:100%;white-space:normal}
@media (max-width:760px) {.observatory .hero__orb {display:none!important}.wk__figures {gap:8px 18px}}
@media (max-width:440px) {.terr__figs {grid-template-columns:repeat(2,minmax(0,1fr))}.terr__head {flex-wrap:wrap}.terr__plat {margin-left:0;white-space:normal;width:100%}.wk__figures dd {font-size:1.35rem}}

.terr,.person-card,.wk__cell,.about-col,.base-card,.rec-box {min-width:0}
.split-legend {flex-wrap:wrap}
.person-card > :not(img) {grid-column:2;min-width:0}
.person-card img {grid-row:1 / span 6}
[data-letters] .ltr-w {display:inline-block;white-space:nowrap}

/* ---- red kickers over white titles: every heading is red and white, or
   carries its subtitle ---------------------------------------------------- */
.observatory .section__overline,.observatory .wk__kicker,.observatory .id-hero__overline {color:#f26b6b;font-family:var(--font-display);font-weight:700;font-size:.9rem;letter-spacing:.09em;text-transform:uppercase}
.observatory .wk__label {color:#f26b6b;font-family:var(--font-display);font-weight:700;font-size:1rem;letter-spacing:.03em}
.observatory .wk__cell-head a {align-self:center}

/* ---- the synthesis: today's title, paragraphs by country ----------------- */
.wk__synth .wk__cell-head {margin-bottom:6px}
.wk__date {display:block;font-size:.78rem;color:#9aa1ae;margin:4px 0 0}
.wk__synth-text + .wk__synth-text {margin-top:10px}
.wk__country {color:#ff8589;font-weight:600}
.wk__country::after {content:' :'}
html[lang="en"] .wk__country::after {content:':'}

/* ---- one country for the whole panel ------------------------------------- */
.wk__all {display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:14px}
.wk__all-label {font-size:.78rem;color:#abb2c1}
.wk__figwrap {min-width:0}
.scope-busy {opacity:.55;transition:opacity .2s}
.wk__rail--solo {grid-column:span 6;border-right:0}
.wk__rail--solo .rail__list {grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px) {.wk__rail--solo .rail__list {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px) {.wk__rail--solo .rail__list {grid-template-columns:minmax(0,1fr)}.wk__all {margin-top:10px}}

/* ---- the paper button beside the two others ------------------------------- */
.id-hero__actions .btn {display:inline-flex;align-items:center;gap:8px}
.id-hero__actions .ico--btn {width:16px;height:16px;margin:0;display:inline-block;color:currentColor;flex:none}

/* ---- the panel of the week: an introduction, the country switch, figure tiles -- */
.wk__head {display:block;padding:30px 26px 22px;text-align:center}
.wk__intro {max-width:80ch;margin:0 auto}
.wk__head h2 {font-size:clamp(1.8rem,3.1vw,2.7rem);line-height:1.08;margin:6px 0 0}
.wk__sub {font-size:.98rem;line-height:1.7;color:#c6c9d1;margin:12px auto 18px;max-width:72ch}
.wk__all-nav {margin:0 auto}
.wk__figures {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 0 0}
.wk__figures div {border:1px solid #30323a;background:#191c23;border-radius:4px;padding:14px 10px 12px;display:grid;justify-items:center;gap:4px}
.wk__figures .ico {margin:0 0 2px;width:18px;height:18px;color:#ff8589}
.wk__figures dd {font-size:1.9rem}
.wk__figures dt {font-size:.74rem;color:#9aa1ae;margin:0}
@media (max-width:760px) {.wk__head {padding:22px 16px 16px}.wk__figures {grid-template-columns:repeat(3,minmax(0,1fr))}.wk__figures dd {font-size:1.5rem}}
@media (max-width:440px) {.wk__figures {grid-template-columns:repeat(2,minmax(0,1fr))}}

/* the synthesis beside the records to read first */
.wk__synth-grid {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);gap:8px 30px;align-items:start}
.wk__synth-main,.wk__synth-side {min-width:0}
@media (max-width:1000px) {.wk__synth-grid {grid-template-columns:minmax(0,1fr)}}
.reads {list-style:none;margin:8px 0 0;padding:0;display:grid;gap:8px}
.reads button {display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;width:100%;text-align:left;background:#191c23;border:1px solid #30323a;border-radius:3px;padding:8px;cursor:pointer;font:inherit;color:inherit;transition:border-color .18s,transform .18s}
.reads button:hover {border-color:#8a4b55;transform:translateY(-1px)}
.reads__thumb {width:88px;aspect-ratio:16/9;border-radius:2px;overflow:hidden;background:#101216;display:grid;place-items:center;font-size:.7rem;color:#9aa1ae}
.reads__thumb img {width:100%;height:100%;object-fit:cover;display:block}
.reads__thumb--tt {background:#2a1f23;color:#e9b4b8;font-weight:600}
.reads strong {display:block;font-size:.86rem;line-height:1.35;color:#eeede9;font-weight:600}
.reads small {display:block;font-size:.72rem;color:#9aa1ae;margin-top:3px}
.reads small i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b);margin-right:5px;vertical-align:1px}
.reads em {display:block;font-style:normal;font-size:.76rem;line-height:1.45;color:#b3b7c1;margin-top:5px}

/* ---- the switches: segmented controls, the orientations with their colour ---- */
.observatory .panel-scope__choices {border:1px solid #4a4d57;border-radius:999px;background:#191c23;padding:3px;gap:2px}
.observatory .panel-scope__choices a {border-right:0;border-radius:999px;padding:7px 14px;font-size:.78rem;color:#c0c6d0;display:inline-flex;align-items:center;gap:7px;transition:background .18s,color .18s}
.observatory .panel-scope__choices a:hover {background:#2a2d35;color:#fff}
.observatory .panel-scope__choices a[aria-current] {background:#b82330;color:#fff;font-weight:600}
.observatory .panel-scope__choices a[data-cc]::before {content:attr(data-cc);font-family:var(--font-display);font-weight:700;font-size:.74rem;letter-spacing:.06em;padding:1px 5px;border-radius:3px;background:#ffffff14;line-height:1.2}
.observatory .panel-scope__choices a[aria-current][data-cc]::before {background:#ffffff2b}
.observatory .wk__all-nav a {padding:9px 18px;font-size:.86rem}
.observatory .panel-scope__label {text-transform:uppercase;letter-spacing:.08em;font-size:.68rem;color:#9aa1ae}
.observatory .chart-header__toggle {display:inline-flex;flex-wrap:wrap;border:1px solid #4a4d57;border-radius:999px;background:#191c23;padding:3px;gap:2px}
.observatory .chart-header__toggle .pill-toggle {border-radius:999px!important;border:0!important;background:transparent!important;padding:6px 12px!important;font-size:.76rem;color:#c0c6d0!important;display:inline-flex;align-items:center;gap:7px;box-shadow:none!important}
.observatory .chart-header__toggle .pill-toggle:hover {background:#2a2d35!important;color:#fff!important}
.observatory .chart-header__toggle .pill-toggle--active,.observatory .chart-header__toggle .pill-toggle--active:hover {background:#b82330!important;color:#fff!important}
.pill-toggle .o-dot {width:8px;height:8px;border-radius:50%;background:var(--o,#9aa1ae);flex:none;box-shadow:0 0 0 2px #ffffff1a}
.wk__label--ico {display:inline-flex;align-items:center;gap:7px}
.ico--lbl {width:17px;height:17px;margin:0;color:#ff8589}

/* ---- the collection counter, opaque ----------------------------------------- */
.observatory .collection-live__trigger {background:#15181e!important;border-color:#5a3a41!important;box-shadow:0 8px 28px #000a!important}
.observatory .collection-live.is-ready .collection-live__trigger {border-color:#5a3a41!important}

/* ---- the team cards: the portrait framed in the header, the text full width --- */
.person-card {display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}
.person-card__head {display:grid;grid-template-columns:84px minmax(0,1fr);gap:16px;align-items:center;padding:18px 20px;background:#191c23;border-bottom:1px solid #30323a}
.person-card img,.person-card__head img {grid-row:auto;width:84px;height:84px;border-radius:4px;object-fit:cover;filter:saturate(.85);border:1px solid #5a3a41;box-shadow:0 0 0 3px #2a1f23}
.person-card__head h3 {margin:0 0 3px}
.person-card__body {padding:16px 20px 18px;display:flex;flex-direction:column;gap:0;flex:1}
.person-card__desc {margin:0;flex:1}
.person-card__links {margin-top:14px;padding-top:12px;border-top:1px solid #ffffff0d}
.team-card {display:flex;flex-direction:column;padding:0;overflow:hidden}
.team-card > img {display:none}

/* ---- themes page: waiting states and the method text on two columns -------- */
.framing-wait__text {font-size:.9rem;line-height:1.65;color:#c6c9d1;margin:6px 0 10px}
.framing-wait__text b {color:#ff8589;font-weight:600}
.framing-method {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 36px}
.framing-method > .pulse__label,.framing-method > a {grid-column:1 / -1}
.framing-method p {margin:8px 0 0}
@media (max-width:860px) {.framing-method {grid-template-columns:minmax(0,1fr)}}

/* ---- the hero aside, four short lines ---------------------------------------- */
.id-what {padding:16px 20px}
.id-what li {padding:11px 0;gap:0 12px}
.id-what p {font-size:.86rem;line-height:1.5}
.id-what p b {font-size:.7rem;margin-bottom:2px}
.id-what p em {font-size:1.15rem}
.id-what__ico {width:34px;height:34px}

/* ---- the video record: stat tiles, the player beside the measurements, the
   boxes flowing on two columns so nothing is left empty ----------------------- */
.rec-stats {list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.rec-stats li {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:10px 12px;display:grid;grid-template-columns:20px minmax(0,1fr);gap:2px 10px;align-items:center}
.rec-stats .ico {width:18px;height:18px;margin:0;grid-row:span 2;color:#ff8589}
.rec-stats b {font-family:var(--font-display);font-size:1.35rem;font-weight:700;color:#f3e8eb;letter-spacing:.01em;line-height:1;font-variant-numeric:tabular-nums}
.rec-stats b.rec-stats__date {font-size:1.05rem}
.rec-stats span {font-size:.72rem;color:#9aa1ae;line-height:1.3}
.rec--flow {display:block}
.rec__top {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr);gap:22px;align-items:start;margin-bottom:14px}
.rec__player {min-width:0}
.rec__facts {display:grid;gap:14px;min-width:0}
.rec__flow {columns:2;column-gap:22px}
.rec__flow .rec-box {break-inside:avoid;page-break-inside:avoid;margin:0 0 14px;display:block}
.rec-box h2 {display:flex;align-items:center;gap:8px}
.rec-box h2 .ico {width:16px;height:16px;margin:0;color:#ff8589;flex:none}
.rec-kv div {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:baseline}
.rec-hist__last {font-size:.76rem;color:#9aa1ae;margin-top:6px}
@media (max-width:960px) {.rec__top {grid-template-columns:minmax(0,1fr)}.rec__flow {columns:1}}
.drawer__body .rec__top {grid-template-columns:minmax(0,1fr)}
.drawer__body .rec__flow {columns:1}
.drawer__body .rec-stats {grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}

/* ---- services: four doors, one open at a time ---------------------------------- */
.svc .container {max-width:1180px}
.svc-idx {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:34px}
.svc-idx__door {display:grid;gap:4px;text-align:left;background:rgba(20,23,32,.9);border:1px solid #353641;border-radius:4px;padding:18px 18px 16px;cursor:pointer;font:inherit;color:inherit;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.svc-idx__door::after {content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#e3414f;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.svc-idx__door:hover {border-color:#8a4b55;transform:translateY(-2px)}
.svc-idx__door.is-active {border-color:#d85a64;background:#1d1a1f}
.svc-idx__door.is-active::after,.svc-idx__door:hover::after {transform:scaleX(1)}
.svc-idx__n {font-family:var(--font-mono);font-size:.7rem;color:#ff8589;letter-spacing:.12em}
.svc-idx__ico .ico {margin:6px 0 2px;width:24px;height:24px}
.svc-idx__verb {font-family:var(--font-display);font-weight:700;font-size:1.6rem;line-height:1;letter-spacing:.01em;color:#f1efe9}
.svc-idx__t {font-size:.92rem;line-height:1.4;color:#dcdad3}
.svc-idx__m {font-size:.72rem;color:#9aa1ae;margin-top:4px}
.svc-sec {animation:svcIn .45s ease}
.svc-sec[hidden] {display:none}
@keyframes svcIn {from {opacity:0;transform:translateY(12px)} to {opacity:1;transform:none}}
.svc-sec__head {max-width:78ch;margin-bottom:26px}
.svc-sec__head .section__title {margin:6px 0 10px}
.svc-sec__head .section__description {margin:0}
.svc-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.svc-card {display:grid;gap:6px;align-content:start;padding:16px 16px 18px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;color:#dcdad3;text-decoration:none;transition:border-color .2s,transform .2s}
.svc-card:hover {border-color:#8a4b55;transform:translateY(-2px)}
.svc-card__ico .ico {margin:0 0 4px}
.svc-card strong {font-size:.98rem;color:#f1efe9;font-weight:600;line-height:1.3}
.svc-card span:not(.svc-card__ico) {font-size:.82rem;line-height:1.5;color:#aab0bc}
.svc-foot {margin:24px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.svc-three {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.svc-col {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px}
.svc-col__ico .ico {margin:0 0 10px}
.svc-col h3 {font-size:1.1rem;margin:0 0 8px}
.svc-col p {font-size:.9rem;line-height:1.65;color:#c6c9d1;margin:0 0 10px}
.svc-col a {color:#e9b4b8;font-size:.86rem}
.svc-code {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.svc-code > div {border:1px solid #353641;background:#101216;border-radius:4px;padding:14px 16px;min-width:0}
.svc-code pre {margin:8px 0 0;font-size:.78rem;line-height:1.55;overflow-x:auto;color:#dcdad3}
.svc-rail {display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;scrollbar-width:thin}
.svc-kind {scroll-snap-align:start;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:18px;display:grid;gap:6px;align-content:start}
.svc-kind__ico .ico {margin:0 0 2px}
.svc-kind h3 {font-size:1.15rem;margin:0}
.svc-kind p {font-size:.88rem;line-height:1.6;color:#c6c9d1;margin:0}
.svc-kind__out {font-size:.74rem;color:#ff8589;margin-top:6px}
.svc-band {margin-top:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px 30px;align-items:center;border:1px solid #353641;background:#191c23;border-radius:4px;padding:22px 24px}
.svc-band p {margin:6px 0 0;font-size:.92rem;line-height:1.65;color:#c6c9d1;max-width:90ch}
@media (max-width:960px) {.svc-idx,.svc-grid {grid-template-columns:repeat(2,minmax(0,1fr))}.svc-three,.svc-code {grid-template-columns:minmax(0,1fr)}.svc-band {grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px) {.svc-idx,.svc-grid {grid-template-columns:minmax(0,1fr)}.svc-rail {grid-auto-columns:minmax(240px,85%)}}

/* ---- about: why, and the four gaps ------------------------------------------- */
.about-why {max-width:1100px}
.about-why__cols {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 36px;margin-top:14px}
.about-why__cols p {font-size:1rem;line-height:1.75;color:#c6c9d1;margin:0}
.about-why__cols em {font-style:italic;color:#f1efe9}
.gaps {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gap {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:20px;display:grid;gap:8px;align-content:start}
.gap__ico .ico {margin:0 0 2px}
.gap h3 {font-size:1.08rem;margin:0}
.gap p {font-size:.88rem;line-height:1.6;color:#c6c9d1;margin:0}
.gap b {font-family:var(--font-display);font-weight:700;font-size:1.9rem;color:#f3e8eb;letter-spacing:.01em;line-height:1;margin-top:8px}
.gap small {font-size:.74rem;color:#9aa1ae}
@media (max-width:960px) {.about-why__cols {grid-template-columns:minmax(0,1fr)}.gaps {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px) {.gaps {grid-template-columns:minmax(0,1fr)}}

/* ---- method: the collection as a flow of five steps ---------------------------- */
.flow-wrap {display:block}
.flow {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;position:relative}
.flow__line {position:absolute;left:34px;right:34px;top:30px;height:3px;background:#2d3038;border-radius:999px;overflow:hidden}
.flow__line i {position:absolute;top:0;bottom:0;width:22%;background:linear-gradient(90deg,transparent,#ef5865,transparent);animation:mflow 5.5s linear infinite}
.flow__step {position:relative;display:grid;gap:6px;align-content:start;padding-top:0}
.flow__ico {width:62px;height:62px;border-radius:50%;background:#1d1a1f;border:1px solid #d85a64;display:grid;place-items:center;position:relative;margin-bottom:6px;box-shadow:0 0 0 6px #16181d}
.flow__ico .ico {margin:0;width:22px;height:22px}
.flow__ico b {position:absolute;right:-4px;bottom:-4px;font-family:var(--font-mono);font-size:.62rem;background:#b82330;color:#fff;border-radius:999px;padding:2px 6px;line-height:1.3}
.flow__cad {font-family:var(--font-mono);font-size:.68rem;color:#ff8589;letter-spacing:.04em}
.flow h3 {font-size:1rem;margin:0;line-height:1.3}
.flow p {font-size:.84rem;line-height:1.6;color:#c6c9d1;margin:0}
@media (max-width:960px) {.flow {grid-template-columns:minmax(0,1fr);gap:18px;padding-left:0}.flow__line {left:30px;right:auto;top:30px;bottom:30px;width:3px;height:auto}.flow__line i {width:100%;height:22%;background:linear-gradient(180deg,transparent,#ef5865,transparent);animation:mflowv 5.5s linear infinite}.flow__step {grid-template-columns:62px minmax(0,1fr);column-gap:14px}.flow__ico {grid-row:span 3}}
@keyframes mflowv {from {top:-25%} to {top:100%}}
@media (prefers-reduced-motion:reduce) {.flow__line i {animation:none;left:40%;top:40%}}

/* ---- data: the base as linked tables, the tiers with their symbols ------------- */
.schema {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;position:relative}
.schema__node {border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:16px 14px 14px;display:grid;gap:4px;align-content:start;position:relative}
.schema__node + .schema__node::before {content:'';position:absolute;left:-10px;top:38px;width:10px;height:2px;background:#5a3a41}
.schema__ico .ico {margin:0 0 4px}
.schema__node h3 {font-size:1rem;margin:0}
.schema__node b {font-family:var(--font-display);font-weight:700;font-size:1.7rem;color:#f3e8eb;letter-spacing:.01em;line-height:1;margin-top:4px}
.schema__node small {font-size:.72rem;color:#9aa1ae}
.schema__node p {font-size:.8rem;line-height:1.5;color:#b3b7c1;margin:6px 0 0}
.schema__note {font-size:.84rem;color:#9aa1ae;margin:14px 0 0;line-height:1.6}
.tier {position:relative}
.tier__ico {position:absolute;top:18px;right:18px}
.tier__ico .ico {margin:0;color:#ff8589}
@media (max-width:1100px) {.schema {grid-template-columns:repeat(3,minmax(0,1fr))}.schema__node + .schema__node::before {display:none}}
@media (max-width:600px) {.schema {grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- the method, light: six animated scenes ----------------------------------- */
.scenes {list-style:none;margin:0;padding:0;display:grid;gap:18px}
.scene {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;overflow:hidden;align-items:stretch}
.scene--flip .scene__art {order:2}
.scene__art {display:block;background:#15181e;border-right:1px solid #30323a;padding:18px 22px;min-height:230px;display:grid;place-items:center}
.scene--flip .scene__art {border-right:0;border-left:1px solid #30323a}
.scene__svg {width:100%;max-width:420px;height:auto;color:#e8e6df;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;font-family:var(--font-mono);font-size:10px}
.scene__body {padding:28px 30px;display:grid;align-content:center;gap:8px}
.scene__n {font-family:var(--font-mono);font-size:.74rem;color:#ff8589;letter-spacing:.12em}
.scene__body h2 {margin:0;font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.05}
.scene__body p {margin:0;font-size:.98rem;line-height:1.7;color:#c6c9d1;max-width:46ch}
.scene__body .btn {justify-self:start;margin-top:6px}
@media (max-width:860px) {.scene {grid-template-columns:minmax(0,1fr)}.scene--flip .scene__art {order:0}.scene__art,.scene--flip .scene__art {border-right:0;border-left:0;border-bottom:1px solid #30323a;min-height:0;padding:14px 16px}.scene__body {padding:20px}}
.svc-grid--5 {grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1100px) {.svc-grid--5 {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px) {.svc-grid--5 {grid-template-columns:minmax(0,1fr)}}

/* the drawings: strokes in ivory, the project's red, the orientation blue */
.scene__svg text,.svc-art text {fill:#e8e6df;stroke:none;font-family:var(--font-mono);font-size:10px}
.scene__svg .sc-badge text,.svc-art .sc-badge text {fill:#fff;font-weight:700}
.scene__svg .sc-badge-blue rect {fill:#1d4ed8;stroke:none}
.sc-red {fill:#b82330;stroke:none}
.sc-grey {fill:#3a3d46;stroke:none}
.sc-fill {fill:#2a2d35;stroke:none}
.sc-fill-red {fill:#ef5865;stroke:none}
.sc-fill-blue {fill:#3b82f6;stroke:none}
.sc-fill-green {fill:#10b981;stroke:none}
.sc-fill-amber {fill:#f59e0b;stroke:none}
.sc-fill-purple {fill:#a855f7;stroke:none}
.sc-fill-cyan {fill:#22d3ee;stroke:none}
.sc-fill-pink {fill:#ec4899;stroke:none}
.sc-line {fill:#6b7280;stroke:none}
.sc-line.sc-strong {fill:#e8e6df}
.sc-line.sc-blue {fill:#60a5fa}
.sc-line.sc-dim {fill:#3a3d46}
.sc-line.sc-mark {fill:#ef5865;animation:scMark 7s ease-in-out infinite;animation-delay:calc(var(--d,0.4) * 1s)}
.sc-axis {stroke:#3a3d46}
.sc-rss {stroke:#e8e6df}
.sc-small {fill:#9aa1ae;font-size:9px}
.sc-n {font-family:var(--font-display);font-size:22px;font-weight:700;fill:#f3e8eb}
.sc-n.sc-static {opacity:1}
.sc-ping circle {stroke:#ef5865;transform-box:fill-box;transform-origin:center;animation:scPing 3.3s ease-out infinite;animation-delay:calc(var(--d,0) * 1s);opacity:0}
.sc-in {opacity:0;transform:translateX(14px);animation:scIn 7s ease-out infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-pop {opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.4);animation:scPop 7s cubic-bezier(.2,.7,.2,1) infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-grow {transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);animation:scGrow 7s cubic-bezier(.2,.7,.2,1) infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-grow text {transform:none}
.sc-type {transform-box:fill-box;transform-origin:left;transform:scaleX(0);animation:scType 7s ease-out infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-draw {stroke:#ef5865;stroke-dasharray:160;stroke-dashoffset:160;animation:scDraw 7s ease-out infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-draw.sc-check {stroke-width:2.4;stroke-dasharray:40;stroke-dashoffset:40}
.sc-wave rect {transform-box:fill-box;transform-origin:center;animation:scWave 1.6s ease-in-out infinite;animation-delay:calc(var(--d,0) * 1s)}
.sc-cursor {animation:scCursor 7s steps(4,end) infinite}
.sc-count .sc-n {opacity:0;animation:scCount 7s steps(1,end) infinite}
.sc-count .sc-n1 {animation-delay:0s}
.sc-count .sc-n2 {animation-delay:2.3s}
.sc-count .sc-n3 {animation-delay:4.6s}
@keyframes scPing {0% {transform:scale(.6);opacity:.9} 70% {opacity:0} 100% {transform:scale(3.2);opacity:0}}
@keyframes scIn {0%,6% {opacity:0;transform:translateX(14px)} 14%,88% {opacity:1;transform:none} 96%,100% {opacity:0;transform:translateX(14px)}}
@keyframes scPop {0%,6% {opacity:0;transform:scale(.4)} 14%,88% {opacity:1;transform:scale(1)} 96%,100% {opacity:0;transform:scale(.4)}}
@keyframes scGrow {0%,6% {transform:scaleY(0)} 16%,88% {transform:scaleY(1)} 96%,100% {transform:scaleY(0)}}
@keyframes scType {0%,4% {transform:scaleX(0)} 16%,88% {transform:scaleX(1)} 96%,100% {transform:scaleX(0)}}
@keyframes scDraw {0%,6% {stroke-dashoffset:160} 22%,88% {stroke-dashoffset:0} 96%,100% {stroke-dashoffset:160}}
@keyframes scWave {0%,100% {transform:scaleY(.35)} 50% {transform:scaleY(1)}}
@keyframes scCursor {0% {transform:translateY(0)} 25% {transform:translateY(34px)} 50% {transform:translateY(68px)} 75% {transform:translateY(102px)} 100% {transform:translateY(0)}}
@keyframes scCount {0% {opacity:1} 32.8% {opacity:1} 33% {opacity:0} 100% {opacity:0}}
@keyframes scMark {0%,8% {fill:#6b7280} 16%,90% {fill:#ef5865} 98%,100% {fill:#6b7280}}
@media (prefers-reduced-motion:reduce) {.sc-ping circle {animation:none;opacity:0}.sc-in,.sc-pop,.sc-grow,.sc-type {animation:none;opacity:1;transform:none}.sc-draw {animation:none;stroke-dashoffset:0}.sc-wave rect,.sc-cursor,.sc-line.sc-mark {animation:none}.sc-count .sc-n {animation:none;opacity:0}.sc-count .sc-n3 {opacity:1}}

/* ---- the detail pages (full page and side panel) ------------------------------- */
.detail-head-section {padding-top:18px}
.detail-head {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:22px;align-items:center;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;overflow:hidden}
.detail-head__art {background:#15181e;padding:14px 18px;display:grid;place-items:center;min-height:170px;border-right:1px solid #30323a}
.detail-head__art .scene__svg,.detail-head__art .svc-art {width:100%;max-width:360px;height:auto}
.detail-head__body {padding:22px 26px 22px 6px}
.detail-head__body h1 {font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.05;margin:6px 0 8px}
.detail-head__body p {margin:0;font-size:.96rem;line-height:1.65;color:#c6c9d1}
.detail-head__links {margin-top:10px!important;font-size:.84rem}
.detail-head__links a {color:#e9b4b8;text-decoration:none}
.detail-head__links a:hover {color:#ff8589}
@media (max-width:760px) {.detail-head {grid-template-columns:minmax(0,1fr)}.detail-head__art {border-right:0;border-bottom:1px solid #30323a;min-height:0}.detail-head__body {padding:18px 20px}}
.drawer__body .detail-head {grid-template-columns:minmax(0,1fr)}
.drawer__body .detail-head__art {border-right:0;border-bottom:1px solid #30323a;min-height:0}
.drawer__body .detail-head__body {padding:18px 20px}
.drawer__body .section--dark {background:transparent}
.drawer__body .anchor-nav {display:none}

/* ---- the services, light: four doors ------------------------------------------- */
.svc-doors {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.svc-door {display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-areas:'art n' 'art verb' 'art t' 'art d' 'art m' 'art go';gap:2px 22px;align-items:start;padding:18px 22px 18px 18px;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;color:inherit;text-decoration:none;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}
.svc-door::after {content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#e3414f;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.svc-door:hover {border-color:#8a4b55;transform:translateY(-2px)}
.svc-door:hover::after {transform:scaleX(1)}
.svc-door__art {grid-area:art;align-self:center}
.svc-art {width:150px;height:auto;color:#e8e6df;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.svc-door__n {grid-area:n;font-family:var(--font-mono);font-size:.7rem;color:#ff8589;letter-spacing:.12em}
.svc-door__verb {grid-area:verb;font-family:var(--font-display);font-weight:700;font-size:1.9rem;line-height:1;color:#f1efe9}
.svc-door__t {grid-area:t;font-size:1rem;color:#dcdad3;margin-top:4px}
.svc-door__d {grid-area:d;font-size:.86rem;line-height:1.55;color:#aab0bc;margin-top:6px}
.svc-door__m {grid-area:m;font-size:.72rem;color:#9aa1ae;margin-top:8px}
.svc-door__go {grid-area:go;margin-top:10px;font-size:.84rem;color:#e9b4b8;justify-self:start}
@media (max-width:860px) {.svc-doors {grid-template-columns:minmax(0,1fr)}}
@media (max-width:520px) {.svc-door {grid-template-columns:minmax(0,1fr);grid-template-areas:'art' 'n' 'verb' 't' 'd' 'm' 'go'}.svc-door__art {justify-self:center}}
.fold summary {cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;margin:0 0 var(--space-md)}
.fold summary::before {content:'';width:8px;height:8px;border-right:2px solid #ff8589;border-bottom:2px solid #ff8589;transform:rotate(-45deg);transition:transform .2s}
.fold[open] summary::before {transform:rotate(45deg)}

/* ---- claim lists: the marker is hidden, the text takes the whole row ----------- */
.observatory .arg-list li {grid-template-columns:minmax(0,1fr)}
.observatory .arg-list li > span {min-width:0}

/* ---- the hero aside: figures at text size, in bold ----------------------------- */
.id-what p strong {font-weight:700;color:#f3e8eb;font-family:var(--font-body);font-size:inherit}
/* ---- the legal notice ------------------------------------------------------------ */
.legal h2 {font-size:1.25rem;margin:28px 0 10px}
.legal h2:first-child {margin-top:0}
.legal p {font-size:.96rem;line-height:1.72;color:#c6c9d1;margin:0 0 8px}
.legal p a {color:#e9b4b8}
.legal__kv {display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.legal__kv div {display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px solid #ffffff0d;align-items:baseline}
@media (max-width:600px) {.legal__kv div {grid-template-columns:minmax(0,1fr)}}
.legal__kv dt {color:#9aa1ae;font-size:.84rem}
.legal__kv dd {color:#eeede9}
/* ---- the overview ------------------------------------------------------------------ */
.overview-metrics {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0}
.overview-metrics div {display:grid;justify-items:center;gap:4px;padding:12px 8px;border:1px solid #30323a;border-radius:4px;background:#191c23}
.overview-metrics .ico {margin:0;width:18px;height:18px}
.overview-metrics dd {margin:0;font-size:1.6rem}
.overview-metrics dt {font-size:.72rem;color:#9aa1ae;text-align:center}
@media (max-width:900px) {.overview-metrics {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:480px) {.overview-metrics {grid-template-columns:repeat(2,minmax(0,1fr))}}
.overview-intro .section__title {margin:6px 0 10px}

/* ---- the mark of a text generated by the model --------------------------------- */
.gen {margin:12px 0 0;border:1px solid #4a2b32;background:#1d1518;border-radius:4px;padding:10px 12px}
.gen__head {display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.gen__badge {display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:700;font-size:.86rem;letter-spacing:.05em;text-transform:uppercase;color:#ff8589}
.ico--gen {width:15px;height:15px;margin:0;color:#ff8589}
.gen__meta {font-size:.78rem;color:#aab0bc}
.gen__videos {list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.gen__v {display:inline-flex;align-items:center;gap:6px;max-width:260px;padding:4px 9px;border:1px solid #3a2a2e;border-radius:999px;background:#241a1e;color:#e8e6df;font-size:.76rem;text-decoration:none}
.gen__v span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gen__v:hover {border-color:#d85a64;color:#fff}
.gen__more {font-size:.76rem;color:#9aa1ae;align-self:center}
.plat {width:14px;height:14px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#ff8589}
.wk__synth .gen {margin-top:10px}
.theme-card .gen {margin-top:10px}

/* ---- the panel of the week, second cut: symbols, controls under the titles,
        the synthesis in its card, eight arguments --------------------------------- */
.wk__cell-head--fixed {margin-bottom:6px}
.wk__cell-head--fixed .wk__label {font-size:1.02rem;color:#f3e8eb;letter-spacing:0;text-transform:none;font-family:var(--font-display);font-weight:700}
.wk__cell-head--fixed .wk__label .ico--lbl {width:20px;height:20px}
.wk__cell .panel-scope {margin:2px 0 10px}
.wk__sub {font-size:.8rem;color:#9aa1ae;line-height:1.5;margin:0 0 10px}
.wk__sub--intro {font-size:.92rem;color:#c0c6d0;max-width:62ch;margin:8px 0 14px}
.wk__controls {display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 12px}
.wk__ctl-cap {font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:#9aa1ae}
.observatory .wk__controls .chart-header__toggle .pill-toggle {padding:5px 11px!important;font-size:.74rem}
@media (min-width:1001px) {.wk__synth-grid {grid-template-columns:minmax(0,1.45fr) minmax(300px,.95fr)}}
.synth-card {position:relative;background:linear-gradient(160deg,#2a1218,#1d1014 60%,#1a1316);border:1px solid #6b2a33;border-radius:5px;padding:18px 20px 14px;box-shadow:0 14px 40px #0008,inset 0 1px 0 #ffffff12}
.synth-card::before {content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#d8303c;border-radius:5px 0 0 5px}
.synth-card__k {display:inline-flex;align-items:center;gap:7px;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#ff8589;font-weight:600}
.synth-card__k .ico--lbl {width:15px;height:15px}
.synth-card__title {margin:8px 0 10px;font-size:clamp(1.15rem,1.8vw,1.5rem);line-height:1.25;color:#fff}
.synth-card__text {margin:0 0 9px;font-size:.95rem;line-height:1.62;color:#e6dfe0}
.synth-card__text .wk__country {color:#ff8589}
.synth-card .gen {margin-top:12px;background:#140c0f;border-color:#4a2b32}
.synth-card .wk__note {margin:10px 0 0}
.synth-card--wait .synth-card__text {color:#c9bfc2;font-style:italic}
.wk__synth-side .reads {margin-top:0}
.gen--compact .gen__badge {font-size:.72rem}
.gen--compact .gen__meta {font-size:.72rem}
.gen--compact .gen__v {font-size:.72rem;padding:3px 8px;max-width:220px}
.live__args--grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px}
.live__args--grid li {align-content:start}
.live__args--grid li a {color:inherit;text-decoration:none;display:block}
.live__args--grid li a:hover span {color:#fff;text-decoration:underline;text-decoration-color:#ff8589}
.live__args--grid small {display:inline-flex;align-items:center;gap:5px}
.live__args--grid small .ico {width:13px;height:13px;color:#9aa1ae}
@media (max-width:760px) {.live__args--grid {grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px) {.synth-card {padding:14px 14px 12px} .wk__cell-head--fixed .wk__label {font-size:.95rem}}

/* ---- section heads with their symbol; two-tone titles ------------------------- */
.sec-head {display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:start;margin:34px 0 18px;max-width:980px}
.sec-head__ico {width:52px;height:52px;border-radius:4px;background:#2a1f23;border:1px solid #5a3a41;display:grid;place-items:center;color:#ff8589}
.sec-head__ico .ico {margin:0;width:26px;height:26px}
.sec-head .section__title {margin:4px 0 8px}
.sec-head .section__description {margin:0}
.section__title .accent,.hero__title-accent {color:#f04b4b}
.hero__sub-accent {color:#ff8589;font-weight:600}

/* ---- the observatory tool bar with symbols ------------------------------------ */
.workspace__tools a {display:inline-flex;align-items:center;gap:7px}
.ico--tool {width:15px;height:15px;margin:0;opacity:.85}
.ico--big {width:84px;height:84px;margin:0;color:#ff8589}

/* ---- orientation switches, told apart from the country switch: tabs, not pills -- */
.observatory .chart-header__toggle:has(.o-dot),.observatory .otoggle {border:0;background:transparent;border-radius:0;padding:0;border-bottom:1px solid #30323a;gap:4px}
.observatory .chart-header__toggle:has(.o-dot) .pill-toggle,.observatory .otoggle .pill-toggle {border-radius:0!important;background:transparent!important;padding:6px 10px 8px!important;border-bottom:2px solid transparent!important;margin-bottom:-1px;color:#aab0bc!important}
.observatory .chart-header__toggle:has(.o-dot) .pill-toggle:hover,.observatory .otoggle .pill-toggle:hover {background:#ffffff08!important;color:#fff!important}
.observatory .chart-header__toggle:has(.o-dot) .pill-toggle--active,.observatory .otoggle .pill-toggle--active,.observatory .otoggle .pill-toggle--active:hover {background:transparent!important;color:#fff!important;border-bottom-color:var(--o,#f04b4b)!important}

/* ---- the podium of public figures ---------------------------------------------- */
.pod {padding:20px 22px 16px}
.podium {list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}
.podium__step {min-width:0}
.podium__step--1 {order:2} .podium__step--2 {order:1} .podium__step--3 {order:3}
.podium__step a {display:grid;gap:4px;text-decoration:none;color:inherit;background:linear-gradient(180deg,#1f2229,#171a20);border:1px solid #353641;border-top:3px solid var(--o,#9aa1ae);border-radius:4px;padding:16px 16px 14px;transition:transform .2s,border-color .2s}
.podium__step a:hover {transform:translateY(-3px);border-color:#8a4b55}
.podium__step--1 a {padding-top:26px;background:linear-gradient(180deg,#2a1218,#1b1216);border-color:#6b2a33}
.podium__step--2 a {padding-top:20px}
.podium__rank {font-family:var(--font-display);font-weight:800;font-size:2.4rem;line-height:1;color:#ff8589;opacity:.9}
.podium__step--1 .podium__rank {font-size:3.2rem;color:#f04b4b}
.podium__name {font-size:1.1rem;line-height:1.25;color:#fff;font-weight:700}
.podium__step--1 .podium__name {font-size:1.35rem}
.podium__n {font-size:.86rem;color:#c9ccd3}
.podium__n b {font-family:var(--font-display);font-size:1.5rem;font-weight:700;color:#f3e8eb;margin-right:4px}
.podium__meta {font-size:.74rem;color:#9aa1ae}
.podium__split {margin-top:6px}
.pod__rest {margin-top:14px}
.pod-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}
.pod-grid > .glass {padding:18px 20px 14px}
.rank-list {list-style:none;margin:0;padding:0}
.rank-row {display:grid;grid-template-columns:2.2rem minmax(0,1.2fr) minmax(60px,1fr) auto 72px;grid-template-areas:'n name bar v split' 'n meta meta meta meta';gap:2px 10px;align-items:center;padding:8px 0;border-bottom:1px solid #ffffff0d}
.rank-row:last-child {border-bottom:0}
.rank-row__n {grid-area:n;font-family:var(--font-mono);font-size:.78rem;color:#ff8589}
.rank-row__name {grid-area:name;color:#eeede9;text-decoration:none;font-size:.92rem;font-weight:600;min-width:0}
.rank-row__name:hover {color:#ff8589}
.rank-row__bar {grid-area:bar;height:6px;background:#ffffff10;border-radius:3px;overflow:hidden}
.rank-row__bar i {display:block;height:100%;width:var(--w,0%);background:linear-gradient(90deg,#b82330,#f04b4b);border-radius:3px;transition:width .9s cubic-bezier(.2,.7,.2,1)}
.rank-row__v {grid-area:v;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:.8rem;color:#f3e8eb}
.rank-row__split {grid-area:split;display:flex;height:6px;border-radius:3px;overflow:hidden;background:#ffffff10}
.rank-row__split i {display:block;background:var(--o,#64748b);min-width:2px}
.rank-row__m {grid-area:meta;font-size:.72rem;color:#8e95a3}
.dir-filter {display:block;margin-bottom:14px}
.dir-filter input {width:100%;max-width:380px;background:#191c23;border:1px solid #3b3d44;color:#eeede9;border-radius:3px;padding:9px 12px;font:inherit;font-size:.9rem}
.dir-filter input:focus {outline:none;border-color:#d85a64}
.dir-kind {font-size:1rem;margin:18px 0 10px;color:#f3e8eb}
.dir-kind small {color:#9aa1ae;font-weight:400;margin-left:6px}
.people-dir li[hidden] {display:none}
@media (max-width:760px) {.podium {grid-template-columns:minmax(0,1fr)} .podium__step--1,.podium__step--2,.podium__step--3 {order:0} .pod-grid {grid-template-columns:minmax(0,1fr)} .rank-row {grid-template-columns:2rem minmax(0,1fr) auto 60px;grid-template-areas:'n name v split' 'n bar bar bar' 'n meta meta meta'}}

/* ---- the person's record: badges, animated months, video thumbnails ------------- */
.pr-head__k a {color:#e9b4b8;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.pr-badges {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 10px}
.pr-badge {display:inline-flex;align-items:center;gap:6px;font-size:.78rem;padding:5px 10px;border-radius:999px;border:1px solid #5a3a41;background:#2a1f23;color:#f3e8eb}
.pr-badge .ico {width:14px;height:14px;margin:0;color:#ff8589}
.pr-badge--hot {border-color:#b82330;background:#3a1218}
.pr-badges small {font-size:.72rem;color:#9aa1ae}
.pr-stats div {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'i b' 'i s';column-gap:10px;align-items:center}
.pr-stats div .ico {grid-area:i;width:20px;height:20px;margin:0;color:#ff8589}
.pr-stats b {grid-area:b} .pr-stats span {grid-area:s}
.pr-months--anim a {transform-origin:bottom;animation:pr-grow .8s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i,0) * 28ms)}
@keyframes pr-grow {from {transform:scaleY(0)} to {transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce) {.pr-months--anim a {animation:none}}
.rec-box h2 .ico {width:17px;height:17px;margin:0 8px 0 0;vertical-align:-3px;color:#ff8589}
.rec-list--thumbs li {padding:7px 0}
.rec-list--thumbs a {display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:start}
.rl-thumb {width:72px;aspect-ratio:16/9;border-radius:2px;overflow:hidden;background:#101216;display:grid;place-items:center;font-size:.66rem;color:#9aa1ae}
.rl-thumb img {width:100%;height:100%;object-fit:cover;display:block}
.rl-thumb--tt {background:#2a1f23;color:#e9b4b8;font-weight:600}
.rl-body strong {display:block;font-size:.86rem;line-height:1.4;font-weight:600;color:#eeede9}
.rec-list--thumbs a:hover strong {color:#ff8589}

/* ---- themes and arguments: figures, cards that open, thumbnails ---------------- */
.kpis {display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin:var(--space-md) 0 0}
.kpis > div {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'i v' 'i l';column-gap:10px;align-items:center;border:1px solid #353641;background:rgba(20,23,32,.9);border-radius:4px;padding:12px 14px}
.kpis .ico {grid-area:i;width:20px;height:20px;margin:0;color:#ff8589}
.kpis dd {grid-area:v;margin:0;font-family:var(--font-display);font-weight:700;font-size:1.5rem;line-height:1;color:#f3e8eb}
.kpis dd.kpis__txt {font-family:var(--font-mono);font-size:.82rem;font-weight:500}
.kpis dt {grid-area:l;font-size:.72rem;color:#9aa1ae;margin-top:3px;line-height:1.35}
.framing-stats {margin-top:var(--space-md)}
.framing-head__periods .period-nav {margin-top:6px}
.period-chip--week {border-color:#b82330;color:#ffd0d3}
.period-chip--week.is-active {box-shadow:0 0 0 2px #b8233055}
.framing-arg {padding:0;overflow:hidden}
.framing-arg__head {display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'r t' 'r m';gap:4px 14px;align-items:start;width:100%;text-align:left;background:transparent;border:0;color:inherit;font:inherit;padding:18px 20px 10px;cursor:pointer}
.framing-arg__head:hover .framing-arg__text {color:#fff}
.framing-arg__head .arg-card__rank {grid-area:r}
.framing-arg__head .framing-arg__text {grid-area:t}
.framing-arg__head .framing-arg__meta {grid-area:m;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.framing-arg__chev {width:9px;height:9px;border-right:2px solid #ff8589;border-bottom:2px solid #ff8589;transform:rotate(45deg);transition:transform .25s;margin-left:4px}
.framing-arg.is-open .framing-arg__chev {transform:rotate(225deg)}
.framing-arg__bars,.framing-arg__quotes {padding:0 20px}
.framing-arg__quotes {padding-bottom:12px}
.framing-arg__quotes .quote:last-child {margin-bottom:0}
.framing-arg__more {padding:12px 20px 18px;border-top:1px solid #30323a;background:#15181e}
.framing-more__list {list-style:none;margin:6px 0 12px;padding:0;display:grid;gap:8px}
.framing-more__list li {display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;font-size:.86rem;line-height:1.5;color:#dcdad3}
.framing-more__list li i {width:8px;height:8px;border-radius:50%;background:var(--o,#64748b);margin-top:6px}
.framing-more__list small {display:block;color:#9aa1ae;font-size:.74rem;margin-top:2px}
.quote--v footer {display:block}
.quote__video {display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center;width:100%;text-align:left;background:transparent;border:0;padding:4px 0 0;color:inherit;font:inherit;cursor:pointer}
.quote__thumb {width:64px;aspect-ratio:16/9;border-radius:2px;overflow:hidden;background:#101216;display:grid;place-items:center;font-size:.62rem;color:#9aa1ae}
.quote__thumb img {width:100%;height:100%;object-fit:cover;display:block}
.quote__who {font-size:.76rem;color:#aab0bc;display:block}
.quote__who i {display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--o,#64748b);margin-right:6px;vertical-align:0}
.quote__who em {display:block;font-style:normal;color:#e9b4b8;margin-top:2px}
.quote__video:hover .quote__who em {color:#ff8589;text-decoration:underline}
.thumb-grid {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.thumb-grid a {display:grid;gap:6px;text-decoration:none;color:inherit;background:#191c23;border:1px solid #30323a;border-radius:3px;padding:8px;transition:border-color .2s,transform .2s}
.thumb-grid a:hover {border-color:#8a4b55;transform:translateY(-2px)}
.thumb-grid__img {position:relative;aspect-ratio:16/9;border-radius:2px;overflow:hidden;background:#101216;display:grid;place-items:center;font-size:.76rem;color:#9aa1ae}
.thumb-grid__img img {width:100%;height:100%;object-fit:cover;display:block}
.thumb-grid__img--tt {background:#2a1f23;color:#e9b4b8;font-weight:600}
.thumb-grid__img b {position:absolute;right:6px;bottom:6px;font-family:var(--font-mono);font-size:.72rem;background:#000c;color:#fff;padding:2px 6px;border-radius:2px}
.thumb-grid strong {font-size:.86rem;line-height:1.4;font-weight:600;color:#eeede9}
.thumb-grid small {font-size:.72rem;color:#9aa1ae}
.thumb-grid small i {display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--o,#64748b);margin-right:5px}
.framing-method {display:block}
.framing-method p {margin:8px 0 10px;font-size:.92rem;line-height:1.65;color:#c0c3cb;max-width:90ch}
.framing-method a {color:#e9b4b8;text-decoration:none;font-size:.86rem}

/* ---- the data page's doors; breadcrumb of the detail pages ---------------------- */
.data-doors {display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
@media (max-width:1100px) {.data-doors {grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}
.data-door {position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:'i n' 'i t' 'i d' 'i f' 'i go';gap:3px 16px;align-items:start;text-decoration:none;color:inherit;background:rgba(20,23,32,.9);border:1px solid #353641;border-radius:4px;padding:20px 20px 18px;overflow:hidden;transition:transform .2s,border-color .2s}
.data-door::after {content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#e3414f;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.data-door:hover {border-color:#8a4b55;transform:translateY(-2px)}
.data-door:hover::after {transform:scaleX(1)}
.data-door__ico {grid-area:i;width:46px;height:46px;border-radius:4px;background:#2a1f23;border:1px solid #5a3a41;display:grid;place-items:center;color:#ff8589}
.data-door__ico .ico {margin:0;width:24px;height:24px}
.data-door__n {grid-area:n;font-family:var(--font-mono);font-size:.76rem;color:#ff8589}
.data-door__t {grid-area:t;font-family:var(--font-display);font-weight:700;font-size:1.25rem;line-height:1.15;color:#fff}
.data-door__d {grid-area:d;font-size:.86rem;line-height:1.55;color:#c0c3cb}
.data-door__f {grid-area:f;font-size:.74rem;color:#9aa1ae;margin-top:6px}
.data-door__f b {font-family:var(--font-display);font-weight:700;font-size:1.15rem;color:#f3e8eb;margin-right:6px}
.data-door__go {grid-area:go;font-size:.8rem;color:#e9b4b8;margin-top:6px}
.back-bar {display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.84rem;color:#aab0bc;margin:0 0 14px}
.back-bar a {display:inline-flex;align-items:center;gap:6px;color:#e9b4b8;text-decoration:none;padding:6px 10px;border:1px solid #4a4d57;border-radius:999px;background:#191c23}
.back-bar a:hover {border-color:#d85a64;color:#fff}
.back-bar .ico {width:14px;height:14px;margin:0}
.back-bar__sep {color:#5a5d68}
.detail-head__art--ico {min-height:150px}
.about-col--never {border-color:#6b2a33;background:#1d1518}

/* ---- the "volet": sections that slide over one another ----------------------- */
@media (min-width:761px) and (prefers-reduced-motion:no-preference) {
  .stack > .section {position:sticky;top:var(--stack-top,0px);border-radius:28px 28px 0 0;box-shadow:0 -22px 60px #000a;border-top:1px solid #ffffff14;background:#121419}
  .stack > .section.no-stick {position:relative}
  .stack > .section.section--dark {background:#0e1014}
  .stack > .section:nth-of-type(1) {z-index:1} .stack > .section:nth-of-type(2) {z-index:2} .stack > .section:nth-of-type(3) {z-index:3} .stack > .section:nth-of-type(4) {z-index:4} .stack > .section:nth-of-type(5) {z-index:5} .stack > .section:nth-of-type(6) {z-index:6} .stack > .section:nth-of-type(7) {z-index:7} .stack > .section:nth-of-type(8) {z-index:8} .stack > .section:nth-of-type(9) {z-index:9} .stack > .section:nth-of-type(10) {z-index:10} .stack > .section:nth-of-type(11) {z-index:11} .stack > .section:nth-of-type(12) {z-index:12}
  .stack > .section.hero,.stack > .hero {position:relative;z-index:0;border-radius:0;box-shadow:none;border-top:0;background:transparent}
  .stack > .section.detail-head-section {border-radius:0;box-shadow:none;border-top:0;position:relative}
}

/* ---- the "For whom" rows, aligned --------------------------------------------- */
.rows li {grid-template-columns:3rem minmax(0,1fr) minmax(0,1.5fr) minmax(160px,auto);align-items:start}
.rows li > div {min-width:0}
.rows__a {justify-self:end;align-self:center}
@media (max-width:860px) {.rows li {grid-template-columns:2.4rem minmax(0,1fr);grid-template-rows:auto} .rows li > div,.rows__d,.rows__a {grid-column:2} .rows__a {justify-self:start}}

/* ---- no sentence cut short: the text takes the room it needs -------------------- */
.pr-chan a,.terr__top a,.gen__v span,.wk-themes a,.rec-themes a,.who-row__name,.who-chip span {white-space:normal;overflow:visible;text-overflow:clip}
.rc__title,.feed-item__title,.video-card__title,.video-card__snippet {display:block;-webkit-line-clamp:unset;-webkit-box-orient:unset;overflow:visible}
.gen__v {max-width:100%}
.video-card__thumb--tiktok .tt-caption {display:block;overflow:hidden;max-height:4.2em}
@media (max-width:640px) {.kpis {grid-template-columns:repeat(2,minmax(0,1fr))} .framing-arg__head {padding:14px 14px 8px} .framing-arg__bars,.framing-arg__quotes {padding:0 14px} .framing-arg__quotes {padding-bottom:10px}}

/* ---- phones: the switches wrap, the figures pair up, the rails slide sideways --- */
@media (max-width:640px) {
  .observatory .panel-scope__choices {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;border-radius:14px;padding:4px;gap:4px}
  .observatory .panel-scope__choices a {justify-content:center;padding:9px 8px;font-size:.8rem;white-space:nowrap}
  .observatory .wk__all-nav a {padding:10px 8px;font-size:.84rem}
  .observatory .chart-header__toggle,.observatory .chart-header__toggle:has(.o-dot),.observatory .otoggle {flex-wrap:wrap!important;overflow:visible!important;max-width:100%}
  .wk__figures {grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .wk__figures div:nth-child(5):last-child {grid-column:span 2}
  .wk__controls {align-items:flex-start;flex-direction:column;gap:6px}
  .live__args--grid small {display:flex;flex-wrap:wrap}
  .wk__cell-head {align-items:flex-start}
  .wk__sub {font-size:.78rem}
  .wk__head h2 {font-size:1.55rem}
  .wk__kicker {font-size:.68rem;letter-spacing:.08em}
  .wk__foot {flex-direction:column;align-items:flex-start;gap:12px}
  .wk__foot .btn {width:100%;text-align:center}
}
@media (max-width:760px) {
  .rail {margin:0}
  .rail__viewport {height:auto;overflow:visible;padding:0}
  .rail__list {display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;scrollbar-width:thin}
  .rail__list li {flex:0 0 84%;scroll-snap-align:start}
  .rail__fade {display:none}
  .rc {height:100%}
}
.synth-card--day {padding:16px 18px 12px}
.workspace__tools {position:relative;scroll-snap-type:x proximity}
.workspace__tools a {scroll-snap-align:start;white-space:nowrap}

/* ===== three formats: phone (≤640), tablet (641–1000), desktop (>1000) ====== */
@media (max-width:640px) {
  /* tables become stacked cards; site-ui.js gives each cell its column heading */
  .data-table.is-cards thead {display:none}
  .data-table.is-cards,.data-table.is-cards tbody {display:block;width:100%}
  .data-table.is-cards tr {display:grid;grid-template-columns:minmax(0,1fr);gap:3px;border:1px solid #353641;border-radius:4px;padding:10px 12px;margin-bottom:8px;background:rgba(20,23,32,.9)}
  .data-table.is-cards td {display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;border:0;text-align:left!important;white-space:normal;font-size:.86rem}
  .data-table.is-cards td::before {content:attr(data-th);color:#9aa1ae;font-size:.72rem;flex:0 0 48%}
  .data-table.is-cards td:first-child {font-weight:600;color:#f3e8eb;padding-bottom:6px;border-bottom:1px solid #ffffff10;margin-bottom:3px}
  .data-table.is-cards td:first-child::before {display:none}
  .data-table-wrap,.table-container {overflow:visible}
  /* key–value pairs, one per line */
  .rec-kv {grid-template-columns:minmax(0,1fr)}
  /* figure tiles by pairs */
  .pr-stats,.terr__figs,.week-metrics {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .week-metrics > div,.week-metrics > a:not(.week-metrics__method) {border:1px solid #353641;border-radius:4px;padding:10px 12px;background:rgba(20,23,32,.9)}
  .week-metrics__method {grid-column:span 2}
  /* the records to read slide sideways, the picture on top */
  .reads {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding:2px 2px 10px;margin:0;scrollbar-width:thin}
  .reads li {flex:0 0 86%;scroll-snap-align:start}
  .reads button {height:100%;grid-template-columns:minmax(0,1fr);gap:8px}
  .reads__thumb {width:100%;aspect-ratio:16/9}
  /* the synthesis folds after its first paragraph */
  .synth-card.is-folded .synth-card__text:nth-of-type(n+2),.synth-card.is-folded .gen,.synth-card.is-folded > .wk__note {display:none}
  .synth-card__more {display:inline-flex;align-items:center;gap:6px;margin:4px 0 8px;font:inherit;font-size:.82rem;color:#ff8589;background:transparent;border:1px solid #6b2a33;border-radius:999px;padding:6px 12px;cursor:pointer}
  /* one column where two or three would not fit */
  .thumb-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .framing-head {grid-template-columns:minmax(0,1fr);padding:16px;gap:14px}
  .framing-stats {grid-template-columns:minmax(0,1fr)}
  .del-stats {grid-template-columns:minmax(0,1fr)}
  .del-stats > div + div {border-left:0;border-top:1px solid #353641}
  .framing-nav .framing-chip {padding:.4rem .6rem;font-size:.78rem}
  .rec-head h1 {font-size:1.35rem}
  .hero__title {font-size:clamp(1.9rem,9vw,2.6rem)}
  .section__title {font-size:1.5rem}
  .sec-head {grid-template-columns:40px minmax(0,1fr);gap:12px}
  .sec-head__ico {width:40px;height:40px}
  .sec-head__ico .ico {width:20px;height:20px}
  .part__head {grid-template-columns:40px minmax(0,1fr);gap:12px}
  .part__ico {width:40px;height:40px}
  .part__ico .ico {width:20px;height:20px}
  .wk__latest {grid-template-columns:minmax(0,1fr)}
  .live__feed li,.live__args li {font-size:.88rem}
  .podium__step a {grid-template-columns:auto minmax(0,1fr);grid-template-areas:'r name' 'r n' 'r meta' 'r split';column-gap:14px;padding:14px}
  .podium__rank {grid-area:r;align-self:start} .podium__name {grid-area:name} .podium__n {grid-area:n} .podium__meta {grid-area:meta} .podium__split {grid-area:split}
  .podium__step--1 a {padding-top:14px}
  .podium__step--1 .podium__rank {font-size:2.6rem}
}
@media (min-width:641px) and (max-width:1000px) {
  .pod-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .thumb-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
  .data-doors {grid-template-columns:repeat(2,minmax(0,1fr))}
  .framing-head {grid-template-columns:minmax(0,1fr)}
  .framing-stats {grid-template-columns:minmax(0,1fr)}
  .kpis {grid-template-columns:repeat(3,minmax(0,1fr))}
  .pr-stats {grid-template-columns:repeat(2,minmax(0,1fr))}
}
.fold--note {margin:6px 0 0;max-width:80ch}
.fold--note summary {font-size:.84rem;color:#e9b4b8;cursor:pointer}
.fold--note .section__description {margin-top:8px;font-size:.88rem}
.section__header.sec-head {display:grid}
/* tablets: the three rails one under the other, sliding sideways; the rankings in one column */
@media (min-width:641px) and (max-width:1100px) {
  .wk__rail {grid-column:span 6!important;border-right:0}
  .rail {margin:0}
  .rail__viewport {height:auto;overflow:visible;padding:0}
  .rail__list {display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;scrollbar-width:thin}
  .rail__list li {flex:0 0 46%;scroll-snap-align:start}
  .rail__fade {display:none}
  .rc {height:100%}
  .pod-grid {grid-template-columns:minmax(0,1fr)}
}
@media (max-width:1100px) {
  .wk__rail {min-height:0;display:block}
  .wk__rail .rail {flex:none;min-height:0}
}
@media (max-width:640px) {
  .code-card pre,.about-prose pre,pre.reveal {white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}
}
/* a section head with its symbol: the accent line spans the grid, nothing slips into the icon column */
.section__header.sec-head {grid-template-columns:52px minmax(0,1fr);text-align:left;max-width:980px;margin-left:0;align-items:start}
.section__header.sec-head::before,.section__header.sec-head::after {grid-column:1 / -1}
.section__header.sec-head > div {min-width:0}
@media (max-width:640px) {.section__header.sec-head {grid-template-columns:40px minmax(0,1fr)}}

/* ---- the generated-text mark: small chips; the hourglass of the waiting message ---- */
.gen__videos {display:flex;flex-wrap:wrap;gap:4px 6px;margin-top:6px}
.gen__v {font-size:.72rem;padding:3px 8px;max-width:100%;line-height:1.3;border-radius:999px}
.gen__v .ico,.gen__v svg {width:12px;height:12px;flex:none}
.gen__more {font-size:.72rem}
.wait {display:inline-flex;align-items:flex-start;gap:10px}
.wait__hg {width:22px;height:22px;flex:none;margin-top:1px;stroke:#ff8589;fill:none;stroke-width:1.5;stroke-linecap:round;animation:hg-flip 2.6s ease-in-out infinite;transform-origin:50% 50%}
.wait__hg .hg-sand {fill:#ff8589;stroke:none;transform-box:fill-box}
.wait__hg .hg-sand--top {transform-origin:50% 0%;animation:hg-top 2.6s linear infinite}
.wait__hg .hg-sand--bottom {transform-origin:50% 100%;animation:hg-bottom 2.6s linear infinite}
@keyframes hg-flip {0%,72% {transform:rotate(0)} 88%,100% {transform:rotate(180deg)}}
@keyframes hg-top {0% {transform:scaleY(1)} 70% {transform:scaleY(.08)} 72%,100% {transform:scaleY(.08)}}
@keyframes hg-bottom {0% {transform:scaleY(.08)} 70% {transform:scaleY(1)} 72%,100% {transform:scaleY(1)}}
@media (prefers-reduced-motion:reduce) {.wait__hg,.wait__hg .hg-sand {animation:none}}
/* the rails: cards keep their own height; no clock controls on a phone */
@media (max-width:1100px) {.rail__list {align-items:flex-start}}
@media (max-width:640px) {.rail__controls {display:none} .rail__list li {flex:0 0 80%}}
/* rails on tablets and phones: a short vertical list, no carousel (a carousel takes the height of its tallest card) */
@media (max-width:1100px) {
  .rail__viewport {height:auto;overflow:visible;padding:0}
  .rail__list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding:0;align-items:start}
  .rail__list li {flex:none;scroll-snap-align:none}
  .rail__list li:nth-child(n+5) {display:none}
  .rail__fade,.rail__controls {display:none}
  .rc {height:auto}
}
@media (max-width:640px) {
  .rail__list {grid-template-columns:minmax(0,1fr)}
  .rail__list li:nth-child(n+4) {display:none}
  .reads {display:grid;overflow:visible;padding:0;gap:8px;margin-top:8px}
  .reads li {flex:none}
  .reads button {height:auto;grid-template-columns:88px minmax(0,1fr);gap:10px}
  .reads__thumb {width:88px}
}

.gen--compact .gen__v,.gen .gen__v {max-width:100%}
.gen__v span {white-space:normal}
/* the rail cells take the height of their content: no row stretch below the cards */
@media (max-width:1100px) {
  .wk__grid {align-items:start;grid-auto-rows:auto}
  .wk__cell.wk__rail {height:auto;min-height:0;padding-bottom:16px}
}
@media (max-width:1100px) {.wk .rail__viewport,.rail__viewport {height:auto!important;overflow:visible;padding:0}}
