/* TOM · Hera Brut v2 — shared system */
:root{
  --paper:#f4f5f8;--white:#fff;--ink:#0f1739;--muted:#5a6079;
  --navy:#0e1444;--cobalt:#4d5be8;--cobalt-2:#7e8aff;--lav:#e7eaff;
  --teal:#3fbfb3;--acid:#c9ff67;--line:#0f1739;
  --display:'Bricolage Grotesque',sans-serif;--body:'Schibsted Grotesk',sans-serif;
  --mono:'Fragment Mono',monospace;--page:1360px;--shadow:6px 6px 0 var(--ink)
}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font:16px/1.5 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--cobalt);outline-offset:4px}::selection{background:var(--cobalt);color:#fff}[hidden]{display:none!important}.wrap{width:min(calc(100% - 40px),var(--page));margin-inline:auto}.skip{position:fixed;left:16px;top:-60px;z-index:100;background:var(--acid);border:2px solid var(--ink);padding:10px 14px;font:700 11px var(--mono);text-transform:uppercase}.skip:focus{top:12px}
/* header */
.site-head{position:sticky;top:0;z-index:50;border-bottom:2px solid var(--ink);background:rgba(244,245,248,.96)}.nav{min-height:68px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:11px}.mark{width:38px;height:38px;display:grid;place-items:center;background:var(--cobalt);color:#fff;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);font:700 13px var(--mono)}.brand-copy{display:flex;align-items:baseline;gap:8px;font:800 20px var(--display);letter-spacing:-.03em}.brand-copy small,.kicker,.micro,.tag,.state,.zone-code,.status,.meta-label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em}.brand-copy small{font-size:9px;color:var(--muted);font-weight:400}.navlinks{margin-left:auto;display:flex;align-items:center;gap:24px}.navlinks a{font-weight:700;font-size:14px;position:relative}.navlinks a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:3px;background:var(--cobalt);transition:right .18s}.navlinks a:hover:after,.navlinks a.on:after{right:0}.session-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:2px solid var(--ink);padding:11px 17px;background:var(--white);box-shadow:4px 4px 0 var(--ink);font:700 11px var(--mono);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;transition:.16s}.session-cta:hover,.button:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--cobalt)}.button.primary{background:var(--cobalt);color:#fff}.button.dark{background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--teal)}.button.quiet{box-shadow:none;background:transparent}.button.quiet:hover{background:var(--teal);transform:none;box-shadow:none}
/* landing */
.hero{min-height:calc(100svh - 68px);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:56px;align-items:center;padding:72px 0 56px}.kicker{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:10px}.kicker:before{content:"";width:11px;height:11px;background:var(--teal);border:2px solid var(--ink)}.hero h1{font:800 clamp(62px,8.5vw,126px)/.85 var(--display);letter-spacing:-.065em;max-width:9ch;margin:25px 0 28px}.hero h1 .accent{color:var(--cobalt)}.hero-lead{font-size:clamp(18px,2vw,25px);line-height:1.25;max-width:42ch;color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:36px}.signal{border:2px solid var(--ink);background:var(--navy);color:#fff;box-shadow:10px 10px 0 var(--teal);align-self:stretch;min-height:500px;display:flex;flex-direction:column;position:relative;overflow:hidden}.signal:before{content:"TOM";position:absolute;right:-22px;top:-36px;font:800 160px/.9 var(--display);color:rgba(255,255,255,.045);letter-spacing:-.08em}.signal-head{display:flex;justify-content:space-between;gap:16px;padding:18px;border-bottom:2px solid rgba(255,255,255,.2)}.signal-head .micro{font-size:10px;color:#c8cdf3}.live{display:flex;align-items:center;gap:7px;font:700 10px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--acid)}.live:before{content:"";width:8px;height:8px;background:var(--acid);animation:pulse 1.8s infinite}@keyframes pulse{50%{opacity:.25}}.signal-map{flex:1;min-height:210px;display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr;align-items:center;justify-items:center;padding:24px;position:relative}.signal-map:before,.signal-map:after{content:"";position:absolute;background:rgba(126,138,255,.45)}.signal-map:before{width:70%;height:2px;left:15%;top:50%}.signal-map:after{height:65%;width:2px;left:50%;top:18%}.signal-map span,.signal-map b{position:relative;z-index:1;width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--cobalt-2);background:var(--navy);font:700 9px var(--mono);letter-spacing:.08em}.signal-map b{grid-column:2;grid-row:1/3;align-self:center;width:72px;height:72px;background:var(--cobalt);border-color:#fff;font:800 28px var(--display);box-shadow:5px 5px 0 var(--teal)}.signal-map span:nth-child(1){grid-column:1;grid-row:1}.signal-map span:nth-child(2){grid-column:3;grid-row:1}.signal-map span:nth-child(4){grid-column:1;grid-row:2}.signal-map span:nth-child(5){grid-column:3;grid-row:2}.signal-body{padding:28px;padding-top:12px}.signal-body strong{display:block;font:750 clamp(32px,4vw,54px)/.95 var(--display);letter-spacing:-.04em}.signal-body p{color:#c8cdf3;margin-top:14px;max-width:29ch}.signal-grid{display:grid;grid-template-columns:1fr 1fr;border-top:2px solid rgba(255,255,255,.2)}.signal-cell{padding:16px;border-right:2px solid rgba(255,255,255,.2)}.signal-cell:last-child{border-right:0}.signal-cell b{display:block;font:700 19px var(--display)}.signal-cell span{font:400 9px var(--mono);text-transform:uppercase;letter-spacing:.1em;color:#9ea5d2}
.marquee{border-block:2px solid var(--ink);background:var(--teal);overflow:hidden}.marquee-track{display:flex;width:max-content;animation:travel 28s linear infinite}.marquee span{padding:13px 20px;font:700 11px var(--mono);letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.marquee span:after{content:"◆";margin-left:40px;color:var(--cobalt)}@keyframes travel{to{transform:translateX(-50%)}}
/* zone index */
.section{padding:100px 0}.section.dark{background:var(--navy);color:#fff}.section-head{display:grid;grid-template-columns:130px 1fr;gap:28px;align-items:start;margin-bottom:42px}.section-head .index{font:700 12px var(--mono);color:var(--cobalt);padding-top:12px}.section.dark .section-head .index{color:var(--teal)}.section-head h2,.page-title{font:780 clamp(46px,6vw,84px)/.92 var(--display);letter-spacing:-.055em}.section-head p{grid-column:2;color:var(--muted);font-size:19px;max-width:50ch}.section.dark .section-head p{color:#bec4eb}.zones{border:2px solid var(--ink);box-shadow:8px 8px 0 var(--ink)}.zone{min-height:150px;display:grid;grid-template-columns:120px minmax(220px,.8fr) 1.2fr auto;align-items:center;gap:28px;padding:24px 28px;border-bottom:2px solid var(--ink);background:var(--white);transition:.18s}.zone:last-child{border-bottom:0}.zone:nth-child(2){background:var(--lav)}.zone:nth-child(3){background:#dff8f4}.zone:nth-child(4){background:var(--acid)}.zone:nth-child(5){background:var(--navy);color:#fff}.zone:hover{padding-left:38px}.zone-code{font-size:13px;color:var(--cobalt)}.zone h3{font:760 clamp(27px,3vw,42px)/1 var(--display);letter-spacing:-.04em}.zone p{color:var(--muted);max-width:48ch}.zone:nth-child(5) p{color:#bdc3e8}.zone .arrow{font:700 34px var(--display);transition:.18s}.zone:hover .arrow{transform:translateX(7px)}.tag{font-size:9px;border:1.5px solid currentColor;padding:4px 8px;display:inline-block;margin-top:8px}
.principles{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:2px;background:var(--ink);border:2px solid var(--ink);box-shadow:8px 8px 0 var(--cobalt)}.principle{background:var(--white);padding:34px;min-height:270px;display:flex;flex-direction:column}.principle:first-child{background:var(--cobalt);color:#fff}.principle .num{font:700 11px var(--mono);letter-spacing:.12em}.principle h3{font:760 clamp(25px,2.6vw,39px)/1 var(--display);letter-spacing:-.04em;margin-top:auto}.principle p{color:var(--muted);margin-top:13px}.principle:first-child p{color:#e8eaff}
/* pages */
.page-hero{padding:72px 0 42px;border-bottom:2px solid var(--ink)}.page-hero .crumb{font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--cobalt)}.page-title{margin-top:24px}.page-lead{font-size:20px;color:var(--muted);max-width:62ch;margin-top:20px}.page-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.page-strip{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:2px solid var(--ink);font:700 10px var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}
.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:28px}.filter{border:2px solid var(--ink);background:var(--white);padding:9px 13px;font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.1em;cursor:pointer}.filter.on,.filter:hover{background:var(--cobalt);color:#fff}.project-list{border-top:2px solid var(--ink)}.project{display:grid;grid-template-columns:100px minmax(190px,.7fr) 1.25fr 190px;gap:24px;align-items:start;padding:30px 10px;border-bottom:2px solid var(--ink);transition:.15s}.project:hover{background:var(--white);padding-inline:20px}.project .code{font:700 10px var(--mono);letter-spacing:.12em;color:var(--cobalt)}.project h2{font:750 clamp(24px,2.7vw,36px)/1 var(--display);letter-spacing:-.035em}.project p{color:var(--muted)}.project-meta{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.status{font-size:9px;border:1.5px solid var(--ink);padding:4px 8px;background:var(--white);color:var(--ink)}.status.ok{background:var(--teal)}.status.work{background:var(--acid)}.stack{display:flex;gap:6px;flex-wrap:wrap}.stack span{font:400 9px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.stack span+span:before{content:"· ";color:var(--cobalt)}
/* comm */
.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.action-block{min-height:300px;border:2px solid var(--ink);padding:30px;background:var(--white);box-shadow:6px 6px 0 var(--ink);display:flex;flex-direction:column}.action-block:nth-child(2){background:var(--lav)}.action-block:nth-child(3){background:#dff8f4}.action-block:nth-child(4){background:var(--acid)}.action-block .micro{font-size:10px;color:var(--muted)}.action-block h2{font:760 clamp(28px,3vw,42px)/1 var(--display);letter-spacing:-.04em;margin:34px 0 14px}.action-block p{color:var(--muted);max-width:42ch}.action-block .button{margin-top:auto;align-self:flex-start}.people{border:2px solid var(--ink);margin-top:64px}.person{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;padding:18px 20px;border-bottom:2px solid var(--ink);align-items:center}.person:last-child{border-bottom:0}.person strong{font-family:var(--display);font-size:20px}.person a{font-family:var(--mono);font-size:11px;color:var(--cobalt);overflow-wrap:anywhere}
/* agents */
.agent-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--ink);border:2px solid var(--ink);margin-bottom:34px}.summary-cell{background:var(--white);padding:24px}.summary-cell b{display:block;font:780 46px/1 var(--display);letter-spacing:-.05em}.summary-cell span{font:400 9px var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}.agent-list{display:grid;gap:14px}.agent{border:2px solid var(--ink);background:var(--white);display:grid;grid-template-columns:54px 1fr 180px 140px;gap:20px;align-items:center;padding:18px;box-shadow:4px 4px 0 var(--ink)}.agent-index{width:42px;height:42px;background:var(--navy);color:#fff;display:grid;place-items:center;font:700 11px var(--mono)}.agent h2{font:740 21px/1.1 var(--display)}.agent p{font-size:13px;color:var(--muted);margin-top:5px}.agent .schedule{font:400 10px var(--mono);text-transform:uppercase;letter-spacing:.08em}.agent .state{font-size:9px;justify-self:end;padding:5px 9px;border:1.5px solid var(--ink);background:var(--teal)}.agent .state.paused{background:#e2e4ed;color:var(--muted)}
/* honest placeholder / public */
.notice{border:2px solid var(--ink);background:var(--navy);color:#fff;padding:clamp(30px,6vw,72px);box-shadow:8px 8px 0 var(--teal)}.notice .micro{font-size:10px;color:var(--teal)}.notice h2{font:760 clamp(34px,5vw,66px)/.95 var(--display);letter-spacing:-.05em;max-width:13ch;margin:36px 0 18px}.notice p{max-width:50ch;color:#c7cceb;font-size:18px}.public-piece{display:grid;grid-template-columns:110px 1fr auto;gap:26px;align-items:center;border-top:2px solid var(--ink);padding:28px 8px}.public-piece:last-child{border-bottom:2px solid var(--ink)}.public-piece .code{font:700 10px var(--mono);color:var(--cobalt)}.public-piece h2{font:740 28px var(--display);letter-spacing:-.03em}.public-piece p{color:var(--muted)}
/* footer */
.site-foot{border-top:2px solid var(--ink);margin-top:100px;padding:28px 0}.foot{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:end}.foot strong{font:780 clamp(36px,5vw,70px)/.8 var(--display);letter-spacing:-.06em}.foot p{font:400 10px var(--mono);text-align:right;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.reveal{opacity:1;transform:none}
@media(max-width:900px){.navlinks{display:none}.hero{grid-template-columns:1fr;min-height:auto}.signal{min-height:400px}.section-head{grid-template-columns:70px 1fr}.zone{grid-template-columns:65px 1fr auto}.zone p{grid-column:2}.zone .tag{display:block;font-size:7px;padding:2px 4px;margin-top:0}.principles{grid-template-columns:1fr}.principle{min-height:220px}.project{grid-template-columns:72px 1fr}.project p,.project-meta{grid-column:2}.agent{grid-template-columns:50px 1fr 120px}.agent .state{grid-column:3;grid-row:1}.agent .schedule{grid-column:2}.action-grid{grid-template-columns:1fr}.person{grid-template-columns:1fr}.person .button{justify-self:start}}
@media(max-width:620px){.wrap{width:min(calc(100% - 28px),var(--page))}.nav{min-height:62px;gap:12px}.brand-copy small{display:none}.session-cta{margin-left:auto;padding:9px 10px;font-size:9px}.hero{padding:52px 0 44px;gap:38px}.hero h1{font-size:clamp(55px,18vw,82px)}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}.signal{min-height:360px}.section{padding:72px 0}.section-head{display:block}.section-head .index{margin-bottom:16px}.section-head p{margin-top:18px}.zone{grid-template-columns:48px 1fr auto;padding:20px 16px;gap:13px}.zone:hover{padding-left:20px}.zone p{font-size:14px}.zone h3{font-size:27px}.page-hero{padding-top:48px}.page-strip{align-items:flex-start;flex-direction:column}.project{grid-template-columns:1fr;padding:24px 4px}.project p,.project-meta{grid-column:1}.project:hover{padding-inline:10px}.toolbar{display:grid;grid-template-columns:1fr 1fr}.filter{width:100%}.agent-summary{grid-template-columns:1fr}.agent{grid-template-columns:44px 1fr;padding:14px;gap:13px}.agent .state{grid-column:2;grid-row:auto;justify-self:start}.agent .schedule{grid-column:2}.public-piece{grid-template-columns:1fr}.public-piece .button{width:auto;justify-self:start}.foot{grid-template-columns:1fr}.foot p{text-align:left}.marquee span{padding-block:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
