/* =====================================================================
   OFERTAS.CSS — Listagem completa (ofertas.html) e categorias.html
   ===================================================================== */
.page-header{position:relative; padding-top:48px; padding-bottom:22px; overflow:hidden;}
.page-header::after{
  content:''; position:absolute; right:-10%; top:-60%; width:60%; aspect-ratio:1; pointer-events:none;
  background:radial-gradient(closest-side, rgba(255,210,63,0.10), transparent 70%);
}
.page-header h1{font-family:var(--font-display); font-size:clamp(30px,5.6vw,60px); font-weight:600; letter-spacing:-0.045em; line-height:1;}
.page-header p{color:var(--color-text-dim); font-size:15px; margin-top:14px; max-width:52ch; line-height:1.6;}

.search-wrap{padding:0 0 4px;}
.search-wrap .container{max-width:1240px;}
.categories{padding-top:14px;}

.pagination{display:flex; align-items:center; justify-content:center; gap:6px; padding:40px 0 10px; flex-wrap:wrap;}
.page-btn{
  min-width:40px; height:40px; padding:0 10px; border-radius:var(--radius-pill); display:flex; align-items:center; justify-content:center;
  background:var(--color-surface); border:1px solid var(--color-border); color:var(--color-text-dim); font-weight:600; font-size:13.5px;
  font-variant-numeric:tabular-nums; transition:background .2s, border-color .2s, color .2s;
}
.page-btn:hover{border-color:var(--color-border-strong); color:var(--color-text);}
.page-btn.active{background:var(--color-primary); border-color:var(--color-primary); color:var(--color-on-primary);}
.page-btn:disabled{opacity:.35; cursor:not-allowed;}

/* ===================== CATEGORIAS (categorias.html) ===================== */
.categories-full-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:12px; padding:10px 0 50px;}
.cat-card{
  position:relative; overflow:hidden; display:flex; flex-direction:column; gap:28px;
  background:var(--color-surface); border:1px solid var(--color-border); border-radius:var(--radius-l);
  padding:20px; min-height:170px; transition:border-color .3s var(--ease), transform .3s var(--ease), background .3s;
}
.cat-card:hover{border-color:var(--color-accent-line); transform:translateY(-4px); background:var(--color-surface-alt);}
.cat-card-icon{
  font-size:26px; width:52px; height:52px; border-radius:16px; background:var(--color-accent-soft);
  display:flex; align-items:center; justify-content:center; color:var(--color-primary);
  transition:background .3s, color .3s;
}
.cat-card:hover .cat-card-icon{background:var(--color-primary); color:var(--color-on-primary);}
.cat-card h3{font-family:var(--font-display); font-size:17px; font-weight:600; letter-spacing:-0.02em; margin-top:auto; margin-bottom:4px;}
.cat-card p{font-size:13px; color:var(--color-text-faint);}
@media (min-width:640px){ .categories-full-grid{grid-template-columns:repeat(3,1fr); gap:16px;} }
@media (min-width:960px){ .categories-full-grid{grid-template-columns:repeat(4,1fr);} }
