/*
Theme Name: Asked Next
Theme URI: https://asked-next.example/
Author: WE Web Design
Author URI: https://example.org/
Description: The Nashville FAQ: every question about the city answered on its own page, and each answer leading to the questions asked next. The front page opens on a question mark over the Nashville skyline, then every question, narrowed as you type, then the latest answers as cards that open in place. A question page opens on its short answer, then the text, with its sections and the questions asked before it beside it, and the questions asked next at the end. The footer links the questions the publisher chose, side by side. No web font, no image. Night violet and neon rose on morning grey; neon cyan and pink at night. Categories, tags and author archives are never shown or linked.
Version: 1.0.1
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: asked-next
Tags: blog, grid-layout, custom-menu, threaded-comments, translation-ready, block-patterns, wide-blocks, editor-style
*/

/* ========================================================================
   1. TOKENS - night violet + neon rose on morning grey, neon cyan + pink at night (34/34 token pairs AA, worst 5.02:1); system faces only (no web font), Georgia headings
   ======================================================================== */
:root{
  --paper:#f3f6fa;
  --paper-2:#e4ebf3;
  --ink:#10151f;
  --ink-2:#2e3746;
  --ink-3:#4a5466;
  --rule:#cfd8e3;
  --card:#ffffff;
  --accent:#441976;
  --accent-2:#a33e70;
  --warn:#9a4708;
  --warn-soft:#fef3c7;
  --safe:#0e7490;
  --safe-soft:#e0f2fe;
  --link:var(--accent);
  --focus:#10151f;

  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --serif:Georgia,'DejaVu Serif',serif;
  --mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;

  --measure:42rem;
  --measure-wide:64rem;
  --shell:84rem;

  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-5:1.5rem;
  --space-6:2rem;
  --space-7:3rem;
  --space-8:4rem;
  --space-9:6rem;

  --radius-1:.25rem;
  --radius-2:.5rem;
  --radius-3:.75rem;

  --shadow-1:0 1px 2px rgba(26,36,33,.06),0 1px 1px rgba(26,36,33,.04);
  --shadow-2:0 4px 12px rgba(26,36,33,.08),0 2px 4px rgba(26,36,33,.04);

  --z-base:0;
  --z-sticky:10;
  --z-rail:20;
  --z-progress:30;
  --z-topbar:40;
  --z-drawer:50;
  --z-skip:999;

  color-scheme:light;
}
[data-theme="dark"]{
  --paper:#0b0f17;
  --paper-2:#151b26;
  --ink:#e8edf5;
  --ink-2:#c2cbd8;
  --ink-3:#97a2b3;
  --rule:#263042;
  --card:#10151e;
  --accent:#35cfd4;
  --accent-2:#fa3dbb;
  --warn:#fbbf24;
  --warn-soft:#1c1410;
  --safe:#7dd3fc;
  --safe-soft:#0c1f2e;
  --link:var(--accent);
  --focus:#e4ebf3;
  --shadow-1:0 1px 2px rgba(0,0,0,.4),0 1px 1px rgba(0,0,0,.3);
  --shadow-2:0 4px 12px rgba(0,0,0,.5),0 2px 4px rgba(0,0,0,.4);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0b0f17;
    --paper-2:#151b26;
    --ink:#e8edf5;
    --ink-2:#c2cbd8;
    --ink-3:#97a2b3;
    --rule:#263042;
    --card:#10151e;
    --accent:#35cfd4;
    --accent-2:#fa3dbb;
    --warn:#fbbf24;
    --warn-soft:#1c1410;
    --safe:#7dd3fc;
    --safe-soft:#0c1f2e;
    --link:var(--accent);
    --focus:#e4ebf3;
    --shadow-1:0 1px 2px rgba(0,0,0,.4),0 1px 1px rgba(0,0,0,.3);
    --shadow-2:0 4px 12px rgba(0,0,0,.5),0 2px 4px rgba(0,0,0,.4);
    color-scheme:dark;
  }
}

/* ========================================================================
   2. RESET + BASE
   ======================================================================== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:1.0625rem;
  line-height:1.7;
  font-feature-settings:'ss01','kern','liga';
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
img{aspect-ratio:attr(width)/attr(height)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
a{color:var(--link);text-underline-offset:.18em;text-decoration-thickness:.06em}
a:hover{text-decoration-thickness:.12em}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--focus);
  outline-offset:2px;
  border-radius:var(--radius-1);
}
hr{border:0;border-top:1px solid var(--rule);margin:var(--space-6) 0}
::selection{background:var(--accent);color:var(--paper)}

/* ========================================================================
   3. SKIP LINK (WD-9 — focus override mandatory)
   ======================================================================== */
.skip-link{
  position:absolute;
  left:-9999px;top:-9999px;
  width:auto;height:auto;
  clip:auto;clip-path:none;overflow:visible;
  background:var(--ink);
  color:var(--paper);
  padding:.75rem 1.25rem;
  border-radius:var(--radius-2);
  font-weight:600;
  z-index:var(--z-skip);
  text-decoration:none;
}
.skip-link:focus{left:1rem;top:1rem}

/* ========================================================================
   4. TYPOGRAPHY (WD-10, WD-14)
   ======================================================================== */
h1,h2,h3,h4,h5,h6{
  font-family:var(--serif);
  font-weight:600;
  line-height:1.2;
  letter-spacing:-.01em;
  margin:2.4rem 0 .8rem;
  color:var(--ink);
  text-wrap:balance;
}
h1{font-size:clamp(2rem,4.2vw,2.75rem);line-height:1.15;letter-spacing:-.02em;margin-top:0}
h2{font-size:clamp(1.5rem,2.6vw,1.875rem)}
h3{font-size:clamp(1.25rem,2vw,1.4rem)}
h4{font-size:1.125rem}
h5,h6{font-size:1rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2)}
p{margin:0 0 1.1rem;text-wrap:pretty}
strong,b{font-weight:600;color:var(--ink)}
em,i{font-style:italic}
small{font-size:.8125rem;color:var(--ink-2)}
blockquote{
  border-left:3px solid var(--accent);
  margin:1.6rem 0;
  padding:.4rem 0 .4rem 1.2rem;
  font-family:var(--serif);
  font-size:1.125rem;
  font-style:italic;
  color:var(--ink-2);
}
blockquote cite{display:block;font-style:normal;font-size:.875rem;color:var(--ink-3);margin-top:.4rem}
code,kbd,pre,samp{font-family:ui-monospace,'SF Mono','Menlo','Consolas',monospace;font-size:.9em}
:not(pre)>code{background:var(--paper-2);padding:.15em .4em;border-radius:var(--radius-1);color:var(--ink)}
pre{
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:var(--radius-2);
  padding:1rem 1.2rem;
  overflow-x:auto;
  font-size:.875rem;
  line-height:1.55;
  margin:1.5rem 0;
}
ul,ol{margin:0 0 1.2rem;padding-left:1.4rem}
li{margin:.4rem 0}
ul li::marker{color:var(--accent)}
dl{margin:1.2rem 0}
dt{font-weight:600;margin-top:.8rem}
dd{margin:0 0 .4rem 1.2rem;color:var(--ink-2)}
table{border-collapse:collapse;width:100%;margin:1.5rem 0;font-size:.95rem}
th,td{padding:.6rem .8rem;text-align:left;border-bottom:1px solid var(--rule);vertical-align:top}
th{font-weight:600;color:var(--ink);background:var(--paper-2)}
tbody tr:hover{background:var(--paper-2)}
figure{margin:1.6rem 0}
figcaption{font-size:.875rem;color:var(--ink-3);text-align:center;margin-top:.5rem;font-style:italic}

