:root{--black:#090909;--white:#fff;--line:#deded8;--muted:#666;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Arial,sans-serif;--cond:'Archivo Narrow',Impact,sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--black);font-family:var(--sans);font-size:14px}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer;border:0;background:none;color:inherit}
.site-header{height:82px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:0 34px;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:10}
.brand img{width:132px;height:auto;display:block}
.cart-btn{position:absolute;right:34px;font:11px var(--mono);letter-spacing:.08em}
.cart-btn span{display:inline-flex;align-items:center;justify-content:center;border:1px solid #111;border-radius:50%;width:21px;height:21px;margin-left:5px}
.brand-stage{min-height:calc(78vh - 82px);display:flex;align-items:center;justify-content:center;padding:60px 30px;border-bottom:1px solid var(--line)}
.brand-stage img{width:min(48vw,520px);max-width:100%;height:auto;display:block}
.shop{padding:100px 5vw 110px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}
.section-head h1{font:clamp(55px,8vw,115px) var(--cond);line-height:.8;margin:0;letter-spacing:-.04em}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.product{min-width:0}
.product-img{width:100%;padding:0;background:#f1f1ee;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}
.product-img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .5s ease}
.product:hover .product-img img{transform:scale(1.035)}
.quick{position:absolute;bottom:10px;left:10px;right:10px;background:#fff;padding:13px;text-align:center;font:10px var(--mono);letter-spacing:.1em;opacity:0;transform:translateY(5px);transition:.2s}
.product:hover .quick{opacity:1;transform:none}
.product-meta{display:flex;justify-content:space-between;gap:15px;padding:13px 1px 25px;font-size:12px}
.product-meta span:last-child{font-family:var(--mono);font-size:11px}
.newsletter{background:#111;color:#fff;text-align:center;padding:115px 20px}
.newsletter h2{font:clamp(42px,7vw,100px) var(--cond);line-height:.85;margin:0 auto 42px;letter-spacing:-.04em;max-width:1000px}
.newsletter form{max-width:600px;margin:auto;display:flex;border-bottom:1px solid #777}
.newsletter input{background:none;border:0;outline:0;color:#fff;padding:15px 0;flex:1;font:11px var(--mono)}
.newsletter input::placeholder{color:#aaa}
.newsletter button{font:10px var(--mono);letter-spacing:.1em;padding-left:18px}
.newsletter small{display:block;color:#aaa;margin-top:18px}
.brand-contact{display:flex;justify-content:center;align-items:center;gap:28px;flex-wrap:wrap;margin-top:70px;padding-top:24px;border-top:1px solid #333;font:10px var(--mono);letter-spacing:.05em}
.brand-contact a{color:#fff;text-decoration:none}
.brand-contact a:hover{text-decoration:underline}
.button{display:inline-flex;gap:30px;align-items:center;background:#111;color:#fff;padding:15px 18px;font:10px var(--mono);letter-spacing:.1em}
.button span{font-size:17px}
.overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:20}
.overlay.show{display:block}
.cart-drawer{position:fixed;right:0;top:0;bottom:0;width:min(460px,100%);background:#fff;z-index:30;transform:translateX(100%);transition:.3s;display:flex;flex-direction:column}
.cart-drawer.open{transform:none}
.drawer-head{padding:25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}
.drawer-head h2{font:28px var(--cond);margin:0}
.drawer-head button,.modal-close{font-size:30px}
.cart-items{padding:20px;overflow:auto;flex:1}
.cart-row{display:grid;grid-template-columns:85px 1fr auto;gap:14px;margin-bottom:18px}
.cart-row img{width:85px;height:85px;object-fit:contain;background:#f1f1ee}
.cart-row h4{margin:5px 0;font-weight:500}
.cart-row p{font:9px var(--mono);color:#777;margin:5px 0}
.remove{font:9px var(--mono);text-decoration:underline}
.cart-foot{border-top:1px solid var(--line);padding:22px}
.cart-foot>div{display:flex;justify-content:space-between;margin-bottom:18px;font:11px var(--mono)}
.checkout{width:100%;background:#111;color:#fff;padding:17px;font:10px var(--mono);letter-spacing:.1em;display:flex;justify-content:space-between}
.cart-foot>p{font-size:10px;color:#777;line-height:1.5}
.product-modal{display:none;position:fixed;z-index:40;inset:5%;background:#fff;grid-template-columns:1.1fr .9fr;box-shadow:0 20px 80px #0004}
.product-modal.show{display:grid}
.modal-close{position:absolute;right:18px;top:12px;z-index:2}
.modal-image{background:#f1f1ee;display:flex;align-items:center;justify-content:center;overflow:hidden}
.modal-image img{width:100%;height:100%;object-fit:contain}
.modal-info{padding:clamp(30px,5vw,80px);display:flex;flex-direction:column;justify-content:center}
.eyebrow{font:10px var(--mono);letter-spacing:.14em;margin:0 0 18px}
.modal-info h2{font:clamp(45px,6vw,85px) var(--cond);line-height:.85;margin:0 0 20px;letter-spacing:-.04em}
.modal-price{font:13px var(--mono);margin-bottom:28px}
.modal-info>p:not(.eyebrow){line-height:1.6;color:#555;max-width:480px}
.modal-info label{font:10px var(--mono);margin:20px 0;display:block}
.modal-info select{display:block;width:100%;margin-top:8px;padding:13px;background:none;border:1px solid #aaa}
.full{width:100%;justify-content:space-between}
@media(max-width:900px){
  .site-header{height:72px;padding:0 18px}
  .brand img{width:120px}
  .cart-btn{right:18px}
  .brand-stage{min-height:58vh;padding:50px 25px}
  .brand-stage img{width:min(70vw,420px)}
  .shop{padding:70px 18px 80px}
  .product-grid{grid-template-columns:repeat(2,1fr);gap:8px}
  .quick{display:none}
  .newsletter{padding:85px 20px}
  .product-modal{inset:0;grid-template-columns:1fr;overflow:auto}
  .modal-image{min-height:45vh}
  .modal-info{padding:35px 25px 50px}
}
.modal-image{position:relative}
.modal-back{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);border:1px solid #111;background:#fff;padding:10px 14px;font:500 11px/1 'DM Mono',monospace;letter-spacing:.08em;cursor:pointer}
