/* Ajustes puntuales de la primera web; su sistema de diseño permanece en lumora.css. */
@font-face{font-family:Sora;src:url('/assets/fonts/sora-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Sora;src:url('/assets/fonts/sora-500.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Sora;src:url('/assets/fonts/sora-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--clinic-turquoise:#52b9be;--clinic-indigo:#30347f;--clinic-white:#fff;--clinic-paper:#edf7f7;--primitive-color--primary-500:var(--clinic-turquoise)}
.navbar_logo{display:flex;align-items:center;gap:8px}
.official-symbol{width:34px;height:38px;object-fit:contain;background:var(--clinic-white);border-radius:4px;padding:3px}
.official-wordmark{width:128px;height:44px;object-fit:contain;background:var(--clinic-white);padding:4px;border-radius:4px}
.footer_brand .official-footer-logo{width:164px;max-width:100%;height:auto;background:var(--clinic-white);padding:8px;border-radius:8px}
.official-contact-title{display:block;font-size:clamp(1.15rem,1.7vw,1.55rem);letter-spacing:-.035em;white-space:nowrap}
.confirmed-team .team_list{grid-template-columns:repeat(3,minmax(0,1fr))}
.pending-clinic-photo{object-fit:cover!important;transform:none!important}
.about-hero_content,.about-hero_info,.team-item_content{min-width:0}
a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:3px solid var(--clinic-turquoise);outline-offset:5px}
.clinic-skip-link{position:fixed;z-index:100;top:-70px;left:16px;padding:12px 18px;background:var(--clinic-white);color:var(--clinic-indigo)}
.clinic-skip-link:focus{top:12px}
.clinic-editorial-note{margin:0;padding:16px 5%;background:var(--clinic-paper);text-align:center}
@media(max-width:767px){.official-wordmark{width:113px;height:39px}.official-symbol{width:30px;height:34px}.confirmed-team .team_list{grid-template-columns:1fr}.official-contact-title{font-size:1.35rem}.about-hero_para{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}[data-w-id]{opacity:1!important;transform:none!important}}


@media(min-width:768px) and (max-width:991px){.confirmed-team .team_list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Fotografías reales dentro de los marcos de la plantilla original. */
.real-clinic-photo{width:100%;height:100%;object-fit:cover!important;transform:none!important}
.about-hero_image.real-clinic-photo{object-position:center}

/* Datos facilitados por la clínica y retratos del equipo. */
.real-team-photo{width:100%;height:100%;object-fit:cover!important;transform:none!important}
.confirmed-team .team-menmber_name{overflow-wrap:break-word}
.clinic-visit-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:40px 0 80px;text-align:left}
.clinic-visit-detail{border-top:1px solid #a9d8da;padding-top:24px;min-width:0}
.clinic-visit-detail h3{font-size:1.35rem;line-height:1.4;margin-bottom:12px}
.clinic-visit-detail p{font-size:1rem;line-height:1.7}
.clinic-contact-details{width:100%;max-width:590px;margin-top:32px;text-align:left}
.clinic-contact-details h3{font-size:1.35rem;line-height:1.4;margin-bottom:16px}
.clinic-hours{margin:0}
.clinic-hours-row{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:16px;padding:12px 0;border-bottom:1px solid #a9d8da;font-size:1rem;line-height:1.5}
.clinic-hours dd{margin:0;text-align:right}
.clinic-contact-email{display:block;margin-top:20px;overflow-wrap:anywhere;font-size:1rem}
.footer-contact_wrap{min-width:0;max-width:100%}
.footer-contact_link[href^="mailto:"]{overflow-wrap:anywhere;font-size:clamp(1rem,2vw,1.5rem);max-width:100%}
@media(max-width:767px){.clinic-visit-details{grid-template-columns:1fr;gap:24px;margin-bottom:40px}.clinic-hours-row{grid-template-columns:minmax(80px,1fr) minmax(0,2fr);gap:12px}.clinic-hours dd{text-align:left}}

/* Fotos existentes en los marcos de servicios y fondos originales. */
.clinic-photo-caption{font-size:.875rem;line-height:1.5;margin:8px 0 16px;color:inherit}
@media(max-width:767px){
 .section_team{background-image:linear-gradient(160deg,rgba(1,31,35,.90),rgba(2,47,52,.82)),url('/assets/clinic/gabinetes-640.webp')!important;background-attachment:scroll}
 .section_cta{background-image:linear-gradient(115deg,rgba(1,31,35,.93),rgba(1,31,35,.72)),url('/assets/clinic/recepcion-640.webp');background-attachment:scroll}
}

/* Composición de las fotografías: marcos, focos y fondos de la primera web. */
.confirmed-team{background-image:linear-gradient(135deg,#063e47,#15515a)!important;background-attachment:scroll}
.confirmed-team h2{color:#fff!important}
.confirmed-team .about-team_para{color:#d5e9eb!important}
.confirmed-team .team_item{isolation:isolate}
.clinic-visit-detail h3,.clinic-contact-details h3{letter-spacing:-.02em}
.story-images_list{column-gap:24px;min-height:260px;margin-top:0}
.story_images.real-clinic-photo{filter:none!important}
.section_location .locatioin_item{width:570px;height:380px;padding:28px;flex-shrink:0}
.section_location .location_content{max-width:100%;gap:8px}
.section_location .location_title{font-size:1.55rem;line-height:1.35;letter-spacing:-.02em}
.section_location .location_para{font-size:.95rem;line-height:1.5}
.section_location .location_overlay{background-image:linear-gradient(180deg,transparent 35%,rgba(1,31,35,.72) 100%)}
.section_cta{background-position:center 55%}
@media(max-width:991px){
 .section_location .locatioin_item{width:430px;height:300px;padding:24px}
 .story-images_list{column-gap:16px}
}
@media(max-width:767px){
 .about-hero_image-wrap{aspect-ratio:4/3}
 .about-hero_image.real-clinic-photo{object-position:57% 50%!important}
 .section_location .locatioin_item{width:320px;height:245px;padding:20px}
 .section_location .location_title{font-size:1.25rem}
 .story-images_list{gap:12px;min-height:0;align-items:center;grid-template-columns:repeat(2,minmax(0,1fr))}
 .story-images_wrap{max-width:none;max-height:none;height:auto;aspect-ratio:4/3}
 .story-images_wrap.is-odd{margin-top:0}
 .story-images_wrap.is-big{grid-column:1/-1;max-width:none;max-height:none;aspect-ratio:16/9}
 .story-images_wrap .story_images{height:100%;display:block}
 .confirmed-team{background-image:linear-gradient(135deg,#063e47,#15515a)!important}
}
@media(prefers-reduced-motion:reduce){
 [data-w-id],.team_item,.story-images_wrap,.locatioin_item,.feature-blog_image-wrap,.blog-item_image-wrap{filter:none!important;opacity:1!important}
}

@media(max-width:767px){
 .section_story h2{letter-spacing:-.025em}
 .story-images_list>.story-images_wrap{grid-area:auto!important}
 .story-images_list>.story-images_wrap.is-odd{display:block}
 .story-images_list>.story-images_wrap.is-big{grid-column:1/-1!important}
}
@media(max-width:767px){
 .story-images_list>.story-images_wrap{position:relative;min-width:0;min-height:0;align-self:start}
 .story-images_wrap .story_images{position:absolute;inset:0;width:100%;height:100%}
}
@media(max-width:767px){.story-images_list>.story-images_wrap{transform:none!important}}
.feature-blog_info{flex-wrap:wrap;row-gap:8px}
.clinic-editorial-note{padding-top:88px}
@media(prefers-reduced-motion:reduce){.service-item_wrap{filter:none!important;opacity:1!important;transform:none!important}}

/* Horario destacado en el área de contacto. */
.clinic-contact-details{max-width:620px;margin-top:36px;background:#fff;border:1px solid #cde5e8;border-top:4px solid #52b9be;border-radius:22px;overflow:hidden;box-shadow:0 16px 40px rgba(5,46,52,.08)}
.hours-card-heading{display:flex;align-items:center;gap:16px;padding:26px 28px;background:linear-gradient(115deg,#f1f9fa,#e6f3f5);text-align:left}
.hours-clock{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:16px;background:#0d5966;color:#fff;flex-shrink:0}
.hours-clock svg{width:32px;height:32px}
.hours-card-heading h3{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 6px;color:#073d46}
.hours-card-heading p{font-size:.875rem;line-height:1.5;color:#52767d;margin:0}
.clinic-contact-details .clinic-hours{padding:12px 22px}
.clinic-contact-details .clinic-hours-row{grid-template-columns:100px minmax(0,1fr);align-items:center;gap:12px;padding:12px;border:0;border-radius:10px}
.clinic-contact-details .clinic-hours-row:nth-child(even){background:#f4f9fa}
.clinic-hours-row dt{font-weight:600;color:#143f47;font-size:.95rem}
.clinic-contact-details .clinic-hours dd{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;text-align:right}
.hours-slot{display:inline-block;padding:6px 9px;border-radius:7px;background:#eaf5f6;color:#176774;font-size:.875rem;line-height:1.35;white-space:nowrap;font-variant-numeric:tabular-nums}
.hours-separator{font-size:.85rem;color:#52767d}
.hours-card-contact{border-top:1px solid #deecee;padding:20px 28px 24px}
.hours-call{display:flex;align-items:center;justify-content:center;gap:14px;background:#0d5966;color:#fff;padding:14px 20px;border-radius:14px;text-align:left;transition:background .2s}
.hours-call:hover{background:#177382}
.hours-call>svg{width:26px;height:26px;flex-shrink:0}
.hours-call>span{font-size:.8rem;line-height:1.4}
.hours-call strong{display:block;font-size:1.25rem;letter-spacing:.01em;font-weight:600}
.hours-card-contact .clinic-contact-email{text-align:center;font-size:.875rem;color:#176774;margin-top:16px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:767px){
 .hours-card-heading{padding:22px 20px;gap:12px}
 .hours-clock{width:44px;height:44px;border-radius:13px}
 .hours-clock svg{width:28px;height:28px}
 .hours-card-heading h3{font-size:1.3rem}
 .clinic-contact-details .clinic-hours{padding:10px}
 .clinic-contact-details .clinic-hours-row{grid-template-columns:86px minmax(0,1fr);gap:8px;padding:12px 10px}
 .clinic-contact-details .clinic-hours dd{gap:5px}
 .hours-slot{padding:5px 7px;font-size:.8rem}
 .hours-separator{display:none}
 .hours-card-contact{padding:18px 20px 22px}
}
