/* ─────────────────────────────────────────
   BESTLAWYER.ES — DESIGN SYSTEM
   Dark boutique theme with gold accents
   OVERRIDES for Hostinger AI Theme
───────────────────────────────────────── */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,600&family=DM+Sans:wght@300;400;500&display=swap');

:root {
  --bl-ink:         #080808;
  --bl-ink-soft:    #0F0F0F;
  --bl-ink-card:    #131313;
  --bl-ink-card2:   #181818;
  --bl-ink-border:  #242424;
  --bl-ink-border2: #2E2E2E;
  --bl-gold:        #B8963E;
  --bl-gold-bright: #D4AE57;
  --bl-gold-pale:   #E8D08A;
  --bl-gold-dim:    #8A6E2A;
  --bl-gold-glow:   rgba(184,150,62,0.15);
  --bl-snow:        #F5F1E8;
  --bl-snow-dim:    #9B9488;
  --bl-snow-faint:  #4A4640;
  --bl-font-display: 'Cormorant Garamond', Georgia, serif;
  --bl-font-body:    'DM Sans', sans-serif;
  --bl-ease:        cubic-bezier(0.4,0,0.2,1);
  --bl-t:           0.35s;
}

/* ═══════════════════════════════════════════
   THEME OVERRIDES — Twenty Twenty-Five
═══════════════════════════════════════════ */

/* HIDE the auto-generated page title on homepage */
.home .wp-block-post-title,
.home .wp-block-query-title,
body.page .wp-block-post-title,
.wp-block-post-title {
  display: none !important;
}

