/* Public home: retain existing burgundy, warm neutrals and typography. */
.pbnk-home-wrap { max-width:1100px; margin:0 auto; }
.pbnk-home-hero { background:#fff; padding:64px 40px 40px; }
.pbnk-home-hero h1 { max-width:860px; font-size:clamp(32px,4.4vw,52px); line-height:1.08; font-weight:600; letter-spacing:-.035em; margin:0 0 24px; }
.pbnk-home-kicker { color:var(--accent,#5c3d3d); font-weight:600; margin:0 0 18px; }
.pbnk-home-lead { max-width:760px; font-size:21px; color:#444; margin:0 0 28px; }
.pbnk-home-actions { display:flex; align-items:center; flex-wrap:wrap; gap:16px; }
.pbnk-home-actions .btn { padding:14px 24px; }
.pbnk-home-tertiary { color:var(--accent,#5c3d3d); font-weight:600; text-decoration:underline; text-underline-offset:4px; padding:12px 4px; }
.pbnk-home-status { background:#fff; padding:0 40px 12px; }
.pbnk-home-status-box { background:#faf9f7; color:#444; border:1px solid #e3e0da; border-radius:5px; padding:0; font-size:14px; line-height:1.5; }
.pbnk-home-status-box summary { padding:7px 12px; cursor:pointer; font-weight:600; }
.pbnk-home-status-box summary span { font-weight:400; }
.pbnk-home-status-box summary:focus-visible { outline:3px solid var(--accent,#5c3d3d); outline-offset:3px; }
.pbnk-home-status-content { padding:4px 12px 12px; }
.pbnk-home-status-box p { margin:0 0 8px; }
.pbnk-home-status-box a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
.pbnk-home-section { padding:52px 40px; background:#fff; }
.pbnk-home-soft { background:#f8f7f4; }
.pbnk-home-section h2 { font-size:clamp(28px,3vw,36px); line-height:1.2; margin:0 0 28px; }
.pbnk-home-intro { max-width:820px; font-size:18px; color:#444; margin:0 0 28px; }
.pbnk-home-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.pbnk-home-card { display:flex; flex-direction:column; min-width:0; color:var(--text,#1f1f1f); text-decoration:none; gap:12px; }
.pbnk-home-card h3 { font-size:22px; line-height:1.3; margin:0; }
.pbnk-home-card p { color:#444; margin:0 0 8px; }
.pbnk-home-number { color:var(--accent,#5c3d3d); font-weight:650; }
.pbnk-home-card-cta { color:var(--accent,#5c3d3d); font-weight:650; margin-top:auto; text-decoration:underline; text-underline-offset:4px; }
.pbnk-home-card:hover { border-color:var(--accent,#5c3d3d); box-shadow:0 3px 12px #5c3d3d12; }
.pbnk-home :is(a,button):focus-visible { outline:3px solid var(--accent,#5c3d3d); outline-offset:4px; }
.pbnk-home .btn-outline:hover { color:#fff; background:var(--accent,#5c3d3d); border-color:var(--accent,#5c3d3d); }
.pbnk-home-capabilities { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; margin-bottom:28px; }
.pbnk-home-capabilities h3 { font-size:22px; margin:0 0 14px; }
.pbnk-home-capabilities ul { color:#444; padding-left:22px; margin:0; }
.pbnk-home-capabilities li { margin-bottom:8px; }
.pbnk-home-join { text-align:center; }
.pbnk-home-join p { font-size:18px; margin:0 0 24px; }
@media(max-width:760px) {
 .pbnk-home-hero { padding:32px 20px 24px; }
 .pbnk-home-lead { font-size:18px; }
 .pbnk-home-status { padding:0 20px 12px; }
 .pbnk-home-section { padding:36px 20px; }
 .pbnk-home-cards,.pbnk-home-capabilities { grid-template-columns:minmax(0,1fr); gap:18px; }
 .pbnk-home-actions { align-items:stretch; }
 .pbnk-home-actions .btn { text-align:center; }
}
/* Keep the app's 390px proportions when a browser exposes a narrower viewport.
   Scale the whole composition together, rather than wrapping fixed-size text. */
@media(max-width:389px) {
 .pbnk-home { font-size:4.102564vw; }
 html body :is(main#main-content,main)[data-pbnk-public-spacing].pbnk-home { padding-top:6.153846vw!important; }
 .pbnk-home-hero { padding:8.205128vw 5.128205vw 6.153846vw; }
 .pbnk-home-kicker { margin-bottom:4.615385vw; }
 .pbnk-home-hero h1 { font-size:8.205128vw; margin-bottom:6.153846vw; hyphens:none; }
 .pbnk-home-lead { font-size:4.615385vw; margin-bottom:7.179487vw; }
 .pbnk-home-actions { gap:4.102564vw; }
 .pbnk-home-actions .btn { font-size:4.102564vw; padding:3.589744vw 6.153846vw; }
 .pbnk-home-tertiary { padding:3.076923vw 1.025641vw; }
 .pbnk-home-status { padding:0 5.128205vw 3.076923vw; }
 .pbnk-home-status-box { font-size:3.589744vw; }
 .pbnk-home-status-box summary { padding:1.794872vw 3.076923vw; }
 .pbnk-home-status-content { padding:1.025641vw 3.076923vw 3.076923vw; }
 .pbnk-home-section { padding:9.230769vw 5.128205vw; }
 .pbnk-home-section h2 { font-size:7.179487vw; margin-bottom:7.179487vw; }
 .pbnk-home-intro,.pbnk-home-join p { font-size:4.615385vw; }
 .pbnk-home-card h3,.pbnk-home-capabilities h3 { font-size:5.641026vw; }
}
