/* PW quote basket */
.pw2-fab{position:fixed;right:88px;bottom:18px;z-index:9990;display:inline-flex;align-items:center;gap:10px;background:#a0101f;color:#fff !important;
  padding:12px 18px;border-radius:999px;font-weight:600;font-size:15px;line-height:1.2;font-family:inherit;box-shadow:0 6px 18px rgba(0,0,0,.22);text-decoration:none !important}
.pw2-fab b{background:#fff;color:#a0101f;border-radius:999px;min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;padding:0 6px}
.pw2-fab:hover{background:#7d0c18}
.pw2-fab[hidden]{display:none !important}
.pw2 .pw2-addq{margin:10px 0 0}
.pw2-addq-done .pw2-btn{margin-top:10px}
/* ---- basket page: clean two-column layout (items left, sticky request panel right) ---- */
.pw2-bk-head{padding-top:8px;padding-bottom:28px}
.pw2 .pw2-bk-head h1{font-size:40px;line-height:1.05;font-weight:800;letter-spacing:-.02em;margin:0 0 8px;color:#111;text-align:left}
.pw2-bk-head p{margin:0;color:#6b6b6b;max-width:60ch;font-size:16px}
.pw2-basket{margin:0 0 80px;padding:0}
.pw2-basket .pw2-inline{display:inline-block;width:auto;padding:15px 34px}
.pw2-basket-full:not([hidden]){display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}
.pw2-bk-top{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;border-bottom:2px solid #111}
.pw2-bk-count{font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.pw2 a.pw2-bk-more{font-size:14px;text-decoration:underline;text-underline-offset:3px}
.pw2-basket-list{list-style:none;margin:0;padding:0}
.pw2-bi{display:grid;grid-template-columns:168px minmax(0,1fr);gap:28px;padding:28px 0;border-bottom:1px solid #e5e5e5}
.pw2-bi-pic{position:relative;display:block;aspect-ratio:4/5;background:#f5f5f3;overflow:hidden}
.pw2-bi-pic img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:8%}
.pw2-bi-tag{position:absolute;left:8px;top:8px;background:#111;color:#fff;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:3px 7px}
.pw2-bi-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.pw2 a.pw2-bi-name{font-size:19px;font-weight:700;line-height:1.25;color:#111}
.pw2 a.pw2-bi-name:hover{text-decoration:underline;text-underline-offset:3px}
.pw2-bi-ref{font-size:13px;color:#6b6b6b;margin-top:4px}
.pw2-bi-design{margin:8px 0 0;font-size:13px;color:#2e7d4f;font-weight:600}
.pw2-bi-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px 16px;margin-top:18px}
.pw2-bi-fields label{display:grid;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b6b6b;min-width:0}
.pw2-bi-fields input,.pw2-bi-fields select{font:inherit;font-size:15px;text-transform:none;letter-spacing:0;font-weight:400;color:#111;height:44px;padding:0 12px;border:1px solid #cfcfcf;border-radius:0;background:#fff;width:100%;min-width:0}
.pw2-bi-fields input:focus,.pw2-bi-fields select:focus{outline:2px solid #111;outline-offset:-1px;border-color:#111}
.pw2-bi-note{grid-column:1/-1}
.pw2-step{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;border:1px solid #cfcfcf;height:44px}
.pw2-step input{border:0 !important;height:42px !important;text-align:center;padding:0 4px !important}
.pw2-step button{background:#fff;border:0;font-size:20px;line-height:1;cursor:pointer;color:#111;padding:0}
.pw2-step button:hover{background:#f5f5f3}
.pw2 .pw2-bi-x{background:none;border:0;color:#6b6b6b;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:13px;padding:2px 0;white-space:nowrap;width:auto}
.pw2 .pw2-bi-x:hover{color:#a0101f;background:none}
.pw2-bk-next{margin-top:40px;background:#f5f5f3;padding:28px 32px}
.pw2-bk-next h3{margin:0 0 14px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}
.pw2-bk-next ol{margin:0;padding-left:20px;display:grid;gap:10px;color:#333}
.pw2-bk-side{position:sticky;top:110px}
.pw2 .pw2-basket-form{background:#f5f5f3;padding:32px;gap:14px}
.pw2 .pw2-basket-form h2{font-size:24px;font-weight:800;letter-spacing:-.01em;margin:0}
.pw2-bk-sum{margin:0 0 6px;padding:14px 0;border-top:1px solid #dcdcdc;border-bottom:1px solid #dcdcdc;display:grid;gap:6px}
.pw2-bk-sum div{display:flex;justify-content:space-between;font-size:15px}
.pw2-bk-sum dt{color:#6b6b6b}.pw2-bk-sum dd{margin:0;font-weight:700}
.pw2 .pw2-basket-form input:not([type=checkbox]):not([type=file]),.pw2 .pw2-basket-form textarea{background:#fff}
.pw2 .pw2-basket-form .pw2-btn{margin-top:6px;padding:18px;font-size:16px;letter-spacing:.02em}
.pw2-basket-sent,.pw2-basket-empty{padding:56px 0 24px;text-align:center;max-width:560px;margin:0 auto}
.pw2-basket-sent h2,.pw2-basket-empty h2{font-size:30px;font-weight:800;letter-spacing:-.01em;margin:0 0 10px}
.pw2-basket-sent p,.pw2-basket-empty p{color:#444;font-size:16px}
.pw2-bk-tick{width:64px;height:64px;border-radius:50%;background:#2e7d4f;color:#fff;font-size:32px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}
@media (max-width:1100px){
  .pw2-basket-full:not([hidden]){grid-template-columns:1fr;gap:32px}
  .pw2-bk-side{position:static}
}
@media (max-width:640px){
  .pw2 .pw2-bk-head h1{font-size:30px}
  .pw2-bi{grid-template-columns:96px minmax(0,1fr);gap:16px}
  .pw2-bi-fields{grid-template-columns:1fr}
  .pw2 .pw2-basket-form{padding:22px}
  .pw2-bk-next{padding:22px}
}
.pw2-addq-done{padding:28px;position:relative;display:flex;flex-direction:column;gap:6px}
.pw2-addq-done h2{font-size:22px;margin:0}
.pw2-bi-design{margin:6px 0 0;font-size:13px;color:#2e7d4f}
.pw2-addq-dlg [hidden],.pw2-basket [hidden]{display:none !important}
.pw2 .pw2-basket-form label.pw2-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;font-size:13px}
.pw2 .pw2-basket-form label.pw2-check input{margin-top:2px;flex:none}
/* keep the theme's global button/heading styles out of the basket */
.pw2 .pw2-step button{background:#fff !important;color:#111 !important;border:0 !important;border-radius:0 !important;box-shadow:none !important;min-height:0 !important;height:42px;width:40px;padding:0 !important;font-size:20px !important}
.pw2 .pw2-step button:hover{background:#f5f5f3 !important}
.pw2 .pw2-bk-next h3{color:#111 !important;font-size:13px !important;font-weight:700 !important;line-height:1.3 !important;text-transform:uppercase;letter-spacing:.08em;font-family:inherit}
.pw2 .pw2-basket-form h2,.pw2 .pw2-basket-sent h2,.pw2 .pw2-basket-empty h2{color:#111 !important}
.pw2 .pw2-bi-x{min-height:0 !important;box-shadow:none !important}
/* Print positions per basket item */
.pw2-bps{margin-top:16px;border-top:1px solid #e5e5e5;padding-top:12px;display:grid;gap:10px}
.pw2-bps-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b6b6b}
.pw2-bp{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1.3fr);gap:8px 12px;align-items:end}
.pw2-bp-n{height:44px;display:flex;align-items:center;justify-content:center;font-weight:700;background:#f5f5f3}
.pw2-bp label{display:grid;gap:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:#6b6b6b;min-width:0}
.pw2-bp input,.pw2-bp select{font:inherit;font-size:15px;text-transform:none;letter-spacing:0;font-weight:400;color:#111;height:44px;padding:0 12px;border:1px solid #cfcfcf;border-radius:0;background:#fff;width:100%;min-width:0}
.pw2-bp-text{grid-column:2/-1}
.pw2-bp-rm,.pw2-bp-add{background:none;border:0;font:inherit;font-size:14px;font-weight:600;color:#111;text-decoration:underline;cursor:pointer;padding:0 0 12px}
.pw2-bp-add{justify-self:start;padding:2px 0}
@media (max-width:640px){.pw2-bp{grid-template-columns:28px minmax(0,1fr)}.pw2-bp label,.pw2-bp-text{grid-column:2}.pw2-bp-rm{grid-column:2;justify-self:start;padding:0}}
.pw2-bps .pw2-bp-rm,.pw2-bps .pw2-bp-add{background:none !important;border:0 !important;box-shadow:none !important;color:#111 !important;min-height:0;line-height:1.4;letter-spacing:0;text-transform:none}
.pw2-bp-rm{grid-column:2/-1;justify-self:start;padding:0 !important}
