/* Domineo Effect — shared styles. Edit here to restyle every page. */
:root{
  --paper:#12100E; --panel:#1B1815; --raised:#232019;
  --ink:#F3EEE5; --body:#C9C1B5; --muted:#9B9084; --line:#2E2823;
  --take:#E9584A; --find:#43B979; --watch:#6AA1F7;
  --bone-a:#F2EBDE; --bone-b:#DCD2C0; --slot:#0B0A09;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background-color:var(--paper);
  background-image:radial-gradient(circle at 50% 50%, rgba(243,238,229,.035) 1px, transparent 1.4px);
  background-size:26px 26px;
  color:var(--ink);font-family:"Source Serif 4",Georgia,serif;font-size:17px;line-height:1.65;
}
a{color:inherit}
.wrap{max-width:1100px;margin:0 auto;padding:0 22px}

/* ---- domino tile ---- */
.tile{
  --pip:var(--slot); --pr:3.4px;
  display:inline-grid;grid-template-rows:1fr 1fr;
  width:38px;height:68px;border-radius:8px;flex:none;
  background:linear-gradient(160deg,var(--bone-a),var(--bone-b));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), inset 0 -2px 4px rgba(0,0,0,.13), 0 6px 16px rgba(0,0,0,.45);
  position:relative;
}
.tile::after{content:"";position:absolute;left:7px;right:7px;top:50%;height:2px;margin-top:-1px;background:rgba(11,10,9,.16);border-radius:2px}
.face{background-repeat:no-repeat;background-position:center;border-radius:7px}
.tile-sm{width:26px;height:47px;--pr:2.4px;border-radius:6px}
.tile-sm::after{left:5px;right:5px}
.f0{background-image:none}
.f1{background-image:radial-gradient(circle at 50% 50%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}
.f2{background-image:radial-gradient(circle at 28% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}
.f3{background-image:radial-gradient(circle at 28% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 50% 50%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}
.f4{background-image:radial-gradient(circle at 28% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 28% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}
.f5{background-image:radial-gradient(circle at 28% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 50% 50%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 28% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}
.f6{background-image:radial-gradient(circle at 28% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 24%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 28% 50%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 50%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 28% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px)),radial-gradient(circle at 72% 76%, var(--pip) var(--pr), transparent calc(var(--pr) + .7px))}

/* ---- header ---- */
header.site{position:sticky;top:0;z-index:20;background:rgba(18,16,14,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:15px;padding-bottom:15px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none}
.brand .tile{width:19px;height:34px;--pr:1.9px;border-radius:4px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 3px 8px rgba(0,0,0,.5)}
.brand .tile::after{left:3px;right:3px;height:1px}
.logo{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;letter-spacing:.045em;font-size:1.02rem;text-decoration:none}
nav.main a{font-family:"Space Mono",monospace;font-size:.78rem;text-decoration:none;margin-left:19px;color:var(--muted)}
nav.main a:hover{color:var(--ink)}

/* ---- hero ---- */
.hero{padding:60px 0 14px;border-bottom:1px solid var(--line);overflow:hidden;position:relative}
.hero .wrap{position:relative;z-index:1}
.kicker{font-family:"Space Mono",monospace;font-size:.73rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.hero h1{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(2.5rem,6.4vw,4.6rem);line-height:1;margin:16px 0 18px;letter-spacing:-.015em}
.hero h1 em{font-style:normal;color:var(--take)}
.hero p.lede{max-width:600px;font-size:1.09rem;color:#D9D1C5}
.chain-rail{display:flex;gap:15px;align-items:flex-end;height:104px;margin-top:44px;padding-left:2px}
.hero-tile{transform-origin:bottom right;animation:topple 5.2s cubic-bezier(.7,0,.3,1) infinite}
@keyframes topple{0%,6%{transform:rotate(0)}20%,68%{transform:rotate(70deg)}84%,100%{transform:rotate(0)}}
@media (prefers-reduced-motion:reduce){.hero-tile{animation:none;transform:rotate(26deg)}}

/* ---- featured ---- */
.featured{padding:52px 0;border-bottom:1px solid var(--line)}
.featured .grid{display:grid;grid-template-columns:1fr 1.35fr;gap:32px;align-items:start}
.xcard{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--take);border-radius:12px;padding:24px}
.xcard .who{font-family:"Bricolage Grotesque",sans-serif;font-weight:600}
.xcard .handle{font-family:"Space Mono",monospace;font-size:.75rem;color:var(--muted);margin-top:2px}
.xcard blockquote{margin:15px 0 0;font-size:1.05rem;font-style:italic;color:#E6DFD4}
.stream-label{display:inline-block;font-family:"Space Mono",monospace;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:5px;margin-bottom:13px;background:rgba(233,88,74,.14);color:var(--take)}
.label-take{background:rgba(233,88,74,.14);color:var(--take)}
.featured h2{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(1.55rem,3.5vw,2.3rem);line-height:1.13;margin-bottom:13px}
.featured .standfirst{color:#CFC7BB;margin-bottom:20px}
.impact{display:flex;align-items:center;gap:13px;margin:18px 0}
.impact .tile{--pip:var(--take)}
.impact span{font-family:"Space Mono",monospace;font-size:.72rem;color:var(--muted);line-height:1.5}
.readmore{font-family:"Space Mono",monospace;font-size:.85rem;color:var(--take);text-decoration:none;font-weight:700}
.readmore:hover{text-decoration:underline}

/* ---- feed ---- */
.feed{padding:52px 0}
.feed-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:8px}
.feed h3{font-family:"Space Mono",monospace;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.key{font-family:"Space Mono",monospace;font-size:.7rem;color:var(--muted);max-width:560px;line-height:1.6}
.key b{color:var(--ink);font-weight:700}
.rule{height:1px;background:var(--line);margin:14px 0 26px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{display:block;text-decoration:none;background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--line);border-radius:12px;padding:20px;position:relative;transition:transform .14s ease}
.card:hover{transform:translateY(-4px)}
.card .badge{position:absolute;top:-14px;right:18px}
.card.take{border-top-color:var(--take)}
.card.find{border-top-color:var(--find)}
.card.watch{border-top-color:var(--watch)}
.card.take .badge .tile{--pip:var(--take)}
.card.find .badge .tile{--pip:var(--find)}
.card.watch .badge .tile{--pip:var(--watch)}
.card .date{font-family:"Space Mono",monospace;font-size:.68rem;color:var(--muted);letter-spacing:.06em}
.card h4{font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:1.07rem;line-height:1.28;margin:9px 44px 9px 0}
.card p{font-size:.91rem;color:var(--body)}
.card h4 a{text-decoration:none}
.card h4 a:hover{text-decoration:underline}
.card .links{margin-top:11px}
.card .links a{font-family:"Space Mono",monospace;font-size:.73rem;font-weight:700;text-decoration:none;margin-right:15px}
.card .links a:hover{text-decoration:underline}
.card.find .links a{color:var(--find)}
.card.watch .links a{color:var(--watch)}
.card .dur{display:inline-block;font-family:"Space Mono",monospace;font-size:.68rem;background:rgba(106,161,247,.14);color:var(--watch);padding:3px 8px;border-radius:5px;margin-top:11px}
.card .aff{display:block;font-family:"Space Mono",monospace;font-size:.66rem;color:var(--muted);margin-top:13px;border-top:1px dashed var(--line);padding-top:9px}
.embed{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#000;margin-bottom:13px}
.embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---- chain cta ---- */
.chain{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--raised);padding:48px 0;text-align:center;position:relative;overflow:hidden}
.chain .wrap{position:relative;z-index:1}
.chain h3{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(1.6rem,4vw,2.5rem)}
.chain p{max-width:520px;margin:13px auto 22px;color:var(--muted)}
.chain .rail{display:flex;gap:13px;justify-content:center;margin-bottom:26px}
.btn{display:inline-block;font-family:"Space Mono",monospace;font-size:.88rem;background:var(--ink);color:var(--paper);padding:13px 28px;border-radius:7px;text-decoration:none;font-weight:700}
.btn:hover{opacity:.86}

/* ---- about + footer ---- */
.about{padding:46px 0;max-width:660px}
.about h3{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;margin-bottom:11px}
.about p{color:var(--body)}
footer.site{border-top:1px solid var(--line);padding:32px 0 56px;color:var(--muted)}
footer.site .top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:18px}
footer.site nav a{font-family:"Space Mono",monospace;font-size:.76rem;text-decoration:none;margin-left:17px}
.disclosure{font-size:.84rem;max-width:780px;line-height:1.7}

/* ---- article pages ---- */
article{max-width:700px;margin:0 auto;padding:54px 22px 76px}
article h1{font-family:"Bricolage Grotesque",sans-serif;font-weight:800;font-size:clamp(1.9rem,5vw,3rem);line-height:1.08;margin:16px 0 14px;letter-spacing:-.01em}
.byline{font-family:"Space Mono",monospace;font-size:.74rem;color:var(--muted);margin-bottom:6px}
article p{margin-bottom:1.2em;color:var(--body)}
article h2{font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:1.36rem;margin:1.7em 0 .6em;color:var(--ink)}
article a{color:var(--take);text-decoration-thickness:1px;text-underline-offset:2px}
article .xcard{margin:0 0 30px}
article .xcard p{margin-bottom:0}
article strong{color:var(--ink)}
.back{font-family:"Space Mono",monospace;font-size:.85rem;text-decoration:none;color:var(--take);font-weight:700}
.pips{display:flex;gap:5px;align-items:center;margin:14px 0 30px}
.pips span{width:11px;height:11px;border-radius:50%;border:1.5px solid var(--take)}
.pips span.on{background:var(--take)}
.pips .pips-label{font-family:"Space Mono",monospace;font-size:.72rem;color:var(--muted);margin-left:8px;border:0;width:auto;height:auto;border-radius:0}


/* ---- flames (original SVG) ---- */
.hero .flames{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:132px;z-index:0;pointer-events:none;opacity:.8}
.chain .flames{position:absolute;left:0;right:0;bottom:-1px;width:100%;height:76px;z-index:0;pointer-events:none;opacity:.5}
.flames .lick{transform-box:fill-box;transform-origin:50% 100%;animation:flicker 1.7s ease-in-out infinite;animation-delay:var(--d,0s)}
@keyframes flicker{0%,100%{transform:scaleY(1) scaleX(1)}50%{transform:scaleY(1.16) scaleX(.93)}}
@media (prefers-reduced-motion:reduce){.flames .lick{animation:none}}

@media (max-width:900px){
  .featured .grid{grid-template-columns:1fr}
  .cards{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .cards{grid-template-columns:1fr;gap:30px}
  .card{margin-top:4px}
  .card .badge{top:14px;right:14px}          /* tucked INSIDE the card on mobile so it can't overlap neighbours */
  .card h4{margin:9px 40px 9px 0}
  nav.main a{margin-left:12px;font-size:.72rem}
  .hero{padding:44px 0 12px}
  .hero h1{font-size:clamp(2.1rem,10vw,3rem)}
  .hero p.lede{font-size:1rem}
  .chain-rail{gap:7px;height:74px;margin-top:30px}
  .tile{width:30px;height:54px}
  .tile-sm{width:23px;height:41px}
  .hero .tile{width:22px;height:40px}        /* all 11 hero tiles fit within the viewport */
  .feed-head{gap:10px}
  .key{max-width:100%}
  .hero .flames{height:98px}
  .featured{padding:40px 0}
  .feed{padding:40px 0}
}
a:focus-visible,.card:focus-visible,.btn:focus-visible{outline:2px solid var(--watch);outline-offset:3px}
