/* S-31 company page base (T-005 prototype): the design tokens (page_shell.TOKENS), the site rules the sections use
   (assets/site-e.css without its @font-face: the site shell loads the fonts), the page kit (assets/pe.css) and the
   strategy kit (assets/strategy.css). Section styles follow in 10_header.css … c0_cta.css.
   Regenerate from the prototype when it changes (the prototype session owns those files). */

/* ---- tokens (page_shell.TOKENS) ---- */
main.cp{--st-surface-sunken:240 20% 4%;--st-surface-base:240 16% 7%;--st-surface-raised:240 15% 10%;
  --st-surface-overlay:240 14% 13%;--border:240 10% 18%;--foreground:0 0% 98%;--muted-foreground:240 5% 55%;
  --primary:270 91% 65%;--st-status-success:158 64% 52%;--radius:.5rem;background:hsl(var(--st-surface-sunken))}
main.cp .st-card{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) * 2);background:hsl(var(--st-surface-raised));
  box-shadow:inset 0 1px 0 hsl(var(--foreground) / .04),0 1px 0 hsl(var(--foreground) / .03)}
/* same container as the site shell header/footer (Tailwind max-w-7xl, px-4 sm:px-6 lg:px-8) */
/* the site header is fixed (h-16) and transparent over the hero: the hero adds the 4rem itself */
main.cp .lp-wrap{max-width:80rem;margin-inline:auto;padding-inline:1rem}
@media (min-width:640px){main.cp .lp-wrap{padding-inline:1.5rem}}
@media (min-width:1024px){main.cp .lp-wrap{padding-inline:2rem}}
.cp-note{margin:0;font-size:.8125rem;line-height:1.5;color:hsl(240 5% 55% / .9)}
/* tables of the company page (Mell's SEO edit turned lists into tables; drawn on the surface ladder) */
.cp-tw{overflow-x:auto;border:1px solid hsl(var(--border));border-radius:calc(var(--radius) * 2);background:hsl(var(--st-surface-raised))}
.cp-table{width:100%;border-collapse:collapse;font-size:.875rem;font-variant-numeric:tabular-nums}
.cp-table caption{caption-side:top;text-align:left;padding:14px 18px 10px;font-size:.75rem;line-height:1.45;color:hsl(var(--muted-foreground))}
.cp-table th,.cp-table td{padding:10px 18px;text-align:left;vertical-align:top;border-top:1px solid hsl(var(--border))}
.cp-table thead th{font-size:.6875rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground));background:hsl(var(--st-surface-base))}
.cp-table tbody th{font-weight:500;color:hsl(var(--foreground));white-space:nowrap}
.cp-table td{color:hsl(var(--muted-foreground))}
.cp-table td.n,.cp-table th.n{text-align:right;white-space:nowrap;color:hsl(var(--foreground))}
.cp-table tfoot th,.cp-table tfoot td{font-weight:600;color:hsl(var(--foreground));background:hsl(var(--st-surface-base))}
.cp-sh{display:grid;gap:10px;max-width:56rem;margin-bottom:20px}
.cp-kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.cp-kicker .cp-ic{width:15px;height:15px}
.cp-h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.cp-h3{margin:0 0 12px;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.cp-lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.cp-lead a,.cp-note a,.cp-p a{color:hsl(var(--foreground));text-decoration:underline;text-decoration-color:hsl(var(--foreground) / .3);text-underline-offset:3px}
.cp-p{margin:0;font-size:.9375rem;line-height:1.6;color:hsl(var(--muted-foreground))}
/* tables drawn as the existing grids: real <table> markup + explicit ARIA roles (CSS display drops the implicit ones) */
.cp-gt{display:block;width:100%;border-collapse:collapse;border-spacing:0}
.cp-gt > thead,.cp-gt > tbody{display:block}
.cp-gt th,.cp-gt td{padding:0;text-align:inherit;font-weight:inherit;vertical-align:middle}
.cp-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:10px;font-size:.875rem;font-weight:600;
  color:hsl(0 0% 100%);background:hsl(270 91% 65%);text-decoration:none}
