/* Linear layered panels / Perplexity question-led composition.
   Entrance: transitions.dev Texts Reveal (500ms, 12px, 3px blur, 40ms stagger). */
.landing-section{max-width:1560px;margin:0 auto;padding:28px 3.5% 48px}.landing-caption{display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.07em;color:var(--muted);padding:0 0 24px}.keyword-mosaic{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(76px,auto));grid-auto-rows:minmax(76px,auto);gap:12px;position:relative;padding:12px 0 18px;isolation:isolate}.mosaic-centre{grid-column:3/7;grid-row:1/7;position:relative;z-index:3;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:24px;padding:4px 20px 14px}.mosaic-identity{text-align:center}.mosaic-identity .eyebrow{font-size:10px;margin:0 0 14px}.mosaic-identity h1{font-size:clamp(44px,5.4vw,81px);font-weight:400;line-height:.98;letter-spacing:-.075em;margin:0}.mosaic-identity h1 em{display:block;font-family:Instrument,serif;font-weight:400;font-size:1.25em;line-height:1.08;letter-spacing:-.055em}.mosaic-role{font-size:11px;color:var(--muted);line-height:1.7;margin-top:17px}.mosaic-role strong{color:var(--ink);font-weight:500}.mosaic-links{display:flex;justify-content:center;align-items:center;gap:26px;margin-top:13px}.mosaic-links a{font-size:11px;line-height:1.6;padding:8px 0 3px}.mosaic-nojs{text-align:center;font-size:14px;padding:25px}
.keyword-tile{grid-column:var(--tile-col);grid-row:var(--tile-row);align-self:center;min-height:82px;display:flex;flex-direction:column;justify-content:center;gap:8px;position:relative;padding:14px 16px;border:1px solid #cbd2c5;border-radius:10px;background:#edf0e7;color:var(--ink);box-shadow:0 6px 16px #173d3009;opacity:var(--tile-opacity,.85);transform:translateY(var(--tile-offset));transition:opacity 250ms cubic-bezier(.22,1,.36,1),transform 350ms cubic-bezier(.22,1,.36,1),box-shadow 350ms cubic-bezier(.22,1,.36,1),background 250ms ease;overflow-wrap:anywhere;min-width:0}.keyword-tile .tile-meta{font-size:8px;letter-spacing:.055em;text-transform:uppercase;color:inherit;opacity:.68;line-height:1.4}.keyword-tile strong{font-size:clamp(13px,1.55vw,22px);font-weight:500;letter-spacing:-.035em;line-height:1.16;text-wrap:balance}.tile-evidence{display:flex;justify-content:space-between;font-size:9px;opacity:.75;gap:10px}.tile-evidence>span{font-size:14px;line-height:1}.tile-tone-0{background:#e4e6db;--tile-opacity:.8}.tile-tone-1{background:#d9e2d1;--tile-opacity:.74}.tile-tone-2{background:var(--lilac);--tile-opacity:.94}.tile-tone-3{background:#fff;--tile-opacity:.68}.tile-tone-4{background:var(--ink);color:var(--paper);border-color:var(--ink);--tile-opacity:1}.tile-tone-5{background:var(--lime);border-color:#c4d694;--tile-opacity:.9}.keyword-tile:hover,.keyword-tile:focus-visible{opacity:1;transform:translateY(calc(var(--tile-offset) - 4px));box-shadow:0 12px 24px #173d301a;z-index:5}.keyword-tile:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.js .keyword-tile{animation:keyword-arrive 500ms cubic-bezier(.22,1,.36,1) backwards;animation-delay:var(--tile-delay)}
.landing-index{padding:40px 0 10px}.landing-index>.eyebrow{text-align:center;font-size:10px;letter-spacing:.035em;margin-bottom:18px}.landing-domain-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.landing-domain-nav a{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:6px;padding:11px 14px;font-size:11px;transition:background 250ms var(--ease)}.landing-domain-nav a span{font-size:9px;color:var(--muted);font-variant-numeric:tabular-nums}.landing-domain-nav a:hover,.landing-domain-nav a[aria-current=true]{background:var(--lilac)}
/* Spotlight is visual only. All background links still respond to the first click. */
body:has(.assistant-inline)>.site-header,body:has(.assistant-inline)>footer,.mosaic-identity,.landing-caption,.landing-index,.landing-section+.selected-work{transition:opacity 350ms cubic-bezier(.22,1,.36,1),filter 350ms cubic-bezier(.22,1,.36,1)}
.assistant-spotlight>.site-header,.assistant-spotlight>footer,.assistant-spotlight .mosaic-identity,.assistant-spotlight .landing-caption,.assistant-spotlight .landing-index,.assistant-spotlight .selected-work{opacity:.72;filter:grayscale(.65)}
.assistant-spotlight .keyword-tile{opacity:calc(var(--tile-opacity,.85)*.8);filter:grayscale(.55);animation:none}
.assistant-spotlight .assistant-inline{box-shadow:0 18px 65px #173d301c;border-color:#afbd9b}
.assistant-spotlight .assistant-inline::before{background:var(--lime)}
@keyframes keyword-arrive{from{opacity:0;transform:translateY(calc(var(--tile-offset) + 12px));filter:blur(3px)}to{opacity:var(--tile-opacity,.85);transform:translateY(var(--tile-offset));filter:blur(0)}}
@media(min-width:1550px){.keyword-mosaic{gap:17px;grid-template-rows:repeat(8,minmax(86px,auto))}.keyword-tile{padding:18px 22px}.keyword-tile .tile-meta{font-size:9px}.keyword-tile strong{font-size:24px}.tile-evidence{font-size:10px}.mosaic-centre{padding:8px 32px 16px}}
@media(max-width:1000px){.landing-section{padding:24px 3% 35px}.keyword-mosaic{gap:9px;grid-template-rows:repeat(8,minmax(65px,auto))}.keyword-tile{padding:11px 10px;gap:7px;border-radius:8px}.keyword-tile strong{font-size:14px}.keyword-tile .tile-meta{font-size:7px}.mosaic-centre{padding:5px 9px;gap:20px}.mosaic-identity h1{font-size:54px}.mosaic-role{font-size:10px}}
@media(max-width:680px){.landing-section{padding:22px 5% 28px}.landing-caption{font-size:8px;padding-bottom:18px}.landing-caption>span:last-child{display:none}.keyword-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:auto;gap:12px;padding-top:0}.mosaic-centre{grid-column:1/-1;grid-row:1;padding:14px 0 22px;gap:23px}.mosaic-identity h1{font-size:clamp(57px,15vw,78px)}.mosaic-role{font-size:11px}.mosaic-links a{font-size:12px}.keyword-tile{grid-column:auto;grid-row:auto;min-height:100px;padding:15px;transform:translateY(var(--tile-offset));gap:9px}.keyword-tile strong{font-size:18px}.keyword-tile .tile-meta{font-size:8px}.tile-evidence{font-size:10px}.keyword-tile:nth-of-type(7n){grid-column:1/-1;min-height:90px}.landing-index{padding-top:24px}.landing-domain-nav{gap:7px}.landing-domain-nav a{font-size:10px;padding:10px}}
@media(prefers-reduced-motion:reduce){.js .keyword-tile{animation:none}.keyword-tile,.mosaic-identity,.landing-caption,.landing-index{transition:none}}

.tiles-settled .keyword-tile{animation:none}
