/* ==========================================================================
   Footer + WhatsApp flotante + CTA sticky + pop-up brochure — CV Galería
   Reglas portadas verbatim desde template/styles.css (regla primordial 2).
   ========================================================================== */

footer{background:#0b0e1d;color:#fff;padding:36px 8vw;display:grid;grid-template-columns:1fr auto auto auto;gap:45px;align-items:center;font-size:10px;letter-spacing:.1em}
.footer-brand .brand-mark{filter:invert(1)}
.mobile-sticky{display:none}
@media(max-width:900px){footer{grid-template-columns:1fr 1fr}.mobile-sticky{display:block;position:fixed;z-index:50;bottom:12px;left:5%;width:90%;border:0;background:#fff;color:var(--navy);box-shadow:0 4px 30px #0006;padding:16px;font-weight:bold}}
@media(max-width:560px){footer{grid-template-columns:1fr;padding-bottom:90px}}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:80;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 8px 26px rgba(0,0,0,.3);transition:transform .2s,background .2s}
.whatsapp-float:hover{background:#20bd5a;transform:translateY(-3px)}
.whatsapp-float svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.whatsapp-float svg path+path{fill:currentColor;stroke:none}
.brochure-confirmation{border-left:1px solid var(--gold);padding:16px 22px}
.brochure-confirmation strong{font:30px Georgia,serif}
.brochure-confirmation p{color:#bfc0c7}
.lead-overlay{position:fixed;inset:0;z-index:100;background:rgba(5,7,16,.58);display:flex;align-items:center;justify-content:center;padding:24px;animation:lead-fade .25s ease}
.lead-popup{width:min(520px,100%);position:relative;background:#171922;color:#fff;padding:48px 50px 44px;box-shadow:0 24px 80px rgba(0,0,0,.45);border:1px solid #3d4050}
.lead-close{position:absolute;right:14px;top:10px;width:40px;height:40px;border:0;background:transparent;color:#fff;font:300 31px/1 Arial}
.lead-popup .eyebrow{margin-bottom:19px;color:var(--gold)}
.lead-popup h2{font:400 43px/1.05 Georgia,serif;margin:0 0 18px}
.lead-popup>p:not(.eyebrow){color:#c9cad1;font-size:14px;line-height:1.65;margin:0 0 30px}
.lead-popup form{display:grid;grid-template-columns:1fr auto}
.lead-popup form label{grid-column:1/3;font-size:9px;letter-spacing:.18em;margin-bottom:10px}
.lead-popup input{min-width:0;border:1px solid #565966;border-right:0;background:transparent;color:#fff;padding:0 16px;outline:none}
.lead-popup input:focus{border-color:var(--gold)}
.lead-popup .button{white-space:nowrap}
.lead-popup .brochure-confirmation{margin-top:22px}
@keyframes lead-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:560px){.whatsapp-float{right:18px;bottom:82px;width:54px;height:54px}.lead-overlay{align-items:flex-end;padding:14px}.lead-popup{padding:42px 24px 28px}.lead-popup h2{font-size:36px}.lead-popup form{grid-template-columns:1fr}.lead-popup form label{grid-column:auto}.lead-popup input{border-right:1px solid #565966;border-bottom:0;padding:15px}.lead-popup .button{width:100%}}
.mobile-sticky{text-align:center;text-decoration:none}

/* ==========================================================================
   AGREGADO DEL TEMA (no proviene de template/styles.css)

   Badge "Powered by ResIT" — OCULTO A LA VISTA, presente en el DOM.
   Por pedido del cliente el badge no se muestra, pero el <a href="https://resit.cl">
   y el alt de su imagen siguen en el HTML servido. Se usa la técnica
   visually-hidden estándar (la misma de .screen-reader-text de WordPress).

   Al pasar a position:absolute el badge sale del flujo del grid, así que el
   <footer> conserva las 4 columnas del diseño original: por eso acá ya NO se
   amplía la grilla como se hacía antes.

   PARA VOLVER A MOSTRARLO: reemplazar la regla .footer__powered de abajo por
       .footer__powered{display:block;line-height:0}
   y agregar la quinta columna:
       footer{grid-template-columns:1fr auto auto auto auto}
       @media(max-width:900px){footer{grid-template-columns:1fr 1fr}}
       @media(max-width:560px){footer{grid-template-columns:1fr}}
   ========================================================================== */
.footer__powered{
  position:absolute;
  width:1px;
  height:1px;
  margin:-1px;
  padding:0;
  overflow:hidden;
  clip:rect(0 0 0 0);
  clip-path:inset(50%);
  white-space:nowrap;
  border:0;
}
.footer__powered img{height:24px;width:auto;opacity:.8}

/* ==========================================================================
   AGREGADO DEL TEMA (no proviene de template/styles.css)
   Pop-up del brochure servido por Contact Form 7

   El diseño arma el formulario como una grilla de dos columnas
   (.lead-popup form{grid-template-columns:1fr auto}): la etiqueta ocupa la
   fila de arriba y el campo y el botón son HERMANOS en la de abajo. Por eso
   el input lleva `padding:0 16px` sin alto propio y `border-right:0`: se
   estira a la altura del botón y se apoya contra él.

   CF7 mete cada campo en un <span class="wpcf7-form-control-wrap">, así que el
   ítem de la grilla pasa a ser el span y no el input. Acá se le devuelve el
   comportamiento: el span es la celda y el input la llena.

   Además, el botón es un <input type="submit">, no el <button> del diseño, y
   `.wpcf7 input[type=submit]` (0,2,1) del scaffold le gana a `.button-light`
   (0,1,0) e impone el preset del Customizer —mayúsculas, peso 700, navy—, que
   sobre el fondo #171922 del pop-up queda casi invisible. Se re-declara el
   look del botón claro del diseño.
   ========================================================================== */
.lead-popup .wpcf7-form{
  display:grid;
  grid-template-columns:1fr auto;
}
.lead-popup .wpcf7-form label{
  grid-column:1/3;
}
/* El wrapper de CF7 es la celda; el input la ocupa por completo */
.lead-popup .wpcf7-form-control-wrap{
  display:grid;
  min-width:0;
}
/* Mensajes y spinner ocupan el ancho completo, en su propia fila */
.lead-popup .wpcf7-form .wpcf7-response-output,
.lead-popup .wpcf7-form .wpcf7-spinner{
  grid-column:1/-1;
}
.lead-popup .wpcf7-form .wpcf7-spinner{
  justify-self:center;
  margin:12px 0 0;
}

/* Botón claro del diseño (.button + .button-light) */
.lead-popup .wpcf7 form input[type="submit"]{
  border:0;
  border-radius:0;
  background:#fff;
  color:var(--navy);
  padding:17px 25px;
  font:inherit;
  letter-spacing:.02em;
  text-transform:none;
  min-width:0;
  box-shadow:none;
  white-space:nowrap;
}
.lead-popup .wpcf7 form input[type="submit"]:hover{
  background:#fff;
  color:var(--navy);
  box-shadow:none;
  transform:none;
}

/* Mensajes de estado sobre fondo oscuro.
   Se toma el lenguaje del propio bloque de confirmación del diseño
   (.brochure-confirmation: filete dorado a la izquierda, sin caja). */
.lead-popup .wpcf7 form .wpcf7-response-output{
  margin:22px 0 0;
  padding:16px 22px;
  border:0;
  border-left:1px solid #565966;
  border-radius:0;
  background:none;
  color:#bfc0c7;
  font-size:12px;
  line-height:1.65;
  letter-spacing:.02em;
}
.lead-popup .wpcf7 form.sent .wpcf7-response-output{
  border-left-color:var(--gold);
  color:#fff;
}
.lead-popup .wpcf7 form.invalid .wpcf7-response-output,
.lead-popup .wpcf7 form.unaccepted .wpcf7-response-output,
.lead-popup .wpcf7 form.payment-required .wpcf7-response-output{
  border-left-color:#8b8fa3;
  color:#e6e7ec;
}
.lead-popup .wpcf7 form.failed .wpcf7-response-output,
.lead-popup .wpcf7 form.aborted .wpcf7-response-output,
.lead-popup .wpcf7 form.spam .wpcf7-response-output{
  border-left-color:#c26055;
  color:#f0c8c3;
}
.lead-popup .wpcf7-not-valid-tip{
  font-size:10px;
  letter-spacing:.02em;
  color:#e8a49b;
  margin-top:6px;
}
.lead-popup .wpcf7-form-control.wpcf7-not-valid{
  border-color:#c26055;
}
