/* ============================================================
   MODELS — galeria e página de modelo
   ============================================================ */

.filters{display:flex; gap:8px; flex-wrap:wrap; margin:30px 0 34px;}
.filter-btn{
  padding:9px 16px; border-radius:20px; border:1px solid var(--border); background:var(--bg-1);
  font-size:12.8px; color:var(--text-2); font-weight:500; transition:.15s;
}
.filter-btn:hover{border-color:var(--accent-dim); color:var(--text-0);}
.filter-btn.sel{background:rgba(47,107,255,.14); border-color:var(--accent); color:#dfe8ff;}

.gallery-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-bottom:100px;}
.gallery-card{border-radius:var(--radius-m); overflow:hidden; border:1px solid var(--border-soft); background:var(--panel); transition:transform .2s, border-color .2s;}
.gallery-card:hover{transform:translateY(-5px); border-color:var(--accent-dim);}
.gallery-card .g-thumb{aspect-ratio:4/3; position:relative; background:linear-gradient(160deg,#131c2e,#0a0e17);}
.gallery-card .g-thumb model-viewer{width:100%; height:100%;}
.gallery-card .g-thumb .cat-tag{position:absolute; top:12px; left:12px; font-family:var(--font-mono); font-size:9.5px; letter-spacing:.06em; background:rgba(6,9,15,.72); border:1px solid var(--border-soft); padding:4px 9px; border-radius:20px; color:var(--accent-2); z-index:2;}
.gallery-card .g-info{padding:20px;}
.gallery-card h3{font-size:17px; margin-bottom:6px;}
.gallery-card p{font-size:13px; color:var(--text-2); line-height:1.55; margin-bottom:14px; min-height:40px;}
.g-tags{display:flex; gap:6px; flex-wrap:wrap; margin-bottom:16px;}
.g-tags span{font-family:var(--font-mono); font-size:10px; color:var(--text-3); border:1px solid var(--border-soft); padding:3px 8px; border-radius:20px;}
.gallery-card .g-cta{display:flex; align-items:center; justify-content:space-between;}
.gallery-card .explore-btn{font-size:12.5px; font-weight:700; color:var(--accent-2); text-transform:uppercase; letter-spacing:.04em; display:flex; align-items:center; gap:6px;}

/* ---- model detail page ---- */
.model-detail{padding:36px 0 100px;}
.model-detail-grid{display:grid; grid-template-columns:1.35fr 1fr; gap:44px; align-items:start;}
.model-stage-wrap{aspect-ratio:4/3.3; position:sticky; top:100px;}
.model-info-col .cat-pill{margin-bottom:16px;}
.model-info-col h1{font-size:clamp(28px,3.6vw,40px); margin-bottom:14px; line-height:1.08;}
.model-info-col .desc{color:var(--text-2); font-size:15px; line-height:1.7; margin-bottom:28px;}
.spec-table{border-top:1px solid var(--border-soft); margin-bottom:28px;}
.spec-row{display:flex; justify-content:space-between; padding:14px 0; border-bottom:1px solid var(--border-soft); font-size:13.5px;}
.spec-row span:first-child{color:var(--text-3); font-family:var(--font-mono); font-size:11.5px; text-transform:uppercase; letter-spacing:.04em;}
.spec-row span:last-child{color:var(--text-0); text-align:right; max-width:60%;}
.model-actions{display:flex; gap:12px; flex-wrap:wrap;}
.model-tags-row{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px;}

.related-models{padding:0 0 100px;}

@media (max-width:980px){
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .model-detail-grid{grid-template-columns:1fr;}
  .model-stage-wrap{position:static; aspect-ratio:16/11;}
}
@media (max-width:640px){
  .gallery-grid{grid-template-columns:1fr;}
}
