.sh-cats{flex-wrap:wrap;justify-content:center;gap:8px;margin:26px 0 0;display:flex}.sh-chip{font-family:var(--font-head);letter-spacing:.1em;text-transform:uppercase;border:1.5px solid var(--border-strong);color:var(--fg2);cursor:pointer;background:#fff;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.sh-chip:hover{border-color:var(--cfa-blue);color:var(--cfa-blue)}.sh-chip.on{background:var(--cfa-ink);border-color:var(--cfa-ink);color:#fff}.sh-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:clamp(16px,2.2vw,28px);max-width:1160px;margin:36px auto 0;display:grid}.sh-card{border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);color:inherit;background:#fff;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.sh-card:hover{box-shadow:var(--sh-3);transform:translateY(-4px)}.sh-ph{aspect-ratio:1;background:linear-gradient(160deg,#eef1f7,#dde3ee);place-items:center;display:grid;position:relative;overflow:hidden}.sh-ph img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.sh-card:hover .sh-ph img{transform:scale(1.04)}.sh-ph .placeholder{opacity:.28;filter:grayscale();width:46%}.sh-badge{background:var(--hold);color:var(--cfa-ink);font-family:var(--font-head);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:700;position:absolute;top:12px;left:12px}.sh-badge--uit{background:var(--cfa-ink);color:#fff}.sh-badge--dicht{background:var(--stop);color:#fff}.sh-card .body{flex-direction:column;flex:1;gap:6px;padding:18px 20px 20px;display:flex}.sh-card .cat{font-family:var(--font-head);letter-spacing:.14em;text-transform:uppercase;color:var(--cfa-blue);margin:0;font-size:12px;font-weight:700}.sh-card h3{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em;color:var(--fg1);margin:0;font-size:24px;font-weight:400;line-height:1}.sh-card .opts{font-family:var(--font-body);color:var(--fg3);margin:0;font-size:14px}.sh-price{font-family:var(--font-head);color:var(--fg1);margin:auto 0 0;padding-top:10px;font-size:20px;font-weight:700}.sh-price small{color:var(--fg3);margin-left:6px;font-size:13px;font-weight:500}.sh-empty{text-align:center;font-family:var(--font-body);color:var(--fg2);max-width:520px;margin:40px auto 0;font-size:17px}.sh-crumb{font-family:var(--font-head);letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);margin:0 0 22px;font-size:13px;font-weight:600}.sh-crumb a{color:var(--cfa-blue);text-decoration:none}.sh-detail{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,56px);max-width:1100px;margin:0 auto;display:grid}.sh-detail .sh-ph{border-radius:var(--r-lg);border:1px solid var(--border)}.sh-info h1{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.01em;color:var(--fg1);margin:6px 0 12px;font-size:clamp(34px,4.4vw,54px);font-weight:400;line-height:.96}.sh-info .sh-price{margin:0 0 18px;padding:0;font-size:26px}.sh-info .desc{font-family:var(--font-body);color:var(--fg2);white-space:pre-line;margin:0 0 22px;font-size:17px;line-height:1.6}.sh-lbl{font-family:var(--font-head);letter-spacing:.1em;text-transform:uppercase;color:var(--fg2);margin:0 0 8px;font-size:12px;font-weight:600;display:block}.sh-opts{flex-wrap:wrap;gap:8px;margin:0 0 18px;display:flex}.sh-opt{border-radius:var(--r-md);border:1.5px solid var(--border-strong);min-width:52px;font-family:var(--font-head);color:var(--fg1);cursor:pointer;background:#fff;padding:11px 16px;font-size:15px;font-weight:600;transition:border-color .15s,background .15s,color .15s}.sh-opt:hover{border-color:var(--cfa-blue)}.sh-opt.on{background:var(--cfa-ink);border-color:var(--cfa-ink);color:#fff}.sh-opt.uit{color:var(--fg3);background:var(--cfa-chalk);cursor:not-allowed;text-decoration:line-through}.sh-qty{border:1.5px solid var(--border-strong);border-radius:var(--r-md);align-items:center;margin:0 0 18px;display:inline-flex;overflow:hidden}.sh-qty button{width:44px;height:46px;color:var(--fg1);cursor:pointer;background:#fff;border:none;font-size:22px}.sh-qty button:hover{background:var(--cfa-chalk)}.sh-qty span{text-align:center;min-width:44px;font-family:var(--font-head);font-size:17px;font-weight:700}.sh-note{font-family:var(--font-body);color:var(--fg2);background:var(--cfa-chalk);border-left:4px solid var(--hold);border-radius:var(--r-md);align-items:flex-start;gap:10px;margin:0 0 20px;padding:12px 14px;font-size:14.5px;line-height:1.5;display:flex}.sh-note svg{width:18px;height:18px;color:var(--cfa-blue);flex-shrink:0;margin-top:2px}.sh-added{font-family:var(--font-head);color:var(--go);align-items:center;gap:8px;margin:12px 0 0;font-size:15px;font-weight:600;display:flex}.sh-added a{color:var(--cfa-blue)}.sh-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sh-fab{z-index:90;background:var(--cfa-ink);color:#fff;font-family:var(--font-head);letter-spacing:.06em;text-transform:uppercase;box-shadow:var(--sh-3);border-radius:999px;align-items:center;gap:10px;padding:14px 18px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;position:fixed;bottom:18px;right:18px}.sh-fab svg{width:20px;height:20px}.sh-fab b{background:var(--hold);color:var(--cfa-ink);border-radius:999px;place-items:center;min-width:24px;height:24px;padding:0 7px;font-size:13px;display:grid}.sh-cart{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);align-items:start;gap:clamp(24px,4vw,48px);max-width:1100px;margin:0 auto;display:grid}.sh-lines{gap:12px;display:grid}.sh-row{border:1px solid var(--border);border-radius:var(--r-lg);background:#fff;grid-template-columns:72px 1fr auto;align-items:center;gap:14px;padding:12px 14px;display:grid}.sh-row .sh-ph{aspect-ratio:1;border-radius:var(--r-md);width:72px}.sh-row .sh-ph .placeholder{width:60%}.sh-row .nm{font-family:var(--font-head);color:var(--fg1);margin:0;font-size:16px;font-weight:700}.sh-row .nm a{color:inherit;text-decoration:none}.sh-row .vr{font-family:var(--font-body);color:var(--fg3);margin:2px 0 6px;font-size:14px}.sh-row .sh-qty{transform-origin:0;margin:0;transform:scale(.85)}.sh-row .rm{color:var(--fg3);font-family:var(--font-body);cursor:pointer;background:0 0;border:none;margin-left:10px;padding:0;font-size:13px;text-decoration:underline}.sh-row .tot{font-family:var(--font-head);color:var(--fg1);white-space:nowrap;font-size:17px;font-weight:700}.sh-panel{border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-1);background:#fff;padding:clamp(20px,3vw,30px);position:sticky;top:90px}.sh-panel h2{font-family:var(--font-display);text-transform:uppercase;color:var(--fg1);margin:0 0 16px;font-size:28px;font-weight:400;line-height:1}.sh-form{gap:13px;display:grid}.sh-form label{font-family:var(--font-head);letter-spacing:.1em;text-transform:uppercase;color:var(--fg2);flex-direction:column;gap:5px;font-size:12px;font-weight:600;display:flex}.sh-form input,.sh-form textarea{font-family:var(--font-body);border:1.5px solid var(--border-strong);border-radius:var(--r-md);color:var(--fg1);text-transform:none;letter-spacing:0;background:#fff;padding:13px 14px;font-size:16px;font-weight:400}.sh-form input:focus,.sh-form textarea:focus{border-color:var(--cfa-blue);box-shadow:var(--ring);outline:none}.sh-form input.err{border-color:var(--stop)}.sh-form .row2{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.sh-form .row2 .btn{padding:14px 18px;font-size:13px}.sh-check{align-items:flex-start;gap:10px;line-height:1.5;text-transform:none!important;letter-spacing:0!important;font-family:var(--font-body)!important;color:var(--fg2)!important;flex-direction:row!important;font-size:14.5px!important;font-weight:400!important;display:flex!important}.sh-check input{width:18px;height:18px;margin-top:3px;padding:0}.sh-check a{color:var(--cfa-blue)}.sh-sum{border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-family:var(--font-body);color:var(--fg2);gap:8px;margin:18px 0;padding:16px 0;font-size:15.5px;display:grid}.sh-sum div{justify-content:space-between;gap:12px;display:flex}.sh-sum .tt{font-family:var(--font-head);color:var(--fg1);font-size:20px;font-weight:700}.sh-sum .ok{color:var(--go)}.sh-err{font-family:var(--font-body);color:var(--stop);background:var(--stop-soft);border-radius:var(--r-md);margin:0;padding:10px 12px;font-size:14px;font-weight:500}.sh-hint{font-family:var(--font-body);color:var(--fg3);text-align:center;margin:10px 0 0;font-size:13.5px}.sh-pay{font-family:var(--font-head);letter-spacing:.1em;text-transform:uppercase;color:var(--fg3);justify-content:center;gap:12px;margin:12px 0 0;font-size:12px;font-weight:600;display:flex}.sh-done{border:1px solid var(--border);border-radius:var(--r-lg);max-width:560px;box-shadow:var(--sh-2);text-align:center;background:#fff;margin:0 auto;padding:clamp(28px,4vw,44px)}.sh-done .ic{background:var(--go-soft);width:76px;height:76px;color:var(--go);border-radius:50%;place-items:center;margin:0 auto 20px;display:grid}.sh-done .ic svg{width:40px;height:40px}.sh-done .ic--wait{background:var(--hold-soft);color:var(--hold)}.sh-done .ic--stop{background:var(--stop-soft);color:var(--stop)}.sh-done h1{font-family:var(--font-display);text-transform:uppercase;color:var(--fg1);margin:0;font-size:clamp(32px,4vw,44px);font-weight:400;line-height:.96}.sh-done p{font-family:var(--font-body);color:var(--fg2);max-width:420px;margin:14px auto 0;font-size:16.5px;line-height:1.55}.sh-done .oid{font-family:var(--font-head);letter-spacing:.06em;color:var(--fg1);font-weight:700}.sh-done .btn{margin-top:24px}.sh-terms h3{margin-top:28px}.sh-terms ol{font-family:var(--font-body);color:var(--fg2);gap:8px;margin:0 0 18px;padding-left:22px;font-size:16px;line-height:1.6;display:grid}@media (max-width:860px){.sh-detail,.sh-cart{grid-template-columns:1fr}.sh-panel{position:static}}@media (max-width:480px){.sh-grid{grid-template-columns:repeat(2,1fr);gap:12px}.sh-card .body{padding:12px 12px 14px}.sh-card h3{font-size:19px}.sh-price{font-size:17px}.sh-row{grid-template-columns:56px 1fr}.sh-row .sh-ph{width:56px}.sh-row .tot{grid-column:2}}
