/* Division I — public apparatus identity */
:root {
  --t-green:#6dff91;
  --t-mint:#a2ffc0;
  --t-olive:#728f63;
  --t-graphite:#101511;
}
.ph {
  min-height:720px; display:flex; align-items:center;
  background:
    linear-gradient(110deg,rgba(9,20,12,.96),rgba(8,9,11,.94) 54%,rgba(10,16,12,.92)),
    #08090b;
}
.ph::after {
  background:
    linear-gradient(90deg,rgba(8,9,11,.1),transparent 58%,rgba(8,9,11,.38)),
    radial-gradient(circle at 78% 45%,rgba(109,255,145,.055),transparent 34%);
}
.ph-inner { max-width:1200px; width:100%; padding-right:min(43vw,520px); }
.ph-h1 { font-size:clamp(3.4rem,7vw,6.8rem); letter-spacing:-.045em; line-height:.84; }
.ph-h1 .g { color:var(--t-green); text-shadow:0 0 34px rgba(109,255,145,.08); }
.tart-hero-label { border-color:rgba(109,255,145,.2); color:var(--t-mint); background:rgba(109,255,145,.025); }
.stat-row { background:transparent; gap:7px; }
.stat-cell {
  position:relative; overflow:hidden; border:1px solid rgba(109,255,145,.08);
  background:linear-gradient(145deg,rgba(16,25,18,.88),rgba(10,13,11,.92));
  transition:transform .3s var(--public-ease),border-color .3s,background-color .3s;
}
.stat-cell::after { content:''; position:absolute; left:0; bottom:0; width:0; height:1px; background:linear-gradient(90deg,var(--t-green),var(--t-olive)); transition:width .55s var(--public-ease); }
.stat-cell:hover { transform:translateY(-3px); border-color:rgba(109,255,145,.2); }
.stat-cell:hover::after { width:100%; }
.stat-val.bl { color:var(--t-olive); }

.tart-apparatus {
  position:absolute; z-index:2; right:clamp(1rem,5vw,6rem); top:50%;
  width:clamp(360px,41vw,610px); height:min(70vh,610px); transform:translateY(-46%);
  opacity:.74; pointer-events:none;
  -webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 88%,transparent 100%);
  mask-image:linear-gradient(to bottom,transparent 0%,#000 9%,#000 88%,transparent 100%);
}
.tart-apparatus svg { width:100%; height:100%; overflow:visible; }
.apparatus-grid path { stroke:rgba(162,255,192,.09); stroke-width:.7; fill:none; }
.apparatus-cable { fill:none; stroke:rgba(114,143,99,.6); stroke-width:1.2; stroke-dasharray:7 7; }
.apparatus-frame { fill:none; stroke:rgba(109,255,145,.55); stroke-width:1.25; }
.apparatus-facet { fill:rgba(109,255,145,.025); stroke:rgba(162,255,192,.42); stroke-width:1; }
.apparatus-core { fill:rgba(109,255,145,.07); stroke:var(--t-green); stroke-width:1.3; }
.motion-ready .apparatus-frame,.motion-ready .apparatus-cable,.motion-ready .apparatus-facet {
  stroke-dasharray:900; stroke-dashoffset:900; animation:apparatusDraw 1.4s .25s var(--public-ease) forwards;
}
.motion-ready .apparatus-cable { animation-delay:.62s; animation-duration:1.15s; }
.motion-ready .apparatus-facet { animation-delay:.42s; }
.motion-ready .apparatus-core { animation:apparatusCore .72s 1.05s backwards var(--public-ease); }
@keyframes apparatusDraw { to{stroke-dashoffset:0} }
@keyframes apparatusCore { from{opacity:0;transform:translateY(10px)} }
.apparatus-code {
  position:absolute; right:5%; bottom:7%; padding:.4rem .6rem;
  border-right:1px solid rgba(109,255,145,.24); color:rgba(162,255,192,.48);
  font-family:'Share Tech Mono',monospace; font-size:.48rem; line-height:1.7;
  letter-spacing:.16em; text-align:right;
}

