/* common.css — reset + utilidades compartidas por los 4 temas (Fase 4) */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:96px}
/* que el header sticky no tape el título al saltar a una sección */
:target,section[id],main[id]{scroll-margin-top:96px}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
:focus-visible{outline:2px solid var(--blue,#1C75BC);outline-offset:2px;border-radius:3px}

/* honeypot: fuera de pantalla pero enfocable-inerte */
.hp{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden}

/* Cloudflare Turnstile: caja y placeholder mientras no hay clave */
.turnstile-box{margin:6px 0 14px}
.turnstile-box .placeholder{border:1px dashed #b9c9da;border-radius:10px;padding:15px;text-align:center;font-size:.82rem;color:#7a8ba0;background:#f6fafd}

/* Mensaje de respuesta del formulario (JS lo muestra) */
.form-msg{margin-top:14px;padding:12px 14px;border-radius:8px;font-size:.9rem;display:none;line-height:1.5}
.form-msg.ok{display:block;background:#e5f7ec;color:#12703c}
.form-msg.err{display:block;background:#fdecec;color:#b3261e}

/* Botón flotante de WhatsApp */
.wa-float{position:fixed;right:22px;bottom:22px;z-index:60;width:56px;height:56px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 30px -8px rgba(37,211,102,.6)}
.wa-float svg{width:30px;height:30px;fill:#fff}
@media(max-width:600px){
  .wa-float{width:50px;height:50px;right:14px;bottom:14px}
  form.consulta button[type="submit"]{margin-bottom:6px}
}

/* Capa de motivos estacionales / fiestas (Fase 5 la implementa) */
.season-fx{position:fixed;inset:0;pointer-events:none;z-index:5;overflow:hidden}

/* Badge de desarrollo (solo env=dev) — colapsable con el botón ⚙ DEV o la tecla D */
.devbadge{position:fixed;left:12px;bottom:12px;z-index:200;
  font:12px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;max-width:360px}
.devbadge__toggle{display:inline-block;cursor:pointer;border:0;background:#0d2033;color:#fff;
  font:inherit;font-weight:700;letter-spacing:.04em;padding:7px 11px;border-radius:10px;
  box-shadow:0 10px 30px -10px rgba(0,0,0,.5);opacity:.55;transition:opacity .15s}
.devbadge__toggle:hover,.devbadge.is-open .devbadge__toggle{opacity:1}
.devbadge__body{display:none;margin-top:8px;background:#0d2033;color:#cfe0ee;padding:10px 12px;
  border-radius:10px;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
.devbadge.is-open .devbadge__body{display:block}
.devbadge__body b{color:#fff}
.devbadge__body a{color:#8fd0f5;text-decoration:underline;margin-right:8px;white-space:nowrap}
.devbadge__body .row{margin-top:6px}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
