.phase-zero-page{overflow:hidden}
.phase-zero-page [id]{scroll-margin-top:92px}
.pz-hero{position:relative;padding:82px 0 74px;background:linear-gradient(112deg,#f0eaff 0%,#faf9ff 47%,#e6f1ff 100%);border-bottom:1px solid var(--ca-line)}
.pz-hero:after{content:"";position:absolute;width:490px;height:490px;right:-290px;top:-310px;border:64px solid rgba(107,31,255,.08);border-radius:50%;pointer-events:none}
.pz-hero .wrap{position:relative;z-index:1}
.pz-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.75fr);gap:clamp(28px,5vw,76px);align-items:center}
.pz-hero h1{max-width:12ch;margin-top:12px}
.pz-hero .lede{margin-top:22px;font-size:22px;max-width:52ch}
.pz-hero .supporting{font-size:16px;color:var(--ca-muted);max-width:55ch;margin-top:18px}
.pz-hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}
.pz-hero .context{font-size:14px;color:var(--ca-muted);margin-top:17px}
.pz-compass{position:relative;background:var(--ca-navy);color:#fff;border-radius:14px;padding:32px;box-shadow:var(--ca-shadow);overflow:hidden}
.pz-compass:before{content:"";position:absolute;right:-45px;top:-55px;width:175px;height:175px;border:25px solid rgba(247,221,35,.12);border-radius:50%;pointer-events:none}
.pz-compass .eyebrow{color:var(--ca-yellow);position:relative}
.pz-compass h2{font-size:clamp(27px,2.8vw,36px);color:#fff;max-width:15ch;margin:15px 0 20px}
.pz-compass p{position:relative;color:#d7daeb;font-size:15px;line-height:1.6;max-width:36ch}
.pz-compass .question{border-top:1px solid rgba(255,255,255,.2);padding-top:17px;margin-top:21px;color:#fff;font-weight:600;font-size:17px}
.pz-entry{padding:28px 0;border-bottom:1px solid var(--ca-line);background:var(--ca-paper)}
.pz-entry .wrap{display:grid;grid-template-columns:minmax(200px,.45fr) minmax(0,1fr);gap:28px;align-items:center}
.pz-entry h2{font-size:clamp(23px,2.5vw,28px)}
.pz-entry p{margin:0;color:var(--ca-muted);max-width:74ch}
.pz-section-intro{max-width:75ch;color:var(--ca-muted);margin:0 0 34px}
.pz-areas{display:grid;grid-template-columns:minmax(180px,.36fr) minmax(0,1fr);gap:clamp(24px,5vw,70px);border-top:1px solid var(--ca-line);padding:31px 0 39px}
.pz-areas:last-child{padding-bottom:0}
.pz-area-label{align-self:start}
.pz-area-label span{font-family:var(--font-display);color:var(--ca-purple);font-size:14px;font-weight:700;letter-spacing:.08em}
.pz-area-label h3{font-size:clamp(23px,2.5vw,29px);margin-top:11px;max-width:14ch}
.pz-area-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 30px}
.pz-area-items article{min-width:0}
.pz-area-items h4{font-family:var(--font-display);font-size:19px;font-weight:700;letter-spacing:-.015em;line-height:1.2;color:var(--ca-navy);margin:0 0 7px}
.pz-area-items p{font-size:15px;line-height:1.55;color:var(--ca-muted);margin:0}
.pz-approach-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(250px,.65fr);gap:clamp(30px,6vw,85px);align-items:start}
.pz-approach-grid .sec-head{max-width:52ch}
.pz-working{display:grid;gap:0;border-top:1px solid var(--ca-line)}
.pz-working article{display:grid;grid-template-columns:55px minmax(0,1fr);gap:12px;padding:21px 0;border-bottom:1px solid var(--ca-line)}
.pz-working .index{font-family:var(--font-display);font-size:20px;font-weight:700;color:var(--ca-purple);line-height:1.2}
.pz-working h3{font-size:21px}
.pz-working p{font-size:15.5px;color:var(--ca-muted);margin:6px 0 0}
.pz-aside{background:var(--ca-paper);border:1px solid var(--ca-line);border-top:4px solid var(--ca-purple);border-radius:12px;padding:26px}
.pz-aside h3{font-size:24px}
.pz-aside p{font-size:15.5px;color:var(--ca-muted)}
.pz-aside p:last-child{margin-bottom:0}
.pz-output-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.75fr);gap:clamp(28px,5vw,70px);align-items:start}
.pz-output-grid .sec-head{max-width:50ch}
.pz-output-list{list-style:none;padding:0;margin:24px 0 0;border-top:1px solid var(--ca-line)}
.pz-output-list li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:13px;align-items:start;padding:15px 0;border-bottom:1px solid var(--ca-line);margin:0;font-size:16px;color:var(--ca-ink)}
.pz-output-list li:before{content:"↗";color:var(--ca-purple);font-weight:700}
.pz-output-grid aside{background:var(--ca-navy);border-radius:14px;color:#d7daeb;padding:29px}
.pz-output-grid aside .eyebrow{color:var(--ca-yellow)}
.pz-output-grid aside h3{color:#fff;font-size:26px;margin:12px 0}
.pz-output-grid aside p{font-size:15.5px;line-height:1.65}
.pz-relations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pz-relation{background:var(--ca-paper);border:1px solid var(--ca-line);border-radius:12px;padding:25px;border-top:4px solid var(--ca-purple)}
.pz-relation:nth-child(2){border-top-color:var(--ca-blue)}
.pz-relation:nth-child(3){border-top-color:var(--ca-green)}
.pz-relation h3{font-size:23px}
.pz-relation p{font-size:15px;color:var(--ca-muted);line-height:1.55}
.pz-relation a{font-size:15px;font-weight:600}
.pz-relations-note{margin-top:25px;max-width:80ch;font-size:15.5px;color:var(--ca-muted)}
.pz-faq-wrap{max-width:860px}
.pz-cta{padding:76px 0;background:linear-gradient(105deg,var(--ca-navy),#15105a);color:#fff}
.pz-cta .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center}
.pz-cta .eyebrow{color:var(--ca-yellow)}
.pz-cta h2{color:#fff;max-width:19ch}
.pz-cta p:not(.eyebrow){font-size:18px;color:#d7daeb;max-width:55ch}
@media (max-width:900px){.pz-hero-grid{gap:28px}.pz-hero .lede{font-size:20px}.pz-relations{grid-template-columns:1fr 1fr}.pz-relation:last-child{grid-column:1/-1}}
@media (max-width:760px){.pz-hero{padding:53px 0}.pz-hero-grid,.pz-entry .wrap,.pz-areas,.pz-approach-grid,.pz-output-grid,.pz-cta .wrap{grid-template-columns:1fr}.pz-entry{padding:26px 0}.pz-entry .wrap{gap:9px}.pz-areas{gap:19px}.pz-area-label h3{max-width:none;margin-top:6px}.pz-cta{padding:56px 0}}
@media (max-width:560px){.pz-hero h1{max-width:none}.pz-hero .ctas .btn{width:100%}.pz-compass{padding:25px}.pz-area-items,.pz-relations{grid-template-columns:1fr}.pz-relation:last-child{grid-column:auto}.pz-area-items{gap:21px}.pz-areas{padding:28px 0 34px}.pz-cta .btn{width:100%}}