/* ==========================================================
   PÁGINAS INTERIORES (La clínica, El equipo, Contacto…)
   Reutilizan los componentes de la portada (home.css) y
   añaden aquí solo lo propio de cada página.
   ========================================================== */

.pg .lightbox-photo{cursor:zoom-in}
.pg p{margin:0 0 18px}
.pg-text{color:var(--hp-muted);font-size:16.5px;line-height:1.8;max-width:560px}

/* Ruta de navegación */
.pg-crumbs{
  display:flex;flex-wrap:wrap;align-items:center;gap:10px;
  margin:0 0 26px;
  font:600 11.5px/1.4 var(--hp-sans);letter-spacing:.18em;text-transform:uppercase;
  color:var(--hp-muted);
}
.pg-crumbs a{color:var(--hp-gold);text-decoration:none}
.pg-crumbs a:hover{color:var(--hp-teal-dark)}
.pg-crumbs span[aria-hidden]{color:var(--hp-line)}

/* ---------- Portada de página ---------- */
.pg-hero{
  padding:clamp(48px,6vw,90px) 0 clamp(70px,8vw,120px);
  background:
    radial-gradient(1100px 520px at 85% 10%,rgba(215,186,104,.16),transparent 60%),
    var(--hp-ivory);
}
.pg-hero__grid{
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(40px,6vw,96px);align-items:center;
}
.pg-hero__copy .hp-display{margin-bottom:28px;font-size:clamp(42px,5vw,74px)}
.pg-hero__copy .hp-lead{margin-bottom:22px}
.pg-hero__media{position:relative;margin:0;display:block}
.pg-hero__media img{
  width:100%;aspect-ratio:4/5;object-fit:cover;
  box-shadow:0 40px 80px -30px rgba(34,26,21,.45);
}
.pg-hero__media::before{
  content:"";position:absolute;inset:-18px 18px 18px -18px;
  border:1px solid var(--hp-gold);opacity:.55;border-radius:999px 999px 6px 6px;
  pointer-events:none;
}
.pg-hero__media--wide::before{border-radius:6px}
.pg-hero__media--wide img{aspect-ratio:4/3;border-radius:4px}
.pg .lightbox-photo.pg-hero__media,
.pg .lightbox-photo.hp-doc__media{overflow:visible}

.pg-values{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.pg-values li{
  display:inline-flex;align-items:center;gap:8px;
  padding:10px 16px;border:1px solid var(--hp-line);border-radius:999px;
  font:600 13px/1 var(--hp-sans);color:var(--hp-ink);
}
.pg-values i{font-size:11px;color:var(--hp-gold)}

/* ---------- Bloques de texto + foto ---------- */
.pg .hp-split .hp-title{margin-bottom:26px}
.pg-framed{position:relative;display:block;border-radius:4px;overflow:hidden;background:var(--hp-sand)}
.pg-framed img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s var(--hp-ease)}
.pg-framed:hover img{transform:scale(1.04)}
.pg-kids .pg-framed img{aspect-ratio:5/4}
.pg-arch-photo{display:block;overflow:hidden;border-radius:999px 999px 6px 6px;max-width:460px;margin-inline:auto}
.pg-arch-photo img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1.2s var(--hp-ease)}
.pg-arch-photo:hover img{transform:scale(1.04)}

/* Línea de tiempo */
.pg-timeline{list-style:none;margin:36px 0 0;padding:0;border-top:1px solid var(--hp-line)}
.pg-timeline li{
  display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;
  padding:22px 0;border-bottom:1px solid var(--hp-line);
}
.pg-timeline__year{font:italic 500 32px/1 var(--hp-serif);color:var(--hp-gold)}
.pg-timeline h3{margin:0 0 6px;font:600 15.5px/1.35 var(--hp-sans);color:var(--hp-ink)}
.pg-timeline p{margin:0;font-size:14.5px;line-height:1.65;color:var(--hp-muted)}