/* ========================================================================
   5. LAYOUT — page shell
   ======================================================================== */
.page-shell{min-height:100vh;display:flex;flex-direction:column}
.site-main{flex:1 0 auto}
.wrap{max-width:var(--shell);margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}

/* ========================================================================
   6. TOPBAR (WD-7 touch 44+)
   ======================================================================== */
.topbar{
  position:sticky;top:0;z-index:var(--z-topbar);
  background:color-mix(in oklab,var(--paper) 92%,transparent);
  backdrop-filter:saturate(160%) blur(10px);
  -webkit-backdrop-filter:saturate(160%) blur(10px);
  border-bottom:1px solid var(--rule);
}
.topbar__inner{
  max-width:var(--shell);
  margin:0 auto;
  padding:.6rem clamp(1rem,4vw,2rem);
  display:flex;align-items:center;gap:1rem;
  min-height:60px;
}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}
.brand:hover{text-decoration:none}
.brand__mark{
  width:34px;height:34px;border-radius:50%;
  background:var(--accent);
  color:var(--paper);
  font-family:var(--serif);
  font-weight:600;
  font-size:1.05rem;
  display:grid;place-items:center;
  letter-spacing:-.02em;
}
.brand__name{font-family:var(--serif);font-weight:600;font-size:1.125rem;letter-spacing:-.01em}
.topbar__inner{flex-wrap:wrap;row-gap:.35rem}
.brand{flex:1 1 auto;min-width:0;min-height:44px}
.brand__mark{flex:0 0 auto}
.brand__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar__nav{display:flex;order:4;flex:1 1 100%;flex-wrap:wrap;gap:0 1.2rem;font-size:.95rem;align-items:center}
.topbar__nav a{color:var(--ink-2);text-decoration:none;padding:.6rem 0;min-height:44px;display:inline-flex;align-items:center}
.topbar__nav a:hover,.topbar__nav a[aria-current="page"]{color:var(--ink)}
.topbar__search{order:3;flex:1 1 100%;min-width:0}
.theme-toggle{order:2;flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ink-2)}
.theme-toggle:hover{color:var(--ink);background:var(--paper-2)}
.theme-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.theme-toggle .sun{display:none}
[data-theme="dark"] .theme-toggle .moon{display:none}
[data-theme="dark"] .theme-toggle .sun{display:block}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .theme-toggle .moon{display:none}
  :root:not([data-theme="light"]) .theme-toggle .sun{display:block}
}
@media (min-width:48rem){
  .topbar__inner{flex-wrap:nowrap}
  .brand{flex:0 0 auto}
  .topbar__nav{order:0;flex:0 1 auto;margin-left:auto;flex-wrap:nowrap}
  .topbar__search{order:0;flex:0 1 20rem;margin-left:auto}
  .topbar__nav + .topbar__search{margin-left:0}
  .theme-toggle{order:0}
}

/* ========================================================================
   7. SEARCH INPUT
   ======================================================================== */
.search-form{position:relative;width:100%}
.search-form__input{
  width:100%;
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:999px;
  padding:.55rem 3rem .55rem 2.4rem;
  font-size:1rem;
  min-height:44px;
  color:var(--ink);
}
.search-form__input::placeholder{color:var(--ink-3)}
.search-form__icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--ink-3);pointer-events:none}
.search-form__submit{position:absolute;right:.05rem;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--ink-2);background:transparent}
.search-form__submit:hover{color:var(--ink);background:var(--paper)}

/* ========================================================================
   8. READING PROGRESS BAR (WD-16 reduced-motion respect)
   ======================================================================== */
.reading-progress{
  position:fixed;top:0;left:0;right:0;height:3px;
  z-index:var(--z-progress);
  background:transparent;
  pointer-events:none;
}
.reading-progress__bar{
  display:block;height:100%;width:0;
  background:var(--accent);
  transition:width .12s linear;
  transform-origin:left;
}
@media (prefers-reduced-motion:reduce){
  .reading-progress__bar{transition:none}
}

/* ========================================================================
   9-10. (front-page hero + magazine grid removed)
   The front page is the Nashville FAQ: the question mark over the skyline, every question (narrowed as you type), the latest answers as cards that open in place (section 28).
   ======================================================================== */

/* ========================================================================
   11. ARTICLE — two-column long-form
   ======================================================================== */
.article-shell{
  max-width:var(--measure-wide);
  margin:0 auto;
  padding:clamp(2rem,4vw,3rem) clamp(1rem,4vw,2rem);
}
.article-main{min-width:0;max-width:46rem;margin-inline:auto}
.article-main--page{margin-inline:auto;padding-block:clamp(2.5rem,5vw,4rem)}

/* ========================================================================
   11b. COLLAPSIBLE SUMMARY CARD (optional — sits at top of article)
   ======================================================================== */
