*{box-sizing:border-box}:root{--bg:#f6f9fc;--surface:#fff;--surface-soft:#eef4fb;--text:#061b31;--muted:#64748d;--label:#273951;--border:#e5edf5;--purple:#533afd;--purple-hover:#4434d4;--green:#15be53;--green-text:#108c3d;--dark:#1c1e54;--ruby:#ea2261;--magenta:#f96bee;--shadow:rgba(50,50,93,.25) 0 30px 45px -30px,rgba(0,0,0,.1) 0 18px 36px -18px;--soft-shadow:rgba(23,23,23,.08) 0 15px 35px}html{scroll-behavior:smooth}body{margin:0;font-family:'Source Sans 3',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-feature-settings:'ss01';background:radial-gradient(circle at 15% 0%,rgba(83,58,253,.10),transparent 32rem),linear-gradient(180deg,#fff 0%,var(--bg) 52%,#fff 100%);color:var(--text);font-weight:300}a{color:inherit;text-decoration:none}.top{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:16px clamp(18px,5vw,72px);background:rgba(255,255,255,.82);border-bottom:1px solid rgba(229,237,245,.92);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:600;color:var(--text);letter-spacing:-.02em}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:linear-gradient(135deg,var(--purple),var(--magenta));color:#fff;box-shadow:var(--shadow);font-family:'Source Code Pro',monospace;font-weight:700;font-size:.9rem}.nav{display:flex;align-items:center;gap:6px}.nav a{padding:9px 12px;border-radius:6px;color:var(--label);font-weight:400}.nav a:hover{background:rgba(83,58,253,.06);color:var(--purple)}.nav-cart{border:1px solid var(--border);background:#fff}.wrap{max-width:1160px;margin:auto;padding:clamp(20px,4vw,56px)}.hero-band{position:relative;overflow:hidden}.hero-band:before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,rgba(83,58,253,.08),rgba(249,107,238,.08) 45%,transparent 70%);clip-path:polygon(0 0,100% 0,100% 78%,0 100%)}.hero{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:48px;align-items:center;min-height:650px}.eyebrow{margin:0 0 12px;color:var(--purple);text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.78rem}.hero h1,h1{font-size:clamp(2.8rem,7vw,5.3rem);line-height:.98;letter-spacing:-.075rem;font-weight:300;margin:0 0 20px;color:var(--text)}h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.04;letter-spacing:-.04em;font-weight:300;margin:0 0 14px}.lead{font-size:1.25rem;line-height:1.55;color:var(--muted);max-width:650px}.muted{color:var(--muted);line-height:1.65}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:11px 18px;border-radius:6px;background:var(--purple);color:#fff;font-weight:500;border:1px solid var(--purple);cursor:pointer;box-shadow:0 8px 18px rgba(83,58,253,.22);transition:.18s ease}.btn:hover{background:var(--purple-hover);transform:translateY(-1px)}.btn.ghost{background:#fff;color:var(--purple);border-color:#b9b9f9;box-shadow:none}.btn.ghost:hover{background:rgba(83,58,253,.06)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.trust-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.trust-row span,.chip,.stock-pill{display:inline-flex;align-items:center;border:1px solid var(--border);background:#fff;border-radius:6px;padding:6px 10px;color:var(--label);font-size:.92rem;font-weight:400}.panel,.card{background:rgba(255,255,255,.94);border:1px solid var(--border);border-radius:8px;box-shadow:var(--soft-shadow)}.elevated{box-shadow:var(--shadow)}.hero-showcase{padding:22px;position:relative}.printer-card{position:relative;min-height:360px;border-radius:8px;overflow:hidden;background:linear-gradient(145deg,#10183f,#1c1e54 58%,#31258d);box-shadow:inset 0 0 0 1px rgba(255,255,255,.11)}.printer-top{position:absolute;left:18%;right:18%;top:48px;height:10px;border-radius:99px;background:rgba(255,255,255,.78)}.printer-bed{position:absolute;left:13%;right:13%;bottom:58px;height:18px;border-radius:6px;background:linear-gradient(90deg,#b9b9f9,#fff,#ffd7ef)}.print-object{position:absolute;left:50%;bottom:76px;width:126px;height:126px;transform:translateX(-50%) rotate(45deg);border-radius:28px;background:linear-gradient(135deg,#7dd3fc,var(--magenta));box-shadow:0 25px 60px rgba(249,107,238,.35)}.mini-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.mini-stats div{padding:14px;border:1px solid var(--border);border-radius:8px;background:#fff}.mini-stats strong{display:block;font-size:1.35rem}.mini-stats span{color:var(--muted)}.section-intro{padding-bottom:18px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-top:10px}.product-card{overflow:hidden;transition:.18s ease}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.art{height:230px;background:linear-gradient(135deg,#edf4ff,#fff 42%,#f6e9ff);background-size:cover;background-position:center;display:grid;place-items:center;position:relative}.art:after{content:'3D';font-family:'Source Code Pro',monospace;font-weight:700;font-size:4.4rem;color:rgba(83,58,253,.13);letter-spacing:-.08em}.card-body{padding:18px}.product-card h3{font-size:1.38rem;font-weight:400;letter-spacing:-.02em;margin:10px 0 8px}.price{font-feature-settings:'tnum';font-size:1.55rem;font-weight:600;color:var(--text);margin:12px 0}.old{text-decoration:line-through;color:#94a3b8;font-size:1rem;font-weight:300}.stock-pill{background:rgba(21,190,83,.12);border-color:rgba(21,190,83,.35);color:var(--green-text);font-size:.82rem;padding:4px 8px}.stock-pill.is-out{background:rgba(234,34,97,.12);border-color:rgba(234,34,97,.28);color:#b8174b}.card-actions{padding:0 18px 18px}.card-actions form,.card-actions .btn{width:100%}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:22px}.dark-panel{background:var(--dark);color:#fff;border:0;padding:34px}.dark-panel .eyebrow{color:#b9b9f9}.dark-panel p{color:rgba(255,255,255,.72)}.quote-panel{padding:34px;background:linear-gradient(135deg,#fff,#f7f3ff)}.page-head{padding-bottom:18px}.category-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.chip:hover{border-color:#b9b9f9;color:var(--purple);background:rgba(83,58,253,.05)}.form{display:grid;gap:14px}.form label{display:grid;gap:6px;color:var(--label);font-weight:400}.form input,.form textarea,.form select{width:100%;padding:12px;border-radius:6px;border:1px solid var(--border);background:#fff;color:var(--text);font:inherit}.form input:focus,.form textarea:focus,.form select:focus{outline:2px solid rgba(83,58,253,.2);border-color:var(--purple)}.table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden}.table th,.table td{padding:12px;border-bottom:1px solid var(--border);text-align:left}.table th{color:var(--label);background:#f8fbff}.flash{padding:14px 16px;border-radius:8px;background:rgba(21,190,83,.13);border:1px solid rgba(21,190,83,.3);margin-top:18px}.danger{background:#ef4444!important;color:#fff!important}.pagination-wrap nav{display:flex;gap:8px}.footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--border);margin-top:36px}.footer-links{display:flex;gap:14px;align-items:flex-start;color:var(--label)}.admin{display:grid;grid-template-columns:250px 1fr;min-height:100vh;background:#f6f9fc}.side{padding:20px;background:#fff;border-right:1px solid var(--border)}.side a{display:block;padding:10px 12px;border-radius:6px;color:var(--label);font-weight:400}.side a:hover{background:rgba(83,58,253,.06);color:var(--purple)}.admin-main{padding:28px}@media(max-width:900px){.hero,.product-grid,.split-section,.admin{grid-template-columns:1fr}.hero{min-height:auto;padding-top:46px}.nav{gap:2px}.nav a{padding:8px}.footer{display:block}.hero-showcase{order:-1}}@media(max-width:620px){.top{align-items:flex-start;flex-direction:column}.nav{width:100%;overflow:auto}.hero h1,h1{font-size:2.65rem}.product-grid{gap:16px}.wrap{padding:22px}.art{height:190px}}
.cart-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:6px;border-radius:99px;background:var(--purple);color:#fff;font-size:.75rem;font-weight:600}
.search-row{display:flex;gap:10px;margin-top:18px;max-width:420px}.search-row input{flex:1;padding:11px 12px;border-radius:6px;border:1px solid var(--border);background:#fff;font:inherit}.search-row input:focus{outline:2px solid rgba(83,58,253,.2);border-color:var(--purple)}

/* 3D-voorbeeld bij de offerte (STL-viewer) */
.stl-preview{border:1px solid var(--border);border-radius:12px;padding:14px;background:linear-gradient(160deg,#f7f9ff,#f3f0ff);margin:4px 0 14px}
.stl-preview canvas{width:100%;display:block;border-radius:8px;cursor:grab;touch-action:none}
.stl-preview canvas:active{cursor:grabbing}
.stl-stats{display:flex;flex-direction:column;gap:2px;margin-top:10px;font-size:.92rem}
.stl-stats strong{font-size:1.05rem}
.stl-stats small{color:var(--muted)}
.hint{display:block;margin-top:4px;color:var(--muted);font-size:.82rem;font-weight:300}
