:root{--bg:#fff;--fg:#000;--muted:#666;--line:#e5e5e5;--gap:1rem}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--fg);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:13px;line-height:1.45;-webkit-font-smoothing:antialiased;text-transform:uppercase;letter-spacing:.02em}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
img{display:block;max-width:100%;height:auto}
button,input,select,textarea{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;background:none;border:1px solid var(--fg);padding:.75rem 1rem;cursor:pointer}
button{background:var(--fg);color:var(--bg)}
button:hover{opacity:.85}
.container{padding:1rem;max-width:1600px;margin:0 auto}
.site-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:10}
.site-header nav{display:flex;gap:1.5rem}
.site-header .logo{font-weight:700;letter-spacing:.1em}
.site-footer{padding:2rem 1rem;border-top:1px solid var(--line);margin-top:4rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.grid{grid-template-columns:1fr}}
.card{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:1rem;display:flex;flex-direction:column;gap:.5rem}
.card .img{aspect-ratio:1/1;background:#f5f5f5;display:flex;align-items:center;justify-content:center;overflow:hidden}
.card .img img{width:100%;height:100%;object-fit:cover}
.card .meta{display:flex;justify-content:space-between;margin-top:.5rem;font-size:11px}
.product{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2rem 1rem}
@media(max-width:800px){.product{grid-template-columns:1fr}}
.product .gallery img{width:100%;margin-bottom:.5rem}
.product .info{position:sticky;top:5rem;align-self:start;display:flex;flex-direction:column;gap:1rem}
.product h1{font-size:1rem;font-weight:400}
.product .price{font-size:1rem}
.product .desc{color:var(--muted);text-transform:none;letter-spacing:0;font-size:12px;line-height:1.6}
.variants{display:flex;flex-wrap:wrap;gap:.5rem}
.variants label{border:1px solid var(--line);padding:.5rem .75rem;cursor:pointer;font-size:11px}
.variants input{display:none}
.variants input:checked + span{background:var(--fg);color:var(--bg);padding:.5rem .75rem;margin:-.5rem -.75rem;display:inline-block}
form.add button{width:100%;padding:1rem}
.cart-table{width:100%;border-collapse:collapse;margin:1rem 0}
.cart-table th,.cart-table td{padding:1rem;border-bottom:1px solid var(--line);text-align:left;font-weight:400;font-size:11px}
.cart-totals{display:flex;justify-content:flex-end;gap:2rem;padding:1rem 0;font-size:13px}
.cart-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem}
.hero{padding:6rem 1rem;text-align:center;border-bottom:1px solid var(--line)}
.hero h1{font-size:clamp(2rem,8vw,6rem);font-weight:700;letter-spacing:-.02em;line-height:.95}
.hero p{margin-top:1rem;color:var(--muted)}
.qty{width:60px;padding:.5rem;text-align:center}
.empty{padding:6rem 1rem;text-align:center;color:var(--muted)}
.section-title{padding:2rem 1rem 1rem;font-size:11px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}
.rte{text-transform:none;letter-spacing:0;font-size:14px;line-height:1.6;padding:2rem 1rem;max-width:640px}
.rte p{margin-bottom:1rem}
