@font-face{font-family:"Fraunces";src:url("fonts/fraunces-latin-ext-wght-normal.woff2?v=4fcafbcf88") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fraunces";src:url("fonts/fraunces-latin-wght-normal.woff2?v=7f9d191d99") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";src:url("fonts/fraunces-latin-ext-wght-italic.woff2?v=aa251918a7") format("woff2");font-weight:100 900;font-style:italic;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Fraunces";src:url("fonts/fraunces-latin-wght-italic.woff2?v=bceec2ef4d") format("woff2");font-weight:100 900;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-latin-ext-wght-normal.woff2?v=3e9be7e507") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-latin-wght-normal.woff2?v=62981321d9") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-latin-ext-wght-italic.woff2?v=11ac382940") format("woff2");font-weight:200 800;font-style:italic;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Newsreader";src:url("fonts/newsreader-latin-wght-italic.woff2?v=48bc8861b9") format("woff2");font-weight:200 800;font-style:italic;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";src:url("fonts/inter-latin-ext-wght-normal.woff2?v=48f540fb71") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";src:url("fonts/inter-latin-wght-normal.woff2?v=3100e775e8") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --bar:3rem;
  --bg:#f5f1e8; --bg-2:#ebe4d6; --card:#fbf8f2; --ink:#1c1a16; --muted:#5b554a; --line:rgba(28,26,22,.17); --line-soft:rgba(28,26,22,.09);
  --accent:#a3301a; --accent-ink:#fff;
  --k-cat:#c03a20; --k-both:#7a4890; --k-cast:#2d6490; --k-never:#a9b9c6; --k-other:#c99a3e; --k-usual:#7d5b16; --k-pale:#d8cfbe; --k-zero:#35322d; --k-all:#c03a20; --k-keep:#c03a20; --k-ask:#7a4890; --k-switch:#2d6490;
  --serif:"Newsreader",Georgia,"Times New Roman",serif; --display:"Fraunces",Georgia,serif; --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --prose:39rem; --wide:66rem;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#14120f; --bg-2:#1e1b17; --card:#1a1814; --ink:#ede6d9; --muted:#a8a092; --line:rgba(237,230,217,.18); --line-soft:rgba(237,230,217,.09);
  --accent:#ff8d6e; --accent-ink:#14120f;
  --k-cat:#f26a4b; --k-both:#bd8ed4; --k-cast:#6ea9d8; --k-never:#4d6070; --k-other:#d6a64a; --k-usual:#f1d79a; --k-pale:#39342d; --k-zero:#d9d2c4; --k-all:#f26a4b; --k-keep:#f26a4b; --k-ask:#bd8ed4; --k-switch:#6ea9d8;
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#14120f; --bg-2:#1e1b17; --card:#1a1814; --ink:#ede6d9; --muted:#a8a092; --line:rgba(237,230,217,.18); --line-soft:rgba(237,230,217,.09);
    --accent:#ff8d6e; --accent-ink:#14120f;
    --k-cat:#f26a4b; --k-both:#bd8ed4; --k-cast:#6ea9d8; --k-never:#4d6070; --k-other:#d6a64a; --k-usual:#f1d79a; --k-pale:#39342d; --k-zero:#d9d2c4; --k-all:#f26a4b; --k-keep:#f26a4b; --k-ask:#bd8ed4; --k-switch:#6ea9d8;
    color-scheme:dark;
  }
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--bar) + env(safe-area-inset-top) + .75rem)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.1875rem/1.62 var(--serif);font-optical-sizing:auto;overflow-x:hidden;overflow-wrap:break-word}
a{color:var(--accent);text-underline-offset:.16em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;z-index:100;background:var(--ink);color:var(--bg);padding:.6rem 1rem;font:600 .9rem var(--sans)}
.skip:focus{left:1rem;top:.5rem}
section[id],div[id].step,figure[id]{scroll-margin-top:calc(var(--bar) + env(safe-area-inset-top) + .75rem)}
b,strong{font-weight:650}

