/* Estilos base del tema BuyNewLink */
:root {
  --primary: #2563EB;
  --secondary-ink: #0F172A;
  --surface: #FFFFFF;
  --line: #E5E7EB;
  --text: #111827;
  --text-light: #6B7280;
  --success: #14B8A6;
  --shadow-small: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-medium: 0 4px 6px rgba(0,0,0,0.07);
  --shadow-large: 0 10px 15px rgba(0,0,0,0.1);
  --radius-lg: 20px;
  --ease: cubic-bezier(0.4, 0, 0.2, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin:0;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--text);
  background: #f8fafc;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width:100%; height:auto; display:block; }
button, input, textarea { font: inherit; }

.bnl-container { max-width: 1400px; margin: 0 auto; padding: 0 20px; }
@media (min-width: 768px) { .bnl-container { padding: 0 40px; } }
@media (min-width: 1024px) { .bnl-container { padding: 0 80px; } }

.bnl-section { padding: clamp(64px, 8vw, 100px) 0; }
.bnl-narrow { max-width: 860px; margin: 0 auto; }
.bnl-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  height:52px; padding:0 28px; border-radius:16px; font-size:15px; font-weight:600;
  cursor:pointer; white-space:nowrap; transition:all 300ms var(--ease);
}
.bnl-btn-primary { background: var(--primary); color:#fff; box-shadow: 0 8px 20px -8px rgba(37,99,235,0.5); }
.bnl-btn-ghost { background: #fff; color: var(--text); border:1px solid var(--line); box-shadow: var(--shadow-small); }
.bnl-btn-sm { height:44px; padding:0 20px; font-size:14px; }
.bnl-btn:hover { transform: translateY(-3px); }

.bnl-header {
  position: sticky; top:0; z-index:1000; background: rgba(255,255,255,0.8); backdrop-filter: blur(10px);
  border-bottom:1px solid var(--line); box-shadow: var(--shadow-small);
}
.bnl-header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.bnl-brand { display:flex; align-items:center; gap:12px; font-weight:700; font-size:20px; }
.bnl-brand .dot { width:38px; height:38px; border-radius:50%; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,#2563EB,#14B8A6); }
.bnl-nav ul, .bnl-mobile-menu ul { display:flex; align-items:center; gap:24px; list-style:none; margin:0; padding:0; }
.bnl-nav a, .bnl-mobile-menu a { color: var(--text); font-weight:500; }
.bnl-nav a:hover, .bnl-mobile-menu a:hover { color: var(--primary); }
.bnl-burger { display:none; background:none; border:none; cursor:pointer; }
.bnl-mobile-menu { display:none; padding-bottom:16px; }
.bnl-mobile-menu.open { display:block; }

.bnl-hero { padding-top: clamp(64px, 8vw, 110px); }
.bnl-hero-grid { display:grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items:center; }
.eyebrow { display:inline-block; margin-bottom:12px; color:var(--primary); font-weight:700; text-transform:uppercase; letter-spacing:.16em; font-size:.78rem; }
.bnl-hero h1, .section-head h2, .page-header h1, .entry-content h1, .entry-content h2 { line-height:1.12; margin:0 0 16px; color: var(--secondary-ink); }
.bnl-hero h1 { font-size: clamp(2.4rem, 5vw, 4rem); }
.lead, .section-head p, .muted, .entry-content p { color: var(--text-light); }
.bnl-searchbar { display:flex; gap:12px; flex-wrap:wrap; margin:24px 0 28px; }
.bnl-searchbar input { flex:1 1 260px; border:1px solid var(--line); border-radius:999px; padding:0 18px; min-height:52px; background:#fff; }
.bnl-stat-cards { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 24px; }
.bnl-stat { padding:16px 18px; border:1px solid var(--line); border-radius:16px; background:#fff; box-shadow: var(--shadow-small); }
.bnl-stat .num { font-size:1.25rem; font-weight:700; color: var(--secondary-ink); }
.bnl-stat .lbl { font-size:.92rem; color: var(--text-light); }
.bnl-hero-media img { border-radius: 28px; box-shadow: var(--shadow-large); }

.bnl-grid { display:grid; gap:24px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bnl-card { background:#fff; border:1px solid var(--line); border-radius: var(--radius-lg); box-shadow: var(--shadow-small); transition: transform 300ms var(--ease), box-shadow 300ms var(--ease); }
.bnl-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-large); }
.cat-card, .prod-card, .post-card { padding:24px; }
.prod-media img { width:100%; aspect-ratio: 4/3; object-fit:cover; border-radius:16px; }
.prod-body h3 { margin: 14px 0 8px; font-size: 1.15rem; }
.prod-price { display:flex; gap:10px; align-items:center; margin:12px 0; }
.prod-price .now { font-size:1.2rem; font-weight:700; color:var(--secondary-ink); }
.prod-price .was { color: var(--text-light); text-decoration: line-through; }
.prod-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }
.brand-grid { display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.brand-chip { padding: 16px 18px; border:1px solid var(--line); border-radius: 999px; background:#fff; text-align:center; font-weight:600; }
.post-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:24px; }
.page-header { padding: clamp(40px, 6vw, 72px) 0 8px; }
.bnl-footer { background: #0f172a; color:#fff; padding: 72px 0 32px; margin-top: 40px; }
.bnl-footer-grid { display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:24px; }
.bnl-footer a { color:#cbd5e1; }
.bnl-footer a:hover { color:#fff; }
.bnl-footer-bottom, .affiliate-note { padding-top:20px; margin-top:20px; border-top:1px solid rgba(255,255,255,.16); color:#94a3b8; }
.newsletter { display:grid; gap:10px; margin-top:18px; }
.newsletter input { border-radius: 999px; border: 1px solid rgba(255,255,255,.2); padding: 0 16px; min-height: 44px; background: rgba(255,255,255,.08); color:#fff; }
.reveal { opacity:0; transform: translateY(16px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in { opacity:1; transform:none; }

@media (max-width: 1024px) {
  .bnl-hero-grid { grid-template-columns: 1fr; gap: 40px; }
  .grid-4 { grid-template-columns: repeat(3, 1fr); }
  .bnl-footer-grid { grid-template-columns: repeat(2, 1fr); }
  .brand-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
  .bnl-nav, .bnl-header-cta { display:none; }
  .bnl-burger { display:inline-flex; }
  .grid-4, .grid-3, .post-grid { grid-template-columns: 1fr; }
  .bnl-stat-cards { grid-template-columns: repeat(2, 1fr); }
  .bnl-footer-grid { grid-template-columns: 1fr; }
  .brand-grid { grid-template-columns: repeat(2, 1fr); }
  .bnl-searchbar { flex-wrap: wrap; }
  .bnl-searchbar .bnl-btn { width:100%; }
}

@media (max-width: 480px) {
  .bnl-stat-cards { grid-template-columns: 1fr; }
  .brand-grid { grid-template-columns: 1fr; }
}

