:root{--blue:#0b4f9c;--blue-dark:#083b75;--sky:#e8f1fb;--ink:#172033;--muted:#66728a;--line:#e3e8f0;--bg:#f6f8fb;--ok:#1a8f4a;--err:#c62828;--radius:14px;--font:'Manrope',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:#fff;line-height:1.55}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}
h1{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.15;margin:.2em 0 .5em;font-weight:800;letter-spacing:-.02em}h2{font-size:1.35rem;font-weight:800;margin:0 0 .6em}h3{font-size:1.05rem;margin:0 0 .5em}
.container{max-width:1240px;margin:0 auto;padding:0 20px}.muted{color:var(--muted)}.err{color:var(--err)}.hide-sm{display:none}@media(min-width:720px){.hide-sm{display:inline}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.7em 1.3em;border-radius:999px;border:1.5px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-weight:700;cursor:pointer;transition:transform .15s,background-color .15s,box-shadow .15s;text-decoration:none!important}
.btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(11,79,156,.12)}.btn-primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue-dark)}.btn-lg{padding:.9em 1.8em;font-size:1.05rem}.btn-danger{border-color:var(--err);color:var(--err)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
button.link{background:none;border:0;color:var(--muted);cursor:pointer;font:inherit}button.link:hover{color:var(--err)}
.topbar{background:var(--ink);color:#fff;font-size:.85rem}.topbar .container{display:flex;justify-content:space-between;padding-top:6px;padding-bottom:6px}
.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 12px rgba(23,32,51,.04)}
.header-inner{display:flex;align-items:center;gap:20px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.25rem;color:var(--ink);letter-spacing:-.02em}.logo img{height:40px;width:auto}.logo:hover{text-decoration:none}
.search{flex:1;display:flex;min-width:220px;order:3;width:100%}@media(min-width:900px){.search{order:0;width:auto}}
.search input{flex:1;border:1.5px solid var(--line);border-right:0;border-radius:999px 0 0 999px;padding:.7em 1.1em;font:inherit;outline:none}.search input:focus{border-color:var(--blue)}.search button{border:0;background:var(--blue);color:#fff;padding:0 1.3em;border-radius:0 999px 999px 0;font:inherit;font-weight:700;cursor:pointer}
.header-actions{display:flex;gap:18px;margin-left:auto;font-weight:700}.header-actions a{color:var(--ink)}.badge{background:var(--blue);color:#fff;border-radius:999px;padding:0 .55em;font-size:.8rem;margin-left:4px}
.catnav{background:var(--sky);border-top:1px solid var(--line)}.catnav .container{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.catnav a{white-space:nowrap;padding:10px 14px;color:var(--ink);font-weight:600;font-size:.95rem;border-radius:8px}.catnav a:hover{background:#fff;text-decoration:none}
.dropdown{position:relative}.dropdown .menu{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px rgba(23,32,51,.12);padding:8px;min-width:260px;z-index:60;flex-direction:column}.dropdown:hover .menu{display:flex}.dropdown .menu a{padding:8px 12px}
.flash{margin:16px 0;padding:12px 16px;border-radius:12px;font-weight:600;border:1px solid}.flash-success{background:#e9f8ef;border-color:#bfe9cf;color:#146c37}.flash-error{background:#fdecec;border-color:#f5bcbc;color:#9a1c1c}.flash-info{background:var(--sky);border-color:#c9dcf3;color:var(--blue-dark)}
main{min-height:60vh;padding-bottom:40px}
.hero{display:grid;gap:28px;align-items:center;padding:36px 0 10px}@media(min-width:900px){.hero{grid-template-columns:1.1fr 1fr}}
.eyebrow{display:inline-block;background:var(--sky);color:var(--blue);font-weight:800;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;padding:.35em .9em;border-radius:999px}
.hero h1{font-size:clamp(2rem,4.5vw,3.4rem);margin:.4em 0 .3em}.hero p{font-size:1.1rem;color:var(--muted);max-width:52ch}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hero-grid a{background:var(--bg);border-radius:var(--radius);padding:14px;aspect-ratio:1;display:flex;align-items:center;justify-content:center;transition:transform .2s}.hero-grid a:hover{transform:translateY(-4px)}.hero-grid img{max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.usp{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:28px 0}@media(min-width:900px){.usp{grid-template-columns:repeat(4,1fr)}}.usp div{background:var(--bg);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column}.usp b{font-size:.95rem}.usp span{color:var(--muted);font-size:.85rem}
.section{margin:40px 0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px}.section-head a{font-weight:700}
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(min-width:700px){.product-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1000px){.product-grid{grid-template-columns:repeat(4,1fr)}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;height:100%;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(23,32,51,.1)}
.card-img{position:relative;background:var(--bg);aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:12px}.card-img img{max-height:100%;object-fit:contain;mix-blend-mode:multiply}
.tag{position:absolute;top:10px;left:10px;background:var(--blue);color:#fff;font-size:.72rem;font-weight:800;padding:.25em .7em;border-radius:999px}.tag-muted{background:var(--muted);top:auto;bottom:10px}
.card-body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px}.card-title{color:var(--ink);font-weight:700;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.9em;font-size:.95rem}.card-price b{font-size:1.1rem}.card-price s{color:var(--muted);margin-left:6px;font-size:.9rem}
.bestseller-slider{padding:6px 4px 44px}.swiper-button-next,.swiper-button-prev{color:var(--blue);background:#fff;width:40px;height:40px;border-radius:50%;box-shadow:0 4px 14px rgba(23,32,51,.15)}.swiper-button-next:after,.swiper-button-prev:after{font-size:16px;font-weight:900}.swiper-pagination-bullet-active{background:var(--blue)}
.cat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}@media(min-width:700px){.cat-grid{grid-template-columns:repeat(4,1fr)}}.cat-card{background:var(--bg);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--ink);font-weight:700;gap:6px;transition:transform .2s}.cat-card:hover{transform:translateY(-3px);text-decoration:none}.cat-card img{height:120px;object-fit:contain;mix-blend-mode:multiply}.cat-card small{color:var(--muted);font-weight:500}
.breadcrumb{font-size:.9rem;color:var(--muted);margin:18px 0}.list-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}select,input,textarea{font:inherit}
.sort select{border:1.5px solid var(--line);border-radius:10px;padding:.5em .8em}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 18px}.chip{border:1.5px solid var(--line);border-radius:999px;padding:.35em .9em;font-size:.9rem;color:var(--ink);font-weight:600}.chip.active,.chip:hover{background:var(--blue);border-color:var(--blue);color:#fff;text-decoration:none}
.pager{display:flex;gap:6px;justify-content:center;margin:30px 0}.pager a{border:1.5px solid var(--line);border-radius:10px;padding:.4em .8em;font-weight:700}.pager a.active{background:var(--blue);color:#fff;border-color:var(--blue)}.empty{background:var(--bg);padding:30px;border-radius:var(--radius);text-align:center;color:var(--muted)}
.product-detail{display:grid;gap:32px;margin-top:10px}@media(min-width:900px){.product-detail{grid-template-columns:1.1fr 1fr}}
.gallery img#main-img{background:var(--bg);border-radius:var(--radius);aspect-ratio:1;object-fit:contain;width:100%;padding:16px;mix-blend-mode:multiply}.thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto}.thumbs img{width:72px;height:72px;object-fit:contain;background:var(--bg);border-radius:10px;padding:6px;cursor:pointer;border:2px solid transparent}.thumbs img:hover{border-color:var(--blue)}
.buybox h1{font-size:1.7rem}.price-line{display:flex;align-items:baseline;gap:12px;margin:8px 0 2px}.price{font-size:2rem;font-weight:800;color:var(--blue)}.price-line s{color:var(--muted)}
.stock{font-weight:700;margin:14px 0}.stock.ok{color:var(--ok)}.stock.out{color:var(--err)}
.variant-group{border:0;padding:0;margin:0 0 12px}.variant-group legend{font-weight:700;margin-bottom:6px}.variant-group .chosen{color:var(--blue)}.opt{border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:.5em .9em;margin:0 6px 6px 0;font:inherit;font-weight:600;cursor:pointer;transition:border-color .15s,background-color .15s}.opt.active{border-color:var(--blue);background:var(--sky);color:var(--blue-dark)}.opt.unavailable{opacity:.4;text-decoration:line-through}
.hint{font-size:.9rem;color:var(--muted)}.qty-row{display:flex;gap:12px;align-items:end;margin:18px 0}.qty-row input{width:80px;border:1.5px solid var(--line);border-radius:10px;padding:.7em;text-align:center}.qty-row label{display:flex;flex-direction:column;font-size:.85rem;font-weight:700;gap:4px}
.trust{list-style:none;padding:0;display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;margin:8px 0}.trust li:before{content:'✔ ';color:var(--ok)}
.rich{max-width:80ch}.rich img{border-radius:12px;margin:10px 0}.rich h2,.rich h3{margin-top:1.2em}.legal{margin:10px 0 40px}
.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table th{background:var(--bg);text-align:left;font-size:.85rem;color:var(--muted);padding:10px 12px}.table td{padding:12px;border-top:1px solid var(--line);vertical-align:middle}.table td.img img{width:64px;height:64px;object-fit:contain;background:var(--bg);border-radius:10px;padding:4px}.table input.qty{width:70px;border:1.5px solid var(--line);border-radius:10px;padding:.5em;text-align:center}
.cart-foot{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:20px;flex-wrap:wrap}.totals{background:var(--bg);border-radius:var(--radius);padding:18px;min-width:300px;display:flex;flex-direction:column;gap:8px;margin-left:auto}.totals>div{display:flex;justify-content:space-between}.totals .grand{font-size:1.25rem;font-weight:800;border-top:1px solid var(--line);padding-top:8px}
.checkout{display:grid;gap:28px}@media(min-width:960px){.checkout{grid-template-columns:1.3fr 1fr}}.checkout h2{font-size:1.1rem;margin-top:1.4em}
label{display:flex;flex-direction:column;gap:4px;font-size:.9rem;font-weight:700;margin-bottom:12px}label input,label select,label textarea{border:1.5px solid var(--line);border-radius:10px;padding:.7em .9em;font-weight:400;outline:none;background:#fff}label input:focus,label textarea:focus,label select:focus{border-color:var(--blue)}
.grid2{display:grid;gap:0 16px}@media(min-width:640px){.grid2{grid-template-columns:1fr 1fr}.span2{grid-column:span 2}}.grid2.top{gap:28px;align-items:start}
.radio,.check{flex-direction:row;align-items:center;gap:10px;font-weight:500;border:1.5px solid var(--line);border-radius:10px;padding:12px}.radio input,.check input{width:18px;height:18px}.check{display:block;line-height:1.6}.check input{vertical-align:middle;margin-right:8px}
.summary{background:var(--bg);border-radius:var(--radius);padding:20px;align-self:start;position:sticky;top:120px}.sum-row{display:flex;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.sum-row img{width:52px;height:52px;object-fit:contain;background:#fff;border-radius:8px}.sum-row span{flex:1;font-size:.9rem}.summary .totals{padding:12px 0 0;min-width:0}
.auth{max-width:440px;margin:40px auto}.thanks{max-width:720px;margin:30px auto}.status{display:inline-block;padding:.2em .7em;border-radius:999px;font-size:.8rem;font-weight:800;background:var(--bg)}.s-bezahlt,.s-versendet{background:#e9f8ef;color:#146c37}.s-offen{background:#fff6e5;color:#9a5b00}.s-storniert,.s-erstattet{background:#fdecec;color:#9a1c1c}.s-in_bearbeitung{background:var(--sky);color:var(--blue-dark)}
.footer{background:var(--ink);color:#cbd5e1;margin-top:40px}.footer-grid{display:grid;gap:28px;padding:44px 20px 24px;grid-template-columns:repeat(2,1fr)}@media(min-width:900px){.footer-grid{grid-template-columns:repeat(4,1fr)}}.footer h4{color:#fff;margin:0 0 10px}.footer a{color:#cbd5e1;display:block;padding:3px 0}.footer p{margin:0;font-size:.95rem}
.footer-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #2a3650;padding-top:16px;padding-bottom:20px;font-size:.85rem}

[hidden]{display:none!important}
.chip small{opacity:.6;font-weight:500;margin-left:4px}.chips-main .chip:not(.active){background:#fff}.chips-sub{margin-top:-8px}.chips-sub .chip{font-size:.82rem;padding:.25em .75em;border-style:dashed}.stars{color:#f5a623;letter-spacing:1px;font-size:.95em}.rating-line{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--muted)}.card .stars{font-size:.8rem}
@media(max-width:700px){.dropdown .menu{display:none!important}.dropdown{position:static}}
.btn-sm{padding:.35em .8em;font-size:.82rem}.totals .discount{color:var(--ok);font-weight:600}.coupon-form{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:14px 0 24px;padding:14px 16px;border:1.5px dashed var(--line);border-radius:12px;background:#fff}.coupon-form label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.9rem}.coupon-form input{border:1.5px solid var(--line);border-radius:10px;padding:.55em .8em;min-width:200px;text-transform:uppercase}
.reviews{margin:40px 0}.review-summary{display:flex;align-items:center;gap:16px;margin-bottom:18px}.review-summary .big{font-size:2.2rem;font-weight:800}.review-summary .stars{font-size:1.4rem}.review-list{display:grid;gap:14px}.review{border:1.5px solid var(--line);border-radius:14px;padding:16px 18px;background:#fff}.review header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:6px}.review .verified{color:var(--ok);font-size:.8rem;font-weight:700}.review-form{margin-top:24px;padding:20px;border-radius:16px;background:var(--bg);display:grid;gap:12px}.review-form .grid2{gap:12px}.rating-input{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:4px}.rating-input input{display:none}.rating-input label{font-size:1.9rem;color:#cfd6e0;cursor:pointer;transition:color .15s}.rating-input input:checked ~ label,.rating-input label:hover,.rating-input label:hover ~ label{color:#f5a623}
