/* Sedes · hoja de oficinas. Estructura del equipo + cartas cálidas (Elo One). */
.sedes{
  position:relative;z-index:3;
  overflow:hidden;
  color:var(--charcoal,#f2f3f4);
  background:
    radial-gradient(55% 42% at 12% -8%, rgba(255,102,0,.08), transparent 58%),
    radial-gradient(60% 40% at 88% 0%, var(--section-glow,rgba(255,255,255,.035)), transparent 60%),
    linear-gradient(180deg, var(--mist,#0c0e11) 0%, var(--mist,#0c0e11) 100%);
}
.sedes[hidden]{display:none}
.sedes__in{
  position:relative;
  width:min(1180px, 100% - 64px);
  margin:0 auto;
  padding:clamp(56px, 8vh, 96px) 0 clamp(72px, 10vh, 120px);
}

.sedes__head{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) auto;
  gap:clamp(20px, 4vw, 48px);
  align-items:end;
  margin-bottom:clamp(28px, 4vh, 40px);
  padding-bottom:clamp(20px, 2.8vh, 28px);
  border-bottom:1px solid var(--line,rgba(255,255,255,.1));
}
.sedes__title{
  margin:0;
  display:flex;flex-direction:column;align-items:flex-start;
  gap:clamp(10px, 1.4vh, 14px);
  max-width:min(100%, 22em);
  font:650 clamp(28px, 4vw, 48px)/1.1em "Geist Sans",system-ui,sans-serif;
  letter-spacing:-.035em;
}
.sedes__title::before{
  content:"";display:block;height:2px;background:var(--orange,#FF6600);
  width:0;
}
.sedes__title.is-shutter::before{
  animation:holdMarkDraw .55s cubic-bezier(.16,1,.3,1) forwards;
}
.sedes__title .hold__shutter-line{justify-content:flex-start;max-width:100%}
.sedes__title .hold__shutter-word{display:inline-flex;flex-wrap:nowrap;align-items:center}
.sedes__title .hold__shutter-line--lead{
  font:650 12px/1 "Geist Sans",system-ui,sans-serif;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--muted-2,rgba(255,255,255,.48));
}
.sedes__title .hold__shutter-line--lead .hold__shutter-char{padding:.04em .045em .12em}
.sedes__title .hold__shutter-line--main{
  font:650 clamp(26px, 3.6vw, 44px)/1.1em "Geist Sans",system-ui,sans-serif;
  letter-spacing:-.035em;
  color:var(--charcoal,#f2f3f4);
  flex-wrap:nowrap;max-width:100%;
}
.sedes__title .hold__shutter-line--main .hold__shutter-char{
  padding:.06em .012em .12em;line-height:1.1em;
}
.sedes__title.is-shutter .hold__shutter-base{
  opacity:0;filter:blur(10px);transform:translateY(16px);
  animation:holdShutterBase .55s cubic-bezier(.16,1,.3,1) forwards;
  animation-delay:calc(var(--i, 0) * 14ms + 40ms)
}
.sedes__title.is-shutter .hold__shutter-slice--top{
  animation:holdShutterSweepR .55s cubic-bezier(.4,0,.2,1) forwards;
  animation-delay:calc(var(--i, 0) * 14ms)
}
.sedes__title.is-shutter .hold__shutter-slice--mid{
  animation:holdShutterSweepL .55s cubic-bezier(.4,0,.2,1) forwards;
  animation-delay:calc(var(--i, 0) * 14ms + 40ms)
}
.sedes__title.is-shutter .hold__shutter-slice--bot{
  animation:holdShutterSweepR .55s cubic-bezier(.4,0,.2,1) forwards;
  animation-delay:calc(var(--i, 0) * 14ms + 80ms)
}

.sedes__lead{
  margin:clamp(14px, 2vh, 18px) 0 0;
  max-width:42ch;
  font:400 15px/1.5 "Geist Sans",system-ui,sans-serif;
  color:var(--muted,rgba(255,255,255,.58));
}
.sedes__count{
  display:flex;align-items:baseline;gap:12px;
}
.sedes__count-num{
  margin:0;
  font:800 clamp(36px, 5vw, 52px)/.9 "Geist Sans",system-ui,sans-serif;
  letter-spacing:-.06em;color:var(--ink,#fff);
  font-variant-numeric:tabular-nums;
}
.sedes__count-meta{
  margin:0;max-width:14ch;
  font:650 11px/1.35 "Geist Sans",system-ui,sans-serif;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--muted-2,rgba(255,255,255,.45));
}

.sedes__sheet{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:clamp(12px, 1.6vw, 18px);
  margin:0 0 clamp(28px, 4vh, 40px);
  border:0;
}
/* Ficha por sede (no celda de tabla). Dark: panel film. Light: papel. */
.sedes__card{
  --sedes-lift:0px;
  --sedes-ficha:#fff;
  --sedes-ficha-ink:#1a1b1d;
  --sedes-ficha-muted:rgba(26,27,29,.58);
  --sedes-ficha-soft:rgba(26,27,29,.48);
  --sedes-ficha-line:rgba(26,27,29,.12);
  position:relative;
  display:flex;flex-direction:column;
  min-height:clamp(300px, 40vw, 400px);
  padding:18px 16px 16px;
  color:var(--charcoal,#f2f3f4);
  overflow:hidden;
  border:1px solid var(--line-2,rgba(255,255,255,.1));
  background:rgba(255,255,255,.028);
  box-shadow:none;
  transform:translate3d(0, var(--sedes-lift), 0);
  transition:
    transform .45s cubic-bezier(.16,1,.3,1),
    background .35s ease,
    border-color .35s ease,
    box-shadow .45s cubic-bezier(.16,1,.3,1),
    color .3s ease;
}
.sedes__hit{
  position:absolute;inset:0;z-index:2;
  border-radius:inherit;
  text-indent:-9999px;overflow:hidden;
  color:transparent;
}
.sedes__card--link{cursor:pointer}
.sedes__card--link .sedes__top,
.sedes__card--link .sedes__stats,
.sedes__card--link .sedes__media,
.sedes__card--link .sedes__foot-card{position:relative;z-index:1}
.sedes__card--link .sedes__phone{position:relative;z-index:3}
@media (hover:hover) and (pointer:fine){
  .sedes__card:hover{
    --sedes-lift:-6px;
    background:var(--sedes-ficha);
    border-color:rgba(26,27,29,.1);
    color:var(--sedes-ficha-ink);
    box-shadow:
      0 1px 0 rgba(255,255,255,.55) inset,
      0 18px 42px -22px rgba(0,0,0,.55);
  }
  .sedes__card:hover .sedes__name,
  .sedes__card:hover .sedes__stat-val,
  .sedes__card:hover .sedes__phone{
    color:var(--sedes-ficha-ink);
  }
  .sedes__card:hover .sedes__tag,
  .sedes__card:hover .sedes__addr{
    color:var(--sedes-ficha-muted);
  }
  .sedes__card:hover .sedes__idx,
  .sedes__card:hover .sedes__stat-lab{
    color:var(--sedes-ficha-soft);
  }
  .sedes__card:hover .sedes__stats{
    border-top-color:var(--sedes-ficha-line);
    border-bottom-color:var(--sedes-ficha-line);
  }
  .sedes__card:hover .sedes__paper{
    background:rgba(26,27,29,.08);
  }
  .sedes__card:hover .sedes__paper--b{
    background:rgba(26,27,29,.12);
  }
  .sedes__card:hover .sedes__shot{
    background:#eceae8;
    border-color:rgba(26,27,29,.12);
  }
  .sedes__card:hover .sedes__paper--a{transform:translate(-4px,-6px) rotate(-1.2deg)}
  .sedes__card:hover .sedes__paper--b{transform:translate(5px,-4px) rotate(1.4deg)}
  .sedes__card:hover .sedes__shot img,
  .sedes__card:hover .sedes__video{
    filter:grayscale(0) contrast(1.02) brightness(1);
    transform:scale(1.04);
  }
  .sedes__card:hover .sedes__phone{
    border-bottom-color:var(--orange,#FF6600);
  }
}

.sedes__top{
  display:grid;grid-template-columns:1fr auto;
  gap:10px;align-items:start;
  margin-bottom:14px;
}
.sedes__name{
  margin:0;
  font:650 clamp(20px, 2.2vw, 26px)/1.05 "Geist Sans",system-ui,sans-serif;
  letter-spacing:-.03em;
  color:var(--ink,#fff);
}
.sedes__tag{
  margin:6px 0 0;
  font:500 13px/1.35 "Geist Sans",system-ui,sans-serif;
  color:var(--muted,rgba(255,255,255,.58));
}
.sedes__idx{
  margin:2px 0 0;
  font:650 11px/1 "Geist Sans",system-ui,sans-serif;
  letter-spacing:.18em;
  color:var(--muted-2,rgba(255,255,255,.45));
  font-variant-numeric:tabular-nums;
}

.sedes__stats{
  display:grid;grid-template-columns:1fr 1fr;
  gap:10px 14px;
  margin:0 0 16px;
  padding:12px 0;
  border-top:1px solid var(--line,rgba(255,255,255,.1));
  border-bottom:1px solid var(--line,rgba(255,255,255,.1));
}
.sedes__stat{min-width:0}
.sedes__stat-val{
  margin:0;
  font:750 clamp(22px, 2.4vw, 30px)/1 "Geist Sans",system-ui,sans-serif;
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
  color:var(--ink,#fff);
}
.sedes__stat-lab{
  margin:5px 0 0;
  font:500 11px/1.3 "Geist Sans",system-ui,sans-serif;
  color:var(--muted-2,rgba(255,255,255,.48));
}

.sedes__media{
  position:relative;
  margin-top:auto;
  padding-top:14px;
}
.sedes__paper{
  position:absolute;left:8%;right:8%;height:16px;bottom:calc(58% + 4px);
  border-radius:4px;
  background:var(--line-2,rgba(255,255,255,.07));
  pointer-events:none;
  transition:transform .45s cubic-bezier(.16,1,.3,1);
}
.sedes__paper--a{transform:translate(-2px,-3px) rotate(-.6deg)}
.sedes__paper--b{
  bottom:calc(58% + 9px);
  background:var(--line,rgba(255,255,255,.1));
  transform:translate(3px,-1px) rotate(.7deg);
}
.sedes__shot{
  position:relative;z-index:1;
  aspect-ratio:3 / 2;
  border-radius:0;overflow:hidden;
  background:var(--surface,#12151a);
  border:1px solid var(--line-2,rgba(255,255,255,.08));
}
.sedes__shot img,
.sedes__video{
  width:100%;height:100%;object-fit:cover;display:block;
  filter:grayscale(1) contrast(1.06) brightness(.88);
  transform:scale(1.01);
  transition:filter .45s ease, transform .6s cubic-bezier(.16,1,.3,1);
}
.sedes__video{
  position:absolute;inset:0;
  pointer-events:none;
}
.sedes__shot.has-video img{
  opacity:0;
  position:absolute;inset:0;
}

.sedes__foot-card{
  display:flex;flex-direction:column;gap:8px;
  margin-top:12px;
}
.sedes__addr{
  margin:0;
  font:400 12px/1.4 "Geist Sans",system-ui,sans-serif;
  color:var(--muted,rgba(255,255,255,.58));
  text-wrap:pretty;
}
.sedes__phone{
  align-self:flex-start;
  display:inline-flex;align-items:center;min-height:36px;padding:6px 0;
  font:650 12px/1 "Geist Sans",system-ui,sans-serif;
  letter-spacing:.04em;
  color:var(--ink,#fff);text-decoration:none;
  border-bottom:1px solid var(--orange,#FF6600);
  transition:opacity .2s ease, border-color .2s ease;
}
.sedes__phone:hover{opacity:.78;border-color:var(--orange-hot,#FF9900)}

.sedes__foot{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;
  gap:16px 24px;
  padding-top:clamp(18px, 2.4vh, 24px);
  border-top:1px solid var(--line,rgba(255,255,255,.1));
}
.sedes__note{
  margin:0;max-width:48ch;
  font:400 14px/1.45 "Geist Sans",system-ui,sans-serif;
  color:var(--muted,rgba(255,255,255,.55));
}

.sedes.is-pending .sedes__card{
  opacity:0;transform:translate3d(0, 22px, 0);
}
.sedes.is-active .sedes__card{
  animation:sedesCardIn .7s cubic-bezier(.16,1,.3,1) forwards;
  animation-delay:calc(var(--i, 0) * 90ms + 80ms);
}
@keyframes sedesCardIn{
  to{opacity:1;transform:translate3d(0, 0, 0)}
}

@media (max-width:1100px){
  .sedes__sheet{grid-template-columns:repeat(2, minmax(0, 1fr))}
}
@media (max-width:900px){
  .sedes__in{width:min(1180px, 100% - 40px)}
  .sedes__head{grid-template-columns:1fr}
  .sedes__title .hold__shutter-line--main{flex-wrap:wrap;row-gap:.1em;font-size:clamp(22px, 6.2vw, 34px)}
}
@media (max-width:640px){
  .sedes__sheet{grid-template-columns:1fr}
  .sedes__card{min-height:0}
}

/* Light: reposo = papel denso (más oscuro que mist); hover = ficha blanca */
[data-theme="light"] .sedes__card{
  background:color-mix(in srgb, #1a1b1d 7%, var(--mist,#eceae8));
  border-color:rgba(26,27,29,.14);
  box-shadow:none;
}
[data-theme="light"] .sedes__shot{
  background:rgba(26,27,29,.05);
  border-color:rgba(26,27,29,.1);
}
[data-theme="light"] .sedes__shot img,
[data-theme="light"] .sedes__video{
  filter:grayscale(1) contrast(1.04) brightness(.95);
}
[data-theme="light"] .sedes__paper{
  background:rgba(26,27,29,.06);
}
[data-theme="light"] .sedes__paper--b{
  background:rgba(26,27,29,.09);
}
@media (hover:hover) and (pointer:fine){
  [data-theme="light"] .sedes__card:hover{
    background:var(--sedes-ficha,#fff);
    border-color:rgba(26,27,29,.16);
    box-shadow:
      0 1px 0 rgba(255,255,255,.9) inset,
      0 22px 48px -26px rgba(26,27,29,.38);
  }
  [data-theme="light"] .sedes__card:hover .sedes__shot{
    background:#eceae8;
    border-color:rgba(26,27,29,.12);
  }
  [data-theme="light"] .sedes__card:hover .sedes__shot img,
  [data-theme="light"] .sedes__card:hover .sedes__video{
    filter:grayscale(.15) contrast(1.02) brightness(1);
  }
}

@media (prefers-reduced-motion:reduce){
  .sedes__title.is-shutter .hold__shutter-base,
  .sedes__title.is-shutter .hold__shutter-slice{animation:none!important;opacity:1!important;filter:none!important;transform:none!important}
  .sedes__title::before{width:48px}
  .sedes.is-pending .sedes__card,
  .sedes.is-active .sedes__card{opacity:1;transform:none;animation:none}
  .sedes__card,
  .sedes__paper{transition:none}
}
