:root{--red:#b90010;--red2:#e01c2a;--ink:#1a1c22;--grey:#5b6571;--line:#e5e7eb;--bg:#f7f8fa}*{box-sizing:border-box}body{margin:0;background:white;color:var(--ink);font-family:Inter,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1160px,calc(100% - 40px));margin:auto}header{background:#fff;box-shadow:0 1px 10px #00000012;position:sticky;top:0;z-index:4}.top{height:85px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:8px;font-weight:900;font-size:21px;color:var(--red)}.brand img{width:84px;height:60px;object-fit:contain}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#333}.top nav{display:flex;gap:30px;font-weight:650;font-size:14px}.actions{display:flex;gap:9px}.btn{display:inline-block;padding:12px 18px;border-radius:10px;border:1px solid var(--line);background:#fff;font-weight:700;color:var(--ink)}.btn.red{background:var(--red);color:white;border-color:var(--red)}.btn.red:hover{background:#93000c}.btn.ghost:hover{border-color:var(--red)}.hero{background:linear-gradient(115deg,#15171b 50%,#292d34);color:white;overflow:hidden}.hero-grid{min-height:380px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:20px}.hero h1{font-size:clamp(34px,4.8vw,62px);line-height:1.08;margin:16px 0}.hero em{font-style:normal;color:#ff444c}.hero p{max-width:460px;color:#c7c9ce;line-height:1.6;margin-bottom:24px}.eyebrow{color:#ff6970;font-weight:800;font-size:11px;letter-spacing:2px}.eyebrow.dark{color:var(--red)}.hero-art{position:relative;height:340px;display:flex;justify-content:center;align-items:center}.ring{width:340px;height:250px;border:32px solid #b6000c;border-radius:50%;transform:rotate(-24deg);box-shadow:inset 0 0 0 15px #fff6,0 0 90px #b6000c44}.device{position:absolute;color:#fff;font-size:110px;text-shadow:0 10px 25px #000;transform:rotate(-9deg)}.device span{color:#d80012;font-size:75px}.section{padding:66px 0}.section h2,.band h2{font-size:31px;margin:8px 0 18px}.section-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.demo{font-size:11px;color:#9d4b00;background:#fff6e8;padding:8px;border-radius:8px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:22px 0 25px}input,select,textarea{width:100%;border:1px solid #d5dbe3;border-radius:9px;padding:12px;background:white;color:#20242a}textarea{resize:vertical}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product{background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 8px 25px #00000006;display:flex;flex-direction:column}.product .visual{height:160px;background:linear-gradient(140deg,#f2f2f2,#e8ecf1);display:grid;place-items:center;color:#9a0010;font-size:64px}.product .body{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1}.product .sku,.muted{color:var(--grey);font-size:13px}.product .name{font-size:17px;font-weight:800;min-height:42px}.product .price{font-weight:900;color:var(--red);font-size:20px}.product button{width:100%;margin-top:auto}.band{background:#181b20;color:white;padding:55px 0}.band p{color:#c6cbd0;max-width:680px;line-height:1.7}footer{background:#101215;color:#fff;padding:23px 0;font-size:12px}.overlay{position:fixed;inset:0;background:#0009;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px}.hidden{display:none!important}.modal{position:relative;background:white;border-radius:16px;padding:28px;width:min(820px,100%);max-height:90vh;overflow:auto;box-shadow:0 20px 80px #0006}.close{position:absolute;right:16px;top:12px;background:#eee;border:0;border-radius:8px;padding:8px 12px}.modal h2{margin-top:5px}.cartline{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding:13px 0}.cartline button{border:0;border-radius:5px;background:#eee;padding:5px 9px}.row{display:flex;justify-content:space-between;gap:10px;align-items:center}.stack{display:grid;gap:12px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:12px}.notice{border-radius:9px;background:#f0f8f0;padding:12px}.error{color:#ab0012}.admin-items{overflow:auto}.admin-items table{border-collapse:collapse;width:100%;font-size:13px}.admin-items td,.admin-items th{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left}.pill{display:inline-block;font-size:11px;background:#f0f2f5;border-radius:20px;padding:4px 9px}@media(max-width:850px){.products{grid-template-columns:repeat(2,1fr)}.top nav{display:none}.hero-grid{grid-template-columns:1fr}.hero-art{display:none}.hero-grid{min-height:330px}.section-head{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.products{grid-template-columns:1fr}.filters,.twocol{grid-template-columns:1fr}.brand img{width:53px}.brand{font-size:15px}.top{height:65px}.actions .btn{padding:9px}.section{padding:38px 0}}

.gallery{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.gallery img{width:180px;height:160px;object-fit:contain;border:1px solid #ddd;border-radius:12px}.product .body>.btn{margin:6px 6px 0 0}.price s{color:#888;font-size:.75em}

.photo-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:10px}.photo-card{border:1px solid #ddd;border-radius:10px;padding:7px}.photo-card img{width:100%;height:100px;object-fit:contain}.photo-tools{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.photo-tools small{flex:1 0 100%;font-weight:700}.photo-tools .btn{padding:5px 10px}

/* v0.1.4 clickable product cards and contained imagery */
.product[data-product]{cursor:pointer;transition:box-shadow .2s,transform .2s,border-color .2s}
.product[data-product]:hover{box-shadow:0 14px 32px #00000016;transform:translateY(-2px);border-color:#e4bcc0}
.product[data-product]:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.product .visual{height:190px;min-height:190px;overflow:hidden;padding:12px;display:flex;justify-content:center;align-items:center}
.product .visual img{display:block;width:100%;height:100%;max-height:166px;object-fit:contain;object-position:center}
.product .name{line-height:1.3}
.product .body .muted{overflow-wrap:anywhere}
.product .body button{flex-shrink:0}
.detail-main-image{width:100%;height:min(360px,52vh);background:#f8f9fa;border:1px solid var(--line);border-radius:14px;display:flex;justify-content:center;align-items:center;padding:18px;cursor:zoom-in;overflow:hidden}
.detail-main-image img{width:100%;height:100%;object-fit:contain}
.detail-main-image img.zoomed{transform:scale(1.6);cursor:zoom-out}
.detail-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 2px}
.detail-thumb{width:78px;height:72px;padding:5px;border:2px solid var(--line);border-radius:10px;background:white;flex-shrink:0}
.detail-thumb.selected,.detail-thumb:hover{border-color:var(--red)}
.detail-thumb img{height:100%;width:100%;object-fit:contain}
.detail-main-image.no-image{font-size:65px;cursor:default}
@media(max-width:520px){.product .visual{height:180px;min-height:180px}.detail-main-image{height:250px}}


/* v0.1.4.1 Zonels branding: original mark, responsive sizing, hero and favicon */
.top{height:100px;gap:18px}
.brand{gap:10px;flex:0 0 auto}
.brand img{width:118px;height:83px;object-fit:contain;display:block}
.brand span{font-size:21px}
.hero-logo-card{display:flex;justify-content:center;align-items:center;background:#fff;border-radius:26px;padding:18px 26px;max-width:440px;width:95%;box-shadow:0 22px 60px #0006}
.hero-logo-card img{width:100%;height:260px;object-fit:contain;display:block}
@media(max-width:850px){.top{height:86px}.brand img{width:104px;height:72px}.hero-art{display:flex;height:235px}.hero-grid{padding:36px 0}.hero-logo-card{max-width:340px}.hero-logo-card img{height:190px}}
@media(max-width:520px){.top{height:76px;gap:8px}.brand{gap:5px}.brand img{width:79px;height:56px}.brand span{font-size:15px}.brand small{font-size:8px;letter-spacing:1px}.hero-art{height:180px}.hero-logo-card{max-width:250px;padding:9px 16px;border-radius:18px}.hero-logo-card img{height:140px}.actions{gap:4px}.actions .btn{padding:8px 9px}}