.tldr-card{
  background:var(--card);
  border:1px solid var(--rule);
  border-left:4px solid var(--accent);
  border-radius:var(--radius-3);
  padding:1.2rem 1.4rem;
  margin:0 0 2rem;
  box-shadow:var(--shadow-1);
}
.tldr-card[open] summary{margin-bottom:.8rem}
.tldr-card summary{
  cursor:pointer;
  display:flex;align-items:center;gap:.6rem;
  list-style:none;
  font-family:var(--serif);
  font-size:1rem;
  font-weight:600;
  color:var(--accent-2);
  letter-spacing:-.005em;
  min-height:32px;
}
.tldr-card summary::-webkit-details-marker{display:none}
.tldr-card summary::before{
  content:'';
  width:0;height:0;
  border-left:5px solid currentColor;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  transition:transform .15s ease;
  flex-shrink:0;
}
.tldr-card[open] summary::before{transform:rotate(90deg)}
.tldr-card__label{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:700;
  color:var(--accent);
  margin-right:auto;
}
.tldr-card p,.tldr-card ul,.tldr-card ol{
  font-size:.985rem;
  line-height:1.65;
  color:var(--ink-2);
  margin:0 0 .8rem;
}
.tldr-card p:last-child,.tldr-card ul:last-child,.tldr-card ol:last-child{margin-bottom:0}
@media (prefers-reduced-motion:reduce){
  .tldr-card summary::before{transition:none}
}

/* ========================================================================
   11c. FOOTNOTE-STYLE REFERENCES (sourced citations, bottom of article)
   ======================================================================== */
.article-refs{
  margin:3rem 0 0;
  padding:1.6rem 0 0;
  border-top:2px solid var(--accent);
}
.article-refs__heading{
  font-family:var(--serif);
  font-size:1.05rem;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.1em;
  margin:0 0 1rem;
  color:var(--ink);
}
.article-refs__list{
  list-style:none;
  margin:0;padding:0;
  counter-reset:refs;
  font-size:.9rem;
  line-height:1.55;
}
.article-refs__list li{
  counter-increment:refs;
  display:flex;
  gap:.6rem;
  margin:.6rem 0;
  color:var(--ink-2);
}
.article-refs__list li::before{
  content:counter(refs);
  font-family:var(--mono);
  font-size:.8rem;
  font-weight:600;
  color:var(--accent-2);
  min-width:1.6rem;
  text-align:right;
  flex-shrink:0;
}
.article-refs__list a{color:var(--link);text-underline-offset:.16em;word-break:break-word}
.article-refs__source{font-style:italic;color:var(--ink-3)}

/* In-prose footnote callout */
.prose sup.fn-ref{
  font-family:var(--mono);
  font-size:.72em;
  font-weight:600;
  vertical-align:super;
  line-height:0;
}
.prose sup.fn-ref a{
  color:var(--accent-2);
  text-decoration:none;
  padding:0 .15em;
  background:var(--paper-2);
  border-radius:.2em;
}
.prose sup.fn-ref a:hover{background:var(--accent);color:var(--paper)}

/* ========================================================================
   11d. INLINE RELATED CARD (in-flow related card)
   ======================================================================== */
.inline-related-card{
  background:var(--card);
  border:1px solid var(--rule);
  border-left:3px solid var(--accent);
  border-radius:var(--radius-3);
  padding:1.1rem 1.3rem;
  margin:2rem 0;
  display:flex;flex-direction:column;gap:.4rem;
}
.inline-related-card__label{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:700;
  color:var(--ink-3);
}
.inline-related-card__title{font-family:var(--serif);font-size:1.05rem;line-height:1.3;margin:0;letter-spacing:-.01em}
.inline-related-card__title a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule)}
.inline-related-card__title a:hover{color:var(--accent-2);border-bottom-color:var(--accent)}
.inline-related-card__why{font-size:.95rem;color:var(--ink-2);margin:.2rem 0 0;line-height:1.55}

/* Decision/comparison card — two options side by side */
.diy-vs-pro{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
  border:1px solid var(--rule);
  border-radius:var(--radius-3);
  overflow:hidden;
  margin:2rem 0;
}
@media (min-width:720px){.diy-vs-pro{grid-template-columns:1fr 1fr}}
.diy-vs-pro__col{padding:1.2rem 1.4rem;display:flex;flex-direction:column;gap:.5rem}
.diy-vs-pro__col--safe{background:var(--safe-soft);border-bottom:1px solid var(--rule)}
.diy-vs-pro__col--pro{background:var(--warn-soft)}
@media (min-width:720px){
  .diy-vs-pro__col--safe{border-bottom:0;border-right:1px solid var(--rule)}
}
.diy-vs-pro__label{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.72rem;
  font-weight:700;
}
.diy-vs-pro__col--safe .diy-vs-pro__label{color:var(--safe)}
.diy-vs-pro__col--pro .diy-vs-pro__label{color:var(--warn)}
.diy-vs-pro__title{font-family:var(--serif);font-size:1.05rem;font-weight:600;margin:0;color:var(--ink)}
.diy-vs-pro__body{font-size:.925rem;color:var(--ink-2);line-height:1.55;margin:0}
.diy-vs-pro__body ul{margin:.4rem 0 0;padding-left:1.2rem}
.diy-vs-pro__body li{margin:.2rem 0}

/* ========================================================================
   12. ARTICLE HEAD
   ======================================================================== */
.post__header{margin-bottom:2rem}
.post__kicker{
  display:inline-block;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.78rem;
  font-weight:600;
  color:var(--accent-2);
  text-decoration:none;
  margin-bottom:.8rem;
}
.post__kicker:hover{color:var(--accent)}
.post__title{
  font-family:var(--serif);
  font-size:clamp(2rem,4vw,2.75rem);
  line-height:1.12;
  letter-spacing:-.02em;
  margin:0 0 1rem;
  text-wrap:balance;
}
.post__byline{
  display:flex;flex-wrap:wrap;gap:1rem 1.4rem;
  font-size:.875rem;color:var(--ink-3);
  margin:0 0 1.4rem;
  padding:0;
}
.post__byline > span{display:inline-flex;align-items:baseline;gap:.4rem}
.post__byline .label{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.7rem;
  font-weight:600;
  color:var(--ink-3);
}
.post__byline time{color:var(--ink-2)}
.post__featured-img{margin:0 0 2rem;border-radius:var(--radius-3);overflow:hidden;border:1px solid var(--rule)}
.post__featured-img img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}

/* ========================================================================
   13. PROSE — body content (long-form readability)
   ======================================================================== */
.prose{font-size:1.0625rem;line-height:1.75}
/* A raw URL or a long unbroken string in the content must wrap instead of
   widening the page on a phone (tema 53: a references list of raw URLs pushed
   the page to 473px at 320). Tables are excluded - they scroll in their region. */
.prose :is(p,li,dd,dt,blockquote,figcaption,h2,h3,h4){overflow-wrap:anywhere}
.prose > * + *{margin-top:0}
.prose p{margin:0 0 1.2rem}
.prose h2{margin:2.6rem 0 .9rem;scroll-margin-top:5rem;font-size:clamp(1.4rem,2.4vw,1.75rem)}
.prose h3{margin:2rem 0 .7rem;scroll-margin-top:5rem;font-size:clamp(1.15rem,1.8vw,1.3rem)}
.prose h2:first-child,.prose h3:first-child{margin-top:0}
.prose ul,.prose ol{margin:0 0 1.2rem;padding-left:1.6rem}
.prose li{margin:.5rem 0}
.prose img{border-radius:var(--radius-2);border:1px solid var(--rule);margin:1.6rem 0}
.prose a{color:var(--link)}
.prose a:hover{color:var(--accent)}