/* HIDE auto-generated navigation (too long) — we use our own */
.wp-block-navigation .wp-block-page-list {
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  gap: 24px !important;
}
.wp-block-page-list .wp-block-pages-list__item a,
.wp-block-navigation-item__content {
  color: #9B9488 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
.wp-block-page-list .wp-block-pages-list__item a:hover,
.wp-block-navigation-item__content:hover {
  color: #F5F1E8 !important;
}
html, body {
  background: #080808 !important;
  color: #F5F1E8 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 300 !important;
  -webkit-font-smoothing: antialiased;
}

/* Kill the Hostinger header completely */
header,
.wp-block-template-part[data-type="header"],
.wp-site-header,
.has-global-padding > header,
body > header,
.wp-block-group:has(> .wp-block-site-title),
.wp-block-template-part:first-child {
  background: rgba(8,8,8,0.95) !important;
  backdrop-filter: blur(24px);
  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
  color: #F5F1E8 !important;
}

/* Site title styling */
.wp-block-site-title,
.wp-block-site-title a {
  color: #F5F1E8 !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

/* Navigation links */
.wp-block-navigation a,
.wp-block-navigation .wp-block-navigation-item__content {
  color: #9B9488 !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
.wp-block-navigation a:hover {
  color: #F5F1E8 !important;
}

/* Kill ALL theme background colors on wrappers */
.wp-site-blocks,
.wp-site-blocks > *,
.entry-content,
.page-content,
.post-content,
main,
.wp-block-post-content,
.has-global-padding,
.is-layout-constrained,
.is-layout-flow {
  background: transparent !important;
}

/* Make content full-width */
.wp-site-blocks > main,
.wp-site-blocks > .wp-block-group,
.wp-site-blocks > .wp-block-template-part,
.wp-block-post-content,
.entry-content {
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Remove any content containment that creates a narrow column */
.wp-site-blocks .wp-block-post-content > .alignfull,
.wp-site-blocks .entry-content > .alignfull,
.wp-block-post-content > *,
.entry-content > * {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Kill footer theme styles */
footer,
.wp-block-template-part:last-child,
.wp-block-template-part[data-type="footer"] {
  background: #0F0F0F !important;
  border-top: 1px solid #242424 !important;
  color: #9B9488 !important;
}
footer a, footer .wp-block-navigation a {
  color: #4A4640 !important;
}
footer a:hover { color: #D4AE57 !important; }

/* Remove any padding/margin the theme adds to the page */
.page .wp-block-post-content,
.home .wp-block-post-content {
  padding: 0 !important;
  margin: 0 !important;
}

/* Kill admin bar gap if logged in */
body.admin-bar .wp-site-blocks { margin-top: 0; }

/* ═══════════════════════════════════════════
   COMPONENT STYLES
═══════════════════════════════════════════ */

/* Typography */
.bl-display, .bl-hero h1, .bl-section h2 { font-family: var(--bl-font-display) !important; font-weight: 300; line-height: 1.05; }
.bl-eyebrow { font-size: 10px !important; font-weight: 500; letter-spacing: 0.25em; text-transform: uppercase; color: var(--bl-gold-bright); display: inline-flex; align-items: center; gap: 10px; }
.bl-eyebrow::before { content: ''; display: inline-block; width: 20px; height: 1px; background: var(--bl-gold-bright); }

/* Buttons */
.bl-btn-gold { background: var(--bl-gold) !important; color: var(--bl-ink) !important; padding: 15px 32px !important; border-radius: 2px !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: 0.18em !important; text-transform: uppercase !important; transition: all var(--bl-t) var(--bl-ease); border: none !important; }
.bl-btn-gold:hover { background: var(--bl-gold-bright) !important; box-shadow: 0 0 40px var(--bl-gold-glow), 0 4px 20px rgba(0,0,0,0.4); transform: translateY(-2px); }
.bl-btn-stroke { background: transparent !important; color: var(--bl-snow) !important; padding: 14px 32px !important; border: 1px solid rgba(255,255,255,0.15) !important; border-radius: 2px !important; font-size: 11px !important; letter-spacing: 0.18em !important; text-transform: uppercase !important; }
.bl-btn-stroke:hover { border-color: var(--bl-gold) !important; color: var(--bl-gold) !important; }

/* Cards */
.bl-card { background: var(--bl-ink-card) !important; padding: 40px 36px; position: relative; overflow: hidden; transition: background var(--bl-t) var(--bl-ease); border: 1px solid var(--bl-ink-border); }
.bl-card:hover { background: var(--bl-ink-card2) !important; }

/* Lawyer cards */
.bl-lawyer-card { background: var(--bl-ink-card) !important; border: 1px solid var(--bl-ink-border); padding: 32px; transition: all var(--bl-t); }
.bl-lawyer-card:hover { background: var(--bl-ink-card2) !important; border-color: var(--bl-ink-border2); }

/* Badge */
.bl-badge { display: inline-block; padding: 4px 12px; font-size: 9px; font-weight: 500; letter-spacing: 0.14em; text-transform: uppercase; border-radius: 2px; }
.bl-badge-verified { background: rgba(184,150,62,0.12); color: var(--bl-gold-bright); }

/* Stats */
.bl-stat-num { font-family: var(--bl-font-display) !important; font-size: 3.5rem; font-weight: 300; color: var(--bl-gold-bright); line-height: 1; }
.bl-stat-label { font-size: 10px; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase; color: var(--bl-snow-faint); }

/* Table */
table { border-collapse: collapse; width: 100%; }
table th { background: #181818 !important; color: #F5F1E8 !important; font-size: 12px; text-transform: uppercase; letter-spacing: 0.1em; padding: 14px 18px; text-align: left; border-bottom: 2px solid #8A6E2A; }
table td { background: #131313 !important; color: #9B9488 !important; padding: 12px 18px; border-bottom: 1px solid #242424; font-size: 14px; }
table tr:hover td { background: #181818 !important; }

/* Lists */
ul, ol { color: #9B9488; }
li { padding: 6px 0; }

/* Links */
a { color: #D4AE57; text-decoration: none; }
a:hover { color: #E8D08A; }

/* Headings in content */
h1, h2, h3, h4 { color: #F5F1E8 !important; }

/* Responsive */
@media (max-width: 768px) {
  .bl-hero h1 { font-size: 2.8rem !important; }
  section > div { padding-left: 20px !important; padding-right: 20px !important; }
  section > div > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
}
