/* Custom landing-page CSS for "Cita Online" */
.pbr-wrap, .pbr-wrap *, .pbr-wrap *::before, .pbr-wrap *::after { box-sizing: border-box; }
.pbr-wrap {
  font-family: 'Catamaran', sans-serif;
  font-weight: 400;
  color: #183B5F;
  background: #fff;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  --denim: #183B5F;
  --peach: #F3B6A1;
  --peach-dark: #d4917a;
  --sky: #94C0D4;
  --sky-light: #eaf3f7;
  --banana: #F5CA77;
  --off: #FDF8F6;
  --muted: #6b7e8f;
}
.pbr-wrap h1, .pbr-wrap h2, .pbr-wrap h3 {
  font-family: 'Now','Catamaran',sans-serif;
  font-weight: 900; letter-spacing: -0.02em; margin: 0;
}
.pbr-wrap p { margin: 0; }
.pbr-wrap a { text-decoration: none; }
.pbr-wrap img { max-width: 100%; display: block; }
@font-face { font-family: 'Now'; src: local('Now Black'), local('NowBlack'); font-weight: 900; }

/* ─── HERO ─── */
.co-hero {
  background: linear-gradient(135deg, #183B5F 0%, #0f2540 100%);
  padding: 130px 32px 100px;
  text-align: center;
  position: relative; overflow: hidden;
}
.co-hero::before { content: ''; position: absolute; top: -120px; right: -100px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, #F3B6A1 0%, transparent 65%); opacity: .18; }
.co-hero::after { content: ''; position: absolute; bottom: -140px; left: -100px; width: 380px; height: 380px; border-radius: 50%; background: radial-gradient(circle, #94C0D4 0%, transparent 65%); opacity: .16; }
.co-hero-inner { position: relative; z-index: 1; max-width: 720px; margin: 0 auto; animation: pbrFadeUp .7s cubic-bezier(.16,1,.3,1) both; }
.co-eyebrow-light {
  font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
  color: #F5CA77; margin-bottom: 22px; display: flex; align-items: center; justify-content: center; gap: 12px;
}
.co-eyebrow-light::before, .co-eyebrow-light::after { content: ''; width: 28px; height: 2px; background: #F5CA77; }
.co-hero h1 { font-size: clamp(32px,4.6vw,52px); line-height: 1.2; color: #fff; margin-bottom: 22px; }
.co-hero h1 em { font-style: normal; color: #F3B6A1; }
.pbr-wrap .co-hero-sub { font-size: 17px; line-height: 1.75; font-weight: 300; color: rgba(255,255,255,0.72); max-width: 560px; margin: 0 auto 16px; }
.pbr-wrap .co-hero-note { font-size: 13.5px; color: rgba(255,255,255,0.5); font-style: italic; margin-bottom: 40px; }
.co-hero-list { display: inline-flex; flex-direction: column; gap: 10px; text-align: left; margin: 0 auto 44px; }
.co-hero-list-item { display: flex; align-items: center; gap: 10px; font-size: 15px; color: rgba(255,255,255,0.85); }
.co-hero-list-item::before { content: '✓'; color: #F5CA77; font-weight: 700; }
.co-btn-main {
  display: inline-flex; align-items: center; gap: 10px;
  background: #F3B6A1; color: #183B5F;
  padding: 18px 40px; border-radius: 100px;
  font-size: 16px; font-weight: 700; transition: all .2s;
  box-shadow: 0 12px 32px rgba(241,182,161,0.35);
}
.co-btn-main:hover { background: #d4917a; color: #fff; transform: translateY(-2px); }

/* ─── SECCIONES ─── */
.co-section { padding: 96px 56px; text-align: center; }
.co-section-off { padding: 96px 56px; background: #FDF8F6 !important; text-align: center; }
.co-container { max-width: 640px; margin: 0 auto; }
.co-eyebrow {
  font-size: 11px; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; color: #F3B6A1;
  margin-bottom: 14px; display: flex; align-items: center; justify-content: center; gap: 8px;
}
.co-eyebrow::before, .co-eyebrow::after { content: ''; width: 20px; height: 2px; background: #F3B6A1; }
.co-title { font-size: clamp(26px,3.4vw,38px); line-height: 1.2; color: #183B5F; margin-bottom: 20px; }
.pbr-wrap .co-intro { font-size: 17.5px; line-height: 1.75; font-weight: 300; color: var(--muted); margin-bottom: 48px; }

.co-contact-grid { display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; }
.co-btn-whatsapp {
  display: inline-flex; align-items: center; gap: 10px;
  background: #25D366; color: #fff;
  padding: 17px 34px; border-radius: 100px;
  font-size: 15.5px; font-weight: 700; transition: all .2s;
}
.co-btn-whatsapp:hover { background: #1ea952; transform: translateY(-2px); }
.co-btn-phone {
  display: inline-flex; align-items: center; gap: 10px;
  border: 1.5px solid rgba(24,59,95,0.18); color: #183B5F;
  padding: 17px 32px; border-radius: 100px;
  font-size: 15.5px; font-weight: 700; transition: all .2s;
}
.co-btn-phone:hover { border-color: #F3B6A1; background: #FDF8F6; }

.co-ubicacion {
  margin: 40px auto 0; padding: 24px 28px; max-width: 460px;
  background: #fff; border-radius: 16px;
  border: 1px solid rgba(24,59,95,0.07);
  font-size: 14px; color: var(--muted); line-height: 1.7;
}
.co-ubicacion strong { color: #183B5F; font-weight: 700; display: block; margin-bottom: 4px; }

@keyframes pbrFadeUp { from { opacity:0; transform: translateY(28px); } to { opacity:1; transform: none; } }

@media (max-width: 640px) {
  .co-hero { padding: 110px 24px 70px; }
  .co-section, .co-section-off { padding: 70px 24px; }
  .co-contact-grid { flex-direction: column; align-items: stretch; }
  .co-btn-whatsapp, .co-btn-phone { justify-content: center; }
}