/* ========================================================================
   14. TL;DR CARD (block pattern)
   ======================================================================== */
.tldr{
  background:var(--card);
  border:1px solid var(--rule);
  border-left:3px solid var(--accent);
  border-radius:var(--radius-3);
  padding:1.2rem 1.4rem;
  margin:0 0 2rem;
}
.tldr__label{
  display:block;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:700;
  color:var(--accent-2);
  margin-bottom:.5rem;
}
.tldr p{margin:0 0 .6rem;font-size:.985rem;line-height:1.6;color:var(--ink-2)}
.tldr p:last-child{margin-bottom:0}
.tldr ul,.tldr ol{margin:.4rem 0 0;padding-left:1.2rem;font-size:.975rem;color:var(--ink-2)}

/* ========================================================================
   15. LEGAL DISCLAIMER CALLOUT
   ======================================================================== */
.legal-disclaimer{
  background:var(--warn-soft);
  border:1px solid color-mix(in oklab,var(--warn) 35%,var(--rule));
  border-radius:var(--radius-3);
  padding:1.1rem 1.3rem;
  margin:0 0 2rem;
  font-size:.925rem;
  line-height:1.55;
  color:var(--ink-2);
}
.legal-disclaimer__label{
  display:flex;align-items:center;gap:.5rem;
  font-weight:700;
  color:var(--warn);
  margin-bottom:.4rem;
  font-size:.85rem;
  letter-spacing:.04em;
}
.legal-disclaimer__label::before{
  content:'';
  display:inline-block;
  width:14px;height:14px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'><path d='M12 2L1 21h22L12 2zm0 6l7.5 13h-15L12 8zm-1 4v4h2v-4h-2zm0 5v2h2v-2h-2z'/></svg>") no-repeat center / contain;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'><path d='M12 2L1 21h22L12 2zm0 6l7.5 13h-15L12 8zm-1 4v4h2v-4h-2zm0 5v2h2v-2h-2z'/></svg>") no-repeat center / contain;
  flex-shrink:0;
}
.legal-disclaimer p{margin:0 0 .5rem}
.legal-disclaimer p:last-child{margin-bottom:0}

/* ========================================================================
   16. CALLOUT (general block pattern, info/warning)
   ======================================================================== */
.callout{
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-left:3px solid var(--accent);
  border-radius:var(--radius-3);
  padding:1rem 1.2rem;
  margin:1.6rem 0;
  font-size:.975rem;
}
.callout.is-style-warning{
  border-left-color:var(--warn);
  background:var(--warn-soft);
}
.callout p{margin:0 0 .6rem}
.callout p:last-child{margin-bottom:0}

/* ========================================================================
   17. META RAIL (right column on article)
   ======================================================================== */
.meta-rail__group{margin-bottom:1.4rem;padding-bottom:1.4rem;border-bottom:1px solid var(--rule)}
.meta-rail__group:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}
.meta-rail__label{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.72rem;
  font-weight:700;
  color:var(--ink-3);
  margin:0 0 .55rem;
}
.meta-rail__value{font-size:.925rem;color:var(--ink-2);margin:0;line-height:1.5}
.meta-rail__value strong{color:var(--ink);font-weight:600}

/* ========================================================================
   18. TOC (table of contents — scrollspy)
   ======================================================================== */
.toc__list{list-style:none;margin:0;padding:0;font-size:.9rem;line-height:1.4}
.toc__list li{margin:.35rem 0}
.toc__list a{
  color:var(--ink-2);
  text-decoration:none;
  display:block;
  padding:.2rem .55rem;
  border-left:2px solid transparent;
  border-radius:0 var(--radius-1) var(--radius-1) 0;
  transition:color .15s ease,border-color .15s ease,background .15s ease;
}
.toc__list a:hover{color:var(--ink);background:var(--paper-2)}
.toc__list a.is-active{
  color:var(--accent-2);
  border-left-color:var(--accent);
  background:var(--paper-2);
  font-weight:600;
}
@media (prefers-reduced-motion:reduce){
  .toc__list a{transition:none}
}
.toc__list .toc-h3{padding-left:.9rem;font-size:.85rem;color:var(--ink-3)}
.toc__list .toc-h3 a{padding-left:.9rem}

/* ========================================================================
   19. MOBILE TOC DRAWER
   ======================================================================== */
.inline-toc{
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:var(--radius-3);
  padding:.8rem 1.2rem;
  margin:0 0 2rem;
}
.inline-toc summary{
  cursor:pointer;
  font-weight:600;
  font-size:.95rem;
  color:var(--ink);
  list-style:none;
  display:flex;align-items:center;gap:.5rem;
  padding:.3rem 0;
  min-height:32px;
}
.inline-toc summary::-webkit-details-marker{display:none}
.inline-toc summary::before{
  content:'';
  display:inline-block;
  width:0;height:0;
  border-left:5px solid currentColor;
  border-top:4px solid transparent;
  border-bottom:4px solid transparent;
  transition:transform .15s ease;
  flex-shrink:0;
}
.inline-toc[open] summary::before{transform:rotate(90deg)}
.inline-toc .toc__list{margin-top:.6rem;padding-left:.4rem}
@media (prefers-reduced-motion:reduce){
  .inline-toc summary::before{transition:none}
}

.toc-drawer-toggle{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:999px;
  padding:.5rem 1rem;
  font-size:.9rem;
  color:var(--ink-2);
  margin:0 0 1rem;
  min-height:44px;
}
.toc-drawer-toggle:hover{color:var(--ink);background:var(--card)}
@media (min-width:1080px){
  .toc-drawer-toggle{display:none}
}
.toc-drawer{
  position:fixed;
  inset:0;
  z-index:var(--z-drawer);
  background:rgba(26,36,33,.5);
  display:none;
  padding:5rem 1rem 1rem;
}
.toc-drawer[data-open="true"]{display:block}
.toc-drawer__panel{
  background:var(--paper);
  border:1px solid var(--rule);
  border-radius:var(--radius-3);
  padding:1.4rem;
  max-width:32rem;
  margin:0 auto;
  max-height:80vh;
  overflow:auto;
}
.toc-drawer__close{
  float:right;
  width:36px;height:36px;
  display:grid;place-items:center;
  border-radius:var(--radius-2);
  color:var(--ink-2);
}
.toc-drawer__close:hover{color:var(--ink);background:var(--paper-2)}

