/* CIMENTA: corrección definitiva de tarjetas de contacto y fotos en móvil */
.cimenta-funnel .cf-step fieldset.cf-unified-contact{display:block!important;width:100%;max-width:100%;min-width:0;margin:24px 0 18px!important;padding:18px!important;border:1px solid #d5e2df!important;border-radius:18px!important;background:#fff!important;box-sizing:border-box}
.cimenta-funnel .cf-step .cf-unified-contact legend{display:table!important;width:auto;max-width:95%;padding:0 10px!important;margin:0!important;color:#143d47!important;font-size:clamp(1.05rem,4vw,1.28rem)!important;font-weight:750!important;line-height:1.4!important;white-space:normal}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-intro{font-size:.9rem!important;line-height:1.55!important;margin:8px 0 17px!important;color:#5c7378!important;font-weight:400!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-options{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option{display:block!important;position:relative!important;margin:0!important;padding:0!important;width:100%!important;min-width:0!important;cursor:pointer!important;color:inherit!important;font-weight:normal!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>input[type=radio]{position:absolute!important;left:10px!important;top:10px!important;width:1px!important;height:1px!important;margin:0!important;opacity:0!important;appearance:none!important;pointer-events:none!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>span.cf-unified-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px!important;min-height:82px!important;width:100%!important;margin:0!important;padding:13px!important;border:1.5px solid #d4e0de!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;text-align:left!important;line-height:normal!important;position:relative!important;box-sizing:border-box!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-card::before{content:none!important;display:none!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-icon{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;padding:0!important;margin:0!important;border:0!important;border-radius:11px!important;background:#e9f1f1!important;color:#173e48!important;font-size:22px!important;font-weight:600!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-copy{display:flex!important;flex:1 1 0!important;min-width:0!important;flex-direction:column!important;gap:4px!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;text-align:left!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-copy strong{display:block!important;color:#173e48!important;font-size:15px!important;font-weight:750!important;line-height:1.3!important;white-space:normal!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-copy small{display:block!important;color:#61777b!important;font-size:12px!important;font-weight:400!important;line-height:1.45!important;white-space:normal!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-tick{display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 22px!important;width:22px!important;height:22px!important;margin:0!important;padding:0!important;border:1.5px solid #b6c8c6!important;border-radius:50%!important;background:transparent!important;color:transparent!important;font-size:13px!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>input:checked+.cf-unified-card{border:2px solid #b69a62!important;background:#fbf8f1!important;padding:12.5px!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>input:checked+.cf-unified-card .cf-unified-icon{background:#153e48!important;color:#fff!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>input:checked+.cf-unified-card .cf-unified-tick{border-color:#b69a62!important;background:#b69a62!important;color:white!important}
.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>input:focus-visible+.cf-unified-card{outline:3px solid #53a3aa!important;outline-offset:3px!important}
.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-note{margin:14px 0 0!important;color:#64787b!important;font-size:12px!important;line-height:1.55!important}
.project-types-grid .project-type-card{display:block!important;position:relative!important;min-height:360px!important;isolation:isolate!important;overflow:hidden!important;background:#143b46!important}
.project-types-grid .project-type-card>img{display:block!important;visibility:visible!important;opacity:1!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;z-index:0!important}
.project-types-grid .project-type-card::after{z-index:1!important;pointer-events:none!important}
.project-types-grid .project-type-card .project-type-card__overlay{z-index:2!important}
@media(max-width:767px){.project-types-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important}.project-types-grid .project-type-card{min-height:370px!important;transform:none!important;opacity:1!important;visibility:visible!important}.project-types-grid .project-type-card>img{object-position:center center!important}.cimenta-funnel .cf-step fieldset.cf-unified-contact{padding:14px 10px!important}.cimenta-funnel .cf-step .cf-unified-contact label.cf-unified-option>span.cf-unified-card{gap:9px!important;padding:11px!important;min-height:78px!important}.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-icon{flex-basis:38px!important;width:38px!important;height:38px!important}.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-copy strong{font-size:14px!important}.cimenta-funnel .cf-step .cf-unified-contact .cf-unified-copy small{font-size:11.5px!important}}
/* Galería: no depender de IntersectionObserver para mostrar fotos en móviles. */
@media(max-width:767px){
  .portfolio-gallery.reveal,.project-types-grid.reveal,.project-types-section .section-heading.reveal{opacity:1!important;transform:none!important;visibility:visible!important}
  .portfolio-gallery .portfolio-photo,.portfolio-gallery .portfolio-photo img{visibility:visible!important;opacity:1!important}
  .portfolio-gallery .portfolio-photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
}