.cp-skip:focus{top:12px;outline:2px solid hsl(0 0% 98%);outline-offset:2px}
main.cp:focus{outline:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cp-notes{padding:28px 0 64px}
.cp-notes h2{font-size:1rem;margin:28px 0 10px;color:hsl(240 5% 55%)}
.cp-notes table{width:100%;border-collapse:collapse;font-size:.85rem}
.cp-notes th,.cp-notes td{border:1px dashed hsl(240 10% 18%);padding:8px 10px;text-align:left;vertical-align:top}
.cp-notes th{width:160px;color:hsl(240 5% 55%);font-weight:600}

/* ---- site rules (assets/site-e.css) ---- */
/* Dumped from the CSSOM of /pseo-look/e (T-006 variant E, spy-web dev build) on 2026-10-28. Fonts are local; dev URLs removed.
   Trimmed 2026-10-29 to the rules that match an element on one of the 12 rendered prototype pages (1440 and 390, top and scrolled,
   all lists and details open; pseudo-classes ignored when matching). Script: ../scratch/trim/. */
.lp { --lp-canvas: var(--background, 228 12% 5%); --lp-surface-1: var(--card, 228 10% 8%); --lp-surface-2: var(--st-surface-overlay, 228 9% 11%); --lp-surface-3: var(--st-surface-floating, 228 8% 15%); --lp-line: var(--border, 228 8% 18%); --lp-line-strong: var(--border-strong, 228 7% 26%); --lp-text: var(--foreground, 220 14% 96%); --lp-text-2: var(--foreground-secondary, 222 8% 68%); --lp-text-3: var(--muted-foreground, 224 6% 57%); --lp-primary: var(--primary, 272 100% 50%); --lp-primary-lifted: 272 100% 67%; --lp-primary-hover: var(--primary-hover, 272 100% 58%); --lp-primary-ink: var(--primary-foreground, 0 0% 100%); --lp-primary-text: var(--primary-text, 272 100% 76%); --lp-success: var(--st-status-success, 158 64% 52%); --lp-danger: var(--st-status-danger, 0 86% 70%); --lp-dir-content: var(--dir-content, 14 92% 64%); --lp-dir-influencers: var(--dir-influencers, 40 96% 58%); --lp-dir-shops: var(--dir-shops, 160 64% 48%); --lp-dir-search_arb: var(--dir-search_arb, 222 16% 84%); --lp-dir-startups: 192 88% 63%; --lp-dir-nutra: 84 72% 50%; --lp-dir-crypto: 31 98% 56%; --lp-dir-web2app: 232 92% 70%; --lp-font-display: "Space Grotesk", "Inter", ui-sans-serif, system-ui, sans-serif; --lp-font-body: "Inter", ui-sans-serif, system-ui, sans-serif; --pv9-violet: hsl(var(--lp-primary)); --pv9-violet-lite: hsl(var(--lp-primary-text)); --pv9-violet-deep: hsl(var(--lp-primary-hover)); background: hsl(var(--lp-canvas)); color: hsl(var(--lp-text)); font-family: var(--lp-font-body); -webkit-font-smoothing: antialiased; }
.lp h1, .lp h2, .lp h3, .lp-display { font-family: var(--lp-font-display); letter-spacing: -0.025em; color: hsl(var(--lp-text)); }
.lp-wrap { max-width: 1200px; margin: 0px auto; padding: 0px 20px; }
@media (min-width: 640px) {
  .lp-wrap { padding: 0px 32px; }
}
.lp-section { padding: 64px 0px; }
@media (min-width: 768px) {
  .lp-section { padding: 96px 0px; }
}
.lp-section--flush { padding-top: 0px; }
.lp-head { max-width: 760px; margin-bottom: 36px; }
@media (min-width: 768px) {
  .lp-head { margin-bottom: 48px; }
}
.lp-h2 { font-size: 30px; line-height: 1.1; font-weight: 600; }
@media (min-width: 768px) {
  .lp-h2 { font-size: 42px; line-height: 1.08; }
}
.lp-lead { margin-top: 14px; font-size: 16px; line-height: 1.6; color: hsl(var(--lp-text-2)); }
@media (min-width: 768px) {
  .lp-lead { font-size: 18px; }
}
.lp-kicker { display: block; margin-bottom: 14px; font: 600 12px/1 var(--lp-font-body); letter-spacing: 0.12em; text-transform: uppercase; color: hsl(var(--lp-primary-text)); }
.lp-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; padding: 0px 22px; border-radius: 10px; white-space: nowrap; font: 600 15px/1 var(--lp-font-body); transition: background-color 120ms cubic-bezier(0.23, 1, 0.32, 1), box-shadow 120ms cubic-bezier(0.23, 1, 0.32, 1); }
.lp-btn--primary { background: hsl(var(--lp-primary)); color: hsl(var(--lp-primary-ink)); box-shadow: inset 0 1px 0 hsl(0 0% 100% / 0.18), 0 10px 30px -12px hsl(var(--lp-primary) / 0.6); }
.lp-btn--primary:hover { background: hsl(var(--lp-primary-hover)); }
.lp-btn--ghost { color: hsl(var(--lp-text)); box-shadow: inset 0 0 0 1px hsl(var(--lp-line-strong)); }
.lp-btn--ghost:hover { background: hsl(var(--lp-surface-2)); }
.lp-btn:focus-visible { outline: 2px solid hsl(var(--lp-primary-text)); outline-offset: 3px; }
.lp-frame { position: relative; overflow: hidden; border-radius: 14px; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)), 0 40px 120px -30px hsl(var(--lp-primary) / 0.3), 0 24px 60px -20px hsl(0 0% 0% / 0.6); }
.lp-frame img { display: block; width: 100%; height: auto; }
.lp-hero { position: relative; overflow: hidden; padding: 104px 0px 0px; }
@media (min-width: 768px) {
  .lp-hero { padding-top: 136px; }
}
.lp-hero__fine { margin-top: 14px; font-size: 13px; color: hsl(var(--lp-text-3)); }
.lp-pill { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; padding: 5px 12px 5px 5px; border-radius: 999px; font-size: 13px; font-weight: 500; color: hsl(var(--lp-text-2)); background: hsl(var(--lp-surface-1)); box-shadow: inset 0 0 0 1px hsl(var(--lp-line-strong)); }
.lp-pill span { min-width: 0px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lp-proof__num { font: 600 28px/1 var(--lp-font-display); letter-spacing: -0.03em; color: hsl(var(--lp-text)); }
@media (min-width: 768px) {
  .lp-proof__num { font-size: 36px; }
}
.lp-proof__lbl { margin-top: 8px; font-size: 14px; color: hsl(var(--lp-text-3)); }
.lp-faq { display: grid; gap: 28px; grid-template-columns: 1fr; }
@media (min-width: 1024px) {
  .lp-faq { grid-template-columns: 360px 1fr; gap: 64px; }
}
.lp-faq__item { border-top: 1px solid hsl(var(--lp-line)); }
.lp-faq__q { display: flex; width: 100%; justify-content: space-between; gap: 20px; padding: 20px 0px; text-align: left; font: 600 16.5px/1.4 var(--lp-font-body); color: hsl(var(--lp-text)); }
.lp-faq__q span { flex: 0 0 auto; color: hsl(var(--lp-text-3)); transition: transform 150ms cubic-bezier(0.23, 1, 0.32, 1); }
.lp-faq__a { padding-bottom: 20px; max-width: 680px; font-size: 15px; line-height: 1.6; color: hsl(var(--lp-text-2)); }
.lp-final { --lp-cta: var(--lp-accent, var(--lp-primary)); position: relative; overflow: hidden; border-radius: 24px; padding: 40px 22px; text-align: center; background: radial-gradient(560px 260px at 50% -10%, hsl(var(--lp-cta) / 0.3), transparent 70%),
    linear-gradient(180deg, hsl(var(--lp-cta) / 0.1), transparent 62%),
    hsl(var(--lp-surface-1)); box-shadow: inset 0 0 0 1px hsl(var(--lp-cta) / 0.4), inset 0 1px 0 hsl(0 0% 100% / 0.07), 0 30px 80px -40px hsl(var(--lp-cta) / 0.55); }
.lp-final::before { content: ""; position: absolute; left: 12%; right: 12%; top: 0px; height: 2px; background: linear-gradient(90deg, transparent, hsl(var(--lp-cta)), transparent); }
.lp-final__body { position: relative; display: grid; gap: 28px; justify-items: center; }
.lp-final__text { max-width: 600px; }
.lp-final .lp-h2 { font-size: 30px; line-height: 1.12; letter-spacing: -0.03em; }
.lp-final p { max-width: 580px; margin: 14px auto 0px; font-size: 16px; line-height: 1.6; color: hsl(var(--lp-text-2)); }
.lp-final__actions { display: flex; flex-direction: column; align-items: center; gap: 14px; width: 100%; }
.lp-final .lp-btn--primary { width: 100%; max-width: 360px; height: 56px; padding: 0px 28px; border-radius: 14px; font-size: 17px; background: hsl(var(--lp-cta)); color: hsl(var(--lp-cta-ink, var(--lp-primary-ink))); box-shadow: inset 0 1px 0 hsl(0 0% 100% / 0.22), 0 14px 36px -12px hsl(var(--lp-cta) / 0.7); }
.lp-final .lp-btn--primary:hover { background: hsl(var(--lp-cta)); filter: brightness(1.08); }
.lp-final .lp-btn--primary svg { transition: transform 120ms cubic-bezier(0.23, 1, 0.32, 1); }
.lp-final .lp-btn--primary:hover svg { transform: translateX(3px); }
.lp-badges { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 20px; margin-top: 4px; font-size: 14px; color: hsl(var(--lp-text-2)); }
.lp-badges span { display: inline-flex; align-items: center; gap: 6px; }
.lp-final .lp-badges { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; justify-items: start; width: 100%; max-width: 360px; margin-inline: auto; text-align: left; }
.lp-badges svg { width: 14px; height: 14px; color: hsl(var(--lp-success)); }
@media (min-width: 900px) {
  .lp-final { padding: 56px; text-align: left; }
  .lp-final__body { grid-template-columns: minmax(0px, 1fr) auto; place-items: center stretch; gap: 48px; }
  .lp-final__text { max-width: none; }
  .lp-final .lp-h2 { font-size: 40px; }
  .lp-final p { margin-left: 0px; margin-right: 0px; font-size: 17px; }
  .lp-final__actions { width: auto; align-items: stretch; min-width: 280px; }
  .lp-final .lp-btn--primary { max-width: none; }
  .lp-final .lp-badges { grid-column: 1 / -1; display: flex; flex-wrap: wrap; max-width: none; margin-inline: 0px; justify-content: flex-start; padding-top: 24px; border-top: 1px solid hsl(var(--lp-cta) / 0.18); }
}
@media (prefers-reduced-motion: reduce) {
  .lp-btn, .lp-post, .lp-faq__q span { transition: none; }
}
.lp-hero { isolation: isolate; --lp-accent: var(--lp-primary-text); touch-action: pan-y; }
.lp-hero__glows, .lp-hero__aurora { position: absolute; top: 0px; left: 0px; z-index: -1; width: 100%; height: min(100%, 980px); pointer-events: none; transition: opacity 900ms; }
.lp-hero__glows i { position: absolute; left: 50%; top: -320px; width: 1400px; height: 800px; transform: translateX(-50%); opacity: 0; transition: opacity 420ms; --glow: var(--lp-primary); --glow-a: 0.16; background: radial-gradient(closest-side, hsl(var(--glow) / var(--glow-a)), hsl(var(--glow) / calc(var(--glow-a) * 0.84)) 25%,
    hsl(var(--glow) / calc(var(--glow-a) * 0.5)) 50%, hsl(var(--glow) / calc(var(--glow-a) * 0.16)) 75%, transparent); }
@media (max-width: 767px) {
  .lp-hero__glows i { top: -220px; width: 960px; height: 960px; }
}
.lp-hero__glows [data-glow="brand"] { opacity: 1; }
@media (min-width: 768px) {
  .lp-hero__glows [data-glow] { --glow-a: 0.34; }
  .lp-hero__glows [data-glow="brand"] { --glow: var(--lp-primary-lifted); --glow-a: 0.44; }
}
.lp-hero { --lp-autoplay-ms: 5200ms; }
@media (max-width: 480px) {
  .lp-hero { padding-top: 76px; }
  .lp-hero__fine { margin-top: 10px; }
}
.lp .lp-btn--primary { transition: background-color 300ms, color 300ms; }
@media (prefers-reduced-motion: reduce) {
  .lp-morph > *, .lp-hero__glows, .lp-hero__glows i, .lp-hero__aurora, .lp-discovery > *, .lp-hero__inner > .lp-pill { transition: none; }
}
*, ::before, ::after { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }
::backdrop { --tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; --tw-rotate: 0; --tw-skew-x: 0; --tw-skew-y: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-pan-x: ; --tw-pan-y: ; --tw-pinch-zoom: ; --tw-scroll-snap-strictness: proximity; --tw-gradient-from-position: ; --tw-gradient-via-position: ; --tw-gradient-to-position: ; --tw-ordinal: ; --tw-slashed-zero: ; --tw-numeric-figure: ; --tw-numeric-spacing: ; --tw-numeric-fraction: ; --tw-ring-inset: ; --tw-ring-offset-width: 0px; --tw-ring-offset-color: #fff; --tw-ring-color: rgb(59 130 246 / 0.5); --tw-ring-offset-shadow: 0 0 #0000; --tw-ring-shadow: 0 0 #0000; --tw-shadow: 0 0 #0000; --tw-shadow-colored: 0 0 #0000; --tw-blur: ; --tw-brightness: ; --tw-contrast: ; --tw-grayscale: ; --tw-hue-rotate: ; --tw-invert: ; --tw-saturate: ; --tw-sepia: ; --tw-drop-shadow: ; --tw-backdrop-blur: ; --tw-backdrop-brightness: ; --tw-backdrop-contrast: ; --tw-backdrop-grayscale: ; --tw-backdrop-hue-rotate: ; --tw-backdrop-invert: ; --tw-backdrop-opacity: ; --tw-backdrop-saturate: ; --tw-backdrop-sepia: ; --tw-contain-size: ; --tw-contain-layout: ; --tw-contain-paint: ; --tw-contain-style: ; }
*, ::before, ::after { box-sizing: border-box; border-width: 0px; border-style: solid; border-color: rgb(229, 231, 235); }
::before, ::after { --tw-content: ""; }
html, :host { line-height: 1.5; text-size-adjust: 100%; tab-size: 4; font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-feature-settings: normal; font-variation-settings: normal; -webkit-tap-highlight-color: transparent; }
body { margin: 0px; line-height: inherit; }
hr { height: 0px; color: inherit; border-top-width: 1px; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
a { color: inherit; text-decoration: inherit; }
b, strong { font-weight: bolder; }
small { font-size: 80%; }
table { text-indent: 0px; border-color: inherit; border-collapse: collapse; }
button, input, optgroup, select, textarea { font-family: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: 100%; font-weight: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; margin: 0px; padding: 0px; }
button, select { text-transform: none; }
button, input:where([type="button"]), input:where([type="reset"]), input:where([type="submit"]) { appearance: button; background-color: transparent; background-image: none; }
::-webkit-inner-spin-button, ::-webkit-outer-spin-button { height: auto; }
::-webkit-search-decoration { appearance: none; }
::-webkit-file-upload-button { appearance: button; font: inherit; }
summary { display: list-item; }
blockquote, dl, dd, h1, h2, h3, h4, h5, h6, hr, figure, p, pre { margin: 0px; }
ol, ul, menu { list-style: none; margin: 0px; padding: 0px; }
input::placeholder, textarea::placeholder { opacity: 1; color: rgb(156, 163, 175); }
button, [role="button"] { cursor: pointer; }
:disabled { cursor: default; }
img, svg, video, canvas, audio, iframe, embed, object { display: block; vertical-align: middle; }
img, video { max-width: 100%; height: auto; }
[hidden]:where(:not([hidden="until-found"])) { display: none; }
:root { --background: 220 20% 98%; --foreground: 228 14% 9%; --foreground-secondary: 225 8% 34%; --st-news-logo-lightness: 93%; --st-logo-light: 0 0% 98%; --st-logo-dark: 228 10% 12%; --st-logo-neutral: 0 0% 46%; --card: 0 0% 100%; --card-foreground: 228 14% 9%; --popover: 0 0% 100%; --popover-foreground: 228 14% 9%; --primary: 272 100% 50%; --primary-foreground: 0 0% 100%; --primary-hover: 272 100% 44%; --primary-text: 272 100% 50%; --secondary: 220 14% 92%; --secondary-foreground: 228 14% 9%; --muted: 220 16% 96%; --muted-foreground: 224 6% 41%; --accent: 220 14% 92%; --accent-foreground: 228 14% 9%; --destructive: 0 72% 46%; --destructive-foreground: 0 0% 100%; --destructive-text: 0 72% 46%; --success: 142 72% 29%; --success-foreground: 0 0% 100%; --trend-growth: 142 71% 45%; --trend-accent: 271 91% 65%; --border: 220 13% 88%; --border-strong: 220 10% 78%; --input: 220 10% 78%; --ring: 272 100% 50%; --dir-ads: 272 100% 50%; --dir-content: 20 90% 41%; --dir-influencers: 36 92% 31%; --dir-shops: 162 72% 27%; --dir-search_arb: 219 14% 28%; --dir-startups: 207 70% 36%; --dir-calculators: 199 89% 33%; --dir-copywriting: 330 70% 42%; --st-surface-sunken: 220 20% 98%; --st-surface-base: 0 0% 100%; --st-surface-raised: 0 0% 100%; --st-surface-overlay: 220 16% 96%; --st-surface-floating: 220 14% 92%; --st-status-success: 158 72% 30%; --st-status-warning: 28 88% 34%; --st-status-info: 202 82% 36%; --st-status-danger: 0 72% 43%; --st-admin: 84 78% 26%; --st-signal-surge: 18 90% 38%; --st-signal-growth: 158 72% 28%; --st-signal-decline: 0 72% 43%; --st-signal-funding: 262 70% 52%; --st-signal-forecast: 188 82% 28%; --st-signal-neutral: 215 22% 36%; --st-chart-cat-1: 213 68% 50%; --st-chart-cat-2: 17 82% 56%; --st-chart-cat-3: 159 73% 40%; --st-chart-cat-4: 41 100% 46%; --st-chart-cat-5: 337 70% 70%; --tiktok-cyan: 178 90% 55%; --tiktok-red: 348 99% 58%; --tiktok-black: 0 0% 0.4%; --google-blue: 217 89% 61%; --google-ink: 225 6% 13%; --google-green: 136 53% 43%; --google-yellow: 45 97% 50%; --youtube-red: 0 100% 50%; --sidebar-background: 0 0% 100%; --sidebar-foreground: var(--foreground-secondary); --sidebar-border: 220 13% 88%; --sidebar-accent: 272 100% 95%; --sidebar-accent-foreground: 272 100% 38%; --gem-top: 270 78% 74%; --gem-bottom: 265 80% 40%; --radius: 0.5rem; }
.dark { --st-news-logo-lightness: 14%; --background: 228 12% 5%; --foreground: 220 14% 96%; --foreground-secondary: 222 8% 68%; --card: 228 10% 8%; --card-foreground: 220 14% 96%; --popover: 228 9% 11%; --popover-foreground: 220 14% 96%; --primary: 272 100% 50%; --primary-foreground: 0 0% 100%; --primary-hover: 272 100% 58%; --primary-text: 272 100% 76%; --secondary: 228 8% 15%; --secondary-foreground: 220 14% 96%; --muted: 228 9% 11%; --muted-foreground: 224 6% 57%; --accent: 228 8% 15%; --accent-foreground: 220 14% 96%; --destructive: 0 72% 50%; --destructive-foreground: 0 0% 100%; --destructive-text: 0 78% 64%; --success: 142 69% 58%; --success-foreground: 144 61% 10%; --trend-growth: 142 71% 45%; --trend-accent: 271 91% 65%; --border: 228 8% 18%; --border-strong: 228 7% 26%; --input: 228 7% 26%; --ring: 272 100% 70%; --dir-ads: 272 100% 76%; --dir-content: 14 92% 64%; --dir-influencers: 40 96% 58%; --dir-shops: 160 64% 48%; --dir-search_arb: 222 16% 84%; --dir-startups: 204 90% 68%; --dir-calculators: 199 89% 62%; --dir-copywriting: 330 81% 70%; --st-surface-sunken: 228 12% 5%; --st-surface-base: 228 10% 8%; --st-surface-raised: 228 10% 8%; --st-surface-overlay: 228 9% 11%; --st-surface-floating: 228 8% 15%; --st-status-success: 158 64% 52%; --st-status-warning: 42 92% 58%; --st-status-info: 198 88% 62%; --st-status-danger: 0 86% 70%; --st-admin: 82 70% 60%; --st-signal-surge: 24 96% 62%; --st-signal-growth: 158 64% 52%; --st-signal-decline: 0 86% 70%; --st-signal-funding: 262 92% 78%; --st-signal-forecast: 186 78% 58%; --st-signal-neutral: 215 22% 72%; --st-chart-cat-1: 213 77% 56%; --st-chart-cat-2: 17 70% 50%; --st-chart-cat-3: 159 73% 36%; --st-chart-cat-4: 40 100% 39%; --st-chart-cat-5: 338 61% 58%; --tiktok-cyan: 178 90% 55%; --tiktok-red: 348 99% 58%; --tiktok-black: 0 0% 0.4%; --google-blue: 217 89% 61%; --google-ink: 225 6% 13%; --google-green: 136 53% 43%; --google-yellow: 45 97% 50%; --youtube-red: 0 100% 50%; --sidebar-background: 228 10% 8%; --sidebar-foreground: var(--foreground-secondary); --sidebar-border: 228 8% 18%; --sidebar-accent: 228 8% 15%; --sidebar-accent-foreground: 220 14% 96%; --gem-top: 270 95% 86%; --gem-bottom: 265 78% 46%; }
* { border-color: hsl(var(--border)); }
html, body, #root { height: 100dvh; overflow: hidden; background-color: hsl(var(--background)); overscroll-behavior: none; }
body { background-color: hsl(var(--background)); color: hsl(var(--foreground)); font-feature-settings: "rlig", "calt"; }
@media (forced-colors: none) {
  @supports selector(::-webkit-scrollbar) {
  * { scrollbar-width: auto; scrollbar-color: auto; }
  ::-webkit-scrollbar { width: var(--st-scrollbar-size, 6px); height: var(--st-scrollbar-size, 6px); }
  ::-webkit-scrollbar-track, ::-webkit-scrollbar-corner { background: transparent; }
  ::-webkit-scrollbar-thumb { border-radius: 4px; background-color: hsl(var(--muted-foreground) / 0.5); }
  ::-webkit-scrollbar-thumb:hover { background-color: hsl(var(--muted-foreground) / 0.75); }
  ::-webkit-scrollbar-button { display: none; width: 0px; height: 0px; }
}
  @supports not selector(::-webkit-scrollbar) {
  * { scrollbar-width: thin; scrollbar-color: hsl(var(--muted-foreground) / 0.5) transparent; }
}
}
.st-card { border: 1px solid hsl(var(--border)); border-radius: var(--radius); background: hsl(var(--st-surface-raised)); box-shadow: inset 0 1px 0 hsl(var(--foreground) / 0.04),
      0 1px 0 hsl(var(--foreground) / 0.03); }
.invisible { visibility: hidden; }
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }
.left-0 { left: 0px; }
.left-1\/2 { left: 50%; }
.right-0 { right: 0px; }
.top-0 { top: 0px; }
.top-full { top: 100%; }
.z-50 { z-index: 50; }
.z-drawer { z-index: 50; }
.z-dropdown { z-index: 100; }
.col-span-2 { grid-column: span 2 / span 2; }
.col-start-3 { grid-column-start: 3; }
.mx-auto { margin-left: auto; margin-right: auto; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.mt-12 { margin-top: 3rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-6 { margin-top: 1.5rem; }
.mt-8 { margin-top: 2rem; }
.block { display: block; }
.inline-block { display: inline-block; }
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.grid { display: grid; }
.hidden { display: none; }
.size-10 { width: 2.5rem; height: 2.5rem; }
.size-11 { width: 2.75rem; height: 2.75rem; }
.size-9 { width: 2.25rem; height: 2.25rem; }
.h-12 { height: 3rem; }
.h-16 { height: 4rem; }
.h-3\.5 { height: 0.875rem; }
.h-4 { height: 1rem; }
.h-5 { height: 1.25rem; }
.h-6 { height: 1.5rem; }
.h-9 { height: 2.25rem; }
.h-\[18px\] { height: 18px; }
.h-dvh { height: 100dvh; }
.min-h-0 { min-height: 0px; }
.min-h-12 { min-height: 3rem; }
.min-h-16 { min-height: 4rem; }
.w-3\.5 { width: 0.875rem; }
.w-4 { width: 1rem; }
.w-5 { width: 1.25rem; }
.w-6 { width: 1.5rem; }
.w-9 { width: 2.25rem; }
.w-\[18px\] { width: 18px; }
.w-auto { width: auto; }
.w-full { width: 100%; }
.min-w-0 { min-width: 0px; }
.min-w-\[300px\] { min-width: 300px; }
.max-w-7xl { max-width: 80rem; }
.max-w-\[230px\] { max-width: 230px; }
.flex-1 { flex: 1 1 0%; }
.flex-none { flex: 0 0 auto; }
.-translate-x-1\/2 { --tw-translate-x: -50%; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.cursor-pointer { cursor: pointer; }
.list-none { list-style-type: none; }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0px, 1fr)); }
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.place-items-center { place-items: center; }
.items-center { align-items: center; }
.items-baseline { align-items: baseline; }
.justify-end { justify-content: flex-end; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.gap-1 { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-6 { gap: 1.5rem; }
.gap-x-6 { column-gap: 1.5rem; }
.gap-y-10 { row-gap: 2.5rem; }
.gap-y-2 { row-gap: 0.5rem; }
.gap-y-3 { row-gap: 0.75rem; }
.-space-x-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(-0.25rem * var(--tw-space-x-reverse)); margin-left: calc(-0.25rem * calc(1 - var(--tw-space-x-reverse))); }
.-space-x-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(-0.5rem * var(--tw-space-x-reverse)); margin-left: calc(-0.5rem * calc(1 - var(--tw-space-x-reverse))); }
.-space-x-3 > :not([hidden]) ~ :not([hidden]) { --tw-space-x-reverse: 0; margin-right: calc(-0.75rem * var(--tw-space-x-reverse)); margin-left: calc(-0.75rem * calc(1 - var(--tw-space-x-reverse))); }
.space-y-0\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.125rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.125rem * var(--tw-space-y-reverse)); }
.space-y-1 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.25rem * var(--tw-space-y-reverse)); }
.space-y-1\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.375rem * var(--tw-space-y-reverse)); }
.space-y-12 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(3rem * var(--tw-space-y-reverse)); }
.space-y-2 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)); }
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.625rem * var(--tw-space-y-reverse)); }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.75rem * var(--tw-space-y-reverse)); }
.space-y-3\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.875rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.875rem * var(--tw-space-y-reverse)); }
.space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
.space-y-5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)); }
.space-y-6 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); }
.space-y-7 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.75rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.75rem * var(--tw-space-y-reverse)); }
.space-y-8 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2rem * var(--tw-space-y-reverse)); }
.space-y-px > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1px * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1px * var(--tw-space-y-reverse)); }
.divide-x > :not([hidden]) ~ :not([hidden]) { --tw-divide-x-reverse: 0; border-right-width: calc(1px * var(--tw-divide-x-reverse)); border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse))); }
.divide-y > :not([hidden]) ~ :not([hidden]) { --tw-divide-y-reverse: 0; border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse))); border-bottom-width: calc(1px * var(--tw-divide-y-reverse)); }
.divide-border > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border)); }
.divide-border\/40 > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border) / 0.4); }
.divide-border\/50 > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border) / 0.5); }
.divide-border\/60 > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border) / 0.6); }
.divide-gray-800 > :not([hidden]) ~ :not([hidden]) { --tw-divide-opacity: 1; border-color: rgb(31 41 55 / var(--tw-divide-opacity, 1)); }
.divide-primary\/10 > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--primary) / 0.1); }
.divide-white\/5 > :not([hidden]) ~ :not([hidden]) { border-color: rgba(255, 255, 255, 0.05); }
.justify-self-start { justify-self: start; }
.justify-self-center { justify-self: center; }
.overflow-y-auto { overflow-y: auto; }
.overscroll-contain { overscroll-behavior: contain; }
.whitespace-normal { white-space: normal; }
.whitespace-nowrap { white-space: nowrap; }
.break-words { overflow-wrap: break-word; }
.rounded-2xl { border-radius: 1rem; }
.rounded-full { border-radius: 9999px; }
.rounded-lg { border-radius: var(--radius); }
.rounded-md { border-radius: calc(var(--radius) - 2px); }
.rounded-xl { border-radius: 0.75rem; }
.border { border-width: 1px; }
.border-b { border-bottom-width: 1px; }
.border-t { border-top-width: 1px; }
.border-\[\#8B5CF633\] { border-color: rgba(139, 92, 246, 0.2); }
.border-gray-700 { --tw-border-opacity: 1; border-color: rgb(55 65 81 / var(--tw-border-opacity, 1)); }
.border-gray-800 { --tw-border-opacity: 1; border-color: rgb(31 41 55 / var(--tw-border-opacity, 1)); }
.border-input { border-color: hsl(var(--input)); }
.border-white\/10 { border-color: rgba(255, 255, 255, 0.1); }
.bg-\[\#08080c\] { --tw-bg-opacity: 1; background-color: rgb(8 8 12 / var(--tw-bg-opacity, 1)); }
.bg-\[\#0a0a12\] { --tw-bg-opacity: 1; background-color: rgb(10 10 18 / var(--tw-bg-opacity, 1)); }
.bg-\[\#0a0a12\]\/95 { background-color: rgba(10, 10, 18, 0.95); }
.bg-\[hsl\(var\(--lp-dir-startups\,192_88\%_63\%\)\/0\.15\)\] { background-color: hsl(var(--lp-dir-startups,192 88% 63%)/0.15); }
.bg-background { background-color: hsl(var(--background)); }
.bg-dir-ads\/15 { background-color: hsl(var(--dir-ads) / 0.15); }
.bg-dir-content\/15 { background-color: hsl(var(--dir-content) / 0.15); }
.bg-dir-influencers\/15 { background-color: hsl(var(--dir-influencers) / 0.15); }
.bg-dir-search_arb\/15 { background-color: hsl(var(--dir-search_arb) / 0.15); }
.bg-dir-shops\/15 { background-color: hsl(var(--dir-shops) / 0.15); }
.bg-primary { background-color: hsl(var(--primary)); }
.bg-transparent { background-color: transparent; }
.bg-white\/5 { background-color: rgba(255, 255, 255, 0.05); }
.bg-white\/\[0\.03\] { background-color: rgba(255, 255, 255, 0.03); }
.p-2 { padding: 0.5rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.py-12 { padding-top: 3rem; padding-bottom: 3rem; }
.py-16 { padding-top: 4rem; padding-bottom: 4rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.pb-1 { padding-bottom: 0.25rem; }
.pb-4 { padding-bottom: 1rem; }
.pb-\[max\(1rem\,env\(safe-area-inset-bottom\)\)\] { padding-bottom: max(1rem, env(safe-area-inset-bottom)); }
.pt-10 { padding-top: 2.5rem; }
.pt-2 { padding-top: 0.5rem; }
.pt-3 { padding-top: 0.75rem; }
.pt-8 { padding-top: 2rem; }
.text-\[13px\] { font-size: 13px; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight: 600; }
.uppercase { text-transform: uppercase; }
.leading-relaxed { line-height: 1.625; }
.leading-snug { line-height: 1.375; }
.tracking-wider { letter-spacing: 0.05em; }
.\!text-primary { color: hsl(var(--primary-text)) !important; }
.text-\[hsl\(var\(--lp-dir-startups\,192_88\%_63\%\)\)\] { color: hsl(var(--lp-dir-startups,192 88% 63%)); }
.text-dir-ads { color: hsl(var(--dir-ads)); }
.text-dir-content { color: hsl(var(--dir-content)); }
.text-dir-influencers { color: hsl(var(--dir-influencers)); }
.text-dir-search_arb { color: hsl(var(--dir-search_arb)); }
.text-dir-shops { color: hsl(var(--dir-shops)); }
.text-dir-startups { color: hsl(var(--dir-startups)); }
.text-foreground { color: hsl(var(--foreground)); }
.text-gray-200 { --tw-text-opacity: 1; color: rgb(229 231 235 / var(--tw-text-opacity, 1)); }
.text-gray-300 { --tw-text-opacity: 1; color: rgb(209 213 219 / var(--tw-text-opacity, 1)); }
.text-gray-400 { --tw-text-opacity: 1; color: rgb(156 163 175 / var(--tw-text-opacity, 1)); }
.text-gray-500 { --tw-text-opacity: 1; color: rgb(107 114 128 / var(--tw-text-opacity, 1)); }
.text-gray-600 { --tw-text-opacity: 1; color: rgb(75 85 99 / var(--tw-text-opacity, 1)); }
.text-primary { color: hsl(var(--primary-text)); }
.text-primary-foreground { color: hsl(var(--primary-foreground)); }
.text-white { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
.opacity-0 { opacity: 0; }
.shadow-lg { --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.shadow-black\/20 { --tw-shadow-color: rgb(0 0 0 / 0.2); --tw-shadow: var(--tw-shadow-colored); }
.backdrop-blur-md { --tw-backdrop-blur: blur(12px); backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia); }
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-opacity { transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.duration-150 { transition-duration: 150ms; }
.duration-300 { transition-duration: 300ms; }
#demo, #features, #pricing, #faq { scroll-margin-top: 4rem; }
html:has(#nav-toggle:checked), html:has(#nav-toggle:checked) body, html:has(#nav-toggle:checked) #root, html:has(#nav-toggle:checked) #landing-scroll-root { overflow: hidden; }
html:not([data-auth]) [data-auth-only] { display: none !important; }
[data-telegram-promo][hidden] { display: none !important; }
[data-social-set][hidden] { display: none !important; }
.hover\:border-gray-500:hover { --tw-border-opacity: 1; border-color: rgb(107 114 128 / var(--tw-border-opacity, 1)); }
.hover\:bg-accent:hover { background-color: hsl(var(--accent)); }
.hover\:bg-primary-hover:hover { background-color: hsl(var(--primary-hover)); }
.hover\:bg-white\/10:hover { background-color: rgba(255, 255, 255, 0.1); }
.hover\:bg-white\/5:hover { background-color: rgba(255, 255, 255, 0.05); }
.hover\:\!text-white:hover { --tw-text-opacity: 1 !important; color: rgb(255 255 255 / var(--tw-text-opacity, 1)) !important; }
.hover\:text-accent-foreground:hover { color: hsl(var(--accent-foreground)); }
.hover\:text-white:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
.group[open] .group-open\:rotate-180 { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.group:focus-within .group-focus-within\:visible { visibility: visible; }
.group:focus-within .group-focus-within\:opacity-100 { opacity: 1; }
.group:hover .group-hover\:visible { visibility: visible; }
.group:hover .group-hover\:opacity-100 { opacity: 1; }
.peer:checked ~ .peer-checked\:flex { display: flex; }
@media (prefers-reduced-motion: no-preference) {
  @keyframes fadeIn { 
  0% { opacity: 0; }
  100% { opacity: 1; }
}
  @keyframes ping { 
  75%, 100% { transform: scale(2); opacity: 0; }
}
  @keyframes pulse { 
  50% { opacity: 0.5; }
}
  @keyframes shimmer { 
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
  @keyframes spin { 
  100% { transform: rotate(360deg); }
}
}
@media not all and (min-width: 1536px) {
  .max-2xl\:space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
}
@media (min-width: 640px) {
  .sm\:h-\[1\.35rem\] { height: 1.35rem; }
  .sm\:flex-row { flex-direction: row; }
  .sm\:space-y-0 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0px * var(--tw-space-y-reverse)); }
  .sm\:space-y-2\.5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.625rem * var(--tw-space-y-reverse)); }
  .sm\:space-y-4 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1rem * var(--tw-space-y-reverse)); }
  .sm\:space-y-5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)); }
  .sm\:px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
}
@media (min-width: 768px) {
  .md\:pointer-events-none { pointer-events: none; }
  .md\:col-span-3 { grid-column: span 3 / span 3; }
  .md\:hidden { display: none; }
  .md\:cursor-default { cursor: default; }
  .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0px, 1fr)); }
  .md\:gap-10 { gap: 2.5rem; }
  .md\:gap-y-8 { row-gap: 2rem; }
  .md\:space-y-5 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)); }
  .md\:space-y-6 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); }
  .md\:space-y-8 > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(2rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2rem * var(--tw-space-y-reverse)); }
  .md\:space-y-px > :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1px * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1px * var(--tw-space-y-reverse)); }
  .md\:divide-x > :not([hidden]) ~ :not([hidden]) { --tw-divide-x-reverse: 0; border-right-width: calc(1px * var(--tw-divide-x-reverse)); border-left-width: calc(1px * calc(1 - var(--tw-divide-x-reverse))); }
  .md\:divide-border > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border)); }
  .md\:divide-border\/60 > :not([hidden]) ~ :not([hidden]) { border-color: hsl(var(--border) / 0.6); }
  .md\:border-0 { border-width: 0px; }
  .md\:px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
  .md\:py-0 { padding-top: 0px; padding-bottom: 0px; }
  .md\:py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
  .md\:py-20 { padding-top: 5rem; padding-bottom: 5rem; }
  .md\:pb-0 { padding-bottom: 0px; }
  .md\:pb-3 { padding-bottom: 0.75rem; }
  .md\:text-sm { font-size: 0.875rem; line-height: 1.25rem; }
}
@media (min-width: 1024px) {
  .lg\:col-span-1 { grid-column: span 1 / span 1; }
  .lg\:grid-cols-6 { grid-template-columns: repeat(6, minmax(0px, 1fr)); }
  .lg\:grid-cols-\[1\.4fr_repeat\(4\,1fr\)\] { grid-template-columns: 1.4fr repeat(4, 1fr); }
  .lg\:px-8 { padding-left: 2rem; padding-right: 2rem; }
}
@media (min-width: 1280px) {
  .xl\:block { display: block; }
  .xl\:flex { display: flex; }
  .xl\:grid { display: grid; }
  .xl\:hidden { display: none; }
  .xl\:grid-cols-\[auto_1fr_auto\] { grid-template-columns: auto 1fr auto; }
}
@media (min-width: 1440px) {
  .min-\[1440px\]\:gap-8 { gap: 2rem; }
}
.rtl\:rotate-180:where([dir="rtl"], [dir="rtl"] *) { --tw-rotate: 180deg; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
.\[\&\:\:-webkit-details-marker\]\:hidden::-webkit-details-marker { display: none; }
@media (min-width: 768px) {
  .md\:\[\&\:\:details-content\]\:\[content-visibility\:visible\]::details-content { content-visibility: visible; }
}
.\[\&\:not\(\:has\(\>div\:not\(\:empty\)\)\)\]\:hidden:not(:has(> div:not(:empty))) { display: none; }
@keyframes ping { 
  75%, 100% { transform: scale(2); opacity: 0; }
}
@keyframes pulse { 
  50% { opacity: 0.5; }
}
@keyframes shimmer { 
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}
@keyframes spin { 
  100% { transform: rotate(360deg); }
}

/* ---- page kit (assets/pe.css) ---- */
/* T-005 prototypes in the T-006 variant E language. Built on the site's lp layer (site-e.css):
   only --lp-* tokens, the violet ads accent, Space Grotesk / Inter. Marks follow E's data specs:
   bars <= 24px with 4px rounded ends from one baseline, 2px surface gaps, values in text tokens. */
:root { color-scheme: dark; }
html, body { height: auto; overflow: visible; overflow-x: clip; }
body { margin: 0; background: hsl(228 12% 5%); }
html:has(#nav-toggle:checked), html:has(#nav-toggle:checked) body { overflow: hidden; }
.pe-root { --lp-accent: var(--lp-primary); --pe-v: 258 90% 66%; --pe-o: 17 70% 50%; --pe-g: 160 73% 36%; --pe-n: 218 11% 65%;
  min-height: 100vh; overflow-x: clip; }
.pe-root a { color: inherit; text-decoration: none; }
.pe-root .pe-link { color: hsl(var(--lp-primary-text)); text-decoration: underline; text-decoration-color: hsl(var(--lp-primary-text) / .4); text-underline-offset: 3px; }
.pe-root .pe-link:hover { text-decoration-color: currentColor; }
.pe-banner { position: relative; z-index: 40; margin-top: 64px; padding: 10px 16px; background: hsl(272 60% 22%); color: hsl(var(--lp-text));
  font: 500 13px/1.4 var(--lp-font-body); text-align: center; box-shadow: inset 0 -1px 0 hsl(var(--lp-primary) / .5); }
.pe-banner b { font-weight: 700; }
.pe-mut { color: hsl(var(--lp-text-3)); }
.pe-t2 { color: hsl(var(--lp-text-2)); }
.pe-num { font-variant-numeric: tabular-nums; }
.pe-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- hero ---------- */
.pe-hero { padding-top: 32px !important; padding-bottom: 32px; }
@media (min-width: 768px) { .pe-hero { padding-top: 48px !important; padding-bottom: 40px; } }
.pe-dots { position: absolute; inset: 0 0 auto 0; top: 0; z-index: -1; height: 760px; opacity: .28; pointer-events: none;
  background-image: radial-gradient(circle, rgb(136, 0, 255) 1px, transparent .8px); background-size: 32px 32px;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, black, transparent); mask-image: radial-gradient(ellipse 70% 60% at 50% 0%, black, transparent); }
.pe-hero__grid { position: relative; display: grid; gap: 40px; grid-template-columns: minmax(0, 1fr); align-items: start; }
@media (min-width: 1024px) { .pe-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 620px); gap: 56px; } .pe-hero__text { padding-top: 24px; } }
.pe-crumbs { list-style: none; margin: 0; padding-left: 14px !important; flex-wrap: wrap; row-gap: 2px; }
.pe-crumbs li { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.pe-crumbs a:hover, .pe-crumbs [aria-current] { color: hsl(var(--lp-text)); }
.pe-crumbs svg { width: 14px; height: 14px; color: hsl(var(--lp-text-3)); }
.pe-h1 { margin: 24px 0 0; font: 600 42px/1.02 var(--lp-font-display); letter-spacing: -0.035em; overflow-wrap: anywhere; }
@media (min-width: 768px) { .pe-h1 { font-size: 60px; } }
.pe-h1 em { font-style: normal; color: hsl(var(--lp-primary-text)); }
.pe-sub { display: flex; align-items: flex-start; gap: 12px; margin: 20px 0 0; max-width: 620px; font-size: 16.5px; line-height: 1.55; color: hsl(var(--lp-text-2)); }
@media (min-width: 768px) { .pe-sub { font-size: 18px; } }
.pe-big { margin-top: 32px; }
@media (min-width: 768px) { .pe-big { margin-top: 40px; } }
.pe-big__n { font: 600 64px/.9 var(--lp-font-display); letter-spacing: -0.04em; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-big__n { font-size: 96px; } }
.pe-big__l { margin-top: 12px; font-size: 15px; color: hsl(var(--lp-text-2)); }
@media (min-width: 768px) { .pe-big__l { font-size: 17px; } }
.pe-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 28px 0 0; border-block: 1px solid hsl(var(--lp-line)); }
.pe-facts > div { padding: 16px 8px 16px 0; }
.pe-facts > div + div { border-left: 1px solid hsl(var(--lp-line)); padding-left: 12px; }
@media (min-width: 768px) { .pe-facts > div + div { padding-left: 20px; } }
.pe-facts dd { margin: 0; font: 600 17px/1 var(--lp-font-display); letter-spacing: -0.02em; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
@media (min-width: 640px) { .pe-facts dd { font-size: 19px; } }
@media (min-width: 768px) { .pe-facts dd { font-size: 26px; } }
.pe-facts dt { margin-top: 8px; font-size: 12.5px; line-height: 1.35; color: hsl(var(--lp-text-3)); }
@media (min-width: 768px) { .pe-facts dt { font-size: 13.5px; } }
.pe-ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin-top: 32px; }
.pe-ctas .lp-btn svg { width: 16px; height: 16px; }
.pe-ctas .pe-link { font-size: 14.5px; }
.pe-logo { display: grid; place-items: center; flex: 0 0 auto; width: 28px; height: 28px; margin-top: 1px; border-radius: 8px; overflow: hidden;
  background: hsl(var(--lp-surface-3)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); font: 600 13px/1 var(--lp-font-display); color: hsl(var(--lp-text-2)); }
