/* Hero fotográfico a todo el ancho; columna libre de titular y botones. */
.header{position:absolute;top:0;background:transparent}
.header.scrolled{position:fixed;top:0;background:var(--paper);color:var(--ink)}
.hero{--portrait-height:clamp(600px,185vw,740px);min-height:max(720px,66.7vw);height:auto}
.hero-image{position:absolute;inset:0;z-index:-3;mask-image:none}
.photo{width:100%;height:100%;left:0;right:0;object-fit:cover;object-position:28% 50%;transform:none;filter:none}
.hero-shade{display:block;background:rgba(0,0,0,.18)}
.hero-inner{padding:180px var(--gutter) 55px;min-height:0;flex:1;align-items:center}
.hero-copy{width:18%;max-width:330px;padding:0;text-shadow:0 1px 12px rgba(0,0,0,.3)}
.eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:23px;gap:9px}
.eyebrow>span{width:22px;flex:none}
h1{font-size:clamp(38px,3.75vw,74px);line-height:1.05;letter-spacing:-.065em}
.hero-lead{font-size:15px;line-height:1.65;margin:25px 0}
.hero-buttons{flex-direction:column;align-items:flex-start;gap:10px}
.button{min-width:190px;padding:0 17px;gap:20px;font-size:12px;height:49px;text-shadow:none}
.hero-note{font-size:10px;line-height:1.6}
.photo-caption{display:none}
.hero-bottom{min-height:80px;margin:0 var(--gutter);border-top:0;justify-content:flex-end}
.insurance{display:none}
@media(min-width:1700px){.hero-inner{padding:200px var(--gutter) 80px}.hero-copy{max-width:330px}}
@media(max-width:1050px) and (min-width:761px){
  .hero-copy{width:20%}
  h1{font-size:clamp(32px,3.7vw,42px)}
  .hero-lead{font-size:13px}
  .button{min-width:155px;font-size:11px}
  .eyebrow{font-size:8px;letter-spacing:.08em}
  .eyebrow>span{width:16px}
}
@media(max-width:760px){
  .hero{height:var(--portrait-height);min-height:0}
  .hero-image{position:absolute;inset:0;z-index:-3;width:100%;height:100%;order:initial;mask-image:none}
  .photo{height:100%;width:auto;max-width:none;right:auto;left:calc(100% - 20px - var(--column-edge,.681) * var(--portrait-height));object-fit:fill;object-position:center;transform:none}
  .photo-0563{--column-edge:.76}
  body[data-finish="original"] .photo-0564, body[data-finish="suave"] .photo-0564{--column-edge:.62}
  .hero-inner{order:initial;display:flex;min-height:0;padding:145px var(--gutter) 18px;align-items:center}
  .hero-copy{width:35%;max-width:none;padding:0}
  h1{font-size:clamp(24px,7.5vw,44px)}
  .eyebrow{font-size:7px;letter-spacing:.08em;margin-bottom:18px}
  .eyebrow>span{display:none}
  .hero-lead{font-size:12px;line-height:1.65;margin:19px 0}
  .hero-buttons{flex-direction:column;gap:8px}
  .button{min-width:0;width:100%;height:43px;padding:0 9px;font-size:10px;gap:5px}
  .button span{font-size:15px}
  .hero-note{font-size:9px;margin-top:15px}
  .hero-bottom{order:initial;min-height:60px}
  .header-book{display:none}
  .brand{width:110px}
  .preview-tools{left:auto;right:12px}
}

