/* MCA_PROMOCION_MARCO_V1: estilos propios; no altera tarjetas, filtros ni módulos del portal. */
#mcmp-municipal { margin:14px 0 18px; }
.mcmp-ad { box-sizing:border-box; width:100%; min-width:0; grid-column:1/-1; margin:0; overflow:hidden; background:#fff; border:2px solid #b8cdbd; border-radius:18px; box-shadow:0 6px 20px rgba(37,77,61,.07); color:#273b30; font:14px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif; }
.mcmp-ad * { box-sizing:border-box; }
.mcmp-ad a { color:inherit; text-decoration:none; }
.mcmp-ad a:focus-visible { outline:3px solid #21755a; outline-offset:3px; }
.mcmp-ad .mcmp-ad__label { display:flex; gap:7px; align-items:center; flex-wrap:wrap; padding:10px 16px; background:#edf5ee; color:#254d3d; border-bottom:1px solid #d9dfd4; font-size:12px; font-weight:650; }
.mcmp-ad .mcmp-ad__label img { width:24px; height:24px; object-fit:contain; }
.mcmp-ad .mcmp-ad__label small { margin-left:auto; color:#58675e; font-size:11px; font-weight:400; }
.mcmp-ad .mcmp-ad__body { display:grid; grid-template-columns:160px minmax(0,1fr) auto; align-items:center; gap:20px; padding:20px; background:linear-gradient(135deg,#fff 65%,#f4f8f1); }
.mcmp-ad .mcmp-ad__photo { display:block; width:160px; height:140px; border-radius:12px; overflow:hidden; background:#edf0e9; }
.mcmp-ad .mcmp-ad__photo img { width:100%; height:100%; object-fit:cover; display:block; }
.mcmp-ad .mcmp-ad__copy { min-width:0; }
.mcmp-ad h3 { font:750 22px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif; margin:0 0 5px; color:#273b30; overflow-wrap:anywhere; }
.mcmp-ad p { margin:0; color:#58675e; overflow-wrap:anywhere; }
.mcmp-ad .mcmp-ad__town { font-size:12px; }
.mcmp-ad .mcmp-ad__description { margin-top:7px; }
.mcmp-ad a.mcmp-ad__cta { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; border:1px solid #254d3d; border-radius:8px; background:#254d3d; color:#fff; font-weight:650; text-align:center; white-space:nowrap; }
.mcmp-ad--compact { width:calc(100% - 24px); margin:28px 12px; }
.mcmp-ad--compact .mcmp-ad__description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
@media(max-width:600px) {
  .mcmp-ad .mcmp-ad__body { grid-template-columns:104px minmax(0,1fr); gap:12px; padding:16px; }
  .mcmp-ad .mcmp-ad__photo { width:104px; height:132px; grid-row:1/3; }
  .mcmp-ad .mcmp-ad__cta { grid-column:2; justify-self:start; }
  .mcmp-ad h3 { font-size:20px; }
  .mcmp-ad--compact { width:calc(100% - 16px); margin:24px 8px; }
}
@media(max-width:360px) {
  .mcmp-ad .mcmp-ad__body { grid-template-columns:88px minmax(0,1fr); padding:12px; gap:10px; }
  .mcmp-ad .mcmp-ad__photo { width:88px; height:124px; }
  .mcmp-ad a.mcmp-ad__cta { white-space:normal; padding:9px 10px; }
}
/* R2: puja vigente y posición visibles también en las tarjetas compactas. */
.mcmp-ad .mcmp-ad__bid { display:flex; align-items:center; flex-wrap:wrap; gap:6px 14px; padding:10px 16px; border-top:1px solid #e4e9df; background:#fafcf8; font-size:12px; }
.mcmp-ad .mcmp-ad__bid strong { color:#254d3d; font-size:14px; font-variant-numeric:tabular-nums; }
.mcmp-ad .mcmp-ad__position { color:#58675e; overflow-wrap:anywhere; min-width:0; }
.mcmp-ad .mcmp-ad__bid a { margin-left:auto; font-weight:650; color:#254d3d; text-decoration:underline; text-underline-offset:3px; min-height:32px; display:inline-flex; align-items:center; }
@media(max-width:600px) { .mcmp-ad .mcmp-ad__bid { padding:8px 12px; gap:4px 12px; } }

/* Inline placements occupy their own row in the visual results grid. */
#mcmp-municipal.mcmp-templates-only{margin:0}
html body #portalResultsGrid[data-visual="1"]>.mcmp-ad{grid-column:1/-1!important;width:100%!important;margin:8px 0!important;border-radius:22px;box-shadow:0 10px 28px #30463312}
html body #portalResultsGrid[data-visual="1"]>.mcmp-ad .mcmp-ad__body{background:linear-gradient(120deg,#fff9ee,#fffdf9 50%,#eff6ed)}