/* topbar */
.topbar{position:fixed;inset:0 0 auto 0;z-index:50;height:calc(var(--bar) + env(safe-area-inset-top));padding:env(safe-area-inset-top) max(1rem,env(safe-area-inset-right)) 0 max(1rem,env(safe-area-inset-left));display:flex;align-items:center;gap:1rem;font:500 .84rem/1 var(--sans);background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2);border-bottom:1px solid var(--line-soft);white-space:nowrap}
.topbar a{color:var(--ink);text-decoration:none}
.home{font-weight:650;letter-spacing:.01em;flex:none}
.topnav{display:flex;gap:1.1rem;overflow-x:auto;scrollbar-width:none;min-width:0}
@media (max-width:760px){.topnav{mask-image:linear-gradient(90deg,#000 85%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent)}}
.topnav::-webkit-scrollbar{display:none}
.topnav a{color:var(--muted);padding:.95rem 0;flex:none}
.topnav a:hover,.topnav a[aria-current="true"]{color:var(--ink)}
.topnav a[aria-current="true"]{box-shadow:inset 0 -2px 0 var(--accent)}
.spacer{flex:1}
.icon-btn{flex:none;display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;padding:0}
.icon-btn:hover{border-color:var(--ink)}
.icon-btn svg{display:block}
.icon-btn svg[hidden]{display:none}
@media (pointer:coarse){.icon-btn{width:44px;height:44px}}

/* reading rail */
.rail{position:fixed;right:max(.9rem,env(safe-area-inset-right));top:50%;transform:translateY(-50%);z-index:40;display:none;flex-direction:column;gap:.15rem;font:500 .74rem/1 var(--sans)}
.rail a{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;color:var(--muted);text-decoration:none;padding:.32rem 0;min-height:24px}
.rail .lbl{position:absolute;right:1.6rem;opacity:0;transform:translateX(4px);transition:opacity .2s,transform .2s;white-space:nowrap;background:var(--bg);padding:.15rem .35rem;border-radius:4px;pointer-events:none}
.rail:hover .lbl,.rail a:focus-visible .lbl{opacity:1;transform:none}
.rail .mark{width:8px;height:8px;border-radius:50%;border:1.5px solid var(--muted);flex:none}
.rail a[aria-current="true"]{color:var(--ink)}
.rail a[aria-current="true"] .mark{background:var(--accent);border-color:var(--accent);transform:scale(1.25)}
@media (min-width:1220px){.rail{display:flex}}

/* layout */
main{padding-top:calc(var(--bar) + env(safe-area-inset-top))}
.hero,.prose,.share{max-width:var(--prose);margin-inline:auto;padding-inline:max(1rem,env(safe-area-inset-left))}
.wide{max-width:var(--wide);margin-inline:auto;padding-inline:1rem}
.hero{padding-top:clamp(2rem,6vw,4.5rem);padding-bottom:1rem}
.kicker{font:600 .78rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin:0 0 1rem}
h1{font:600 clamp(2.05rem,5vw,3.05rem)/1.07 var(--display);letter-spacing:-.018em;margin:0 0 1.2rem;font-variation-settings:"SOFT" 50,"opsz" 144;text-wrap:balance}
.deck{font-size:clamp(1.15rem,2.2vw,1.38rem);line-height:1.5;color:var(--ink);margin:0 0 1.8rem;max-width:40rem}
.byline{font:400 .86rem/1.5 var(--sans);color:var(--muted);margin:1.6rem 0 0;max-width:40rem}
.byline a{color:inherit}
.hero-figs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.hf{background:var(--card);padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.25rem}
.hf-n{font:600 clamp(1.9rem,4.4vw,2.7rem)/1 var(--display);color:var(--k-cat);font-variant-numeric:lining-nums tabular-nums}
.hf:nth-child(2) .hf-n{color:var(--k-both)}
.hf-sw .hf-n{color:var(--k-cast)}
.hf-l{font:600 .92rem/1.3 var(--sans)}
.hf-s{font:400 .8rem/1.4 var(--sans);color:var(--muted)}
@media (max-width:640px){.hero-figs{grid-template-columns:1fr}.hf{flex-direction:row;flex-wrap:wrap;align-items:baseline;column-gap:.6rem}.hf-n{min-width:4.6ch}.hf-l{flex:1 1 12rem}.hf-s{flex-basis:100%}}

h2{font:600 clamp(1.5rem,3.2vw,2.05rem)/1.15 var(--display);letter-spacing:-.01em;margin:3.8rem 0 1rem;text-wrap:balance;position:relative}
.anchor{position:absolute;left:-1.3em;top:0;width:1.1em;color:var(--muted);text-decoration:none;opacity:0;font-weight:400;display:inline-flex;align-items:center;justify-content:center;min-height:44px;transform:translateY(-.3em)}
h2:hover .anchor,.anchor:focus-visible{opacity:1}
@media (max-width:760px){.anchor{position:static;opacity:.55;width:auto;margin-right:.3em;min-height:0;transform:none}}
.prose p{margin:0 0 1.15rem}
.prose{margin-bottom:.5rem}

/* share row */
.share{margin-top:1.4rem;margin-bottom:.5rem}
.share-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;scroll-margin-top:4.75rem}
.share-label{font:500 .8rem var(--sans);color:var(--muted);margin-right:.25rem}
.sh{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line-soft);background:transparent;color:var(--ink);cursor:pointer;padding:0;text-decoration:none}
.sh:hover,.sh:focus-visible{color:var(--accent);border-color:var(--accent)}
@media (pointer:coarse){.sh{width:44px;height:44px}}
.share-status{font:500 .8rem var(--sans);color:var(--muted);min-width:1px}

/* the conversation */
.convo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-template-rows:auto auto 1fr;gap:1rem 2.6rem;align-items:start;margin-block:1.6rem 2.2rem}
.chat{grid-column:1;display:flex;flex-direction:column;gap:.55rem;margin:0}
.bubble{margin:0;max-width:88%;padding:.7rem 1rem;border-radius:18px;font:400 1.05rem/1.4 var(--serif);font-style:italic}
.bubble.you{align-self:flex-start;background:color-mix(in srgb,var(--k-cat) 13%,var(--card));border:1px solid color-mix(in srgb,var(--k-cat) 35%,transparent);border-bottom-left-radius:5px}
.bubble.them{align-self:flex-end;background:color-mix(in srgb,var(--k-cast) 13%,var(--card));border:1px solid color-mix(in srgb,var(--k-cast) 35%,transparent);border-bottom-right-radius:5px}
.choices{grid-column:1;border:0;padding:0;margin:.4rem 0 0;display:flex;flex-direction:column;gap:.5rem;min-width:0}
.choices legend{font:600 1rem/1.4 var(--sans);margin-bottom:.7rem;padding:0}
.choice{font:500 .98rem/1.25 var(--sans);text-align:left;min-height:48px;padding:.7rem 1rem;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s}
.choice:hover{border-color:var(--ink)}
.choice[aria-pressed="true"]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--card));box-shadow:inset 3px 0 0 var(--accent)}
.convo-result{grid-column:1;font:500 1.06rem/1.5 var(--sans);margin:.4rem 0 0;min-height:3em}
.convo-result b{font-weight:700}
.grid-fig{margin:0}
.convo .grid-fig{grid-column:2;grid-row:1 / span 3}
@media (max-width:820px){.convo{grid-template-columns:minmax(0,1fr)}.convo .grid-fig{grid-column:1;grid-row:auto}}
.filters{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;font:500 .86rem var(--sans);margin-bottom:.8rem}
.filters select{font:500 .9rem var(--sans);min-height:44px;padding:.4rem 2rem .4rem .7rem;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);margin-left:.35rem;max-width:min(20rem,100%)}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.seg button{font:600 .86rem var(--sans);min-height:44px;min-width:58px;padding:0 .8rem;border:0;background:var(--card);color:var(--muted);cursor:pointer}
.seg button[aria-checked="true"]{background:var(--ink);color:var(--bg)}
.seg button:disabled{opacity:.4;cursor:not-allowed}
.dots-wrap{position:relative}
.dots{display:block;width:100%;max-width:440px;height:auto;margin:0 auto}
.dot{transition:fill .45s ease,opacity .45s ease,stroke-width .3s;stroke:var(--ink);stroke-width:0}
.dot.mine{stroke-width:1.1}
.k-keep{fill:var(--k-keep);background:var(--k-keep)}
.k-ask{fill:var(--k-ask);background:var(--k-ask)}
.k-switch{fill:var(--k-switch);background:var(--k-switch)}
.k-never{fill:var(--k-never);background:var(--k-never)}
.k-other,.k-pale{fill:var(--k-pale);background:var(--k-pale)}
.k-first{background:var(--k-other)}
.k-cat{fill:var(--k-cat);background:var(--k-cat)}
.k-all{fill:var(--k-all);background:var(--k-all)}
.k-both{fill:var(--k-both);background:var(--k-both)}
.k-cast{fill:var(--k-cast);background:var(--k-cast)}
.k-zero{fill:var(--k-zero);background:var(--k-zero)}
.k-usual{background:var(--k-usual)}
.veiled .dot{fill:var(--k-pale)}
.veiled .legend b{visibility:hidden}
.legend{list-style:none;margin:.9rem auto 0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem 1rem;font:500 .82rem/1.3 var(--sans);color:var(--ink);max-width:440px}
.legend.static{max-width:none;margin-top:.7rem}
.legend li{display:inline-flex;align-items:center;gap:.4rem}
.legend b{font-variant-numeric:tabular-nums}
.sw{display:inline-block;width:.8rem;height:.8rem;border-radius:50%;flex:none}
.legend li.is-mine{font-weight:700}
.grid-fig figcaption,.chart figcaption{font:400 .8rem/1.45 var(--sans);color:var(--muted);margin-top:.8rem}
.grid-fig figcaption{max-width:440px;margin-inline:auto}

