:root {
  --teal: #02a9a4;
  --teal-dark: #008f8c;
  --blue: #132f72;
  --ink: #252525;
  --muted: #737b86;
  --soft: #f3f6fb;
  --card: #ffffff;
  --line: #e5e9ee;
  --dark: #232323;
  --dark-2: #191919;
  --white: #ffffff;
  --shadow: 0 14px 32px rgba(15, 30, 52, .08);
  --radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: #fff;
  color: var(--ink);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.5;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(1180px, calc(100% - 34px)); margin: 0 auto; }
.topbar { background: #f6f8f8; border-bottom: 1px solid #e7ebed; font-size: 13px; color: #677179; }
.topbar-inner { min-height: 38px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.topbar-link { color: #3f575e; font-weight: 700; }
.topbar-right { display: flex; align-items: center; gap: 18px; }
.lang { display: inline-flex; align-items: center; gap: 7px; font-weight: 700; font-size: 12px; }
.lang a { display: inline-flex; align-items: center; gap: 5px; opacity: .65; }
.lang a.active { color: var(--teal-dark); opacity: 1; }
.header { background: #fff; border-bottom: 1px solid #eef0f2; }
.header-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.logo img { width: 185px; }
.header-note { color: #637078; text-align: right; font-size: 14px; }
.header-note strong { color: var(--blue); display: block; }
.hero { min-height: 520px; background: #fff url('../images/hero-dr-jardon.jpg') center center / cover no-repeat; display: flex; align-items: center; overflow: hidden; }
.hero-content { width: min(570px, 52vw); padding: 40px 0; }
.hero .eyebrow { margin: 0 0 4px; color: #75808a; font-size: clamp(26px, 2.2vw, 38px); font-weight: 300; }
.hero h1 { margin: 0 0 20px; max-width: 480px; color: #080808; font-size: clamp(45px, 5vw, 76px); line-height: .97; letter-spacing: -.045em; }
.hero-contact { margin: 0 0 20px; font-size: 17px; color: #2f3337; font-weight: 700; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 13px 22px; border-radius: 4px; font-weight: 700; font-size: 14px; letter-spacing: .01em; transition: transform .18s ease, background .18s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-teal { background: var(--teal); color: #fff; }
.btn-teal:hover { background: var(--teal-dark); }
.contact-ribbon { background: var(--teal); color: #fff; padding: 48px 0; }
.contact-grid { display: grid; grid-template-columns: 1.28fr 1fr 180px; align-items: center; gap: 38px; }
.contact-lead { margin: 0 0 16px; max-width: 530px; font-size: clamp(25px, 2.8vw, 40px); line-height: 1.18; font-weight: 700; }
.contact-details { display: grid; gap: 18px; font-size: 15px; }
.contact-details strong { display: block; font-size: 16px; }
.qr-wrap { display: flex; justify-content: flex-end; }
.qr-wrap img { width: 145px; padding: 9px; background: #fff; border-radius: 5px; }
.section { padding: 76px 0; }
.section.soft { background: var(--soft); }
.section-head { max-width: 920px; margin: 0 auto 36px; text-align: center; }
.section-head.left { text-align: left; margin-left: 0; }
.section-head h2 { margin: 0 0 7px; color: #5d6670; font-size: clamp(31px, 3.6vw, 51px); letter-spacing: -.03em; font-weight: 400; }
.section-head p { margin: 0; color: #7b8790; font-size: 16px; }
.specialties-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.specialty-card { background: #fff; border: 1px solid #e8ebef; border-radius: 8px; overflow: hidden; box-shadow: 0 8px 19px rgba(17,31,49,.06); }
.specialty-card img { width: 100%; aspect-ratio: 1.56 / 1; object-fit: cover; }
.specialty-card-content { padding: 18px 16px 20px; }
.specialty-card h3 { margin: 0 0 9px; color: #4a4e53; font-size: 21px; line-height: 1.15; font-weight: 500; }
.specialty-card p { margin: 0; color: #707981; font-size: 14px; line-height: 1.58; }
.center-intro { background: #eef2fa; }
.center-intro .section-head { margin-bottom: 28px; }
.procedure-columns { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.procedure-columns ul { padding-left: 18px; margin: 0; color: #676f78; font-size: 14px; }
.procedure-columns li { margin: 0 0 8px; }
.center-cta { margin-top: 32px; text-align: center; }
.appointment-strip { background: var(--dark); color: #fff; padding: 72px 0; }
.appointment-grid { display: grid; grid-template-columns: .95fr 1.3fr; gap: 68px; align-items: center; }
.appointment-grid h2 { margin: 0 0 16px; font-size: clamp(33px, 3.8vw, 53px); line-height: 1; font-weight: 400; letter-spacing: -.04em; }
.appointment-grid p { margin: 0; max-width: 460px; color: #c7c7c7; font-size: 16px; }
.appointment-actions { display: flex; flex-wrap: wrap; gap: 13px; }
.btn-outline { border: 1px solid rgba(255,255,255,.55); color: #fff; }
.btn-outline:hover { background: #fff; color: var(--dark); }
.testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.video-card { background: white; border-radius: 8px; overflow: hidden; box-shadow: var(--shadow); border: 1px solid var(--line); }
.video-card h3 { margin: 0; padding: 16px 16px 12px; color: #4b5055; font-size: 17px; font-weight: 500; }
.video-frame { position: relative; padding-top: 56.25%; }
.video-frame iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.map-wrap { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.map-wrap iframe { display: block; width: 100%; min-height: 480px; border: 0; }
.footer { background: var(--dark-2); color: #c5c7ca; padding: 58px 0 22px; }
.footer-grid { display: grid; grid-template-columns: 1.1fr 1fr .85fr 175px; gap: 34px; }
.footer h3 { margin: 0 0 16px; color: #fff; font-size: 17px; font-weight: 600; }
.footer p, .footer li { color: #aeb1b6; font-size: 14px; }
.footer ul { list-style: none; margin: 0; padding: 0; }
.footer li { margin-bottom: 8px; }
.footer .more { color: var(--teal); font-weight: 700; }
.footer-qr img { width: 145px; padding: 7px; background: #fff; }
.footer-social { display: flex; gap: 10px; margin-top: 16px; }
.social-placeholder { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.25); color: #fff; border-radius: 50%; font-weight: 700; }
.footer-bottom { margin-top: 42px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.1); display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; color: #8e9298; font-size: 12px; }
.whatsapp-float { position: fixed; right: 18px; bottom: 18px; z-index: 50; display: inline-flex; align-items: center; gap: 9px; background: #25D366; color: #fff; padding: 13px 18px; border-radius: 999px; box-shadow: 0 13px 30px rgba(0,0,0,.22); font-size: 14px; font-weight: 700; }
.whatsapp-mark { width: 22px; height: 22px; display: inline-flex; align-items: center; justify-content: center; border: 2px solid currentColor; border-radius: 50%; font-size: 12px; }
@media (max-width: 1000px) {
  .contact-grid { grid-template-columns: 1.25fr 1fr 130px; gap: 24px; }
  .specialties-grid { grid-template-columns: repeat(2, 1fr); }
  .procedure-columns { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1.1fr 1fr; }
}
@media (max-width: 720px) {
  .container { width: min(100% - 28px, 560px); }
  .topbar-inner, .header-inner { min-height: unset; padding: 11px 0; align-items: flex-start; flex-direction: column; }
  .topbar-right { width: 100%; justify-content: space-between; }
  .header-note { text-align: left; }
  .logo img { width: 160px; }
  .hero { min-height: 505px; background-position: 65% center; background-size: cover; }
  .hero-content { width: min(61vw, 360px); padding: 40px 0 26px; }
  .hero .eyebrow { font-size: 25px; }
  .hero h1 { font-size: clamp(37px, 11.5vw, 54px); }
  .hero-contact { font-size: 15px; }
  .contact-ribbon, .section { padding: 54px 0; }
  .contact-grid, .appointment-grid { grid-template-columns: 1fr; gap: 30px; }
  .qr-wrap { justify-content: flex-start; }
  .qr-wrap img { width: 125px; }
  .specialties-grid, .testimonial-grid { grid-template-columns: 1fr; }
  .procedure-columns, .footer-grid { grid-template-columns: 1fr; }
  .appointment-strip { padding: 56px 0; }
  .map-wrap iframe { min-height: 390px; }
  .whatsapp-float span:last-child { display: none; }
}

/* --- v2 readability & contact emphasis update --- */
:root { --whatsapp: #25D366; --whatsapp-dark: #1ebe5d; }
body { font-size: 18px; line-height: 1.58; }
p { font-size: 18px; }
.topbar { font-size: 15px; }
.topbar-inner { min-height: 46px; }
.topbar-right { gap: 20px; }
.lang { gap: 8px; font-size: 14px; }
.lang a {
  opacity: 1;
  padding: 6px 9px;
  border: 1px solid #d7dde0;
  border-radius: 4px;
  background: #fff;
  color: #48535c;
  line-height: 1;
}
.lang a:hover { border-color: var(--teal); }
.lang a.active { color: var(--teal-dark); border-color: var(--teal); background: #ecfbfa; }
.flag-icon { width: 36px; height: 22px; object-fit: cover; border: 1px solid rgba(0,0,0,.15); box-shadow: 0 1px 2px rgba(0,0,0,.14); }
.header-inner { min-height: 122px; }
.logo img { width: 278px; }
.header-note { font-size: 17px; }
.hero { min-height: 560px; }
.hero-content { width: min(540px, 45vw); margin-left: clamp(88px, 11vw, 170px); }
.hero .eyebrow { font-size: clamp(30px, 2.5vw, 42px); }
.hero h1 { max-width: 520px; font-size: clamp(52px, 5.45vw, 86px); }
.hero-contact { font-size: 19px; }
.btn { padding: 15px 24px; font-size: 17px; }
.btn-whatsapp {
  background: var(--whatsapp) !important;
  color: #fff;
  padding: 18px 29px;
  min-height: 58px;
  font-size: 18px;
  border-radius: 6px;
  box-shadow: 0 8px 18px rgba(37, 211, 102, .26);
}
.btn-whatsapp:hover { background: var(--whatsapp-dark) !important; }
.contact-ribbon { padding: 54px 0; }
.contact-grid { grid-template-columns: 1.2fr 1fr 300px; gap: 38px; }
.contact-lead { max-width: 585px; font-size: clamp(30px, 3vw, 44px); }
.contact-details { font-size: 18px; gap: 22px; }
.contact-details strong { font-size: 19px; }
.qr-wrap img { width: 290px; padding: 11px; }
.section-head h2 { font-size: clamp(37px, 4.15vw, 58px); }
.section-head p { font-size: 18px; }
.specialty-card-content { padding: 22px 18px 25px; }
.specialty-card h3 { font-size: 25px; }
.specialty-card p { font-size: 18px; line-height: 1.58; }
.procedure-columns ul { font-size: 18px; }
.procedure-columns li { margin-bottom: 10px; }
.appointment-grid p { font-size: 18px; }
.video-card h3 { font-size: 18px; }
.footer h3 { font-size: 21px; }
.footer p, .footer li { font-size: 18px; }
.footer-grid { grid-template-columns: 1.1fr 1fr .85fr 300px; }
.footer-qr img { width: 290px; padding: 11px; }
.footer-bottom { font-size: 14px; }
.whatsapp-float { background: var(--whatsapp); padding: 17px 22px; font-size: 17px; }
.whatsapp-float:hover { background: var(--whatsapp-dark); }
@media (max-width: 1100px) {
  .contact-grid { grid-template-columns: 1.15fr 1fr 230px; gap: 26px; }
  .qr-wrap img { width: 220px; }
  .footer-grid { grid-template-columns: 1.1fr 1fr; }
  .footer-qr img { width: 240px; }
}
@media (max-width: 720px) {
  body, p, .specialty-card p, .section-head p, .appointment-grid p, .footer p, .footer li, .procedure-columns ul, .contact-details { font-size: 17px; }
  .logo img { width: 230px; }
  .header-inner { min-height: unset; }
  .hero { min-height: 525px; background-position: 66% center; }
  .hero-content { width: min(58vw, 360px); margin-left: 0; padding: 42px 0 26px; }
  .hero .eyebrow { font-size: 27px; }
  .hero h1 { font-size: clamp(40px, 11.4vw, 58px); }
  .contact-grid { grid-template-columns: 1fr; }
  .qr-wrap img { width: 220px; }
  .footer-qr img { width: 220px; }
  .btn-whatsapp { width: 100%; justify-content: center; font-size: 16px; padding: 16px 18px; }
  .whatsapp-float { max-width: calc(100vw - 30px); right: 15px; bottom: 15px; font-size: 14px; padding: 14px 16px; }
  .whatsapp-float span:last-child { display: inline; }
}
