/* Scoped additions: screenshots, local provider choices and desktop navigation. */
.provider-wordmark.verified-logo { font-style:normal; letter-spacing:normal; gap:7px; padding:5px 10px; min-width:0; overflow:hidden; }
.provider-wordmark.verified-logo::before { content:none; }
.provider-wordmark.verified-logo img { display:block; object-fit:contain; width:100%; max-width:140px; height:30px; max-height:100%; }
.provider-wordmark.verified-logo.payfast img { width:auto; max-width:100%; height:32px; max-height:100%; flex:0 1 auto; }
.provider-wordmark.verified-logo.paystack img { width:27px; height:27px; flex:0 0 27px; }
.provider-wordmark.verified-logo.paystack>span:not(.visually-hidden) { font-family:inherit; font-size:18px; font-weight:700; color:#092c3e; }
.product-explainer .px-builder-grid { grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr); align-items:start; }
.real-builder-shots { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; min-width:0; }
.product-explainer .real-shot { background:#fff; border:1px solid #d2ddec; border-radius:10px; overflow:hidden; box-shadow:0 8px 24px #061d4610; }
.screenshot-open { display:block; position:relative; background:#edf2f8; aspect-ratio:16/10; overflow:hidden; }
.screenshot-open img { display:block; width:100%; height:100%; object-fit:contain; }
.shot-tall .screenshot-open img { object-fit:cover; object-position:top; }
.screenshot-open:focus-visible { outline:3px solid #073cda; outline-offset:-4px; }
.screenshot-zoom { position:absolute; bottom:10px; right:10px; background:#081846; color:#fff; border:1px solid #ffffff70; padding:7px 10px; border-radius:6px; font-size:12px; font-weight:700; box-shadow:0 3px 9px #0002; }
.product-explainer .real-shot figcaption { text-align:left; padding:18px; color:var(--ink); }
.real-shot figcaption strong { font-size:18px; display:block; line-height:1.4; margin-bottom:8px; }
.product-explainer .real-shot figcaption p { font-size:15px; line-height:1.6; }
.screenshot-source { display:inline-block; color:#123ca8; text-decoration:underline; text-underline-offset:3px; font-size:13px; margin-top:12px; }
.product-explainer .screenshot-note { font-size:14px; line-height:1.6; color:#44546d; margin-top:18px; }
.real-builder-shots>.screenshot-note { grid-column:1/-1; margin-top:0; }
.store-screenshot-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.store-screenshot-grid .screenshot-open { aspect-ratio:16/10; }
.product-explainer .px-heading>.sa-flag { width:54px; height:36px; flex:0 0 54px; margin-top:5px; }
.sa-payment-panel,.sa-courier-panel { background:white; border:1px solid var(--line); border-radius:12px; padding:26px; }
.sa-payment-panel>.payment-marks { margin:22px 0; grid-template-columns:repeat(6,minmax(0,1fr)); }
.sa-provider-list,.sa-courier-list { list-style:none; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.sa-provider-list li { padding:15px; border-radius:8px; background:#f6f3fa; border:1px solid #e4dbef; }
.sa-provider-list a { font-size:18px; font-weight:800; color:#532280; }
.sa-provider-list span:not(.visually-hidden) { display:block; font-size:14px; line-height:1.5; margin-top:6px; color:#364560; }
.sa-delivery-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:24px 0; }
.sa-delivery-grid article { border:1px solid var(--line); background:#fff; border-radius:12px; padding:26px; }
.sa-delivery-grid .pudo-option { background:linear-gradient(135deg,#edf6ef,#fff); border-color:#b7d8c2; border-top:4px solid var(--green); }
.sa-delivery-grid .pudo-option .px-kicker { color:var(--green); }
.sa-service-icon { display:inline-flex; color:var(--green); margin-bottom:16px; }
.sa-service-icon .icon { width:38px; height:38px; }
.product-explainer .sa-delivery-grid h3 { font-size:25px; }
.product-explainer .sa-delivery-grid p+p { margin-top:14px; }
.sa-resource-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:20px; }
.sa-resource-links a,.sa-courier-list a { color:#073ca6; font-size:15px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.sa-courier-list { grid-template-columns:repeat(4,minmax(0,1fr)); margin:20px 0; }
.sa-courier-list li { background:#f2f6fc; padding:12px; border-radius:6px; }
.back-to-top { display:none; }
.screenshot-dialog { border:1px solid #c7d3e5; border-radius:12px; padding:0; width:min(1400px,94vw); max-width:94vw; max-height:92dvh; background:white; color:#081846; box-shadow:0 20px 80px #0005; }
.screenshot-dialog::backdrop { background:#031332cc; }
.screenshot-dialog-bar { position:sticky; top:0; z-index:1; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px 20px; background:#081846; color:#fff; }
.screenshot-dialog-bar strong { font-size:17px; }
.screenshot-dialog-bar button { background:white; color:#081846; border:0; border-radius:6px; min-width:44px; min-height:44px; padding:8px 14px; font:inherit; font-weight:700; cursor:pointer; }
.screenshot-dialog-image { display:block; width:100%; height:auto; background:#fff; }
.screenshot-dialog-description { padding:18px 24px; font-size:16px; line-height:1.6; }
.screenshot-dialog-description a { display:block; color:#073ca6; text-decoration:underline; margin-top:12px; }
@media (min-width:1101px) and (hover:hover) and (pointer:fine) {
 .back-to-top:not([hidden]) { display:grid; place-items:center; position:fixed; right:24px; bottom:24px; z-index:40; width:52px; height:52px; border:1px solid #b8c9ef; border-radius:50%; background:#fff; color:#073bd4; box-shadow:0 4px 16px #071b4c20; cursor:pointer; }
 .back-to-top svg { width:26px; height:26px; }
 .back-to-top:hover { background:#edf3ff; border-color:#073bd4; }
 .back-to-top:focus-visible { outline:3px solid #ffd923; outline-offset:3px; }
}
@media(max-width:1100px) {
 .product-explainer .px-builder-grid { grid-template-columns:1fr; }
 .store-screenshot-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sa-provider-list,.sa-courier-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sa-payment-panel>.payment-marks { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px) {
 .real-builder-shots,.store-screenshot-grid,.sa-delivery-grid { grid-template-columns:1fr; }
 .sa-payment-panel,.sa-courier-panel,.sa-delivery-grid article { padding:18px; }
 .sa-payment-panel>.payment-marks { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .sa-provider-list { grid-template-columns:1fr; }
 .sa-courier-list { gap:8px; }
 .sa-courier-list a { font-size:14px; }
 .provider-wordmark.verified-logo { padding:5px 8px; }
 .provider-wordmark.verified-logo img { max-width:110px; height:30px; }
 .provider-wordmark.verified-logo.paystack>span:not(.visually-hidden) { font-size:15px; }
 .provider-wordmark.verified-logo.paystack img { width:20px; height:20px; flex-basis:20px; }
 .screenshot-dialog-description { padding:16px; }
}

/* Provider originals retain their colours and proportions beside readable names. */
.provider-with-logo{display:flex;align-items:center;gap:12px;min-width:0;max-width:100%;text-decoration:none}
.provider-name{min-width:0;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.provider-logo-box{display:flex;flex:0 0 88px;align-items:center;justify-content:center;width:88px;height:54px;padding:6px;background:#fff;border-radius:6px;overflow:hidden}
.provider-logo-box img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.provider-logo-dark{background:#272729}
.sa-provider-list>li>span{display:block;margin-top:12px}
.sa-resource-links .provider-with-logo{flex:1 1 220px}
.sa-courier-list .provider-with-logo{height:100%}
@media(max-width:420px){.provider-logo-box{flex-basis:78px;width:78px}.provider-with-logo{gap:10px}}

.sa-provider-list a .provider-name{font-size:18px;font-weight:800;color:#532280;margin-top:0}
.sa-provider-list a .provider-logo-box{display:flex;margin-top:0}
@media(max-width:600px){.sa-courier-list{grid-template-columns:1fr}}
@media(max-width:600px){.store-nudge{grid-template-columns:32px minmax(0,1fr)}.store-nudge>span{min-width:0}.store-nudge>.btn{white-space:normal;min-width:0;text-align:center}}