/* scrolly: 100 adults */
.scrolly{max-width:var(--wide);margin:3rem auto 2rem;padding-inline:1rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 3rem}
.stage{position:sticky;top:calc(var(--bar) + env(safe-area-inset-top) + 1.5rem);align-self:start;height:min(80vh,560px);display:flex;align-items:center}
.stage .grid-fig{width:100%}
.steps{padding-bottom:20vh}
.step{min-height:62vh;display:flex;flex-direction:column;justify-content:center;opacity:.35;transition:opacity .35s}
.step.is-active{opacity:1}
.step p{margin:0;font-size:1.2rem}
.step-head{min-height:46vh}
.step-head h2{margin-top:0}
.step-head p{margin-top:.2rem}
@media (max-width:820px){
  .scrolly{grid-template-columns:1fr;margin-top:2rem}
  .stage{top:calc(var(--bar) + env(safe-area-inset-top) + .25rem);height:auto;z-index:2;background:var(--bg);padding:.5rem 0 .3rem;border-bottom:1px solid var(--line-soft)}
  .stage .dots{max-width:min(250px,56vw)}
  .stage .legend{margin-top:.4rem;justify-content:center;min-height:1.3em}
  .stage figcaption{display:none}
  .steps{padding-bottom:10vh}
  .step{min-height:48vh;opacity:1}
  .step p{background:var(--card);border:1px solid var(--line-soft);border-radius:12px;padding:.9rem 1rem;font-size:1.08rem}
  .step-head{min-height:auto;padding-top:1rem}
  .step-head p{background:none;border:0;padding:0}
}
@media (max-height:560px) and (max-width:820px){.stage{position:relative;top:0}}

