:root {
  color-scheme: dark;

  /* Ground */
  --night: #0B1130;            /* page background */
  --night-deep: #080C25;       /* final CTA band, footer */
  --dusk: #131A3E;             /* faceplates, nav pill, inputs */
  --dusk-2: #1C2452;           /* chips, hover fills, selected tiles */
  --line: rgba(160, 176, 240, .16);   /* faceplate borders, outer scope ring */
  --line-2: rgba(160, 176, 240, .30); /* inner scope rings, hover borders */
  --edge: #5E6894;             /* input and tile borders: 3.4:1 on night, 3.1:1 on dusk */

  /* Text */
  --paper: #EEF0FA;            /* primary text: 16.1:1 on night */
  --haze: #B7BDDD;             /* secondary text, leads: 9.9:1 night, 9.1:1 dusk */
  --muted: #8A92C2;            /* captions: 6.1:1 night, 5.6:1 dusk, 4.9:1 dusk-2 */

  /* Meaning */
  --sodium: #FFAD42;           /* MR's light and every primary action: 9.9:1 on night; night text on it 9.9:1 */
  --sodium-hi: #FFC06B;        /* hover */
  --sodium-lo: #E8931E;        /* pressed */
  --sodium-a12: rgba(255, 173, 66, .12);
  --sodium-a30: rgba(255, 173, 66, .30);
  --you: #3987E5;              /* you, exactly as in the product: 5.0:1 on night */
  --you-ink: #86B6EF;          /* "You" label text: 8.7:1 on night */
  --you-strong: #2A6FC4;       /* fill behind white text: 5.0:1 */
  --market: #9BA0B5;           /* competitor dots on the scope: 7.0:1 on night */

  /* Site status */
  --ok: #6FDDAE;               /* 11:1 on night */
  --error: #FF8A8A;            /* 8.1:1 on night, 7.4:1 on dusk */
  --caution: #F2C35B;

  /* Paper tags (found facts, the pricing tag) */
  --tag: #EEF0FA;
  --tag-ink: #0B1130;          /* 16.1:1 on tag */

  /* Product sub-palette: ONLY inside .mr-card (copied from market_review/dashboard/styles.css) */
  --mr-surface: #1A1A19;  --mr-surface-2: #232321;  --mr-border: rgba(255, 255, 255, .10);
  --mr-ink: #FFFFFF;      --mr-ink-2: #C3C2B7;      --mr-muted: #95938C;
  --mr-grid: #2C2C2A;     --mr-range: #383835;      --mr-others: #77756F;
  --mr-you: #3987E5;      --mr-good: #0CA30C;       --mr-critical: #E66767;
  --mr-t-mint: #13291F;   --mr-i-mint: #5FD1A2;
  --mr-t-sun: #302612;    --mr-i-sun: #F2C35B;
  --mr-t-blue: #16263B;   --mr-i-blue: #86B6EF;
  --mr-t-peach: #36201A;  --mr-i-peach: #F3A07C;
  --mr-t-rose: #331C26;   --mr-i-rose: #F09BBD;
  --mr-t-violet: #221F38; --mr-i-violet: #B3AAF2;

  /* Glows: static gradients, painted once, never animated except opacity */
  --glow-top:
    radial-gradient(40% 32% at 50% 0%, rgba(255, 173, 66, .20), transparent 70%),
    radial-gradient(80% 64% at 50% 0%, rgba(112, 132, 255, .24), transparent 72%);
  --glow-you: radial-gradient(closest-side, rgba(57, 135, 229, .28), transparent);

  /* Radius by role */
  --r-plate: 28px;   /* faceplates: facts, what-if, pricing, note, final band inner */
  --r-row: 20px;     /* industry rows */
  --r-card: 16px;    /* product cards (the product's value) */
  --r-input: 12px;   /* inputs, radio tiles */
  --r-chip: 8px;     /* chips, provenance pills are pills (999) */
  --r-tag: 6px;      /* paper tags */
  --r-pill: 999px;   /* nav, buttons, floating CTA, pills */

  /* Shadows: only on things that float */
  --shadow-float: 0 30px 60px -24px rgba(4, 7, 26, .9), 0 0 0 1px rgba(255, 255, 255, .04);
  --shadow-float-sm: 0 16px 32px -16px rgba(4, 7, 26, .85);
  --lit-edge: inset 0 1px 0 rgba(255, 173, 66, .14);   /* floating cards under the top light */
  --hi-edge: inset 0 1px 0 rgba(255, 255, 255, .05);   /* static plates */

  /* Spacing */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px;
  --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px; --s-10: 144px;
  --section-y: clamp(64px, 7.5vw, 112px);
  --pad-x: clamp(16px, 4vw, 40px);
  --gutter: 24px;
  --max: 1240px;
  --max-text: 760px;

  /* Type families */
  --font-display: "Archivo", "Archivo Fallback", Arial, sans-serif;
  --font-body: "Atkinson Hyperlegible Next", "Atkinson Fallback", Verdana, system-ui, sans-serif;

  /* Type sizes (16px root) */
  --fs-display-xl: clamp(2.5rem, 1.1rem + 6vw, 6rem);        /* 40 → 96  home H1 */
  --fs-display-l:  clamp(2rem, 1.2rem + 3.4vw, 3.75rem);     /* 32 → 60  H2, inner-page H1 */
  --fs-h3:         clamp(1.3125rem, 1.1rem + .6vw, 1.5rem);  /* 21 → 24 */
  --fs-readout:    clamp(3rem, 2rem + 3vw, 4.5rem);          /* 48 → 72  facts numerals */
  --fs-price:      clamp(4rem, 2.5rem + 5vw, 6rem);          /* 64 → 96  $99 */
  --fs-lead:       clamp(1.125rem, .8rem + .9vw, 1.5rem);    /* 18 → 24 */
  --fs-body: clamp(1.0625rem, .9rem + .45vw, 1.25rem);       /* 17 → 20 */
  --fs-small: var(--fs-body);   /* notes and captions are body size */
  --fs-micro: var(--fs-body);
  --fs-label: .75rem;     /* 12: text inside product cards only */

  /* Layers */
  --z-float: 40; --z-nav: 50; --z-menu: 60; --z-skip: 100;

  /* Motion */
  --ease-expo: cubic-bezier(.16, 1, .3, 1);
  --ease-std: cubic-bezier(.2, 0, 0, 1);
  --ease-inout: cubic-bezier(.65, 0, .35, 1);
  --ease-ping: cubic-bezier(.2, .6, .3, 1);
  --t-micro: 160ms; --t-small: 240ms; --t-medium: 480ms; --t-arrive: 800ms;
  --t-sweep: 5000ms;                 /* one full turn of the always-on sweep */
  --sweep-start: 400ms;
  --per-deg: 13.889ms;               /* --t-sweep / 360 */
  --top-y: 40px;                     /* first section: with the pinned header, the page heading starts at 112px from 768px wide (72px under 768px) */
}
@media (max-width: 1023px) { :root { --top-y: 44px; } }
@media (max-width: 767px) { :root { --gutter: 16px; --top-y: 8px; } }