/* ========================================================================
   20. PAGINATION
   ======================================================================== */
.pagination{
  display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;
  margin:3rem 0 2rem;
  padding-top:1.5rem;
  border-top:1px solid var(--rule);
}
.pagination a,.pagination span{
  display:inline-grid;place-items:center;
  min-width:44px;height:44px;
  padding:0 .8rem;
  border-radius:var(--radius-2);
  font-size:.95rem;
  color:var(--ink-2);
  text-decoration:none;
  border:1px solid var(--rule);
}
.pagination a:hover{color:var(--ink);background:var(--paper-2);border-color:var(--ink-3)}
.pagination .current{background:var(--accent);color:var(--paper);border-color:var(--accent);font-weight:600}
.pagination .dots{border:0;background:transparent}

/* ========================================================================
   21. POST NAV (prev / next)
   ======================================================================== */
.post-nav{
  display:grid;
  grid-template-columns:1fr;
  gap:1rem;
  margin:3rem 0 0;
  padding-top:1.6rem;
  border-top:1px solid var(--rule);
}
@media (min-width:640px){.post-nav{grid-template-columns:1fr 1fr}}
.post-nav a{
  display:block;
  padding:1rem 1.2rem;
  background:var(--card);
  border:1px solid var(--rule);
  border-radius:var(--radius-3);
  text-decoration:none;
  color:var(--ink);
  transition:border-color .15s ease;
}
.post-nav a:hover{border-color:var(--accent)}
.post-nav__label{
  display:block;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.72rem;
  font-weight:600;
  color:var(--ink-3);
  margin-bottom:.3rem;
}
.post-nav__title{font-family:var(--serif);font-size:1.025rem;line-height:1.3;color:var(--ink)}
.post-nav__next{text-align:right}

/* ========================================================================
   22. FOOTER
   ======================================================================== */
.site-footer{
  border-top:1px solid var(--rule);
  padding:clamp(2.5rem,5vw,4rem) 0 clamp(1.5rem,3vw,2.5rem);
  margin-top:clamp(3rem,6vw,5rem);
  font-size:.925rem;
  color:var(--ink-2);
}
.site-footer__top{
  display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.6rem;
  margin-bottom:2rem;
  padding-bottom:1.6rem;
  border-bottom:1px solid var(--rule);
}
.site-footer__brand{display:flex;flex-direction:column;gap:.4rem;max-width:24rem}
.site-footer__name{font-family:var(--serif);font-weight:600;font-size:1.05rem;color:var(--ink)}
.site-footer__tag{color:var(--ink-3);font-size:.9rem;line-height:1.5;margin:0}
.site-footer__links{display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.9rem}
.site-footer__links a{color:var(--ink-2);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.site-footer__links a:hover{color:var(--ink)}
.site-footer__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;font-size:.825rem;color:var(--ink-3)}
.site-footer__disclaimer{max-width:50rem;line-height:1.55;color:var(--ink-3);font-size:.825rem;margin:1rem 0 0}

/* ========================================================================
   23. COMMENTS
   ======================================================================== */
.comments-area{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--rule)}
.comments-title{font-family:var(--serif);font-size:1.4rem;margin:0 0 1.4rem}
.comment-list{list-style:none;margin:0;padding:0}
.comment-list li{margin:0 0 1.4rem;padding:1rem 1.2rem;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-3)}
.comment-meta{font-size:.875rem;color:var(--ink-3);margin-bottom:.5rem}
.comment-meta cite{font-style:normal;color:var(--ink);font-weight:600}
.comment-form label{display:block;font-size:.875rem;margin:.8rem 0 .3rem;color:var(--ink-2);font-weight:500}
.comment-form input[type="text"],.comment-form input[type="email"],.comment-form input[type="url"],.comment-form textarea{
  width:100%;
  background:var(--paper-2);
  border:1px solid var(--rule);
  border-radius:var(--radius-2);
  padding:.6rem .8rem;
  font:inherit;
  color:var(--ink);
  min-height:44px;
}
.comment-form textarea{min-height:8rem;resize:vertical}
.form-submit input[type="submit"],.button{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--accent);
  color:var(--paper);
  border:0;
  padding:.7rem 1.4rem;
  border-radius:var(--radius-2);
  font:inherit;
  font-weight:600;
  cursor:pointer;
  min-height:44px;
  min-width:44px;
  transition:background .15s ease;
}
.form-submit input[type="submit"]:hover,.button:hover{background:var(--accent-2)}
@media (prefers-reduced-motion:reduce){
  .form-submit input[type="submit"],.button{transition:none}
}

/* ========================================================================
   24. 404 / SEARCH
   ======================================================================== */
.error-404,.search-results-head{padding:clamp(3rem,6vw,5rem) 0;text-align:center}
.error-404__code{font-family:var(--serif);font-size:clamp(4rem,12vw,7rem);line-height:1;color:var(--accent);letter-spacing:-.04em;margin:0}
.error-404__title{font-family:var(--serif);font-size:clamp(1.6rem,3vw,2rem);margin:.6rem 0 1rem}
.error-404__lede{color:var(--ink-2);max-width:36rem;margin:0 auto 1.4rem;line-height:1.6}
.error-404__suggest{max-width:34rem;margin:1.6rem auto 0;text-align:left}

/* ========================================================================
   25. WP HELPERS
   ======================================================================== */
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;padding:0;margin:-1px;border:0;word-wrap:normal!important}
.alignleft{float:left;margin:.5rem 1.4rem 1rem 0}
.alignright{float:right;margin:.5rem 0 1rem 1.4rem}
.aligncenter{margin-left:auto;margin-right:auto;display:block}
.alignwide{max-width:min(var(--measure-wide),100%);margin-left:auto;margin-right:auto}
.alignfull{max-width:100%;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}
.wp-block-image img{border-radius:var(--radius-2)}
.wp-block-quote{border-left:3px solid var(--accent);padding:.4rem 0 .4rem 1.2rem;margin:1.6rem 0;font-family:var(--serif);font-style:italic;color:var(--ink-2)}
.wp-block-pullquote{border:0;padding:1.5rem 1.5rem;text-align:left;font-family:var(--serif);font-size:1.3rem;line-height:1.4}
.wp-block-table{margin:1.5rem 0}
.wp-block-table table{border:1px solid var(--rule)}

