/* Espuni Marketing - bloque de contacto compartido para páginas de servicios.
   Cambia este archivo para mantener el mismo formulario en ambas landings. */
/* Identical project form from the technology page, scoped only to this landing. */
.espuni-project-contact{background:#101B2B;padding:82px 0 88px;color:#fff}
.espuni-project-contact-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:clamp(30px,4vw,70px);align-items:start}
.espuni-project-contact-intro h2{font-size:clamp(40px,4.7vw,64px);line-height:1.08;letter-spacing:-.035em;color:#C7FF00;margin:0 0 25px;max-width:550px}
.espuni-project-contact-intro>p{font:400 17px/1.7 Inter,Arial,sans-serif;color:#fff;max-width:510px;margin:0 0 28px}
.espuni-project-contact-image{display:block;width:100%;max-width:470px;max-height:280px;aspect-ratio:1.8;object-fit:cover;object-position:center 41%;border-radius:2px}
.espuni-project-contact .form-panel{background:#fff;color:#101B2B;padding:36px;box-shadow:0 10px 38px #111c2814;margin:0}
.espuni-project-contact .form-panel h3{font-size:24px;line-height:1.2;font-weight:700;margin:0 0 25px;letter-spacing:-.035em}
.espuni-project-contact .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.espuni-project-contact .field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}
.espuni-project-contact .field label,.espuni-project-contact .question legend{font-size:13px;font-weight:700;color:#243347}
.espuni-project-contact .field input,.espuni-project-contact .field textarea{box-sizing:border-box;min-width:0;width:100%;border:1px solid #C8CED4;background:#fff;border-radius:0;padding:13px 14px;color:#101B2B;font:400 15px/1.5 Inter,Arial,sans-serif}
.espuni-project-contact .field input:focus-visible,.espuni-project-contact .field textarea:focus-visible{outline:2px solid #B6266A;outline-offset:1px}
.espuni-project-contact .field textarea{min-height:105px;resize:vertical}
.espuni-project-contact .question{padding:5px 0;margin:0 0 21px;border:0;min-width:0}
.espuni-project-contact .question legend{margin-bottom:12px}
.espuni-project-contact .chip-grid{display:flex;flex-wrap:wrap;gap:9px}
.espuni-project-contact .chip{position:relative;display:inline-flex}
.espuni-project-contact .chip input{position:absolute;opacity:0;pointer-events:none}
.espuni-project-contact .chip span{display:inline-flex;padding:10px 13px;border:1px solid #C7CDD4;background:#fff;color:#344357;font-size:13px;line-height:1.35;cursor:pointer;transition:all .14s}
.espuni-project-contact .chip input:checked+span{background:#101B2B;border-color:#101B2B;color:#fff}
.espuni-project-contact .chip input:focus-visible+span{outline:3px solid #B6266A;outline-offset:2px}
.espuni-project-contact .espuni-privacy-consent{display:flex!important;align-items:flex-start!important;gap:11px!important;margin:15px 0!important;color:#344357!important;font:500 13px/1.55 Inter,Arial,sans-serif!important;max-width:100%!important;grid-column:1/-1!important}
.espuni-project-contact .espuni-privacy-consent input{margin-top:4px;flex:none;accent-color:#101B2B}
.espuni-project-contact .espuni-privacy-consent a,.espuni-project-contact .form-hint a{color:#101B2B;text-decoration:underline;text-underline-offset:3px}
.espuni-project-contact .form-submit{width:100%;min-height:49px;display:flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:0;background:#101B2B;color:#fff;font:600 14px Inter,Arial,sans-serif;cursor:pointer;margin:3px 0 12px}
.espuni-project-contact .form-submit:hover{background:#172438}
.espuni-project-contact .form-hint{font-size:12px;color:#657183;line-height:1.5;margin:0 0 5px}
.espuni-project-contact .form-error{color:#A20043;font-size:13px;min-height:0;margin:0 0 8px}
.espuni-project-contact .form-error[hidden]{display:none}

/* Conexión visual del formulario con el pie: evitar la franja azul vacía. */
.espuni-project-contact{padding-bottom:18px}
main:has(.espuni-project-contact) + footer{padding-top:34px}
@media (max-width:900px){
 .espuni-project-contact-grid{grid-template-columns:1fr;gap:28px}
 .espuni-project-contact-image{max-width:440px;height:230px;object-position:center}
}
@media (max-width:650px){
 .espuni-project-contact{padding:58px 0 18px}
 .espuni-project-contact-intro h2{font-size:clamp(35px,9vw,49px)}
 .espuni-project-contact-intro>p{font-size:15px}
 .espuni-project-contact-image{max-width:100%;max-height:220px;aspect-ratio:1.65}
 .espuni-project-contact .form-panel{padding:22px 18px}
 .espuni-project-contact .form-grid{grid-template-columns:1fr;gap:0}
 .espuni-project-contact .chip-grid{gap:7px}
 .espuni-project-contact .chip span{font-size:12px;padding:9px 11px}
 main:has(.espuni-project-contact) + footer{padding-top:28px}
}
