/* The opening album shows exactly one therapist at every viewport width. */
#heroTherapists.portrait-mosaic {
  display:block;
  position:relative;
  width:min(100%,390px);
  margin-inline:auto;
  overflow:hidden;
  border-radius:66px 66px 5px 5px;
  isolation:isolate;
  touch-action:pan-y pinch-zoom;
}
#heroTherapists.portrait-mosaic > .managed-card,
#heroTherapists.portrait-mosaic.single-portrait > .managed-card {
  display:flex;
  width:100%;
  margin:0;
  border-radius:66px 66px 5px 5px!important;
  animation:none;
  transform:none;
}
#heroTherapists .managed-photo {
  aspect-ratio:4/4.7;
  flex:none;
}
#heroTherapists .managed-photo img {
  -webkit-user-drag:none;
  user-select:none;
}
#heroTherapists .managed-caption {
  min-height:100px;
  padding:17px 20px 19px;
}
#heroTherapists .managed-name { font-size:1.8rem; }
#heroTherapists .managed-profession { font-size:.78rem; }
#heroTherapists.portrait-mosaic > .hero-outgoing {
  position:absolute;
  inset:0;
  height:100%;
  pointer-events:none;
  z-index:1;
}
#heroTherapists .hero-incoming { position:relative; z-index:2; }
#heroTherapists.hero-sliding .managed-card { pointer-events:none; will-change:transform; }
.hero-carousel-enhanced { width:min(100%,390px); margin-inline:auto; }
.hero-carousel-enhanced + .hero-carousel-footer { max-width:390px; margin-inline:auto; flex-wrap:wrap; gap:5px 12px; }
.hero-carousel-enhanced + .hero-carousel-footer .carousel-hint { margin-right:auto; }
.carousel-autoplay {
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:44px;
  border:1px solid #d6be8b55;
  border-radius:24px;
  padding:8px 13px;
  background:#17291d;
  color:#ead9b8;
  font:500 .68rem var(--font-b, sans-serif);
  cursor:pointer;
}
.carousel-autoplay:hover { background:#2b4030; border-color:#ead9b8; }
.carousel-autoplay:focus-visible { outline:3px solid #f2dfb7; outline-offset:3px; }
.carousel-autoplay[hidden] { display:none; }
#heroTherapists.hero-dragging { cursor:grabbing; }
#heroTherapists.hero-dragging * { user-select:none; }
@media (hover:hover) {
  .hero-carousel-enhanced #heroTherapists { cursor:grab; }
  #heroTherapists.portrait-mosaic > .managed-card:hover { transform:none; }
}
@media (max-width:650px) {
  #heroTherapists.portrait-mosaic,
  #heroTherapists.portrait-mosaic > .managed-card,
  #heroTherapists.portrait-mosaic.single-portrait > .managed-card { border-radius:52px 52px 5px 5px!important; }
  #heroTherapists .managed-name { font-size:1.65rem; }
  #heroTherapists .managed-caption { min-height:100px; padding:16px 17px 18px; }
  .hero-carousel-enhanced .carousel-arrow.previous { left:-10px; }
  .hero-carousel-enhanced .carousel-arrow.next { right:-10px; }
}
@media (prefers-reduced-motion:reduce) {
  #heroTherapists .managed-card { transition:none!important; }
}

/* Opening composition: a full-bleed photograph, with a calm, readable text area. */
#inicio.hero {min-height:max(840px,100svh);background:#101a14;isolation:isolate}
#inicio.hero::before,#inicio.hero::after {display:none}
#inicio.hero .hero-bg {z-index:0;background:#14251b}
#inicio.hero .hero-content {
  position:static;display:block;width:min(1360px,calc(100% - 112px));max-width:none;
  padding:180px 0 180px;margin:auto;
}
#inicio.hero .hero-copy {position:relative;z-index:3;width:min(100%,570px);text-shadow:0 2px 24px #0003}
#inicio.hero .hero-tag {margin-bottom:1.9rem;color:#e5d4ad;font-size:.58rem;letter-spacing:.25em}
#inicio.hero .ht {font-size:clamp(4.7rem,7.25vw,7.2rem);line-height:.96;letter-spacing:-.035em;gap:.05em;color:#fff9f0}
#inicio.hero .ht .l2 {font-size:.69em}
#inicio.hero .ht .l4 {color:#e3c98f;font-size:1.02em}
#inicio.hero .hero-sub {max-width:440px;font-size:.94rem;line-height:1.85;color:#e6e8df;margin:1.9rem 0 1.9rem}
#inicio.hero .hero-actions {gap:12px;align-items:center;flex-direction:row}
#inicio.hero .hero-actions .btn-primary,#inicio.hero .hero-actions .btn-outline {
  width:auto;min-height:51px;font-size:.59rem;padding:1rem 1.35rem;gap:.8rem;
}
#inicio.hero .hero-actions .btn-outline {background:#0e1a1240;border-color:#eee8d65c;color:#f8f1e5}
#inicio.hero .hero-actions .btn-outline:hover {background:#e3c98f18;border-color:#e3c98f}
#inicio.hero .hero-actions .directions-button {
  border:0;background:transparent;min-height:38px;padding:.4rem 0;flex-basis:100%;justify-content:flex-start;
  color:#e4d6ba;font-size:.65rem;letter-spacing:.05em;text-decoration:underline;text-underline-offset:5px;
}
#inicio.hero .hero-actions .directions-button:hover {color:#fff;background:transparent}
#inicio.hero .hero-footnote {display:flex;margin-top:1.6rem;font-size:.64rem;color:#d2d8cbb0}
#inicio.hero .hero-caption {display:none}
#inicio.hero .hero-team {
  position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;z-index:1;pointer-events:none;
}
#inicio.hero .managed-photo::after {
  content:'';position:absolute;inset:0;z-index:2;pointer-events:none;
  background:linear-gradient(90deg,#0c1713ee 0%,#0c1713d9 28%,#0c17138c 48%,#0c171321 71%,#0c17131f 100%),
    linear-gradient(0deg,#0e1914ed 0%,#0e191433 23%,transparent 54%,#0b171357 100%);
}
#inicio.hero .mosaic-heading,#inicio.hero .hero-team .team-filter-controls,
#inicio.hero .hero-team .mosaic-bottom {display:none}
#inicio.hero .hero-carousel,#inicio.hero .hero-carousel-enhanced {
  position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;isolation:auto;pointer-events:auto;
}
#inicio.hero #heroTherapists.portrait-mosaic {
  position:absolute;inset:0;width:100%;height:100%;max-width:none;margin:0;border-radius:0;
}
#inicio.hero #heroTherapists > .managed-card,
#inicio.hero #heroTherapists.portrait-mosaic.single-portrait > .managed-card {
  position:absolute;inset:0;display:block;width:100%;height:100%;border:0;border-radius:0!important;
  background:#14251b;pointer-events:none;
}
#inicio.hero #heroTherapists .managed-photo {position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;background:#14251b}
#inicio.hero .hero-photo-backdrop {display:none}
#inicio.hero #heroTherapists .managed-photo img {
  width:100%;height:100%;padding-top:94px;box-sizing:border-box;object-fit:cover;object-position:var(--hero-portrait-position,50% 0%)!important;filter:saturate(.87) brightness(.94);
}
#inicio.hero #heroTherapists .managed-photo .mosaic-initial {display:none}
#inicio.hero #heroTherapists .managed-caption {
  position:absolute;inset:auto 56px 104px auto;display:flex;align-items:flex-end;width:auto;min-height:0;
  padding:0;gap:3px;background:transparent;z-index:3;text-align:right;text-shadow:0 2px 15px #0008;pointer-events:auto;
}
#inicio.hero #heroTherapists .managed-name {font-size:2.2rem;font-weight:400;color:#fff7e9;line-height:1.15}
#inicio.hero #heroTherapists .managed-profession {font-size:.6rem;color:#e1cfa9;letter-spacing:.14em;margin-top:3px;text-transform:uppercase}
#inicio.hero #heroTherapists .availability-details,#inicio.hero #heroTherapists .managed-caption > .availability-badge {display:none}
#inicio.hero #heroTherapists .managed-caption::after {
  content:'Ver perfil ↗';font:400 .61rem var(--font-b,sans-serif);letter-spacing:.03em;color:#f0e6cf;
  margin-top:7px;text-decoration:underline;text-underline-offset:4px;
}
html[lang^=en] #inicio.hero #heroTherapists .managed-caption::after {content:'View profile ↗'}
html[lang^=de] #inicio.hero #heroTherapists .managed-caption::after {content:'Profil ansehen ↗'}
html[lang^=fr] #inicio.hero #heroTherapists .managed-caption::after {content:'Voir le profil ↗'}
#inicio.hero #heroTherapists > .hero-outgoing .managed-caption {visibility:hidden}
#inicio.hero #heroTherapists .managed-card:focus-visible {outline:0}
#inicio.hero #heroTherapists .managed-card:focus-visible .managed-caption {outline:2px solid #e3c98f;outline-offset:8px}
#inicio.hero .hero-carousel-footer {
  position:absolute;inset:auto 56px 32px auto;z-index:5;display:flex;align-items:center;justify-content:flex-end;
  width:200px;max-width:none;margin:0;gap:18px;flex-wrap:nowrap;color:#e1d8c4;pointer-events:auto;
}
#inicio.hero #heroCarouselStatus {font-size:.63rem;letter-spacing:.04em;white-space:nowrap}
#inicio.hero .hero-carousel-footer .carousel-hint {
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
#inicio.hero .carousel-autoplay {min-height:44px;background:#10251b90;border-color:#e3d3ae55;font-size:.64rem;white-space:nowrap}
#inicio.hero .carousel-arrow {
  inset:auto 278px 32px auto;z-index:5;width:44px;height:44px;transform:none;background:#10251b90;
  border-color:#e3d3ae66;box-shadow:none;pointer-events:auto;
}
#inicio.hero .carousel-arrow.next {right:224px}
#inicio.hero .carousel-arrow:hover {background:#e1c88f;color:#16251a}
#inicio.hero .roster-message,#inicio.hero .hero-category-empty {
  position:absolute;right:56px;bottom:176px;z-index:5;max-width:360px;padding:15px 18px;
  background:#14251bf2;color:#efe7d7;border:1px solid #d9c79d55;font-size:.8rem;pointer-events:auto;
}

