/* Ajustes exclusivos de la home. Reutiliza el diseño original de style.css. */
.g3-home-visual .hero { padding-top: 40px; }
.g3-home-visual .hero-copy > p { color: #586b83; }
.g3-home-visual .service-card { cursor: default; }
.g3-home-visual .service-card p { font-size: 14px; }
.g3-home-visual .service-card a { font-size: 13px; }
.g3-home-visual .doctor-card { display: flex; flex-direction: column; }
.g3-home-visual .doctor-card > div { display: flex; flex-direction: column; flex: 1; }
.g3-home-visual .doctor-card h3 { font-size: 18px; line-height: 1.35; margin-bottom: 10px; }
.g3-home-visual .doctor-card span { font-size: 13px; }
.g3-home-visual .doctor-card p { font-size: 14px; margin-top: 12px; }
.g3-home-visual .g3-home-service-link { margin-top: auto; font-size: 13px; }
.g3-home-visual .blog-card h3 { line-height: 1.4; }
.g3-home-contact-options { display: grid; gap: 18px; align-content: center; }
.g3-home-contact-options > a { position: relative; border: 1px solid var(--line); padding: 22px 52px 22px 24px; }
.g3-home-contact-options > a:hover { border-color: var(--blue); background: var(--soft); }
.g3-home-contact-options strong { display: block; font-size: 17px; }
.g3-home-contact-options p { margin: 8px 0 0; font-size: 14px; }
.g3-home-contact-options span { position: absolute; top: 24px; right: 22px; }
.g3-home-image-note { font-size: 11px; color: var(--muted); margin-bottom: 24px; }
.g3-home-visual [id] { scroll-margin-top: 190px; }
.g3-home-visual a:focus-visible { outline: 3px solid var(--blue); outline-offset: 5px; }
@media (max-width: 700px) {
 .g3-home-visual .hero { padding-top: 0; }
 .g3-home-visual .hero-copy h1 { font-size: clamp(32px, 8.4vw, 42px); }
 .g3-home-visual .appointment-box { padding: 32px 24px; }
 .g3-home-visual .appointment-box h2 { font-size: 30px; }
}
