/* Pide cita (ventana y en página), barra fija del móvil y WhatsApp. Marca Dr. Leopoldo Navarro. */
.ln-cita{--c-line:#E6E6E4;--c-ink:#2B2B2B;--c-muted:#6b6b6b;--c-sage:#9FAFA3;--c-sage-ink:#5E6F63;--c-beige:#E8DCC8;--c-soft:#F6F1E8;font-family:Montserrat,"Helvetica Neue",Arial,sans-serif;color:var(--c-ink);text-align:left}.ln-cita *,.ln-cita *::before,.ln-cita *::after{box-sizing:border-box}.ln-cita button{font:inherit;letter-spacing:normal;text-transform:none;cursor:pointer;-webkit-tap-highlight-color:transparent;box-shadow:none;min-height:0;line-height:1.3}
/* Ventana */
html.ln-cita-open,html.ln-cita-open body{overflow:hidden}.ln-cita-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(20,18,16,.5);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;transition:opacity .22s ease}.ln-cita-overlay.is-in{opacity:1}.ln-cita.ln-cita-modal{position:relative;width:min(560px,100%);max-height:min(860px,calc(100vh - 48px));overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:24px;box-shadow:0 40px 80px -40px rgba(0,0,0,.45);transform:translateY(14px);transition:transform .22s ease}.ln-cita-overlay.is-in .ln-cita-modal{transform:none}
/* Cabecera: volver, progreso y cerrar */
.ln-cita .ln-cita-head{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;padding:14px 16px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.ln-cita.ln-cita-inline .ln-cita-head{position:static;background:transparent;padding:0 0 6px;grid-template-columns:44px 1fr 44px}.ln-cita .ln-cita-back,.ln-cita .ln-cita-close{padding:0;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#000}.ln-cita .ln-cita-back:hover,.ln-cita .ln-cita-close:hover,.ln-cita .ln-cita-back:focus,.ln-cita .ln-cita-close:focus{background:#F4F4F2;color:#000}.ln-cita .ln-cita-back svg,.ln-cita .ln-cita-close svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.ln-cita .ln-cita-back[hidden]{display:grid;visibility:hidden}.ln-cita .ln-cita-close{grid-column:3}.ln-cita .ln-cita-prog{grid-column:2;display:flex;flex-direction:column;align-items:center;gap:8px}.ln-cita .ln-cita-prog-label{font:600 11px/1 Poppins,Montserrat,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--c-sage-ink)}.ln-cita .ln-cita-prog-bar{position:relative;width:min(200px,60%);height:2px;background:var(--c-line);border-radius:2px;overflow:hidden}.ln-cita .ln-cita-prog-bar::after{content:"";position:absolute;inset:0;background:#000;transform-origin:left;transform:scaleX(var(--p,.25));transition:transform .3s ease}.ln-cita .ln-cita-head.is-done .ln-cita-prog-bar::after{background:var(--c-sage-ink)}
/* Pasos */
.ln-cita .ln-cita-body{padding:8px 32px 32px}.ln-cita.ln-cita-inline .ln-cita-body{padding:8px 0 0}.ln-cita .ln-cita-step.is-active{animation:lnCitaIn .28s ease both}
@keyframes lnCitaIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}.ln-cita .ln-cita-eyebrow{display:flex;align-items:center;gap:12px;margin:8px 0 10px;font:600 11px/1.4 Poppins,Montserrat,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--c-sage-ink)}.ln-cita .ln-cita-eyebrow::before{content:"";width:28px;height:1px;background:currentColor}.ln-cita .ln-cita-title{margin:6px 0 8px;font:400 clamp(26px,3.4vw,32px)/1.15 "PT Serif",Georgia,serif;letter-spacing:-.005em;color:#000;outline:none;text-wrap:balance}.ln-cita .ln-cita-sub{margin:0 0 22px;font-size:15px;line-height:1.6;color:var(--c-muted)}
/* Opciones */
.ln-cita .ln-cita-options{display:grid;gap:10px}.ln-cita .ln-cita-option{font-family:Montserrat,sans-serif;font-size:16px;font-weight:400;letter-spacing:normal;text-transform:none;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:62px;padding:15px 18px;text-align:left;background:#fff;border:1px solid var(--c-line);border-radius:16px;color:#000;transition:border-color .15s ease,background-color .15s ease,color .15s ease,transform .15s ease}.ln-cita .ln-cita-option:hover,.ln-cita .ln-cita-option:focus{background:#fff;color:#000;border-color:#000}.ln-cita .ln-cita-option:active{transform:scale(.99)}.ln-cita .ln-cita-option:focus-visible,.ln-cita .ln-cita-submit:focus-visible,.ln-cita .ln-cita-chip input:focus-visible+span{outline:2px solid var(--c-sage-ink);outline-offset:2px}.ln-cita .ln-cita-option-txt{display:flex;flex-direction:column;gap:3px}.ln-cita .ln-cita-option-t{font-weight:600;font-size:16px;line-height:1.3}.ln-cita .ln-cita-option-d{font-size:13px;line-height:1.4;color:var(--c-muted)}.ln-cita .ln-cita-radio{flex:none;width:20px;height:20px;border:1.5px solid currentColor;border-radius:50%;opacity:.55;position:relative}.ln-cita .ln-cita-option[aria-pressed="true"]{background:#000;border-color:#000;color:#fff}.ln-cita .ln-cita-option[aria-pressed="true"] .ln-cita-option-d{color:rgba(255,255,255,.7)}.ln-cita .ln-cita-option[aria-pressed="true"] .ln-cita-radio{opacity:1}.ln-cita .ln-cita-option[aria-pressed="true"] .ln-cita-radio::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#fff}
/* Datos */
.ln-cita .ln-cita-form{display:grid;gap:16px}.ln-cita .ln-cita-field{display:grid;gap:7px}.ln-cita .ln-cita-field>label,.ln-cita .ln-cita-label{font:600 11px/1.4 Poppins,Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink)}.ln-cita input[type=text],.ln-cita input[type=tel],.ln-cita input[type=email],.ln-cita select,.ln-cita textarea{width:100%;min-height:52px;margin:0;padding:13px 16px;font:16px/1.4 Montserrat,sans-serif;color:#000;background:#fff;border:1px solid #D6D6D2;border-radius:12px;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease;-webkit-appearance:none;appearance:none}.ln-cita textarea{min-height:76px;resize:vertical}.ln-cita input:focus,.ln-cita select:focus,.ln-cita textarea:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px rgba(159,175,163,.35)}.ln-cita [aria-invalid="true"]{border-color:#9b2c2c}.ln-cita .ln-cita-phone{display:grid;grid-template-columns:96px 1fr;gap:8px}.ln-cita select{padding-right:30px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center/16px}.ln-cita .ln-cita-err{margin:0;min-height:0;font-size:13px;color:#9b2c2c}.ln-cita .ln-cita-err:empty{display:none}.ln-cita .ln-cita-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ln-cita .ln-cita-chip{position:relative;margin:0}.ln-cita .ln-cita-chip input{position:absolute;opacity:0;inset:0;margin:0}.ln-cita .ln-cita-chip span{display:grid;place-items:center;min-height:46px;padding:10px 8px;font-size:14px;font-weight:600;border:1px solid var(--c-line);border-radius:999px;transition:all .15s ease;cursor:pointer}.ln-cita .ln-cita-chip input:checked+span{background:#000;border-color:#000;color:#fff}.ln-cita .ln-cita-check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:13.5px;line-height:1.55;color:var(--c-ink)}.ln-cita .ln-cita-check input{width:20px;height:20px;margin:1px 0 0;accent-color:#000;cursor:pointer}.ln-cita .ln-cita-check label{cursor:pointer}.ln-cita .ln-cita-check .ln-cita-err{grid-column:2}.ln-cita .ln-cita-check a,.ln-cita .ln-cita-legal a,.ln-cita .ln-cita-info a{color:#000;text-decoration:underline;text-decoration-color:var(--c-sage);text-underline-offset:3px}.ln-cita .ln-cita-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.ln-cita .ln-cita-submit{width:100%;min-height:56px;margin-top:4px;border:0;border-radius:999px;background:#000;color:#fff;font:600 13px/1 Poppins,Montserrat,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;transition:background-color .2s ease}.ln-cita .ln-cita-submit:hover,.ln-cita .ln-cita-submit:focus{background:var(--c-ink);color:#fff}.ln-cita .ln-cita-submit[disabled]{opacity:.6;cursor:progress}.ln-cita .ln-cita-send-err{margin:0;font-size:14px;color:#9b2c2c}.ln-cita .ln-cita-send-err:empty{display:none}.ln-cita .ln-cita-legal{margin:0;font-size:11.5px;line-height:1.5;color:var(--c-muted)}.ln-cita .ln-cita-info{font-size:12px;line-height:1.55;color:var(--c-muted)}.ln-cita .ln-cita-info summary{cursor:pointer;font-weight:600;color:var(--c-ink)}.ln-cita .ln-cita-info p{margin:8px 0 0}
/* Gracias */
.ln-cita .ln-cita-thanks{text-align:center;padding:12px 0 8px}.ln-cita .ln-cita-ok{width:64px;height:64px;margin:4px auto 18px;display:grid;place-items:center;border-radius:50%;background:var(--c-soft);border:1px solid var(--c-beige)}.ln-cita .ln-cita-ok svg{width:28px;height:28px;fill:none;stroke:var(--c-sage-ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ln-cita .ln-cita-thanks .ln-cita-sub{max-width:400px;margin-left:auto;margin-right:auto}.ln-cita .ln-cita-wa{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 24px;border:1px solid #000;border-radius:999px;color:#000!important;text-decoration:none!important;font-weight:600;font-size:14px}.ln-cita .ln-cita-wa:hover{background:#000;color:#fff!important}.ln-cita .ln-cita-wa svg{width:20px;height:20px;fill:currentColor}.ln-cita .ln-cita-done:hover,.ln-cita .ln-cita-done:focus{background:transparent;color:#000}
.ln-cita .ln-cita-done{display:block;margin:14px auto 0;padding:10px 16px;border:0;background:transparent;color:var(--c-muted);text-decoration:underline;text-underline-offset:3px}
/* En página (contacto y portada) */
.ln-cita.ln-cita-inline{background:#fff;border:1px solid var(--c-line);border-radius:24px;padding:24px 28px 30px;box-shadow:0 30px 60px -44px rgba(0,0,0,.4);scroll-margin-top:110px}
/* Móvil: la ventana ocupa la pantalla entera */
@media (max-width:767px){.ln-cita-overlay{padding:0;align-items:stretch}.ln-cita.ln-cita-modal{width:100%;max-height:none;height:100%;height:100dvh;border-radius:0;transform:translateY(24px)}.ln-cita .ln-cita-body{padding:4px 20px calc(28px + env(safe-area-inset-bottom))}.ln-cita .ln-cita-head{padding:10px 10px}.ln-cita.ln-cita-inline{padding:18px 18px 24px;border-radius:20px}.ln-cita .ln-cita-chips{grid-template-columns:repeat(3,1fr)}
}
@media (prefers-reduced-motion:reduce){.ln-cita-overlay,.ln-cita.ln-cita-modal,.ln-cita .ln-cita-prog-bar::after{transition:none}.ln-cita .ln-cita-step.is-active{animation:none}}

/* ---- Barra fija del móvil: WhatsApp, llamar y pedir cita ---- */
.ln-bar{display:none}
@media (max-width:1024px){.ln-bar{display:grid;grid-template-columns:52px 52px 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:9990;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid #E6E6E4;transform:translateY(110%);transition:transform .3s ease;font-family:Poppins,Montserrat,sans-serif}.ln-bar.is-visible{transform:none}html.ln-cita-open .ln-bar{transform:translateY(110%)}.ln-bar a{display:grid;place-items:center;height:52px;border-radius:999px;text-decoration:none!important;-webkit-tap-highlight-color:transparent}.ln-bar-ico{border:1px solid #000;color:#000!important}.ln-bar-ico svg{width:22px;height:22px}.ln-bar-wa svg{fill:#000}.ln-bar-tel svg{fill:none;stroke:#000;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ln-bar-cita{background:#000;color:#fff!important;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}html.ln-bar-on body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 /* El aviso de cookies queda por encima de la barra */
 html.ln-bar-on #cmplz-cookiebanner-container .cmplz-cookiebanner{bottom:calc(80px + env(safe-area-inset-bottom))!important}.ln-wa{display:none!important}
}
/* ---- WhatsApp en escritorio ---- */
.ln-wa{position:fixed;right:24px;bottom:24px;z-index:9990;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#000;color:#fff;box-shadow:0 0 0 1px rgba(255,255,255,.22),0 18px 36px -16px rgba(0,0,0,.5);opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;transition:opacity .3s ease,transform .3s ease}.ln-wa.is-visible{opacity:1;transform:none;pointer-events:auto}.ln-wa svg{width:28px;height:28px;fill:#fff}.ln-wa-label{position:absolute;right:70px;white-space:nowrap;padding:9px 14px;border-radius:999px;background:#fff;color:#000;font:600 13px/1 Montserrat,sans-serif;box-shadow:0 10px 30px -12px rgba(0,0,0,.35);opacity:0;transform:translateX(6px);transition:all .2s ease;pointer-events:none}.ln-wa:hover .ln-wa-label,.ln-wa:focus-visible .ln-wa-label{opacity:1;transform:none}html.ln-cita-open .ln-wa{opacity:0;pointer-events:none}