/* Bloque oscuro */
.pg-dark{background:var(--hp-espresso);color:#d9cfc1}
.pg-dark .hp-title{color:#f6f0e6}
.pg-dark .hp-title em{color:var(--hp-gold-soft)}
.pg-dark .pg-text{color:#bfb3a4}
.pg-checks{list-style:none;margin:34px 0 0;padding:0}
.pg-checks li{display:flex;gap:18px;align-items:flex-start;padding:20px 0;border-top:1px solid rgba(215,186,104,.22)}
.pg-checks li:last-child{border-bottom:1px solid rgba(215,186,104,.22)}
.pg-checks i{width:22px;font-size:18px;color:var(--hp-gold-soft);margin-top:3px;text-align:center}
.pg-checks strong{display:block;margin-bottom:4px;font:500 21px/1.25 var(--hp-serif);color:#f6f0e6}
.pg-checks span{font-size:14.5px;color:#bfb3a4}

.pg-kids{background:var(--hp-sand)}
.pg-kids .pg-text{max-width:560px}

/* ---------- Galerías tipo mosaico ---------- */
.pg-gallery-section .hp-head{margin-bottom:48px}
.pg-masonry{columns:4 240px;column-gap:16px}
.pg-masonry--3{columns:3 260px}
.pg-masonry a{
  position:relative;display:block;margin:0 0 16px;
  break-inside:avoid;border-radius:4px;overflow:hidden;background:var(--hp-sand);
}
.pg-masonry img{display:block;width:100%;height:auto;transition:transform 1.2s var(--hp-ease)}
.pg-masonry a:hover img{transform:scale(1.04)}
.pg-masonry a:focus-visible{outline:2px solid var(--hp-gold);outline-offset:3px}

/* ---------- Valores ---------- */
.pg-band{padding:clamp(70px,8vw,110px) 0;background:var(--hp-sand)}
.pg-pillars{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 36px}
.pg-pillars li{padding-top:26px;border-top:1px solid rgba(184,151,90,.4)}
.pg-pillars i{display:block;margin-bottom:18px;font-size:20px;color:var(--hp-gold)}
.pg-pillars h3{margin:0 0 10px;font:500 23px/1.2 var(--hp-serif);color:var(--hp-ink)}
.pg-pillars p{margin:0;font-size:14.5px;line-height:1.7;color:var(--hp-muted)}

/* ---------- El equipo ---------- */
.pg-doctors .hp-doc{align-items:start}
.pg-doctors .hp-doc__media{position:sticky;top:calc(var(--gh-h,76px) + 30px)}
.pg-doc-name{
  margin:0 0 22px;
  font:500 clamp(36px,3.6vw,52px)/1.05 var(--hp-serif);
  color:var(--hp-ink);letter-spacing:-.01em;
}
.pg-doc-name em{display:block;font-style:italic;color:var(--hp-teal-dark)}
.pg-doctors .hp-doc__lead{color:var(--hp-ink);font-size:17px;font-weight:500}
.pg-bio{margin:26px 0 34px;padding-top:26px;border-top:1px solid var(--hp-line)}
.pg-bio p{font-size:15.5px;line-height:1.85;color:var(--hp-muted)}

.pg-team-gallery{background:var(--hp-sand)}
.pg-team-gallery .hp-head{margin-bottom:56px}
.pg-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pg-portraits a{display:block;overflow:hidden;border-radius:999px 999px 6px 6px;background:var(--hp-cream)}
.pg-portraits img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 15%;transition:transform 1.2s var(--hp-ease)}
.pg-portraits a:hover img{transform:scale(1.04)}

/* ---------- Llamada a la acción ---------- */
.pg-cta{position:relative;padding:clamp(80px,9vw,120px) 0;background:var(--hp-espresso-2);color:#d9cfc1;overflow:hidden}
.pg-cta::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 360px at 10% 0%,rgba(215,186,104,.14),transparent 65%);pointer-events:none}
.pg-cta__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(40px,7vw,110px);align-items:center}
.pg-cta .hp-title{color:#f6f0e6;margin-bottom:22px}
.pg-cta .hp-title em{color:var(--hp-gold-soft)}
.pg-cta__text{max-width:520px;color:#bfb3a4}
.pg-cta .hp-btn--gold{width:auto}
.pg-btn-line{border-color:rgba(215,186,104,.45);color:#f6f0e6}
.pg-btn-line:hover{border-color:var(--hp-gold-soft);color:var(--hp-gold-soft)}
.pg-btn-line i{color:var(--hp-gold-soft)}
.pg-cta__data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 40px;margin:0}
.pg-cta__data div{padding-top:18px;border-top:1px solid rgba(215,186,104,.25)}
.pg-cta__data dt{margin-bottom:8px;font:600 11px/1.4 var(--hp-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--hp-gold-soft)}
.pg-cta__data dd{margin:0;font-size:15px;line-height:1.6;color:#efe7da}
.pg-cta__data a{color:inherit;text-decoration:none}
.pg-cta__data a:hover{color:var(--hp-gold-soft)}

.pg-social{display:flex;gap:10px}
.pg-social a{
  display:grid;place-items:center;width:42px;height:42px;
  border:1px solid rgba(215,186,104,.5);border-radius:50%;
  color:var(--hp-gold-soft)!important;font-size:15px;text-decoration:none;
  transition:background .3s ease,color .3s ease;
}
.pg-social a:hover{background:var(--hp-gold-soft);color:var(--hp-espresso)!important}
.pg-social--dark a{border-color:var(--hp-line);color:var(--hp-ink)!important}
.pg-social--dark a:hover{background:var(--hp-espresso);border-color:var(--hp-espresso);color:#fff!important}

/* ---------- Contacto ---------- */
.pg-contact__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:clamp(40px,7vw,110px);align-items:start}
.pg-contact-list{list-style:none;margin:36px 0 0;padding:0;border-top:1px solid var(--hp-line)}
.pg-contact-list li{display:flex;gap:18px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--hp-line)}
.pg-contact-list i{
  display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;
  border:1px solid var(--hp-line);border-radius:50%;
  font-size:15px;color:var(--hp-gold);
}
.pg-contact-list span{display:block;margin-bottom:4px;font:600 11px/1.4 var(--hp-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--hp-muted)}
.pg-contact-list a,.pg-contact-list p{margin:0;font:500 21px/1.35 var(--hp-serif);color:var(--hp-ink);text-decoration:none}
.pg-contact-list p{font:400 15.5px/1.6 var(--hp-sans);color:var(--hp-ink)}
.pg-contact-list a:hover{color:var(--hp-teal-dark)}
.pg-follow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:30px}
.pg-follow > span{font-size:14.5px;color:var(--hp-muted)}
.pg-follow strong{color:var(--hp-ink)}

.pg-form{position:relative}
.pg-form h2{margin:0 0 6px;font:500 32px/1.1 var(--hp-serif);color:var(--hp-ink)}
.pg-form textarea{
  min-height:120px;padding:12px 2px;resize:vertical;
  border:0;border-bottom:1px solid var(--hp-line);border-radius:0;
  background:transparent;color:var(--hp-ink);font:400 16px/1.6 var(--hp-sans);
  transition:border-color .3s;transform:none;
}
.pg-form textarea:focus{outline:none;border-bottom-color:var(--hp-gold);transform:none}
.pg-form textarea::placeholder{color:#a79d92}
.pg-form .hp-btn--gold{background:var(--hp-espresso);color:#fff}
.pg-form .hp-btn--gold:hover{background:var(--hp-teal-dark)}
.pg .hp-field input,.pg .hp-field input:focus{transform:none}

.pg-map-section{padding:0 0 clamp(80px,9vw,120px);background:var(--hp-ivory)}
.pg-map{margin-top:0;height:440px;border-radius:4px}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .pg-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .pg-hero__grid,.pg-cta__grid,.pg-contact__grid{grid-template-columns:1fr}
  .pg-hero__media{max-width:440px;width:calc(100% - 20px);margin:10px auto 0}
  .pg-hero__media--wide{max-width:none}
  .pg-timeline li{grid-template-columns:72px minmax(0,1fr);gap:14px}
  .pg-timeline__year{font-size:26px}
  .pg-pillars{grid-template-columns:1fr;gap:0}
  .pg-pillars li{padding:22px 0}
  .pg-doctors .hp-doc__media{position:relative;top:auto}
  .pg-portraits{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .pg-cta__data{grid-template-columns:1fr;gap:22px}
  .pg-cta .hp-actions .hp-btn{flex:1 1 100%}
  .pg-map{height:320px}
}
.pg-map{background:var(--hp-sand)}

.pg-hero__media img.pg-hero__img--top{object-position:50% 20%}