/* Fonts (self-hosted,swap,measured fallbacks) */
@font-face{font-family:"Archivo";src:url("/static/fonts/archivo-v2.woff2") format("woff2");font-weight:600 800;font-stretch:100% 125%;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+2010-2027,U+2030-203A,U+2212,U+20AC,U+2122,U+2191,U+2193}
@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/static/fonts/atkinson-next-v2.woff2") format("woff2");font-weight:400 700;font-display:swap;unicode-range:U+0020-007E,U+00A0-00FF,U+2010-2027,U+2030-203A,U+2212,U+20AC,U+2122,U+2191,U+2193}
@font-face{font-family:"Archivo Fallback";src:local("Arial Bold"),local("Arial-BoldMT"),local("Arial");font-weight:600 800;size-adjust:120.7%;ascent-override:72.9%;descent-override:17.4%;line-gap-override:0%}
@font-face{font-family:"Atkinson Fallback";src:local("Verdana"),local("Arial");size-adjust:85.5%;ascent-override:114.6%;descent-override:37.4%;line-gap-override:0%}
/* Reset (zero specificity) */
*,::before,::after{box-sizing:border-box}
:where(html){-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:88px}
:where(body){margin:0;overflow-x:clip;background:var(--night);color:var(--paper);font:400 var(--fs-body)/1.6 var(--font-body);-webkit-font-smoothing:antialiased}
:where(h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd,fieldset){margin:0}
:where(h1,h2,h3,h4){font-family:var(--font-display);font-weight:700;line-height:1.15}
:where(ul,ol){padding:0;list-style:none}
:where(p){max-width:42.8em}
main:focus{outline:none}
main,.site-foot{overflow-x:clip}
:where(img){display:block;max-width:100%;height:auto}
:where(a){color:inherit}
:where(button,input,select,textarea){font:inherit;color:inherit}
:where(button,summary){cursor:pointer}
:where(fieldset){border:0;padding:0;min-width:0}
:where(legend){padding:0}
:where(summary){list-style:none}
:where(summary)::-webkit-details-marker{display:none}
:where(b,strong){font-weight:700}
[hidden]{display:none !important}
html.js .whatif__btn[hidden]{display:inline-flex !important;visibility:hidden}
.hold main,.hold .site-foot{visibility:hidden}
:focus-visible{outline:2px solid var(--paper);outline-offset:3px}
::selection{background:var(--sodium);color:var(--night)}
/* Type */
.display-xl{font:760 var(--fs-display-xl)/.98 var(--font-display);font-stretch:125%;letter-spacing:-.035em;text-wrap:balance;overflow-wrap:break-word}
@media (max-width:479px){
  .display-xl{font-stretch:112%}
}
.h2{font:720 var(--fs-display-l)/1.02 var(--font-display);font-stretch:118%;letter-spacing:-.03em;text-wrap:balance}
.h3{font:650 var(--fs-h3)/1.15 var(--font-display);font-stretch:112%;letter-spacing:-.015em}
.lead{font-size:var(--fs-lead);line-height:1.5;max-width:36.3em;text-wrap:pretty}
.small{font-size:var(--fs-small);line-height:1.45}
.vh{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.i{width:1em;height:1em;flex:none;vertical-align:-.125em}
.i,.faq__icon,.mr-icon>svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
/* Layout */
.wrap{max-width:calc(var(--max) + 2 * var(--pad-x));margin-inline:auto}
.wrap,.site-head{padding-inline:max(var(--pad-x),env(safe-area-inset-left)) max(var(--pad-x),env(safe-area-inset-right))}
.wrap--narrow{max-width:calc(var(--max-text) + 2 * var(--pad-x))}
.section{padding-block:var(--section-y)}
.section[id]{scroll-margin-top:calc(16px - var(--section-y))}
.section__head{margin-bottom:var(--s-7);max-width:58rem}
.section__head>* + *{margin-top:var(--s-5)}
.stack>* + *{margin-top:var(--stack,var(--s-4))}
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 28px}
.cta-row .link{display:inline-flex;align-items:center;min-height:44px}
@media (max-width:479px){
  .cta-row .btn{width:100%}
}
.cards{display:grid;gap:16px;align-items:start}
@media (min-width:768px){
  .cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
}
/* Logo */
.logo{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 10px 4px 4px;margin-left:-4px;border-radius:var(--r-pill);color:var(--paper);text-decoration:none;flex:none}
.logo:focus-visible{outline:2px solid var(--paper);outline-offset:2px}
.logo__mark{flex:none;overflow:visible}
.logo__orbit{transform-box:view-box;transform-origin:16px 16px}
.logo__word{font:700 18px/1 var(--font-display);font-stretch:118%;letter-spacing:-.01em;white-space:nowrap}
/* Skip link,header,pill nav,menus */
.skip{position:fixed;left:12px;top:12px;z-index:var(--z-skip);padding:14px 20px;border-radius:var(--r-pill);background:var(--sodium);color:var(--night);font-weight:700;text-decoration:none}
.skip:not(:focus){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.site-head{position:sticky;top:12px;margin-top:12px;z-index:var(--z-nav);pointer-events:none}
.pill{pointer-events:auto;position:relative;isolation:isolate;display:flex;align-items:center;gap:8px;max-width:1000px;height:60px;margin-inline:auto;padding:0 8px 0 16px;border-radius:var(--r-pill);border:1px solid var(--line);box-shadow:var(--shadow-float-sm)}
.pill::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:rgba(19,26,62,.96)}
@media (min-width:768px){
  html:not(.lite) .pill::before{background:rgba(19,26,62,.84);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%)}
}
@media (prefers-reduced-transparency:reduce){
  html:not(.lite) .pill::before,html.lite .pill::before{background:rgba(19,26,62,.96);-webkit-backdrop-filter:none;backdrop-filter:none}
}
.pill__links,.pill .pill__cta{display:none}
.pill__links{align-items:center;gap:2px;margin-inline:auto}
.pill__link{position:relative;display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 14px;border-radius:var(--r-pill);font:600 15px/1 var(--font-body);text-decoration:none;white-space:nowrap}
@media (min-width:1024px) and (max-width:1151px){
  .site-head{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}
  .pill__link{padding-inline:10px}
}
.pill__link:hover{background:var(--dusk-2)}
.pill__link[aria-current="page"]::after,body[data-page="industry"] .drop__sum::after,body[data-page="industries"] .drop__sum::after{content:"";position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--sodium)}
.drop{position:relative}
.drop__sum .i--chev{width:16px;height:16px}
.drop[open] .i--chev,.as-text[open]>summary::before{rotate:180deg}
.drop__list{position:absolute;top:calc(100% + 10px);left:0;min-width:250px;padding:8px;border-radius:16px;background:var(--dusk);border:1px solid var(--line);box-shadow:var(--shadow-float)}
.drop__list a,.menu__sheet li a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;font:600 15px/1.2 var(--font-body);text-decoration:none}
.drop__list a:hover,.menu__sheet li a:hover,.drop__list a[aria-current="page"],.menu__sheet a[aria-current="page"]{background:var(--dusk-2)}
.menu{margin-left:auto}
.menu__btn{display:inline-flex;align-items:center;height:44px;padding:0 18px;border:1.5px solid var(--sodium);border-radius:var(--r-pill);background:var(--dusk-2);font:600 15px/1 var(--font-body)}
.menu__x{display:none;width:16px;height:16px;margin-left:8px}
.menu[open] .menu__x{display:inline-block}
.menu__sheet{position:fixed;top:76px;left:8px;right:8px;z-index:var(--z-menu);max-height:calc(100svh - 96px);overflow:auto;padding:16px;border-radius:20px;background:var(--dusk);border:1px solid var(--line);box-shadow:var(--shadow-float)}
.menu__sheet li a{min-height:48px;font-size:17px}
.menu__group{padding:4px 12px;font-size:14px;font-weight:700}
.menu__sheet ul + ul{margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}
.menu__sheet .btn{margin-top:16px}
@media (max-width:1023px){
  .pill{height:56px}
  body:has(.menu[open])::after{content:"";position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);background:rgba(8,12,37,.72)}
}
@media (max-width:767px){
  .site-head{top:8px;margin-top:8px}
}
/* Pinned header: fixed, so focus in it never scrolls the page. body padding = header top + pill height */
@media screen and (min-height:501px){
  html:not(.deck-page) .site-head{position:fixed;inset-inline:0;margin-top:0}
  html:not(.deck-page) body{padding-top:72px}
  @media (max-width:1023px){html:not(.deck-page) body{padding-top:68px}}
  @media (max-width:767px){html:not(.deck-page) body{padding-top:64px}}
}
@media (min-width:768px) and (max-width:1023px){
  .pill .pill__cta{display:inline-flex;margin-left:auto}
  .pill .menu{margin-left:0}
}
@media (max-width:339px){
  .logo{gap:8px}
  .logo__word{font-size:15px}
  .pill{gap:4px;padding:0 6px 0 10px}
  .menu__btn{padding:0 12px}
}
@media (min-width:1024px){
  .pill__links{display:flex}
  .pill .pill__cta{display:inline-flex}
  .menu{display:none}
}
.pill__note{display:none;font-size:14px}
/* Buttons and links */
.btn{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;min-height:52px;padding:0 24px;border:0;border-radius:var(--r-pill);font:700 17px/1.15 var(--font-body);text-align:center;text-decoration:none;text-wrap:balance}
.btn--primary{background:var(--sodium);color:var(--night)}
.btn--primary:hover{background:var(--sodium-hi)}
.btn--primary:active{background:var(--sodium-lo);transform:translateY(1px)}
.btn--primary::after{content:"";position:absolute;inset:-12px -18px;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(closest-side,rgba(255,173,66,.42),rgba(255,173,66,.12) 60%,transparent 100%);opacity:0}
.btn--primary:hover::after,.btn--primary:focus-visible::after{opacity:1}
.btn--ghost{min-height:44px;padding:0 18px;background:transparent;color:var(--paper);border:1.5px solid var(--sodium);border-radius:22px}
.btn--ghost:hover,.btn--ghost:active{background:var(--dusk-2)}
.btn--ghost:active{transform:translateY(1px)}
.btn--ghost[aria-pressed="true"]{background:var(--sodium-a12);border-width:2.5px}
.btn--sm{min-height:44px;padding:0 18px;font-size:15px}
.btn--block{display:flex;width:100%}
.btn .i{width:18px;height:18px}
.link{color:var(--paper);text-decoration:underline 1.5px var(--sodium);text-underline-offset:4px}
.link:hover{text-decoration-color:var(--sodium-hi);text-decoration-thickness:2.5px;text-underline-offset:6px;color:#fff}
/* Floating CTA */
.float-cta{position:fixed;z-index:var(--z-float);left:50%;bottom:max(24px,calc(env(safe-area-inset-bottom) + 12px));translate:-50% 0;opacity:0;transform:translateY(16px);visibility:hidden;pointer-events:none;transition:opacity 120ms,visibility 0s 120ms}
.float-cta.is-shown{opacity:1;transform:none;visibility:visible;pointer-events:auto;transition:opacity 120ms,visibility 0s}
.float-cta__btn{box-shadow:var(--shadow-float);white-space:nowrap}
@media (max-width:767px){
  html{scroll-padding-bottom:72px}
  .float-cta{left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom));translate:none;opacity:1;transform:none;visibility:visible;pointer-events:auto;transition:none}
  .float-cta__btn{display:flex;width:100%;min-height:48px;padding-block:8px;white-space:normal}
  body:has(.menu[open],:is(input:not([type=radio],[type=checkbox]),textarea,select):focus) :is(.float-cta,.deck-nav){opacity:0;visibility:hidden}
}
@media (min-width:768px){.float-cta__btn>.float-cta__short{display:none}}
@media (max-width:767px){.float-cta__btn>.float-cta__full{display:none}}
@media (min-width:1024px){
  .float-cta{display:none}
}
body:is([data-page="subscribe"],[data-page="subscribed"],[data-page="signed-up"]) .float-cta{display:none}
@media (min-width:768px){body[data-page="404"] .float-cta{display:none}}
/* Footer */
.site-foot{padding-block:64px 48px;background:var(--night-deep);border-top:1px solid var(--line)}
@media (max-width:767px){
  .site-foot{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
  body:is([data-page="subscribe"],[data-page="subscribed"],[data-page="signed-up"]) .site-foot{padding-bottom:calc(48px + env(safe-area-inset-bottom))}
}
.site-foot__grid{display:grid;gap:40px}
.site-foot__brand .small{margin-top:12px}
.site-foot .logo__mark{width:36px;height:36px}
.site-foot .logo__word{font-size:22px}
.site-foot__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17.5em),1fr));gap:32px var(--gutter)}
.site-foot__cols a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.site-foot__cols a:hover{text-decoration:underline 1.5px var(--sodium);text-underline-offset:4px}
.site-foot__cols li:not(:has(a)){padding-block:11px;line-height:1.4}
.site-foot__base{padding-top:24px;max-width:none}
/* Labels ("Real data" solid, "Example" dashed: a word over a 4.9em rule), chips */
.prov{display:block;width:max-content;max-width:100%;margin-bottom:12px;font:700 var(--fs-body)/1.2 var(--font-body);text-align:left;white-space:nowrap}
.prov::after{content:"";display:block;width:4.9em;margin-top:5px;border-top:3px solid var(--sodium)}
.prov--example::after{border-top-style:dashed}
.mr-chips{display:flex;flex-wrap:wrap;gap:8px}
.mr-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 11px;border-radius:var(--r-pill);background:var(--mr-surface-2);color:var(--mr-ink-2);font:600 13px/1 var(--font-body);white-space:nowrap}
.mr-chip .i{width:14px;height:14px}
/* The market view (.scope) */
.instrument{position:relative}
.scope{--scope:min(92vw,560px);--dk:1;margin:0}
@media (max-width:767px){
  .scope{--scope:min(92vw,400px);--dk:.8}
}
.scope__plate{position:relative;width:var(--scope);max-width:100%;aspect-ratio:1;margin-inline:auto;contain:layout}
.scope__plate>*{position:absolute}
.scope__bloom{inset:38%;border-radius:50%;background:var(--glow-you)}
.scope__ring{left:50%;top:50%;width:calc(var(--r) * 100%);aspect-ratio:1;translate:-50% -50%;border-radius:50%;border:1px solid var(--line-2)}
.scope__ring--outer{border-color:var(--line)}
.scope__ring-label{left:calc(50% + var(--r) * 35.4%);top:calc(50% - var(--r) * 35.4%);translate:6px -100%;font:600 15px/1 var(--font-display);font-stretch:112%;letter-spacing:.01em;white-space:nowrap}
/* the innermost label sits on the lower-right diagonal: the upper one is where the tags cluster */
.scope__ring-label:not(.scope__ring-label ~ .scope__ring-label){top:calc(50% + var(--r) * 35.4%);translate:6px 0}
@media (max-width:1023px){
  .scope__ring-label{display:none}
}
@media (min-width:768px) and (max-width:1199px){
  .display-xl{font-stretch:112%}
}
.ind-radar .scope__ring-label{display:none}
.scope__beam{left:6%;top:6%;width:44%;height:44%;border-top-left-radius:100%;transform-origin:100% 100%;background:conic-gradient(from 270deg at 100% 100%,transparent 0deg,rgba(255,173,66,.05) 24deg,rgba(255,173,66,.26) 86deg,rgba(255,214,160,.9) 89.3deg,transparent 90deg)}
.scope__dot{left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);width:calc(var(--d) * var(--dk) * 1px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:var(--market);box-shadow:0 0 0 2px var(--night)}
.scope__dot::after,.mr-strip__dot::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1.5px solid var(--sodium);opacity:0}
.scope__dot::before{content:"";position:absolute;inset:-8px;border-radius:50%;background:radial-gradient(closest-side,#FFE2B8 30%,rgba(255,173,66,.5) 55%,transparent);opacity:0}
.scope__you{left:50%;top:50%;width:18px;height:18px;translate:-50% -50%;border-radius:50%;background:var(--you);box-shadow:0 0 0 3px var(--night),0 0 0 4.5px rgba(134,182,239,.5)}
.scope__you::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--you);opacity:0}
.scope__you-label{position:absolute;left:calc(100% + 6px);top:100%;font:700 15px/1 var(--font-display);font-stretch:112%}
.scope__you--pending{background:transparent;border:2px dashed var(--you);box-shadow:0 0 0 3px var(--night)}
/* A tag never leaves its plate: past its max-width it wraps */
.scope__tag{left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);translate:12px -50%;display:inline-flex;align-items:center;gap:6px;width:max-content;max-width:calc(100% - var(--x) * 1% - 16px);min-height:26px;padding:4px 9px 4px 7px;border-radius:var(--r-tag);background:var(--tag);color:var(--tag-ink);font:700 16px/1.2 var(--font-body);box-shadow:0 6px 16px -8px rgba(4,7,26,.8)}
.scope__tag::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:var(--night);opacity:.55}
.scope__tag .i{width:11px;height:11px;margin-inline:-2px;color:var(--tag-ink);fill:currentColor;stroke:none}
.scope__tag--l{translate:calc(-100% - 12px) -50%;max-width:calc(var(--x) * 1% - 16px)}
.scope__tag--below{translate:-50% 14px;max-width:calc(min(var(--x),100 - var(--x)) * 2%)}
.scope__tag--l.scope__tag--below{translate:calc(-100% + 8px) 14px;max-width:calc(var(--x) * 1%)}
.scope__tag--example,.slide--hook .scope__tag{background:var(--night);color:var(--paper);border:1.5px solid rgba(238,240,250,.6);box-shadow:none}
:is(.scope__tag--example,.slide--hook .scope__tag)::before{background:var(--paper);opacity:.5}
.scope__tag--desk{display:none}
@media (max-width:767px){
  .scope__tag{font-size:14px}
}
@media (max-width:399px){
  .scope__tag{padding-inline:5px 7px;gap:4px}
  .scope__tag::before{display:none}
}
@media (max-width:299px){
  .display-xl{font-size:2.125rem}
  .scope__tag{font-size:11.5px;padding-inline:5px}
}
@media (min-width:1024px){
  .scope__tag--desk{display:inline-flex}
}
.scope__cap{margin:20px auto 0;max-width:38.9em;text-align:center}
.scope.scope--sm{--scope:200px}
.scope.scope--404{--scope:240px}
.instrument__foot{display:grid;justify-items:center;gap:16px;margin-top:20px;text-align:center}
.scope__legend{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 24px}
.scope__legend li{display:inline-flex;align-items:center;gap:8px}
.scope__legend li>span:not(.key){display:inline-flex;align-items:center;gap:3px;flex:none}
.key{display:inline-block;flex:none;border-radius:50%}
.key--you{width:10px;height:10px;background:var(--you)}
.key--market{width:6px;height:6px;background:var(--market)}
.key--market + .key--market{width:12px;height:12px}
.key--ring{width:12px;height:12px;border:1.5px solid rgba(160,176,240,.6)}
.as-text{width:100%;max-width:41.5em;text-align:left}
.as-text>summary{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:700}
.as-text>summary::before{content:"";width:8px;height:8px;margin-top:-4px;border:solid currentColor;border-width:0 2px 2px 0;rotate:45deg}
.as-text[open]>summary::before{margin-top:4px;rotate:225deg}
.as-text>summary:hover{text-decoration:underline 1.5px var(--sodium);text-underline-offset:4px}
.as-text ul{display:grid;gap:6px;padding:4px 0 8px 18px}
.as-text ul ul{padding-block:4px 0}
.as-text ul{text-align:left}
@media (max-width:767px){
  .instrument__foot{justify-items:start;text-align:left}
  .scope__legend{justify-content:flex-start}
  .scope__cap{text-align:left;margin-inline:0}
}
@media (min-width:768px) and (max-width:1023px){
  .instrument{display:grid;grid-template-columns:440px minmax(0,1fr);align-items:center;gap:24px;padding-top:24px}
  .instrument .scope{--scope:440px;grid-column:1;grid-row:1 / 3}
  .instrument__foot{grid-column:1 / -1}
}
@media (min-width:1024px){
  .instrument{min-height:600px;padding-top:0}
  .scope{--scope:460px}
}
@media (min-width:1280px){
  .instrument{min-height:660px}
  .scope{--scope:560px}
}
/* Product cards (.mr-*) */
.mr-card{position:relative;padding:16px;border-radius:var(--r-card);background:var(--mr-surface);border:1px solid var(--mr-border);box-shadow:var(--hi-edge);color:var(--mr-ink);text-align:left;font-size:15px;line-height:1.45}
@media (min-width:1024px){
  .mr-card{padding:18px}
}
.mr-card p{max-width:none}
.mr-card .small{font-size:.875rem}
.mr-card--float{box-shadow:var(--lit-edge),var(--shadow-float)}
.mr-card__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 12px;margin-bottom:10px}
.mr-card__head>:first-child{flex:1 1 10em}
.mr-card__title{font:700 15px/1.3 var(--font-body);color:var(--mr-ink)}
.mr-card__foot{margin-top:10px;color:var(--mr-ink-2)}
.mr-read{margin-top:6px;color:var(--mr-ink-2)}
.mr-read b{color:var(--mr-ink)}
.mr-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;flex:none}
.mr-icon>svg{width:18px;height:18px}
.mr-icon--mint{background:var(--mr-t-mint);color:var(--mr-i-mint)}
.mr-icon--sun{background:var(--mr-t-sun);color:var(--mr-i-sun)}
.mr-icon--blue{background:var(--mr-t-blue);color:var(--mr-i-blue)}
.mr-icon--peach{background:var(--mr-t-peach);color:var(--mr-i-peach)}
.mr-icon--rose{background:var(--mr-t-rose);color:var(--mr-i-rose)}
.mr-icon--violet{background:var(--mr-t-violet);color:var(--mr-i-violet)}
.mr-pill{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--r-pill);background:var(--mr-surface-2);color:var(--mr-ink-2);font-size:13px;line-height:1;white-space:nowrap}
.mr-strip{position:relative;height:48px}
.mr-strip>*{position:absolute}
.mr-strip__bar{left:calc(var(--x1) * 1%);width:calc((var(--x2) - var(--x1)) * 1%);top:15px;height:6px;border-radius:3px;background:var(--mr-range)}
.mr-strip__median{z-index:1;left:calc(var(--x) * 1%);top:9px;width:2px;height:18px;translate:-50% 0;background:var(--mr-ink-2)}
.mr-strip__dot{left:calc(var(--x) * 1%);top:18px;width:10px;height:10px;translate:-50% -50%;border-radius:50%;background:var(--mr-others);box-shadow:0 0 0 2px var(--mr-surface)}
.mr-strip__dot--2{width:17px;height:17px}
.mr-strip__dot--3{width:20px;height:20px}
.mr-strip__you-track{inset:0;z-index:2}
.mr-strip__you{position:absolute;left:calc(var(--x) * 1%);top:18px;width:20px;height:20px;translate:-50% -50%;border-radius:50%;background:transparent;box-shadow:0 0 0 3px var(--mr-you),0 0 0 5px var(--mr-surface)}
.mr-strip__end{left:calc(var(--x) * 1%);top:34px;translate:-50% 0;font:400 12px/1 var(--font-body);color:var(--mr-muted);white-space:nowrap}
.mr-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:4px;color:var(--mr-ink-2)}
.mr-legend>span{display:inline-flex;align-items:center;gap:6px}
.mr-key{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--mr-others)}
.mr-key--you{width:12px;height:12px;background:transparent;box-shadow:inset 0 0 0 3px var(--mr-you)}
.mr-key--median{width:2px;height:14px;border-radius:0;background:var(--mr-ink-2)}
.mr-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr) 88px;gap:16px;align-items:center;padding-block:12px;border-top:1px solid var(--mr-grid)}
.mr-row__svc{font-weight:600;line-height:1.3}
.mr-row__svc small,.mr-row__vs small{display:block;margin-top:3px;color:var(--mr-muted);font-size:12.5px;font-weight:400}
.mr-row__vs{text-align:right}
.mr-row__vs b{font:700 17px/1.1 var(--font-display);font-variant-numeric:tabular-nums}
@media (max-width:599px){
  .mr-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"s v" "t t";row-gap:4px}
  .mr-row__svc{grid-area:s}
  .mr-row__vs{grid-area:v}
  .mr-row>.mr-strip{grid-area:t}
}
.mr-tile__top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.mr-tile__label{color:var(--mr-ink-2);font-size:13px;line-height:1.3}
.mr-tile__value{display:flex;align-items:baseline;gap:8px;margin-top:10px;font:750 32px/1 var(--font-display);font-stretch:112%;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.mr-tile__value small{color:var(--mr-ink-2);font:400 15px/1 var(--font-body);letter-spacing:0}
.mr-tile__delta{margin-top:6px;color:var(--mr-ink-2)}
.mr-suggest__move{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:700 24px/1.1 var(--font-display);font-stretch:112%;font-variant-numeric:tabular-nums}
.mr-suggest__move .i{width:20px;height:20px;color:var(--mr-ink-2)}
.mr-verb{padding:3px 8px;border-radius:6px;font:700 13px/1.2 var(--font-body);letter-spacing:0}
.mr-verb--raise{background:var(--mr-t-mint);color:var(--mr-i-mint)}
.mr-verb--hold{background:var(--mr-t-blue);color:var(--mr-i-blue)}
.mr-verb--lower{background:var(--mr-t-peach);color:var(--mr-i-peach)}
.mr-suggest__why{margin-top:10px;color:var(--mr-ink-2)}
.mr-status{display:flex;align-items:center;gap:8px;color:var(--mr-ink-2);font-size:13px;font-weight:600}
.mr-status .i{width:22px;height:22px;padding:4px;border-radius:50%;stroke-width:2.5}
.mr-status--praise .i{background:var(--mr-t-mint);color:var(--mr-i-mint)}
.mr-status--complaint .i{background:var(--mr-t-rose);color:var(--mr-critical)}
.mr-status--mixed .i{background:var(--mr-t-sun);color:var(--mr-i-sun)}
.mr-theme__name{margin-top:8px;font-size:17px;font-weight:700;line-height:1.3}
.mr-theme__move{margin-top:12px;padding:10px 12px;border-radius:10px;background:var(--mr-surface-2);color:var(--mr-ink-2)}
.mr-theme__move b{color:var(--mr-ink)}
.mr-change,.mr-events li{display:grid;gap:12px;padding-block:10px;border-top:1px solid var(--mr-grid)}
.mr-change{grid-template-columns:34px minmax(0,1fr);align-items:start}
.mr-change:first-child,.mr-events li:first-child{border-top:0}
.mr-change__who{font-weight:700;line-height:1.3}
.mr-change__what{margin-top:2px;color:var(--mr-ink-2)}
.mr-events li{grid-template-columns:5.75rem minmax(0,1fr);color:var(--mr-ink-2)}
.mr-events__when{color:var(--mr-ink);font:700 15px/1.45 var(--font-display);font-stretch:112%}
.mr-actions label{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding-block:10px;border-top:1px solid var(--mr-grid);cursor:pointer}
.mr-actions li:first-child label{border-top:0}
.mr-actions input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:var(--mr-you)}
.mr-actions input:checked + span{color:var(--mr-muted);text-decoration:line-through}
.mr-progress{display:flex;align-items:center;gap:10px}
.mr-progress__track{display:block;flex:none;width:64px;height:6px;overflow:hidden;border-radius:3px;background:var(--mr-range)}
.mr-progress__fill{display:block;height:100%;background:var(--mr-good);transform:scaleX(var(--p,0));transform-origin:left}
.mr-progress__count{color:var(--mr-ink-2);font-size:13px}
.mr-demand__value{display:flex;align-items:center;gap:6px;margin-top:10px;color:var(--mr-good);font:750 24px/1 var(--font-display);font-stretch:112%}
.mr-demand__value .i{stroke-width:2.5}
.mr-spark-wrap{position:relative;margin-top:var(--fs-label)}
.mr-spark{display:block;width:100%;height:auto;overflow:visible}
.mr-spark__line{fill:none;stroke:var(--mr-you);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.mr-spark__area{fill:var(--mr-you);fill-opacity:.1}
.mr-spark__now{fill:var(--mr-you);stroke:var(--mr-surface);stroke-width:2}
.mr-spark__label{position:absolute;left:71.58%;top:calc(var(--y,19.5) / 64 * 100%);translate:-50% calc(-100% - 10.8px);font:700 var(--fs-label)/1 var(--font-body);color:var(--mr-ink)}
.mr-months{display:grid;grid-template-columns:repeat(12,1fr);margin:4px -1.82% 0;color:var(--mr-muted);font-size:var(--fs-label);text-align:center}
.mr-months b{color:var(--mr-ink)}
.mr-cover{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:20px;border-radius:24px}
.mr-cover__week{color:var(--mr-ink-2);font-size:16px;font-weight:600;line-height:1.3}
.mr-cover__name{margin-top:6px;font:750 28px/1.05 var(--font-display);font-stretch:125%;letter-spacing:-.02em;overflow-wrap:anywhere}
.mr-cover__line{margin-top:10px;color:var(--mr-ink-2);font-size:17px;line-height:1.45}
.mr-cover>.mr-chips{grid-column:1 / -1}
.mr-cover__logo{width:72px;height:72px;border-radius:16px}
.mr-cover__logo--empty{display:grid;place-items:center;padding:6px;border:1.5px dashed rgba(255,255,255,.3);color:var(--mr-muted);font-size:13px;line-height:1.2;text-align:center}
@media (max-width:479px){
  .mr-cover__logo{width:56px;height:56px;font-size:12px}
  .mr-cover__name{font-size:24px}
}
/* What-if: one state (.wi-on) on its holder; the button and the picture sit on two panels */
.note,.plate{background:var(--dusk);border:1px solid var(--line);box-shadow:var(--hi-edge);border-radius:var(--r-plate)}
.whatif__pic{display:grid;gap:16px}
.wi-on [data-whatif-pic] .mr-strip__you-track{transform:translateX(30.67%)}
.gauge svg{display:block;width:100%;max-width:220px;height:auto;margin-inline:auto;overflow:visible}
.gauge__needle{transform-box:view-box;transform-origin:110px 110px;transform:rotate(-16.65deg)}
.wi-on .gauge__needle{transform:rotate(5.4deg)}
.gauge__labels{display:flex;justify-content:space-between;gap:8px;max-width:250px;margin:8px auto 0;font-size:16px;line-height:1.2;white-space:normal}
.gauge__labels>span{flex:1 1 auto;text-align:center}
.gauge__labels>span:first-child{text-align:left}
.gauge__labels>span:last-child{text-align:right}
@media (max-width:299px){
  .gauge__labels{font-size:11px;gap:4px;width:100%}
  .gauge{max-width:100%}
}
.whatif__read{display:grid}
.whatif__state{grid-area:1 / 1;font-weight:700}
.whatif__state--on,.wi-on .whatif__state--off{opacity:0;visibility:hidden}
.wi-on .whatif__state--on{opacity:1;visibility:visible}
@media (min-width:768px){
  .gauge__labels{font-size:18px}
}
@media (min-width:1024px){
  .whatif__pic{grid-template-columns:minmax(0,640px) 240px;align-items:center;column-gap:48px}
  .whatif__cap{grid-column:1 / -1}
  .whatif__read{font-size:var(--fs-lead)}
}
/* Route (how it works) */
.route{display:grid;gap:32px}
.route__stop{position:relative;padding-left:56px}
.route__stop>* + *{margin-top:8px}
.route__num{position:absolute;left:0;top:-4px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--night);box-shadow:inset 0 0 0 2px var(--line-2);font:700 16px/1 var(--font-display)}
.route__stop::before{content:"";position:absolute;left:16.5px;top:40px;bottom:-28px;width:3px;background:var(--line-2)}
.route__stop:last-child::before{display:none}
.route__stop--dashed::before{background:repeating-linear-gradient(180deg,var(--line-2) 0 8px,transparent 8px 14px)}
.route__stop--done .route__num{background:var(--sodium);color:var(--night);box-shadow:none}
.route__stop--pending .route__num{box-shadow:none;background:transparent;outline:2px dashed var(--line-2);outline-offset:-2px}
@media (min-width:1024px){
  .route{grid-template-columns:repeat(var(--stops,4),minmax(0,1fr));gap:24px}
  .route__stop{padding:56px 0 0}
  .route__num{top:0}
  .route__stop::before{left:46px;right:-14px;top:16.5px;bottom:auto;width:auto;height:3px}
  .route__stop--dashed::before{background:repeating-linear-gradient(90deg,var(--line-2) 0 8px,transparent 8px 14px)}
}
.offer-steps{display:grid;gap:20px}
.offer-steps li{position:relative;padding-left:36px}
.offer-steps li::before{content:"";position:absolute;left:0;top:.2em;width:20px;height:20px;border-radius:50%;background:var(--night);box-shadow:inset 0 0 0 2px var(--line-2)}
.offer-steps li:first-child::before{background:var(--sodium);box-shadow:none}
.offer-steps li::after{content:"";position:absolute;left:8.5px;top:calc(.2em + 24px);bottom:-20px;width:3px;background:var(--line-2)}
.offer-steps li:last-child::after{display:none}
.offer-steps b{display:block;font-size:var(--fs-lead);line-height:1.2}
.offer-steps span{display:block;line-height:1.3}
.offer-steps+.plan__line{font-size:clamp(1.0625rem,.9rem + .6vw,1.375rem);line-height:1.45}
@media (max-width:767px){
  .offer-steps b{font-size:20px}
}
/* Industry channel rows */
.rows{display:grid;gap:8px}
.industry-row{position:relative;display:grid;gap:10px;padding:24px;border-radius:var(--r-row);background:var(--dusk);border:1px solid var(--line)}
.industry-row:hover,.industry-row:focus-within{border-color:var(--line-2);background:radial-gradient(120% 160% at 0% 0%,rgba(255,173,66,.07),transparent 55%),var(--dusk-2)}
.industry-row__link{color:inherit;text-decoration:none}
.industry-row__link::after,.industry-row__sample--row::after{content:"";position:absolute;inset:0;border-radius:inherit}
.industry-row__link:focus-visible{outline:none}
.industry-row:has(.industry-row__link:focus-visible){outline:2px solid var(--paper);outline-offset:3px}
@supports not selector(:has(*)){
  .industry-row:focus-within{outline:2px solid var(--paper);outline-offset:3px}
}
.industry-row:hover .industry-row__link,.industry-row:focus-within .industry-row__link{text-decoration:underline 2px var(--sodium);text-underline-offset:5px}
.industry-row .prov{margin-bottom:2px}
.industry-row__sample{position:relative;z-index:1;justify-self:start;display:inline-flex;align-items:center;min-height:44px}
.industry-row__sample--row{position:static}
.industry-row:has(.industry-row__sample:is(:hover,:focus-visible)) .industry-row__link{text-decoration:none}
.rows__more{margin-top:24px}
.mini-strip{pointer-events:none}
.mini-strip .mr-strip{height:36px}
.mini-strip .mr-strip__bar{background:var(--line-2)}
.mini-strip .mr-strip__median{background:var(--haze)}
.mini-strip .mr-strip__dot{background:var(--market);box-shadow:0 0 0 2px var(--dusk)}
.mini-strip .mr-strip__you{background:transparent;box-shadow:0 0 0 3px var(--you),0 0 0 5px var(--dusk)}
@media (min-width:1024px){
  .industry-row{grid-template-columns:3fr 4fr 3fr;grid-template-areas:"pill pill pill" "name what strip" "name what read";align-items:center;gap:0 24px}
  .industry-row__name{grid-area:name}
  .industry-row__what{grid-area:what}
  .mini-strip{grid-area:strip}
  .industry-row__read{grid-area:read}
  .industry-row .prov{grid-area:pill;margin-bottom:12px}
  .industry-row .prov~*{align-self:start}
  .industry-row--sample{grid-template-areas:"pill pill pill" "name what strip" "sample what read"}
  .industry-row__sample{grid-area:sample}
  .industry-row--req .industry-row__sample{grid-area:2/3/4;align-self:center}
}
@media (min-width:768px){.rows--plain .industry-row{grid-template:"name what"/auto 1fr;align-items:baseline;gap:0 16px}}
@media (min-width:1280px){.rows--plain .industry-row{grid-template-columns:3fr 7fr;align-items:center;gap:0 24px}}
/* Pricing:the price tag */
.price-tag{position:relative;isolation:isolate;max-width:560px;padding:32px 40px 32px 64px;color:var(--tag-ink)}
.price-tag::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:0 6px 6px 0;background:var(--tag);clip-path:polygon(28px 0,100% 0,100% 100%,28px 100%,0 50%)}
.price-tag__hole{position:absolute;left:20px;top:50%;width:12px;height:12px;margin-top:-6px;border-radius:50%;background:var(--night)}
.price-tag__name{font-weight:700}
.price-tag__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-top:8px;font-size:20px;font-weight:700}
.price-tag__price .num{font:800 var(--fs-price)/.9 var(--font-display);font-stretch:125%;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.price-tag__terms{margin-top:12px}
.sticker{position:absolute;right:-40px;top:-36px;display:grid;place-content:center;width:132px;height:132px;border-radius:50%;background:var(--sodium);color:var(--night);rotate:-8deg;font:700 15px/1.15 var(--font-body);text-align:center;box-shadow:0 0 60px 8px rgba(255,173,66,.22)}
.sticker__big{display:block;font:800 40px/1 var(--font-display);font-stretch:125%;letter-spacing:-.02em}
@media (max-width:767px){
  .price-tag{padding:72px 24px 28px 56px}
  .sticker{right:6px;top:-44px;width:104px;height:104px;font-size:14px}
  .sticker__big{font-size:30px}
  .price-tag:has(.sticker){margin-top:48px}
}
.included ul{display:grid;gap:12px;margin-top:20px}
.included li,.ilist li{display:flex;align-items:flex-start;gap:12px}
.included .i{margin-top:.3em;color:var(--ok)}
@media (min-width:768px){
  .included ul{grid-template:repeat(4,auto)/1fr 1fr;grid-auto-flow:column;column-gap:24px}
}
.plan__more{display:grid;gap:12px;justify-items:start;max-width:34em}
.ilist{display:grid;gap:14px;line-height:1.45}
.ilist .i{width:20px;height:20px;margin-top:.15em}
/* FAQ */
.faq{display:grid;gap:8px}
.faq__item{border-radius:18px;background:var(--dusk)}
.faq__q{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:18px 20px;border-radius:18px;font:700 var(--fs-body)/1.35 var(--font-body)}
.faq__q:hover{background:var(--dusk-2)}
.faq__item[open] .faq__q:hover{background:none}
.faq__icon{flex:none;width:20px;height:20px;color:var(--sodium)}
.faq__item[open] .faq__icon{rotate:45deg}
.faq__a{padding:0 20px 20px}
.faq__a p{max-width:41.5em}
.faq__a p + p{margin-top:12px}
/* Final band */
.final{--final-y:clamp(96px,10vw,144px);position:relative;isolation:isolate;overflow:hidden;padding-block:var(--final-y);background:linear-gradient(180deg,var(--night) 0,var(--night-deep) 220px);text-align:center}
.final::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(26% 22% at 50% 66%,rgba(255,173,66,.24),rgba(255,173,66,.06) 50%,transparent 72%),radial-gradient(60% 50% at 50% 60%,rgba(112,132,255,.14),transparent 75%);pointer-events:none}
.final__rings{position:absolute;z-index:-1;left:50%;top:calc(var(--final-y) + 9px);width:min(110vw,640px);aspect-ratio:1;translate:-50% -50%;pointer-events:none;-webkit-mask-image:radial-gradient(closest-side,#000 62%,transparent 100%),linear-gradient(180deg,transparent calc(50% - var(--final-y) - 9px),#000 calc(50% - var(--final-y) + 111px));mask-image:radial-gradient(closest-side,#000 62%,transparent 100%),linear-gradient(180deg,transparent calc(50% - var(--final-y) - 9px),#000 calc(50% - var(--final-y) + 111px));-webkit-mask-composite:source-in;mask-composite:intersect}
.final__rings>*{position:absolute}
.final__rings .scope__beam{opacity:.2}
.final__pin{left:50%;top:50%;width:18px;height:18px;margin:-9px;border-radius:50%;border:2px dashed var(--you)}
.final__pin--lit{border:0;background:var(--you);box-shadow:0 0 0 3px var(--night-deep),0 0 0 4.5px rgba(134,182,239,.5);opacity:0}
.final__pin-label{position:absolute;left:calc(100% + 12px);top:50%;translate:0 -50%;white-space:nowrap;font:700 15px/1 var(--font-display);font-stretch:112%}
.final:has(.btn:hover,.btn:focus-visible) .final__pin:not(.final__pin--lit){opacity:0}
.final:has(.btn:hover,.btn:focus-visible) .final__pin--lit{opacity:1}
.final__text{position:relative;display:grid;justify-items:center;gap:24px;padding-top:56px}
.final__text .small{margin-top:-8px}
.hero .lead,.final .lead{margin-inline:auto}
/* Hero */
.hero{position:relative;isolation:isolate;padding-block:var(--top-y) var(--s-8);text-align:center}
.hero__glow{position:absolute;z-index:-1;left:0;right:0;top:-120px;height:min(1000px,130vh);background:var(--glow-top);pointer-events:none}
.hero>.wrap>.lead{margin-top:var(--s-5)}
.hero .cta-row{justify-content:center;margin-top:var(--s-6)}
.hero__micro{margin:var(--s-4) auto 0;text-wrap:balance}
:is(.hero,.slide--hook) .scope{position:relative}
:is(.hero,.slide--hook) .scope::before{content:"";position:absolute;z-index:-1;left:50%;top:calc(var(--scope) / 2);width:calc(var(--scope) * 2);aspect-ratio:1;translate:-50% -50%;pointer-events:none;background:radial-gradient(closest-side,rgba(255,173,66,.14),transparent 22%),radial-gradient(closest-side,rgba(112,132,255,.26),rgba(112,132,255,.08) 55%,transparent)}
@media (min-width:1024px) and (max-height:920px){
  .hero>.wrap>.lead{max-width:44em;margin-top:16px}
  .hero .cta-row{margin-top:24px}
  .hero__micro{margin-top:8px}
}
/* Notes,sources,prose */
.note{padding:32px}
.note--sm{border-radius:16px;padding:20px 24px}
.note>* + *{margin-top:16px}
.note>.h3 + p{margin-top:12px}
@media (max-width:767px){
  .note{padding:24px}
}
.source{display:grid;grid-template-columns:20px 1fr;gap:4px 12px;padding-block:8px;font-size:var(--fs-small);line-height:1.45}
.source+.source{border-top:1px solid var(--line)}
.source>.i{width:20px;height:20px}
.source p{grid-column:2}
@media (min-width:768px){
  .sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .source{display:flex;flex-direction:column;gap:12px;padding:20px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--dusk);box-shadow:var(--lit-edge);font-size:inherit}
  .source>.i{width:24px;height:24px}
}
.prose{font-size:var(--fs-body);line-height:1.6}
.prose>* + *{margin-top:24px}
.prose h2,.prose h3{margin-top:48px;font:650 var(--fs-h3)/1.2 var(--font-display);font-stretch:112%;letter-spacing:-.015em}
.prose :is(h2,h3) + *{margin-top:12px}
.prose ul{display:grid;gap:8px;padding-left:1.25em;list-style:disc}
.prose a{color:var(--paper);text-decoration:underline 1.5px var(--sodium);text-underline-offset:4px}
/* Forms */
.field{display:grid;gap:8px}
.field__label{font:700 var(--fs-body)/1.3 var(--font-body)}
.field__opt{font-weight:400}
.field__hint{margin-top:-4px}
.field__input{width:100%;height:52px;padding:0 14px;border-radius:var(--r-input);background:var(--dusk);border:1px solid var(--edge);color:var(--paper);font-size:16px}
textarea.field__input{height:auto;min-height:128px;padding-block:12px;resize:vertical;line-height:1.5}
.field__input::placeholder{color:var(--paper);opacity:.6}
.field__input:focus{outline:2px solid var(--paper);outline-offset:2px}
.field__input[aria-invalid="true"]{border:2px solid var(--error);padding-inline:13px}
.field__error{display:flex;align-items:flex-start;gap:8px;color:var(--error);font-weight:700;line-height:1.4}
.field__error .i{margin-top:.15em}
.field--choice .field__label{margin-bottom:8px}
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{position:relative;display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 40px 8px 10px;border-radius:var(--r-input);background:var(--dusk);border:1px solid var(--edge);font-weight:600;line-height:1.25;cursor:pointer}
.tile:last-child{grid-column:1 / -1}
.tile input{position:absolute;width:1px;height:1px;margin:0;opacity:0}
.tile::after{content:"";position:absolute;right:14px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:2px solid var(--edge)}
.tile:hover{border-color:var(--paper)}
.tile:has(:checked){background:var(--dusk-2);border:2px solid var(--sodium);padding:7px 39px 7px 9px}
.tile:has(:checked)::after{right:13px;border:5px solid var(--sodium);background:var(--night)}
.tile:has(:focus-visible){outline:2px solid var(--paper);outline-offset:3px}
@media (max-width:479px){
  .tile .mr-icon{width:30px;height:30px}
}
[data-submit][aria-busy=true]>:not(:last-child){display:none}
.err-summary,.form-msg{padding:20px 24px;border-radius:12px;background:var(--dusk);border-left:2px solid var(--error)}
.err-summary:focus{outline:2px solid var(--paper);outline-offset:3px}
.err-summary__title{font:700 18px/1.3 var(--font-body)}
.err-summary ul{display:grid;gap:4px;margin-top:8px}
.err-summary a{display:inline-flex;min-height:32px;align-items:center;color:var(--error);text-decoration:underline;text-underline-offset:3px;font-weight:700}
.form-msg{display:none;max-width:none;font-weight:700}
.form-msg:target,.form-msg.is-shown{display:block}
.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
/* Draft and owner markers */
.draft{padding:20px;border-radius:16px;outline:1.5px dashed var(--sodium);outline-offset:-1.5px}
.draft__tag{display:block;margin-bottom:8px;color:var(--sodium);font:700 13px/1.2 var(--font-body);letter-spacing:.02em}
.owner{color:var(--sodium);text-decoration:underline dotted 1.5px;text-underline-offset:3px}
/* Motion (base styles are the finished state) */
[data-live="off"] *,[data-live="off"] *::before,[data-live="off"] *::after{animation-play-state:paused !important}
[data-live="off"] .scope__ring{animation-play-state:running !important}
.menu[open] .menu__sheet,.drop[open] .drop__list{animation:fade-in 120ms var(--ease-std)}
@media (prefers-reduced-motion:no-preference){
  html:not(.rm) .hero--intro .hero__glow{animation:lamp-on 900ms var(--ease-std) 200ms backwards}
  html:not(.rm) body[data-page="home"] .logo__orbit{animation:logo-orbit 900ms var(--ease-expo) 200ms backwards}
  html:not(.rm) [data-run] .scope__ring{animation:ring-on 700ms var(--ease-expo) backwards;animation-delay:calc(300ms + var(--i) * 80ms)}
  html:not(.rm) [data-run] .scope__you::before{animation:you-ping 900ms var(--ease-ping) 500ms}
  html:not(.rm) [data-run] .scope__beam{animation:spin var(--t-sweep) linear var(--sweep-start) infinite,beam-in 600ms var(--ease-std) var(--sweep-start) backwards;will-change:transform}
  html:not(.rm) [data-run] .scope__dot{animation:dot-lit 280ms var(--ease-std) backwards,dot-pop var(--t-sweep) linear infinite;animation-delay:calc(var(--sweep-start) + var(--a) * var(--per-deg))}
  html:not(.rm) [data-run] .scope__dot::before{animation:dot-glow var(--t-sweep) linear infinite;animation-delay:calc(var(--sweep-start) + var(--a) * var(--per-deg))}
  html:not(.rm) [data-run] .scope__dot::after,html:not(.rm) [data-run] .mr-strip__dot[style*="--a"]::after{animation:ping-loop var(--t-sweep) linear infinite;animation-delay:calc(var(--sweep-start) + var(--a) * var(--per-deg))}
  html:not(.rm) [data-run] .scope__tag{animation:tag-in 360ms var(--ease-expo) backwards;animation-delay:calc(var(--sweep-start) + var(--a) * var(--per-deg) + 80ms)}
  html:not(.rm) body:is([data-page="subscribed"],[data-page="signed-up"]) .scope__beam{animation:sweep var(--t-sweep) linear var(--sweep-start) backwards}
  html:not(.rm) .btn--primary{transition:transform 180ms var(--ease-std)}
  html:not(.rm) .btn--primary:hover{transform:translateY(-1px)}
  html:not(.rm) .btn--primary:active{transform:translateY(1px)}
  html:not(.rm) .btn--primary::after{transition:opacity 180ms var(--ease-std)}
  html:not(.rm) [data-whatif-pic] :is(.mr-strip__you-track,.gauge__needle){transition:transform 700ms var(--ease-inout)}
  html:not(.rm) .whatif__state{transition:opacity 200ms var(--ease-std),visibility 200ms}
  html:not(.rm) .mr-progress__fill{transition:transform 320ms var(--ease-std)}
  html:not(.rm) .final__pin{transition:opacity 260ms var(--ease-std)}
  html:not(.rm) .float-cta{transition:opacity 160ms var(--ease-std),transform 160ms var(--ease-std),visibility 0s 160ms}
  html:not(.rm) .float-cta.is-shown{transition:opacity 240ms var(--ease-std),transform 240ms var(--ease-std),visibility 0s}
  html:not(.rm) .menu[open] .menu__sheet{animation:sheet-in 180ms var(--ease-std)}
  html:not(.rm) body:has(.menu[open])::after{animation:fade-in 180ms var(--ease-std)}
  html:not(.rm) .drop[open] .drop__list{animation:drop-in 160ms var(--ease-std)}
  html:not(.rm) .faq__item[open] .faq__a{animation:fade-in 200ms var(--ease-std)}
  html:not(.rm) .faq__icon,html:not(.rm) .i--chev{transition:rotate 200ms var(--ease-std)}
  html:not(.rm) .industry-row:is(:hover,:focus-within) .mr-strip__you-track{animation:you-slide 480ms var(--ease-expo)}
}
@media (prefers-reduced-motion:no-preference) and (max-width:767px){
  html:not(.rm) .float-cta.float-cta{transition:opacity 160ms var(--ease-std),visibility 160ms}
}
@keyframes lamp-on{
  from{opacity:0}
}
@keyframes logo-orbit{
  from{transform:rotate(-300deg)}
}
@keyframes ring-on{
  from{opacity:0;transform:scale(.92)}
}
@keyframes you-ping{
  0%{opacity:.7;transform:scale(1)}
  100%{opacity:0;transform:scale(4)}
}
@keyframes spin{
  to{transform:rotate(360deg)}
}
@keyframes beam-in{
  from{opacity:0}
}
@keyframes dot-pop{
  0%,16%,to{transform:none}
  3%{transform:scale(1.4)}
}
@keyframes dot-glow{
  0%,16%,to{opacity:0}
  2%{opacity:1}
}
@keyframes ping-loop{
  0%{opacity:.7;transform:scale(1)}
  16%,to{opacity:0;transform:scale(3)}
}
@keyframes sweep{
  from{transform:rotate(-360deg);opacity:0}
  5%{opacity:1}
}
@keyframes dot-lit{
  from{opacity:.35}
}
@keyframes ping{
  0%{opacity:.65;transform:scale(1)}
  100%{opacity:0;transform:scale(3)}
}
@keyframes tag-in{
  from{opacity:0;transform:translateY(6px)}
}
@keyframes you-slide{
  from{transform:translateX(var(--from))}
}
@keyframes sheet-in{
  from{opacity:0;transform:translateY(-8px)}
}
@keyframes drop-in{
  from{opacity:0;transform:translateY(-4px)}
}
@keyframes fade-in{
  from{opacity:0}
}
/* Business type pages and their index: the cards and rows that sit in a deck panel (the deck rules are at the end) */
.ind-demo{min-height:52px;padding-inline:24px;border-radius:26px}
.ind-steady{color:var(--mr-ink)}
.ind-cards{display:grid;grid-template-columns:repeat(2,minmax(0,300px));gap:16px}
.ind-radar .scope{--scope:min(92vw,440px)}
/* a tag hung below-left can carry --w, the room it has up to the tag on its left, and wraps inside it */
.ind-radar .scope__tag--l.scope__tag--below{max-width:calc(var(--w,var(--x)) * 1%)}
.panel .scope__legend{justify-content:flex-start}
.panel__in>.mr-card:not(.mr-rows){max-width:640px}
.panel__in>.mr-card.mr-demand{max-width:480px}
.panel__in>.mr-card~*{margin-top:16px}
.panel__in>.lead{max-width:30em}
.mr-rows>.mr-row:first-child{padding-top:0;border-top:0}
.mr-cover__line:only-child{margin:0}
.slide--top .faq{max-width:var(--max-text)}
.slide--top .faq+.small{margin-top:16px}
[data-scroll]:focus-visible{outline-offset:-2px}
@media (min-width:640px){
  .panel__in>.mr-tile{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"value top" "value delta";align-items:center;column-gap:24px;row-gap:4px;min-height:110px;padding:20px 24px}
  .panel__in>.mr-tile>.mr-tile__value{grid-area:value;margin:0;padding-right:24px;border-right:1px solid var(--mr-border);font-size:44px;align-self:stretch;align-items:center}
  .panel__in>.mr-tile>.mr-tile__top{grid-area:top;justify-content:flex-end;flex-direction:row-reverse;gap:10px;align-self:end}
  .panel__in>.mr-tile .mr-icon{width:28px;height:28px;border-radius:9px}
  .panel__in>.mr-tile>.mr-tile__delta{grid-area:delta;margin:0;align-self:start;max-width:40rem}
}
.week__headline{max-width:23em;font:650 clamp(1.125rem,1rem + .6vw,1.625rem)/1.3 var(--font-display);font-stretch:112%;letter-spacing:-.01em;text-wrap:pretty}
@media (max-width:479px){
  .week__cover{grid-template-columns:minmax(0,1fr)}
  .week__cover .mr-cover__logo{position:absolute;top:20px;right:20px}
  .week__cover :is(.mr-cover__week,.mr-cover__name){padding-right:68px}
}
/* 768 to 1023px: a row with figures or a link of its own is two columns. Its name and description fill the left one in order. */
@media (min-width:768px) and (max-width:1023px){
  .industry-row:has(.industry-row__read,.industry-row__sample){grid-template:repeat(4,auto)/1fr 1fr;grid-auto-flow:column;gap:6px 24px}
  .industry-row .prov{grid-column:1 / -1}
  .mini-strip{grid-area:2/2}
  .industry-row__read{grid-area:3/2}
  .industry-row__sample{grid-area:4/1}
  .industry-row--req .industry-row__sample{grid-area:1/2/3;align-self:center}
}
@media (min-width:1024px){
  .ind-cards{grid-template-columns:minmax(0,300px)}
  .ind-radar .scope{display:flex;align-items:center;gap:48px}
  .ind-radar .scope__cap{flex:1;align-self:center;margin:0;text-align:left}
}
/* Request */
body[data-page="subscribe"] main{position:relative;isolation:isolate}
.req-page__head{margin-bottom:var(--s-6)}
.req__msgs{display:grid;gap:12px;max-width:43rem;margin-bottom:var(--s-6)}
.req__msgs .form-msg:is(:target,.is-shown){display:flex;align-items:flex-start;gap:10px}
.req__msgs[data-enhanced] .form-msg:not(.is-shown){display:none}
.form-msg .i{flex:none;margin-top:.2em;color:var(--error)}
.form-msg:focus{outline:2px solid var(--paper);outline-offset:3px}
.req{display:grid;gap:28px}
.req__submit .btn[aria-disabled="true"]{opacity:.7;cursor:progress}
.req__next{padding:32px}
.req__next>* + *{margin-top:24px}
.req__next .route{grid-template-columns:none;gap:20px}
.req__next .route__stop{padding:0 0 0 52px}
.req__next .route__num{top:-4px}
.req__next .route__stop::before{left:16.5px;right:auto;top:40px;bottom:-16px;width:3px;height:auto}
.req__promises .i{color:var(--ok)}
.tile:has([aria-invalid="true"]){border-color:var(--error)}
/* Order page (/subscribe/):the plan choice,the plans panel,and the competitors field */
.plans{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(min(100%,276px),1fr))}
.plans .tile:last-child{grid-column:auto}
.tile--plan{flex-direction:column;align-items:flex-start;gap:4px;min-height:0;padding:16px 48px 16px 16px;font-weight:400}
.tile--plan:has(:checked){padding:15px 47px 15px 15px}
.tile--plan::after{top:18px;margin-top:0}
.tile--plan:has(:checked)::after{top:17px}
.tile--plan__name{font-weight:700;color:var(--paper)}
.tile--plan__price{font:800 26px/1.1 var(--font-display);font-stretch:112%;letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:var(--paper)}
.tile--plan__desc{font-size:var(--fs-body);line-height:1.45;color:var(--paper)}
.tile--off,.tile--off:hover{border:1px dashed var(--edge);cursor:default}
.req__plan>* + *{margin-top:16px}
.req__plan + .req__plan{padding-top:24px;border-top:1px solid var(--line)}
.req__plan-h{font:700 var(--fs-body)/1.35 var(--font-body);color:var(--paper)}
.req__submit .small{margin-top:10px}
.test-note{display:inline-block;max-width:100%;padding:2px 8px;border:1.5px dashed var(--haze);border-radius:var(--r-chip);color:var(--paper);font:700 var(--fs-micro)/1.35 var(--font-body)}
.test-pair{display:flex;align-items:center;gap:12px;max-width:100%}
.test-pair>.btn{flex:none}
.test-pair>.test-note{min-width:0}
.req__submit .test-note{display:block;width:fit-content;margin-top:10px}
.comp legend{margin-bottom:8px}
.comp__rows{display:grid;gap:20px}
.comp__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.comp__row>:not(.comp__box,.comp__rm){grid-column:1 / -1}
.comp__box{position:relative}
.comp__pop{position:absolute;z-index:2;top:calc(100% + 4px);left:0;right:0;max-height:min(320px,50vh);overflow-y:auto;border-radius:var(--r-input);background:var(--dusk);border:1px solid var(--edge);box-shadow:var(--shadow-float-sm)}
.comp__pop li{min-height:44px;padding:10px 14px;line-height:1.35;cursor:pointer}
.comp__pop li:hover,.comp__pop [aria-selected="true"]{background:var(--dusk-2)}
.comp__pop [aria-selected="true"]{outline:2px solid var(--paper);outline-offset:-2px}
.comp__by{display:flex;align-items:center;justify-content:flex-end;min-height:32px}
.comp__pop .comp__by{padding:4px 14px;border-top:1px solid var(--line)}
.comp__picked{display:flex;gap:8px}
.comp__picked .i{width:16px;height:16px;margin-top:.15em;color:var(--ok)}
.comp__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}
@media (max-width:1023px){
  .req,.req__msgs{max-width:40rem}
  .req{display:flex;flex-direction:column}
  .req__next{order:4}
  .req--signup .req__next{order:0}
}
@media (max-width:767px){
  .req__submit .btn{width:100%}
  .req__next{padding:24px}
}
@media (max-width:419px){
  .req .tile__icon{display:none}
}
@media (max-width:319px){
  .req .tiles{grid-template-columns:minmax(0,1fr)}
}
@media (min-width:1024px){
  .req{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"fields preview" "fields next" "submit next" "fine .";gap:28px var(--s-8);align-items:start}
  .req__fields{grid-area:fields}
  .req__next{grid-area:next}
  .req__submit{grid-area:submit}
  .req__fine{grid-area:fine}
  .req--signup{grid-template-areas:"fields next" "submit next" "fine ."}
}
/* Text pages (privacy, terms, about), thanks, 404 */
body:is([data-page="privacy"],[data-page="terms"]) main{position:relative;isolation:isolate}
body:is([data-page="privacy"],[data-page="terms"]) .hero__glow{opacity:.7}
.req-page,.textpage{padding-top:var(--top-y)}
.textpage__head{margin-bottom:var(--s-7)}
.textpage__head>* + *{margin-top:16px}
.textpage__draft{margin-bottom:var(--s-7)}
.textpage .prose>:first-child{margin-top:0}
.prose .draft>* + *{margin-top:8px}
.about__who{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.about__who>.draft{flex:1 1 18rem}
.about__photo{display:grid;place-items:center;flex:none;width:160px;height:160px;border-radius:50%;border:1.5px dashed var(--line-2);font:700 40px/1 var(--font-display);font-stretch:118%}
.thanks .scope,.lost .scope{margin-top:var(--s-6)}
.thanks .scope__cap{margin-inline:auto;text-align:center}
.thanks__line,.lost__mr{max-width:36.3em;margin:16px auto 0}
.thanks__steps{max-width:22rem;margin:var(--s-7) auto 0;text-align:left}
.hero .thanks__links{margin-top:var(--s-7)}
@media (min-width:1024px){
  .thanks__steps{max-width:720px}
}
/* Short landscape screens: the chrome scrolls away */
@media (max-height:500px){
  html{scroll-padding-top:16px}
  .site-head{position:relative;top:auto}
  .site-head :is(a,summary){scroll-margin-top:-16px}
  .hero,.req-page,.textpage{padding-top:max(16px,var(--top-y))}
  .hero .display-xl{font-size:clamp(2rem,9vh,2.75rem)}
  .menu__sheet{position:absolute;top:calc(100% + 8px);left:0;right:0;max-height:none;overflow:visible;display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"g l" "a l" "a b";column-gap:16px;align-items:start}
  .menu__sheet li a{min-height:44px}
  .menu__group{grid-area:g}
  .menu__sheet ul{grid-area:a}
  .menu__sheet ul + ul{grid-area:l;margin-top:0;padding-top:0;border-top:0;padding-left:16px;border-left:1px solid var(--line)}
  .menu__sheet .btn{grid-area:b;align-self:end}
}
@media (max-height:500px) and (min-width:520px){
  .float-cta{display:block;left:auto;right:max(12px,env(safe-area-inset-right));bottom:12px;translate:none}
  .float-cta__btn{width:auto;min-height:44px;padding:0 16px;font-size:15px;white-space:nowrap}
}
@media (max-height:500px) and (max-width:479px){
  .menu__sheet{display:block}
  .menu__sheet ul + ul{margin-top:8px;padding:8px 0 0;border-top:1px solid var(--line);border-left:0}
}
/* Contrast and forced colours */
@media (prefers-contrast:more){
  :root{--muted:var(--haze);--line:var(--line-2);--mr-border:rgba(255,255,255,.2)}
}
@media (forced-colors:active){
  .hero__glow,.scope__beam,.scope__bloom,.btn--primary::after,:is(.hero,.slide--hook) .scope::before,.final::after{display:none}
  html:not(.lite) .pill::before,html.lite .pill::before{background:Canvas;-webkit-backdrop-filter:none;backdrop-filter:none}
  .scope__dot,.mr-strip__dot,.key--market{forced-color-adjust:none;background:CanvasText}
  .scope__you,.mr-strip__you,.key--you{forced-color-adjust:none;background:Highlight}
  .mr-strip__you,.mini-strip .mr-strip__you{background:transparent;box-shadow:0 0 0 3px Highlight,0 0 0 5px Canvas}
  .mr-card,.pill,.industry-row,.faq__item,.note{border:1px solid CanvasText}
  .btn{border:1px solid ButtonText;color:ButtonText;background:ButtonFace}
  .mr-strip__bar,.mr-strip__median,.mr-key,.mr-progress__track,.mr-progress__fill{forced-color-adjust:none}
  .mr-strip__bar,.mr-progress__track{background:GrayText}
  .mr-strip__median,.mr-key,.mr-key--median,.mr-progress__fill{background:CanvasText}
  .mr-key--you{background:Highlight}
}

/* == Home page == */
.hero__for{margin:8px auto 0;max-width:38ch}
.hero__contents{margin:12px auto 0;max-width:38ch}
/* Motion pass: scroll reveals, sitewide glow, hover tilt, stat cards.
   Every rest state below is the finished design: no JS, reduced motion and html.lite all show it. */
@media screen and (prefers-reduced-motion:no-preference){
  html.js:not(.rm) .rv{--dl:calc(var(--i,0) * 90ms);transition:opacity 700ms var(--ease-std) var(--dl),translate 900ms var(--ease-expo) var(--dl),rotate 900ms var(--ease-expo) var(--dl),scale 900ms var(--ease-expo) var(--dl),transform 500ms var(--ease-expo)}
  html.js:not(.rm) .rv:not(.in){opacity:0;translate:0 28px}
  html.tilt:not(.rm) :is(.mr-card,.price-tag):not(.rv){transition:transform 500ms var(--ease-expo)}
}
/* A soft sodium and blue light that drifts down the page with the scroll; it holds still under 768px */
body::before{content:"";position:fixed;z-index:-1;inset:-25vh -25vw;pointer-events:none;background:radial-gradient(28vmax 24vmax at 30% 38%,rgba(255,173,66,.07),transparent 70%),radial-gradient(40vmax 34vmax at 72% 60%,rgba(112,132,255,.11),transparent 72%)}
html.lite body::before{content:none}
@supports (animation-timeline:scroll()){
  @media (prefers-reduced-motion:no-preference){
    html:not(.lite):not(.rm) .stat{animation:stat-settle linear both;animation-timeline:view();animation-range:entry 0% cover 40%}
  }
  @media (prefers-reduced-motion:no-preference) and (min-width:768px){
    html:not(.lite):not(.rm) body::before{animation:glow-drift linear both;animation-timeline:scroll(root)}
  }
}
@keyframes glow-drift{
  0%{transform:translate3d(-8vw,-6vh,0)}
  35%{transform:translate3d(12vw,8vh,0)}
  70%{transform:translate3d(-10vw,14vh,0)}
  to{transform:translate3d(8vw,-4vh,0)}
}
@keyframes stat-settle{
  from{transform:translate3d(0,var(--py,64px),0) rotate(var(--tilt))}
  to{transform:translate3d(0,0,0) rotate(calc(var(--tilt) * -1))}
}
/* Stat cards: plan facts, slightly tilted; they settle straight as they scroll in */
.final__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9em),1fr));gap:20px 16px;margin-top:var(--s-8);text-align:left}
.stat{rotate:var(--tilt)}
.stat__in{height:100%;padding:20px 20px 22px;border-radius:var(--r-card);background:var(--dusk);border:1px solid var(--line-2);box-shadow:var(--lit-edge),var(--shadow-float)}
.stat__num{font:800 clamp(2.75rem,2rem + 2.6vw,4rem)/1 var(--font-display);font-stretch:125%;letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap}
.stat__num small{margin-left:.12em;font-size:.36em;font-stretch:112%;letter-spacing:0}
.stat__label{margin-top:10px;line-height:1.35}
.stat--sodium .stat__in{background:var(--sodium);color:var(--night);border-color:transparent}
@media (max-width:479px){
  .final__stats{gap:16px 12px}
  .stat__in{padding:16px 14px 18px}
}
@media (max-width:767px){.stat{--tilt:0deg !important}}
@media (min-width:768px){
  .final__stats{grid-template-columns:repeat(2,minmax(0,260px));justify-content:center;gap:24px}
}
@media (min-width:1400px){
  .final__stats{position:absolute;inset:0;display:block;max-width:none;margin:0;pointer-events:none}
  .stat{position:absolute;width:260px;pointer-events:auto}
  .stat:nth-child(1){left:max(24px,calc(50% - 680px));top:22%;--py:90px}
  .stat:nth-child(2){right:max(72px,calc(50% - 690px));bottom:14%;--py:50px}
}
@media (min-width:768px) and (max-width:1399px) and (max-height:799px){.final__stats{display:none}}
@media (forced-colors:active){.stat__in{border:1px solid CanvasText}}
/* Footer: a hairline under the column headings, one continuous line on desktop, with a short sodium accent per heading */
.site-foot__h{position:relative;padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid var(--line-2);font-weight:700}
.site-foot__h::after{content:"";position:absolute;left:0;bottom:-1px;width:84px;height:2px;border-radius:2px;background:var(--sodium)}
@media (min-width:1024px){
  .site-foot__cols{grid-template-columns:repeat(3,minmax(max-content,1fr))}
  .site-foot__cols>div:not(:last-child) .site-foot__h{margin-right:calc(-1 * var(--gutter))}
}
@media (forced-colors:active){.site-foot__h::after{background:CanvasText}}
/* == Home deck: stacked by default; html.deck-pin adds the pinned stages == */
@property --svh{syntax:"<length>";inherits:false;initial-value:0px}
@property --cut{syntax:"<length>";inherits:false;initial-value:0px}
html.deck-page{--svh:100svh}
@media (min-width:768px){
  html.deck-page{scroll-snap-type:y proximity}
  html.deck-page[data-snap=m]{scroll-snap-type:y mandatory}
  html.deck-page[data-snap=off]{scroll-snap-type:none}
  /* Motion off: no snap, so a short wheel turn is not pulled back. The keys still step one panel. */
  html.deck-page.rm{scroll-snap-type:none}
  @media (prefers-reduced-motion:reduce){html.deck-page:not(.deck-pin){scroll-snap-type:none}}
}
@media (min-height:501px){.deck-page .site-head{position:fixed;inset-inline:0;margin-top:0}}
.slide{position:relative}
.slide:not(.slide--h){display:flex;flex-direction:column;justify-content:center;min-height:100svh;padding-block:88px 48px;scroll-margin-top:-88px}
.slide:not(.slide--h),.slide--h .panel{scroll-snap-align:start;scroll-snap-stop:always}
.deck-page .site-foot{scroll-snap-align:start}
.stop{display:none}
.deck__how{position:absolute;top:0;scroll-margin-top:-88px}
.slide__in,.panel__in{width:100%}
.stage__head{padding-block:88px 24px}
.stage__head:has(.prov){padding-bottom:12px}
.stage__head>.prov{margin:12px 0 0}
.stage__h{font-size:min(var(--fs-display-l),7vh);max-width:30ch}
.stage__line{margin-top:8px}
.stage__lead{margin-top:16px;font-size:var(--fs-lead);line-height:1.45;max-width:48ch}
.panel{padding-block:24px 48px}
.panel__n{font-weight:700}
.panel__n:has(+.h3){margin-bottom:16px}
.panel__in>.h3+*{margin-top:24px}
.panel .faq{max-width:var(--max-text)}
.panel .faq+.small{margin-top:16px}
.slide--top .slide__in{flex:1;display:flex;flex-direction:column}
.slide--top .slide__in>div{margin-block:auto;padding-top:24px}
.deck .industry-row{padding-block:16px}
/* Home slide 8: six plain rows on one screen. One-line rows from 768px, and their spacing follows the screen's height
   from 1024px. A name's link reaches 2px past its row, so its target is 44px tall on a 40px row. */