/* ========================================================================
   28. THE FAQ
   Front page as the Nashville FAQ: the head (the title, a question mark in a speech bubble over the Nashville skyline,
   drawn in the page) and what the site holds; every question in the order of the site, row by row in its own
   scrolling box, narrowed as you type; then the answers, newest first, each a card that opens in place on its short answer (Q on the
   question, A on the answer), with the way to the full answer and the questions asked next. No web font, no image.
   Every colour from the theme tokens.
   ======================================================================== */
html{scroll-padding-top:var(--anx-pad,5rem)}
@media (max-width:47.99rem){
  .topbar{position:static}
  html{scroll-padding-top:1rem}
}
.prose h2,.prose h3{scroll-margin-top:0}
.brand__mark{font-weight:700}
@media (max-width:47.99rem){.brand{flex:1 1 0}.brand__name{white-space:normal;overflow:visible;line-height:1.15;font-size:1rem;overflow-wrap:break-word}}
.reading-progress__bar{background-color:var(--accent)}
[data-finder][hidden],[data-q][hidden]{display:none}

/* the head */
.anx-hero{border-bottom:1px solid var(--rule);background:linear-gradient(180deg,var(--paper-2),var(--paper))}
.anx-hero__inner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.6rem;padding-top:clamp(1.6rem,5vw,3.2rem);padding-bottom:0}
.anx-hero__text{padding-bottom:clamp(1.4rem,4vw,2.6rem)}
.anx-hero__kicker{margin:0 0 .7rem;font-family:var(--mono);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-2)}
.anx-hero__title{max-width:16ch;margin:0 0 .9rem;font-family:var(--serif);font-weight:700;font-size:clamp(2.3rem,6.6vw,4.4rem);line-height:1.02;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:break-word}
.anx-hero__lede{max-width:54ch;margin:0 0 1rem;font-size:1.08rem;line-height:1.6;color:var(--ink-2)}
.anx-hero__counts{display:flex;flex-wrap:wrap;gap:.2rem 1.1rem;margin:0;padding:0;list-style:none;font-family:var(--mono);font-size:.86rem;font-variant-numeric:tabular-nums;color:var(--ink-3)}
.anx-hero__counts li{margin:0}
.anx-hero__counts li+li::before{content:'\00B7';content:'\00B7' / '';margin-right:1.1rem}
.anx-art{display:block;width:clamp(6.5rem,26vw,17rem);height:auto}
.anx-art__bubble{fill:var(--accent)}
.anx-art__mark{fill:none;stroke:var(--paper);stroke-width:11;stroke-linecap:round;stroke-linejoin:round}
.anx-art__dot{fill:var(--paper)}
.anx-art__city{fill:var(--ink)}
@media (max-width:35.99rem){.anx-hero__counts{flex-direction:column}.anx-hero__counts li+li::before{content:none}.anx-hero__inner{grid-template-columns:minmax(0,1fr) 5.5rem}}

/* section heads */
.anx-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.3rem 1.4rem;margin:0;padding-bottom:.55rem;border-bottom:2px solid var(--ink)}
.anx-head__title{margin:0;font-family:var(--serif);font-weight:700;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2}
.anx-head__note{flex:1 1 18rem;margin:0;font-size:.92rem;color:var(--ink-3)}

/* every question: a scrolling box of two columns, narrowed as you type */
.anx-ask{padding-top:clamp(1.2rem,3vw,2rem);padding-bottom:1.6rem}
.anx-find{display:grid;gap:.4rem;max-width:34rem;margin:1.1rem 0 0}
.anx-find__label{font-weight:700;font-size:.95rem}
.anx-find__input{box-sizing:border-box;width:100%;min-height:48px;padding:.6rem 1rem;border:2px solid var(--accent);border-radius:999px;background:var(--card);color:var(--ink);font:inherit;font-size:1.05rem}
.anx-find__input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.anx-find__status{min-height:1.4em;margin:0;font-size:.9rem;color:var(--ink-3)}
.anx-qbox{box-sizing:border-box;max-height:min(34rem,70vh);margin:1rem 0 0;padding:.2rem 1rem;overflow-y:auto;border:1px solid var(--rule);border-radius:1rem;background:var(--card)}
.anx-qbox:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.anx-qlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr));column-gap:2.2rem;margin:0;padding:0;list-style:none}
.anx-q{min-width:0;margin:0;border-bottom:1px solid var(--rule)}
.anx-q__link{display:flex;align-items:center;gap:.65rem;box-sizing:border-box;min-height:44px;padding:.4rem 0;color:var(--ink);line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.anx-q__link::before{content:'Q';content:'Q' / '';flex:0 0 auto;display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:var(--accent);color:var(--paper);font-family:var(--serif);font-weight:700;font-size:.82rem;line-height:1}
.anx-q--plain .anx-q__link::before{visibility:hidden}
.anx-q__link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:.16em}
.anx-q__link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}

