
.time-intro { padding: var(--esp-sec-y) 0 0; }
.time-intro__text { max-width: 62rem; margin: 0; font: 400 var(--fs-lead)/1.5 var(--esp-font); color: var(--esp-body); }
.time-intro__text strong { color: var(--esp-gray); }
.time-intro__text--lead { margin-top: 1.5rem; color: var(--esp-gray); }

.time-team { padding: var(--esp-sec-y) 0; }
.time-team__grid { display: grid; grid-template-columns: minmax(0, 25rem) minmax(0, 1fr); gap: 3.5rem; align-items: start; }

.time-accordion { display: flex; flex-direction: column; gap: 1.5rem; }
.time-region { background: #fff; border: 0.0625rem solid var(--esp-border); border-radius: var(--esp-radius-xl); scroll-margin-top: 6rem; }
.time-region.is-open { background: var(--esp-bg-soft); border-color: transparent; }
.time-region__heading { margin: 0; }
.time-region__head { width: 100%; display: flex; align-items: center; gap: 1rem; padding: 1.5rem 2rem;
  background: transparent; border: 0; cursor: pointer; text-align: left; }
.time-region__name { font: 400 var(--fs-body)/1.2 var(--esp-font); color: var(--esp-gray); text-transform: uppercase; }
.time-region.is-open .time-region__name { font-weight: 700; color: var(--esp-cyan); }
.time-region__chevron { order: -1; flex: 0 0 auto; width: 0.7rem; height: 0.7rem;
  border-right: 0.15rem solid var(--esp-yellow); border-bottom: 0.15rem solid var(--esp-yellow);
  transform: translateY(-0.15rem) rotate(45deg); transition: transform .3s ease; }
.time-region.is-open .time-region__chevron { transform: translateY(0.1rem) rotate(-135deg); }

/* painel colapsável: max-height é teto-mole (> conteúdo do maior painel = 3 contatos), overflow clipa */
.time-region__panel { overflow: hidden; max-height: 0; transition: max-height .4s ease; }
.time-region.is-open .time-region__panel { max-height: 32rem; }
.time-contacts { list-style: none; margin: 0; padding: 0 2rem 2rem;
  display: flex; flex-direction: column; gap: 1.75rem; }

.time-contact { display: flex; gap: 1.25rem; align-items: center; }
.time-contact__avatar { flex: 0 0 auto; width: 5rem; height: 5rem; border-radius: 50%; overflow: hidden; }
.time-contact__avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.time-contact__avatar--empty { background: var(--esp-blue-pale); }
.time-contact__name { margin: 0; font: 700 var(--fs-body)/1.2 var(--esp-font); color: var(--esp-gray); text-transform: uppercase; }
.time-contact__role { margin: 0.15rem 0 0.35rem; font: 400 var(--fs-sm)/1.2 var(--esp-font); color: var(--esp-muted); }
.time-contact__email { font: 700 var(--fs-sm)/1.2 var(--esp-font); color: var(--esp-cyan); text-decoration: underline; overflow-wrap: anywhere; }

.time-map { position: relative; aspect-ratio: 1036 / 560; }
.time-map img { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.time-map__reg { opacity: 0; transition: opacity .4s ease; }
.time-map[data-active="nam"] .time-map__reg[data-region="nam"],
.time-map[data-active="sam"] .time-map__reg[data-region="sam"],
.time-map[data-active="emea"] .time-map__reg[data-region="emea"],
.time-map[data-active="asia"] .time-map__reg[data-region="asia"] { opacity: 1; }
/* hotspots: zonas por continente (não sobrepõem), só mouse (teclado usa o acordeão) */
.time-map__hit { position: absolute; margin: 0; padding: 0; border: 0; background: transparent; cursor: pointer; }
.time-map__hit--nam { left: 0; top: 0; width: 38%; height: 52%; }
.time-map__hit--sam { left: 0; top: 52%; width: 38%; height: 48%; }
.time-map__hit--emea { left: 38%; top: 0; width: 22%; height: 100%; }
.time-map__hit--asia { left: 60%; top: 0; width: 40%; height: 100%; }

.time-cards { padding-bottom: var(--esp-sec-y); }
.time-cards__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3.5rem; }
.time-card__photo { width: 100%; height: auto; display: block; border-radius: var(--esp-radius-leaf); }
.time-card__title { margin: 1.5rem 0 0; font: 700 var(--fs-h3)/1.2 var(--esp-font); color: var(--esp-cyan); }
.time-card__text { margin: 1rem 0 1.75rem; font: 400 var(--fs-body)/1.5 var(--esp-font); color: var(--esp-body); }

@media (max-width: 900px) {
  .time-team__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  .time-cards__grid { grid-template-columns: 1fr; gap: 2.5rem; }
  /* mobile/tablet: mapa some, só o acordeão */
  .time-map { display: none; }
}
@media (max-width: 600px) {
  .time-region__head { padding: 1.25rem 1.35rem; }
  .time-contacts { padding: 0 1.35rem 1.5rem; }
}