.pe-logo img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pe-logo--lg { width: 44px; height: 44px; border-radius: 12px; font-size: 18px; }
.pe-logo--md { width: 36px; height: 36px; border-radius: 10px; }

/* mosaic: one lead cover and two beside it, all in one 4:5 frame (the crop that Meta uses for 9:16 ads in the feed),
   so 9:16, 4:5 and square sets all give the same full shape */
.pe-mosaic { position: relative; }
.pe-mosaic::before { content: ""; position: absolute; inset: -64px; z-index: -1; pointer-events: none; background: radial-gradient(closest-side, hsl(var(--lp-primary) / .3), transparent); }
.pe-mosaic__grid { display: grid; gap: 10px; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); grid-template-rows: auto auto; align-items: start; }
@media (min-width: 768px) { .pe-mosaic__grid { gap: 16px; } }
.pe-mosaic__lead { grid-row: 1 / span 2; align-self: stretch; }
.pe-mosaic__grid--3 .pe-mosaic__lead { aspect-ratio: auto; }
.pe-mosaic__grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pe-mosaic__grid--2 .pe-mosaic__lead, .pe-mosaic__grid--1 .pe-mosaic__lead { grid-row: auto; }
.pe-mosaic__grid--1 { grid-template-columns: minmax(0, 1fr); max-width: 360px; }
@media (max-width: 767px) { .pe-mosaic .pe-tile:not(.pe-mosaic__lead) .pe-badge { display: none; } }
.pe-tile--f { aspect-ratio: 4 / 5; }
.pe-tile.pe-tile--f img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.pe-tile--img img { object-position: 50% 22% !important; }
.pe-cap { margin-top: 16px; font-size: 13px; color: hsl(var(--lp-text-3)); }
.pe-tile { position: relative; margin: 0; overflow: hidden; border-radius: 16px; background: hsl(var(--lp-surface-2)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); }
.pe-tile img { display: block; width: 100%; height: auto; }
.pe-tile::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: inherit; pointer-events: none;
  box-shadow: inset 0 0 0 1px hsl(0 0% 100% / .12), inset 0 1px 0 hsl(0 0% 100% / .1); }
.pe-tile .pe-badge, .pe-tile .pe-play { z-index: 2; }
.pe-tile--sm { border-radius: 10px; }
.pe-badge { position: absolute; left: 8px; bottom: 8px; display: inline-flex; align-items: center; gap: 6px; padding: 4px 6px; border-radius: 6px;
  background: hsl(var(--lp-canvas) / .72); font: 600 11px/1 var(--lp-font-body); color: hsl(var(--lp-text)); }
.pe-badge svg { width: 14px; height: 14px; }
.pe-play { position: absolute; left: 50%; top: 50%; display: grid; place-items: center; width: 44px; height: 44px; margin: -22px 0 0 -22px; border-radius: 50%;
  background: hsl(var(--lp-canvas) / .6); box-shadow: 0 0 0 1px hsl(0 0% 100% / .25); }
.pe-play svg { width: 18px; height: 18px; margin-left: 2px; fill: hsl(var(--lp-text)); }
.pe-tile--sm .pe-play { width: 24px; height: 24px; margin: -12px 0 0 -12px; }
.pe-tile--sm .pe-play svg { width: 10px; height: 10px; }