@media(max-width:980px) {
  #inicio.hero #heroTherapists .managed-photo img {padding-top:78px}
  #inicio.hero .hero-content {width:calc(100% - 64px);padding:156px 0 176px}
  #inicio.hero .hero-copy {max-width:510px}
  #inicio.hero .ht {font-size:clamp(4.3rem,8.5vw,6.1rem)}
  #inicio.hero .managed-photo::after {
    background:linear-gradient(90deg,#0c1713e6 0%,#0c1713bd 35%,#0c171347 76%),linear-gradient(0deg,#0e1914ed 0%,transparent 48%,#0b171357 100%);
  }
  #inicio.hero #heroTherapists .managed-caption {right:32px}
  #inicio.hero .hero-carousel-footer {right:32px}
  #inicio.hero .carousel-arrow {right:254px}
  #inicio.hero .carousel-arrow.next {right:200px}
  #inicio.hero .roster-message,#inicio.hero .hero-category-empty {right:32px}
}
@media(max-width:650px) {
  #inicio.hero {--hero-mobile-portrait-height:clamp(390px,125vw,620px);min-height:max(920px,100svh);align-items:flex-end}
  #inicio.hero .hero-content {width:calc(100% - 40px);padding:calc(104px + var(--hero-mobile-portrait-height)) 0 176px;margin:0 auto}
  #inicio.hero .hero-copy {width:100%;max-width:440px}
  #inicio.hero .hero-tag {font-size:.48rem;letter-spacing:.19em;margin-bottom:1.1rem}
  #inicio.hero .ht {font-size:clamp(3.45rem,14.9vw,5.4rem);line-height:.96;gap:.025em;letter-spacing:-.025em}
  #inicio.hero .ht .l2 {font-size:.7em}
  #inicio.hero .hero-sub {font-size:.84rem;line-height:1.75;margin:1.2rem 0 1.3rem;max-width:360px}
  #inicio.hero .hero-actions {gap:10px;flex-wrap:wrap;align-items:stretch}
  #inicio.hero .hero-actions .btn-primary,#inicio.hero .hero-actions .btn-outline {
    width:calc(50% - 5px);min-height:49px;justify-content:center;font-size:.53rem;padding:.9rem .65rem;gap:.45rem;
  }
  #inicio.hero .hero-actions .directions-button {width:auto;min-height:34px;padding:.25rem 0;justify-content:flex-start;font-size:.63rem}
  #inicio.hero .hero-footnote {display:none}
  #inicio.hero #heroTherapists.portrait-mosaic {border-radius:0!important}
  #inicio.hero .hero-photo-backdrop {
    display:block;position:absolute;inset:-32px;z-index:0;pointer-events:none;
    background-position:center top;background-size:cover;background-repeat:no-repeat;
    filter:blur(24px) saturate(.72) brightness(.55);
  }
  #inicio.hero .managed-photo::after {
    background:linear-gradient(180deg,#0c171329 0,transparent 72px,
      transparent calc(72px + var(--hero-mobile-portrait-height)),
      #0d1914f5 calc(104px + var(--hero-mobile-portrait-height)),#0d1914fa 100%);
  }
  #inicio.hero #heroTherapists .managed-photo img {
    top:72px;bottom:auto;height:var(--hero-mobile-portrait-height);padding:0;z-index:1;
    object-fit:contain;object-position:50% 50%!important;filter:saturate(.9) brightness(.98);
  }
  #inicio.hero #heroTherapists .managed-caption {right:20px;bottom:100px;gap:1px}
  #inicio.hero #heroTherapists .managed-name {font-size:1.6rem}
  #inicio.hero #heroTherapists .managed-profession {font-size:.5rem}
  #inicio.hero #heroTherapists .managed-caption::after {font-size:.56rem;margin-top:5px}
  #inicio.hero .hero-carousel-footer {right:20px;bottom:30px;width:calc(100% - 150px);gap:12px}
  #inicio.hero .carousel-autoplay {padding:8px 11px;font-size:.61rem}
  #inicio.hero .carousel-arrow {right:auto;left:20px;bottom:30px;width:44px;height:44px}
  #inicio.hero .carousel-arrow.next {right:auto;left:74px}
  #inicio.hero #heroCarouselStatus {font-size:.59rem}
  #inicio.hero .roster-message,#inicio.hero .hero-category-empty {right:20px;left:20px;bottom:174px;max-width:none}
}
@media print {
  #inicio.hero {min-height:0;background:#fff}
  #inicio.hero .hero-content {padding:2rem 0}
  #inicio.hero .hero-team {display:none}
  #inicio.hero .ht,#inicio.hero .ht .l4,#inicio.hero .hero-sub {color:#111}
}

/* Compact pause control; the old arrows and counter remain hidden. */
#inicio.hero .hero-autoplay-1142{position:absolute;right:32px;bottom:32px;z-index:6;width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;display:inline-grid;place-items:center;font-size:17px;line-height:1;pointer-events:auto;color:#f3e7ce;background:#10251bd9;border:1px solid #d4b77e80}
#inicio.hero .hero-autoplay-1142[hidden]{display:none}
@media(max-width:650px){#inicio.hero .hero-autoplay-1142{right:20px;bottom:25px}}
