:root{--lglh-red:#c8102e;--lglh-red-dark:#8f0d22;--lglh-ink:#18212b;--lglh-muted:#5b6470;--lglh-line:#e5e7eb}
.lglh-contacto{width:100%;max-width:1240px;margin:0 auto;padding:0 24px 72px;box-sizing:border-box;color:var(--lglh-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.lglh-contacto *{box-sizing:border-box}
.lglh-contacto__hero{position:relative;min-height:360px;margin:0 0 56px;display:flex;align-items:flex-end;overflow:hidden;border-radius:0 0 24px 24px;background-image:linear-gradient(110deg,rgba(20,17,22,.94) 0%,rgba(143,13,34,.78) 56%,rgba(20,17,22,.58) 100%),var(--lglh-contacto-image);background-position:center;background-size:cover}
.lglh-contacto__hero:after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(180deg,transparent,rgba(10,12,16,.55));pointer-events:none}
.lglh-contacto__hero-inner{position:relative;z-index:1;max-width:720px;padding:54px 58px;color:#fff}
.lglh-contacto__eyebrow,.lglh-contacto__kicker{margin:0 0 14px;color:#fbd5dc;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.lglh-contacto__hero h1{margin:0 0 16px;color:#fff;font-family:Montserrat,Inter,sans-serif;font-size:clamp(38px,5vw,68px);font-weight:800;line-height:1.02;letter-spacing:-.04em}
.lglh-contacto__hero p:last-child{max-width:560px;margin:0;color:rgba(255,255,255,.9);font-size:18px;line-height:1.6}
.lglh-contacto__layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.lglh-contacto__intro{padding:20px 0 0}
.lglh-contacto__kicker{color:var(--lglh-red);margin-bottom:12px}
.lglh-contacto__intro h2{margin:0 0 18px;color:var(--lglh-ink);font-family:Montserrat,Inter,sans-serif;font-size:clamp(30px,3vw,48px);font-weight:800;line-height:1.08;letter-spacing:-.035em}
.lglh-contacto__intro>p:not(.lglh-contacto__kicker){max-width:470px;margin:0 0 28px;color:var(--lglh-muted);font-size:17px;line-height:1.7}
.lglh-contacto__info{display:flex;flex-direction:column;gap:8px;margin:0 0 26px;padding:18px 20px;border-left:4px solid var(--lglh-red);background:#fafafa;border-radius:0 12px 12px 0}
.lglh-contacto__info strong{color:var(--lglh-red-dark);font-size:16px}
.lglh-contacto__info span{color:var(--lglh-muted);font-size:14px;line-height:1.5}
.lglh-contacto__secondary{display:inline-flex;align-items:center;gap:10px;color:var(--lglh-red-dark);font-weight:800;text-decoration:none}
.lglh-contacto__secondary:hover{color:var(--lglh-red);text-decoration:underline}
.lglh-contacto__card{padding:34px;background:#fff;border:1px solid var(--lglh-line);border-radius:20px;box-shadow:0 18px 55px rgba(15,23,42,.09)}
.lglh-contacto__notice{margin:0 0 22px;padding:14px 16px;border-radius:10px;font-size:15px;line-height:1.5}
.lglh-contacto__notice--success{background:#ecfdf3;border:1px solid #a7f3d0;color:#065f46}
.lglh-contacto__notice--error{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}
.lglh-contacto__form{margin:0}
.lglh-contacto__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.lglh-contacto__form label{display:block;margin:0;color:var(--lglh-ink);font-size:14px;font-weight:700}
.lglh-contacto__form label>span{display:block;margin:0 0 8px}
.lglh-contacto__form em{color:var(--lglh-red);font-style:normal}
.lglh-contacto__form small{color:#7a838f;font-size:12px;font-weight:500}
.lglh-contacto__form input:not([type=checkbox]),.lglh-contacto__form select,.lglh-contacto__form textarea{display:block;width:100%;margin:0;border:1px solid #d7dce2;border-radius:10px;background:#fff;color:var(--lglh-ink);font:inherit;font-size:15px;line-height:1.45;padding:13px 14px;transition:border-color .2s,box-shadow .2s}
.lglh-contacto__form textarea{min-height:150px;resize:vertical}
.lglh-contacto__form input:not([type=checkbox]):focus,.lglh-contacto__form select:focus,.lglh-contacto__form textarea:focus{outline:0;border-color:var(--lglh-red);box-shadow:0 0 0 3px rgba(200,16,46,.14)}
.lglh-contacto__full{grid-column:1/-1}
.lglh-contacto__privacy{display:flex!important;align-items:flex-start;gap:10px;margin:22px 0 24px!important;color:var(--lglh-muted)!important;font-size:13px!important;font-weight:500!important;line-height:1.5}
.lglh-contacto__privacy input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--lglh-red)}
.lglh-contacto__form button{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:auto;min-width:190px;margin:0;padding:14px 22px;border:0;border-radius:10px;background:var(--lglh-red);color:#fff;font-family:Montserrat,Inter,sans-serif;font-size:14px;font-weight:800;letter-spacing:.02em;cursor:pointer;box-shadow:0 10px 24px rgba(200,16,46,.2);transition:transform .2s,background .2s,box-shadow .2s}
.lglh-contacto__form button:hover{background:var(--lglh-red-dark);transform:translateY(-2px);box-shadow:0 14px 28px rgba(143,13,34,.24)}
.lglh-contacto__form button:focus-visible{outline:3px solid rgba(200,16,46,.28);outline-offset:3px}
.lglh-contacto__honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media (max-width:900px){.lglh-contacto{padding:0 18px 52px}.lglh-contacto__hero{min-height:320px;margin-bottom:40px;border-radius:0 0 18px 18px}.lglh-contacto__hero-inner{padding:42px 30px}.lglh-contacto__layout{grid-template-columns:1fr;gap:34px}.lglh-contacto__intro{padding:0}.lglh-contacto__card{padding:26px 22px}}
@media (max-width:620px){.lglh-contacto{padding:0 14px 40px}.lglh-contacto__hero{min-height:300px;margin-left:-14px;margin-right:-14px;border-radius:0 0 16px 16px}.lglh-contacto__hero-inner{padding:34px 22px}.lglh-contacto__hero h1{font-size:42px}.lglh-contacto__hero p:last-child{font-size:16px}.lglh-contacto__intro h2{font-size:34px}.lglh-contacto__intro>p:not(.lglh-contacto__kicker){font-size:16px}.lglh-contacto__grid{grid-template-columns:1fr;gap:18px}.lglh-contacto__full{grid-column:auto}.lglh-contacto__card{padding:22px 16px;border-radius:16px}.lglh-contacto__form button{width:100%}}
@media (prefers-reduced-motion:reduce){.lglh-contacto__form input:not([type=checkbox]),.lglh-contacto__form select,.lglh-contacto__form textarea,.lglh-contacto__form button{transition:none}}
/* El contenido provisional de Elementor se sustituye por el shortcode. */
body:is(.page-id-63,.page-id-149) .elementor>.e-con>h2{display:none!important;}
body:is(.page-id-63,.page-id-149) .elementor>.e-con>p:before{content:none!important;display:none!important;}

/* El formulario ocupa todo el contenedor de la página de contacto. */
body:is(.page-id-63,.page-id-149) .elementor>.e-con[data-id="8f626ce"]{display:block!important;width:100%!important;grid-template-columns:1fr!important;}
body:is(.page-id-63,.page-id-149) .elementor>.e-con[data-id="8f626ce"]>p{width:100%!important;}
