
:root{
  --bg:#050505;--panel:#0b0b0b;--panel2:#111;--text:#f6f6f6;--muted:#aaa;
  --red:#e1161d;--line:#292929;--max:1280px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;color:var(--text);font-family:Arial,Helvetica,sans-serif;background:
  linear-gradient(rgba(5,5,5,.84),rgba(5,5,5,.84)),
  repeating-linear-gradient(135deg,#242424 0 10px,#090909 10px 20px),
  repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 20px),
  repeating-linear-gradient(-45deg,rgba(255,255,255,.035) 0 1px,rgba(0,0,0,0) 1px 20px);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}
.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(10px);background:linear-gradient(rgba(4,4,4,.92),rgba(4,4,4,.92)),repeating-linear-gradient(135deg,#262626 0 6px,#0a0a0a 6px 12px),repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 1px,rgba(0,0,0,0) 1px 12px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:78px}
.site-logo{width:165px}
.nav{display:flex;align-items:center;gap:34px;flex-wrap:wrap}
.nav a{padding:27px 0 14px;font-size:13px}
.nav a:hover,.nav a.active{color:var(--red)}
.nav a.active{border-bottom:2px solid var(--red)}
.hero{min-height:640px;display:grid;grid-template-columns:42% 58%;align-items:stretch;border-bottom:1px solid var(--line);background:#070707}
.hero-copy{padding:90px 7vw 70px max(4vw,28px);display:flex;flex-direction:column;justify-content:center}
.hero-media{min-height:640px;background-size:cover;background-position:center}
.eyebrow{color:var(--red);font-size:12px;font-weight:800;letter-spacing:.24em;text-transform:uppercase}
h1,h2,h3{margin-top:0}
h1{font-size:clamp(44px,6vw,78px);line-height:1.02;font-style:italic;margin-bottom:22px}
h2{font-size:clamp(34px,4vw,54px);line-height:1.08;font-style:italic}
h3{font-size:22px}
.lede{color:#c7c7c7;font-size:19px;line-height:1.7;max-width:700px}
.redline{width:60px;height:3px;background:var(--red);margin:20px 0}
.btn{display:inline-block;padding:14px 22px;border:1px solid #6a6a6a;text-transform:uppercase;letter-spacing:.11em;font-size:12px}
.btn.primary{background:var(--red);border-color:var(--red)}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.section{padding:86px 0;border-bottom:1px solid var(--line)}
.section-head{text-align:center;max-width:760px;margin:0 auto 44px}
.section-head p{color:var(--muted);line-height:1.7}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:linear-gradient(rgba(8,8,8,.9),rgba(8,8,8,.9)),repeating-linear-gradient(135deg,#262626 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,0) 1px 16px);border:1px solid #222;overflow:hidden}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.card-body{padding:16px 18px 20px}
.card-title{font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.card-sub{color:var(--muted);margin-top:6px;font-size:14px}
.story-grid{display:grid;grid-template-columns:36% 1fr;gap:38px;align-items:center}
.story-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.story-photos img{aspect-ratio:4/3;object-fit:cover}
.quote{font-size:28px;font-style:italic;line-height:1.35}
.prints-feature{display:grid;grid-template-columns:48% 1fr;gap:44px;align-items:center}
.room{background:linear-gradient(rgba(11,11,11,.88),rgba(11,11,11,.88)),repeating-linear-gradient(135deg,#282828 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,0) 1px 16px);border:1px solid #222;padding:24px}
.feature-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:24px}
.feature{border:1px solid #262626;padding:18px;background:#0a0a0a}
.banner{padding:54px 0;background:linear-gradient(rgba(8,8,8,.86),rgba(8,8,8,.86)),repeating-linear-gradient(135deg,#292929 0 9px,#0a0a0a 9px 18px),repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 18px);border-top:1px solid #1f1f1f;border-bottom:1px solid #1f1f1f}
.banner-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}
.page-hero{padding:90px 0 54px;text-align:center;border-bottom:1px solid var(--line);background:linear-gradient(rgba(7,7,7,.82),rgba(7,7,7,.82)),repeating-linear-gradient(135deg,#262626 0 8px,#0a0a0a 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 16px)}
.page-hero h1{font-size:64px;letter-spacing:.08em;font-style:normal}
.filters{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:32px 0 0;color:#cfcfcf;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.filters span.active{color:var(--red)}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.portfolio-card img{width:100%;aspect-ratio:4/4.4;object-fit:cover}
.portfolio-card .meta{padding:15px;text-align:center;background:#080808;border:1px solid #222;border-top:0}
.product{display:grid;grid-template-columns:56% 1fr;gap:42px;align-items:start}
.product-art{border:1px solid #252525;background:#050505}
.product-copy{position:sticky;top:102px}
.product-copy .price{font-size:34px;margin:18px 0}
.size-grid{border-top:1px solid #333;margin-top:20px}
.size-row{display:grid;grid-template-columns:1.3fr 1fr .7fr;padding:13px 12px;border:1px solid #2f2f2f;border-top:0;background:linear-gradient(rgba(10,10,10,.88),rgba(10,10,10,.88)),repeating-linear-gradient(135deg,#2b2b2b 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 16px)}
.size-row strong{color:var(--red);text-align:right}
.provenance{margin-top:28px;border:1px solid #2a2a2a;background:linear-gradient(rgba(9,9,9,.9),rgba(9,9,9,.9)),repeating-linear-gradient(135deg,#292929 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 1px,rgba(0,0,0,0) 1px 16px);padding:18px;display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:center}
.provenance img{width:100%;aspect-ratio:4/3;object-fit:cover}
.prov-title{font-size:28px;font-style:italic;margin:5px 0}
.prov-note{color:var(--muted);line-height:1.6}
.product-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.about-chapter{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}
.about-chapter.reverse .copy{order:-1}
.about-chapter img{width:100%;max-height:610px;object-fit:contain;background:#080808;border:1px solid #242424}
.today-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.today-grid .card img{aspect-ratio:auto;object-fit:contain;background:#050505}
.contact-grid{display:grid;grid-template-columns:58% 1fr;gap:48px}
.form{background:linear-gradient(rgba(8,8,8,.9),rgba(8,8,8,.9)),repeating-linear-gradient(135deg,#292929 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,0) 1px 16px);border:1px solid #242424;padding:32px}
.form label{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;margin:20px 0 8px}
.form input,.form textarea{width:100%;background:#111;border:1px solid #444;color:#fff;padding:15px;font:inherit}
.form textarea{min-height:180px}
.contact-card{border-left:4px solid var(--red);background:linear-gradient(rgba(9,9,9,.9),rgba(9,9,9,.9)),repeating-linear-gradient(135deg,#292929 0 8px,#090909 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,0) 1px 16px);padding:22px;margin-bottom:15px}
.site-footer{padding:46px 0 26px;background:linear-gradient(rgba(5,5,5,.9),rgba(5,5,5,.9)),repeating-linear-gradient(135deg,#161616 0 8px,#0b0b0b 8px 16px);border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:40px}
.footer-logo{width:170px;margin-bottom:16px}
.footer-links a{display:block;color:#aaa;padding:5px 0}
.footer-bottom{margin-top:34px;padding-top:20px;border-top:1px solid #222;color:#777;font-size:12px}
.notice{background:linear-gradient(rgba(16,16,16,.9),rgba(16,16,16,.9)),repeating-linear-gradient(135deg,#272727 0 8px,#0a0a0a 8px 16px),repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 1px,rgba(0,0,0,0) 1px 16px);border:1px solid #2b2b2b;padding:15px;color:#aaa;font-size:13px;line-height:1.5}
@media(max-width:900px){
  .header-inner{align-items:flex-start;padding:16px 0}
  .site-logo{width:150px}
  .nav{gap:15px;justify-content:flex-end}
  .nav a{padding:10px 0}
  .hero{grid-template-columns:1fr}.hero-media{min-height:460px}.hero-copy{padding:60px 28px}
  .gallery,.portfolio-grid,.product-gallery{grid-template-columns:1fr 1fr}
  .story-grid,.prints-feature,.product,.about-chapter,.contact-grid{grid-template-columns:1fr}
  .product-copy{position:static}.about-chapter.reverse .copy{order:0}
  .footer-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .wrap{width:min(100% - 30px,var(--max))}
  .header-inner{display:block}.site-logo{margin-bottom:12px}
  .nav{justify-content:flex-start}.gallery,.portfolio-grid,.product-gallery,.today-grid{grid-template-columns:1fr}
  .provenance{grid-template-columns:1fr}.story-photos{grid-template-columns:1fr}
  .banner-inner{display:block}.banner-inner .btn{margin-top:18px}
}

.card-link,.portfolio-link{display:block}
.card-link .card,.portfolio-link .portfolio-card{transition:transform .18s ease,border-color .18s ease}
.card-link:hover .card,.portfolio-link:hover .portfolio-card{transform:translateY(-3px)}
.product-nav{display:flex;justify-content:space-between;gap:16px;margin-bottom:20px}
.product-nav a{color:#aaa;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.product-nav a:hover{color:var(--red)}

.paired-photos{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.paired-photos figure{margin:0;background:linear-gradient(rgba(8,8,8,.9),rgba(8,8,8,.9)),repeating-linear-gradient(135deg,#171717 0 8px,#0b0b0b 8px 16px);border:1px solid #242424;padding:12px}
.paired-photos img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#050505}
.paired-photos figcaption{padding-top:10px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#d0d0d0}
.tagline-swap{font-size:18px;letter-spacing:.07em;text-transform:uppercase;color:#c9c9c9}
@media(max-width:560px){.paired-photos{grid-template-columns:1fr}}