#tart-hero-field,#tart-apparatus-field,#tart-protocol-field { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.pg { padding-top:7rem; padding-bottom:7rem; }
.pg.alt { background:linear-gradient(135deg,rgba(12,20,14,.95),var(--bg2) 54%,rgba(10,14,11,.96)); }
.pg .pgi { z-index:2; }
.pg .g2 { gap:clamp(3rem,7vw,7rem); }
.sl { color:var(--t-green); }
.panel {
  position:relative; overflow:hidden;
  background:linear-gradient(150deg,rgba(18,27,20,.96),rgba(10,13,11,.94));
  border-color:rgba(109,255,145,.1);
  clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));
}
.panel::before {
  content:'I'; position:absolute; right:1.1rem; top:.5rem; font-family:'Exo 2',sans-serif;
  font-size:7rem; font-weight:800; color:var(--t-green); opacity:.025;
}
.ptop { background:rgba(109,255,145,.025); }
.td-r { transition:padding-left .25s var(--public-ease),background-color .25s; }
.td-r:hover { padding-left:.55rem; background:rgba(109,255,145,.018); }
.gate { position:relative; overflow:hidden; }
.gate::after {
  content:''; position:absolute; left:0; bottom:0; width:100%; height:1px;
  background:linear-gradient(90deg,var(--t-green),transparent); transform:scaleX(0); transform-origin:left;
}
.motion-ready .gate::after { animation:gateResolve .8s .7s var(--public-ease) forwards; }
@keyframes gateResolve { to{transform:scaleX(1)} }

.access-steps { position:relative; padding-left:2rem; }
.access-steps::before { content:''; position:absolute; left:14px; top:0; bottom:0; width:1px; background:linear-gradient(var(--t-green),rgba(109,255,145,.08)); }
.a-step {
  position:relative; grid-template-columns:4rem 1fr; padding:2.25rem 1.25rem;
  border:1px solid transparent; border-bottom-color:rgba(109,255,145,.075);
  transition:transform .35s var(--public-ease),border-color .3s,background-color .3s;
}
.a-step::before {
  content:''; position:absolute; left:-22px; top:50%; width:9px; height:9px;
  background:var(--bg); border:1px solid var(--t-green); transform:translateY(-50%) rotate(45deg);
  transition:background-color .25s,transform .35s var(--public-ease);
}
.a-step:hover { transform:translateX(8px); border-color:rgba(109,255,145,.12); background:rgba(109,255,145,.018); }
.a-step:hover::before { background:var(--t-green); transform:translateY(-50%) rotate(135deg); }
.a-n { color:var(--t-green); font-size:.8rem; }

.cta { position:relative; overflow:hidden; background:linear-gradient(115deg,rgba(10,22,14,.95),var(--bg) 54%,rgba(9,16,17,.96)); }
.cta::before { content:'TARTARUS'; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font:800 clamp(5rem,15vw,13rem)/1 'Exo 2',sans-serif; letter-spacing:.08em; color:var(--white); opacity:.018; }
.cta-i { position:relative; z-index:1; }

[data-theme="light"] .ph {
  background:linear-gradient(110deg,#e5f0e8,#f0f3f5 56%,#e2ece7);
}
[data-theme="light"] .ph::after { background:radial-gradient(circle at 78% 45%,rgba(0,112,59,.075),transparent 36%); }
[data-theme="light"] .tart-apparatus { opacity:.48; }
[data-theme="light"] .apparatus-grid path { stroke:rgba(0,75,40,.09); }
[data-theme="light"] .apparatus-cable { stroke:rgba(62,91,58,.48); }
[data-theme="light"] .apparatus-frame,[data-theme="light"] .apparatus-facet { stroke:rgba(0,105,57,.46); }
[data-theme="light"] .apparatus-facet { fill:rgba(0,105,57,.025); }
[data-theme="light"] .apparatus-core { fill:rgba(0,105,57,.07);stroke:#08733f; }
[data-theme="light"] .apparatus-code { color:rgba(0,75,40,.56);border-color:rgba(0,105,57,.26); }
[data-theme="light"] .stat-cell,[data-theme="light"] .panel {
  background:linear-gradient(145deg,rgba(247,251,248,.97),rgba(218,231,221,.9));
  border-color:rgba(0,112,59,.13);
}
[data-theme="light"] .pg.alt { background:linear-gradient(135deg,#e5eee7,#e9edef 54%,#dfe9e3); }
[data-theme="light"] .a-step::before { background:#f0f3f5; }
[data-theme="light"] .a-step:hover::before { background:#08733f; }
[data-theme="light"] .cta { background:linear-gradient(115deg,#dcebe0,#edf1f3 54%,#dce8e8); }

@media(max-width:1000px){.ph-inner{padding-right:0}.tart-apparatus{opacity:.13;right:-15%;width:70vw}.ph{min-height:680px}}
@media(max-width:700px){.tart-apparatus{right:-42%;width:105vw;opacity:.09}.stat-row{grid-template-columns:1fr}.access-steps{padding-left:1rem}.a-step{grid-template-columns:2.5rem 1fr;padding:1.5rem .6rem}.a-step::before{left:-12px}}
@media(prefers-reduced-motion:reduce){.motion-ready .apparatus-frame,.motion-ready .apparatus-cable,.motion-ready .apparatus-facet,.motion-ready .apparatus-core,.motion-ready .gate::after{animation:none;stroke-dashoffset:0}}
