/* Modern overrides for Gobbo theme */
:root{
  --gobbo-radius:8px;
  --gobbo-card-bg:#fff;
  --gobbo-muted:#6c757d;
}

/* Palette */
:root{
  --primary-900: #16331a;
  --primary-main: #1f5325; /* fallback if not set by customizer */
  --primary-500: #2e7d32;
  --primary-300: #66bb6a;
  --accent: #f0c14b;
  --surface: #ffffff;
  --muted: #6c757d;
}

/* Utility spacing */
.u-mt-24{margin-top:24px}
.u-mb-24{margin-bottom:24px}

.btn-gobbo{
  background:var(--primary-500);
  color:#fff;
  border-radius:var(--gobbo-radius);
  padding:10px 18px;
  border:0;
  transition:transform .12s ease, box-shadow .12s ease;
}
.btn-gobbo:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(31,83,37,.12)}

.btn-ghost{
  background: transparent;
  border:1px solid rgba(0,0,0,.06);
  color:var(--primary-900);
}

.card-gobbo{
  background:var(--gobbo-card-bg);
  border:1px solid rgba(0,0,0,.06);
  border-radius:var(--gobbo-radius);
  padding:18px;
}

.card-gobbo{box-shadow: 0 6px 18px rgba(12,15,17,0.04)}

.container-narrow{max-width:980px;margin:0 auto}

.header-search{
  display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;border:1px solid rgba(0,0,0,.06);background:var(--background-paper)
}

/* Responsive tweaks */
@media (max-width:768px){
  h1{font-size:32px}
  h2{font-size:24px}
}

/* Accessibility: focus outlines */
:focus{outline:3px solid rgba(0,123,255,.12);outline-offset:3px}

/* Hero compact */
.hero-compact{
  color: #fff;
  padding: 56px 0;
}
.hero-compact h1{font-size:44px;margin-bottom:8px;font-weight:700;line-height:1.05}
.hero-compact .subtitulo{color: rgba(255,255,255,.92);font-size:20px;margin-bottom:16px}

.hero-compact .img-fluid{max-width:360px}

/* Typography */
body{font-family: 'Montserrat', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; color:var(--gobbo-muted)}

/* CTA emphasis */
.hero-compact .btn-gobbo{padding:12px 22px;font-weight:600}


/* Sections */
.section-services, .section-tramites, .section-latest{padding:36px 0}
.fondo-paper{background:var(--background-paper)}

/* Card image fit */
.card-gobbo .card-img-top img, .card-gobbo img{width:100%;height:180px;object-fit:cover;border-top-left-radius:var(--gobbo-radius);border-top-right-radius:var(--gobbo-radius)}

/* Compact headings */
.section-services h2, .section-tramites h2, .section-latest h2{font-weight:600;margin-bottom:8px}

/* Small utility */
.text-muted-small{color:var(--gobbo-muted);font-size:13px}