/* the answers: cards that open in place */
.anx-latest{padding-top:clamp(1rem,3vw,1.6rem);padding-bottom:clamp(2.4rem,6vw,4rem)}
.anx-list{display:grid;gap:.8rem;margin:1rem 0 0;padding:0;list-style:none}
.anx-card{min-width:0;margin:0}
.anx-card__box{border:1px solid var(--rule);border-radius:1rem;background:var(--card)}
.anx-card__box[open]{border-color:var(--accent);box-shadow:inset 4px 0 0 var(--accent)}
.anx-card__q{display:flex;align-items:center;gap:.8rem;box-sizing:border-box;min-height:56px;padding:.8rem 1.1rem;border-radius:1rem;cursor:pointer;list-style:none}
.anx-card__q::-webkit-details-marker{display:none}
.anx-card--ask .anx-card__q::before{content:'Q';content:'Q' / '';flex:0 0 auto;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--accent);color:var(--paper);font-family:var(--serif);font-weight:700;font-size:1rem;line-height:1}
.anx-card__q::after{content:'+';content:'+' / '';flex:0 0 auto;display:grid;place-items:center;width:2rem;height:2rem;margin-left:auto;border:2px solid var(--accent);border-radius:50%;color:var(--accent);font-weight:700;font-size:1.2rem;line-height:1}
.anx-card__box[open]>.anx-card__q::after{content:'\2212';content:'\2212' / ''}
.anx-card__q:hover .anx-card__title{color:var(--accent)}
.anx-card__q:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.anx-card__title{min-width:0;margin:0;font-family:var(--serif);font-weight:700;font-size:1.15rem;line-height:1.3;overflow-wrap:anywhere}
.anx-card__a{position:relative;padding:0 1.1rem 1rem 3.9rem}
.anx-card__a::before{content:'A';content:'A' / '';position:absolute;left:1.1rem;top:0;display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--accent-2);color:var(--paper);font-family:var(--serif);font-weight:700;font-size:1rem;line-height:1}
.anx-card__short{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden;max-width:var(--measure);margin:0 0 .55rem;font-size:1.02rem;line-height:1.6;color:var(--ink-2)}
.anx-card__meta{display:flex;flex-wrap:wrap;gap:0 1.1rem;margin:0;font-family:var(--mono);font-size:.8rem;line-height:1.6;color:var(--ink-3)}
.anx-card__more{margin:.2rem 0 0;font-weight:700}
.anx-card__link{display:inline-flex;align-items:center;min-height:44px}
.anx-card__next{margin:.4rem 0 0}
.anx-card__label{margin:0 0 .35rem;font-family:var(--mono);font-weight:700;font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-2)}
.anx-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.anx-chips li{min-width:0;margin:0}
.anx-chip{display:inline-flex;align-items:center;box-sizing:border-box;min-height:44px;padding:.3rem .9rem;border:1px solid var(--rule);border-radius:999px;background:var(--paper);color:var(--ink);font-size:.92rem;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}
.anx-chip:hover{border-color:var(--accent);color:var(--accent);text-decoration:underline;text-underline-offset:.16em}
.anx-chip:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.anx-card--plain{padding:.4rem 1.1rem;border:1px solid var(--rule);border-radius:1rem;background:var(--card)}
.anx-card__title--plain .anx-card__link{min-height:44px;color:var(--ink);text-decoration:none}
.anx-card__title--plain .anx-card__link:hover{color:var(--accent);text-decoration:underline}
.anx-empty{margin:1rem 0 0;color:var(--ink-2)}
.anx-turn{display:block;margin:1.6rem 0 0;padding:0;border:0}
.anx-turn .nav-links{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0}
.anx-turn .page-numbers{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:44px;min-height:44px;height:auto;margin:0;padding:0 1rem;border:1px solid var(--rule);border-radius:999px;
  background:var(--card);font-weight:700;font-size:1rem;line-height:1.2;color:var(--ink);text-decoration:none}
.anx-turn .page-numbers.current{border-color:var(--accent);background:var(--accent);color:var(--paper)}
.anx-turn a.page-numbers:hover{border-color:var(--accent);color:var(--accent);text-decoration:underline}
.anx-turn .page-numbers.dots{border-color:transparent;background:none}

/* the footer: the questions the publisher chose, side by side in the flow of a line (1.0.1), never one under the other */
.anx-foot{margin:0 0 1rem;padding:0 0 .9rem;border-bottom:1px solid var(--rule)}
.anx-foot__list{margin:0;padding:0;list-style:none;font-size:.95rem;line-height:44px}
.anx-foot__list li{display:inline;margin:0}
.anx-foot__list li:not(:last-child)::after{content:'\00A0\00B7';content:'\00A0\00B7' / '';margin:0 .75rem 0 .3rem;color:var(--ink-3)}
.anx-foot__link{padding:.8rem 0;font-weight:700;overflow-wrap:anywhere}
@media (min-width:64rem){.anx-foot__link{white-space:nowrap}}
.anx-foot__link[aria-current]{color:var(--ink);text-decoration:none}

/* ========================================================================
   29. THE QUESTION PAGE
   A question: the trail; the question (with its Q), its date and what the answer holds; the text, its first paragraph
   set as the short answer in a speech bubble (with its A); the rail (beside the text on a wide screen, sticky; after
   it on a phone or a tablet, so the short answer comes first) with the sections and the questions asked before it; at
   the END the note, the questions asked next (each with its own short answer), the newer and older questions and the
   way back.
   ======================================================================== */
.anx-page>.wrap{max-width:calc(var(--measure) + 21rem + 2 * clamp(1rem,4vw,2rem))}
.anx-page__headin{max-width:calc(var(--measure) + 21rem + 2 * clamp(1rem,4vw,2rem));padding-top:.6rem;padding-bottom:.4rem}
.anx-trail{padding-top:.6rem;padding-bottom:.2rem}
.anx-trail__list{list-style:none;display:flex;flex-wrap:wrap;gap:0 .5rem;margin:0;padding:0;font-size:.9rem;color:var(--ink-3)}
.anx-trail__list li{display:flex;align-items:center;min-height:44px;margin:0;min-width:0;overflow-wrap:anywhere}
.anx-trail__list li+li::before{content:'\203A';content:'\203A' / '';margin-right:.5rem}
.anx-trail__list a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
.anx-page__title{max-width:var(--measure-wide);margin:0;font-family:var(--serif);font-weight:700;font-size:clamp(2rem,4.8vw,3.1rem);line-height:1.1;letter-spacing:-.015em;text-wrap:balance;overflow-wrap:anywhere}
.anx-page--ask .anx-page__title::before{content:'Q';content:'Q' / '';display:inline-grid;place-items:center;width:1.15em;height:1.15em;margin-right:.35em;border-radius:50%;background:var(--accent);color:var(--paper);font-size:.62em;line-height:1;vertical-align:.22em}
.anx-page__meta{margin:.9rem 0 0;font-size:.95rem;color:var(--ink-3)}
.anx-page__facts{display:flex;flex-wrap:wrap;gap:.4rem;margin:.8rem 0 0;padding:0;list-style:none}
.anx-page__facts li{margin:0;padding:.2rem .7rem;border-radius:999px;background:var(--paper-2);font-family:var(--mono);font-size:.8rem;color:var(--ink-2)}