/* ---------- blocks: a question, its takeaway, one visual on a plate ---------- */
.pe-block { position: relative; isolation: isolate; overflow-x: clip; padding: 22px 0; }
@media (min-width: 768px) { .pe-block { padding: 30px 0; } }
.pe-two { display: grid; gap: 40px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) {
  .pe-two { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 40px; }
  .pe-two--r { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
  .pe-two--eq { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
}
.pe-col { display: flex; flex-direction: column; min-width: 0; }
.pe-col > .pe-plate { flex: 1; }
.pe-ask { margin-bottom: 22px !important; }
@media (min-width: 768px) { .pe-ask { margin-bottom: 28px !important; } }
.pe-ask .lp-h2 { margin: 0; }
@media (min-width: 768px) { .pe-ask .lp-h2 { font-size: 36px; } }
.pe-ask .lp-lead { margin-top: 10px; }
.pe-ask--sm { margin-bottom: 18px !important; }
@media (min-width: 768px) { .pe-ask--sm .lp-h2 { font-size: 30px; } .pe-ask--sm .lp-lead { font-size: 16.5px; } }
.pe-ask .lp-kicker .pe-num { margin-right: 2px; }
.pe-plate { position: relative; }
.pe-plate::before { content: ""; position: absolute; inset: -48px -64px; z-index: -1; pointer-events: none; background: radial-gradient(closest-side, hsl(var(--lp-accent) / .2), transparent); }
.pe-plate > .lp-frame { display: flex; flex-direction: column; height: 100%; }
.pe-plate__body { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 20px; min-width: 0; }
@media (min-width: 768px) { .pe-plate__body { padding: 28px; } }
.pe-plate__body--flush { padding: 0; }
.pe-plate__note { border-top: 1px solid hsl(var(--lp-line)); padding: 14px 20px; font-size: 13px; line-height: 1.5; color: hsl(var(--lp-text-3)); }
@media (min-width: 768px) { .pe-plate__note { padding: 14px 28px; } }
.pe-plate__note [title] { cursor: help; }
.pe-src { text-decoration: underline dotted hsl(var(--lp-text-3) / .6); text-underline-offset: 3px; cursor: help; }
.pe-label { margin: 0 0 14px; font: 600 12px/1 var(--lp-font-body); letter-spacing: .1em; text-transform: uppercase; color: hsl(var(--lp-text-3)); }
.pe-sep { height: 1px; margin: 24px 0; background: hsl(var(--lp-line)); border: 0; }

/* ---------- motion: one entrance, final state = base style ---------- */
.pe-gx { transform-origin: left center; transition: transform 600ms cubic-bezier(.23, 1, .32, 1); }
.pe-gy { transform-origin: center bottom; transition: transform 600ms cubic-bezier(.23, 1, .32, 1); }
.pe-gs { transform-origin: left bottom; transition: transform 600ms cubic-bezier(.23, 1, .32, 1); }
.pe-fade { transition: opacity 600ms cubic-bezier(.23, 1, .32, 1); }
.pe-clip { clip-path: inset(0 0 0 0); transition: clip-path 600ms cubic-bezier(.23, 1, .32, 1); }
[data-enter="pre"] .pe-gx { transform: scaleX(0); }
[data-enter="pre"] .pe-gy { transform: scaleY(0); }
[data-enter="pre"] .pe-gs { transform: scale(0); }
[data-enter="pre"] .pe-fade { opacity: 0; }
[data-enter="pre"] .pe-clip { clip-path: inset(0 0 100% 0); }
@media (prefers-reduced-motion: reduce) { .pe-gx, .pe-gy, .pe-gs, .pe-fade, .pe-clip { transition: none; } }

/* ---------- map ---------- */
.pe-map { position: relative; }
.pe-map svg { display: block; width: 100%; height: auto; }
.pe-map__m { border-radius: 10px; background: hsl(var(--lp-surface-2) / .5); }
.pe-map__lbl { position: absolute; display: flex; align-items: center; gap: 6px; transform: translateY(-50%); white-space: nowrap; pointer-events: none;
  padding: 4px 6px; border-radius: 6px; background: hsl(var(--lp-canvas) / .72); font-size: 12px; line-height: 1; color: hsl(var(--lp-text)); }
.pe-map__lbl span { color: hsl(var(--lp-text-2)); }
.pe-map__lbl b { font-weight: 600; font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-map__lbl { font-size: 13px; } }
.pe-map__m { display: none !important; }
@media (max-width: 639px) { .pe-map__lbl, .pe-map__full { display: none !important; } .pe-map__m { display: block !important; } }
/* company page: the map and its ranked list side by side on wide screens */
@media (min-width: 1024px) {
  .pe-mapgrid { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 36px; align-items: center; }
  .pe-mapgrid .pe-clist { margin: 0; padding: 0 0 0 28px; border-top: 0; border-left: 1px solid hsl(var(--lp-line)); grid-template-columns: minmax(0, 1fr) !important; gap: 0; }
  .pe-mapgrid .pe-clist li { padding: 5px 0; }
}
.pe-flag { display: block; flex: 0 0 auto; width: 20px; height: 15px; overflow: hidden; border-radius: 3px; background: hsl(var(--lp-surface-3)) center / cover no-repeat;
  box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); }
.pe-flag--sm { width: 16px; height: 12px; }
.pe-clist { display: grid; gap: 2px 24px; margin: 24px 0 0; padding: 20px 0 0; list-style: none; border-top: 1px solid hsl(var(--lp-line)); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 640px) { .pe-clist { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) { .pe-clist { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px 32px; } }
.pe-clist--2 { grid-template-columns: minmax(0, 1fr) !important; }
.pe-clist li { display: flex; align-items: center; gap: 10px; padding: 6px 0; font-size: 14px; }
.pe-clist i { width: 20px; font-style: normal; font-size: 12.5px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
.pe-clist .nm { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: hsl(var(--lp-text)); }
.pe-clist b { font-weight: 600; font-variant-numeric: tabular-nums; color: hsl(var(--lp-text)); }

/* ---------- span line ---------- */
.pe-ends { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.pe-ends > div:last-child { text-align: right; }
.pe-span { position: relative; height: 100px; margin-top: 44px; }
.pe-span__axis { position: absolute; left: 0; right: 0; top: 34px; height: 1px; background: hsl(var(--lp-line-strong)); }
.pe-span__tick { position: absolute; top: 28px; transform: translateX(-50%); text-align: center; }
.pe-span__tick i { display: block; width: 1px; height: 13px; margin: 0 auto; background: hsl(var(--lp-line-strong)); }
.pe-span__tick span { display: block; margin-top: 12px; font-size: 12px; white-space: nowrap; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-span__tick span { font-size: 13px; } }
.pe-span__band { position: absolute; top: -6px; height: 40px; border-radius: 8px; background: linear-gradient(to bottom, transparent, hsl(var(--pe-c, var(--pe-v)) / .22)); }
.pe-span__line { position: absolute; top: 31px; height: 7px; border-radius: 99px; background: hsl(var(--pe-c, var(--pe-v))); }
.pe-span__dot { position: absolute; top: 27px; width: 15px; height: 15px; margin-left: -7.5px; border-radius: 50%; background: hsl(var(--pe-c, var(--pe-v))); box-shadow: 0 0 0 3px hsl(var(--lp-surface-1)); }
.pe-span__len { position: absolute; top: 0; transform: translateX(-50%); white-space: nowrap; padding: 4px 8px; border-radius: 6px; background: hsl(var(--lp-surface-3));
  font-size: 12.5px; font-weight: 600; color: hsl(var(--lp-text)); }
.pe-span__mk { position: absolute; top: 22px; height: 70px; border-left: 1.5px dashed hsl(var(--lp-text-3) / .7); }
.pe-span__mk span { position: absolute; top: 72px; white-space: nowrap; font-size: 11.5px; line-height: 1.3; color: hsl(var(--lp-text-3)); }
.pe-span__mk--r span { right: 6px; text-align: right; }
.pe-span__mk--l span { left: 6px; }
.pe-span__mk--acc { border-left-color: hsl(var(--lp-primary-text)); }
.pe-span__mk--acc span { color: hsl(var(--lp-primary-text)); font-weight: 600; }
.pe-span--mk { height: 124px; }
.pe-span--slim { height: 56px; margin-top: 8px; }
.pe-mini { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 20px; border-top: 1px solid hsl(var(--lp-line)); }
.pe-mini > div { padding: 14px 8px 0 0; }
.pe-mini > div + div { padding-left: 14px; border-left: 1px solid hsl(var(--lp-line)); }
.pe-mini b { display: block; font: 600 20px/1 var(--lp-font-display); letter-spacing: -0.02em; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-mini b { font-size: 24px; } }
.pe-mini span { display: block; margin-top: 6px; font-size: 12.5px; line-height: 1.35; color: hsl(var(--lp-text-3)); }

/* ---------- Meta vs TikTok squares ---------- */
.pe-sqs { --sq: clamp(150px, 42vw, 208px); display: flex; align-items: flex-end; gap: 20px; }
@media (min-width: 768px) { .pe-sqs { gap: 28px; } }
.pe-sq { border-radius: 6px; background: linear-gradient(to top, hsl(var(--pe-c) / .92), hsl(var(--pe-c) / .38)); }
.pe-sq b { display: block; padding: 12px; font: 600 26px/1 var(--lp-font-display); color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-sq b { font-size: 30px; } }
.pe-sq--zero { background: none; box-shadow: inset 0 0 0 1.5px hsl(var(--lp-line-strong)); border: 0; }
.pe-sq__out { margin-left: -8px; font: 600 22px/1 var(--lp-font-display); color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.pe-legend { display: grid; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; font-size: 14px; }
.pe-legend li { display: flex; align-items: center; gap: 10px; color: hsl(var(--lp-text)); }
.pe-legend .k { width: 10px; height: 10px; flex: 0 0 auto; border-radius: 3px; }
.pe-legend .v { margin-left: auto; font-weight: 600; font-variant-numeric: tabular-nums; }
.pe-legend svg { width: 18px; height: 18px; flex: 0 0 auto; }

/* ---------- waffle ---------- */
.pe-waf { display: grid; align-items: center; gap: 24px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 640px) { .pe-waf { grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: 32px; } }
.pe-waf__grid { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 3px; width: 100%; max-width: 240px; }
.pe-waf__grid span { aspect-ratio: 1; border-radius: 3px; }
.pe-waf ul { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.pe-waf li { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 12px; }
.pe-waf .k { width: 12px; height: 12px; border-radius: 3px; }
.pe-waf .row { display: flex; align-items: baseline; gap: 8px; }
.pe-waf .row span { font-size: 15px; color: hsl(var(--lp-text-2)); }
.pe-waf .thumbs { grid-column: 2; display: flex; gap: 6px; }
.pe-waf .thumbs .pe-tile { width: 36px; flex: 0 0 auto; border-radius: 6px; }
.pe-pct { font: 600 28px/1 var(--lp-font-display); letter-spacing: -0.03em; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
@media (min-width: 768px) { .pe-pct { font-size: 36px; } }

/* ---------- button bars ---------- */
.pe-bb { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pe-bb li { display: grid; grid-template-columns: 112px minmax(0, 1fr) 44px; align-items: center; gap: 12px; }
@media (min-width: 768px) { .pe-bb li { grid-template-columns: 124px minmax(0, 1fr) 48px; gap: 16px; } }
.pe-fbbtn { display: inline-flex; height: 36px; align-items: center; justify-content: center; padding: 0 8px; border-radius: 6px; background: hsl(var(--lp-surface-3));
  font: 600 13.5px/1 var(--lp-font-body); color: hsl(var(--lp-text)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pe-fbbtn--none { background: none; box-shadow: inset 0 0 0 1px hsl(var(--lp-line-strong)); color: hsl(var(--lp-text-3)); font-weight: 500; }
.pe-track { position: relative; height: 12px; border-radius: 0 4px 4px 0; background: hsl(var(--lp-surface-2)); }
.pe-track i { position: absolute; inset: 0 auto 0 0; border-radius: 0 4px 4px 0; }
.pe-track--bare { background: none; }
.pe-bb .v { text-align: right; font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; color: hsl(var(--lp-text)); }

/* ---------- ranking ---------- */
.pe-rank { margin: 0; padding: 0; list-style: none; }
.pe-rank li + li { border-top: 1px solid hsl(var(--lp-line)); }
.pe-rank__row { display: grid; align-items: center; gap: 6px 12px; padding: 9px 16px; grid-template-columns: 20px 36px minmax(0, 1fr) auto; }
@media (min-width: 768px) { .pe-rank__row { grid-template-columns: 24px 36px 170px 150px minmax(0, 1fr) 76px 96px; gap: 8px 16px; padding: 9px 24px; } }
.pe-rank__row--self { background: hsl(var(--lp-primary) / .1); box-shadow: inset 3px 0 0 hsl(var(--lp-primary)); }
a.pe-rank__row:hover { background: hsl(var(--lp-surface-2)); }
.pe-rank__i { font-size: 13px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
.pe-rank__nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; font-weight: 600; color: hsl(var(--lp-text)); }
.pe-rank__nm small { display: block; font-size: 12px; font-weight: 400; color: hsl(var(--lp-text-3)); overflow: hidden; text-overflow: ellipsis; }
.pe-rank__th { display: flex; height: 40px; align-items: center; gap: 4px; }
.pe-rank__th .pe-tile { height: 40px; width: auto; border-radius: 5px; }
.pe-rank__th .pe-tile img { height: 40px; width: auto; }
.pe-rank__bar { height: 12px; }
.pe-rank__v { text-align: right; font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; color: hsl(var(--lp-text)); }
.pe-rank__a { white-space: nowrap; text-align: right; font-size: 13px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
@media (max-width: 767px) {
  .pe-rank__th, .pe-rank__a { display: none; }
  .pe-rank__bar { grid-column: 2 / 5; grid-row: 2; }
}

/* ---------- research summary: fact cards ---------- */
.pe-fc { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 768px) { .pe-fc { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .pe-fc { grid-template-columns: repeat(5, minmax(0, 1fr)); } .pe-fc__n { font-size: 30px; } .pe-fc__n small { display: block; margin: 6px 0 0; font-size: 14px; } }
.pe-fc li { position: relative; display: flex; flex-direction: column; padding: 18px 18px 14px; border-radius: 14px; background: hsl(var(--lp-surface-1));
  box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); overflow: hidden; }
.pe-fc li::before { content: ""; position: absolute; inset: -40% 40% 50% -20%; background: radial-gradient(closest-side, hsl(var(--lp-primary) / .16), transparent); pointer-events: none; }
.pe-fc__n { position: relative; font: 600 34px/1 var(--lp-font-display); letter-spacing: -0.035em; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.pe-fc__n small { font-size: 18px; letter-spacing: -0.01em; color: hsl(var(--lp-text-2)); margin-left: 4px; }
.pe-fc__h { position: relative; margin: 12px 0 0; font: 600 16.5px/1.35 var(--lp-font-display); color: hsl(var(--lp-text)); }
.pe-fc__t { position: relative; margin: 8px 0 0; font-size: 14px; line-height: 1.55; color: hsl(var(--lp-text-2)); }
.pe-fc__m { position: relative; display: flex; height: 8px; gap: 2px; margin-top: 16px; }
.pe-fc__m i { display: block; height: 100%; border-radius: 3px; }
.pe-fc__s { position: relative; margin-top: auto; padding-top: 14px; font-size: 12px; color: hsl(var(--lp-text-3)); }
.pe-fc__s span { cursor: help; text-decoration: underline dotted hsl(var(--lp-text-3) / .6); text-underline-offset: 3px; }
.pe-pill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 99px; font: 600 11.5px/1.2 var(--lp-font-body);
  letter-spacing: .02em; color: hsl(var(--lp-primary-text)); background: hsl(var(--lp-primary) / .16); }

/* ---------- stacked split bar (hosts, pages) ---------- */
.pe-split { display: flex; gap: 2px; height: 24px; }
.pe-split i { display: block; height: 100%; min-width: 3px; }
.pe-split i:first-child { border-radius: 4px 0 0 4px; }
.pe-split i:last-child { border-radius: 0 4px 4px 0; }
.pe-split i:only-child { border-radius: 4px; }
.pe-split--tall { height: 44px; }
.pe-two-figs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.pe-two-figs > div:last-child { text-align: right; }
.pe-two-figs .k { display: inline-block; width: 10px; height: 10px; margin-right: 8px; border-radius: 3px; }
.pe-two-figs span { font-size: 13.5px; color: hsl(var(--lp-text-2)); }

/* landing paths */
.pe-paths { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.pe-paths li { display: grid; grid-template-columns: minmax(0, 1fr) 52px; align-items: center; gap: 6px 14px; }
.pe-url { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 7px 10px; border-radius: 8px; background: hsl(var(--lp-surface-2));
  box-shadow: inset 0 0 0 1px hsl(var(--lp-line)); font: 500 13px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; color: hsl(var(--lp-text)); }
.pe-url svg { width: 13px; height: 13px; flex: 0 0 auto; color: hsl(var(--lp-text-3)); }
.pe-url span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pe-paths .pe-track { grid-column: 1; height: 6px; background: none; }
.pe-paths .v { grid-row: 1; grid-column: 2; text-align: right; font-size: 14.5px; font-weight: 600; font-variant-numeric: tabular-nums; }

/* simple bar list (pages, domains) */
.pe-bl { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pe-bl li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; align-items: baseline; font-size: 14px; }
.pe-bl .nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: hsl(var(--lp-text)); }
.pe-bl .nm em { font-style: normal; color: hsl(var(--lp-text-3)); }
.pe-bl .v { font-weight: 600; font-variant-numeric: tabular-nums; color: hsl(var(--lp-text)); }
.pe-bl .v small { margin-left: 6px; font-weight: 400; font-size: 12.5px; color: hsl(var(--lp-text-3)); }
.pe-bl .pe-track { grid-column: 1 / -1; height: 8px; }

/* traffic columns */
.pe-cols { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); align-items: end; gap: 10px; height: 170px; padding-top: 22px;
  border-bottom: 1px solid hsl(var(--lp-line-strong)); }
.pe-cols__c { position: relative; display: flex; flex-direction: column; justify-content: flex-end; height: 100%; }
.pe-cols__c i { display: block; width: 100%; max-width: 44px; margin: 0 auto; border-radius: 4px 4px 0 0; background: hsl(var(--pe-v) / .55); }
.pe-cols__c--last i { background: hsl(var(--pe-v)); }
.pe-cols__c b { position: absolute; left: 0; right: 0; text-align: center; font-size: 12px; font-weight: 600; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.pe-cols__x { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 10px; margin-top: 8px; text-align: center; font-size: 12px; color: hsl(var(--lp-text-3)); }

/* funding */
.pe-fund { display: grid; gap: 1px; grid-template-columns: repeat(2, minmax(0, 1fr)); border-radius: 12px; overflow: hidden; background: hsl(var(--lp-line)); }
@media (min-width: 768px) { .pe-fund { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.pe-fund > div { padding: 18px; background: hsl(var(--lp-surface-1)); }
.pe-fund b { display: block; font: 600 26px/1 var(--lp-font-display); letter-spacing: -0.03em; color: hsl(var(--lp-text)); }
.pe-fund span { display: block; margin-top: 8px; font-size: 13px; color: hsl(var(--lp-text-3)); }
.pe-fund em { display: block; margin-top: 2px; font-style: normal; font-size: 12.5px; color: hsl(var(--lp-text-2)); }
.pe-ba { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.pe-ba > div { padding: 14px; border-radius: 10px; background: hsl(var(--lp-surface-2)); }
.pe-ba b { display: block; font: 600 22px/1 var(--lp-font-display); color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.pe-ba span { display: block; margin-top: 6px; font-size: 12.5px; line-height: 1.35; color: hsl(var(--lp-text-3)); }
.pe-ba .acc b { color: hsl(var(--lp-primary-text)); }
.pe-warn { display: flex; gap: 10px; align-items: flex-start; margin-top: 16px; padding: 12px 14px; border-radius: 10px; background: hsl(var(--lp-primary) / .1);
  box-shadow: inset 0 0 0 1px hsl(var(--lp-primary) / .3); font-size: 13.5px; line-height: 1.5; color: hsl(var(--lp-text-2)); }
.pe-warn b { color: hsl(var(--lp-text)); }
.pe-warn svg { width: 16px; height: 16px; flex: 0 0 auto; margin-top: 2px; color: hsl(var(--lp-primary-text)); }

/* coming with creative analysis */
.pe-soon { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .pe-soon { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.pe-soon li { display: flex; flex-direction: column; padding: 16px 18px; border-radius: 14px; background: hsl(var(--lp-surface-1) / .6);
  box-shadow: inset 0 0 0 1px hsl(var(--lp-line-strong)); }
.pe-soon h3 { margin: 0; font: 600 18px/1.3 var(--lp-font-display); }
.pe-soon p { margin: 8px 0 0; font-size: 14px; line-height: 1.55; color: hsl(var(--lp-text-2)); }
.pe-ghost { position: relative; display: grid; gap: 6px; margin-top: 14px; padding: 10px 12px; border-radius: 10px; border: 1.5px dashed hsl(var(--lp-line-strong)); }
.pe-ghost i { display: block; height: 10px; border-radius: 4px; background: repeating-linear-gradient(135deg, hsl(var(--lp-line-strong) / .7) 0 4px, transparent 4px 8px); }
.pe-ghost--cols { grid-auto-flow: column; align-items: end; height: 56px; }
.pe-ghost--cols i { height: auto; align-self: end; }
.pe-ghost--chips { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pe-ghost--chips i { height: 30px; border-radius: 99px; }
.pe-ghost__lbl { position: absolute; right: 10px; top: -9px; padding: 0 6px; background: hsl(var(--lp-surface-1)); font-size: 11px; color: hsl(var(--lp-text-3)); }

/* gallery (creatives pages) */
.pe-gal { columns: 2 150px; column-gap: 14px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .pe-gal { columns: 4 220px; column-gap: 18px; } }
.pe-gal li { break-inside: avoid; margin-bottom: 18px; }
.pe-gal--grid { display: grid; columns: auto; gap: 18px; align-items: start; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pe-gal--grid li { margin: 0; }
@media (min-width: 768px) { .pe-gal--grid { grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); } }

.pe-card { border-radius: 14px; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); overflow: hidden; }
.pe-card .pe-tile { border-radius: 0; box-shadow: none; }
.pe-card__b { padding: 12px 14px 14px; }
.pe-card__ads { display: flex; align-items: baseline; gap: 6px; }
.pe-card__ads b { font: 600 22px/1 var(--lp-font-display); color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.pe-card__ads span { font-size: 13px; color: hsl(var(--lp-text-3)); }
.pe-card__ads .on { margin-left: auto; display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: hsl(var(--lp-success)); }
.pe-card__ads .on::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.pe-card__hl { margin: 8px 0 0; font-size: 14px; line-height: 1.4; color: hsl(var(--lp-text)); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.pe-card__dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 4px 10px; margin: 10px 0 0; font-size: 12.5px; }
.pe-card__dl dt { color: hsl(var(--lp-text-3)); }
.pe-card__dl dd { margin: 0; color: hsl(var(--lp-text-2)); font-variant-numeric: tabular-nums; }
.pe-card__geo { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.pe-card .pe-fbbtn { height: 30px; margin-top: 10px; width: 100%; font-size: 12.5px; }
.pe-strip { display: grid; gap: 12px; grid-template-columns: repeat(var(--n, 5), minmax(0, 1fr)); align-items: start; }
@media (max-width: 767px) { .pe-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); } .pe-strip > :nth-child(n+4) { display: none; } }
.pe-strip figcaption { margin-top: 8px; font-size: 12.5px; color: hsl(var(--lp-text-3)); }
.pe-strip figcaption b { color: hsl(var(--lp-text)); font-weight: 600; font-variant-numeric: tabular-nums; }

/* compare: butterfly rows */
.pe-bf { margin: 0; padding: 0; list-style: none; }
.pe-bf__h, .pe-bf li { display: grid; grid-template-columns: minmax(0, 1fr) minmax(88px, 150px) minmax(0, 1fr); align-items: center; gap: 12px; }
@media (min-width: 768px) { .pe-bf__h, .pe-bf li { grid-template-columns: minmax(0, 1fr) 190px minmax(0, 1fr); gap: 20px; } }
.pe-bf__h { padding-bottom: 14px; border-bottom: 1px solid hsl(var(--lp-line)); }
.pe-bf__h > div { display: flex; align-items: center; gap: 10px; font: 600 16px/1.2 var(--lp-font-display); }
.pe-bf__h > div:first-child { justify-content: flex-end; }
.pe-bf li { padding: 12px 0; border-bottom: 1px solid hsl(var(--lp-line)); }
.pe-bf .lbl { text-align: center; font-size: 13px; line-height: 1.3; color: hsl(var(--lp-text-2)); }
.pe-bf .side { display: flex; align-items: center; gap: 10px; min-width: 0; }
.pe-bf .side--a { flex-direction: row-reverse; }
.pe-bf .side .bar { flex: 1; display: flex; height: 12px; }
.pe-bf .side--a .bar { justify-content: flex-end; }
.pe-bf .side i { display: block; height: 100%; }
.pe-bf .side--a i { border-radius: 4px 0 0 4px; transform-origin: right center; }
.pe-bf .side--b i { border-radius: 0 4px 4px 0; }
.pe-bf .side b { font: 600 16px/1 var(--lp-font-display); font-variant-numeric: tabular-nums; white-space: nowrap; min-width: 0; }
@media (min-width: 768px) { .pe-bf .side b { font-size: 19px; } }
.pe-bf .side small { display: block; margin-top: 4px; font: 400 11.5px/1.2 var(--lp-font-body); color: hsl(var(--lp-text-3)); }
.pe-bf .side--a b { text-align: right; }
.pe-vshead { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; font: 600 17px/1.2 var(--lp-font-display); }
.pe-vshead .k { width: 10px; height: 10px; border-radius: 3px; }
.pe-vs-big { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: end; }
.pe-vs-big .pe-sq { width: 100%; }

/* TikTok: no creatives notice */
.pe-none { display: grid; gap: 24px; align-items: center; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .pe-none { grid-template-columns: 300px minmax(0, 1fr); gap: 40px; } }
.pe-none__ph { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.pe-none__ph i { display: grid; place-items: center; aspect-ratio: 9 / 16; border-radius: 10px; border: 1.5px dashed hsl(var(--lp-line-strong));
  background: repeating-linear-gradient(135deg, hsl(var(--lp-line) / .5) 0 4px, transparent 4px 10px); }
.pe-none__ph svg { width: 22px; height: 22px; color: hsl(var(--lp-text-3)); }
.pe-none h3 { margin: 12px 0 0; font: 600 22px/1.25 var(--lp-font-display); }
.pe-none p { margin: 10px 0 0; font-size: 15px; line-height: 1.6; color: hsl(var(--lp-text-2)); }
.pe-meter { position: relative; height: 24px; display: flex; gap: 2px; }
.pe-meter i { display: block; height: 100%; }

/* index */
.pe-grp { margin-top: 48px; }
.pe-grp:first-child { margin-top: 0; }
.pe-grp h3 { display: flex; align-items: baseline; gap: 10px; margin: 0; font: 600 22px/1.2 var(--lp-font-display); }
.pe-grp h3 small { font: 500 14px/1 var(--lp-font-body); color: hsl(var(--lp-text-3)); }
.pe-grp > p { margin: 8px 0 18px; font-size: 14.5px; color: hsl(var(--lp-text-2)); max-width: 720px; }
.pe-idx { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.pe-idx a { display: flex; flex-direction: column; height: 100%; border-radius: 14px; overflow: hidden; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong));
  transition: box-shadow 150ms cubic-bezier(.23, 1, .32, 1); }
.pe-idx a:hover { box-shadow: 0 0 0 1px hsl(var(--lp-primary) / .6), 0 20px 50px -24px hsl(var(--lp-primary) / .5); }
.pe-idx__vis { position: relative; display: flex; gap: 6px; height: 150px; padding: 14px 14px 0; overflow: hidden;
  background: radial-gradient(closest-side at 50% 100%, hsl(var(--lp-primary) / .28), transparent), hsl(var(--lp-surface-2)); }
.pe-idx__vis .pe-tile { flex: 1; align-self: flex-start; border-radius: 8px; }
.pe-idx__vis--logo { align-items: center; justify-content: center; padding: 14px; }
.pe-idx__b { padding: 16px 18px 18px; }
.pe-idx__b b { display: flex; align-items: center; gap: 10px; font: 600 17px/1.25 var(--lp-font-display); color: hsl(var(--lp-text)); }
.pe-idx__b p { margin: 8px 0 0; font-size: 13.5px; line-height: 1.5; color: hsl(var(--lp-text-2)); }
.pe-notes { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .pe-notes { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pe-notes li { padding: 16px 18px; border-radius: 12px; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line)); font-size: 14px; line-height: 1.55; color: hsl(var(--lp-text-2)); }
.pe-notes b { color: hsl(var(--lp-text)); }

/* faq (native details, the home FAQ look) */
.pe-faq details summary { list-style: none; cursor: pointer; }
.pe-faq details summary::-webkit-details-marker { display: none; }
.pe-faq details[open] .lp-faq__q span { transform: rotate(45deg); }
.pe-faq .lp-faq__q { margin: 0; }
.pe-faq .lp-faq__a { margin: 0; }

/* sources and limitations */
.pe-lim { display: grid; gap: 8px 40px; margin: 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .pe-lim { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pe-lim li { position: relative; padding: 8px 0 8px 18px; border-top: 1px solid hsl(var(--lp-line)); font-size: 13.5px; line-height: 1.55; color: hsl(var(--lp-text-2)); }
.pe-lim li::before { content: ""; position: absolute; left: 2px; top: 16px; width: 6px; height: 6px; border-radius: 2px; background: hsl(var(--lp-primary-text) / .6); }
.pe-srcs { margin-top: 20px; font-size: 12.5px; line-height: 1.6; color: hsl(var(--lp-text-3)); }
.pe-srcs p { margin: 0 0 4px; }
.pe-final-wrap { padding-bottom: 48px; padding-top: 16px; }

/* expand control for long lists (pe.js) */
.pe-folded:not(.pe-open):not(.pe-folded--m) > .pe-xtra { display: none !important; }
@media (max-width: 767px) { .pe-folded--m:not(.pe-open) > .pe-xtra, .pe-folded:not(.pe-open) > .pe-xtra-m { display: none !important; } }
@media (min-width: 768px) { .pe-more--m { display: none !important; } }
.pe-more { display: inline-flex; align-self: flex-start; white-space: nowrap; align-items: center; gap: 6px; margin-top: 14px; padding: 8px 14px; border: 0; border-radius: 8px; cursor: pointer;
  background: hsl(var(--lp-surface-2)); box-shadow: inset 0 0 0 1px hsl(var(--lp-line-strong)); font: 600 13.5px/1 var(--lp-font-body); color: hsl(var(--lp-text)); }
.pe-more:hover { background: hsl(var(--lp-surface-3)); }
.pe-more:focus-visible { outline: 2px solid hsl(var(--lp-primary-text)); outline-offset: 2px; }

/* compare: one shared map and its table */
.pe-ct__leg { display: flex; flex-wrap: wrap; gap: 8px 20px; margin-bottom: 16px; font-size: 13.5px; color: hsl(var(--lp-text-2)); }
.pe-ct__leg span { display: inline-flex; align-items: center; gap: 8px; }
.pe-ct__leg svg { width: 16px; height: 16px; }
.pe-ct { width: 100%; margin-top: 20px; border-collapse: collapse; font-size: 14px; table-layout: fixed; }
.pe-ct th, .pe-ct td { padding: 8px 0; text-align: left; vertical-align: middle; border-top: 1px solid hsl(var(--lp-line)); }
.pe-ct thead th { padding-top: 0; border-top: 0; font: 600 12.5px/1.2 var(--lp-font-body); color: hsl(var(--lp-text-2)); }
.pe-ct thead th .pe-logo { display: inline-grid; width: 18px; height: 18px; margin: 0 6px -4px 0; border-radius: 5px; }
.pe-ct th:first-child { width: 44%; }
.pe-ct tbody th { font-weight: 400; color: hsl(var(--lp-text)); }
.pe-ct tbody th i { display: inline-block; width: 22px; font-style: normal; font-size: 12.5px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
.pe-ct tbody th .pe-flag { margin-right: 8px; }
.pe-ct__c { display: flex; align-items: center; }
.pe-ct__c > span { min-width: 0; line-height: 1.25; }
.pe-ct tbody th i { flex: 0 0 auto; }
.pe-ct__v { padding-right: 12px !important; }
.pe-ct__v b { font-weight: 600; font-variant-numeric: tabular-nums; }
.pe-ct__v small { margin-left: 6px; font-size: 11.5px; color: hsl(var(--lp-text-3)); }
.pe-ct__v .pe-mut { font-size: 12px; }
.pe-ct__v .pe-track { display: block; height: 6px; margin-top: 5px; background: none; }
@media (min-width: 1024px) {
  .pe-mapgrid--cmp { grid-template-columns: minmax(0, 1fr) 360px; gap: 28px; }
  .pe-mapgrid--cmp .pe-ct__w { padding-left: 28px; border-left: 1px solid hsl(var(--lp-line)); }
  .pe-mapgrid--cmp .pe-ct { margin: 0; }
}

/* page length: tighter small screens */
@media (max-width: 767px) {
  .pe-ghost { display: none; }
  .pe-soon { gap: 10px; }
  .pe-soon p { font-size: 13.5px; }
  .pe-fc__t { font-size: 13.5px; }
  .pe-waf { grid-template-columns: 132px minmax(0, 1fr); gap: 18px; }
  .pe-rank__row { padding: 10px 14px; }
  .pe-faq { padding: 36px 0 !important; }
  .pe-lim li { font-size: 13px; }
}
@media (min-width: 768px) { .pe-faq { padding: 44px 0 !important; } }
.pe-gal__more { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; margin-top: 16px; }
.pe-gal__more .pe-cap { margin: 0; }
.pe-soon__w > .pe-pill { margin-bottom: 12px; }
.pe-how { display: inline; }
.pe-how summary { display: inline; cursor: pointer; color: hsl(var(--lp-text-2)); text-decoration: underline dotted hsl(var(--lp-text-3) / .6); text-underline-offset: 3px; }
.pe-how summary::-webkit-details-marker { display: none; }
.pe-how p { margin: 8px 0 4px; }
.pe-how[open] summary { color: hsl(var(--lp-text)); }
@media (max-width: 767px) {
  .pe-block { padding: 18px 0; }
  .pe-ask { margin-bottom: 16px !important; }
  .pe-ask--sm { margin-bottom: 14px !important; }
  .pe-two { gap: 36px; }
  .pe-sqs { --sq: 128px; }
  .pe-plate__body { padding: 16px; }
  .pe-plate__note { padding: 12px 16px; }
  /* company page gallery: one row that scrolls inside its own box, all cards kept */
  .pe-gal--grid { display: grid; grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: 46%; gap: 10px; overflow-x: auto;
    scroll-snap-type: x mandatory; overscroll-behavior-x: contain; padding-bottom: 6px; scrollbar-width: thin; }
  .pe-gal--grid li { scroll-snap-align: start; }
  .pe-gal--grid li:nth-child(n+5) { display: list-item !important; }
}
.lp-final { padding-block: 40px; }
.pe-two--src .pe-lim { grid-template-columns: minmax(0, 1fr) !important; }
@media (min-width: 768px) { .pe-plate__body { padding: 24px; } }
@media (min-width: 768px) {
  .pe-block { padding: 26px 0; }
  .pe-ask--sm .lp-h2 { font-size: 28px; }
  .pe-ask--sm .lp-lead { font-size: 15.5px; }
  .pe-big { margin-top: 28px; }
  .pe-big__n { font-size: 84px; }
  .pe-facts { margin-top: 22px; }
  .pe-ctas { margin-top: 24px; }
  .pe-faq { padding: 32px 0 !important; }
}
.pe-faq .lp-faq__q { padding: 14px 0; }
.pe-faq .lp-faq__a { padding-bottom: 14px; }
@media (max-width: 767px) {
  .pe-ask .lp-h2 { font-size: 25px; line-height: 1.15; }
  .pe-ask .lp-lead { font-size: 15px; line-height: 1.5; margin-top: 8px; }
  .pe-ask .lp-kicker { margin-bottom: 10px; }
  .pe-h1 { font-size: 38px; margin-top: 18px; }
  .pe-sub { margin-top: 14px; font-size: 15.5px; }
  .pe-big { margin-top: 22px; }
  .pe-big__n { font-size: 56px; }
  .pe-facts { margin-top: 18px; }
  .pe-ctas { margin-top: 20px; }
  .pe-hero__grid { gap: 28px; }
}

/* headline table */
.pe-ht { width: 100%; border-collapse: collapse; font-size: 14px; }
.pe-ht th { padding: 0 12px 10px 0; text-align: left; font: 600 12px/1.2 var(--lp-font-body); letter-spacing: .04em; text-transform: uppercase; color: hsl(var(--lp-text-3)); }
.pe-ht td { padding: 8px 12px 8px 0; border-top: 1px solid hsl(var(--lp-line)); vertical-align: middle; }
.pe-ht__i { width: 28px; font-size: 12.5px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
.pe-ht__t { color: hsl(var(--lp-text)); font-weight: 500; line-height: 1.4; overflow-wrap: anywhere; }
.pe-ht__n, .pe-ht__a { width: 84px; text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.pe-ht th:nth-child(3), .pe-ht th:nth-child(5) { text-align: right; }
.pe-ht__n b { font-weight: 600; }
.pe-ht__a { color: hsl(var(--lp-text-2)); padding-right: 0 !important; }
.pe-ht__s { width: 26%; }
.pe-ht__s { white-space: nowrap; }
.pe-ht__sw { display: flex; align-items: center; gap: 10px; }
.pe-ht__pct { flex: 0 0 34px; text-align: right; font-size: 12.5px; color: hsl(var(--lp-text-2)); font-variant-numeric: tabular-nums; }
.pe-ht__s .pe-track { flex: 1; height: 6px; background: none; }
.pe-ht th { white-space: nowrap; }
@media (max-width: 767px) {
  .pe-ht thead th:nth-child(5), .pe-ht__a { display: none; }
  .pe-ht__s { width: 70px; }
  .pe-ht__s .pe-track { display: none; }
  .pe-ht__n { width: 56px; }
  .pe-ht th:nth-child(4) { text-align: left; }
}
.pe-bl .nm a { color: hsl(var(--lp-text)); text-decoration: underline; text-decoration-color: hsl(var(--lp-text-3) / .5); text-underline-offset: 3px; }
.pe-bl .nm a:hover { text-decoration-color: currentColor; }

/* internal link hub */
.pe-hub { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.pe-hub a { display: grid; grid-template-columns: 24px 28px minmax(0, 1fr) auto; grid-template-rows: auto auto; align-items: center; gap: 4px 10px; padding: 7px 8px; border-radius: 8px; }
.pe-hub a:hover { background: hsl(var(--lp-surface-2)); }
.pe-hub i { font-style: normal; font-size: 12.5px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }
.pe-hub .pe-logo { width: 24px; height: 24px; border-radius: 7px; font-size: 11px; }
.pe-hub .nm { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: 600; color: hsl(var(--lp-text)); }
.pe-hub .nm small { margin-left: 8px; font-size: 12px; font-weight: 400; color: hsl(var(--lp-text-3)); }
.pe-hub b { font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }
.pe-hub .pe-track { grid-column: 3 / 5; height: 5px; background: none; }
.pe-hub__gs { display: grid; gap: 22px; }
@media (min-width: 640px) { .pe-hub__gs { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pe-hub__g ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; font-size: 14px; }
.pe-hub__g a { color: hsl(var(--lp-primary-text)); text-decoration: underline; text-decoration-color: hsl(var(--lp-primary-text) / .35); text-underline-offset: 3px; }
.pe-hub__g a:hover { text-decoration-color: currentColor; }
.pe-hub__g .pe-label { margin-bottom: 10px; }
.pe-plate__body:has(> .pe-hub__gs) { justify-content: flex-start; }
@media (max-width: 639px) {
  .pe-hub__gs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 16px; }
  .pe-hub__g ul { font-size: 13px; gap: 6px; }
  .pe-hub .nm small { display: block; margin: 2px 0 0; }
}
@media (max-width: 639px) { .pe-hub .nm { white-space: normal; } .pe-hub .nm small { line-height: 1.35; } }

/* ---- strategy kit (assets/strategy.css) ---- */
/* Strategy page experiment: a few components on top of pe.css. Only --lp-* / --pe-* tokens; depth by surface, no shadows. */
.st-nums { display: block; margin-top: 10px; font-weight: 600; color: hsl(var(--lp-text)); }
.st-on { margin-left: 6px; color: hsl(var(--lp-success)); font-size: 12px; white-space: nowrap; }

/* moves */
.st-moves { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.st-move { padding: 20px; border-radius: 16px; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); }
@media (min-width: 768px) { .st-move { padding: 24px 28px 28px; } }
.st-move__h { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px 16px; align-items: start; }
.st-move__i { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: hsl(var(--pe-v) / .18);
  color: hsl(var(--lp-primary-text)); font: 600 15px/1 var(--lp-font-display); }
.st-move__n { margin: 2px 0 0; font: 600 22px/1.2 var(--lp-font-display); color: hsl(var(--lp-text)); }
.st-move__s { margin: 6px 0 0; max-width: 62ch; font-size: 15px; line-height: 1.5; color: hsl(var(--lp-text-2)); }
.st-move__share { text-align: right; }
.st-move__share b { display: block; font: 600 34px/1 var(--lp-font-display); color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.st-move__share span { font-size: 12.5px; color: hsl(var(--lp-text-3)); }
@media (max-width: 639px) {
  .st-move__h { grid-template-columns: auto minmax(0, 1fr); }
  .st-move__share { grid-column: 1 / -1; display: flex; align-items: baseline; gap: 8px; text-align: left; }
  .st-move__share b { display: inline; font-size: 26px; }
}
.st-move__bar { display: grid; gap: 8px; margin: 16px 0 0; }
.st-move__bar .pe-track { display: flex; height: 10px; border-radius: 99px; background: hsl(var(--lp-surface-3)); overflow: hidden; }
.st-move__bar .pe-gx { height: 100%; border-radius: 99px; }
.st-move__cnt { font-size: 12.5px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; }

/* proof ads */
.st-proof { display: grid; gap: 12px; margin: 18px 0 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .st-proof { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.st-ad { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 14px; height: 100%; padding: 10px; border-radius: 12px; background: hsl(var(--lp-surface-2)); }
@media (min-width: 1024px) { .st-ad { grid-template-columns: 124px minmax(0, 1fr); } }
.st-ad .pe-tile { border-radius: 8px; align-self: start; }
.st-ad .pe-badge { left: 5px; bottom: 5px; padding: 3px 5px; font-size: 11px; }
.st-ad .pe-play { width: 32px; height: 32px; margin: -16px 0 0 -16px; }
.st-ad__txt { position: relative; display: flex; flex-direction: column; gap: 8px; aspect-ratio: 4 / 5; padding: 10px; border-radius: 8px; align-self: start;
  background: hsl(var(--lp-surface-3)); box-shadow: 0 0 0 1px hsl(var(--lp-line)); overflow: hidden; }
.st-ad__kind { display: inline-flex; align-items: center; gap: 5px; font-size: 10.5px; color: hsl(var(--lp-text-3)); }
.st-ad__kind svg { width: 12px; height: 12px; flex: 0 0 auto; }
.st-ad__q { font: 500 12.5px/1.4 var(--lp-font-display); color: hsl(var(--lp-text-2)); display: -webkit-box; -webkit-line-clamp: 7; -webkit-box-orient: vertical; overflow: hidden; }
.st-ad__b { min-width: 0; }
.st-ad__hl { margin: 2px 0 0; font: 600 15px/1.3 var(--lp-font-display); color: hsl(var(--lp-text)); }
.st-ad__body { margin: 6px 0 0; font-size: 13px; line-height: 1.45; color: hsl(var(--lp-text-2)); display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.st-ad__dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 3px 10px; margin: 10px 0 0; font-size: 12px; }
.st-ad__dl dt { color: hsl(var(--lp-text-3)); }
.st-ad__dl dd { margin: 0; color: hsl(var(--lp-text-2)); font-variant-numeric: tabular-nums; }

/* offers */
.st-off { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; }
.st-off li { display: grid; grid-template-columns: minmax(0, 190px) minmax(0, 1fr) auto; gap: 6px 16px; align-items: center; }
.st-off__l { font-weight: 600; color: hsl(var(--lp-text)); }
.st-off .pe-track { display: flex; height: 12px; border-radius: 4px; background: hsl(var(--lp-surface-3)); overflow: hidden; }
.st-off .pe-gx { height: 100%; border-radius: 4px; }
.st-off__v { font-size: 13px; color: hsl(var(--lp-text-3)); font-variant-numeric: tabular-nums; white-space: nowrap; }
.st-off__v b { color: hsl(var(--lp-text)); font-size: 15px; }
.st-off__q { grid-column: 2 / -1; font-size: 13px; font-style: italic; color: hsl(var(--lp-text-2)); }
.st-off__en { font-style: normal; color: hsl(var(--lp-text-3)); }
@media (max-width: 639px) {
  .st-off li { grid-template-columns: minmax(0, 1fr) auto; }
  .st-off .pe-track { grid-column: 1 / -1; grid-row: 2; }
  .st-off__q { grid-column: 1 / -1; }
}

/* ads that last */
.st-last { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.st-last li { display: grid; grid-template-columns: 24px minmax(0, 1fr) auto; gap: 12px; align-items: start; }
.st-last__i { font: 600 14px/1.5 var(--lp-font-display); color: hsl(var(--lp-text-3)); }
.st-last__t { display: grid; gap: 3px; min-width: 0; }
.st-last__t b { font-weight: 600; color: hsl(var(--lp-text)); }
.st-last__t span { font-size: 13px; line-height: 1.45; color: hsl(var(--lp-text-2)); }
.st-last__t small { font-size: 12px; color: hsl(var(--lp-text-3)); }
.st-last__v { font: 600 16px/1.4 var(--lp-font-display); color: hsl(var(--lp-text)); white-space: nowrap; font-variant-numeric: tabular-nums; }

/* where and how */
.st-three { display: grid; gap: 32px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 1024px) { .st-three { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; } }

/* takeaways */
.st-take { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .st-take { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.st-take li { padding: 20px; border-radius: 14px; background: hsl(var(--lp-surface-1)); box-shadow: 0 0 0 1px hsl(var(--lp-line-strong)); }
.st-take__i { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: hsl(var(--pe-v) / .18);
  color: hsl(var(--lp-primary-text)); font: 600 14px/1 var(--lp-font-display); }
.st-take p { margin: 12px 0 0; font: 500 16px/1.5 var(--lp-font-display); color: hsl(var(--lp-text)); }

.st-app td:first-child { color: hsl(var(--lp-text-3)); font-size: 12.5px; }
.st-ad__nc { margin-top: auto; font-size: 10.5px; color: hsl(var(--lp-text-3)); }
.st-ad__q { -webkit-line-clamp: 5; }
.st-lastw .pe-plate__body { justify-content: flex-start; }
.st-cty { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.st-cty li { display: grid; grid-template-columns: auto minmax(0, 7.5em) minmax(0, 1fr) auto; gap: 10px; align-items: center; font-size: 14px; }
.st-cty__n { color: hsl(var(--lp-text)); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.st-cty .pe-track { display: flex; height: 10px; border-radius: 4px; background: hsl(var(--lp-surface-3)); overflow: hidden; }
.st-cty .pe-gx { height: 100%; border-radius: 4px; }
.st-cty__v { font-weight: 600; color: hsl(var(--lp-text)); font-variant-numeric: tabular-nums; }
.st-gap { height: 24px; }
.st-three .pe-col { display: flex; flex-direction: column; }
.st-three .pe-col > .pe-plate { flex: 1; }
.st-app .pe-ht__t { min-width: 9em; }
@media (max-width: 639px) {
  .st-app td:first-child, .st-app th:first-child, .st-app .st-hide { display: none; }
  .st-app th, .st-app td { padding-left: 6px; padding-right: 6px; }
}
.st-app { width: 100%; border-collapse: collapse; font-size: 14px; }
.st-app th { padding: 0 12px 10px 0; text-align: right; white-space: nowrap; font: 600 12px/1.2 var(--lp-font-body); letter-spacing: .04em; text-transform: uppercase; color: hsl(var(--lp-text-3)); }
.st-app th:nth-child(-n+2) { text-align: left; }
.st-app td { padding: 8px 12px 8px 0; border-top: 1px solid hsl(var(--lp-line)); vertical-align: middle; }
.st-app .pe-ht__n { width: 84px; }
@media (max-width: 639px) { .st-app .pe-ht__n { width: auto; } .st-app { font-size: 13px; } }

/* one plain line instead of a module (rules: offers under the heading share; similar companies) */
.st-line { max-width: 72ch; margin: 0; font-size: 16px; line-height: 1.6; color: hsl(var(--lp-text-2)); }
.st-line b { color: hsl(var(--lp-text)); }
.st-line a { color: hsl(var(--lp-primary-text)); text-decoration: underline; text-underline-offset: 3px; }
.st-quote { font-style: italic; color: hsl(var(--lp-text-2)); }
/* P2 brand vs brand: shared pairs and one-side columns */
.st-pairs { display: grid; gap: 28px; margin: 0 0 40px; padding: 0; list-style: none; }
.st-pair__n { margin: 0; font: 600 20px/1.25 var(--lp-font-display); color: hsl(var(--lp-text)); }
.st-pair__s { margin: 6px 0 14px; max-width: 70ch; font-size: 15px; line-height: 1.5; color: hsl(var(--lp-text-2)); }
.st-pair__g { display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 900px) { .st-pair__g { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.st-move__who { margin: 0; font-size: 12.5px; color: hsl(var(--lp-text-3)); }
.st-move__i .pe-logo { width: 32px; height: 32px; }
.st-proof--2 { grid-template-columns: minmax(0, 1fr) !important; }
.st-cols .pe-col { display: grid; gap: 16px; align-content: start; }
.st-cols .pe-vshead { margin-bottom: 0; }
/* P3 competitors: positioning table, shared-move groups, markets */
.st-co { display: flex; align-items: center; gap: 10px; min-width: 0; }
.st-co .pe-logo { flex: 0 0 auto; width: 28px; height: 28px; }
.st-co a { color: hsl(var(--lp-text)); text-decoration: underline; text-decoration-color: hsl(var(--lp-text-3) / .5); text-underline-offset: 3px; }
.st-sub { display: block; margin-top: 2px; font-size: 12px; font-weight: 400; color: hsl(var(--lp-text-3)); }
.st-pos td, .st-pos th { vertical-align: top; }
.st-pos__l { min-width: 220px; max-width: 46ch; font-size: 13.5px; line-height: 1.45; color: hsl(var(--lp-text-2)); text-align: left !important; }
.st-pos__m { white-space: nowrap; font-size: 13.5px; }
.st-pos__me { background: hsl(var(--lp-primary) / .08); }
.st-grp li { grid-template-columns: minmax(0, 1fr) auto; }
.st-grp .nm em { font-style: normal; color: hsl(var(--lp-primary-text)); }
.st-chips { grid-column: 1 / -1; font-size: 12.5px; color: hsl(var(--lp-text-3)); }
.st-quote-n { font-style: normal; }
.st-mkt th:first-child { width: 30%; }
.st-mkt thead th { white-space: nowrap; }
@media (max-width: 639px) {
  .st-pos, .st-pos tbody { display: block; }
  .st-pos thead { display: none; }
  .st-pos tr { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; padding: 14px 6px; border-top: 1px solid hsl(var(--lp-line)); }
  .st-pos th[scope="row"], .st-pos td { display: block !important; padding: 0 !important; border: 0; text-align: left !important; width: auto !important; }
  .st-pos th[scope="row"], .st-pos .st-pos__l, .st-pos .pe-ht__t { grid-column: 1 / -1; min-width: 0; }
  .st-pos td.pe-ht__n::after { content: " ads"; color: hsl(var(--lp-text-3)); font-weight: 400; }
  .st-pos td.st-hide { display: none !important; }
}
/* P1 real ad creatives gallery */
.st-gal { display: grid; gap: 16px; margin: 0; padding: 0; list-style: none; grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 900px) { .st-gal { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 1200px) { .st-gal { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
.st-gal__c { display: flex; flex-direction: column; gap: 10px; height: 100%; padding: 10px; border-radius: 14px; background: hsl(var(--lp-surface-1)); }
.st-gal__c .pe-tile { border-radius: 8px; }
.st-gal__c .st-ad__dl { margin: 0; font-size: 12px; }
.st-gal__a { margin-top: auto; font-size: 13px; }
/* ad examples by format: the most reused gallery */
@media (min-width: 1200px) { .st-gal--ex { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.st-ex { position: relative; }
.st-ex__i { position: absolute; z-index: 2; top: 16px; left: 16px; display: grid; place-items: center; min-width: 26px; height: 26px; padding: 0 6px; border-radius: 99px;
  background: hsl(var(--lp-canvas) / .85); font: 600 12.5px/1 var(--lp-font-display); color: hsl(var(--lp-text)); }
.st-ex__adv { margin: 0; font: 600 15px/1.3 var(--lp-font-display); color: hsl(var(--lp-text)); }
.st-ex__adv a { color: inherit; text-decoration: underline; text-decoration-color: hsl(var(--lp-text-3) / .5); text-underline-offset: 3px; }
.st-ex__t { margin: 0; font-size: 13px; line-height: 1.45; color: hsl(var(--lp-text-2)); }
.st-pos tbody th { padding-top: 10px; text-align: left; text-transform: none; letter-spacing: 0; font: 500 14.5px/1.3 var(--lp-font-body); color: hsl(var(--lp-text)); white-space: normal; }
.st-pos tbody th .st-sub { text-transform: none; }
.st-gal__c .st-ad__txt { width: 100%; aspect-ratio: 4 / 5; height: auto; }
.st-ex .st-ad__txt { padding-top: 44px; }

main.cp[data-pseo-events="company"]{--cp-bg:hsl(var(--st-surface-sunken));--cp-bg-2:hsl(var(--st-surface-raised));--cp-ink:hsl(var(--foreground));--cp-ink-2:hsl(var(--foreground) / .75);--cp-ink-3:hsl(var(--foreground) / .58);--cp-line:hsl(var(--border));--cp-line-2:hsl(var(--border) / .7);--cp-accent:hsl(var(--primary));--cp-w:80rem;--cp-shadow:none;color:var(--cp-ink)}
main.cp[data-pseo-events="company"] .cp__wrap{padding-inline:1rem}
@media (min-width:640px){main.cp[data-pseo-events="company"] .cp__wrap{padding-inline:1.5rem}}
@media (min-width:1024px){main.cp[data-pseo-events="company"] .cp__wrap{padding-inline:2rem}}
main.cp[data-pseo-events="company"] .cp-h2{margin-block:0}
main.cp[data-pseo-events="company"] .hd__asof a,main.cp[data-pseo-events="company"] .cp-creative__body a{color:hsl(var(--primary))}
main.cp[data-pseo-events="company"] .km__bento,main.cp[data-pseo-events="company"] .cp-activity-chart{margin-block:1.25rem}
main.cp[data-pseo-events="company"] .cp-activity-chart{padding:0}
main.cp[data-pseo-events="company"] .cp-creative__media{aspect-ratio:4/5;margin:0}
main.cp[data-pseo-events="company"] .cp-creative__media img{width:100%;height:100%;object-fit:cover}
main.cp[data-pseo-events="company"] .cp-creative__kind{z-index:1}
main.cp[data-pseo-events="company"] .cr__kicker{margin-bottom:.65rem}
main.cp[data-pseo-events="company"] .cp-note .cr__all{margin-top:0;color:var(--cp-ink)}

/* co-header: build_header.py STYLE, verbatim */
/* tokens and recipes copied from spy-web src/index.css (.dark, @layer components) */
.hd{--st-surface-sunken:240 20% 4%;--st-surface-base:240 16% 7%;--st-surface-raised:240 15% 10%;--st-surface-overlay:240 14% 13%;--border:240 10% 18%;
  --foreground:0 0% 98%;--muted-foreground:240 5% 55%;--primary:270 91% 65%;--radius:.5rem;position:relative;isolation:isolate;overflow:hidden;
  background:hsl(var(--st-surface-sunken));padding:calc(4rem + 40px) 0 44px;border-bottom:1px solid hsl(var(--border))}
.hd__in{position:relative}
.hd__bg{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(760px 520px at 12% 40%, hsl(var(--entity) / .42), transparent 68%),
    radial-gradient(900px 600px at 82% -20%, hsl(var(--primary) / .34), transparent 70%),
    linear-gradient(180deg, hsl(var(--st-surface-base) / .0) 55%, hsl(var(--st-surface-sunken)) 100%)}
.hd__bg::after{content:"";position:absolute;inset:0;
  background-image:linear-gradient(hsl(var(--foreground) / .05) 1px, transparent 1px),linear-gradient(90deg, hsl(var(--foreground) / .05) 1px, transparent 1px);
  background-size:48px 48px;-webkit-mask-image:radial-gradient(900px 420px at 30% 30%, #000 30%, transparent 75%);mask-image:radial-gradient(900px 420px at 30% 30%, #000 30%, transparent 75%)}
.hd__crumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:6px;list-style:none;margin:0;padding:0;font-size:.8125rem}
.hd__crumbs a{display:inline-flex;align-items:center;gap:6px;color:hsl(var(--muted-foreground));text-decoration:none;transition:color 120ms}
.hd__crumbs a:hover{color:hsl(var(--foreground))}
.hd__crumbs [aria-current]{color:hsl(var(--foreground));font-weight:500}
.hd__sep{display:inline-flex;color:hsl(var(--muted-foreground) / .6)}
.hd__sep .hd__ic{width:14px;height:14px}
.hd .st-card{border:1px solid hsl(var(--border));border-radius:calc(var(--radius) * 2);background:hsl(var(--st-surface-raised));
  box-shadow:inset 0 1px 0 hsl(var(--foreground) / .04),0 1px 0 hsl(var(--foreground) / .03)}
.hd__id{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-top:32px}
.hd__logo{display:grid;place-items:center;width:96px;height:96px;padding:12px;box-shadow:0 0 0 1px hsl(var(--entity) / .18),0 12px 40px -12px hsl(var(--entity) / .45),inset 0 1px 0 hsl(var(--foreground) / .06)}
.hd__logo img{width:72px;height:72px;border-radius:16px;display:block}
.hd__init{font-family:var(--lp-font-display);font-weight:600;font-size:2.4rem;line-height:1;color:hsl(var(--foreground))}
.hd__kicker{margin:0 0 6px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.hd__h1{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(2rem,4.2vw,3.25rem);line-height:1.05;letter-spacing:-.025em;color:hsl(var(--foreground))}
.hd__desc{margin:12px 0 0;max-width:60ch;font-size:1.0625rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.hd__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:32px 0 0;padding:0;overflow:hidden}
.hd__fact{padding:16px 20px;border-left:1px solid hsl(var(--border))}
.hd__fact:first-child{border-left:0}
.hd__fact dt{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.hd__fact dd{margin:0;font-size:1rem;font-weight:500;color:hsl(var(--foreground));line-height:1.35}
.hd__fact a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.hd__fact a:hover{color:hsl(var(--primary))}
.hd__ic{width:14px;height:14px;flex:0 0 14px}
.hd__fact a .hd__ic{width:14px;height:14px;opacity:.7}
.hd__plat{display:inline-flex;align-items:center;gap:6px}
.hd__mark{width:16px;height:16px}
.hd__asof{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;margin:14px 0 0;font-size:.8125rem;color:hsl(var(--muted-foreground))}
.hd__asof > span{display:inline-flex;align-items:center;gap:6px}.hd__asof strong{font-weight:500;color:hsl(var(--foreground))}
.hd__live{padding:4px 10px;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--st-surface-raised));color:hsl(var(--foreground))}
.hd__live i{width:7px;height:7px;border-radius:999px;background:hsl(158 64% 52%);box-shadow:0 0 0 3px hsl(158 64% 52% / .18)}
.hd-notes{padding:28px 0 64px}
.hd-notes h2{font-size:1rem;margin:0 0 10px;color:hsl(240 5% 55%)}
.hd-notes table{width:100%;border-collapse:collapse;font-size:.85rem}
.hd-notes th,.hd-notes td{border:1px dashed hsl(240 10% 18%);padding:8px 10px;text-align:left;vertical-align:top}
.hd-notes th{width:150px;color:hsl(240 5% 55%);font-weight:600}
@media (max-width:720px){.hd__id{grid-template-columns:1fr;gap:16px}.hd__logo{width:72px;height:72px;padding:8px}.hd__logo img{width:56px;height:56px}
  .hd__facts{grid-template-columns:1fr 1fr}.hd__fact{border-left:0;border-top:1px solid hsl(var(--border))}
  .hd__fact:nth-child(-n+2){border-top:0}.hd__fact:nth-child(even){border-left:1px solid hsl(var(--border))}}
/* Go port: a crumb whose page is not public is text, drawn like the links */
.hd__crumbs li > span:not([aria-current]){display:inline-flex;align-items:center;gap:6px;color:hsl(var(--muted-foreground))}
.hd__logo [hidden]{display:none}

/* anchors sit under the fixed site header (plan 2.5: header height + 8-12px) */
.cp [id] { scroll-margin-top: 84px; }

/* co-metrics: build_metrics.py STYLE, verbatim */
.km{padding:48px 0 12px}
.km__defs{margin-top:12px}
.km__defs summary{display:inline-flex;align-items:center;gap:7px;cursor:pointer;list-style:none;font-size:.8125rem;color:hsl(var(--muted-foreground));padding:6px 0}
.km__defs summary::-webkit-details-marker{display:none}.km__defs summary:hover{color:hsl(var(--foreground))}
.km__defs summary .cp-ic{width:14px;height:14px}.km__defs[open] summary .cp-ic:last-child{transform:rotate(180deg)}
.km__defs summary:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;border-radius:4px}
.km__defs .cp-tw{margin-top:8px}
.km__bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:minmax(150px,auto);gap:12px}
.km__card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:20px;text-decoration:none;color:inherit;
  grid-column:span 3;transition:border-color 120ms ease, background-color 120ms ease}
.km__card:hover{border-color:hsl(var(--primary) / .45);background:hsl(var(--st-surface-overlay))}
.km__card:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px}
.km__card--hero{grid-column:span 6;grid-row:span 2;padding:24px 26px;justify-content:flex-start;
  background:radial-gradient(480px 260px at 0% 0%, hsl(var(--entity) / .16), transparent 70%), hsl(var(--st-surface-raised))}
.km__label{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.km__label .cp-ic,.km__mini .cp-ic{width:14px;height:14px;flex:0 0 14px}
.km__n{display:flex;align-items:center;gap:10px;font-family:var(--lp-font-display);font-weight:600;font-size:2.1rem;line-height:1;letter-spacing:-.02em;color:hsl(var(--foreground));font-variant-numeric:tabular-nums;white-space:nowrap}
.km__n--xl{font-size:clamp(3rem,6vw,4.5rem);letter-spacing:-.035em;margin-top:6px}
.km__sub{font-size:.8125rem;line-height:1.4;color:hsl(var(--muted-foreground))}
.km__dot{width:9px;height:9px;border-radius:999px;background:hsl(var(--st-status-success));box-shadow:0 0 0 4px hsl(var(--st-status-success) / .16)}
.km__bar,.km__track,.km__split{display:block;height:6px;border-radius:999px;background:hsl(var(--foreground) / .07);overflow:hidden}
.km__bar i,.km__track i{display:block;height:100%;border-radius:inherit;background:hsl(var(--st-status-success))}
.km__bar--new i{background:hsl(var(--primary))}
.km__track i{background:hsl(var(--entity))}
.km__split{display:flex;gap:2px;background:none}
.km__split i{height:100%;background:hsl(var(--primary));border-radius:999px 0 0 999px}
.km__split b{height:100%;background:hsl(var(--foreground) / .22);border-radius:0 999px 999px 0}
.km__legend{display:flex;gap:14px;font-size:.8125rem;color:hsl(var(--muted-foreground))}
.km__legend span{display:inline-flex;align-items:center;gap:6px}
.km__legend i{width:8px;height:8px;border-radius:2px;display:inline-block}
.km__legend .v{background:hsl(var(--primary))}.km__legend .im{background:hsl(var(--foreground) / .35)}
.km__geo{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.km__geo li{display:grid;grid-template-columns:20px minmax(0,7.5rem) 1fr 34px;align-items:center;gap:8px;font-size:.8125rem;color:hsl(var(--foreground))}
.km__flag{width:20px;height:15px;border-radius:3px;box-shadow:0 0 0 1px hsl(var(--foreground) / .12)}
.km__cc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.km__pct{text-align:right;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.km__trio{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0 0;padding:14px 0;border-block:1px solid hsl(var(--border))}
.km__trio div{display:flex;flex-direction:column;justify-content:space-between;padding:0 16px;border-left:1px solid hsl(var(--border))}
.km__trio div:first-child{padding-left:0;border-left:0}
.km__trio dt{font-size:.75rem;color:hsl(var(--muted-foreground));margin:0 0 4px}
.km__trio dd{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:1.35rem;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.km__months{margin-top:auto;display:grid;gap:10px}
.km__mini{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:hsl(var(--muted-foreground))}
.km__months ol{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px}
.km__months li{height:34px;border-radius:8px;background:hsl(var(--foreground) / .05);border:1px solid hsl(var(--border));display:flex;align-items:flex-end;justify-content:center;padding-bottom:5px}
.km__months li.on{background:hsl(var(--entity) / .22);border-color:hsl(var(--entity) / .45)}
.km__months li span{font-size:.6875rem;color:hsl(var(--muted-foreground))}
.km__months li.on span{color:hsl(var(--foreground))}
@media (max-width:1100px){.km__card{grid-column:span 6}.km__card--hero{grid-column:span 12;grid-row:auto}}
@media (max-width:560px){.km__trio{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:12px}.km__trio div:nth-child(3){padding-left:0;border-left:0}.km__card{grid-column:span 12}.km__n{font-size:1.8rem}.km__card{padding:16px}}
/* Go port: flags are flag-icons spans (fi fi-<cc>) in place of the prototype <img> */
.km__flag.fi{display:block;background-size:cover;background-position:50%}

/* co-insights: build_insights.py STYLE (verbatim; flags are flag-icons spans) */
.ki{padding:56px 0 24px}
.ki__head{display:grid;gap:10px;max-width:52rem;margin-bottom:24px}
.ki__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.ki__kicker .cp-ic{width:15px;height:15px}
.ki__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.ki__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.ki__lead a{color:hsl(var(--foreground));text-decoration:underline;text-decoration-color:hsl(var(--foreground) / .3);text-underline-offset:3px}
.ki__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ki__grid > .ki__card:last-child:nth-child(odd){grid-column:1 / -1}  /* an odd count leaves no hole */
.ki__card{display:flex;flex-direction:column;gap:14px;padding:22px 24px 14px;min-width:0}
.ki__label{display:flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.ki__label .cp-ic{width:14px;height:14px}
.ki__h{margin:0;display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px}
.ki__fig{font-family:var(--lp-font-display);font-weight:600;font-size:2.5rem;line-height:1;letter-spacing:-.03em;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.ki__claim{font-family:var(--lp-font-display);font-weight:500;font-size:1.0625rem;color:hsl(var(--foreground) / .85)}
p.ki__h .ki__claim{font-family:inherit;font-weight:400;font-size:.875rem;color:hsl(var(--muted-foreground))}
.ki__t{margin:-2px 0 0;font-family:var(--lp-font-display);font-weight:600;font-size:1.25rem;line-height:1.25;letter-spacing:-.01em;color:hsl(var(--foreground))}
.ki__p{margin:-6px 0 0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.ki__fact{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:-4px 0 0;font-size:.875rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.ki__flags{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;margin-right:4px}
.ki__more{font-size:.75rem;color:hsl(var(--muted-foreground));margin-left:2px}
.ki__flag{width:20px;height:15px;border-radius:3px;box-shadow:0 0 0 1px hsl(var(--foreground) / .12);display:block}
.ki__flag.fi{display:block;width:20px;height:15px;flex:0 0 20px;line-height:15px;background-size:cover}  /* flag-icons span in place of the prototype img */
.ki__cmp{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ki__cmp li{display:grid;grid-template-columns:9rem 1fr 4.5rem;align-items:center;gap:12px}
.ki__who{font-size:.8125rem;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ki__cmp .me .ki__who{color:hsl(var(--foreground))}
.ki__val{font-size:.8125rem;text-align:right;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.ki__cmp .me .ki__val{color:hsl(var(--foreground));font-weight:600}
.ki__bar{display:block;height:8px;border-radius:999px;background:hsl(var(--foreground) / .06);overflow:hidden}
.ki__bar i{display:block;height:100%;border-radius:inherit;background:hsl(var(--foreground) / .28)}
.ki__cmp .me .ki__bar i{background:hsl(var(--entity))}
.ki__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ki__chips li{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:999px;font-size:.8125rem;color:hsl(var(--foreground));
  background:hsl(var(--st-surface-overlay));border:1px solid hsl(var(--border))}
.ki__how{margin-top:auto;padding-top:10px;border-top:1px solid hsl(var(--border))}
.ki__how summary{display:inline-flex;align-items:center;gap:7px;cursor:pointer;list-style:none;font-size:.75rem;color:hsl(var(--muted-foreground));padding:4px 0}
.ki__how summary::-webkit-details-marker{display:none}
.ki__how summary:hover{color:hsl(var(--foreground))}
.ki__how summary:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;border-radius:4px}
.ki__how summary .cp-ic{width:13px;height:13px}
.ki__how dl{display:grid;gap:8px;margin:8px 0 4px;font-size:.75rem;line-height:1.5}
.ki__how dl div{display:grid;grid-template-columns:4rem 1fr;gap:10px}
.ki__how dt{color:hsl(var(--muted-foreground))}
.ki__how dd{margin:0;color:hsl(var(--foreground) / .85);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
@media (max-width:900px){.ki__grid{grid-template-columns:1fr}}
@media (max-width:560px){.ki__card{padding:18px 16px 12px}.ki__fig{font-size:2rem}.ki__cmp li{grid-template-columns:7.5rem 1fr 4rem}}

/* co-activity: build_activity.py STYLE (verbatim, /*SEL*/ expanded for 30/90/180 days x ads/cre) */
.ac{padding:56px 0 24px}
.ac__head{display:grid;gap:10px;max-width:56rem;margin-bottom:20px}
.ac__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.ac__kicker .cp-ic{width:15px;height:15px}
.ac__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.ac__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.ac__card{padding:18px 22px 20px}
.ac__note{margin-top:12px;max-width:62rem}
.ac__tw{margin-top:12px}
.ac__tw small{display:block;font-size:.6875rem;font-weight:400;color:hsl(var(--muted-foreground))}
.ac__controls{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.ac__seg{display:inline-flex;padding:3px;border-radius:10px;background:hsl(var(--st-surface-base));border:1px solid hsl(var(--border))}
.ac__seg label{padding:6px 12px;border-radius:8px;font-size:.8125rem;color:hsl(var(--muted-foreground));cursor:pointer;transition:background-color 120ms ease,color 120ms ease;white-space:nowrap}
.ac__seg label:hover{color:hsl(var(--foreground))}
.ac input:focus-visible + * , .ac__seg label:focus-visible{outline:2px solid hsl(var(--primary))}
.ac__panel{display:none;grid-template-columns:minmax(0,1fr) 15rem;gap:24px;align-items:start}
.ac__chart{min-width:0;display:grid;gap:8px}
.ac__legend{display:flex;flex-wrap:wrap;gap:16px;margin:0;font-size:.75rem;color:hsl(var(--muted-foreground))}
.ac__legend span{display:inline-flex;align-items:center;gap:7px}
.ac__legend i{display:inline-block;width:10px;height:10px;border-radius:2px}
.ac__legend .b{background:hsl(var(--entity))}
.ac__legend .l{height:0;width:16px;border-top:2px dashed hsl(var(--foreground) / .55);border-radius:0}
.ac__legend .g{height:4px;background:hsl(var(--foreground) / .22);border-radius:1px}
.ac__scroll{overflow-x:auto;overscroll-behavior-x:contain}
.ac__svg{width:100%;height:auto;display:block;overflow:visible}
@media (max-width:700px){.ac__scroll{direction:rtl}.ac__svg{width:720px;direction:ltr}}  /* opens on the latest days */
.ac__grid{stroke:hsl(var(--border));stroke-width:1}
.ac__yl{fill:hsl(var(--muted-foreground));font-size:11px;text-anchor:end;font-variant-numeric:tabular-nums}
.ac__xl{fill:hsl(var(--muted-foreground));font-size:11px;text-anchor:middle}
.ac__b{fill:hsl(var(--entity) / .85)}
.ac__defs{position:absolute;width:0;height:0;overflow:hidden}
.ac__gap{fill:hsl(var(--foreground) / .22)}
.ac__peer{fill:none;stroke:hsl(var(--foreground) / .6);stroke-width:1.6;stroke-dasharray:5 4;stroke-linejoin:round}
.ac__src{display:flex;gap:8px;margin:4px 0 0;font-size:.75rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.ac__src .cp-ic{width:13px;height:13px;flex:0 0 13px;margin-top:2px}
.ac__src b{font-weight:500;color:hsl(var(--foreground) / .8)}
.ac__stats{display:grid;gap:0;margin:28px 0 0;border-left:1px solid hsl(var(--border))}
.ac__stats div{padding:12px 0 12px 20px;border-bottom:1px solid hsl(var(--border))}
.ac__stats div:last-child{border-bottom:0}
.ac__stats dt{font-size:.75rem;color:hsl(var(--muted-foreground));margin:0 0 4px}
.ac__stats dd{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:1.35rem;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.ac:has(#ac-p30:checked):has(#ac-mads:checked) .ac__panel[data-k="30-ads"]{display:grid}.ac:has(#ac-p30:checked) label[for="ac-p30"],.ac:has(#ac-mads:checked) label[for="ac-mads"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}.ac:has(#ac-p30:checked):has(#ac-mcre:checked) .ac__panel[data-k="30-cre"]{display:grid}.ac:has(#ac-p30:checked) label[for="ac-p30"],.ac:has(#ac-mcre:checked) label[for="ac-mcre"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}.ac:has(#ac-p90:checked):has(#ac-mads:checked) .ac__panel[data-k="90-ads"]{display:grid}.ac:has(#ac-p90:checked) label[for="ac-p90"],.ac:has(#ac-mads:checked) label[for="ac-mads"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}.ac:has(#ac-p90:checked):has(#ac-mcre:checked) .ac__panel[data-k="90-cre"]{display:grid}.ac:has(#ac-p90:checked) label[for="ac-p90"],.ac:has(#ac-mcre:checked) label[for="ac-mcre"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}.ac:has(#ac-p180:checked):has(#ac-mads:checked) .ac__panel[data-k="180-ads"]{display:grid}.ac:has(#ac-p180:checked) label[for="ac-p180"],.ac:has(#ac-mads:checked) label[for="ac-mads"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}.ac:has(#ac-p180:checked):has(#ac-mcre:checked) .ac__panel[data-k="180-cre"]{display:grid}.ac:has(#ac-p180:checked) label[for="ac-p180"],.ac:has(#ac-mcre:checked) label[for="ac-mcre"]{background:hsl(var(--st-surface-floating));color:hsl(var(--foreground));box-shadow:inset 0 1px 0 hsl(var(--foreground) / .06)}
@media (max-width:900px){.ac__panel{grid-template-columns:1fr}.ac__stats{grid-template-columns:1fr 1fr;border-left:0;margin-top:4px}
  .ac__stats div{padding:12px 0;border-bottom:1px solid hsl(var(--border))}.ac__stats div:nth-child(odd){padding-right:12px}}
@media (max-width:560px){.ac__card{padding:14px}.ac__seg label{padding:6px 9px}.ac__stats dd{font-size:1.1rem}}

/* co-creatives: prototype strategy/sections/build_creatives.py STYLE, verbatim */
.cr{padding:56px 0 24px}
.cr__head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px}
.cr__head > div{display:grid;gap:10px;max-width:52rem}
.cr__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.cr__kicker .cp-ic{width:15px;height:15px}
.cr__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.cr__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.cr__all{margin-top:18px;display:inline-flex;align-items:center;gap:6px;font-size:.875rem;color:hsl(var(--foreground));text-decoration:none;
  padding:8px 14px;border-radius:10px;border:1px solid hsl(var(--border));background:hsl(var(--st-surface-raised));transition:border-color 120ms ease}
.cr__all:hover{border-color:hsl(var(--primary) / .5)}
.cr__all .cp-ic,.cr__go .cp-ic{width:14px;height:14px}
.cr__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.cr__link{display:grid;gap:6px;text-decoration:none;color:inherit;border-radius:16px}
.cr__link:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:3px}
.cr__link .pe-tile{transition:box-shadow 120ms ease}
.cr__link:hover .pe-tile{box-shadow:0 0 0 1px hsl(var(--primary) / .6)}
.cr__n{margin-top:6px;font-family:var(--lp-font-display);font-weight:600;font-size:1.05rem;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.cr__d{font-size:.8125rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.cr__note{font-size:.8125rem;line-height:1.45;color:hsl(var(--foreground) / .8)}
.cr__go{display:inline-flex;align-items:center;gap:5px;font-size:.8125rem;color:hsl(var(--primary))}
@media (max-width:1100px){.cr__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.cr__head{flex-direction:column;align-items:flex-start}.cr__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}

/* co-geo: prototype strategy/sections/build_geo.py STYLE, verbatim */
.geo{padding:56px 0 24px}
.geo__head{display:grid;gap:10px;max-width:56rem;margin-bottom:20px}
.geo__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.geo__kicker .cp-ic{width:15px;height:15px}
.geo__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.geo__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.geo__card{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px;padding:22px 24px;align-items:center}
.geo__map{min-width:0}
.geo__list{min-width:0;padding-left:24px;border-left:1px solid hsl(var(--border))}
.geo__lh,.geo__rows tr{display:grid;grid-template-columns:1.2rem minmax(0,8.5rem) 1fr 4rem;align-items:center;gap:8px}
.geo__lh th{font-weight:400}.geo__lh th:first-child{grid-column:1 / 3}
.geo__lh{font-size:.6875rem;color:hsl(var(--muted-foreground));margin-bottom:6px}
.geo__lh th:not(:first-child){text-align:right}
.geo__rows{display:grid !important;gap:2px}
.geo__rows tr{padding:6px 0;font-size:.8125rem}
.geo__n{display:grid;grid-template-columns:1fr 2.6rem;align-items:center;gap:8px}
.geo__list--noact .geo__rows tr,.geo__list--noact .geo__lh{grid-template-columns:1.2rem minmax(0,8.5rem) 1fr}
.geo__i{font-size:.75rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.geo__cc{display:flex;align-items:center;gap:8px;min-width:0;font-weight:400;color:hsl(var(--foreground));white-space:nowrap;overflow:hidden}
.geo__cc span{overflow:hidden;text-overflow:ellipsis}
.geo__cc em{font-style:normal;font-size:.625rem;letter-spacing:.04em;text-transform:uppercase;padding:1px 5px;border-radius:4px;color:hsl(var(--foreground));background:hsl(var(--primary) / .28)}
.geo__bar{display:block;height:6px;border-radius:999px;background:hsl(var(--foreground) / .07);overflow:hidden}
.geo__bar i{display:block;height:100%;border-radius:inherit;background:hsl(var(--entity))}
.geo__n{text-align:right;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.geo__act{text-align:right;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.geo__act--on{color:hsl(var(--foreground))}
.geo__act--on::before{content:"";display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:999px;vertical-align:middle;background:hsl(var(--st-status-success))}
.geo__more{margin-top:8px;border-top:1px solid hsl(var(--border));padding-top:8px}
.geo__more summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;list-style:none;font-size:.8125rem;color:hsl(var(--muted-foreground))}
.geo__more summary::-webkit-details-marker{display:none}
.geo__more summary:hover{color:hsl(var(--foreground))}
.geo__more summary .cp-ic{width:14px;height:14px}
.geo__more[open] summary .cp-ic{transform:rotate(180deg)}
.geo__mt tbody{display:flex !important;flex-wrap:wrap;gap:6px;margin-top:10px}
.geo__mt th{display:inline-flex;align-items:center;gap:6px;font-weight:400}
.geo__more tr{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 4px 6px;border-radius:999px;font-size:.75rem;color:hsl(var(--foreground));background:hsl(var(--st-surface-overlay));border:1px solid hsl(var(--border))}
.geo__more tr em{font-style:normal;font-size:.625rem;letter-spacing:.04em;text-transform:uppercase;padding:1px 5px;border-radius:4px;background:hsl(var(--primary) / .28)}
.geo__more td{color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.geo__src{display:flex;gap:8px;margin:14px 0 0;font-size:.75rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.geo__src .cp-ic{width:13px;height:13px;flex:0 0 13px;margin-top:2px}
@media (max-width:1000px){.geo__card{grid-template-columns:1fr}.geo__list{padding-left:0;border-left:0;border-top:1px solid hsl(var(--border));padding-top:16px}}
@media (max-width:560px){.geo__card{padding:14px}}
/* port: the site shell's flag-icons replace assets/flags/<cc>.svg; the .fi span fills the prototype's flag box */
.pe-flag > .fi{display:block;width:100%;height:100%;background-size:cover;background-position:center}

/* co-strategy: build_strategy_block.py STYLE, verbatim. */
.cs{padding:56px 0 24px}
.cs__head{display:grid;gap:10px;max-width:56rem;margin-bottom:20px}
.cs__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.cs__kicker .cp-ic{width:15px;height:15px}
.cs__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.cs__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.cs__grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:12px;align-items:start}
.cs__h3{margin:0;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.cs__moves{padding:20px 24px 8px}
.cs__mh{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.cs__key{display:flex;gap:14px;font-size:.75rem;color:hsl(var(--muted-foreground))}
.cs__key span{display:inline-flex;align-items:center;gap:6px}
.cs__key i{display:inline-block;width:10px;height:10px;border-radius:999px}
.cs__key .o{border:2px solid hsl(var(--foreground) / .45)}
.cs__key .x{background:hsl(var(--primary))}
.cs__ml{margin:0;padding:0}
.cs__ml tbody{display:block}
.cs__mt{text-align:left;font-weight:400}
.cs__m{display:grid;grid-template-columns:minmax(0,1fr) 15rem;gap:24px;align-items:center;padding:16px 0;border-top:1px solid hsl(var(--border))}
.cs__m:first-child{border-top:0}
.cs__mt{display:grid;gap:4px;min-width:0}
.cs__mt .cs__name{display:block;margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:1.0625rem;color:hsl(var(--foreground))}
.cs__mt p{margin:0;font-size:.8125rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.cs__mt q,.cs__offers q{display:block;margin-top:4px;padding-left:10px;border-left:2px solid hsl(var(--primary) / .45);font-size:.8125rem;line-height:1.45;color:hsl(var(--foreground) / .85);quotes:"“" "”"}
.cs__db{display:grid;gap:6px}
.cs__track{position:relative;display:block;height:14px}
.cs__track::before{content:"";position:absolute;left:0;right:0;top:6px;height:2px;border-radius:2px;background:hsl(var(--foreground) / .08)}
.cs__span{position:absolute;top:6px;height:2px;background:hsl(var(--foreground) / .3)}
.cs__m--up .cs__span{background:hsl(var(--primary) / .7)}
.cs__o,.cs__x{position:absolute;top:1px;width:12px;height:12px;margin-left:-6px;border-radius:999px}
.cs__o{border:2px solid hsl(var(--foreground) / .45);background:hsl(var(--st-surface-raised))}
.cs__x{background:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--st-surface-raised))}
.cs__v{display:flex;align-items:baseline;justify-content:flex-end;gap:6px;font-variant-numeric:tabular-nums;font-size:.8125rem;color:hsl(var(--muted-foreground))}
.cs__v b{font-weight:600;color:hsl(var(--foreground) / .7)}
.cs__v .cs__now{color:hsl(var(--foreground))}
.cs__side{display:grid;gap:12px}
.cs__box{padding:18px 20px}
.cs__offers{margin:10px 0 0;padding:0}
.cs__offers tbody{display:grid !important;gap:12px}
.cs__offers tr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;font-size:.875rem}
.cs__olb{font-weight:600 !important;color:hsl(var(--foreground))}
.cs__oln{color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.cs__oq{grid-column:1 / -1}
.cs__ol{display:flex;justify-content:space-between;gap:10px;font-size:.875rem}
.cs__ol b{font-weight:600;color:hsl(var(--foreground))}
.cs__ol span{color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums;white-space:nowrap}
.cs__ctas{margin:10px 0 0;padding:0}
.cs__ctas tbody{display:grid !important;gap:8px}
.cs__ctas th{font-weight:400;text-align:left}
.cs__ctas tbody tr{display:grid;grid-template-columns:6.5rem 1fr 2.6rem;align-items:center;gap:10px;font-size:.8125rem;color:hsl(var(--foreground))}
.cs__ctas td:last-child{text-align:right}
.cs__ctas b{text-align:right;font-weight:500;font-variant-numeric:tabular-nums}
.cs__cb{display:block;height:6px;border-radius:999px;background:hsl(var(--foreground) / .07);overflow:hidden}
.cs__cb i{display:block;height:100%;background:hsl(var(--foreground) / .4);border-radius:inherit}
.cs__take{margin-top:12px;padding:18px 24px}
.cs__tp{margin:0;font-size:.9375rem;line-height:1.6;color:hsl(var(--foreground) / .88)}
.cs__tp strong{color:hsl(var(--primary));font-weight:600}
.cs__bn{margin-top:12px}
.cs__take ol{margin:10px 0 0;padding-left:20px;display:grid;gap:8px;font-size:.9375rem;line-height:1.5;color:hsl(var(--foreground) / .88)}
.cs__take li::marker{color:hsl(var(--primary));font-weight:600}
@media (max-width:1000px){.cs__grid{grid-template-columns:1fr}}
@media (max-width:640px){.cs__m{grid-template-columns:1fr;gap:10px}.cs__moves{padding:16px 14px 4px}}

/* co-company: build_company.py STYLE, verbatim. */
.cx{padding:56px 0 24px}
.cx__tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cx__tile{display:grid;gap:8px;padding:20px 22px;align-content:start}
.cx__n{font-family:var(--lp-font-display);font-weight:600;font-size:2.1rem;line-height:1;letter-spacing:-.02em;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.cx__s{font-size:.8125rem;line-height:1.45;color:hsl(var(--muted-foreground))}
.cx__months{margin-top:12px}
.cx__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;align-items:start}
.cx__note{margin-top:12px}
.cx__link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:.875rem;color:hsl(var(--primary));text-decoration:none}
.cx__link:hover{text-decoration:underline;text-underline-offset:3px}
.cx__link .cp-ic{width:14px;height:14px}
.cx__close{margin-top:24px;max-width:62rem}
@media (max-width:1000px){.cx__tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.cx__grid{grid-template-columns:1fr}}
@media (max-width:520px){.cx__n{font-size:1.75rem}.cx__tile{padding:16px}}

/* co-similar: build_similar.py STYLE, verbatim. */
.sc__foot{margin-top:12px;max-width:62rem}
.sc{padding:56px 0 24px}
.sc__head{display:grid;gap:10px;max-width:56rem;margin-bottom:20px}
.sc__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.sc__kicker .cp-ic{width:15px;height:15px}
.sc__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.sc__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.sc__list{list-style:none;margin:0;padding:6px 0;overflow:hidden}
.sc__row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.3fr) 8rem 11rem;align-items:center;gap:16px;padding:12px 22px;border-top:1px solid hsl(var(--border))}
.sc__row--head{border-top:0}
.sc__row--head{padding-block:10px;font-size:.75rem;color:hsl(var(--muted-foreground))}
.sc__row--me{background:linear-gradient(90deg,hsl(var(--entity) / .12),transparent 70%);box-shadow:inset 3px 0 0 hsl(var(--entity))}
.sc__c{min-width:0}
.sc__c--act{text-align:right}
.sc__c--who a{color:inherit;text-decoration:none;display:block;border-radius:8px}
.sc__c--who a:hover b{color:hsl(var(--primary))}
.sc__c--who a:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:3px}
.sc__c--who{display:flex;align-items:center;gap:10px}
.sc__who{display:flex;align-items:center;gap:12px;min-width:0}
.sc__who > span{display:grid;min-width:0}
.sc__who b{font-weight:600;font-size:.9375rem;color:hsl(var(--foreground));transition:color 120ms ease}
.sc__who small{font-size:.75rem;color:hsl(var(--muted-foreground));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sc__logo{width:36px;height:36px;flex:0 0 36px;border-radius:10px;object-fit:cover;background:hsl(var(--st-surface-overlay));box-shadow:0 0 0 1px hsl(var(--border))}
.sc__logo--mono{display:grid;place-items:center;font-family:var(--lp-font-display);font-weight:600;font-size:.95rem;color:hsl(var(--foreground) / .8)}
.sc__sim{color:hsl(var(--foreground) / .75)}
.sc__row--me .sc__sim{color:hsl(var(--foreground))}
.sc__move{font-family:var(--lp-font-display);font-weight:500;font-size:.9375rem;color:hsl(var(--foreground))}
.sc__none{color:hsl(var(--muted-foreground))}
.sc__c--ads{display:grid;justify-items:end;gap:2px}
.sc__c--ads b{font-weight:600;font-size:.9375rem;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.sc__c--ads small{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.sc__dot{display:inline-block;width:6px;height:6px;border-radius:999px;background:hsl(var(--st-status-success))}
.sc__row--head .sc__c--ads{justify-items:end;text-align:right}
.sc__c--mk{display:flex;align-items:center;gap:8px;font-size:.875rem;color:hsl(var(--foreground))}
.sc__c--mk small{color:hsl(var(--muted-foreground));font-variant-numeric:tabular-nums}
.sc__row--head .sc__c--mk{font-size:.75rem;color:hsl(var(--muted-foreground))}
.sc__flag{width:20px;height:15px;border-radius:3px;box-shadow:0 0 0 1px hsl(var(--foreground) / .12)}
@media (max-width:1000px){.sc__row{grid-template-columns:minmax(0,1fr) 7rem 9rem}.sc__c--move{display:none}}
@media (max-width:560px){.sc__row{grid-template-columns:minmax(0,1fr) 6rem;padding:12px 14px}.sc__c--mk{display:none}.sc__row--head{display:none}}
/* Go port: the logo is a CSS background over the monogram (a logo the proxy does not have paints nothing, so the
   monogram shows); the flag is a flag-icons span sized like the prototype's <img>. */
.sc__logo{position:relative;overflow:hidden}
.sc__logo i{position:absolute;inset:0;border-radius:inherit;background:center / cover no-repeat}
.sc__flag{display:inline-block;flex:0 0 20px;background-size:cover;background-position:center}

/* co-scope: build_scope.py STYLE, verbatim */
.sp{padding:56px 0 24px}
.sp__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sp__i{display:grid;gap:12px;align-content:start;padding:20px 22px}
.sp__i > .cp-ic{width:18px;height:18px;color:hsl(var(--primary))}
.sp__i p{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.sp__i strong{font-weight:600;color:hsl(var(--foreground))}
.sp__close{margin-top:18px;max-width:62rem}
@media (max-width:900px){.sp__list{grid-template-columns:1fr}}

/* co-method: build_method.py STYLE, verbatim. */
.sm{padding:56px 0 40px}
.sm__head{display:grid;gap:10px;max-width:56rem;margin-bottom:24px}
.sm__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.sm__kicker .cp-ic{width:15px;height:15px}
.sm__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.25rem);line-height:1.15;letter-spacing:-.02em;color:hsl(var(--foreground))}
.sm__h3{margin:0 0 12px;font-size:.75rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:hsl(var(--muted-foreground))}
.sm__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:32px;align-items:start}
.sm__dl{margin:0;display:grid}
.sm__dl div{display:grid;grid-template-columns:10rem 1fr;gap:16px;padding:12px 0;border-top:1px solid hsl(var(--border))}
.sm__dl div:first-child{border-top:0;padding-top:0}
.sm__dl dt{font-weight:600;font-size:.875rem;color:hsl(var(--foreground))}
.sm__dl dd{margin:0;font-size:.875rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.sm__side{display:grid;gap:12px}
.sm__card{padding:18px 20px}
.sm__facts{margin:0;display:grid;gap:10px}
.sm__facts div{display:flex;justify-content:space-between;gap:16px;font-size:.8125rem}
.sm__facts dt{color:hsl(var(--muted-foreground))}
.sm__facts dd{margin:0;text-align:right;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}
.sm__lim{margin:0;padding:0 0 0 18px;list-style:disc;display:grid;gap:8px;font-size:.8125rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.sm__lim li{display:list-item}
.sm__lim li::marker{color:hsl(var(--foreground) / .35)}
.sm__fix{display:flex;gap:8px;margin:2px 4px 0;font-size:.8125rem;line-height:1.5;color:hsl(var(--muted-foreground))}
.sm__fix .cp-ic{width:14px;height:14px;flex:0 0 14px;margin-top:3px}
.sm__fix a{color:hsl(var(--foreground));text-decoration:underline;text-decoration-color:hsl(var(--foreground) / .3);text-underline-offset:3px}
.sm__faq{max-width:56rem}
.sm--faq{padding-top:16px}
.sm__tw{border:0;background:none;border-radius:0}
.sm__tw .cp-table caption{padding:0 0 8px}
.sm__tw .cp-table th,.sm__tw .cp-table td{padding:8px 0;font-size:.8125rem}
.sm__tw .cp-table td{text-align:right;color:hsl(var(--foreground))}
.sm__tw .cp-table tbody th{color:hsl(var(--muted-foreground));font-weight:400;white-space:normal}
.sm__h3--faq{margin-bottom:6px}
.sm__q{border-bottom:1px solid hsl(var(--border))}
.sm__q summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 0;cursor:pointer;list-style:none;
  font-family:var(--lp-font-display);font-weight:600;font-size:1.0625rem;color:hsl(var(--foreground))}
.sm__q summary::-webkit-details-marker{display:none}
.sm__q summary:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;border-radius:4px}
.sm__q summary .cp-ic{width:18px;height:18px;flex:0 0 18px;color:hsl(var(--muted-foreground));transition:transform 150ms cubic-bezier(0.23,1,0.32,1)}
.sm__q[open] summary .cp-ic{transform:rotate(180deg)}
.sm__q p{margin:0 0 16px;font-size:.9375rem;line-height:1.6;color:hsl(var(--muted-foreground));max-width:48rem}
@media (prefers-reduced-motion:reduce){.sm__q summary .cp-ic{transition:none}}
@media (max-width:900px){.sm__grid{grid-template-columns:1fr}.sm__dl div{grid-template-columns:1fr;gap:4px}}

/* co-cta: prototype strategy/sections/build_cta.py STYLE, verbatim */
.ct{padding:40px 0 72px}
.ct__lead{margin:0;font-size:.9375rem;line-height:1.55;color:hsl(var(--muted-foreground));max-width:40rem}
.ct__rel{margin-top:44px}
.ct__rh{margin:0 0 14px;font-family:var(--lp-font-display);font-weight:600;font-size:1.375rem;letter-spacing:-.01em;color:hsl(var(--foreground))}
.ct__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ct__chips a{display:inline-flex;align-items:center;gap:6px;padding:8px 12px 8px 14px;border-radius:999px;font-size:.875rem;color:hsl(var(--foreground));text-decoration:none;
  background:hsl(var(--st-surface-raised));border:1px solid hsl(var(--border));transition:border-color 120ms ease}
.ct__chips a:hover{border-color:hsl(var(--primary) / .5)}
.ct__chips .cp-ic{width:14px;height:14px;color:hsl(var(--muted-foreground))}
.ct__all{margin:14px 0 0;font-size:.875rem;color:hsl(var(--muted-foreground))}
.ct__all a{color:hsl(var(--foreground));text-decoration:underline;text-decoration-color:hsl(var(--foreground) / .3);text-underline-offset:3px}
main.cp .ct__card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:center;padding:40px 44px;
  background:radial-gradient(620px 320px at 100% 50%, hsl(var(--entity) / .20), transparent 70%),radial-gradient(520px 260px at 0% 0%, hsl(var(--primary) / .10), transparent 70%),hsl(var(--st-surface-raised))}
.ct__txt{display:grid;gap:16px;position:relative;z-index:1}
.ct__kicker{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--primary))}
.ct__kicker .cp-ic{width:15px;height:15px}
.ct__h2{margin:0;font-family:var(--lp-font-display);font-weight:600;font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.12;letter-spacing:-.02em;color:hsl(var(--foreground))}
.ct__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ct__list li{display:flex;gap:10px;align-items:flex-start;font-size:.9375rem;line-height:1.5;color:hsl(var(--foreground) / .85)}
.ct__list .cp-ic{width:18px;height:18px;flex:0 0 18px;margin-top:2px;color:hsl(var(--primary))}
.ct__btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.ct__btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:12px;font-weight:600;font-size:.9375rem;text-decoration:none;
  color:hsl(0 0% 100%);background:hsl(var(--primary));transition:background-color 120ms ease}
.ct__btn:hover{background:hsl(var(--primary) / .88)}
.ct__btn:focus-visible{outline:2px solid hsl(var(--foreground));outline-offset:3px}
.ct__btn .cp-ic{width:16px;height:16px}
.ct__btn--2{color:hsl(var(--foreground));background:hsl(var(--st-surface-overlay));border:1px solid hsl(var(--border))}
.ct__btn--2:hover{background:hsl(var(--st-surface-overlay) / .8);border-color:hsl(var(--foreground) / .25)}
.ct__btn--3{padding-inline:10px;color:hsl(var(--muted-foreground));background:none;font-weight:500}
.ct__btn--3:hover{color:hsl(var(--foreground));background:none;text-decoration:underline;text-underline-offset:3px}
.ct__fan{position:relative;height:300px}
.ct__c{position:absolute;top:50%;left:50%;width:170px;aspect-ratio:4/5;object-fit:cover;border-radius:16px;box-shadow:0 0 0 1px hsl(var(--foreground) / .12),0 20px 40px -12px hsl(240 20% 2% / .7)}
.ct__c--0{transform:translate(-120%,-50%) rotate(-7deg)}
.ct__c--1{transform:translate(-50%,-56%);z-index:2}
.ct__c--2{transform:translate(20%,-50%) rotate(7deg)}
@media (max-width:900px){main.cp .ct__card{grid-template-columns:1fr;padding:28px 22px}.ct__fan{height:220px}.ct__c{width:130px}}
/* S-31: a related company without a public page is text; it keeps the pill (no hover, no chevron space) */
.ct__chips li > span{display:inline-flex;align-items:center;gap:6px;padding:8px 12px 8px 14px;border-radius:999px;font-size:.875rem;color:hsl(var(--foreground));text-decoration:none;  background:hsl(var(--st-surface-raised));border:1px solid hsl(var(--border));transition:border-color 120ms ease}

