.xhero{padding:64px 0 44px}
.xhero h1{font-size:clamp(38px,5.6vw,74px);font-weight:700;max-width:20ch;text-transform:uppercase;line-height:.98}
.persona{max-width:640px;margin-top:22px;color:#2A3B4D;font-size:18px}
.typewall{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.type{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--ink);padding:8px 12px;background:#fff}
.xintro{max-width:780px;padding:14px 24px 56px}
.xintro p{margin-bottom:20px;color:#2A3B4D;font-size:17.5px}
.xband{background:var(--ink);color:var(--paper);padding:72px 0}
.xband .eyebrow{color:#7E93A9}
.xband h2{color:var(--paper)}
.xband.alt{background:#fff;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.xband.alt .eyebrow{color:var(--steel)}
.xband.alt h2{color:var(--ink)}
.phasechart{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid #33475C;margin-top:40px}
@media(max-width:920px){.phasechart{grid-template-columns:1fr}}
.phasechart .ph{padding:24px 20px 28px;border-right:1px solid #33475C}
.phasechart .ph:last-child{border-right:0}
@media(max-width:920px){.phasechart .ph{border-right:0;border-bottom:1px solid #33475C}.phasechart .ph:last-child{border-bottom:0}}
.phbar{height:8px;background:#1D2B3A;margin-bottom:16px;overflow:hidden}
.phbar i{display:block;height:100%;background:var(--safety);width:0;transition:width 1s cubic-bezier(.2,.7,.2,1)}
.js .phasechart.in .ph:nth-child(1) .phbar i{width:var(--w);transition-delay:.05s}
.js .phasechart.in .ph:nth-child(2) .phbar i{width:var(--w);transition-delay:.3s}
.js .phasechart.in .ph:nth-child(3) .phbar i{width:var(--w);transition-delay:.55s}
.js .phasechart.in .ph:nth-child(4) .phbar i{width:var(--w);transition-delay:.8s}
.js .phasechart.in .ph:nth-child(5) .phbar i{width:var(--w);transition-delay:1.05s}
html:not(.js) .phbar i{width:var(--w)}
.phasechart h3{font-family:'Barlow Condensed',sans-serif;font-size:24px;text-transform:uppercase;margin:8px 0}
.phasechart p{font-size:14.5px;color:#B9C6D4}
.xresp{padding:72px 24px}
.resp{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:36px}
@media(max-width:900px){.resp{grid-template-columns:1fr}}
.resp .lane{border:2px solid var(--ink);padding:24px 22px;background:#fff}
.resp .lane:nth-child(2){border-color:var(--steel)}
.resp .lane:nth-child(3){background:var(--ink);color:var(--paper);border-color:var(--ink)}
.resp h3{font-family:'Barlow Condensed',sans-serif;font-size:24px;text-transform:uppercase;margin-bottom:12px}
.resp ul{list-style:none}
.resp li{padding:8px 0;border-top:1px solid rgba(128,140,150,.25);font-size:15px}
.ph2{aspect-ratio:3/2;background:var(--concrete);overflow:hidden;border-bottom:2px solid var(--ink)}
.ph2 img{width:100%;height:100%;object-fit:cover;display:block}
.xfaq{max-width:820px;padding:72px 24px 88px}
.faq{border:1px solid var(--line);background:#fff;margin-top:12px}
.faq summary{cursor:pointer;padding:16px 18px;font-family:'Barlow Condensed',sans-serif;font-size:21px;font-weight:600;text-transform:uppercase;letter-spacing:.02em;list-style:none;position:relative}
.faq summary::after{content:"+";position:absolute;right:18px;color:var(--safety);font-size:24px}
.faq[open] summary::after{content:"–"}
.faq p{padding:0 18px 18px;color:#2A3B4D;font-size:15.5px}
.xcta{margin-top:36px}
