/* Theme 1.8.0: hero CSS-3D cube and terminal-style Now / Latest panel */
@font-face{font-family:"Silkscreen";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/silkscreen-400.woff2) format("woff2")}
@font-face{font-family:"Silkscreen";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/silkscreen-700.woff2) format("woff2")}

/* ---------- hero cube (Rubik-style, CSS 3D; home18.js drives it) ---------- */
.map-intro-copy{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:clamp(1rem,3vw,2.5rem);align-items:start;align-content:center}
.map-intro-copy>*{grid-column:2}
.map-intro-copy>.eyebrow{justify-self:start;margin-top:.5rem;white-space:nowrap}
.map-intro-copy>.hc-wrap{grid-column:1;grid-row:1 / span 6;align-self:center;padding-left:calc(var(--u) * .35);display:flex;flex-direction:column;align-items:center}
.map-intro-copy>h1{max-width:24ch;margin:.75rem 0 .75rem;font-size:clamp(20px,2vw,28px);line-height:1.2}
.hc-wrap{--u:72px}
.hc{--g:1.06;position:relative;width:calc(var(--u) * 4.3);height:calc(var(--u) * 4.3);perspective:1400px;contain:layout;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;outline:none}
.hc.is-dragging{cursor:grabbing}
.hc:focus-visible{outline:3px solid #111;outline-offset:2px;border-radius:4px}
.hc-bar{max-width:calc(var(--u) * 4.5);display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem .75rem;margin-top:.15rem}
.hc-hint{margin:0;font:600 11px/1.3 var(--mono,monospace);letter-spacing:.06em;text-transform:uppercase;color:#3a3e3a;text-align:center}
.hc-reset{min-height:36px;padding:.3rem .8rem;border:2px solid #141414;background:#fffdf8;color:#141414;font:700 12px var(--mono,monospace);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:-3px 3px 0 #141414}
.hc-reset:hover,.hc-reset:focus-visible{background:#f3e61b}
.hc-reset:focus-visible{outline:3px solid #13a8b5;outline-offset:2px}
.hc-w{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0 3%;text-align:center;font:900 calc(var(--u) * .27)/.98 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.025em;color:#0b0c0c;white-space:nowrap;pointer-events:none}
.hc-w{font-size:calc(var(--u) * .35);letter-spacing:-.02em;text-transform:uppercase;line-height:1}
.hc-ic{position:absolute;left:27%;top:14%;width:46%;height:46%;color:#0b0c0c;pointer-events:none}
.hc-lb{position:absolute;left:4%;right:4%;bottom:12%;text-align:center;font:800 calc(var(--u) * .15)/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:.02em;text-transform:uppercase;color:#0b0c0c;white-space:nowrap;overflow:hidden;pointer-events:none}
.hc-bk .hc-lb,.hc-ch .hc-lb{color:#fff}
.hc-c{cursor:pointer}
.hc-bk .hc-ic,.hc-ch .hc-ic{color:#fff}
.hc-sprite{position:absolute;width:0;height:0;overflow:hidden}
.hc-topic{min-height:1.6em;margin:.35rem 0 0;font:700 13px/1.3 var(--mono,monospace);text-align:center}
.hc-topic a{color:#0b0c0c;background:#f3e61b;padding:.2em .5em;text-decoration:none;border:2px solid #0b0c0c}
.hc-topic a:hover,.hc-topic a:focus-visible{background:#6fe07f}
.hc-topic a:focus-visible{outline:3px solid #13a8b5;outline-offset:2px}
.hc-bk .hc-w,.hc-ch .hc-w{color:#fff}
.hc-shadow{position:absolute;left:20%;right:20%;bottom:2%;height:13%;background:radial-gradient(closest-side,rgba(0,0,0,.32),rgba(0,0,0,0));filter:blur(var(--sb,6px));transform:translate3d(var(--sx,0px),var(--sy,0px),0) rotate(var(--sr,0deg)) scaleX(var(--ss,1));pointer-events:none;will-change:transform}
.hc-tilt{position:absolute;inset:0;transform-style:preserve-3d;pointer-events:none}
.hc-spin{position:absolute;left:50%;top:46%;width:0;height:0;transform-style:preserve-3d;transform:rotateX(-27deg) rotateY(45deg)}
.hc-c{position:absolute;left:calc(var(--u) / -2);top:calc(var(--u) / -2);width:var(--u);height:var(--u);transform-style:preserve-3d;pointer-events:none;
 transform:translate3d(calc(var(--x) * var(--g) * var(--u)),calc(var(--y) * var(--g) * var(--u)),calc(var(--z) * var(--g) * var(--u)))}
.hc-c i{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:auto;box-shadow:inset 0 0 0 1px rgba(0,0,0,.16);
 background:linear-gradient(rgba(255,255,255,var(--w,0)),rgba(255,255,255,var(--w,0))),linear-gradient(rgba(0,0,0,var(--d,.12)),rgba(0,0,0,var(--d,.12))),var(--c)}
.hc-c .f1{transform:translateZ(calc(var(--u) / 2))}
.hc-c .f2{transform:rotateY(180deg) translateZ(calc(var(--u) / 2));--d:.4}
.hc-c .f3{transform:rotateY(90deg) translateZ(calc(var(--u) / 2));--d:.28}
.hc-c .f4{transform:rotateY(-90deg) translateZ(calc(var(--u) / 2));--d:.2}
.hc-c .f5{transform:rotateX(90deg) translateZ(calc(var(--u) / 2));--d:0;--w:.22}
.hc-c .f6{transform:rotateX(-90deg) translateZ(calc(var(--u) / 2));--d:.45}
.hc-bk{--c:#202427}.hc-ch{--c:#3d4347}.hc-gr{--c:#19b23b}.hc-lg{--c:#6fe07f}.hc-te{--c:#13a8b5}.hc-ye{--c:#f3e61b}
@media (max-width:1100px){.hc-wrap{--u:60px}}
@media (max-width:899px){
 .map-intro-copy{grid-template-columns:1fr}
 .map-intro-copy>*{grid-column:1}
 .map-intro-copy>.eyebrow{order:0}
 .map-intro-copy>.hc-wrap{grid-column:1;grid-row:auto;justify-self:center;margin:.75rem 0 .25rem;order:1}
 .map-intro-copy>h1,.map-intro-copy>.hero-lead,.map-intro-copy>.map-help{order:2}
 .hc-wrap{--u:72px}
}
@media (max-width:420px){.hc-wrap{--u:70px}}
@media (max-width:350px){.hc-wrap{--u:60px}}

/* ---------- Now / Latest: terminal panel ---------- */
.latest-rail.rl{--g:#5fe3a1;--k:#050706;position:relative;overflow:hidden;isolation:isolate;box-sizing:border-box;max-width:1500px;margin:2rem auto;padding:clamp(1rem,2.6vw,1.9rem);background:var(--g);color:var(--k);border:2px solid var(--k)}
.rl-glyphs{position:absolute;z-index:-1;top:-180px;left:-240px;right:0;bottom:0;opacity:.16;pointer-events:none;filter:brightness(0);background:url("data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="240" height="180" font-family="monospace" fill="%235fe3a1"%3E%3Ctext x="86" y="54" font-size="14"%3E/%3C/text%3E%3Ctext x="22" y="153" font-size="18"%3E%7D%3C/text%3E%3Ctext x="153" y="30" font-size="16"%3E%5B %5D%3C/text%3E%3Ctext x="13" y="38" font-size="22"%3E/%3C/text%3E%3Ctext x="21" y="77" font-size="22"%3E%7D%3C/text%3E%3Ctext x="19" y="160" font-size="16"%3E%7D%3C/text%3E%3Ctext x="165" y="165" font-size="22"%3E%7B%3C/text%3E%3Ctext x="16" y="72" font-size="16"%3E%7B%3C/text%3E%3Ctext x="78" y="123" font-size="14"%3E%5B%3C/text%3E%3Ctext x="150" y="94" font-size="16"%3E%5B %5D%3C/text%3E%3Ctext x="30" y="164" font-size="16"%3E%26lt%3B/%26gt%3B%3C/text%3E%3Ctext x="99" y="40" font-size="14"%3E%5B %5D%3C/text%3E%3Ctext x="148" y="31" font-size="16"%3E%26lt%3B/%26gt%3B%3C/text%3E%3Ctext x="131" y="152" font-size="18"%3E/%3C/text%3E%3Ctext x="123" y="165" font-size="18"%3E%7B %7D%3C/text%3E%3Ctext x="80" y="79" font-size="16"%3E%5B%3C/text%3E%3C/svg%3E") repeat;animation:rl-drift 48s linear infinite;will-change:transform}
@keyframes rl-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(240px,180px,0)}}
.rl .rail-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:2px solid var(--k);padding-bottom:1rem;margin:0}
.rl-title{display:flex;flex-wrap:wrap;align-items:center;gap:.3em .4em;margin:0;font:700 clamp(22px,2.7vw,36px)/1 "Silkscreen","Courier New",monospace;letter-spacing:.03em;text-transform:uppercase;color:var(--k)}
.rl-b{display:inline-block;padding:.14em .32em .08em;background:var(--k);color:var(--g)}
.rl-year{font:700 14px/1 "Silkscreen","Courier New",monospace;letter-spacing:.08em;color:var(--k)}
.rl .rail-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;margin-top:1rem;background:rgba(5,7,6,.35)}
.rl .rail-card{position:relative;margin:0;padding:1.1rem 1.15rem 1.2rem 1.35rem;border:0;background:var(--g);transition:background-color .2s}
.rl .rail-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--k);transform:scaleY(0);transform-origin:top;transition:transform .25s cubic-bezier(.2,.8,.2,1)}
.rl .rail-card:hover,.rl .rail-card:focus-within{background:#7debb5}
.rl .rail-card:hover::before,.rl .rail-card:focus-within::before{transform:scaleY(1)}
.rl .rl-cat{display:inline-block;padding:.32em .55em .26em;background:var(--k);color:var(--g);font:700 clamp(13px,1.05vw,15px)/1.15 "Silkscreen","Courier New",monospace;letter-spacing:.05em;text-transform:uppercase}
.rl .rl-cat::before{content:"> "}
.rl .rail-card h3{margin:.55rem 0 .5rem;font:700 clamp(17px,1.45vw,21px)/1.3 ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono","Courier New",monospace;letter-spacing:-.01em;color:var(--k)}
.rl .rail-card h3 a{color:inherit;text-decoration:none;background-image:linear-gradient(var(--k),var(--k));background-size:0 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s}
.rl .rail-card h3 a::after{content:"";position:absolute;inset:0}
.rl .rail-card:hover h3 a,.rl .rail-card h3 a:focus-visible{background-size:100% 2px}
.rl .rail-card h3 a:focus-visible{outline:none}
.rl .rail-card:focus-within{outline:3px solid var(--k);outline-offset:-3px}
.rl .rail-card p{margin:0;color:#10291c;font:400 14px/1.6 ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono","Courier New",monospace}
@media (max-width:899px){.rl .rail-cards{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rl-glyphs{animation:none}.rl .rail-card,.rl .rail-card::before,.rl .rail-card h3 a{transition:none}}
@media (forced-colors:active){.rl .rail-card:focus-within{outline-color:Highlight}.rl-b{border:1px solid CanvasText}}
/* 3D map (1.8): tilted perspective plane, nodes lifted and extruded above the connector plane. Flat while arranging, in list view and on phones. */
@media (min-width:700px){
 .m3d{perspective:1400px;perspective-origin:50% 35%}
 .m3d .smc-nodes{position:absolute;inset:0}
 .m3d .map-nodes,.m3d .smc-nodes,.m3d .map-connectors,.m3d .smc-lines{transform-origin:50% 55%;transform:scale(.9) rotateX(var(--m3x,14deg)) rotateY(var(--m3y,0deg));transition:transform .6s cubic-bezier(.2,.8,.2,1)}
 .m3d .map-nodes,.m3d .smc-nodes,.m3d .map-node-entry,.m3d .smc-entry{transform-style:preserve-3d}
 .m3d .map-node-entry::before,.m3d .smc-entry::before{content:"";position:absolute;left:6%;right:2%;top:14%;height:calc(100% - 10%);background:rgba(10,14,12,.2);filter:blur(7px);pointer-events:none}
 .m3d .smc-entry::before{height:96px}
 .m3d .map-node,.m3d .smc-node{translate:0 0 28px;transition:translate .3s cubic-bezier(.2,.8,.2,1),transform .25s cubic-bezier(.2,.8,.2,1)}
 .m3d .map-node-entry .map-node{box-shadow:1px 1px 0 #163a32,2px 2px 0 #163a32,3px 3px 0 #163a32,4px 4px 0 #163a32,5px 5px 0 #163a32,6px 6px 0 #163a32,7px 7px 0 #163a32}
 .m3d .smc-node{box-shadow:1px 1px 0 #2b2b2b,2px 2px 0 #2b2b2b,3px 3px 0 #2b2b2b,4px 4px 0 #2b2b2b,5px 5px 0 #2b2b2b,6px 6px 0 #2b2b2b,7px 7px 0 #2b2b2b}
 .m3d .map-node:hover,.m3d .map-node:focus-visible,.m3d .smc-node:hover,.m3d .smc-node:focus-visible{translate:0 0 44px}
 .m3d .map-connectors line,.m3d .smc-lines line{stroke-width:2}
}
@media (prefers-reduced-motion:reduce){.m3d .map-nodes,.m3d .smc-nodes,.m3d .map-connectors,.m3d .smc-lines,.m3d .map-node,.m3d .smc-node{transition:none}}
/* 1.9 contact pop-out face and link */
.hc-c i.hc-pop::after{content:"Contact\A\2192";white-space:pre;position:absolute;inset:5%;display:flex;align-items:center;justify-content:center;text-align:center;background:#050706;color:#5fe3a1;font:800 calc(var(--u) * .2)/1.15 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.01em;box-shadow:inset 0 0 0 2px #5fe3a1;pointer-events:none}
.hc.has-pop{cursor:pointer}
.hc-contact{display:inline-flex;align-items:center;min-height:36px;padding:.35rem .75rem;background:#050706;color:#5fe3a1;font:700 12px/1 "Silkscreen","Courier New",monospace;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;box-shadow:3px 3px 0 rgba(5,7,6,.3)}
.hc-contact:hover,.hc-contact:focus-visible{background:#1d3a2b;color:#5fe3a1}
.hc-contact:focus-visible{outline:3px solid #13a8b5;outline-offset:2px}

/* 2026-10-20 cube text-spam fix (2026-10-21: headline letters restored, labels stay hidden) */
.hc-c i .hc-lb {
  display: none !important;
}
.hc-c i .hc-w{font-size:calc(var(--u) * .4);letter-spacing:0}
