.psa-demo-v2 { width:100%; max-width:960px; min-width:0; margin:1.5rem auto; color:#222; font:inherit; }
.psa-demo-v2 * { box-sizing: border-box; }
.psa-demo-hero-placeholder { min-height: 180px; background: #b5b5b5; color: #303030; display: grid; place-items: center; text-align: center; padding: 1rem; font-weight: 700; }
.psa-demo-step { border: 1px solid #ddd; border-radius: 7px; padding: 1.2rem; margin: 1rem 0; background: #fff; }
.psa-demo-step h2 { margin-top: 0; font-size: 1.35rem; }
.psa-demo-fulfilment-note { margin: .25rem 0 .75rem 1.5rem; font-size: .9rem; }
.psa-demo-visually-hidden { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.psa-demo-step > label { display: block; margin: .6rem 0; }
.psa-demo-step input:not([type=radio]), .psa-demo-step textarea { display: block; width: 100%; max-width: 440px; padding: .55rem; border: 1px solid #777; border-radius: 4px; }
.psa-demo-help { font-size: .9rem; }
.psa-demo-stockists, .psa-demo-catalogue { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.psa-demo-stockist { border: 2px solid #ccc; border-radius: 6px; padding: .85rem; display: grid; gap: .5rem; cursor: pointer; min-height: 132px; min-width: 0; width: 100%; }
.psa-demo-stockist[hidden] { display: none; }
.psa-demo-stockist:has(input:checked) { border-color: #8b1e25; background: #fff6f6; box-shadow: 0 0 0 1px #8b1e25; }
.psa-demo-stockist:focus-within { outline: 3px solid #1261a0; outline-offset: 2px; }
.psa-demo-stockist input[type=radio] { justify-self: start; width: 1.2rem; height: 1.2rem; margin: 0; accent-color: #8b1e25; }
.psa-demo-stockist strong { min-width: 0; overflow-wrap: anywhere; }
.psa-demo-stockist small { display: block; }
.psa-demo-stockist-logo { display:block; width:100%; height:64px; object-fit:contain; }
.psa-demo-stockist-logo-fallback { display:block; min-height:1.4rem; color:#555; font-size:.85rem; }
.psa-demo-v2 select { display:block; width:100%; max-width:440px; padding:.55rem; border:1px solid #777; border-radius:4px; background:#fff; }
.psa-demo-v2 select[hidden] { display:none; }
.psa-demo-product-image { display:block; width:100%; max-width:180px; height:128px; object-fit:contain; object-position:left center; margin:0 0 .75rem; }
.psa-demo-product-image--cart { width:72px; height:72px; margin:0; }
.psa-demo-product-image-fallback { display:inline-block; color:#555; font-size:.85rem; }
.psa-demo-table-wrap { overflow-x: auto; }
.psa-demo-v2 table { width: 100%; border-collapse: collapse; }
.psa-demo-v2 th, .psa-demo-v2 td { border: 1px solid #ddd; padding: .5rem; text-align: left; }
.psa-demo-link, .psa-demo-v2 button { display: inline-block; padding: .55rem .9rem; }
@media (max-width: 700px) {
  .psa-demo-v2 { width:calc(100% - 1rem); margin:.5rem; }
  .psa-demo-stockists, .psa-demo-catalogue { grid-template-columns: 1fr; }
  .psa-demo-hero-placeholder { min-height: 140px; }
}

.psa-demo-client-banner { display:block; width:100%; max-width:100%; height:auto; margin:0 auto .75rem; }

.psa-demo-category-nav { display:flex; flex-wrap:wrap; gap:.65rem; margin:1rem 0; }
.psa-demo-category-nav a { display:inline-block; padding:.65rem 1rem; border:1px solid #8b1e25; border-radius:.25rem; }
.psa-demo-category { scroll-margin-top:1rem; margin:1.5rem 0; }
.psa-demo-category h2 { margin-bottom:.75rem; }
.psa-demo-closest { display:inline-block; justify-self:start; padding:.2rem .6rem; border-radius:1rem; background:#176b38; color:#fff; font-weight:700; }
.psa-demo-return { display:inline-block; padding:.75rem 1rem; border:2px solid currentColor; font-weight:700; }
.psa-demo-add input[type="number"] { width:6rem; }
.psa-demo-add-status { min-height:3em; }
.psa-demo-v2 .psa-demo-submit{display:block;width:100%;max-width:440px;min-height:56px;padding:1rem 1.5rem;border:1px solid #000;border-radius:0;background:#000;color:#fff;font:inherit;font-size:1.15rem;font-weight:700;line-height:1.25;text-align:center;cursor:pointer}
.psa-demo-v2 .psa-demo-submit:disabled{background:#000;color:#fff;opacity:1;cursor:not-allowed;box-shadow:none}
.psa-demo-v2 .psa-demo-submit:focus-visible{outline:3px solid #1261a0;outline-offset:3px}
.psa-demo-submit-help{max-width:440px;margin:1rem 0 .5rem;line-height:1.5}
/* Sponsor hierarchy: scoped to the Stockists journey; native actions remain unchanged. */
:is(.psa-demo-v2,.psa-product-quote) :is(.psa-action-primary,.psa-action-secondary,.psa-action-tertiary){display:inline-flex;box-sizing:border-box;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:.75rem 1rem;border-radius:0;font:inherit;line-height:1.25;text-align:center;cursor:pointer;text-decoration:none;box-shadow:none}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-primary{border:1px solid #000;background:#000;color:#fff;font-weight:700}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-secondary{border:1px solid #000;background:#fff;color:#000}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-tertiary{border:0;background:transparent;color:#000;text-decoration:underline;text-underline-offset:.2em;padding:.75rem .25rem}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-primary:not(:disabled):hover{background:#222;color:#fff}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-secondary:not(:disabled):hover{background:#f2f2f2;color:#000}
:is(.psa-demo-v2,.psa-product-quote) .psa-action-tertiary:not(:disabled):hover{color:#333;text-decoration-thickness:2px}
:is(.psa-demo-v2,.psa-product-quote) :is(.psa-action-primary,.psa-action-secondary,.psa-action-tertiary):focus-visible{outline:3px solid #1261a0;outline-offset:3px}
.psa-demo-v2 .psa-demo-submit.psa-action-primary{display:block;min-height:56px;font-size:1.15rem}
.psa-demo-v2 .psa-demo-submit.psa-action-primary:disabled{background:#000;color:#fff;opacity:1;cursor:not-allowed}
