*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#123b75;background:#fff}
a{text-decoration:none;color:inherit}
.wrap{width:min(1180px,calc(100% - 40px));margin:auto}

header{height:68px;background:#fff;border-bottom:1px solid #e5edf5;position:sticky;top:0;z-index:5}
.nav{height:100%;width:min(1180px,calc(100% - 40px));margin:auto;display:flex;align-items:center;gap:25px}
.logo{display:flex;gap:8px;align-items:center;font-size:12px;color:#123b75;line-height:1.15}
.logo:first-letter{font-size:42px;color:#08a4c1}
nav{flex:1;text-align:center;font-size:14px}
nav a{margin:0 9px}
nav a.active{font-weight:700;border-bottom:3px solid #158bd2;padding-bottom:20px}
.cta{background:#0b427f;color:#fff;padding:14px 20px;border-radius:10px;font-weight:bold;white-space:nowrap}
.hamb{display:none;border:0;background:none;font-size:24px}

.hero{background:linear-gradient(120deg,#f3fbff,#fff);padding:38px 0 25px}
.grid{display:grid;grid-template-columns:1.65fr .85fr;gap:18px}
small{letter-spacing:2px;font-weight:bold;color:#38659b}
h1{font-size:50px;line-height:1.05;margin:10px 0;color:#123b75}
h1 em{font-style:normal;color:#078fd0}
.intro{font-size:18px;color:#60799c;max-width:680px;line-height:1.45}

.card{background:#fff;border:1px solid #e1eaf3;border-radius:14px;padding:12px;box-shadow:0 8px 28px #174a7312}
.privacy{text-align:center;padding:11px 0 2px;font-size:12px;color:#687f9e}

.agenda-steps{background:#f3fbff;border:1px solid #dceefb;border-radius:12px;padding:16px 18px;margin-bottom:16px}
.agenda-steps>b{display:block;font-size:15px;color:#123b75;margin-bottom:10px}
.agenda-steps-list{display:flex;flex-direction:column;gap:10px}
.mini-step{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.6;letter-spacing:.1px;color:#3a5578}
.mini-num{flex:none;width:22px;height:22px;border-radius:50%;background:#0b427f;color:#fff;font-size:12px;font-weight:bold;display:grid;place-items:center;margin-top:1px}

/* Chat de citas (ZANTIA) dentro de la tarjeta "Agenda tu cita" */
.chat-card-header{display:flex;align-items:center;gap:12px;padding:6px 5px 14px}
.chat-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#0b427f,#10a9bf);color:#fff;display:grid;place-items:center;font-weight:bold;font-size:18px;flex:none}
.chat-title-group b{display:flex;align-items:center;gap:6px;font-size:16px;color:#123b75}
.chat-title-group span{display:block;font-size:12px;color:#647b9b;margin-top:2px}
.chat-online{width:8px;height:8px;background:#1fbf75;border-radius:50%;display:inline-block}

.chat-messages{height:420px;overflow-y:auto;padding:12px 8px;display:flex;flex-direction:column;gap:10px;background:#f7fafd;border-radius:10px;border:1px solid #eef3f9}
.chat-msg{display:flex}
.chat-msg.bot{justify-content:flex-start}
.chat-msg.user{justify-content:flex-end}
.chat-bubble{max-width:82%;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.45;white-space:pre-line;word-wrap:break-word;overflow-wrap:break-word}
.chat-msg.bot .chat-bubble{background:#fff;border:1px solid #e1eaf3;color:#26426b}
.chat-msg.user .chat-bubble{background:#0b427f;color:#fff}

.chat-options{display:flex;flex-direction:column;gap:6px;margin:-2px 0 2px}
.chat-option-btn{align-self:flex-start;max-width:82%;text-align:left;background:#fff;border:1.5px solid #10a9bf;color:#0b427f;border-radius:10px;padding:8px 12px;font-size:13px;font-weight:bold;cursor:pointer;transition:background .15s}
.chat-option-btn:hover:not(:disabled){background:#e6f8fa}
.chat-option-btn:disabled{opacity:.45;cursor:default}

.chat-typing .chat-bubble{display:flex;gap:4px;align-items:center;padding:12px 14px}
.chat-typing span{width:6px;height:6px;background:#10a9bf;border-radius:50%;opacity:.6;animation:chatPulse 1.4s infinite}
.chat-typing span:nth-child(2){animation-delay:.2s}
.chat-typing span:nth-child(3){animation-delay:.4s}
@keyframes chatPulse{0%,60%,100%{opacity:.6}30%{opacity:1}}

.chat-quick-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.chat-quick-actions[hidden]{display:none}
.quick-action-btn{flex:1 1 auto;min-width:130px;display:flex;align-items:center;justify-content:center;gap:6px;background:#f7fafd;border:1px solid #cfe6ea;color:#0b427f;border-radius:8px;padding:8px 10px;font-size:12.5px;font-weight:bold;cursor:pointer;transition:background .15s}
.qa-icon{flex:none}
.quick-action-btn:hover:not(:disabled){background:#e6f8fa}
.quick-action-btn:disabled{opacity:.5;cursor:default}

.chat-input-row{display:flex;gap:8px;margin-top:10px}
.chat-input-row input{flex:1;height:46px;border:1px solid #ccd9e7;border-radius:8px;padding:0 12px;font-size:14px;color:#29466d;font-family:inherit}
.chat-input-row input:focus{outline:none;border-color:#10a9bf}
.chat-send-btn{width:46px;height:46px;border:0;border-radius:8px;background:#10a9bf;color:#fff;font-size:18px;cursor:pointer;flex:none}
.chat-send-btn:hover:not(:disabled){background:#0e93a6}
.chat-send-btn:disabled{opacity:.5;cursor:default}

.medical{height:275px;border-radius:0 0 0 55px;background:#d9f1fa;overflow:hidden}
.doctor-photo{width:100%;height:100%;object-fit:cover;object-position:38% 35%;display:block}
.emergency,.help{margin-top:12px;border-radius:12px;padding:17px}
.emergency{background:#fff3f4;border:1px solid #ffd8dc;color:#df2e46}
.emergency p,.help p{color:#405b7d;font-size:13px;line-height:1.4}
.emergency p strong{color:#c22036}
.emergency ul{margin:10px 0 0;padding-left:18px;color:#405b7d;font-size:12.5px;line-height:1.55}
.emergency ul li{margin-bottom:4px}
.help{background:#fff;border:1px solid #e2eaf2}
.help span{display:block;color:#617895;font-size:12px;margin-top:4px}

.services{background:#eaf6fc;padding:30px 0 38px}
.head{display:flex;justify-content:space-between;align-items:center}
.head h2{margin:0 0 5px;font-size:27px}
.head p{margin:0;color:#637a9b}
.outline{border:1px solid #4a8bc5;padding:12px 17px;border-radius:9px;font-weight:bold;background:#fff;font-size:13px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}
.service-grid article{background:#fff;border-radius:12px;padding:20px;display:flex;gap:14px;min-height:135px}
.service-grid i{width:55px;height:55px;border-radius:50%;background:#e4f1ff;display:grid;place-items:center;font-style:normal;font-size:27px;color:#1482d7;flex:none}
.service-grid h3{margin:4px 0 7px;font-size:16px}
.service-grid p{font-size:13px;color:#657a98;margin:0 0 10px}
.service-grid a{font-size:13px;color:#087bd1;font-weight:bold}

.mission{background:#e7f4fc;padding:17px 0;color:#164b83}
.mission em{float:right;font-weight:bold}
footer{background:#073d78;color:#fff;padding:22px 0;font-size:12px}

@media(max-width:900px){
  nav{display:none}.hamb{display:block;margin-left:auto}
  .grid{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr 1fr}
  .hero-side{display:grid;grid-template-columns:1fr 1fr}
  .medical{grid-column:1/-1}
}
@media(max-width:600px){
  h1{font-size:38px}
  .service-grid,.hero-side{grid-template-columns:1fr}
  .head{display:block}.outline{display:inline-block;margin-top:14px}
  .mission em{display:none}.wrap{width:calc(100% - 28px)}
  .chat-messages{height:380px}
}
