.page-hero .glyph-bg{position:absolute;bottom:-10vh;right:-8vw;font-family:var(--display);font-weight:800;font-size:clamp(360px,50vw,900px);line-height:.8;color:var(--magenta);opacity:.05;letter-spacing:-.06em;pointer-events:none;user-select:none;z-index:0}.page-hero .wrap{position:relative;z-index:1}.page-hero .subtitle{font-family:var(--sans);font-weight:600;font-size:clamp(22px,2.4vw,32px);line-height:1.3;letter-spacing:-.02em;color:var(--ink-2);max-width:26ch;margin-bottom:40px}.page-hero .position-line{display:flex;flex-wrap:wrap;gap:0 24px;padding-top:32px;border-top:1px solid var(--line);font-family:var(--mono);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-weight:500}.page-hero .position-line span{display:inline-flex;align-items:center;gap:8px}.page-hero .position-line span:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--magenta)}.route-chain{margin-top:40px;padding:30px 4px;background:transparent;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);font-family:var(--sans);display:flex;flex-wrap:nowrap;align-items:stretch;gap:0;overflow-x:auto;counter-reset:rstep}.route-chain .step{flex:0 0 auto;display:flex;flex-direction:column;gap:7px;padding:4px 18px;white-space:nowrap;font-weight:700;font-size:clamp(14px,1.05vw,16px);letter-spacing:-.01em;color:var(--ink);transition:color .2s,transform .2s}.route-chain .step:before{counter-increment:rstep;content:"0" counter(rstep);font-family:var(--mono);font-weight:500;font-size:11px;letter-spacing:.12em;color:var(--ink-3)}.route-chain .step:hover{color:var(--magenta);transform:translateY(-4px)}.route-chain .step:hover:before{color:var(--magenta)}.route-chain .step:last-of-type{color:var(--magenta)}.route-chain .step:last-of-type:before{color:var(--magenta)}.route-chain .sep{flex:0 0 auto;align-self:center;margin-top:9px;color:var(--magenta);font-family:var(--mono);font-weight:400}.not-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:56px}.not-card{padding:36px 32px 32px 0;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.not-card:nth-child(2n){border-right:0;padding-right:0;padding-left:32px}.not-card:nth-last-child(-n+2){border-bottom:0}.not-card .ix{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--magenta);font-weight:600;margin-bottom:14px}.not-card h4{font-family:var(--sans);font-weight:700;font-size:24px;letter-spacing:-.015em;color:var(--ink);margin-bottom:14px;line-height:1.3}.not-card h4 .neg{color:var(--magenta)}.not-card p{font-family:var(--sans);font-size:16px;line-height:1.75;color:var(--ink-2)}.not-card p strong{color:var(--ink);font-weight:700}.three-layers{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);margin-top:56px}.layer-pillar{padding:40px 28px 36px 0;border-right:1px solid var(--line);position:relative}.layer-pillar:not(:first-child){padding-left:28px}.layer-pillar:last-child{border-right:0;padding-right:0}.layer-pillar .roman{font-family:var(--display);font-weight:300;font-size:80px;line-height:.9;letter-spacing:-.04em;color:var(--magenta);margin-bottom:28px}.layer-pillar h4{font-family:var(--sans);font-weight:700;font-size:24px;letter-spacing:-.015em;color:var(--ink);margin-bottom:4px}.layer-pillar .en{font-family:var(--display);font-size:13px;color:var(--ink-3);margin-bottom:22px}.layer-pillar p{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--ink-2);margin-bottom:1.2em}.layer-pillar p:last-child{margin-bottom:0}.layer-pillar .map{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--magenta);font-weight:600}.stack-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}.stack-card{padding:32px 28px;border:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column}.stack-card:first-child{background:var(--ink);color:var(--bg);border-color:var(--ink)}.stack-card .tag{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--magenta);font-weight:600;margin-bottom:14px}.stack-card h4{font-family:var(--sans);font-weight:700;font-size:22px;letter-spacing:-.015em;margin-bottom:4px}.stack-card:first-child h4{color:var(--bg)}.stack-card .role-en{font-family:var(--display);font-size:13px;color:var(--ink-3);margin-bottom:18px}.stack-card:first-child .role-en{color:#f4f1ea80}.stack-card p{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--ink-2)}.stack-card:first-child p{color:#f4f1eab8}.stack-card p strong{color:var(--ink);font-weight:700}.stack-card:first-child p strong{color:var(--bg)}.commits{margin-top:40px;border-top:1px solid var(--line)}.commit-row{display:grid;grid-template-columns:60px 1fr;gap:32px;padding:22px 0;border-bottom:1px solid var(--line);align-items:baseline}.commit-row .ix{font-family:var(--display);font-weight:300;font-size:28px;color:var(--magenta);letter-spacing:-.02em;line-height:1}.commit-row p{font-family:var(--sans);font-size:17px;line-height:1.6;color:var(--ink-2);letter-spacing:-.005em}.commit-row p strong{color:var(--ink);font-weight:700}.timeline-roadmap{display:grid;grid-template-columns:200px 1fr;gap:56px;margin-top:40px}.timeline-roadmap .stages{display:flex;flex-direction:column;border-left:1px solid var(--line)}.timeline-roadmap .stage{padding:32px 0 32px 40px;position:relative;border-bottom:1px solid var(--line)}.timeline-roadmap .stage:last-child{border-bottom:0}.timeline-roadmap .stage:before{content:"";position:absolute;left:-7px;top:38px;width:13px;height:13px;border-radius:50%;background:var(--bg);border:2px solid var(--ink)}.timeline-roadmap .stage.is-current:before{background:var(--magenta);border-color:var(--magenta);box-shadow:0 0 0 5px #e5145c2e}.timeline-roadmap .stage .phase{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:8px}.timeline-roadmap .stage.is-current .phase{color:var(--magenta)}.timeline-roadmap .stage h4{font-family:var(--sans);font-weight:700;font-size:24px;letter-spacing:-.015em;margin-bottom:16px;color:var(--ink)}.timeline-roadmap .stage ul{list-style:none;display:flex;flex-direction:column;gap:10px;max-width:60ch}.timeline-roadmap .stage li{font-family:var(--sans);font-size:15px;line-height:1.65;color:var(--ink-2);padding-left:22px;position:relative}.timeline-roadmap .stage li:before{content:"";position:absolute;left:0;top:.65em;width:12px;height:1px;background:var(--ink-3)}.timeline-roadmap .side{position:sticky;top:100px;height:max-content;padding-top:32px}.timeline-roadmap .side .label{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--magenta);font-weight:600;margin-bottom:14px}.timeline-roadmap .side p{font-family:var(--sans);font-size:14px;line-height:1.7;color:var(--ink-2)}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:56px}.cap-card{padding:28px 24px;border:1px solid var(--line);background:var(--bg)}.cap-card .ix{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--magenta);font-weight:600;margin-bottom:14px}.cap-card h4{font-family:var(--sans);font-weight:700;font-size:18px;letter-spacing:-.015em;margin-bottom:8px}.cap-card p{font-family:var(--sans);font-size:13px;line-height:1.65;color:var(--ink-2)}.not-card,.cap-card,.layer-pillar{transition:background .2s,box-shadow .2s}.not-card:hover,.cap-card:hover,.layer-pillar:hover{background:#e5145c0b;box-shadow:inset 3px 0 0 var(--magenta)}.timeline-roadmap .stage{transition:background .2s}.timeline-roadmap .stage:hover{background:#e5145c0a}.timeline-roadmap .stage:before{transition:transform .2s,background .2s,border-color .2s}.timeline-roadmap .stage:hover:before{transform:scale(1.35);background:var(--magenta);border-color:var(--magenta)}@media(max-width:920px){.not-grid,.three-layers,.stack-trio,.capability-grid{grid-template-columns:1fr}.not-card,.layer-pillar{border-right:0;padding:28px 0!important}.timeline-roadmap{grid-template-columns:1fr;gap:24px}.timeline-roadmap .side{position:static}.commit-row{grid-template-columns:40px 1fr;gap:16px}}@media(max-width:640px){.stack-trio{grid-template-columns:1fr}}.cond-list{margin:44px 0 8px;border-top:1px solid var(--ink);list-style:none;counter-reset:none}.cond-list li{display:grid;grid-template-columns:44px 1fr;gap:22px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:clamp(16px,1.5vw,19px);line-height:1.5;letter-spacing:-.01em;color:var(--ink);font-weight:500;transition:transform .2s,background .2s}.cond-list li:hover{transform:translate(10px);background:#e5145c0a}.cond-list li .rn{font-family:var(--display);font-style:italic;font-weight:400;font-size:17px;color:var(--magenta)}.cond-list li strong{color:var(--magenta);font-weight:700}.not-grid .not-card:last-child:nth-child(odd){grid-column:1 / -1;border-right:0;padding-left:0}@media(max-width:920px){.cond-list li:hover{transform:none}}