/* the text and the rail */
.anx-page__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.8rem;padding-top:1.6rem}
@media (min-width:64rem){
  .anx-page--rail .anx-page__grid{grid-template-columns:minmax(0,1fr) 19rem;align-items:start}
  .anx-page--rail .anx-page__body{grid-column:1;grid-row:1}
  .anx-page--rail .anx-page__rail{grid-column:2;grid-row:1;position:sticky;top:calc(var(--anx-bar,4rem) + 1rem);max-height:calc(100vh - var(--anx-bar,4rem) - 2rem);overflow-y:auto}
}
.anx-page__body{min-width:0}
.anx-page__body .prose{max-width:var(--measure);overflow-wrap:anywhere}
.anx-page--short .anx-page__body .prose>p:first-child{position:relative;margin:0 0 1.8rem;padding:1rem 1.2rem 1.05rem 3.7rem;border:2px solid var(--accent);border-radius:1.2rem 1.2rem 1.2rem .25rem;background:var(--card);font-size:1.12rem;line-height:1.6;color:var(--ink)}
.anx-page--short .anx-page__body .prose>p:first-child::before{content:'A';content:'A' / '';position:absolute;left:1rem;top:1rem;display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--accent-2);color:var(--paper);font-family:var(--serif);font-weight:700;font-size:1rem;line-height:1}
.anx-page__body .prose h2{padding-top:.9rem;border-top:1px solid var(--rule)}
.anx-page__rail{display:grid;gap:1.1rem;min-width:0}
@media (max-width:63.99rem){.anx-page__rail{order:2}}
.anx-box{min-width:0;padding:.85rem 1rem .9rem;border:1px solid var(--rule);border-radius:1rem;background:var(--card)}
.anx-box__title{margin:0 0 .5rem;font-family:var(--mono);font-weight:700;font-size:.76rem;line-height:1.3;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}
.anx-before{border-left:5px solid var(--accent-2)}
.anx-toc__list{margin:0;padding:0 0 0 1.15rem;color:var(--ink-3)}
.anx-toc__list li,.anx-before__list li{margin:0}
.anx-before__list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.anx-toc__link,.anx-before__link{display:inline-flex;align-items:center;box-sizing:border-box;min-height:44px;padding:.2rem 0;line-height:1.3;overflow-wrap:anywhere}
.anx-page__end{margin-top:2.4rem;padding-bottom:clamp(3rem,6vw,5rem)}
.anx-page__end>*{max-width:var(--measure)}
.anx-page__end .legal-disclaimer{margin:0;border:1px solid var(--rule);border-left:4px solid var(--accent-2);border-radius:.6rem;background:var(--paper-2)}
.anx-page__end .legal-disclaimer__label{color:var(--accent-2)}
.anx-page__end .legal-disclaimer__label::before{display:none}

/* asked next: a card for each question the answer leads to */
.anx-page__end>.anx-nextq{max-width:none;margin:2.2rem 0 0}
.anx-nextq__title{margin:0 0 .8rem;font-family:var(--serif);font-weight:700;font-size:clamp(1.4rem,2.6vw,1.8rem);line-height:1.2}
.anx-nextq__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:.8rem;margin:0;padding:0;list-style:none}
.anx-nextq__list li{min-width:0;margin:0}
.anx-nextq__link{display:flex;flex-direction:column;gap:.45rem;box-sizing:border-box;height:100%;min-height:48px;padding:.95rem 1.05rem 1rem;border:1px solid var(--rule);border-top:6px solid var(--accent);border-radius:1rem;background:var(--card);color:var(--ink);text-decoration:none}
.anx-nextq__q{display:flex;gap:.6rem;align-items:flex-start;font-family:var(--serif);font-weight:700;font-size:1.08rem;line-height:1.3;overflow-wrap:anywhere}
.anx-nextq__q::before{content:'Q';content:'Q' / '';flex:0 0 auto;display:grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:50%;background:var(--accent);color:var(--paper);font-size:.85rem;line-height:1}
.anx-nextq__a{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;font-size:.93rem;line-height:1.55;color:var(--ink-2)}
.anx-nextq__link:hover .anx-nextq__q{color:var(--accent);text-decoration:underline;text-underline-offset:.16em}
.anx-nextq__link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.anx-near{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.8rem;margin:2rem 0 0}
.anx-near__link{display:flex;flex-direction:column;gap:.2rem;box-sizing:border-box;min-height:48px;padding:.75rem .95rem .85rem;border:1px solid var(--rule);border-radius:.8rem;background:var(--card);color:var(--ink);text-decoration:none}
.anx-near__link--next{text-align:right}
.anx-near__k{font-family:var(--mono);font-size:.74rem;text-transform:uppercase;color:var(--ink-3)}
.anx-near__q{font-family:var(--serif);font-weight:700;line-height:1.3;overflow-wrap:anywhere}
.anx-near__link:hover .anx-near__q{color:var(--accent);text-decoration:underline;text-underline-offset:.16em}
.anx-back{margin:2rem 0 0;font-weight:700}
.anx-back a{display:inline-flex;align-items:center;min-height:44px}
.prose table{font-variant-numeric:tabular-nums}
.prose th{font-weight:700;color:var(--ink);background-color:var(--paper-2)}
.prose :is(th,td),.prose :is(th,td) :is(p,li){overflow-wrap:break-word}
.prose iframe,.prose embed,.prose object{display:block;max-width:100%}
.prose pre{box-sizing:border-box;max-width:100%;overflow-x:auto}
.prose table{display:block;max-width:100%;overflow-x:auto}
@media (max-width:47.99rem){
  .prose table{font-size:.88rem}
  .prose th,.prose td{min-width:5.5rem;padding:.5rem .45rem}
}
.anx-split .post-page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
@media (forced-colors:active){
  .anx-art__bubble{fill:CanvasText}
  .anx-art__mark{stroke:Canvas}
  .anx-art__dot{fill:Canvas}
  .anx-art__city{fill:CanvasText}
  .anx-q__link::before,.anx-card--ask .anx-card__q::before,.anx-card__a::before,.anx-nextq__q::before,.anx-page--ask .anx-page__title::before{border:2px solid CanvasText}
  .anx-card__box,.anx-qbox,.anx-box,.anx-nextq__link,.anx-near__link,.anx-chip{border:2px solid CanvasText}
  .anx-page--short .anx-page__body .prose>p:first-child{border:3px solid CanvasText}
}
@media print{
  .anx-find,.anx-art,.anx-turn,.anx-back,.anx-near,.anx-page__rail,.anx-card__q::after{display:none}
  .anx-qbox{max-height:none;overflow:visible}
  .anx-card__short,.anx-nextq__a{display:block;-webkit-line-clamp:unset}
}

/* ========================================================================
   26. PRINT
   ======================================================================== */
@media print{
  .topbar,.site-footer,.meta-rail,.toc-drawer,.reading-progress,.post-nav,.comments-area,.skip-link{display:none!important}
  html:root:root{--paper:#fff;--paper-2:#fff;--card:#fff;--ink:#000;--ink-2:#222;--ink-3:#444;--rule:#999;--accent:#000;--accent-2:#000;--link:#000;--warn:#000;--safe:#000}
  body{background:#fff;color:#000}
  .article-shell{display:block;padding:0}
  .article-main{max-width:none}
  a{color:inherit;text-decoration:underline}
  .prose h2,.prose h3{break-after:avoid}
  .prose img{max-width:100%;break-inside:avoid}
}

/* ========================================================================
   27. GLOBAL REDUCED MOTION OVERRIDE (WD-16 safety net)
   ======================================================================== */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }
}