/* Ajuste óptico solo en la banda de las letras; fotografía original intacta. */
body[data-finish="suave"] .photo-0564{filter:url(#rotulo-suave)}

/* Portada del centro: cabecera única y mensaje general de salud. */
.header-main{height:152px;padding-top:40px;gap:38px}
.brand{width:145px}
.desktop-nav{gap:32px;font-size:13px}
.header-book{border-radius:3px;padding:14px 22px}
.hero-inner{padding-top:155px;padding-bottom:70px}
.hero-copy{width:19%}
h1{font-size:clamp(36px,3.6vw,69px)}
@media(min-width:1700px){.hero-inner{padding-top:170px;padding-bottom:90px}}
@media(max-width:1050px) and (min-width:761px){
  .header-main{gap:22px}.desktop-nav{gap:20px;font-size:12px}
  .brand{width:125px}.header-book{padding:13px 16px}
  .hero-copy{width:20%}h1{font-size:clamp(30px,3.5vw,38px)}
}
@media(max-width:760px){
  .header-main{height:150px;padding-top:60px;gap:15px}.brand{width:118px}
  .hero-inner{padding-top:110px;padding-bottom:40px}
  .hero-copy{width:35%}h1{font-size:clamp(24px,7.1vw,40px)}
  .hero-lead{font-size:12px}
}

.header.scrolled .header-main{padding-top:0}

/* Composición más tranquila: cabecera arriba y texto con aire en el tercio inferior. */
.header-main{height:96px;padding-top:0}
.brand{width:138px}
.brand img{filter:brightness(0) invert(1) drop-shadow(0 1px 3px #0008)}
.hero-inner{align-items:flex-end;padding-top:140px;padding-bottom:clamp(110px,11vw,210px)}
.hero-copy{width:19%;max-width:310px}
.eyebrow{margin-bottom:28px;font-size:8px;letter-spacing:.19em}
h1{font-size:clamp(34px,3.25vw,62px);font-weight:480;line-height:1.15;letter-spacing:-.045em}
.hero-lead{font-size:13px;line-height:1.85;max-width:205px;margin:28px 0 30px}
.hero-buttons{gap:17px}
.button-primary{height:48px;min-width:176px}
.button-secondary{border:0;background:none;padding:0;height:32px;min-width:176px;font-weight:500}
.button-secondary:hover{background:none;color:var(--gold)}
@media(max-width:1050px) and (min-width:761px){
  h1{font-size:clamp(29px,3.15vw,35px)}
  .hero-lead{font-size:12px}
  .button-primary,.button-secondary{min-width:150px}
}
@media(max-width:760px){
  .header-main{height:82px;padding-top:0}.brand{width:110px}
  .hero-inner{padding-top:130px;padding-bottom:110px;align-items:flex-end}
  .hero-copy{width:35%}
  h1{font-size:clamp(23px,6.7vw,36px);line-height:1.18}
  .eyebrow{font-size:7px;margin-bottom:23px;letter-spacing:.08em}
  .hero-lead{font-size:11px;line-height:1.85;margin:23px 0 25px}
  .hero-buttons{gap:14px}
  .button-primary{min-width:0;height:43px}
  .button-secondary{min-width:0;height:28px;padding:0;gap:6px}
}

/* Prueba editorial: titular amplio y fotografía humana secundaria. */
.hero-inner{align-items:center;padding:155px var(--gutter) 110px}
.hero-copy{width:64%;max-width:900px}
.eyebrow{font-size:10px;letter-spacing:.17em;margin-bottom:29px}
h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(72px,7.4vw,138px);font-weight:400;line-height:1.04;letter-spacing:-.055em}
h1 span{font-style:italic;color:#e6c393}
.hero-lead{max-width:370px;font-size:16px;line-height:1.75;margin:30px 0 32px}
.hero-buttons{flex-direction:row;align-items:center;gap:28px}
.button-primary{min-width:180px;height:51px}
.button-secondary{min-width:135px}
.team-preview{position:absolute;right:var(--gutter);bottom:86px;width:clamp(205px,20vw,330px);display:block;text-shadow:none}
.team-preview img{display:block;width:100%;height:clamp(150px,14vw,230px);object-fit:cover;object-position:60% 40%;border:1px solid #ffffff70}
.team-preview>span{display:flex;justify-content:space-between;align-items:center;padding-top:13px;font-size:11px;letter-spacing:.01em}
.team-preview b{font-size:19px;font-weight:400}
.team-preview[hidden]{display:none}
@media(max-width:1050px) and (min-width:761px){
  .hero-copy{width:67%}h1{font-size:clamp(62px,7.2vw,78px)}
  .hero-lead{font-size:14px;max-width:300px}
  .team-preview{width:185px;bottom:55px}.team-preview img{height:140px}
}
@media(max-width:760px){
  .hero{height:auto;min-height:850px}
  .hero-inner{padding:155px var(--gutter) 260px;align-items:flex-start}
  .hero-copy{width:100%;max-width:540px}
  h1{font-size:clamp(40px,10.5vw,74px);line-height:1.08}
  .eyebrow{font-size:9px;letter-spacing:.12em;margin-bottom:25px}
  .hero-lead{font-size:14px;max-width:270px;margin:24px 0 28px}
  .hero-buttons{gap:20px}.button-primary{min-width:145px;width:auto;height:48px}
  .button-secondary{min-width:0;width:auto;height:30px;font-size:11px}
  .team-preview{width:185px;right:var(--gutter);bottom:38px}
  .team-preview img{height:135px}.team-preview>span{font-size:10px;padding-top:10px}
}

@media(max-width:760px){.preview-tools{left:12px;right:auto}}

/* Reserva integrada y recorrido fotográfico tras la portada. */
.hero-inner{padding-top:150px;padding-bottom:105px;gap:70px;justify-content:space-between}
.hero-copy{width:57%;max-width:790px}
h1{font-size:clamp(64px,6.8vw,124px)}
.hero-lead{max-width:420px;font-size:16px}
.button-primary{border-radius:100px;padding:0 27px;min-width:170px;height:51px}
.button-secondary{border-radius:0;min-width:0;padding:0;gap:17px}
.header-book{border-radius:100px}
.appointment-panel{width:350px;flex-shrink:0;background:#f7f5f0;color:var(--ink);padding:25px 20px 18px;border-radius:20px;text-shadow:none;box-shadow:0 15px 60px #0002}
.appointment-label{margin:0 0 10px;font-size:9px;font-weight:650;letter-spacing:.18em;color:#667368}
.appointment-panel h2{font-family:Georgia,serif;font-weight:400;font-size:33px;letter-spacing:-.035em;margin:0 0 10px}
.appointment-intro{font-size:12px;line-height:1.6;margin:0 0 20px;color:#5d6c63}
.appointment-calendar{height:370px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;background:#fff;border-radius:12px;padding:0}
.appointment-calendar iframe{display:block;width:100%;max-width:100%;border:0;min-height:370px}
.appointment-calendar>a{display:block;padding:24px;font-size:13px}
.appointment-calendar:has(iframe)>a{display:none}
.appointment-fallback{display:flex;justify-content:space-between;margin-top:16px;font-size:11px;color:#53645a}
.center-gallery{padding:90px var(--gutter) 75px;background:var(--paper)}
.gallery-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.gallery-heading .section-label{margin:0 0 20px}
.gallery-heading h2{margin:0;font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,4.1vw,62px);line-height:1.13;letter-spacing:-.04em}
.gallery-navigation{display:flex;gap:12px;flex-shrink:0}
.gallery-navigation button{width:45px;height:45px;border:1px solid #142a2340;border-radius:50%;background:none;color:var(--ink);font-size:22px}
.gallery-navigation button:disabled{opacity:.3;cursor:default}
.gallery-lead{max-width:500px;font-size:14px;line-height:1.8;color:#617068;margin:23px 0 40px}
.gallery-track{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:15px}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-track figure{margin:0;flex:0 0 44%;min-width:0;scroll-snap-align:start}
.gallery-track figure img{width:100%;height:clamp(250px,26vw,410px);display:block;object-fit:cover}
.gallery-track figcaption{display:flex;gap:18px;padding-top:21px}
.gallery-index{font-size:10px;color:#8b948b;padding-top:4px}
.gallery-track h3{margin:0 0 8px;font-size:17px;font-weight:500;letter-spacing:-.02em}
.gallery-track figcaption p{margin:0;font-size:12px;color:#68766d;line-height:1.6}
.gallery-more{display:inline-flex;align-items:center;gap:32px;font-size:12px;border-bottom:1px solid #142a2360;padding:7px 0;margin-top:32px}
.specialties{padding-top:45px;border-top:1px solid #142a2318}
@media(max-width:1050px) and (min-width:761px){
  .hero-inner{gap:25px}.hero-copy{width:55%}h1{font-size:clamp(52px,6.3vw,69px)}
  .appointment-panel{width:310px;padding:22px 16px}.hero-lead{font-size:14px}
  .hero-buttons{gap:20px}.button-primary{min-width:150px}
}
@media(max-width:760px){
  .hero{height:auto;min-height:0;--portrait-height:820px}
  .hero-image{height:820px}.photo{height:820px}
  .hero-shade{height:820px}
  .hero-inner{padding:160px var(--gutter) 45px;display:flex;flex-direction:column;align-items:flex-start;gap:55px}
  .hero-copy{width:100%;max-width:none}h1{font-size:clamp(39px,10.5vw,74px)}
  .hero-lead{font-size:14px;margin:25px 0 30px;max-width:300px}
  .hero-buttons{gap:24px}.button-primary{min-width:140px;width:auto;height:48px;padding:0 20px}
  .button-secondary{width:auto;height:32px}
  .appointment-panel{width:100%;margin-top:0;padding:25px 20px 18px;box-shadow:0 12px 40px #0002}
  .appointment-calendar{height:340px}.appointment-calendar iframe{min-height:340px}
  .center-gallery{padding:55px var(--gutter) 55px}
  .gallery-heading{align-items:center;gap:15px}.gallery-heading h2{font-size:34px}
  .gallery-heading .section-label{font-size:8px;letter-spacing:.12em;margin-bottom:16px}
  .gallery-navigation{gap:7px}.gallery-navigation button{width:35px;height:35px;font-size:18px}
  .gallery-lead{font-size:13px;margin-bottom:30px}
  .gallery-track{gap:18px}.gallery-track figure{flex-basis:88%}
  .gallery-track figure img{height:245px}.gallery-track h3{font-size:16px}
  .specialties{padding-top:40px}
}

@media(max-width:760px){.hero{background:var(--paper)}}

/* Cifras en lugar de CTA y calendario sin caja ni encabezados añadidos. */
.hero-copy{width:62%;max-width:790px}
.hero-inner{gap:40px;padding-top:140px;padding-bottom:115px}
h1{font-size:clamp(60px,6.1vw,114px);line-height:1.07;letter-spacing:-.05em}
h1 span{white-space:nowrap;font-style:italic}
.hero-lead{margin:29px 0 38px;font-size:16px;line-height:1.75}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:570px;gap:23px;border-top:1px solid #ffffff50;padding-top:26px;text-shadow:0 1px 8px #0004}
.hero-stats>div,.hero-stats>a{display:flex;flex-direction:column;gap:9px}
.hero-stats>div+*,.hero-stats>a+*{border-left:1px solid #ffffff30;padding-left:23px}
.hero-stats strong{font-size:36px;font-weight:450;letter-spacing:-.045em;line-height:1}
.hero-stats strong i{color:var(--gold);font-size:19px;font-style:normal;vertical-align:middle}
.hero-stats span{font-size:12px;font-weight:550}
.hero-stats small{font-size:10px;color:#ffffffb8;line-height:1.6;max-width:145px}
.appointment-panel{width:330px;padding:0;border-radius:0;background:transparent;box-shadow:none}
.appointment-calendar{height:475px;border-radius:15px;background:transparent;box-shadow:0 14px 45px #0002}
.appointment-calendar iframe{min-height:475px}
@media(max-width:1050px) and (min-width:761px){
  .hero-inner{gap:30px}.hero-copy{width:59%}.appointment-panel{width:295px}
  h1{font-size:clamp(43px,5.6vw,59px)}
  .hero-stats{gap:16px}.hero-stats>div+*,.hero-stats>a+*{padding-left:16px}
  .hero-stats strong{font-size:31px}.hero-stats span{font-size:11px}
  .hero-stats small{font-size:9px}
}
@media(max-width:760px){
  .hero-inner{padding:160px var(--gutter) 48px;gap:52px}
  .hero-copy{width:100%}h1{font-size:clamp(34px,8.7vw,62px);line-height:1.12}
  .hero-lead{font-size:14px;margin:26px 0 30px}
  .hero-stats{gap:13px;padding-top:23px;width:100%}
  .hero-stats>div+*,.hero-stats>a+*{padding-left:13px}
  .hero-stats strong{font-size:29px}.hero-stats strong i{font-size:15px}
  .hero-stats span{font-size:10px;line-height:1.5}.hero-stats small{font-size:9px}
  .appointment-panel{width:100%;margin:0;padding:0}
  .appointment-calendar{height:450px;border-radius:15px}
  .appointment-calendar iframe{min-height:450px}
}


/* Ficha completa del centro: cuatro bloques sobre la fotografía. */
.hero-inner{display:grid;grid-template-columns:minmax(0,1fr) 370px;grid-template-rows:minmax(0,1fr) auto;column-gap:55px;row-gap:35px;align-items:center;padding:125px var(--gutter) 45px}
.hero-copy{width:100%;max-width:790px}
h1{font-size:clamp(60px,5.8vw,108px)}
.hero-lead{margin:25px 0 0}
.appointment-panel{width:100%}
.appointment-calendar{height:410px;border-radius:10px;box-shadow:0 15px 40px #0002}
.appointment-calendar iframe{min-height:410px;filter:sepia(.5) saturate(.7) brightness(.97)}
.hero-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:rgba(28,35,29,.63);border:1px solid #e6c39350;backdrop-filter:blur(8px);border-radius:3px;text-shadow:none;color:#fffaf1}
.hero-fact{padding:23px 25px;display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0}
.hero-fact+.hero-fact{border-left:1px solid #e6c39338}
.fact-label{color:#dfbd8b;font-size:12px;line-height:1.4}
.hero-fact strong{font-size:16px;line-height:1.45;font-weight:500;letter-spacing:-.015em}
.hero-fact .fact-doctor{font-family:Georgia,serif;font-size:20px}
.hero-fact p{margin:0;font-size:12px;line-height:1.7;color:#e7e2d6b8}
.fact-stars{color:#e6bd76;letter-spacing:.1em;font-size:15px}
.hero-fact a:hover{text-decoration:underline;text-underline-offset:4px}
@media(min-width:1550px){.hero-inner{grid-template-columns:minmax(0,1fr) 420px;padding-top:150px;padding-bottom:65px;row-gap:50px}.appointment-calendar{height:475px}.hero-fact{padding:30px 35px}.fact-label{font-size:14px}.hero-fact strong{font-size:19px}.hero-fact .fact-doctor{font-size:23px}.hero-fact p{font-size:14px}}
@media(max-width:1050px) and (min-width:761px){.hero{height:auto;min-height:760px}.hero-inner{grid-template-columns:minmax(0,1fr) 320px;gap:30px;padding-top:125px;padding-bottom:35px}h1{font-size:clamp(43px,5.6vw,59px)}.hero-fact{padding:20px 16px}.hero-fact strong{font-size:14px}.hero-fact .fact-doctor{font-size:18px}.hero-fact p{font-size:11px}.fact-label{font-size:11px}}
@media(max-width:760px){
 .hero-inner{display:flex;padding:145px var(--gutter) 35px;gap:35px}
 h1{font-size:clamp(34px,8.7vw,62px)}
 .hero-lead{margin:25px 0 0}
 .hero-facts{order:1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;background:rgba(28,35,29,.76)}
 .hero-fact{padding:20px 16px;gap:9px}.hero-fact+.hero-fact{border-left:0}.hero-fact:nth-child(even){border-left:1px solid #e6c39338}.hero-fact:nth-child(n+3){border-top:1px solid #e6c39338}
 .hero-fact strong{font-size:14px}.hero-fact .fact-doctor{font-size:17px}.hero-fact p{font-size:11px}.fact-label{font-size:11px}.fact-stars{font-size:13px}
 .appointment-panel{order:2}.appointment-calendar{height:450px}
 .hero{--portrait-height:1060px}.hero-image,.photo,.hero-shade{height:1060px}
}


/* Información abierta sobre la foto y agenda en tonos de madera. */
.hero-inner{padding-bottom:80px;row-gap:32px}
.hero-facts{background:transparent;border:0;border-top:1px solid #fffaf14d;backdrop-filter:none;border-radius:0;gap:34px;text-shadow:0 1px 3px #000b,0 2px 14px #0006}
.hero-fact{padding:22px 0 0;gap:10px;border:0}
.hero-fact+.hero-fact{border:0}
.fact-label{color:#f1d3a6;display:flex;align-items:center;gap:10px}
.fact-label::before{content:"";width:18px;height:1px;background:#e6bd76;flex-shrink:0}
.hero-fact p{color:#fffaf1d9}
.appointment-calendar{border-radius:10px;box-shadow:0 15px 40px #0002}
.appointment-calendar iframe{filter:grayscale(1) sepia(1) saturate(.5) contrast(1.08)}
@media(min-width:1550px){.hero-inner{padding-bottom:95px}.hero-fact{padding:25px 0 0}}
@media(max-width:1050px) and (min-width:761px){.hero-inner{padding-bottom:55px}.hero-facts{gap:22px}.hero-fact{padding:20px 0 0}}
@media(max-width:760px){
 .hero-inner{padding-bottom:35px;gap:35px}
 .hero-facts{background:transparent;gap:27px 22px;padding-top:23px}
 .hero-fact,.hero-fact:nth-child(even),.hero-fact:nth-child(n+3){padding:0;border:0}
 .fact-label{gap:7px}.fact-label::before{width:12px}
 .hero-fact p{font-size:11px}
}


/* Marrón solo en cabecera; agenda compacta antes de elegir especialidad. */
.appointment-calendar{position:relative;isolation:isolate;height:180px;align-self:start}
.appointment-calendar iframe{filter:none}
.appointment-calendar:has(iframe)::after{content:"";position:absolute;top:0;left:0;right:0;height:55px;background:#805127;mix-blend-mode:color;pointer-events:none;z-index:2;border-radius:10px 10px 0 0}
.appointment-calendar.is-expanded,.appointment-calendar:focus-within{height:410px}
@media(min-width:1550px){.appointment-calendar.is-expanded,.appointment-calendar:focus-within{height:475px}}
@media(max-width:760px){.appointment-calendar.is-expanded,.appointment-calendar:focus-within{height:450px}}

.appointment-calendar:not(.is-expanded):not(:focus-within){overflow:hidden}

/* Unificar pasos y checks del proveedor con el marrón de la cabecera. */
.appointment-calendar iframe{filter:grayscale(1) sepia(.6) saturate(.8)}

/* Marrón algo más profundo, manteniendo las superficies claras. */
.appointment-calendar iframe{filter:grayscale(1) contrast(1.18) sepia(.6) saturate(.8)}
.appointment-calendar:has(iframe)::after{background:#68401f}
.appointment-calendar:has(iframe)::before{content:"";position:absolute;top:0;left:0;right:0;height:55px;background:#00000014;pointer-events:none;z-index:3;border-radius:10px 10px 0 0}

/* Matiz hacia marrón rojizo para evitar amarillo en los pasos. */
.appointment-calendar iframe{filter:grayscale(1) contrast(1.18) sepia(.6) saturate(.8) hue-rotate(-28deg)}

.appointment-calendar:has(iframe)::before,.appointment-calendar:has(iframe)::after{border-radius:22px 22px 0 0}

/* Retirar el sepia que amarilleaba los huecos del calendario. */
.appointment-calendar iframe{filter:grayscale(1)}

/* Comparación de dos composiciones y tres direcciones tipográficas. */
:root{--wood:#785438;--home-ink:#302d27}
.hero-booking-slot{min-width:0;width:100%}
body[data-view="sin-citas"] .hero-booking-slot{display:none}
body[data-view="sin-citas"] .hero-copy{grid-column:1/-1;max-width:1000px}
.hero-request{display:inline-flex;align-items:center;gap:36px;padding:16px 25px;margin-top:28px;border:1px solid #fffaf19c;border-radius:50px;color:#fffaf1;font-size:14px;background:#ffffff09}
.hero-request:hover{background:#fffaf1;color:var(--wood)}
.hero-request span{font-size:21px}
body[data-view="con-citas"] .hero-request{display:none}
body[data-type="editorial"] h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(65px,6.8vw,125px);letter-spacing:-.045em;line-height:1.04}
body[data-type="natural"] h1{font-family:"DM Sans",Arial,sans-serif;font-weight:450;font-size:clamp(66px,7.2vw,130px);letter-spacing:-.065em;line-height:1.04}
body[data-type="natural"] h1 span{font-style:normal;font-weight:450}
body[data-type="directa"] h1{font-family:"Helvetica Neue","DM Sans",Arial,sans-serif;font-weight:550;font-size:clamp(58px,6.2vw,112px);letter-spacing:-.05em;line-height:1.08}
body[data-type="directa"] h1 span{font-style:normal;font-weight:400}
body[data-case="mayusculas"] h1{font-size:clamp(49px,5.3vw,96px);letter-spacing:-.035em}
h1 span{white-space:normal}
.home-intro,.home-team,.home-booking,.home-visit{color:var(--home-ink);padding:95px var(--gutter);background:var(--paper)}
.home-intro{display:grid;grid-template-columns:1fr 2fr;gap:65px;border-bottom:1px solid #302d271a}
.home-intro .section-label{color:var(--wood);font-size:11px;letter-spacing:.15em}
.home-intro h2,.home-team h2,.home-booking h2,.home-visit h2{font-family:"DM Sans",sans-serif;font-size:clamp(35px,4vw,60px);font-weight:450;letter-spacing:-.055em;line-height:1.15;margin:0 0 25px}
.home-intro p:not(.section-label),.home-team p:not(.section-label),.home-booking p:not(.section-label){font-size:15px;line-height:1.9;color:#716c63;max-width:565px}
.home-intro a,.home-team a,.home-visit a{display:inline-flex;gap:50px;margin-top:18px;font-size:14px;border-bottom:1px solid #78543860;padding:8px 0;color:var(--wood)}
.center-gallery{background:#ede9e1;color:var(--home-ink)}
.center-gallery .section-label,.home-team .section-label,.home-booking .section-label,.home-visit .section-label{color:var(--wood);font-size:10px;letter-spacing:.16em;margin:0 0 23px}
.gallery-heading h2{font-family:"DM Sans",sans-serif;font-weight:450;letter-spacing:-.055em}
.specialties{color:var(--home-ink);padding:85px var(--gutter);background:var(--paper)}
.specialties .section-label{color:var(--wood)}
.specialties h2{font-family:"DM Sans",sans-serif;font-weight:450;letter-spacing:-.05em}
.specialty-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 35px}
.specialty-links a{display:flex;align-items:flex-start;gap:15px;padding:27px 0;border-bottom:1px solid #302d2725;font-size:18px;font-weight:450}
.specialty-links a>span:first-child{width:auto;color:var(--wood);font-size:11px;margin-top:6px}
.specialty-links a .specialty-name{color:var(--home-ink);font-size:18px;width:auto;flex:1}
.specialty-name small{display:block;font-size:12px;font-weight:400;color:#716c63;line-height:1.6;margin-top:8px}
.specialty-links b{font-size:19px;font-weight:400;color:var(--wood)}
.home-team{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;background:#ede9e1}
.home-team>img{width:100%;height:420px;object-fit:cover;object-position:50% 36%}
.home-booking{display:grid;grid-template-columns:1fr 440px;gap:100px;align-items:start;border-bottom:1px solid #302d2720}
.home-booking[hidden]{display:none}
.home-booking .appointment-panel{width:100%}
.home-booking .appointment-calendar{height:180px;box-shadow:0 8px 35px #302d2712}
.home-booking .appointment-calendar.is-expanded,.home-booking .appointment-calendar:focus-within{height:560px}
.booking-copy>a{display:block;margin-top:30px;font-size:12px;line-height:1.8;color:#716c63}
.booking-copy>a strong{font-size:24px;font-weight:450;color:var(--wood)}
#reserva{scroll-margin-top:125px}
.home-visit{padding-top:70px;padding-bottom:70px}
.home-visit>div{display:flex;justify-content:space-between;align-items:center;gap:20px}
.home-visit>div>p{margin:0;color:#716c63}
.home-visit a{margin:0}
.footer{background:#302d27;color:#f7f5f0;padding:30px var(--gutter)}
.preview-options{max-height:70svh;overflow-y:auto;width:275px}
.preview-options .variant-group{border-bottom:1px solid #142a2320;padding-bottom:12px;margin-bottom:12px}
.case-options{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.case-options p{grid-column:1/-1}.case-options button{font-size:10px!important;margin:0!important}
@media(max-width:1050px) and (min-width:761px){
 body[data-type="editorial"] h1,body[data-type="natural"] h1{font-size:clamp(45px,6.1vw,62px)}
 body[data-type="directa"] h1{font-size:clamp(36px,5vw,52px)}
 body[data-case="mayusculas"] h1{font-size:clamp(34px,4.5vw,47px)}
 .home-booking{grid-template-columns:1fr 340px;gap:40px}.home-team{gap:40px}
 .home-intro{gap:35px}.specialty-links{gap:0 20px}.specialty-links a .specialty-name{font-size:16px}
}
@media(max-width:760px){
 body[data-type="editorial"] h1,body[data-type="natural"] h1{font-size:clamp(43px,11.2vw,74px)}
 body[data-type="directa"] h1{font-size:clamp(35px,9.3vw,61px)}
 body[data-case="mayusculas"] h1{font-size:clamp(30px,7.7vw,52px)}
 body[data-view="sin-citas"] .hero{--portrait-height:850px}.hero-image,.photo,.hero-shade{height:var(--portrait-height)}
 .hero-request{font-size:13px;margin-top:26px;padding:14px 23px}
 .hero-booking-slot{order:2}
 .home-intro,.home-team,.home-booking{display:flex;flex-direction:column;padding:60px var(--gutter);gap:30px}
 .home-intro>.section-label{margin:0}.home-intro h2,.home-team h2,.home-booking h2,.home-visit h2{font-size:36px}
 .home-team>img{height:285px}.home-team p:not(.section-label),.home-intro p:not(.section-label),.home-booking p:not(.section-label){font-size:14px}
 .specialties{padding:60px var(--gutter)}.specialty-links{grid-template-columns:1fr}
 .home-booking>div{width:100%}.home-booking .appointment-calendar.is-expanded,.home-booking .appointment-calendar:focus-within{height:520px}
 .home-visit{padding:55px var(--gutter)}.home-visit>div{flex-direction:column;align-items:flex-start;gap:25px}
 .preview-options{width:260px;max-height:65svh}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body[data-type="natural"] h1{letter-spacing:-.025em}
body[data-type="directa"] h1{letter-spacing:-.03em}
body[data-case="mayusculas"] h1{letter-spacing:-.015em}

.home-intro h2,.home-team h2,.home-booking h2,.home-visit h2,.gallery-heading h2,.specialties h2{letter-spacing:-.03em}
.header.scrolled .desktop-nav,.header.scrolled .header-book{color:var(--home-ink)}

/* Desarrollo de la home a partir de la información publicada del centro. */
.home-section{padding:95px var(--gutter);background:var(--paper);color:var(--home-ink)}
.home-section h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,4.2vw,64px);letter-spacing:-.035em;line-height:1.12;margin:0 0 28px}
.home-section .section-label{font-size:10px;letter-spacing:.16em;color:var(--wood);margin:0 0 25px}
.home-section p{font-size:15px;line-height:1.85;color:#716c63}
.home-orl,.home-process,.home-faq{display:grid;grid-template-columns:1fr 1fr;gap:90px}
.section-heading>p:not(.section-label){max-width:490px}
.text-link{display:inline-block;padding:10px 0;margin-top:18px;border-bottom:1px solid #78543860;color:var(--wood);font-size:14px}
.clinical-list article{border-top:1px solid #78543840;padding:22px 0 20px}
.clinical-list article>span,.coord-body span,.team-roster span{color:var(--wood);font-size:10px;letter-spacing:.12em}
.clinical-list h3,.process-steps h3{font-size:21px;font-weight:450;line-height:1.35;margin:13px 0 8px;letter-spacing:-.02em}
.clinical-list article p{margin:0}.clinical-list .clinical-note{font-size:12px;padding-top:16px;border-top:1px solid #78543840}
.team-roster{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:25px 35px}
.team-roster>div{padding-top:20px;border-top:1px solid #78543840}
.home-team .team-roster p{font-size:17px;color:var(--home-ink);line-height:1.65;margin:12px 0 0}
.home-coordination{background:#684b35;color:#fffaf1}
.home-coordination .section-label,.home-coordination .coord-body span{color:#dfc3a5}
.home-coordination h2{max-width:950px}.coord-body{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;margin-top:42px}
.home-coordination p{color:#e3d5c9;margin:0;max-width:540px}
.coord-body>div{border-top:1px solid #ffffff40;padding-top:20px}.coord-body>div p{font-size:24px;line-height:1.45;margin:15px 0}
.coord-body small{color:#d5c4b6;font-size:12px;line-height:1.7;display:block}
.process-steps{list-style:none;padding:0;margin:0}
.process-steps li{display:flex;gap:26px;padding:24px 0;border-top:1px solid #78543840}
.process-steps li>span{font-family:Georgia,serif;font-size:32px;color:var(--wood);line-height:1.3}
.process-steps h3{margin:0 0 12px}.process-steps p{margin:0;font-size:14px}
.home-faq{background:#ede9e1}.faq-list details{border-top:1px solid #78543840;padding:22px 0}
.faq-list details:last-child{border-bottom:1px solid #78543840}
.faq-list summary{font-size:17px;line-height:1.5;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px}
.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:'+';font-size:24px;color:var(--wood)}
.faq-list details[open] summary::after{content:'−'}.faq-list details p{font-size:14px;margin:18px 0 0}
.home-visit>div>p{line-height:1.9}.home-visit>div>p a{font-size:13px;border:0;padding:0;display:inline}
@media(max-width:1050px){.home-orl,.home-process,.home-faq,.coord-body{gap:45px}.team-roster{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){
 .home-section{padding:60px var(--gutter)}.home-section h2{font-size:38px}.home-orl,.home-process,.home-faq,.coord-body{grid-template-columns:1fr;gap:30px}
 .home-section p{font-size:14px}.team-roster{width:100%;grid-template-columns:1fr;gap:20px}.home-team .team-roster p{font-size:16px}
 .coord-body{margin-top:30px}.coord-body>div p{font-size:21px}.faq-list summary{font-size:16px}.home-visit>div>p a{overflow-wrap:anywhere}
}

/* Bloques completos conservados desde la home pública. */
.home-first,.home-doctor,.home-callback{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center;background:#ede9e1}
.home-first figure,.home-doctor figure{margin:0}.home-first img{width:100%;height:430px;object-fit:cover}.home-doctor img{width:100%;height:560px;object-fit:cover;object-position:center 25%}
.home-first figcaption,.home-doctor figcaption{font-size:12px;color:#716c63;padding-top:15px}
.home-first ul{padding-left:20px;font-size:15px;color:#716c63;line-height:1.9}.insurance-line{border-top:1px solid #78543840;margin-top:30px;padding-top:24px}.insurance-line span,.insurance-line small{display:block}.insurance-line span{font-size:23px}.insurance-line small{margin-top:10px;color:#716c63}
.home-doctor{background:var(--paper)}.doctor-proof{display:grid;gap:12px;border-top:1px solid #78543840;padding-top:25px;margin-top:30px}.doctor-proof strong{font-weight:450;font-size:20px}.doctor-proof a{color:var(--wood);font-size:13px;margin-bottom:13px}
.home-reviews{background:#ede9e1}.review-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:45px 0 60px}.review-figures>div{border-top:1px solid #78543840;padding-top:24px}.review-figures strong{display:block;font-family:Georgia,serif;font-size:60px;font-weight:400;color:var(--wood)}.review-figures span{display:block;margin-top:15px;line-height:1.7;font-size:13px;color:#716c63}
.review-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.review-rail blockquote{margin:0;padding:25px 0;border-top:1px solid #78543840}.review-rail blockquote>span{color:var(--wood);letter-spacing:3px}.review-rail p{font-size:14px}.review-rail cite{font-style:normal;font-size:12px;color:var(--wood)}
.silvia-profile{grid-column:1/-1;display:grid;grid-template-columns:230px 1fr;gap:50px;border-top:1px solid #78543840;padding-top:40px}.silvia-profile img{width:100%;height:265px;object-fit:cover}.silvia-profile h3{font-family:Georgia,serif;font-size:35px;font-weight:400;margin:0 0 15px}.silvia-profile p{max-width:680px!important}
.team-photo-rail,.training-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:25px;padding-bottom:25px;scrollbar-color:#785438 #d9d2c8}
.team-photo-rail{grid-column:1/-1;min-width:0}.team-photo-rail article{flex:0 0 255px;scroll-snap-align:start}.team-photo-rail img{width:255px;height:320px;object-fit:cover;object-position:center 22%}.team-photo-rail h3{font-size:22px;font-weight:450;margin:20px 0 10px}.home-team .team-photo-rail p{font-size:12px;line-height:1.8;margin:0}
.home-training>p:not(.section-label){max-width:750px}.training-rail{margin-top:45px}.training-rail figure{margin:0;flex:0 0 440px;scroll-snap-align:start}.training-rail img{width:100%;height:300px;object-fit:contain;background:#ded8cd}.training-rail figcaption{padding-top:20px;line-height:1.7}.training-rail strong{display:block;font-weight:450;font-size:20px}.training-rail span{font-size:13px;color:#716c63;display:block;margin-top:6px}
.care-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:60px}.care-routes h3{font-size:21px;font-weight:450;line-height:1.5;min-height:64px}.care-routes ol{list-style:none;padding:0}.care-routes li{padding:16px 0;border-top:1px solid #ffffff60;font-size:14px;color:#e3d5c9}.care-routes .optional{border-top-style:dashed}.home-coordination .route-note{max-width:none;font-size:12px;margin-top:20px}
.contact-options{border-top:1px solid #78543840;padding-top:30px;display:flex;flex-direction:column;gap:22px}.contact-options>span{font-size:10px;letter-spacing:.15em;color:var(--wood)}.contact-options a{font-size:25px;color:var(--wood)}.contact-options small{font-size:12px;line-height:1.8;color:#716c63}.home-callback .callback-note{font-size:12px}
.footer{flex-wrap:wrap}.footer-details{flex-basis:100%;border-top:1px solid #ffffff30;margin-top:25px;padding-top:25px;font-size:11px;line-height:1.9}.footer-details nav{display:flex;gap:25px;flex-wrap:wrap}
@media(max-width:1050px){.home-first,.home-doctor,.home-callback{gap:40px}.care-routes,.review-rail{gap:25px}.review-figures strong{font-size:45px}}
@media(max-width:760px){.home-first,.home-doctor,.home-callback{grid-template-columns:1fr;gap:35px}.home-first img{height:260px}.home-doctor img{height:430px}.review-figures{grid-template-columns:1fr;gap:25px;margin:35px 0}.review-figures strong{font-size:48px}.review-rail{display:flex;overflow:auto;scroll-snap-type:x mandatory}.review-rail blockquote{flex:0 0 85%;scroll-snap-align:start}.silvia-profile{width:100%;grid-template-columns:1fr;gap:25px}.silvia-profile img{height:350px}.team-photo-rail{width:100%}.training-rail figure{flex-basis:85%}.training-rail img{height:240px}.care-routes{grid-template-columns:1fr;gap:20px;margin-top:35px}.care-routes h3{min-height:0}.contact-options a{font-size:22px}.footer-details nav{gap:15px}.footer-details{overflow-wrap:anywhere}}
/* Agenda del hero completa: evita recortar el widget de 531 px a 180 px. */
.hero-booking-slot .appointment-calendar{height:550px}
@media(max-width:900px){.hero-booking-slot .appointment-calendar{height:550px}}