/* charts */
.chart{max-width:var(--prose);margin:1.8rem auto 2rem;padding-inline:1rem}
.chart.wide{max-width:52rem}
.chart-title{font:650 .92rem/1.35 var(--sans)!important;color:var(--ink)!important;margin:0 0 .9rem!important}
.lc{display:block;width:100%;height:auto;font-family:var(--sans);overflow:visible}
.lc-w{display:none}
@media (min-width:640px){.lc-n{display:none}.lc-w{display:block}}
.lc .grid{stroke:var(--line-soft);stroke-width:1}
.lc .ax{fill:var(--muted)}
.lc polyline{fill:none;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.lc .pt{stroke:none}
.l-pop{stroke:var(--muted)}
polyline.l-pop{stroke-width:1.6;stroke-dasharray:4 4}
.pt.l-pop{fill:var(--muted)}
.l-speak{stroke:var(--k-cat)}
.pt.l-speak{fill:var(--k-cat)}
.l-cob{stroke:var(--k-both)}
.pt.l-cob{fill:var(--k-both)}
.l-cat{stroke:var(--k-both)}
polyline.l-cat{stroke-width:2;stroke-dasharray:6 4;opacity:.85}
.pt.l-cat{fill:var(--k-both)}
.lc .lab{font-weight:600}
.lc text.l-pop{fill:var(--muted)}
.lc text.l-speak{fill:var(--k-cat)}
.lc text.l-cob,.lc text.l-cat{fill:var(--k-both)}
.lc .lab-v{font-weight:500;fill:var(--muted)}
.lc .note{fill:var(--ink);font-style:italic;font-family:var(--serif)}

.hbars{display:flex;flex-direction:column;gap:.55rem}
.hb{display:grid;grid-template-columns:8.6rem minmax(0,1fr) auto;align-items:center;gap:.7rem;font:500 .84rem/1.25 var(--sans)}
.hb-track{position:relative;height:14px;background:var(--line-soft);border-radius:7px;overflow:hidden}
.hb-bar{position:absolute;left:0;top:0;bottom:0;border-radius:7px}
.hb-bar.k-usual{top:4px;bottom:4px;border-radius:4px}
.hb-bar.soft{opacity:.5}
.hb-v{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--ink)}
.hb-v small{font-size:.74rem;color:var(--muted)}
@media (max-width:560px){.first .hb{grid-template-columns:1fr auto;grid-template-areas:"l v" "t t";row-gap:.3rem}.first .hb-l{grid-area:l}.first .hb-v{grid-area:v}.first .hb-track{grid-area:t}}

