/* Phase 2 scoped marketing additions. Does not load in the application. */
.phase2{--p2-ink:#152c35;--p2-teal:#0a7167;--p2-gold:#d6a14b;--p2-border:#e0e9e7;--p2-mist:#f3f8f7;color:var(--p2-ink)}
.phase2 .p2-main{min-height:60vh}.phase2 .p2-main *{box-sizing:border-box}
.phase2 .p2-hero{padding:3rem 0 3.3rem;background:radial-gradient(ellipse at 90% 0,#e0f2ea 0,transparent 48%),linear-gradient(145deg,#f5faf8,#e8f2f1);border-bottom:1px solid #d7e5e3}
.phase2 .p2-eyebrow{display:inline-block;color:#0b6a5f;text-transform:uppercase;letter-spacing:.13em;font-size:.74rem;font-weight:850;margin:.9rem 0}
.phase2 .p2-hero h1{font-size:clamp(2.05rem,4.5vw,3.65rem);font-weight:850;line-height:1.09;letter-spacing:-.045em;max-width:900px;color:#103940;margin:.4rem 0 1.1rem;text-wrap:balance}
.phase2 .p2-lead{font-size:clamp(1.03rem,1.6vw,1.22rem);line-height:1.7;max-width:880px;color:#465e65;margin:0}
.phase2 .p2-bread{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;font-size:.76rem;margin-bottom:1rem;color:#55716c}.phase2 .p2-bread a{color:#256c62;text-decoration:none}.phase2 .p2-bread a:hover{text-decoration:underline}
.phase2 .p2-content{padding:3.2rem 0}.phase2 .p2-content-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(240px,.85fr);gap:clamp(1rem,4vw,3rem);align-items:start}
.phase2 .p2-prose{font-size:1.025rem;line-height:1.85;max-width:100%;min-width:0}.phase2 .p2-prose h2{font-size:clamp(1.35rem,2vw,1.75rem);letter-spacing:-.023em;line-height:1.3;color:#173d44;margin:2.3rem 0 .75rem}.phase2 .p2-prose h2:first-child{margin-top:0}.phase2 .p2-prose p{margin:0 0 1.1rem;color:#41535a}.phase2 .p2-prose a{color:#086f66;text-decoration:underline;text-underline-offset:3px}
.phase2 .p2-prose .p2-updated{font-size:.8rem;color:#607871;border-bottom:1px solid var(--p2-border);padding-bottom:1rem}.phase2 .p2-example{background:#f1f9f6;border-left:4px solid #13a18c;padding:1.2rem 1.4rem;border-radius:0 12px 12px 0;margin:2rem 0}.phase2 .p2-example h2{margin:0 0 .4rem;font-size:1.3rem}.phase2 .p2-example p:last-child{margin:0}
.phase2 .p2-side{position:sticky;top:85px;background:#fff;border:1px solid var(--p2-border);border-radius:18px;padding:1.15rem;box-shadow:0 14px 36px rgba(25,52,55,.055);min-width:0}.phase2 .p2-side h3{margin:.1rem 0 1rem;color:#173d44;font-size:1.08rem}.phase2 .p2-side p{font-size:.87rem;line-height:1.6;color:#627674}.phase2 .phase2-visual{margin:.5rem auto 1.4rem;background:#f8faf9;border:1px solid #e1e7e5;border-radius:12px;padding:.7rem;text-align:center}.phase2 .phase2-visual img{max-width:100%;width:auto;height:auto;max-height:380px;object-fit:contain;border-radius:8px}.phase2 .phase2-visual figcaption{font-size:.74rem;line-height:1.4;color:#687b78;margin-top:.8rem}
.phase2 .p2-inline{display:block;padding:.72rem .3rem;border-bottom:1px solid var(--p2-border);color:#087268;text-decoration:none!important;font-weight:750;font-size:.93rem}.phase2 .p2-inline:hover{text-decoration:underline!important}
.phase2 .p2-checklist{margin:1.1rem 0 2rem;padding-left:1.5rem;list-style:decimal}.phase2 .p2-checklist li{padding:.28rem .45rem;line-height:1.7}.phase2 .p2-faq{margin:2.4rem 0}.phase2 .p2-faq details{border-bottom:1px solid var(--p2-border);padding:.8rem 0}.phase2 .p2-faq summary{font-weight:720;cursor:pointer;line-height:1.5;color:#143f43;list-style-position:inside}.phase2 .p2-faq details p{padding:.7rem .9rem .2rem}.phase2 .p2-sources{margin:2.2rem 0;padding:1rem;border:1px solid var(--p2-border);border-radius:12px}.phase2 .p2-sources h2{font-size:1.15rem;margin:.2rem 0}.phase2 .p2-sources ul{padding-left:1.4rem}
.phase2 .p2-cta{background:linear-gradient(110deg,#0c4e4b,#087d70);color:#fff;text-align:center;padding:3rem 1.3rem}.phase2 .p2-cta h2{color:white;font-size:clamp(1.5rem,3.5vw,2.35rem);margin:0 0 .5rem}.phase2 .p2-cta p{color:#cceee6;max-width:650px;margin:0 auto 1.2rem}.phase2 .p2-cta .btn{background:white;color:#0f5650;border:0}
.phase2 .p2-resource-tools{border:1px solid var(--p2-border);background:#fff;box-shadow:0 10px 30px rgba(20,56,51,.04);padding:1.25rem;border-radius:18px;margin-bottom:1.4rem;max-width:100%}.phase2 .p2-resource-tools label{display:block;font-weight:780;color:#244e50;margin-bottom:.5rem}.phase2 .p2-resource-tools input{width:100%;max-width:100%;border:1px solid #c4d4d0;padding:.9rem 1rem;border-radius:12px;background:#fff;color:#153d3c;font:inherit;outline-offset:3px}.phase2 .p2-filters{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.85rem}.phase2 .p2-filters button{border-radius:100px;border:1px solid #d5e5df;color:#1c5b55;background:#f8fbfa;padding:.5rem .75rem;font:inherit;font-size:.79rem;cursor:pointer}.phase2 .p2-filters button[aria-pressed="true"]{background:#0d7869;color:#fff;border-color:#0d7869}
.phase2 .p2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.phase2 .p2-tile{min-width:0;background:#fff;border:1px solid #dfe8e5;box-shadow:0 12px 24px rgba(18,42,40,.035);border-radius:16px;padding:1.3rem;transition:box-shadow .18s,transform .18s}.phase2 .p2-tile:hover{box-shadow:0 18px 38px rgba(18,42,40,.09);transform:translateY(-2px)}.phase2 .p2-tile h3{font-size:1.08rem;line-height:1.4;margin:.85rem 0 .5rem;color:#194b4d}.phase2 .p2-tile h3 a{text-decoration:none;color:inherit}.phase2 .p2-tile h3 a:hover{text-decoration:underline}.phase2 .p2-tile p{font-size:.89rem;line-height:1.65;color:#556b69;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.phase2 .p2-tile-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:#198d7e}.phase2 .p2-chip{display:inline-block;border-radius:100px;background:#e8f6f0;color:#236f61;padding:.33rem .65rem;font-weight:700;font-size:.71rem}.phase2 .p2-tile-link{color:#08786b;text-decoration:none;font-size:.88rem;font-weight:800}.phase2 .p2-tile[hidden],.phase2 [hidden]{display:none!important}.phase2 .p2-noresults{padding:2rem;text-align:center;color:#5b7470}
.phase2 .p2-table{border-collapse:collapse;width:100%;display:block;overflow-x:auto;margin:1.4rem 0;border:1px solid #e4ece8;border-radius:12px;font-size:.88rem}.phase2 .p2-table caption{caption-side:top;text-align:left;font-size:.85rem;color:#536966;margin:.4rem 0}.phase2 .p2-table td,.phase2 .p2-table th{padding:.75rem;min-width:120px;border-bottom:1px solid #e5eeeb;text-align:left;vertical-align:top;line-height:1.5}.phase2 .p2-table th{background:#f2f9f6}
.phase2 .p2-demo-note{background:#eefaf4;color:#215749;border:1px solid #c8e8da;border-radius:12px;padding:1rem 1.2rem;margin-bottom:1rem;font-size:.9rem;line-height:1.6}
.phase2 .p2-demo-app{border:1px solid #dbe7e1;box-shadow:0 18px 50px rgba(24,49,47,.09);background:#fff;border-radius:24px;overflow:hidden;max-width:100%}.phase2 .p2-demo-top{background:#123f3c;color:#fff;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1rem 1.3rem}.phase2 .p2-demo-label{font-size:.85rem;font-weight:780;color:#a9e9cf}.phase2 .p2-small-button{border:1px solid #bedbd1;background:#fff;color:#0f544a;border-radius:9px;padding:.53rem .82rem;font:inherit;font-weight:700;cursor:pointer}.phase2 .p2-demo-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,1fr);gap:1rem;padding:1.1rem}.phase2 .p2-demo-panel{border:1px solid #e1eae6;border-radius:14px;padding:1rem;min-width:0;background:#fefefe}.phase2 .p2-demo-panel h2{font-size:1.12rem;margin:0 0 1rem}.phase2 .p2-demo-item{display:flex;align-items:center;justify-content:space-between;gap:.8rem;border-bottom:1px solid #edf1ef;padding:.85rem 0}.phase2 .p2-demo-item:last-child{border:0}.phase2 .p2-demo-item strong{display:block;font-size:.98rem}.phase2 .p2-demo-item small{display:block;color:#6a827a;font-size:.79rem}.phase2 .p2-demo-item button,.phase2 .p2-action{background:#0e786a;color:white;border:0;border-radius:9px;padding:.62rem 1rem;cursor:pointer;font:inherit;font-weight:730}.phase2 .p2-action:disabled{background:#b1c8c0;cursor:not-allowed}.phase2 .p2-demo-item button:hover,.phase2 .p2-action:hover:not(:disabled){background:#0b6157}.phase2 .p2-demo-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.7rem 0;border-bottom:1px solid #edf1ef}.phase2 .p2-demo-row input,.phase2 .p2-demo-panel select{width:75px;max-width:100%;border:1px solid #bed3ca;border-radius:8px;padding:.45rem;font:inherit}.phase2 .p2-demo-row .p2-demo-name{min-width:0;flex:1}.phase2 .p2-demo-total{display:flex;justify-content:space-between;font-weight:850;font-size:1.15rem;margin:1rem 0}.phase2 .p2-demo-status{margin:.75rem 0;padding:.8rem;background:#ebf5ef;color:#195447;border-radius:10px;font-size:.9rem}.phase2 .p2-invoice{background:#fff;border:1px dashed #9eaeab;border-radius:10px;padding:1.1rem;max-width:460px;margin:1rem auto;color:#25393a;box-shadow:0 6px 22px #00000008}.phase2 .p2-invoice-head{text-align:center;border-bottom:2px solid #144f47;padding-bottom:1rem}.phase2 .p2-invoice .p2-demo-row{font-size:.86rem}.phase2 .p2-demo-stack{padding:1rem;display:grid;gap:1rem}.phase2 .p2-qr-art{border:9px solid #f1f6f4;background:#fff;width:165px;height:165px;margin:1rem auto;display:flex;justify-content:center;align-items:center;border-radius:10px}.phase2 .p2-demo-choice{display:flex;flex-wrap:wrap;gap:.7rem}.phase2 .p2-demo-choice button{font:inherit;border:1px solid #d4e3dd;background:#f7fbf9;border-radius:10px;padding:.8rem;cursor:pointer}.phase2 .p2-demo-choice button[aria-pressed="true"]{border-color:#137667;background:#e3f5ed}.phase2 .p2-outro{padding:1.2rem 0;font-size:.92rem}
.phase2 a:focus-visible,.phase2 button:focus-visible,.phase2 summary:focus-visible,.phase2 input:focus-visible{outline:3px solid #eaac4e;outline-offset:3px}
@media(max-width:900px){.phase2 .p2-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.phase2 .p2-content-grid{grid-template-columns:minmax(0,1fr)}.phase2 .p2-side{position:static;max-width:550px}.phase2 .p2-demo-columns{grid-template-columns:1fr}}
@media(max-width:540px){.phase2 .p2-hero{padding:1.8rem 0 2.3rem}.phase2 .p2-grid{grid-template-columns:1fr}.phase2 .p2-content{padding:1.8rem 0}.phase2 .p2-resource-tools{padding:1rem}.phase2 .p2-demo-app{border-radius:14px}.phase2 .p2-demo-columns{padding:.65rem;gap:.65rem}.phase2 .p2-demo-panel{padding:.8rem}.phase2 .p2-demo-item{align-items:flex-start}.phase2 .p2-demo-row{flex-wrap:wrap}.phase2 .p2-demo-row .p2-demo-name{flex-basis:42%}.phase2 .p2-table td,.phase2 .p2-table th{padding:.55rem;min-width:108px}.phase2 .p2-demo-top{padding:.85rem}.phase2 .p2-prose{font-size:.97rem}}
@media(prefers-reduced-motion:reduce){.phase2 .p2-tile{transition:none}.phase2 .p2-tile:hover{transform:none}}

.phase2 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.phase2 .p2-flow{margin:1.6rem 0 2rem;background:#f1f9f5;border:1px solid #dae8df;border-radius:18px;padding:.75rem;overflow:hidden}.phase2 .p2-flow img{display:block;width:100%;height:auto;max-width:100%}.phase2 .p2-flow figcaption{font-size:.76rem;line-height:1.55;color:#5d7871;text-align:center;padding:.5rem}.phase2 .p2-content .p2-flow:first-child{margin-top:0}
