/* Contacto v406 — como Laurini: portada con título grande y dos columnas (Ubicación / Contacto),
   personas y formulario usando todo el ancho de la página, sin recuadros sueltos */
main.contact-page-v38{--pad:clamp(20px,6vw,115px)}

/* Portada */
main.contact-page-v38 .lau-contact-hero{padding-left:var(--pad);padding-right:var(--pad)}
main.contact-page-v38 .lc-inner{max-width:none}
main.contact-page-v38 .lau-contact-hero h1{text-transform:uppercase;font-weight:400;letter-spacing:-.01em;font-size:clamp(64px,10vw,170px);margin-bottom:26px}
main.contact-page-v38 .lc-sub{font-size:clamp(20px,1.8vw,28px);font-weight:400;color:#dfe9f7;margin:0 0 clamp(50px,6vw,90px)}
main.contact-page-v38 .lc-cols{display:flex;flex-wrap:wrap;gap:clamp(40px,8vw,150px)}
main.contact-page-v38 .lc-location{max-width:none;padding-top:0;border-top:0}
main.contact-page-v38 .lc-location-title{margin:0 0 16px;font-size:clamp(17px,1.3vw,20px)!important;font-weight:400;letter-spacing:0;text-transform:none;color:#9fbbe0}
main.contact-page-v38 .lc-location address,main.contact-page-v38 .lc-direct p{margin:0 0 14px;font-size:clamp(17px,1.3vw,20px);font-weight:400;line-height:1.7;font-style:normal;color:#fff}
main.contact-page-v38 .lc-direct a{color:#fff;text-decoration:none}
main.contact-page-v38 .lc-direct a:hover,main.contact-page-v38 .lc-link:hover{text-decoration:underline;text-underline-offset:5px}
main.contact-page-v38 .lc-link{display:inline-flex;gap:8px;color:#9fbbe0;font-size:16px;text-decoration:none;border:0;padding:0}

/* Personas: dos columnas a todo el ancho, foto grande arriba, sin fondo */
main.contact-page-v38 .lau-contact-people{padding-left:var(--pad);padding-right:var(--pad);min-height:0}
main.contact-page-v38 .lc-panel{max-width:none}
main.contact-page-v38 .lc-people{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,72px)}
main.contact-page-v38 .lc-person{display:block;padding:clamp(10px,1.5vw,24px) 0 0!important;margin:0!important;border:0!important;background:none}
main.contact-page-v38 .lc-person h3{margin:0 0 6px;font-size:clamp(32px,3vw,48px);font-weight:500;letter-spacing:-.03em;color:#193d75}
main.contact-page-v38 .lc-role{margin:0 0 22px!important;font-size:13px!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#5f7fae!important}
main.contact-page-v38 .lc-person a:not(.lc-wa){flex-direction:row;align-items:baseline!important;justify-content:space-between;gap:20px!important;font-size:clamp(19px,1.6vw,24px)!important;padding:18px 0!important;white-space:nowrap}
main.contact-page-v38 .lc-person a:not(.lc-wa)::before{margin:0!important;width:auto!important}
/* Botón WhatsApp: ícono oficial en su círculo verde, texto claro y flecha que avanza */
main.contact-page-v38 .lc-person a.lc-wa{display:flex!important;align-items:center;gap:16px;width:100%;box-sizing:border-box;margin-top:28px!important;padding:14px 22px 14px 14px!important;font-size:18px!important;font-weight:500;color:#193d75!important;background:#fff!important;border:1px solid #193d75!important;border-radius:0;text-decoration:none!important;transition:background .25s,color .25s}
main.contact-page-v38 .lc-person a.lc-wa::before,main.contact-page-v38 .lc-person a.lc-wa::after{content:none!important}
main.contact-page-v38 .lc-wa-ico{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:#25d366}
main.contact-page-v38 .lc-wa-ico svg{width:24px;height:24px;fill:#fff}
main.contact-page-v38 .lc-wa-txt{flex:1}
main.contact-page-v38 .lc-wa-arrow{width:24px;height:24px;flex:0 0 24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
main.contact-page-v38 .lc-person a.lc-wa:hover{background:#193d75!important;color:#fff!important}
main.contact-page-v38 .lc-person a.lc-wa:hover .lc-wa-arrow{transform:translateX(4px)}
main.contact-page-v38 .lc-person a.lc-wa:focus-visible{outline:3px solid #193d75;outline-offset:3px}
@media(max-width:900px){main.contact-page-v38 .lc-people{grid-template-columns:1fr;gap:64px}}
@media(max-width:560px){main.contact-page-v38 .lc-person a:not(.lc-wa){flex-direction:column;align-items:flex-start!important;gap:6px!important;white-space:normal;overflow-wrap:anywhere}}

/* Formulario: fondo a todo el ancho, frase grande a la izquierda, campos a la derecha */
main.contact-page-v38 .contact-form-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);column-gap:clamp(40px,7vw,140px);align-items:start;max-width:none!important;margin:0!important;padding:clamp(70px,8vw,130px) var(--pad)!important;background:#eef3f9}
main.contact-page-v38 .contact-form-section>h2{grid-column:1;margin:0 0 22px;font-size:clamp(17px,1.3vw,20px)!important;font-weight:400;color:#193d75}
main.contact-page-v38 .contact-form-section>.lc-form-intro{grid-column:1;margin:0;max-width:none;font-size:clamp(30px,3vw,50px)!important;font-weight:400;line-height:1.14;letter-spacing:-.025em;color:#193d75}
main.contact-page-v38 .contact-form-section>form{grid-column:2;grid-row:1/span 3;max-width:none}
main.contact-page-v38 #contact-form label{font-size:14px;font-weight:600;color:#193d75;margin-bottom:8px;display:block}
main.contact-page-v38 #contact-form input,main.contact-page-v38 #contact-form select,main.contact-page-v38 #contact-form textarea{width:100%;box-sizing:border-box;background:#fff;border:1px solid #c6d3e4!important;border-radius:0;padding:17px 18px!important;font:inherit;font-size:17px!important;color:#10294f;transition:border-color .2s,box-shadow .2s}
main.contact-page-v38 #contact-form textarea{min-height:180px}
main.contact-page-v38 #contact-form input:focus,main.contact-page-v38 #contact-form select:focus,main.contact-page-v38 #contact-form textarea:focus{outline:none;border-color:#193d75!important;box-shadow:0 0 0 3px rgba(25,61,117,.15)}
main.contact-page-v38 #contact-form .form-group{margin-bottom:22px}
main.contact-page-v38 #contact-form .btn{padding:20px 38px!important;font-size:17px!important;font-weight:600;background:#193d75!important;color:#fff!important;border:0;border-radius:0}
main.contact-page-v38 #contact-form .btn:hover{background:#0f2a52!important}
@media(max-width:1000px){main.contact-page-v38 .contact-form-section{grid-template-columns:1fr}main.contact-page-v38 .contact-form-section>form{grid-column:1;grid-row:auto;margin-top:36px}}

/* v413: la portada azul ocupa toda la pantalla (sin franja blanca abajo); el contacto directo va solo en las personas */
main.contact-page-v38 .lau-contact-hero{min-height:100vh;min-height:100svh}
@media(max-width:900px){main.contact-page-v38 .lau-contact-hero{min-height:100svh}}
/* v415: como Laurini — en la portada Ubicación y Contacto (Javier), sin bloque de personas */
main.contact-page-v38 .lc-name{font-weight:500}

/* v417: transición como Laurini — mapa a todo el ancho entre la portada y el formulario,
   y el formulario que sube a medida que aparece */
main.contact-page-v38 .lc-map{position:relative;height:clamp(380px,72vh,730px);background:#e9eef5;overflow:hidden}
main.contact-page-v38 .lc-map iframe{display:block;width:100%;height:100%;border:0;filter:grayscale(1) contrast(1.05) brightness(1.02)}
main.contact-page-v38 .lc-map::after{content:"";position:absolute;inset:0;background:#193d75;mix-blend-mode:screen;opacity:.12;pointer-events:none}
main.contact-page-v38 .contact-form-section{background:#fff}
@supports(animation-timeline:view()){
  @media(prefers-reduced-motion:no-preference){
    main.contact-page-v38 .contact-form-section>*{animation:lc-sube-v417 linear both;animation-timeline:view();animation-range:entry 0% entry 70%}
    main.contact-page-v38 .contact-form-section>form{animation-range:entry 10% entry 85%}
    @keyframes lc-sube-v417{from{opacity:0;transform:translateY(90px)}to{opacity:1;transform:none}}
  }
}
