
:root{--bg:#050505;--ink:#f5efe3;--muted:#b9b0a2;--gold:#b99b5d;--panel:#101010;--line:#2c261d}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;letter-spacing:.01em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.tsb-header{position:sticky;top:0;z-index:50;background:rgba(5,5,5,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.tsb-nav{max-width:1260px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:16px 22px;gap:18px}
.tsb-logo{font-family:Georgia,serif;font-weight:700;letter-spacing:.16em;color:var(--gold);font-size:12px;text-transform:uppercase;white-space:nowrap}
.tsb-menu{display:flex;gap:18px;font-size:11px;text-transform:uppercase;color:var(--muted);align-items:center}.tsb-menu a:hover{color:var(--gold)}
.tsb-btn{display:inline-block;background:var(--gold);color:#070707;padding:12px 17px;font-weight:800;text-transform:uppercase;font-size:11px;border-radius:2px;letter-spacing:.07em;border:1px solid var(--gold)}
.tsb-btn.alt{background:transparent;color:var(--ink)}.wrap{max-width:1260px;margin:0 auto;padding:72px 22px}.kicker{color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.22em;font-weight:800}
h1{font-family:Georgia,serif;font-size:clamp(48px,8vw,112px);line-height:.88;margin:16px 0 18px;letter-spacing:-.055em}
h2{font-family:Georgia,serif;font-size:clamp(32px,5vw,62px);line-height:.96;margin:0 0 18px;letter-spacing:-.035em}
p,.lead{color:var(--muted);font-size:16px;line-height:1.65;max-width:760px}.lead{font-size:18px}
.hero{min-height:82vh;border-bottom:1px solid var(--line);position:relative;display:grid;place-items:center;overflow:hidden;background:#050505}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050505 0%,rgba(5,5,5,.82) 43%,rgba(5,5,5,.22) 100%);z-index:1}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.76;filter:contrast(1.04) saturate(.9)}
.hero .wrap{position:relative;z-index:2;width:100%}.hero-copy{max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.statbar{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#080808}.stat{padding:24px;border-right:1px solid var(--line)}.stat strong{font-family:Georgia,serif;font-size:26px;display:block}.stat span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.section{border-bottom:1px solid var(--line)}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center}.feature-img{height:620px;object-fit:cover;width:100%;border:1px solid var(--line)}.feature-card{background:var(--panel);border:1px solid var(--line);padding:36px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{background:var(--panel);border:1px solid var(--line);padding:26px;min-height:180px}.card p{font-size:14px;margin:0}
.archive-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.archive-card{position:relative;background:var(--panel);border:1px solid var(--line);overflow:hidden;min-height:320px}
.archive-card img{width:100%;height:280px;object-fit:cover;transition:transform .45s ease,opacity .45s ease}.archive-card:hover img{transform:scale(1.04);opacity:.82}.archive-info{padding:16px}.archive-info h3{font-size:15px;margin:0 0 6px;line-height:1.25}.archive-info p{font-size:12px;margin:0;color:var(--muted)}.badge{position:absolute;top:12px;left:12px;background:rgba(5,5,5,.85);border:1px solid var(--gold);color:var(--gold);padding:7px 9px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.mosaic{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.mosaic img{height:520px;width:100%;object-fit:cover;border:1px solid var(--line)}.mosaic .stack{display:grid;gap:12px}.mosaic .stack img{height:254px}
.contact-box{background:#0d0d0d;border:1px solid var(--line);padding:34px}.footer{padding:36px 22px;text-align:center;color:var(--muted);font-size:12px;line-height:1.7}
@media(max-width:900px){.tsb-menu{display:none}.statbar,.grid,.archive-grid,.split,.mosaic{grid-template-columns:1fr}.hero{min-height:70vh}.feature-img,.mosaic img,.mosaic .stack img{height:auto}.archive-card img{height:300px}}

.archive-card{color:var(--ink)}
.archive-info h3{word-break:normal;overflow-wrap:break-word}
.contact-box strong{color:var(--gold)}

.wrap strong{color:var(--gold)}


/* Product gallery + zoom */
.product-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:start}
.product-gallery{width:100%}
.main-product-image-wrap{border:1px solid var(--line);background:#0b0b0b;overflow:hidden}
.main-product-image{width:100%;height:auto;max-height:820px;object-fit:contain;cursor:zoom-in;background:#080808}
.product-thumbnails{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px}
.product-thumb{border:1px solid var(--line);background:#101010;padding:0;cursor:pointer;opacity:.72}
.product-thumb.active,.product-thumb:hover{opacity:1;border-color:var(--gold)}
.product-thumb img{width:100%;aspect-ratio:1/1;object-fit:cover}
.product-info{position:sticky;top:92px}
.product-price{font-size:20px;color:var(--ink);font-weight:800}
.product-description{color:var(--muted);line-height:1.65;margin:20px 0}
.product-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:999;display:none;align-items:center;justify-content:center;padding:22px}
.product-lightbox.open{display:flex}
.product-lightbox img{max-width:96vw;max-height:92vh;object-fit:contain}
.lightbox-close{position:fixed;top:18px;right:22px;background:transparent;border:1px solid var(--gold);color:var(--gold);font-size:36px;line-height:1;width:52px;height:52px;cursor:pointer}
body.lightbox-active{overflow:hidden}
@media(max-width:900px){
  .product-layout{grid-template-columns:1fr;gap:20px}
  .product-info{position:static}
  .product-thumbnails{grid-template-columns:repeat(4,1fr)}
  .main-product-image{max-height:none}
}
