:root{--b:#050505;--w:#f5f5f3;--line:#262626;--muted:#888}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--b);color:var(--w);font-family:Inter,Arial,sans-serif}
button{font:inherit}

.site-header{position:fixed;top:0;left:0;width:100%;height:64px;padding:0 34px;display:flex;align-items:center;justify-content:flex-end;z-index:20;background:linear-gradient(180deg,rgba(5,5,5,.8),transparent);backdrop-filter:blur(4px);border:0}
.header-actions{display:flex;gap:6px}.header-actions button{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);color:#fff;width:38px;height:38px;cursor:pointer;font-size:16px;display:grid;place-items:center;transition:.2s}
.header-actions button:hover{background:#fff;color:#000}
.cart-button{position:relative}.cart-button b{position:absolute;top:3px;right:3px;background:#fff;color:#000;border-radius:50%;font-size:8px;width:13px;height:13px;display:grid;place-items:center;font-weight:900}

.hero{height:min(780px,88vh);min-height:560px;position:relative;overflow:hidden}
.hero-image{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center;filter: none;transform:scale(1.015)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,5,.2) 0%,transparent 40%,rgba(5,5,5,.85) 100%)}
.hero h1{position:absolute;left:4vw;bottom:55px;margin:0;font-size:clamp(44px,7vw,100px);line-height:.85;letter-spacing:-.08em;font-weight:900;color:#fff;z-index:2}
.hero-scroll{position:absolute;right:4vw;bottom:36px;font-size:9px;font-weight:800;letter-spacing:.2em;color:#ddd;writing-mode:vertical-rl;z-index:2}

.products-section{padding:90px 4vw 80px;max-width:1500px;margin:0 auto}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.product-card{min-width:0;background:#0a0a0a;border:1px solid var(--line);transition:border-color .3s;cursor:pointer}
.product-card:hover{border-color:#444}
.product-media{aspect-ratio:4/5;background:#101010;overflow:hidden;position:relative}
.product-media img{width:100%;height:100%;object-fit:cover;filter: none;transition:transform .4s}
.product-card:hover .product-media img{transform:scale(1.03)}
.product-placeholder{height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#161616,#080808);color:#555;font-size:10px;letter-spacing:.16em;font-weight:700}
.product-tag{position:absolute;left:10px;top:10px;background:#fff;color:#000;padding:6px 9px;font-size:8px;font-weight:900;letter-spacing:.1em;z-index:2}
.product-info{padding:16px}
.product-title{font-size:12px;font-weight:800;letter-spacing:.02em}
.product-price{font-size:11px;color:var(--muted);margin-top:6px}
.add-btn{width:100%;height:40px;margin-top:14px;border:1px solid #333;background:#111;color:#fff;font-size:9px;font-weight:900;letter-spacing:.12em;cursor:pointer;transition:.2s}
.add-btn:hover{background:#fff;color:#000;border-color:#fff}

/* STOPKA */
.site-footer{border-top:1px solid var(--line);padding:40px 4vw;background:#030303;text-align:center}
.footer-content{display:flex;justify-content:center;align-items:center;gap:16px;font-size:10px;font-weight:800;letter-spacing:.25em;color:var(--muted)}
.footer-dot{color:#444}

.cta{height:44px;padding:0 17px;display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid #fff;font-size:9px;font-weight:900;letter-spacing:.12em;cursor:pointer;background:#fff;color:#000;transition:.2s}
.cta:hover{background:#e0e0e0}
.full{width:100%}

/* KOSZYK (DRAWER) */
.drawer{position:fixed;right:0;top:0;height:100vh;width:min(440px,100%);background:#080808;border-left:1px solid #222;z-index:50;transform:translateX(100%);transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;box-shadow:-15px 0 40px rgba(0,0,0,.7)}
.drawer.open{transform:translateX(0)}
.drawer-head{height:70px;padding:0 28px;border-bottom:1px solid #1f1f1f;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.16em;font-weight:800}
.close-btn{border:0;background:none;color:#aaa;font-size:24px;cursor:pointer;transition:.2s}
.close-btn:hover{color:#fff}
.cart-items{padding:16px 28px;overflow:auto;flex:1}
.cart-row{display:grid;grid-template-columns:72px 1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid #161616;align-items:center}
.cart-row img,.cart-row>.product-placeholder{width:72px;height:88px;object-fit:cover;border:1px solid #222}
.cart-row h4{font-size:11px;margin:0 0 6px;font-weight:800;letter-spacing:.02em}
.cart-row p{font-size:10px;color:var(--muted);margin:0}
.qty{display:flex;gap:10px;align-items:center;margin-top:12px;font-size:11px}
.qty button{background:#111;border:1px solid #333;color:#fff;width:24px;height:24px;cursor:pointer;display:grid;place-items:center;transition:.2s}
.qty button:hover{background:#fff;color:#000;border-color:#fff}
.remove{border:0;background:none;color:#666;font-size:9px;padding:8px 0 0;cursor:pointer;letter-spacing:.08em;font-weight:700;transition:.2s}
.remove:hover{color:#ff4444}
.cart-row>strong{font-size:11px;font-weight:800}
.cart-empty{text-align:center;color:var(--muted);font-size:12px;padding:60px 20px;letter-spacing:.05em}
.cart-bottom{border-top:1px solid #1f1f1f;padding:24px 28px;background:#060606}
.total-row{display:flex;justify-content:space-between;font-size:11px;margin-bottom:16px;letter-spacing:.08em;font-weight:700}

/* MODAL PRODUKTU */
.modal{position:fixed;inset:0;display:grid;place-items:center;z-index:60;opacity:0;pointer-events:none;transition:opacity .3s}
.modal.open{opacity:1;pointer-events:auto}
.modal-content{background:#080808;border:1px solid #222;width:min(900px,92vw);max-height:90vh;overflow-y:auto;position:relative;padding:40px;box-shadow:0 25px 50px rgba(0,0,0,.8)}
.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.modal-main-image{aspect-ratio:4/5;background:#111;overflow:hidden;border:1px solid #222}
.modal-main-image img{width:100%;height:100%;object-fit:cover}
.modal-thumbs{display:flex;gap:10px;margin-top:12px}
.modal-thumbs img{width:60px;height:75px;object-fit:cover;cursor:pointer;border:1px solid #222;transition:border-color .2s}
.modal-thumbs img:hover,.modal-thumbs img.active{border-color:#fff}
.modal-details h2{font-size:18px;font-weight:900;margin:0 0 10px;letter-spacing:-.02em}
.size-selector{margin:24px 0}
.size-selector label{display:block;font-size:9px;font-weight:900;letter-spacing:.15em;color:var(--muted);margin-bottom:10px}
.sizes{display:flex;gap:10px}
.size-btn{background:#111;border:1px solid #333;color:#fff;width:44px;height:44px;font-size:11px;font-weight:800;cursor:pointer;transition:.2s}
.size-btn:hover,.size-btn.active{background:#fff;color:#000;border-color:#fff}

.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:40;opacity:0;pointer-events:none;transition:opacity .35s;backdrop-filter:blur(4px)}
.backdrop.open{opacity:1;pointer-events:auto}
.modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:55;opacity:0;pointer-events:none;transition:opacity .35s;backdrop-filter:blur(4px)}
.modal.open ~ .modal-backdrop{opacity:1;pointer-events:auto}

.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;background:#fff;color:#000;padding:12px 20px;font-size:9px;font-weight:900;letter-spacing:.12em;z-index:100;transition:.25s;box-shadow:0 10px 30px rgba(0,0,0,.5)}
.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:1024px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:768px){.modal-grid{grid-template-columns:1fr}.modal-content{padding:20px}}
@media(max-width:600px){.products-section{padding:60px 16px 60px}.product-grid{gap:12px}.hero h1{left:16px;bottom:40px;font-size:42px}.hero-scroll{right:16px;bottom:24px}}