@media (min-width:768px){
  .rows--plain{gap:4px}
  .rows--plain .industry-row{min-height:40px;padding-block:7px;line-height:1.35}
  .rows--plain .industry-row__name{font-size:1.1875rem}
  .rows--plain .industry-row__link::after{inset-block:-3px}
  .slide--top .slide__in>div:has(.rows--plain){padding-top:8px}
  .rows--plain+.rows__more{max-width:none;margin-top:8px;line-height:1.35}
}
@media (min-width:1024px){
  .rows--plain{gap:clamp(4px,1vh - 2.5px,8px)}
  .rows--plain .industry-row{padding-block:clamp(7px,2.6vh - 10px,16px)}
  .slide--top .slide__in>div:has(.rows--plain){padding-top:clamp(8px,4vh - 18px,24px)}
  .rows--plain+.rows__more{margin-top:clamp(8px,4vh - 18px,24px)}
}
@media (min-width:1280px){.rows--plain .industry-row__name{font-size:var(--fs-h3)}}
.slide:is(.slide--hook,.final){justify-content:flex-start}
/* Final slide: the heading first; the rings and the pin sit 56px under the text, in the space --fp keeps */
.slide .final__rings{top:calc(100% - var(--fp) + 56px)}
.slide .final__text{--fp:112px;padding-block:0 var(--fp)}
.slide .final__text .h2{max-width:20ch;font-size:min(var(--fs-display-l),7vh)}
.slide .final__text .lead{max-width:30em}
.slide .small+.small{max-width:56ch}
.fig{display:flow-root}
.fig>*+*,.fig__body>*{margin-top:16px}
.fig__top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.fig__h{font-size:min(var(--fs-display-l),6vh)}
.fig__h3{font-size:clamp(1.375rem,4.4vh,2rem);max-width:20ch}
.fig--pic{display:grid;grid-template-columns:minmax(0,1fr)}
.fig__body{display:contents}
.fig--pic>.fig__pic{order:1;margin-top:24px}
.fig__pic.stack>.plan__line{max-width:40ch}
.fig__pic>.lead{max-width:40ch}
.fig .btn--primary{min-height:60px}
.panel .included{line-height:1.45}
.deck [data-count]{display:inline-block;text-align:right}
/* Under 768px tags 1 and 2 show only when the plate is at least 14.5rem wide, pinned or stacked. */
@media (max-width:767.98px){
  .slide--hook .scope__plate{container-type:inline-size}
  @container (max-width:14.49rem){.slide--hook .scope__tag{display:none}}
}
/* Slides 2 to 4: a column label, statements, the checklist. Bullets and the check box are drawn with borders */
.col-label{width:max-content;max-width:100%;margin-bottom:.9em;padding:7px 16px;border:1.5px solid var(--sodium);border-radius:22px;font:700 var(--fs-body)/1.2 var(--font-body)}
.says{display:grid;gap:.55em;max-width:30ch;font:700 min(clamp(1.5rem,1rem + 2.3vw,2.875rem),5.5vh)/1.14 var(--font-display);font-stretch:112%;letter-spacing:-.015em}
.slide--top .says{max-width:34ch}
.says li,.check__item{position:relative;padding-left:1.1em}
.says li::before,.check__item::before{content:"";position:absolute;left:0;top:.32em;width:.5em;height:.5em;border:.09em solid var(--sodium);border-radius:50%;background:var(--sodium)}
.says--now li::before{border-color:var(--paper);background:none}
.pair__when{font-weight:600}
.pair__then{font-weight:800}
.check__item{max-width:26ch;padding-left:1.25em;font:700 min(clamp(1.625rem,1rem + 2.6vw,3.25rem),6vh)/1.12 var(--font-display);font-stretch:112%}
.check__item::before{top:.14em;width:.82em;height:.82em;border-radius:.16em;background:none}
.check__why{margin-top:.9em;max-width:34ch;font-size:clamp(1.125rem,.85rem + 1vw,1.625rem);line-height:1.35}
@media (max-width:767px){
  .says{font-size:24px}
  .check__item{font-size:26px}
}
.step{isolation:isolate;overflow:clip}
.step .panel__in{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:24px}
.step .panel__in>*{grid-column:2}
.step .step__num{position:relative;inset:auto;z-index:1;grid-area:1/1/3;width:48px;height:48px;font-size:20px}
.step--start .step__num{background:var(--sodium);color:var(--night);box-shadow:none}
.step .step__route{position:absolute;grid-area:1/1;left:23px;top:-100vh;bottom:-100vh;width:2px;background:var(--line-2)}
.step--start .step__route{top:24px}
.step--end .step__route{bottom:auto;height:calc(100vh + 24px)}
.step__big{display:none}
.step__line{margin-top:8px;font-size:clamp(1.125rem,.9rem + .9vw,1.5rem);line-height:1.4}
.slide--hook{isolation:isolate;text-align:center}
.slide--hook .lead{max-width:44ch;margin:24px auto 0}
.slide--hook .cta-row{justify-content:center;margin-top:32px}
.slide--hook .instrument{display:block;min-height:0;margin-top:32px}
.deck__cue{margin-top:24px}
.deck__cue-key{display:none}
@media (pointer:fine){.deck__cue-touch{display:none}.deck__cue-key{display:inline}}
@media (max-width:767px),(max-height:800px){.slide--hook .hero__for{display:none}}
@media (max-width:767px),(max-height:679px){.stage__lead{display:none}}
@media (min-width:768px) and (max-height:679px){
  .deck .price-tag{padding-block:20px}
  .deck .offer-steps{gap:12px}
  .fig__pic{--stack:12px}
  .fig .btn--primary{min-height:52px}
}
@media (min-width:768px) and (max-height:799px){.slide .final__text{--fp:72px;gap:16px}}
.deck-nav{position:fixed;z-index:45;top:50%;right:max(16px,env(safe-area-inset-right));translate:0 -50%;opacity:0;visibility:hidden}
.deck-nav.is-on{opacity:1;visibility:visible}
.deck-nav ol{position:relative}
.deck-nav ol::before,.deck-nav ol::after{content:"";position:absolute;left:17.5px;top:18px;bottom:18px;width:1px;background:var(--line)}
.deck-nav ol::after{background:var(--sodium);transform:scaleY(var(--p,0));transform-origin:top}
.deck-nav__dot{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border:4px solid #0000;border-radius:50%;background:var(--night) padding-box;box-shadow:inset 0 0 0 1px var(--line-2);text-decoration:none}
.deck-nav__dot,.deck-nav__count{font:700 13px/1 var(--font-body);font-variant-numeric:tabular-nums;white-space:nowrap}
.deck-nav__dot[aria-current=true]{box-shadow:inset 0 0 0 2px var(--sodium)}
.deck-nav__dot span{position:absolute;right:calc(100% + 4px);padding:5px 8px;border-radius:var(--r-pill);background:var(--night);opacity:0;pointer-events:none}
.deck-nav__dot:is(:hover,:focus-visible) span{opacity:1}
.deck-nav:has(.deck-nav__count:not(:empty)) [aria-current] span{right:calc(100% + 76px)}
.deck-nav__count{position:absolute;right:calc(100% + 4px);top:18px;padding:5px 10px;border-radius:var(--r-pill);color:var(--paper);transform:translateY(calc(var(--i,0) * 36px - 50%))}
.deck-nav__count{background:color-mix(in srgb,var(--dusk) 96%,#0000);box-shadow:inset 0 0 0 1px var(--line)}
.deck-nav__count:empty{display:none}
.deck-nav__count::after{content:"";display:block;width:calc(var(--n) * 9px - 3px);height:2px;margin-top:5px;background:repeating-linear-gradient(90deg,var(--tf,var(--sodium)) 0 6px,#0000 0 9px) 0/calc(var(--j) * 9px) 100% no-repeat,repeating-linear-gradient(90deg,var(--te,var(--line-2)) 0 6px,#0000 0 9px)}
@media (min-width:768px){
  .deck .wrap{padding-right:max(var(--pad-x),72px)}
  .slide:not(.slide--h),.stage__head{padding-top:112px}
  html.js .stage__head{position:sticky;top:0;z-index:2;background:var(--night);border-image:conic-gradient(var(--night) 0 0) fill 0//0 100vw}
  html.js .slide--h .panel{display:grid;align-items:center;min-height:calc(100svh - var(--head-h,0px));scroll-margin-top:calc(var(--head-h,0px) - 88px)}
  .fig__h3{max-width:24ch}
  html.deck-pin .step .panel__in{grid-template-columns:1fr 48px minmax(0,3fr)}
  html.deck-pin .step .panel__in>*{grid-column:3}
  html.deck-pin .step .step__num{grid-area:1/2/3}
  html.deck-pin .step .step__route{grid-area:1/2}
  html.deck-pin .step .step__big{display:block;position:absolute;grid-column:1/2;inset-inline:0;text-align:center;top:50%;z-index:-1;translate:0 -50%;font:800 min(12vw,24vh,13rem)/1 var(--font-display);font-stretch:125%;color:var(--line)}
}
@media (min-width:1024px){
  .fig{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:48px;align-items:end}
  .fig--pic{row-gap:16px}
  .fig--pic>.fig__top{grid-column:1/7}
  .fig--pic>.fig__body{display:block;grid-column:1/7;align-self:start}
  .fig--pic>.fig__pic{grid-area:1/7/3/12;align-self:center}
  .fig--pic>.fig__pic:has(>.offer-steps){grid-column-end:13}
  .fig--pic>.plan__more{grid-column:6/13}
  .fig__body>:first-child,.fig--pic>.fig__pic{margin-top:0}
  .fig--pic:has(.fig__h3){row-gap:0}
  .fig--pic:has(.fig__h3)>.fig__top{margin-bottom:16px}
  .fig--pic:has(.fig__h3)>:is(.fig__body,.fig__pic){grid-row:2;align-self:start;margin-top:0}
  [id="6"] .fig--pic .fig__h3{max-width:min(24ch,100%*5/6 + 16px)}
  .slide--hook{text-align:left}
  .slide--hook .slide__in{flex:1;display:grid;grid-template:repeat(5,auto) 1fr auto/minmax(0,1fr) minmax(0,1fr);column-gap:48px}
  .slide--hook .display-xl{font-size:min(9vh,4.1vw - 9px,3rem)}
  .slide--hook :is(.lead,.hero__micro,.hero__for,.hero__contents){max-width:44ch;margin-inline:0}
  .slide--hook :is(.hero__for,.hero__contents){max-width:38ch}
  .slide--hook .cta-row{justify-content:start}
  .slide--hook .instrument{grid-area:1/2/-1;align-self:center;margin:0}
  .slide--hook .instrument__foot{gap:0;margin-top:8px}
  .slide--hook .scope{--scope:clamp(216px,100svh - 368px,min(42vw,480px))}
  .deck__cue{grid-area:-2/1}
}
@media (min-width:1280px){.slide--hook .scope{--scope:clamp(216px,100svh - 324px,min(44vw,560px))}}
@media (max-width:767px),(max-height:540px){
  .deck-nav{display:flex;align-items:center;top:auto;right:50%;bottom:calc(max(8px,env(safe-area-inset-bottom)) + 56px);translate:50% 0;height:36px;padding-inline:4px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--dusk) 96%,#0000);box-shadow:inset 0 0 0 1px var(--line)}
  .deck-nav ol{display:flex}
  .deck-nav ol::before,.deck-nav ol::after,.deck-nav__count::after,.deck-nav__dot span{display:none}
  .deck-nav__dot{width:24px;height:44px;border-width:10px 0;border-radius:12px/22px;background:none;box-shadow:none}
  .deck-nav .deck-nav__count{position:static;display:block;width:40px;height:21px;padding:4px 0;border-left:1px solid var(--line);border-radius:0;background:none;box-shadow:none;transform:none;text-align:center}
}
/* Phones: one idea per panel (.md is hidden), the dock (CTA bar and dot pill), and the pinned stage sized in svh and px only */
@media (max-width:767px){
  html.deck-pin{scroll-snap-type:y mandatory;--mx:.34;--mt:.8}
  html.deck-pin[data-snap=w]{scroll-snap-type:none}
  .slide:not(.slide--h),.stop{scroll-margin-bottom:-72px}
  /* stacked: the first stop of a stage is the top of its head, so a rail stop, a digit key or #N shows the heading below the site header */
  html:not(.deck-pin) .slide--h .panel:first-child{scroll-margin-top:calc(var(--head-h,0px) - 88px)}
  .deck-page .site-foot{scroll-margin-bottom:9999px}
  .slide--hook .display-xl{font-size:min(1.75rem,7.4vw)}
  .slide--hook .lead{margin-top:8px}
  .fig--pic>.fig__pic{margin-top:16px}
  .panel .included ul{gap:8px}
  .deck .md,html.js .panel__n{display:none}
}
/* 768-1023px: the floating CTA reserves 96px of scroll padding at the bottom; cancel it so a stop has one rest position */
@media (min-width:768px) and (max-width:1023px){.slide:not(.slide--h),.slide--h .panel,.stop{scroll-margin-bottom:-96px}}
@media (min-width:600px) and (max-width:767px) and (max-height:500px){.deck-nav{right:auto;left:max(12px,env(safe-area-inset-left));bottom:16px;translate:none}}
@media (prefers-reduced-motion:no-preference){
  html:not(.rm) .deck-nav{transition:opacity 160ms var(--ease-std),visibility 0s 160ms}
  html:not(.rm) .deck-nav.is-on{transition:opacity 240ms var(--ease-std),visibility 0s}
  html:not(.rm) .deck-nav ol::after{transition:transform 480ms var(--ease-expo)}
  html:not(.rm) .deck-nav__count{transition:transform 240ms var(--ease-std)}
  html:not(.rm) .deck-nav__dot{transition:color 160ms var(--ease-std)}
  html:not(.rm) .deck-nav__dot span{transition:opacity 160ms var(--ease-std)}
  html:not(.rm) .deck-nav__dot[aria-current=true]::before{content:"";position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 2px var(--sodium);opacity:0;animation:ping 700ms var(--ease-ping)}
}
@media (prefers-reduced-motion:no-preference) and (max-width:767px){
  html:not(.rm) .deck-nav.is-on{transition:opacity 160ms var(--ease-std),visibility 160ms}
}
@media (forced-colors:active){
  .deck-nav__dot{forced-color-adjust:none;background-color:Canvas;box-shadow:inset 0 0 0 1px CanvasText;color:CanvasText}
  .deck-nav__dot[aria-current=true]{background-color:Highlight;color:HighlightText}
  .deck-nav ol::before,.deck-nav ol::after{forced-color-adjust:none;background:CanvasText}
  .deck-nav__count{--tf:CanvasText;--te:GrayText;border:1px solid CanvasText}
  .deck-nav__count::after{forced-color-adjust:none}
}
/* Pinned mode (html.deck-pin): each stage sticks for n screens while its track moves up with the scroll, under the head's rule */
html.deck-pin{overscroll-behavior-x:none}
html.deck-pin .slide--h{height:calc(var(--n) * 100svh)}
html.deck-pin .stop{display:block;position:absolute;left:0;top:calc(var(--k) * 100svh);width:1px;height:calc(var(--c,1) * 100svh);scroll-snap-align:start;scroll-snap-stop:always;scroll-margin-top:-88px}
html.deck-pin .deck>.slide--h:first-child:not(:has(>.stop)){scroll-snap-align:start}
html.deck-pin .stage{position:sticky;top:0;display:flex;flex-direction:column;height:100svh;overflow:clip}
html.deck-pin .stage>*{width:100%}
html.deck-pin .stage__head{position:static;background:none;border-image:none}
html.deck-pin .stage__view{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-top:1px solid var(--line);scroll-padding-bottom:48px;overflow-anchor:none}
html.deck-pin .track{flex:none;height:calc(var(--n) * 100%)}
html.deck-pin .deck--armed .track{margin-block:calc((var(--n) - 1) * 100svh)}
html.deck-pin .slide--h .panel{display:grid;align-items:center;height:calc(100% * var(--c,1) / var(--n));min-height:0;padding-top:0;contain:layout paint;scroll-snap-align:none}
html.deck-pin .panel__n{display:none}
html.deck-pin .step{grid-template-rows:minmax(0,30%) auto 1fr}
html.deck-pin .step .panel__in{grid-row:2}
html.deck-pin .faq:has([open]) .faq__item:not([open]){display:none}
/* A cut item (site.js): --cut moves a block to its piece, on screen only; a cut slide without panels is --n screens tall */
html.deck-pin .deck [style*="--cut"]:not([aria-hidden]){translate:0 var(--cut)}
html.deck-pin .slide .final__rings{top:calc(100% - var(--fp) + 56px + var(--cut))}
html.deck-pin .slide:not(.slide--h):has(>.stop){min-height:calc(var(--n) * 100svh);padding-bottom:var(--pb);scroll-snap-align:none}
html.deck-pin .final:has(>.stop){overflow:clip}
html.deck-pin .faq__q{min-height:48px;padding-block:12px}
html.deck-pin:not(.rm) body::before{animation:none}
html.deck-pin .pill::before{background:rgba(19,26,62,.96);-webkit-backdrop-filter:none;backdrop-filter:none}
/* Business type pages, pinned. A [data-scroll] panel scrolls on its own once its text version is open. The radar
   fills what its panel has left, between 200px and 440px, and starts 2px under its panel's top edge: a box that only
   touches the screen's edge counts as on screen, and the radar would never be paused. Compact cards on phones and
   short screens. */
html.deck-pin .panel[data-scroll]{overflow-y:auto;align-items:safe center}
html.deck-pin .ind-radar{align-self:stretch;display:flex;margin-top:2px}
html.deck-pin .ind-radar .scope{--scope:min(100cqw,100cqh,440px);flex:1;display:flex;flex-direction:column;align-items:stretch;min-width:0}
html.deck-pin .ind-radar__box{flex:1;display:grid;place-items:center;min-height:200px;container-type:size}
@media (min-width:1024px){html.deck-pin .ind-radar .scope{flex-direction:row}}
@media (max-width:767px),(max-height:679px){
  html.deck-pin [data-page^=ind] .panel :is(.mr-card,.lead,.small,.mr-cover__line,.fig__pic>p){line-height:1.35}
  html.deck-pin .mr-card{padding:12px}
  html.deck-pin .mr-row{padding-block:8px}
  html.deck-pin .mr-events li{padding-block:6px}
}
@media (min-width:768px) and (max-height:679px){html.deck-pin .ind-cards>:last-child{display:none}}
/* Three labelled rows with two-line figures fit a panel, and one screen under a heading 112px down, from 1024px wide on a screen under 800px tall */
@media (min-width:1024px) and (max-height:799px){
  html.deck-pin .industry-row:has(.prov){padding-block:10px}
  html.deck-pin .industry-row .prov{margin-bottom:6px}
  html.deck-pin .slide--top .slide__in>div:has(.prov){padding-top:12px}
}
@media (max-width:767px){
  html.deck-pin .industry-row:has(.prov){gap:4px;padding:8px 12px}
  /* The demo link of a row with two links is one line of text; its target stays 44px tall */
  html.deck-pin .industry-row__sample:not(.industry-row__sample--row){min-height:0}
  html.deck-pin .industry-row__sample:not(.industry-row__sample--row)::after{content:"";position:absolute;inset:-11px 0}
  html.deck-pin .panel .note{padding:0;border:0;border-radius:0;background:none;box-shadow:none}
}
/* 768 to 1023px: in a real row with a read line, the demo link sits under the read line and the description fills the lines beside it */
@media (min-width:768px) and (max-width:1023px){
  html.deck-pin .industry-row--sample:has(.industry-row__read):has(.industry-row__sample) .industry-row__sample{grid-area:4/2}
  html.deck-pin .industry-row--sample:has(.industry-row__read):has(.industry-row__sample) .industry-row__what{grid-area:3/1/5}
}
/* INV-42: the end inset of 100% and the percentage-only cover range keep the viewport's height out of the track's range; keep both as written */
@supports (animation-timeline:view()){
  html.deck-pin .slide--h{view-timeline:--deck block;view-timeline-inset:0px 100%}
  html.deck-pin .track{animation:track linear both;animation-timeline:--deck;animation-range:cover 0% cover calc(100% * (var(--n) - 1) / var(--n))}
}
@media (max-width:767px){
  html.deck-pin .slide:not(.slide--h){padding-block:72px 108px}
  html.deck-pin .stage__view{scroll-padding-bottom:108px}
  html.deck-pin .stage__head{padding-block:72px 4px}
  html.deck-pin .stage__head:has(.prov){padding-bottom:12px}
  html.deck-pin .stage__h{font-size:1.25rem;line-height:1.15}
  html.deck-pin .fig__h3{font-size:1.375rem;line-height:1.15}
  html.deck-pin .fig__h{font-size:26px;line-height:1.12}
  html.deck-pin .track>.panel{padding-bottom:108px}
  html.deck-pin :is(.instrument__foot,.hero__contents,.pp,.final__stats,.final__pin,.panel__in:has([open])>.h3){display:none}
  html.deck-pin :is(.source,.ilist,.included,.plan__more,.faq__a,.faq__q,.industry-row){line-height:1.35}
  html.deck-pin .faq{gap:4px}
  html.deck-pin .faq__q{min-height:44px;padding:10px 16px}
  html.deck-pin .faq__a{padding:0 16px 16px}
  html.deck-pin .rows--plain{grid-template-columns:1fr 1fr}
  html.deck-pin .industry-row{padding:14px 12px}
  html.deck-pin .industry-row__name{font-size:17px}
  html.deck-pin .slide--hook .slide__in{flex:1;display:flex;flex-direction:column}
  html.deck-pin .slide--hook .instrument{flex:1 0 128px;margin-top:12px;container-type:size}
  html.deck-pin .slide--hook .scope{--scope:min(100cqw,100cqh,280px)}
  html.deck-pin .slide .final__text{--fp:0px;gap:16px}
  html.deck-pin .plan__more{gap:8px}
}
/* Home slide 8 on a pinned phone: a grid two names wide; a row is 44px tall or more and all of it is the link's target */
@media (max-width:767px){
  html.deck-pin .rows--plain{gap:6px}
  html.deck-pin .rows--plain .industry-row{min-height:44px;align-content:center;padding-block:8px}
  html.deck-pin .rows--plain .industry-row__link::after{inset:-1px}
  html.deck-pin .slide--top .slide__in>div:has(.rows--plain){padding-top:12px}
  html.deck-pin .rows--plain+.rows__more{margin-top:8px;line-height:1.35}
}
/* Entrances: a stop plays once when it arrives (.is-on); passed or jumped stops show finished (.is-done).
   Phones travel a third as far (--mx) in 0.8 of the time (--mt). */
@media (prefers-reduced-motion:no-preference){
  html.deck-pin:not(.rm) .deck__cue{animation:fade-in 400ms var(--ease-std) 1.2s backwards}
  html.deck-pin:not(.rm) .deck--armed :is(.panel,.slide:not(.slide--h)):not(.is-on,.is-done) [data-step]{opacity:0}
  html.deck-pin:not(.rm) .is-on [data-step]{--ed:calc(var(--s) * 40ms + max(var(--s) - 3, 0) * 40ms);--ef:calc((240ms + min(var(--s), 1, 4 - var(--s)) * 80ms) * var(--mt,1));--em:calc((480ms + min(var(--s), 1) * 80ms) * var(--mt,1));--ey:calc(min(24px + var(--s) * 16px + max(var(--s) - 1, 0) * 8px, 64px) * min(4 - var(--s), 1) * var(--mx,1));animation:fade-in var(--ef) var(--ease-std) var(--ed) backwards,move var(--em) var(--ease-expo) var(--ed) backwards}
  html.deck-pin:not(.rm) :is(.slide,.panel:first-child).is-on [data-step]{--ed:calc(40ms + var(--s) * 50ms);--ef:calc(320ms * var(--mt,1));--em:calc(480ms * var(--mt,1));--ey:calc(24px * var(--mx,1))}
  html.deck-pin:not(.rm) .is-on .step__num{animation:pop 320ms var(--ease-ping) 400ms backwards}
  html.deck-pin:not(.rm) .is-on .fig .btn::after{animation:glow 900ms var(--ease-std) var(--ed)}
}
@keyframes track{
  to{transform:translate3d(0,calc(-100% * (var(--n) - 1) / var(--n)),0)}
}
@keyframes move{
  from{translate:0 calc(var(--cut) + var(--ey))}
}
@keyframes pop{
  from{opacity:0;scale:var(--sc,.6)}
}
@keyframes glow{
  50%{opacity:1}
}
