.cat-photo,.art-thumb,.art-hero{position:relative;}
.cat-photo img,.art-thumb img,.art-hero img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.exact-box{background:var(--surface); border:1px solid var(--gold-dim); border-left:3px solid var(--gold); border-radius:10px; padding:12px 14px; margin:18px 0; font-size:13.5px; line-height:1.6; color:var(--text);}
.exact-box b{color:var(--gold); display:block; font-size:11px; text-transform:uppercase; letter-spacing:.05em; margin-bottom:4px;}
.art-foot-note{margin-top:28px; padding-top:14px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); line-height:1.7;}
.art-foot-note a{color:var(--gold); text-decoration:underline;}
.gwrap{max-width:1080px; margin:0 auto; padding:28px clamp(16px,4vw,40px) 60px;}
.g-title{font-family:'Bebas Neue',sans-serif; letter-spacing:.02em; text-transform:uppercase; font-size:clamp(30px,5vw,44px); margin:0 0 8px;}
.g-sub{color:var(--muted); font-size:13.5px; margin:0 0 26px; max-width:560px; line-height:1.6;}
.g-back{display:inline-flex; align-items:center; gap:6px; margin-bottom:20px; color:var(--muted); text-decoration:none; font-size:13px; text-transform:uppercase; letter-spacing:.04em;}
.g-back:hover{color:var(--gold);}
.g-back svg{width:16px;height:16px; stroke:currentColor; fill:none; stroke-width:2.2;}
.cat-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(190px,1fr)); gap:16px;}
.cat-card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; display:flex; flex-direction:column; text-decoration:none; color:inherit;}
.cat-photo{aspect-ratio:1/1; display:flex; align-items:center; justify-content:center;}
.cat-body{padding:14px 14px 16px;}
.cat-name{font-weight:700; font-size:15px; margin:0 0 4px;}
.cat-count{color:var(--muted); font-size:12px;}
.cat-card:hover{border-color:var(--gold-dim);}
.art-row{display:flex; gap:14px; align-items:center; padding:14px 0; border-bottom:1px solid var(--line); text-decoration:none; color:inherit;}
.art-row:hover .art-title{color:var(--gold);}
.art-thumb{width:84px; height:84px; border-radius:10px; flex-shrink:0; background:var(--surface);}
.art-info{min-width:0;}
.art-title{font-weight:700; font-size:15px; margin:0 0 5px; line-height:1.35;}
.art-excerpt{color:var(--muted); font-size:13px; line-height:1.5;}
.art-hero{aspect-ratio:1/1; max-width:520px; margin:0 auto 22px; border-radius:14px; overflow:hidden;}
.art-h1{font-family:'Bebas Neue',sans-serif; font-size:clamp(26px,4.5vw,38px); letter-spacing:.01em; margin:0 0 6px; line-height:1.1;}
.art-cat-tag{display:inline-block; color:var(--gold); font-size:11.5px; text-transform:uppercase; letter-spacing:.06em; margin-bottom:18px;}
.art-body p{font-size:15px; line-height:1.75; color:#d9d5c9; margin:0 0 16px;}
.art-body h2{font-size:17px; margin:26px 0 10px; color:var(--text);}
.art-body ul{margin:0 0 16px; padding-left:20px;}
.art-body li{font-size:15px; line-height:1.65; color:#d9d5c9; margin-bottom:6px;}
.art-inline-img{aspect-ratio:1/1; max-width:480px; margin:20px auto; border-radius:12px; overflow:hidden; background:var(--surface);}
.art-inline-img img{width:100%; height:100%; object-fit:cover;}
.art-cta{margin-top:34px; padding:18px 20px; background:var(--surface); border:1px solid var(--line); border-radius:14px; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;}
.art-cta p{margin:0; font-size:13.5px; color:var(--muted); max-width:360px;}
.art-cta a{background:var(--gold); color:#1a1400; text-decoration:none; font-weight:800; font-size:13px; text-transform:uppercase; letter-spacing:.04em; padding:12px 20px; border-radius:10px; white-space:nowrap;}
