/* Hallucinating the Machine — WIRE DOCTUS 2026
   Styled after wire.filmeu.eu (YOOtheme / UIkit): Roboto 300 body, Work Sans
   uppercase labels, teal #00b1bf, navy #19365d headings, black hero. */

/* ---------- fonts (bundled, SIL Open Font License) ---------- */
@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-display:swap;src:url(../fonts/roboto-latin-100-normal.woff2) format("woff2");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:Roboto;font-style:normal;font-weight:100;font-display:swap;src:url(../fonts/roboto-latin-ext-100-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Roboto;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/roboto-latin-300-normal.woff2) format("woff2");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:Roboto;font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/roboto-latin-ext-300-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Roboto;font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/roboto-latin-300-italic.woff2) format("woff2");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:Roboto;font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/roboto-latin-ext-300-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Roboto;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/roboto-latin-400-normal.woff2) format("woff2");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:Roboto;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/roboto-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Roboto;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/roboto-latin-400-italic.woff2) format("woff2");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:Roboto;font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/roboto-latin-ext-400-italic.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:Roboto;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/roboto-latin-500-normal.woff2) format("woff2");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:Roboto;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/roboto-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,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:"Work Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/work-sans-latin-500-normal.woff2) format("woff2");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:"Work Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/work-sans-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* ---------- tokens ---------- */
:root{
  --teal:#00b1bf; --teal-deep:#075b6f; --teal-bright:#00d2e3;
  --navy:#19365d; --text:#464457; --muted:#8a94a8;
  --line:#e9e9e9; --bg-muted:#f4f6fb; --red:#de3e3e; --totop:#e8294f;
  --sans:Roboto,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --label:"Work Sans",Roboto,-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --c-dec:#00a3b0; --c-ana:#2f5597; --c-neu:#c3c8d4;
  --mono:"Courier Prime","Courier New",Courier,monospace;
  --shadow:0 6px 50px rgba(0,0,0,.05); --shadow-hover:0 4px 28px rgba(0,0,0,.07);
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{font-family:var(--sans);font-size:15px;font-weight:300;line-height:1.6;color:var(--text);background:#fff;
  -webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}
body{margin:0;overflow-x:hidden}
a{color:var(--teal);text-decoration:none}
a:hover{color:var(--teal-deep)}
a:focus-visible,summary:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
p,ul,ol,figure,dl{margin:0 0 20px}
ul,ol{padding-left:30px}
b,strong{font-weight:400;color:var(--navy)}
em{color:var(--red)}
img,video{max-width:100%;height:auto}
hr{border:0;border-top:1px solid var(--line);margin:0 0 20px}
h1,h2,h3,h4,h5,h6{margin:0 0 20px;font-family:var(--sans);font-weight:300;color:var(--navy)}
h1{font-size:34px;line-height:1.4}
h2{font-size:25.5px;line-height:1.3}
h3{font-size:22px;line-height:1.4}
h4{font-size:18px;line-height:1.4}
h5,h6,.meta{font-family:var(--label);font-weight:500;font-size:11px;line-height:1.4;text-transform:uppercase;letter-spacing:1px}
h5{font-size:12px}
.meta{color:var(--muted);margin:0 0 10px}
blockquote{margin:0 0 20px;padding:0 0 0 40px;font-size:18px;line-height:1.5;font-style:italic;color:var(--navy);border-left:2px solid var(--teal)}
blockquote p:last-child{margin-bottom:0}
@media (min-width:960px){h1{font-size:40px}h2{font-size:30px}}

.skip{position:absolute;left:-9999px}
.skip:focus{left:20px;top:10px;z-index:50;background:#fff;padding:8px 14px;box-shadow:var(--shadow-hover)}
.container{max-width:1200px;margin:0 auto;padding:0 15px}
@media (min-width:640px){.container{padding:0 20px}}
@media (min-width:960px){.container{padding:0 40px}}
.section{padding:40px 0}
@media (min-width:960px){.section{padding:70px 0}}
.section-muted{background:var(--bg-muted)}
.section-xsmall{padding:20px 0}
.lead{font-size:20px;line-height:1.5;color:var(--navy)}
.small{font-size:12px;line-height:1.5}
.muted{color:var(--muted)}
.divider-small{line-height:0;margin:0 0 20px}
.divider-small::after{content:"";display:inline-block;width:45px;border-top:2px solid var(--teal)}

.button{display:inline-block;padding:0 30px;font:500 11px/38px var(--label);text-transform:uppercase;letter-spacing:1px;
  border-radius:500px;background:var(--teal);color:#fff;border:1px solid transparent;transition:.1s ease-in-out;transition-property:color,background-color,box-shadow}
.button:hover{background:var(--teal-bright);color:#fff}
.button-small{padding:0 20px;line-height:28px}
.button-default{background:#fff;color:var(--totop);box-shadow:0 4px 28px rgba(0,0,0,.07)}
.button-default:hover{background:#fff;color:var(--teal);box-shadow:0 3px 12px rgba(0,0,0,.07)}
.label{display:inline-block;padding:1px 8px;background:var(--teal);color:#fff;font:500 11px/1.6 var(--label);text-transform:uppercase;letter-spacing:.5px;border-radius:2px;white-space:nowrap}
.label-outline{background:transparent;color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}
a.label:hover{background:var(--teal-deep);color:#fff;box-shadow:none}

/* ---------- toolbar, header, hero ---------- */
.tm-toolbar{background:var(--teal);color:#fff;font-size:12px;padding:10px 0}
.tm-toolbar .container{max-width:none;display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:40px}
.tm-toolbar a{color:#fff}
.tm-toolbar a:hover{color:rgba(255,255,255,.7)}
.tm-toolbar .where{font:500 11px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px}
.tm-toolbar .where span{opacity:.7;margin:0 8px}
.tm-hero{background:#000;color:rgba(255,255,255,.7)}
.tm-header .container{max-width:none;display:flex;justify-content:space-between;align-items:center;gap:10px 40px;flex-wrap:wrap;min-height:110px;padding-top:20px;padding-bottom:20px}
.brand{display:block;color:#fff;line-height:1.3}
.brand:hover{color:#fff}
.brand small{display:block;font:500 11px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);margin-bottom:4px}
.brand span{font-size:22px;font-weight:300}
.navbar-nav{display:flex;flex-wrap:wrap;gap:0 30px;list-style:none;margin:0;padding:0}
.navbar-nav a{display:flex;align-items:center;min-height:40px;font:500 12px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);transition:color .1s ease-in-out}
.navbar-nav a:hover,.navbar-nav a[aria-current]{color:#fff}
.hero-in{padding-top:70px}
.hero-in .meta{color:rgba(255,255,255,.5);margin-bottom:14px}
.heading-large{margin:0;padding-bottom:20px;font-size:clamp(40px,8.2vw,6rem);line-height:1.1;font-weight:100;color:#fff;letter-spacing:-.005em}
@media (min-width:960px){.hero-in{padding-top:110px}}

/* ---------- layout helpers ---------- */
.grid-1-2{display:grid;gap:40px}
@media (min-width:960px){.grid-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:70px}}
.grid-3{display:grid;gap:40px}
@media (min-width:640px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.grid-2{display:grid;gap:40px}
@media (min-width:800px){.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 70px}}
.facts p{margin-bottom:20px}
.facts strong{display:block;font-weight:400;color:var(--navy);text-transform:uppercase}
.section-head{max-width:760px;margin-bottom:40px}
.section-head h2{margin-bottom:10px}
.section-head p:last-child{margin-bottom:0}

/* ---------- cards ---------- */
.card{display:flex;flex-direction:column;background:#fff;color:var(--text);box-shadow:var(--shadow);transition:box-shadow .1s ease-in-out}
.card:hover{box-shadow:var(--shadow-hover)}
.card-media{display:block;overflow:hidden;aspect-ratio:8/5;background:#000}
.card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease-out;transform:scale(1.04)}
.card:hover .card-media img{transform:scale(1)}
.card-quote{display:flex;align-items:flex-end;padding:30px;color:#fff;font-size:24px;line-height:1.25;font-weight:100}
.card-quote.mono{font-family:var(--mono);font-size:16px;font-weight:400;line-height:1.4;align-items:center}
.card-body{flex:1;display:flex;flex-direction:column;padding:30px}
@media (min-width:1200px){.card-body{padding:40px}}
.card-title{margin:0 0 4px;font-size:22px;line-height:1.4;font-weight:300}
.card-title a{color:inherit}
.card-title a:hover{color:var(--teal)}
.card-by{color:var(--navy);margin-bottom:14px}
.card-body .caption{flex:1}
.el-link{margin:0}

/* ---------- map ---------- */
.map{--label-w:250px;background:#fff;box-shadow:var(--shadow);padding:10px 20px 20px}
@media (min-width:960px){.map{padding:20px 40px 30px}}
.map-row{display:grid;gap:6px;padding:16px 0;border-top:1px solid var(--line)}
.map-row:first-child{border-top:0}
@media (min-width:860px){.map-row{grid-template-columns:var(--label-w) minmax(0,1fr);gap:30px;align-items:center}}
.map-label h3{margin:0;font-size:17px;line-height:1.35}
.map-label h3 a{color:var(--navy)}
.map-label h3 a:hover{color:var(--teal)}
.map-label p{margin:2px 0 0;font-size:12px;line-height:1.45;color:var(--muted)}
.map-track{position:relative;height:36px}
.map-track::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid #dfe3ec}
.map-row.is-log .map-track{height:44px}
.map-row.is-log .map-track::before{display:none}
.tick{position:absolute;top:4px;bottom:4px;width:2px;margin-left:-1px;background:#cfd4e0}
.tick.sapphire{background:var(--teal)}
.tick.steel{background:var(--navy)}
.tick.mod{background:var(--red)}
.span{position:absolute;left:0;right:0;top:50%;height:10px;margin-top:-5px;border-radius:5px;background:rgba(0,177,191,.28)}
.dot{position:absolute;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:var(--teal);border:2px solid #fff;box-shadow:0 0 0 1px var(--teal);z-index:1;transition:transform .1s ease-in-out}
.dot.reading{background:#fff;border:3px solid var(--teal);box-shadow:none}
.dot:hover,.dot:focus-visible{transform:scale(1.25);z-index:3}
.dot::after{content:attr(data-tip);position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:max-content;max-width:260px;padding:8px 12px;
  background:var(--navy);color:#fff;font:300 12px/1.45 var(--sans);text-align:left;border-radius:3px;opacity:0;pointer-events:none;transition:opacity .1s;white-space:normal}
.dot.tip-l::after{left:-8px;transform:none}
.dot.tip-r::after{left:auto;right:-8px;transform:none}
.dot:hover::after,.dot:focus-visible::after{opacity:1}
.map-axis{position:relative;height:18px;margin-top:2px}
.map-axis span{position:absolute;top:0;transform:translateX(-50%);font:500 10px/18px var(--label);letter-spacing:.5px;color:var(--muted)}
.map-axis span:first-child{transform:none}
.map-axis span:last-child{transform:translateX(-100%)}
.legend{display:flex;flex-wrap:wrap;gap:8px 26px;margin:24px 0 0;padding:0;list-style:none;font-size:12px;color:var(--text)}
.legend li{display:flex;align-items:center;gap:8px}
.legend i{flex:none;display:inline-block}
.legend .k-tick{width:2px;height:16px;background:#cfd4e0}
.legend .k-tick.sapphire{background:var(--teal)} .legend .k-tick.steel{background:var(--navy)} .legend .k-tick.mod{background:var(--red)}
.legend .k-dot{width:12px;height:12px;border-radius:50%;background:var(--teal)}
.legend .k-ring{width:12px;height:12px;border-radius:50%;border:3px solid var(--teal);background:#fff}
.legend .k-span{width:28px;height:8px;border-radius:4px;background:rgba(0,177,191,.28)}

/* ---------- threads ---------- */
.thread h3{margin-bottom:10px}
.thread p{margin-bottom:14px}
.thread q{quotes:"\201C" "\201D" "\2018" "\2019";color:var(--navy)}
.thread a q{color:inherit}
.thread .in{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.signature{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);max-width:760px;font-size:12px;color:var(--muted)}

/* ---------- context / footer ---------- */
.context h3{font-size:18px;margin-bottom:10px}
.breadcrumb{display:flex;flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none}
.breadcrumb li{font:500 11px/1.8 var(--label);text-transform:uppercase;letter-spacing:1px;color:var(--navy)}
.breadcrumb a{color:var(--muted)}
.breadcrumb a:hover{color:var(--text)}
.breadcrumb li+li::before{content:"/";margin:0 20px;color:#dcdcdc}
.crumbs{display:flex;justify-content:space-between;align-items:center;gap:20px}
.totop{flex:none;display:inline-flex;align-items:center;justify-content:center;width:42px;height:34px;border-radius:3px;background:var(--totop);color:#fff;font-size:16px;line-height:1}
.totop:hover{background:var(--teal);color:#fff}
.footer-black{background:#000;color:rgba(255,255,255,.7);font-size:11px;padding:30px 0}
.footer-black p{margin:0 0 6px;max-width:900px}
.footer-black p:last-child{margin:0}
.footer-black a{color:#fff}

/* ---------- work pages ---------- */
.work-aside dl{margin:0}
.work-aside dt{font:500 11px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:0 0 4px}
.work-aside dd{margin:0 0 20px;color:var(--text)}
.work-aside dd strong{font-weight:400}
.work-aside .threads{display:flex;flex-wrap:wrap;gap:6px}
@media (min-width:960px){.work-aside-in{position:sticky;top:30px}}
.work-main>*:first-child{margin-top:0}
.prose{font-size:17px;line-height:1.75;max-width:68ch}
.prose p{margin:0 0 1.25em}
.prose h2,.prose h3,.prose h4{margin:1.8em 0 .7em}
.prose h2:first-child,.prose h3:first-child{margin-top:0}
.prose .break{margin-top:2.6em}
.prose strong{font-weight:500}
.prose em{color:inherit}
.prose ul{margin:0 0 1.25em}
.prose li{margin-bottom:.3em}
.verse{font-size:17px;line-height:1.75}
.verse p{margin:0 0 1.1em}
.preline{white-space:pre-line}
.work-title{font-size:25.5px;margin-bottom:6px}
.figure{margin:0 0 40px}
.figure img,.figure video{display:block;width:100%;background:#000}
.figure.narrow{max-width:420px}
.figure figcaption,.figcaption{margin-top:10px;font-size:12px;line-height:1.5;color:var(--muted)}
.frame{box-shadow:var(--shadow)}
.gallery{display:grid;gap:14px;margin:0 0 14px}
.gallery.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.gallery.cols-2{grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){.gallery.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gallery a{display:block;overflow:hidden;background:#000}
.gallery img{display:block;width:100%;height:auto;transition:transform .3s ease-out}
.gallery a:hover img{transform:scale(1.03)}

.excerpt{margin:0 0 40px;padding:20px 24px;background:var(--bg-muted);border-left:2px solid var(--teal)}
.excerpt h2{font:500 11px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:0 0 12px}
.excerpt .line{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 12px;margin:0 0 8px;font-size:15px;line-height:1.55;color:var(--text)}
.excerpt .line time{font:500 11px/1.9 var(--label);letter-spacing:.5px;color:var(--muted)}
.excerpt .line b{font-weight:400;color:var(--navy)}
.excerpt .line.sapphire b{color:var(--teal-deep)}
.excerpt .note{margin:12px 0 0;font-size:12px;color:var(--muted)}
.excerpt .note a{white-space:nowrap}

.pager{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:60px;padding-top:30px;border-top:1px solid var(--line)}
.pager a{display:block;max-width:46%}
.pager .meta{display:block;margin-bottom:4px}
.pager .t{font-size:18px;color:var(--navy)}
.pager a:hover .t{color:var(--teal)}
.pager .next{text-align:right;margin-left:auto}

/* screenplay */
.screenplay{font-family:var(--mono);font-size:15px;line-height:1.3;color:#222;font-weight:400;max-width:61ch}
.screenplay p{margin:0 0 1.3em}
.screenplay strong{font-weight:700;color:inherit}
.sp-title{text-align:center;padding:60px 0 80px;margin-bottom:40px;border-bottom:1px solid var(--line)}
.sp-title .t{text-decoration:underline;margin-bottom:3em}
.sp-title .c{text-align:left;margin:80px 0 0}
.sp-scene{text-transform:uppercase;margin-top:2.6em !important}
.sp-scene:first-of-type{margin-top:0 !important}
.sp-char{margin:0 0 0 22ch !important}
.sp-paren{margin:0 0 0 16ch !important}
.sp-dialogue{margin-left:11ch !important;max-width:36ch}
.sp-end{margin-top:2.6em !important}
@media (max-width:560px){.screenplay{font-size:13px}.sp-char{margin-left:14ch !important}.sp-paren{margin-left:10ch !important}.sp-dialogue{margin-left:6ch !important}}

/* typewriter fragments in “Decadence” */
.typed{font-family:var(--mono);font-size:15px;line-height:1.5;color:var(--text)}

/* ---------- conversation ---------- */
.conv-grid{display:grid;gap:40px}
@media (min-width:1000px){.conv-grid{grid-template-columns:260px minmax(0,1fr);gap:70px}}
.conv-side h2{font-size:18px;margin-bottom:10px}
.conv-side ul{list-style:none;margin:0 0 30px;padding:0}
.conv-side li{margin:0 0 8px;font-size:13px;line-height:1.45}
.conv-side li time{font:500 10px/1 var(--label);letter-spacing:.5px;color:var(--muted);margin-right:6px}
@media (min-width:1000px){.conv-side-in{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto;padding-right:10px}}
.log{max-width:780px}
.log-head{margin:0 0 30px}
.log-head h2{margin-bottom:6px}
.msg{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 14px;padding:8px 12px;margin:0 -12px;border-radius:3px;scroll-margin-top:20px}
.msg time{font:500 11px/1.9 var(--label);letter-spacing:.5px;color:var(--muted)}
.msg .who{font-weight:400;color:var(--navy);margin-right:6px}
.msg p{margin:0}
.msg.sapphire,.msg.steel{background:var(--bg-muted)}
.msg.sapphire .who{color:var(--teal-deep)}
.msg.steel .who{color:#000}
.msg.sapphire .who::after,.msg.steel .who::after{content:"AI";margin-left:6px;padding:1px 5px;font:500 9px/1.6 var(--label);letter-spacing:.5px;color:#fff;background:var(--teal);border-radius:2px;vertical-align:2px}
.msg.steel .who::after{background:var(--navy)}
.msg.mod .who{font:500 11px/1.9 var(--label);letter-spacing:1px;color:var(--red)}
.msg.mod p{color:var(--muted)}
.msg+.msg.sapphire,.msg+.msg.steel{margin-top:2px}
.msg .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.msg:target{background:rgba(0,177,191,.14);box-shadow:inset 2px 0 0 var(--teal)}
.session-note{margin:0 0 30px;padding:16px 20px;border-left:2px solid var(--teal);background:var(--bg-muted);font-size:14px}
.session-note p:last-child{margin:0}

/* briefing */
.briefing h2{font:500 12px/1.4 var(--label);text-transform:uppercase;letter-spacing:1px;color:var(--navy);margin:2.4em 0 .8em}
.briefing .ed{color:var(--muted);font-style:italic}

@media (prefers-reduced-motion:reduce){*{transition:none !important;scroll-behavior:auto !important}}
@media print{.tm-toolbar,.tm-header nav,.pager,.totop{display:none}.tm-hero{background:#fff}.heading-large{color:#000}}

/* ---------- small additions ---------- */
.h4{font-size:18px;line-height:1.4}
.prose .lines p{margin:0 0 .55em}
.prose .prompts{margin-top:2.6em}
.prose-note{max-width:68ch}
.prose-note ul{margin-bottom:0}
.figure.narrow{max-width:340px}

/* long work tags and long unbroken strings must not widen the page on phones */
.msg .label{white-space:normal;max-width:100%}
.msg p,.excerpt .line span,.prose p{overflow-wrap:anywhere}

/* key under the chart */
.map-key{display:grid;gap:30px 60px;margin-top:10px;padding-top:26px;border-top:1px solid var(--line)}
@media (min-width:860px){.map-key{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.map-key h3{margin:0 0 14px;font:500 11px/1.6 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--navy)}
.map-key ul{list-style:none;margin:0;padding:0}
.map-key li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:0 12px;margin:0 0 10px;font-size:13px;line-height:1.55}
.map-key li i{justify-self:center;margin-top:3px}
.map-key li b{font-weight:500;color:var(--navy)}
.map-key p{margin:12px 0 0;font-size:13px;line-height:1.55}
.map-key .k-tick{width:2px;height:16px;background:#cfd4e0}
.map-key .k-tick.k-sapphire{background:var(--teal)}
.map-key .k-tick.k-steel{background:var(--navy)}
.map-key .k-tick.k-mod{background:var(--red)}
.map-key .k-dot{width:14px;height:14px;border-radius:50%;background:var(--teal);border:2px solid #fff;box-shadow:0 0 0 1px var(--teal)}
.map-key .k-ring{width:14px;height:14px;border-radius:50%;border:3px solid var(--teal);background:#fff}
.map-key .k-span{width:30px;height:10px;border-radius:5px;background:rgba(0,177,191,.28);margin-top:5px}
.map-key .k-line{width:30px;height:0;border-top:1px solid #b9c0cf;margin-top:10px}
.map-hint{margin:22px 0 0;font-size:12px;color:var(--muted)}

/* ---------- first chart: the two modes ----------
   Mark colours are checked for colour-blind separation and 3:1 contrast on white:
   decadent / Sapphire #00a3b0, analytic / Steel #2f5597, neither #c3c8d4. */
.tiles-head{margin:0 0 14px}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 30px}
@media (min-width:860px){.tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}}
.tile{background:#fff;box-shadow:var(--shadow);padding:20px 22px 18px;border-top:3px solid var(--c-neu)}
.tile.t-d{border-top-color:var(--c-dec)}
.tile.t-a{border-top-color:var(--c-ana)}
.tile p{margin:0}
.tile-n{font-size:46px;line-height:1.05;font-weight:100;color:var(--navy);font-variant-numeric:tabular-nums}
.tile-v{margin-top:4px;font-size:16px;color:var(--navy)}
.tile-g{margin-top:4px;font:500 10px/1.5 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}

.modes{--label-w:190px;--sum-w:180px}
.modes-row{display:grid;gap:4px;padding:9px 0;border-top:1px solid var(--line);align-items:center}
@media (min-width:860px){.modes-row{grid-template-columns:var(--label-w) minmax(0,1fr) var(--sum-w);gap:26px}}
.modes-row.modes-cols{display:none;border-top:0;padding:0}
@media (min-width:860px){.modes-row.modes-cols{display:grid}}
.modes-row.modes-axis{border-top:0;padding:0 0 4px}
.modes-group{margin:16px 0 6px;font:500 11px/1.6 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--navy)}
.modes-cols + .modes-group{margin-top:0}
.modes-group + .modes-row{border-top:0}
.modes-label h3{margin:0;font-size:16px;line-height:1.3;color:var(--navy)}
.modes-label p{margin:0;font-size:12px;line-height:1.4;color:var(--muted)}
.modes-track{position:relative;height:30px}
.modes-track::before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid #e3e6ee}
.mt{position:absolute;top:2px;bottom:2px;width:3px;margin-left:-1.5px;border-radius:1px}
.mt.d{background:var(--c-dec)}
.mt.a{background:var(--c-ana)}
.mt.n{background:var(--c-neu);top:10px;bottom:10px}
a.mt:hover,a.mt:focus-visible{outline:2px solid var(--navy);outline-offset:1px;z-index:2}
.modes-count{font-size:12px;color:var(--muted)}
.modes-sum{display:grid;grid-template-columns:1fr 1fr;gap:2px;max-width:var(--sum-w);font-size:12px;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}
.modes-sum .l{display:flex;justify-content:flex-end;align-items:center;gap:6px}
.modes-sum .r{display:flex;justify-content:flex-start;align-items:center;gap:6px}
.modes-sum i{display:block;flex:none;height:10px}
.b-d{background:var(--c-dec)}
.b-a{background:var(--c-ana)}
.b-n{background:var(--c-neu)}
.modes-sum .b-d{border-radius:2px 0 0 2px}
.modes-sum .b-a{border-radius:0 2px 2px 0}
.modes-cols .modes-sum span{font:500 10px/1.6 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.modes-cols .modes-sum span:first-child{text-align:right;padding-right:4px}
.modes-cols .modes-sum span:last-child{padding-left:4px}
.modes-foot{display:grid;gap:30px 60px;margin-top:10px;padding-top:26px;border-top:1px solid var(--line)}
@media (min-width:860px){.modes-foot{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}}
.modes-foot h3{margin:0 0 14px;font:500 11px/1.6 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--navy)}
.addr-row{margin:0 0 18px}
.addr-label{margin:0 0 6px;font-size:13px;line-height:1.4;color:var(--navy)}
.addr-label span{color:var(--muted)}
.addr-bar{display:flex;gap:2px;height:14px}
.addr-bar i{display:block;height:100%}
.addr-bar i:first-child{border-radius:2px 0 0 2px}
.addr-bar i:last-child{border-radius:0 2px 2px 0}
.addr-counts{margin:6px 0 0;font-size:12px;line-height:1.4}
.addr-note{margin:0;font-size:12px;line-height:1.5;color:var(--muted)}
.modes-key ul{list-style:none;margin:0;padding:0}
.modes-key li{display:grid;grid-template-columns:34px minmax(0,1fr);gap:0 12px;margin:0 0 10px;font-size:13px;line-height:1.55}
.modes-key li i{justify-self:center;margin-top:3px}
.modes-key li b{font-weight:500;color:var(--navy)}
.modes-key p{margin:12px 0 0;font-size:13px;line-height:1.55}
.modes-key .k-tick{width:3px;height:16px;border-radius:1px}
.modes-key .k-dec{background:var(--c-dec)}
.modes-key .k-ana{background:var(--c-ana)}
.modes-key .k-neu{background:var(--c-neu);height:8px;margin-top:7px}
.modes-key .k-bars{width:26px;height:10px;margin-top:6px;background:linear-gradient(90deg,var(--c-dec) 0 60%,#fff 60% 66%,var(--c-ana) 66% 100%);border-radius:2px}
.findings{margin-top:44px}
.findings h3{margin-bottom:8px;font-size:18px;line-height:1.35}
.findings p{margin:0;font-size:14px}

/* the second chart: colour is kept for the two agents, so the works' circles are neutral ink */
.tick.sapphire,.map-key .k-tick.k-sapphire{background:var(--c-dec)}
.tick.steel,.map-key .k-tick.k-steel{background:var(--c-ana)}
.dot,.map-key .k-dot{background:var(--text);box-shadow:0 0 0 1px var(--text)}
.dot.reading,.map-key .k-ring{background:#fff;border-color:var(--text);box-shadow:none}
.span,.map-key .k-span{background:rgba(70,68,87,.15)}
.msg.sapphire .who::after{background:var(--c-dec)}
.msg.steel .who::after{background:var(--c-ana)}

/* method page */
.method h2{margin-top:36px}
.table-wrap{overflow-x:auto;margin-top:14px}
table.codes{width:100%;border-collapse:collapse;font-size:13px;line-height:1.45}
.codes th{padding:8px 10px;text-align:left;font:500 10px/1.6 var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--navy);border-bottom:1px solid var(--navy)}
.codes td{padding:7px 10px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}
.codes td:nth-child(1){white-space:nowrap;color:var(--muted)}
.codes td:nth-child(2),.codes td:nth-child(6){white-space:nowrap}
.codes td:nth-child(3){min-width:240px}
.codes tr.c-d td:last-child{box-shadow:inset 3px 0 0 var(--c-dec)}
.codes tr.c-a td:last-child{box-shadow:inset 3px 0 0 var(--c-ana)}
.codes tr.c-x td{background:var(--bg-muted)}

.method{min-width:0}
.work-main,.log{min-width:0}

/* credit line with the lab logo, above the black strip on every page */
.credit{background:#fff;border-top:1px solid var(--line);padding:22px 0}
.credit .container{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px}
.credit img{flex:none;width:auto;height:64px}
.credit p{margin:0;font-size:13px;line-height:1.5;color:var(--text);overflow-wrap:anywhere}
