:root{
  --raac-yellow:#FFC800;
  --raac-blue:#0074B7;
  --raac-green:#00A859;
  --text:#1b1b1b;
}
*{box-sizing:border-box}
body{
  margin:0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background:var(--raac-yellow);
  color:var(--text);
}

/* TOPBAR */
.topbar{
  background:#fff;
  padding:14px 16px;
  display:flex;
  justify-content:center;
  border-bottom:1px solid rgba(0,0,0,.08);
}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none;}
.topbar img{height:78px; width:auto; display:block;}
.brand-text{font-weight:900; letter-spacing:.5px; color:#111; font-size:22px;}

/* LAYOUT */
.container{
  max-width:1180px;
  margin:0 auto;
  padding:34px 16px 8px;
  text-align:center;
}
.hero h1{
  margin:10px 0 6px;
  font-size: clamp(28px, 3.2vw, 46px);
  font-weight:900;
}
.hero p{margin:0 0 18px; font-size:15px; opacity:.92;}

/* SEARCH */
.searchbar{
  max-width:660px;
  margin:14px auto 12px;
  display:flex;
  gap:10px;
  justify-content:center;
}
.searchbar input{
  flex:1; padding:12px 14px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.16);
  outline:none; background:#fff;
}
.searchbar button{
  padding:12px 16px;
  border-radius:12px;
  border:0;
  background:var(--raac-blue);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.searchbar button:hover{filter:brightness(.95);}

.chips{
  display:flex; gap:10px;
  justify-content:center;
  flex-wrap:wrap;
  margin:10px 0 2px;
}
.chip{
  background:#fff; color:#111;
  padding:8px 12px;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
  font-size:13px;
  border:1px solid rgba(0,0,0,.12);
}
.chip:hover{filter:brightness(.98);}
.chip-outline{background:transparent; border:2px solid #111;}

/* MAPA */
.map-section{padding:14px 0 6px;}
#mapa-argentina svg{
  width:min(860px, 92vw);
  height:auto;
  display:block;
  margin:0 auto;
}
/* Fade-in rápido */
.map-fade{opacity:0; transform:translateY(6px); transition:opacity .28s ease, transform .28s ease;}
.map-fade.is-visible{opacity:1; transform:none;}

.provincia{
  fill:var(--raac-blue);
  stroke:#fff;
  stroke-width:2.5;
  stroke-linejoin:round;
  transition: transform .15s ease, fill .15s ease;
  cursor:pointer;
}
.provincia:hover{fill:var(--raac-green); transform:scale(1.015);}

#tooltip{
  position:absolute;
  background:rgba(0,0,0,.82);
  color:#fff;
  padding:6px 10px;
  border-radius:8px;
  font-size:13px;
  pointer-events:none;
  opacity:0;
  transition:opacity .12s ease;
  z-index:9999;
  white-space:nowrap;
}

/* CARDS */
.recents{padding:16px 0 22px;}
.recents h2{margin:10px 0 14px; font-size:22px;}

.cards-grid{
  display:grid;
  gap:14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width:980px;
  margin:0 auto;
}
@media (min-width: 992px){
  .cards-grid{grid-template-columns: repeat(4, minmax(0, 1fr));}
}
.card{
  background:#fff;
  border-radius:14px;
  padding:14px;
  box-shadow:0 8px 18px rgba(0,0,0,.10);
  text-align:left;
}
.card .title{font-weight:900; margin:6px 0 4px;}
.card .meta{font-size:13px; opacity:.82;}
.card .btn{
  display:inline-block;
  margin-top:10px;
  background:var(--raac-blue);
  color:#fff;
  text-decoration:none;
  padding:8px 12px;
  border-radius:10px;
  font-weight:900;
}
.card .btn:hover{filter:brightness(.95);}

/* FOOTER */
.site-footer{
  margin-top:26px;
  background:var(--raac-blue);
  color:#fff;
  padding:26px 16px;
  text-align:center;
}
.footer-logos{
  display:flex;
  gap:18px;
  justify-content:center;
  align-items:center;
  margin-bottom:14px;
}
.footer-logos img{height:52px; width:auto;}
.btn-premium{
  display:inline-block;
  background:var(--raac-green);
  color:#fff;
  text-decoration:none;
  padding:11px 20px;
  border-radius:999px;
  font-weight:900;
}
.btn-premium:hover{filter:brightness(.95);}
.copy{margin-top:10px; font-size:13px; opacity:.95;}