.flows{display:flex;flex-direction:column;gap:1.1rem}
.fl p{margin:0}
.fl-h{font:500 .9rem/1.3 var(--sans);margin-bottom:.4rem!important}
.fl-h b{font-weight:650;margin-right:.35rem}
.fl-d{font:400 .78rem/1.4 var(--sans);color:var(--muted);margin-top:.35rem!important}
.st-track{display:flex;height:22px;gap:2px;border-radius:6px;overflow:hidden;background:transparent}
.st{display:block;height:100%;min-width:2px}

.fam{display:flex;flex-direction:column;gap:1.1rem}
.fam-h{font:650 .86rem var(--sans);margin:0 0 .4rem}
.fam .hb{grid-template-columns:10.5rem minmax(0,1fr) 3rem}
.fam .hb + .hb{margin-top:.35rem}
@media (max-width:480px){.fam .hb{grid-template-columns:8.2rem minmax(0,1fr) 2.6rem;font-size:.8rem}}

.where{display:flex;flex-direction:column;gap:.5rem}
.wh{display:grid;grid-template-columns:11rem minmax(0,1fr) 3rem;gap:.7rem;align-items:center;font:500 .86rem/1.2 var(--sans)}
.wh .st-track{height:18px}
.wh-v{text-align:right;font-variant-numeric:tabular-nums;font-weight:650;color:var(--k-cat)}
.wh-sub .wh-l{padding-left:1rem;color:var(--muted);font-style:italic}
@media (max-width:560px){.wh{grid-template-columns:1fr 2.8rem;grid-template-areas:"l v" "t t";row-gap:.25rem}.wh-l{grid-area:l}.wh-v{grid-area:v}.wh .st-track{grid-area:t}}

