/* Versotrade – e-shop spotřebního materiálu (červená / černá / bílá, motiv „V“) */
:root{ --s-red:#cc3535; --s-red2:#a82a2a; --s-dark:#1d1d1f; --s-ink:#2b2b2b; --s-mute:#77777c; --s-line:#e7e7ea; --s-bg:#f6f6f7; --s-ok:#1f7a3a; }
.vts-noscroll{ overflow:hidden; }
/* ---------- hero ---------- */
.vts-hero{ position:relative; overflow:hidden; background:var(--s-dark); color:#fff; padding:46px 20px 54px; }
.vts-hero:before{ content:""; position:absolute; right:-60px; top:-40px; width:520px; height:420px; background:var(--s-red); clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); opacity:.95; }
.vts-hero:after{ content:""; position:absolute; right:150px; top:-40px; width:300px; height:250px; background:rgba(255,255,255,.07); clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); }
.vts-hero-in{ position:relative; z-index:1; max-width:1200px; margin:0 auto; }
.vts-hero .vts-kicker{ display:inline-block; font:700 12px/1 var(--vt-head,Montserrat,Arial,sans-serif); letter-spacing:.18em; text-transform:uppercase; color:#fff; background:var(--s-red); padding:7px 12px; margin-bottom:16px; }
.vts-hero h1{ font:800 40px/1.12 var(--vt-head,Montserrat,Arial,sans-serif); color:#fff; margin:0 0 12px; max-width:720px; }
.vts-hero p{ font-size:16px; line-height:1.6; color:rgba(255,255,255,.82); max-width:640px; margin:0; }
.vts-crumbs-dark{ position:relative; z-index:1; max-width:1200px; margin:0 auto 18px; font-size:13px; color:rgba(255,255,255,.6); }
.vts-crumbs-dark a{ color:rgba(255,255,255,.75); text-decoration:none; } .vts-crumbs-dark a:hover{ color:#fff; }
/* ---------- obal ---------- */
#vt-shop{ max-width:1200px; margin:0 auto; padding:0 20px 70px; box-sizing:border-box; font-family:var(--vt-body,'Open Sans',Arial,sans-serif); color:var(--s-ink); }
#vt-shop *,.vts-drawer *,.vts-modal *{ box-sizing:border-box; }
.vts-why{ display:grid; grid-template-columns:repeat(3,1fr); gap:0; background:#fff; box-shadow:0 10px 34px rgba(0,0,0,.09); margin:24px 0 22px; position:relative; z-index:2; }
.vts-why div{ display:flex; align-items:center; gap:12px; padding:16px 18px; font:600 14px/1.3 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); border-left:1px solid var(--s-line); }
.vts-why div:first-child{ border-left:0; }
.vts-why i{ flex:0 0 30px; height:30px; border-radius:50%; background:var(--s-red); position:relative; }
.vts-why i:after{ content:""; position:absolute; left:9px; top:8px; width:12px; height:10px; background:#fff; clip-path:polygon(0 0,30% 0,50% 55%,70% 0,100% 0,50% 100%); }
.vts-search{ position:relative; margin:0 0 18px; }
.vts-search input{ width:100%; height:56px; border:2px solid var(--s-dark); border-radius:0; padding:0 56px 0 20px; font-size:16px; background:#fff; outline:none; -webkit-appearance:none; }
.vts-search input:focus{ border-color:var(--s-red); box-shadow:0 0 0 4px rgba(204,53,53,.12); }
.vts-sicon{ position:absolute; right:0; top:0; width:56px; height:56px; background:var(--s-dark); }
.vts-sicon:before{ content:""; position:absolute; left:17px; top:15px; width:16px; height:16px; border:3px solid #fff; border-radius:50%; }
.vts-sicon:after{ content:""; position:absolute; left:34px; top:33px; width:9px; height:3px; background:#fff; transform:rotate(45deg); transform-origin:left; }
.vts-cats{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 18px; }
.vts-cats button{ border:1px solid var(--s-line); background:#fff; color:var(--s-dark); padding:9px 14px; font:600 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); cursor:pointer; transition:.15s; }
.vts-cats button small{ color:var(--s-mute); font-weight:600; margin-left:4px; }
.vts-cats button:hover{ border-color:var(--s-dark); }
.vts-cats button.on{ background:var(--s-dark); border-color:var(--s-dark); color:#fff; } .vts-cats button.on small{ color:rgba(255,255,255,.7); }
.vts-cats .vts-c-knife,.vts-cats .vts-c-router,.vts-cats .vts-c-punch{ border-left:4px solid var(--s-red); }
.vts-brands{ background:var(--s-bg); padding:16px 18px; margin:0 0 22px; border-left:4px solid var(--s-dark); }
.vts-btitle{ font:700 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.08em; color:var(--s-dark); margin-bottom:12px; }
.vts-blist{ display:flex; flex-wrap:wrap; gap:8px; }
.vts-blist button{ background:#fff; border:1px solid var(--s-line); padding:8px 14px; font:700 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); cursor:pointer; }
.vts-blist button:hover{ border-color:var(--s-red); color:var(--s-red); }
.vts-blist button.on{ background:var(--s-red); border-color:var(--s-red); color:#fff; }
.vts-blist .vts-bmore{ background:transparent; border-style:dashed; color:var(--s-mute); }
/* ---------- layout ---------- */
.vts-layout{ display:grid; grid-template-columns:262px 1fr; gap:26px; align-items:start; }
.vts-side{ position:sticky; top:12px; max-height:calc(100vh - 24px); overflow:auto; background:#fff; border:1px solid var(--s-line); }
.vts-sidehead{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; background:var(--s-dark); color:#fff; position:sticky; top:0; z-index:1; }
.vts-sidehead b{ font:700 14px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.08em; }
.vts-sidehead .vts-reset{ background:none; border:0; color:rgba(255,255,255,.75); font-size:12px; text-decoration:underline; cursor:pointer; }
.vts-sideclose,.vts-apply,.vts-fbtn{ display:none; }
.vts-fg{ border-bottom:1px solid var(--s-line); }
.vts-fg summary{ list-style:none; cursor:pointer; padding:13px 16px; font:700 13px/1.2 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); position:relative; }
.vts-fg summary::-webkit-details-marker{ display:none; }
.vts-fg summary:after{ content:""; position:absolute; right:16px; top:15px; width:7px; height:7px; border-right:2px solid var(--s-dark); border-bottom:2px solid var(--s-dark); transform:rotate(45deg); transition:.15s; }
.vts-fg[open] summary:after{ transform:rotate(225deg); top:18px; }
.vts-fg summary em{ font-style:normal; background:var(--s-red); color:#fff; border-radius:9px; padding:1px 7px; font-size:11px; margin-left:4px; }
.vts-fg ul{ list-style:none; margin:0; padding:0 10px 10px; }
.vts-fg li{ margin:0; } .vts-fg li.vts-hid{ display:none; }
.vts-fg label{ display:flex; align-items:center; gap:8px; padding:5px 6px; cursor:pointer; font-size:13px; color:var(--s-ink); }
.vts-fg label:hover{ background:var(--s-bg); }
.vts-fg label.dim{ opacity:.45; }
.vts-fg label span{ flex:1; line-height:1.25; }
.vts-fg label small{ color:var(--s-mute); font-size:11px; }
.vts-fg input[type=checkbox]{ -webkit-appearance:none; appearance:none; width:16px; height:16px; border:2px solid #b9b9be; margin:0; flex:0 0 16px; position:relative; cursor:pointer; background:#fff; }
.vts-fg input[type=checkbox]:checked{ background:var(--s-red); border-color:var(--s-red); }
.vts-fg input[type=checkbox]:checked:after{ content:""; position:absolute; left:3px; top:0; width:4px; height:8px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg); }
.vts-fs{ width:calc(100% - 32px); margin:0 16px 8px; height:32px; border:1px solid var(--s-line); padding:0 10px; font-size:13px; }
.vts-fmore{ background:none; border:0; color:var(--s-red); font-size:12px; font-weight:700; padding:0 16px 12px; cursor:pointer; }
.vts-range div{ display:flex; align-items:center; gap:8px; padding:0 16px 14px; }
.vts-range input{ width:100%; height:34px; border:1px solid var(--s-line); padding:0 8px; font-size:13px; }
/* ---------- výsledky ---------- */
.vts-bar{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; padding:0 0 14px; margin-bottom:16px; border-bottom:2px solid var(--s-dark); scroll-margin-top:12px; }
.vts-count{ font-size:14px; color:var(--s-mute); } .vts-count b{ color:var(--s-dark); font-size:18px; }
.vts-chips{ display:flex; flex-wrap:wrap; gap:6px; flex:1; }
.vts-chips button{ background:var(--s-red); color:#fff; border:0; padding:5px 10px; font-size:12px; font-weight:600; cursor:pointer; }
.vts-sort{ font-size:13px; color:var(--s-mute); margin-left:auto; } .vts-sort select{ height:36px; border:1px solid var(--s-line); padding:0 8px; font-size:13px; background:#fff; color:var(--s-dark); }
.vts-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(215px,1fr)); gap:16px; }
.vts-card{ background:#fff; border:1px solid var(--s-line); display:flex; flex-direction:column; transition:box-shadow .18s, transform .18s, border-color .18s; position:relative; }
.vts-card:hover{ box-shadow:0 14px 36px rgba(0,0,0,.12); transform:translateY(-2px); border-color:#d6d6da; }
.vts-card:before{ content:""; position:absolute; left:0; top:0; width:0; height:3px; background:var(--s-red); transition:width .25s; z-index:2; }
.vts-card:hover:before{ width:100%; }
.vts-cimg{ display:block; position:relative; aspect-ratio:1/1; background:#fff; border-bottom:1px solid var(--s-line); overflow:hidden; }
.vts-cimg img{ width:100%; height:100%; object-fit:contain; padding:10px; transition:transform .3s; }
.vts-card:hover .vts-cimg img{ transform:scale(1.04); }
.vts-noimg{ position:absolute; inset:0; background:var(--s-bg); }
.vts-noimg:after{ content:""; position:absolute; left:50%; top:50%; width:70px; height:56px; margin:-28px 0 0 -35px; background:#d9d9dd; clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); }
.vts-badge{ position:absolute; left:10px; top:10px; background:#fff; color:var(--s-ok); border:1px solid #cfe5d6; font:700 11px/1 var(--vt-head,Montserrat,Arial,sans-serif); padding:5px 8px 5px 20px; text-transform:uppercase; letter-spacing:.04em; }
.vts-badge:before{ content:""; position:absolute; left:8px; top:7px; width:7px; height:7px; border-radius:50%; background:#2fae5b; box-shadow:0 0 0 3px rgba(47,174,91,.18); }
.vts-cbody{ padding:12px 14px 6px; flex:1; }
.vts-brand{ font:700 11px/1.2 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.07em; color:var(--s-red); margin-bottom:6px; }
.vts-card h3{ font:700 14px/1.32 var(--vt-head,Montserrat,Arial,sans-serif); margin:0 0 6px; }
.vts-card h3 a{ color:var(--s-dark); text-decoration:none; } .vts-card h3 a:hover{ color:var(--s-red); }
.vts-code{ font-size:11.5px; color:var(--s-mute); margin-bottom:8px; }
.vts-spec{ list-style:none; margin:0; padding:0; font-size:12px; }
.vts-spec li{ display:flex; justify-content:space-between; gap:8px; padding:3px 0; border-top:1px dashed var(--s-line); }
.vts-spec span{ color:var(--s-mute); } .vts-spec b{ color:var(--s-dark); font-weight:600; text-align:right; }
.vts-cfoot{ padding:10px 14px 14px; }
.vts-price{ font:700 13px/1.2 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); margin-bottom:9px; }
.vts-buy{ display:flex; gap:6px; }
.vts-qty{ width:58px; height:40px; border:1px solid #cfcfd4; text-align:center; font-size:14px; padding:0 4px; }
.vts-add{ flex:1; height:40px; background:var(--s-red); color:#fff; border:0; font:700 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); cursor:pointer; display:flex; align-items:center; justify-content:center; gap:8px; transition:background .15s; padding:0 10px; white-space:nowrap; }
.vts-add:hover{ background:var(--s-red2); }
.vts-add i{ width:14px; height:12px; background:#fff; clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); }
.vts-add.in{ background:var(--s-dark); }
.vts-add.in i{ clip-path:polygon(14% 44%,0 62%,40% 100%,100% 20%,86% 4%,40% 68%); }
.vts-moreWrap{ text-align:center; margin-top:24px; }
.vts-more{ background:#fff; color:var(--s-dark); border:2px solid var(--s-dark); padding:13px 34px; font:700 14px/1 var(--vt-head,Montserrat,Arial,sans-serif); cursor:pointer; text-transform:uppercase; letter-spacing:.06em; }
.vts-more:hover{ background:var(--s-dark); color:#fff; }
.vts-none{ grid-column:1/-1; padding:40px; text-align:center; background:var(--s-bg); color:var(--s-mute); }
.vts-none button{ margin-left:8px; background:var(--s-red); color:#fff; border:0; padding:8px 14px; cursor:pointer; }
/* ---------- košík ---------- */
.vts-cartbtn{ position:fixed; right:22px; bottom:90px; z-index:9990; height:56px; padding:0 18px 0 16px; border:0; background:var(--s-dark); color:#fff; display:flex; align-items:center; gap:10px; cursor:pointer; box-shadow:0 10px 30px rgba(0,0,0,.25); font:700 14px/1 var(--vt-head,Montserrat,Arial,sans-serif); }
.vts-cartbtn svg{ width:24px; height:24px; fill:#fff; }
.vts-cartbtn b{ min-width:24px; height:24px; border-radius:12px; background:#fff; color:var(--s-dark); display:flex; align-items:center; justify-content:center; font-size:12px; padding:0 6px; }
.vts-cartbtn.has{ background:var(--s-red); } .vts-cartbtn.has b{ color:var(--s-red); }
.vts-cartbtn:not(.has){ opacity:.92; }
.vts-drawer{ position:fixed; inset:0; z-index:10000; visibility:hidden; }
.vts-drawer.on{ visibility:visible; }
.vts-dshade{ position:absolute; inset:0; background:rgba(15,15,17,.55); opacity:0; transition:opacity .25s; }
.vts-drawer.on .vts-dshade{ opacity:1; }
.vts-dpanel{ position:absolute; right:0; top:0; bottom:0; width:min(480px,100%); background:#fff; transform:translateX(100%); transition:transform .28s ease; display:flex; flex-direction:column; font-family:var(--vt-body,'Open Sans',Arial,sans-serif); color:var(--s-ink); }
.vts-drawer.on .vts-dpanel{ transform:none; }
.vts-dhead{ display:flex; align-items:center; gap:12px; padding:18px 20px; background:var(--s-dark); color:#fff; }
.vts-dhead h2{ flex:1; margin:0; font:800 18px/1 var(--vt-head,Montserrat,Arial,sans-serif); color:#fff; text-transform:uppercase; letter-spacing:.06em; }
.vts-v{ width:22px; height:18px; background:var(--s-red); clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); }
.vts-x{ background:none; border:0; color:#fff; font-size:30px; line-height:1; cursor:pointer; }
.vts-dbody{ flex:1; overflow:auto; padding:18px 20px 26px; }
.vts-empty{ padding:40px 10px; text-align:center; color:var(--s-mute); font-size:15px; line-height:1.6; }
.vts-clist{ list-style:none; margin:0 0 10px; padding:0; }
.vts-clist li{ padding:12px 0; border-bottom:1px solid var(--s-line); }
.vts-ci{ display:flex; flex-direction:column; gap:3px; margin-bottom:8px; }
.vts-ci .vts-code{ margin:0; font-weight:700; color:var(--s-red); }
.vts-ct{ font-size:14px; font-weight:600; color:var(--s-dark); line-height:1.35; }
.vts-cq{ display:flex; align-items:center; gap:4px; font-size:13px; color:var(--s-mute); }
.vts-cq button{ width:30px; height:30px; border:1px solid #cfcfd4; background:#fff; cursor:pointer; font-size:16px; line-height:1; }
.vts-cq input{ width:64px; height:30px; border:1px solid #cfcfd4; text-align:center; font-size:14px; }
.vts-cq .vts-rm{ margin-left:auto; border:0; color:var(--s-mute); font-size:22px; }
.vts-cq .vts-rm:hover{ color:var(--s-red); }
.vts-cmeta{ display:flex; justify-content:space-between; align-items:center; font-size:13px; color:var(--s-mute); margin-bottom:18px; }
.vts-clear{ background:none; border:0; color:var(--s-mute); text-decoration:underline; cursor:pointer; font-size:12px; }
.vts-form{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.vts-mode{ grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:6px; }
.vts-flbl{ grid-column:1/-1; font:700 12px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.08em; color:var(--s-dark); }
.vts-mode label{ border:2px solid var(--s-line); padding:10px 12px; cursor:pointer; display:flex; flex-direction:column; gap:4px; position:relative; }
.vts-mode input{ position:absolute; opacity:0; }
.vts-mode b{ font:800 14px/1.1 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); }
.vts-mode small{ font-size:11.5px; color:var(--s-mute); line-height:1.35; }
.vts-mode label.on{ border-color:var(--s-red); background:#fdf3f3; } .vts-mode label.on b{ color:var(--s-red); }
.vts-f{ display:flex; flex-direction:column; gap:4px; font-size:12px; color:var(--s-mute); }
.vts-f-wide{ grid-column:1/-1; }
.vts-f input,.vts-f textarea{ border:1px solid #cfcfd4; height:40px; padding:0 10px; font-size:14px; font-family:inherit; color:var(--s-dark); }
.vts-f textarea{ height:auto; padding:8px 10px; resize:vertical; }
.vts-f input:focus,.vts-f textarea:focus{ outline:none; border-color:var(--s-dark); }
.vts-hp{ position:absolute!important; left:-9999px!important; width:1px; height:1px; overflow:hidden; }
.vts-msg{ grid-column:1/-1; font-size:13px; } .vts-msg.err{ color:var(--s-red); font-weight:600; }
.vts-send{ grid-column:1/-1; height:52px; background:var(--s-red); color:#fff; border:0; font:800 15px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.06em; cursor:pointer; }
.vts-send:hover{ background:var(--s-red2); } .vts-send:disabled{ opacity:.6; cursor:wait; }
.vts-gdpr{ grid-column:1/-1; font-size:11.5px; color:var(--s-mute); }
.vts-done{ text-align:center; padding:50px 10px; }
.vts-done h3{ font:800 24px/1.2 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); margin:16px 0 10px; }
.vts-done p{ font-size:15px; line-height:1.6; color:var(--s-ink); }
.vts-okv{ width:74px; height:60px; margin:0 auto; background:var(--s-red); clip-path:polygon(0 0,22% 0,50% 72%,78% 0,100% 0,50% 100%); }
.vts-toast{ position:fixed; left:50%; bottom:24px; transform:translate(-50%,140%); z-index:10001; background:var(--s-dark); color:#fff; padding:12px 14px 12px 18px; display:flex; align-items:center; gap:14px; box-shadow:0 12px 34px rgba(0,0,0,.3); font-size:14px; max-width:calc(100% - 32px); transition:transform .25s; }
.vts-toast.on{ transform:translate(-50%,0); }
.vts-toast span{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.vts-toast button{ background:var(--s-red); color:#fff; border:0; padding:8px 12px; font-weight:700; cursor:pointer; white-space:nowrap; }
/* ---------- detail ---------- */
.vts-modal{ position:fixed; inset:0; z-index:9995; visibility:hidden; }
.vts-modal.on{ visibility:visible; }
.vts-mshade{ position:absolute; inset:0; background:rgba(15,15,17,.6); }
.vts-mbox{ position:relative; max-width:1020px; margin:4vh auto; max-height:92vh; overflow:auto; background:#fff; padding:30px; outline:none; border-top:5px solid var(--s-red); }
.vts-mclose{ position:absolute; right:12px; top:8px; border:0; background:none; font-size:34px; cursor:pointer; color:var(--s-dark); line-height:1; }
.vts-mgrid{ display:grid; grid-template-columns:1fr 1.1fr; gap:30px; }
.vts-mimg{ position:relative; aspect-ratio:1/1; border:1px solid var(--s-line); }
.vts-mimg img{ width:100%; height:100%; object-fit:contain; padding:14px; }
.vts-thumbs{ display:flex; gap:8px; margin-top:10px; }
.vts-thumbs button{ width:74px; height:74px; border:1px solid var(--s-line); background:#fff; padding:4px; cursor:pointer; }
.vts-thumbs button.on{ border:2px solid var(--s-red); }
.vts-thumbs img{ width:100%; height:100%; object-fit:contain; }
.vts-minfo h2{ font:800 24px/1.25 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); margin:0 0 8px; }
.vts-desc{ font-size:14px; line-height:1.65; color:var(--s-ink); }
.vts-mbuy{ background:var(--s-bg); padding:14px 16px; margin:14px 0 20px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; border-left:4px solid var(--s-red); }
.vts-mbuy .vts-price{ margin:0; font-size:16px; display:flex; flex-direction:column; gap:4px; }
.vts-mbuy .vts-price small{ color:var(--s-ok); font-size:12px; }
.vts-mbuy .vts-buy{ flex:1; min-width:220px; }
.vts-minfo h4{ font:800 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.08em; color:var(--s-dark); margin:18px 0 10px; }
.vts-tbl{ width:100%; border-collapse:collapse; font-size:13.5px; }
.vts-tbl th,.vts-tbl td{ text-align:left; padding:7px 10px; border-bottom:1px solid var(--s-line); }
.vts-tbl th{ color:var(--s-mute); font-weight:600; width:45%; }
.vts-tbl tr:nth-child(odd) td,.vts-tbl tr:nth-child(odd) th{ background:#fafafa; }
.vts-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.vts-tags span{ background:var(--s-dark); color:#fff; padding:5px 9px; font-size:12px; font-weight:600; }
.vts-tags2 span{ background:#fff; color:var(--s-ink); border:1px solid var(--s-line); font-weight:400; }
/* ---------- statické stránky (výrobci) ---------- */
.vts-static .vts-grid{ margin-top:10px; }
.vts-blinks{ display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:10px; margin:10px 0 30px; }
.vts-blinks a{ display:flex; justify-content:space-between; align-items:center; padding:14px 16px; background:#fff; border:1px solid var(--s-line); border-left:4px solid var(--s-red); text-decoration:none; color:var(--s-dark); font:700 14px/1.2 var(--vt-head,Montserrat,Arial,sans-serif); }
.vts-blinks a small{ color:var(--s-mute); font-weight:600; }
.vts-blinks a:hover{ border-color:var(--s-dark); border-left-color:var(--s-red); box-shadow:0 8px 22px rgba(0,0,0,.08); }
.vts-cta{ display:inline-block; background:var(--s-red); color:#fff!important; padding:13px 22px; font:800 14px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; letter-spacing:.06em; text-decoration:none; margin:6px 0 20px; }
.vts-cta:hover{ background:var(--s-red2); }
.vts-addbox{ background:var(--s-bg); border-left:4px solid var(--s-red); padding:14px 16px; margin:14px 0; display:flex; flex-wrap:wrap; gap:14px; align-items:center; }
.vts-addbox .vts-price{ margin:0; } .vts-addbox .vts-buy{ min-width:240px; }
/* ---------- mobil ---------- */
@media (max-width:900px){
  .vts-hero{ padding:34px 16px 46px; } .vts-hero h1{ font-size:28px; } .vts-hero:before{ width:300px; height:240px; right:-90px; opacity:.6; } .vts-hero:after{ display:none; }
  #vt-shop{ padding:0 14px 60px; }
  .vts-why{ grid-template-columns:1fr; margin-top:-20px; } .vts-why div{ border-left:0; border-top:1px solid var(--s-line); padding:11px 14px; } .vts-why div:first-child{ border-top:0; }
  .vts-layout{ grid-template-columns:1fr; }
  .vts-side{ position:fixed; inset:0; z-index:10002; max-height:none; transform:translateX(-100%); transition:transform .25s; border:0; padding-bottom:70px; }
  .vts-side-on .vts-side{ transform:none; }
  .vts-sideclose{ display:block; background:none; border:0; color:#fff; font-size:28px; line-height:1; margin-left:10px; }
  .vts-apply{ display:block; position:fixed; left:0; right:0; bottom:0; height:56px; background:var(--s-red); color:#fff; border:0; font:800 15px/1 var(--vt-head,Montserrat,Arial,sans-serif); text-transform:uppercase; }
  .vts-side-on .vts-side .vts-apply{ display:block; }
  .vts-fbtn{ display:inline-block; background:var(--s-dark); color:#fff; border:0; padding:10px 14px; font:700 13px/1 var(--vt-head,Montserrat,Arial,sans-serif); cursor:pointer; }
  .vts-fbtn em{ font-style:normal; background:var(--s-red); padding:1px 6px; border-radius:8px; margin-left:4px; }
  .vts-sort{ margin-left:0; width:100%; } .vts-sort select{ width:calc(100% - 60px); }
  .vts-grid{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .vts-cbody{ padding:10px 10px 4px; } .vts-cfoot{ padding:8px 10px 12px; }
  .vts-card h3{ font-size:13px; } .vts-spec{ display:none; }
  .vts-buy{ flex-wrap:wrap; } .vts-qty{ width:100%; height:34px; } .vts-add{ height:38px; font-size:12px; }
  .vts-mbox{ margin:0; max-height:100vh; height:100%; padding:44px 16px 24px; }
  .vts-mgrid{ grid-template-columns:1fr; gap:16px; }
  .vts-cartbtn{ right:12px; bottom:74px; height:50px; } .vts-cartlbl{ display:none; }
  .vts-form{ grid-template-columns:1fr; } .vts-mode{ grid-template-columns:1fr; }
}
@media (max-width:380px){ .vts-grid{ grid-template-columns:1fr; } }
/* přebití globálních stylů webu */
#vt-shop label,#vt-shop small,#vt-shop span,.vts-drawer label,.vts-drawer small,.vts-drawer span,.vts-modal label,.vts-modal span{ text-transform:none; }
.vts-fg label span{ text-transform:none; }
.vts-cq button{ color:var(--s-dark)!important; font:600 16px/1 Arial,sans-serif!important; padding:0!important; text-indent:0!important; }
.vts-static .vts-count{ display:block; margin:0 0 14px; }
.vts-mode b,.vts-flbl,.vts-f span{ text-transform:none!important; }
.vts-flbl{ text-transform:uppercase!important; }
.vts-static label,.vts-static small,.vts-static span,.vts-static .vts-badge{ text-transform:none; }

/* dlaždice kategorií */
.vts-cats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:12px; margin:0 0 22px; }
.vts-cats .vts-tile{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:6px; padding:12px 10px 12px; background:#fff; border:1px solid var(--s-line); cursor:pointer; transition:.18s; position:relative; }
.vts-cats .vts-tile:before{ content:""; position:absolute; left:0; top:0; height:3px; width:0; background:var(--s-red); transition:width .25s; }
.vts-cats .vts-tile:hover{ box-shadow:0 10px 26px rgba(0,0,0,.1); transform:translateY(-2px); }
.vts-cats .vts-tile:hover:before,.vts-cats .vts-tile.on:before{ width:100%; }
.vts-cats .vts-tile.on{ border-color:var(--s-dark); box-shadow:0 0 0 2px var(--s-dark) inset; }
.vts-cats .vts-tile.dim{ opacity:.45; }
.vts-timg{ width:100%; aspect-ratio:1/1; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.vts-timg img{ width:100%; height:100%; object-fit:contain; }
.vts-tname{ font:700 14px/1.25 var(--vt-head,Montserrat,Arial,sans-serif); color:var(--s-dark); text-transform:none; }
.vts-tile small{ color:var(--s-mute); font-size:12px; }
.vts-cats .vts-tall{ justify-content:center; background:var(--s-bg); }
.vts-vsel{ display:flex; flex-direction:column; gap:3px; margin:0 0 8px; font-size:11.5px; color:var(--s-mute); }
.vts-vsel select{ height:36px; border:1px solid #cfcfd4; padding:0 6px; font-size:13px; background:#fff; color:var(--s-dark); width:100%; }
.vts-v1{ font-size:12px; color:var(--s-mute); margin:0 0 8px; } .vts-v1 b{ color:var(--s-dark); }
.vts-mbuy .vts-vsel{ min-width:200px; margin:0; }
@media (max-width:900px){ .vts-cats{ grid-template-columns:repeat(3,1fr); gap:8px; } .vts-tname{ font-size:12px; } .vts-why{ margin-top:16px; } }
@media (max-width:480px){ .vts-cats{ grid-template-columns:repeat(2,1fr); } }
.vts-sdesc{ font-size:12.5px; line-height:1.5; color:var(--s-ink); margin:0 0 8px; display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden; }

.vts-cimg img,.vts-mimg img{ position:absolute; inset:0; width:100%!important; height:100%!important; max-width:none!important; object-fit:contain; padding:10px; box-sizing:border-box; }
.vts-mimg img{ padding:14px; }