.day{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;align-items:end;height:250px;padding-top:.5rem}
.dy{display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}
.dy-col{position:relative;flex:1;width:100%;display:flex;align-items:flex-end}
.dy-bar{display:block;width:100%;background:var(--k-cat);border-radius:4px 4px 0 0;opacity:.88}
.dy:first-child .dy-bar{background:var(--k-zero)}
.dy-tick{position:absolute;left:-2px;right:-2px;height:0;border-top:2px solid var(--ink)}
.dy-v{font:600 .72rem/1 var(--sans);margin-top:.35rem;font-variant-numeric:tabular-nums}
.dy-l{font:400 .64rem/1.15 var(--sans);color:var(--muted);margin-top:.2rem;text-align:center;writing-mode:horizontal-tb}
@media (max-width:560px){.day{height:200px;gap:2px}.dy-l{writing-mode:vertical-rl;transform:rotate(180deg);height:4.2em;font-size:.62rem}.dy-v{font-size:.62rem}}

/* limits and sources */
.limits{padding-left:1.2rem;margin:0 0 1.4rem}
.limits li{margin-bottom:.7rem}
.coda{font-style:italic;font-size:1.25rem;line-height:1.5;border-top:1px solid var(--line);padding-top:1.3rem;margin-top:2rem!important}
.sources{font-size:1rem}
.src-list{padding-left:1.1rem;font:400 .9rem/1.5 var(--sans)}
.src-list li{margin-bottom:.45rem}
.site-footer{max-width:var(--prose);margin:4rem auto 0;padding:1.6rem 1rem 5rem;border-top:1px solid var(--line);font:400 .82rem/1.5 var(--sans);color:var(--muted)}
.site-footer a{color:inherit}
.site-footer p{margin:0 0 .4rem}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  .step{opacity:1}
}

.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* language chips: four editions */
.langs{display:flex;gap:.1rem;flex:none;min-width:0}
.langs a{display:inline-grid;place-items:center;min-width:1.9rem;min-height:34px;padding:0 .3rem;border-radius:6px;font:650 .7rem/1 var(--sans);letter-spacing:.04em;color:var(--muted)!important}
.langs a:hover{color:var(--ink)!important}
.langs a[aria-current="page"]{color:var(--ink)!important;box-shadow:inset 0 -2px 0 var(--accent)}
@media (pointer:coarse){.langs a{min-height:44px;min-width:2.1rem}}
@media (max-width:560px){.topnav{display:none}.topbar{gap:.5rem}}

/* opening picture: the question and its answer as 100 dots */
.hero-art{display:none;margin:0}
@media (min-width:1100px){
  .hero{max-width:74rem;display:grid;grid-template-columns:minmax(0,39rem) minmax(0,1fr);gap:clamp(2.5rem,5vw,5rem);align-items:center}
  .hero-art{display:flex;flex-direction:column;gap:.6rem;padding-top:1.5rem}
  .hero-art .bubble{font-size:1.12rem}
  .hero-art .bubble.them{margin-bottom:1rem}
  .hero-dots{max-width:400px;margin:0 auto}
  .hero-dots .dot{animation:dotIn .55s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(220ms + var(--i) * 9ms);transform-box:fill-box;transform-origin:center}
}
@keyframes dotIn{from{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}

/* a shared answer, and the way back */
.shared-note{border-left:3px solid var(--k-switch);background:var(--card);padding:.8rem 1rem;border-radius:0 12px 12px 0;margin:0 0 1.4rem;font:500 1rem/1.5 var(--sans)}
.shared-note[hidden],.clear[hidden],.ans-rule[hidden]{display:none!important}
.shared-note p{margin:0}
.shared-tools{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:center;margin-top:.5rem!important;font-size:.92rem}
.clear{font:600 .86rem var(--sans);min-height:44px;padding:0 .9rem;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.clear:hover{border-color:var(--ink)}
.convo-out{grid-column:1}
.convo-out .convo-result{margin-bottom:.8rem}
.answer-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}
.ans-rule{font:400 .8rem/1.4 var(--sans);color:var(--muted);margin:.5rem 0 0}

/* answer pages (seen only by readers whose browser does not move them on) */
.answer-main{max-width:var(--prose);margin:0 auto;padding:4rem 1rem}
.answer-main .go{font:600 1rem var(--sans)}
.hf-n small{font-size:.44em;font-weight:600;letter-spacing:0;margin-left:.1em;white-space:nowrap}
.sh[hidden]{display:none}
.filters label{min-width:0;max-width:100%}
