/* ============================================================
   PIE DE PÁGINA — rediseñado; conserva TODO el contenido legal.
   Cuatro pisos: cierre de marca · directorio · avisos legales · firma.
   ============================================================ */
.ft{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);border-top:1px solid var(--hair);
  padding-top:clamp(84px,11vw,170px);color:var(--cream-2)}
.ft__glow{position:absolute;z-index:-1;left:50%;top:-38%;width:min(1500px,150vw);aspect-ratio:1;transform:translateX(-50%);
  background:radial-gradient(closest-side,rgba(216,166,70,.2),rgba(216,166,70,.05) 45%,transparent 70%);pointer-events:none}

/* 1 · Cierre de marca */
.ft__top{text-align:center;padding-bottom:clamp(64px,9vw,130px)}
.ft__eyebrow{justify-content:center}
.ft__title{font:500 clamp(2.3rem,6.2vw,6rem)/1.02 var(--serif);letter-spacing:-.015em;color:var(--cream);max-width:17ch;margin:22px auto 0}
.ft__title em{font-style:italic}
.ft__sub{margin:24px auto 0;max-width:56ch;font-size:var(--fs-lead);line-height:1.6;color:var(--cream-2)}
.ft__ctas{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:38px}

/* 2 · Directorio */
.ft__grid{display:grid;grid-template-columns:1.25fr .8fr 1.15fr 1.15fr;gap:clamp(28px,4vw,72px);
  padding-block:clamp(44px,6vw,84px);border-top:1px solid var(--line)}
.ft__logo{width:132px;height:auto;margin-bottom:26px}
.ft__addr{font-style:normal;font-size:.92rem;line-height:1.7;color:var(--cream-2)}
.ft__addr strong{display:inline-block;margin-bottom:6px;color:var(--cream);font-weight:700}
.ft__contact{margin-top:22px;display:grid;gap:10px}
.ft__contact li{display:grid;grid-template-columns:58px 1fr;align-items:baseline;gap:10px;font-size:.92rem}
.ft__contact span{font:700 .68rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.ft__contact a{color:var(--cream);min-height:28px;display:inline-flex;align-items:center;transition:color .3s}
.ft__contact a:hover{color:var(--gold-2)}
.ft__social{display:flex;gap:10px;margin-top:26px}
.ft__social a{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line-2);border-radius:50%;color:var(--cream);
  transition:border-color .4s,color .4s,background .4s,transform .6s var(--ease)}
.ft__social a:hover{border-color:var(--gold);color:var(--ink);background:var(--gold-grad);transform:translateY(-3px)}
.ft__social svg{width:18px;height:18px}
.ft__h{font:700 .74rem/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-2);margin-bottom:20px}
.ft__list{display:grid;gap:4px}
.ft__list a,.ft__pending{display:inline-flex;align-items:center;min-height:36px;font-size:.95rem;line-height:1.35;color:var(--cream-2);
  background:linear-gradient(var(--gold-2),var(--gold-2)) 0 calc(100% - 6px)/0 1px no-repeat;transition:color .3s,background-size .5s var(--ease)}
.ft__list a:hover{color:var(--cream);background-size:100% 1px}
.ft__pending{color:var(--mute)}
.ft__tag{display:inline-block;margin-left:6px;padding:4px 9px;border:1px solid var(--line-2);border-radius:999px;font:600 .66rem/1 var(--sans);font-style:normal;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);vertical-align:middle}
.ft__note{margin-top:16px;font-size:.8rem;line-height:1.55;color:var(--mute);max-width:36ch}

/* 3 · Avisos legales: texto completo, legible y siempre visible */
.ft__legal{display:grid;gap:18px;padding-bottom:clamp(40px,5vw,70px)}
.ft__disc,.ft__notice{border:1px solid var(--line);border-radius:var(--r);background:rgba(8,18,28,.6);padding:clamp(20px,2.6vw,34px)}
.ft__disc .ft__h,.ft__notice .ft__h{margin-bottom:0}
.ft__notice .ft__h{margin-bottom:14px}
.ft__disc-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.ft__disc-tabs{display:inline-flex;padding:3px;border:1px solid var(--line-2);border-radius:999px}
.ft__disc-tabs button{background:none;border:0;-webkit-appearance:none;appearance:none;cursor:pointer;min-width:48px;min-height:38px;padding:0 14px;border-radius:999px;font:700 .74rem/1 var(--sans);letter-spacing:.12em;color:var(--cream-2);transition:background .4s,color .4s}
.ft__disc-tabs button[aria-pressed=true]{background:var(--gold-grad);color:var(--ink)}
.ft__disc-body p,.ft__notice p{font-size:.86rem;line-height:1.7;color:var(--cream-2);max-width:120ch}
.ft__disc-body p+p,.ft__notice p+p{margin-top:10px}
/* Sin JS se muestran los dos idiomas; con JS, el del usuario (el otro queda a un toque) */
html.js .ft__disc[data-disc-on=es] [data-disc-pane=en],
html.js .ft__disc[data-disc-on=en] [data-disc-pane=es]{display:none}

/* 4 · Firma */
.ft ul{list-style:none;margin:0;padding:0}
.ft__word{position:relative;margin:clamp(20px,4vw,60px) auto 0;width:min(1500px,calc(100% - var(--gut)*2));aspect-ratio:3048/1016;user-select:none;pointer-events:none}
.ft__word-fill{position:absolute;inset:0;font-size:0;color:transparent;
  background:linear-gradient(0deg,var(--gold-3) 0%,var(--gold) 40%,var(--gold-2) 100%) 0 100%/100% var(--fill,0%) no-repeat,rgba(216,166,70,.13);
  -webkit-mask:url(../assets/img/brand/fital-logo-mask.svg) center/contain no-repeat;mask:url(../assets/img/brand/fital-logo-mask.svg) center/contain no-repeat}
html.reduce .ft__word-fill,html.no-js .ft__word-fill{--fill:100%}
/* Oro líquido: comun.js pinta el nivel en un canvas 2D dentro de la máscara; queda la silueta tenue del logotipo vacío */
.ft__word.is-liquid .ft__word-fill{background:rgba(216,166,70,.13)}
.ft__word-cv{position:absolute;inset:0;width:100%;height:100%;max-width:none;pointer-events:none}
.ft__base{display:flex;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;padding-block:22px calc(22px + env(safe-area-inset-bottom));
  border-top:1px solid var(--line);font-size:.8rem;line-height:1.5;color:var(--mute)}

@media (max-width:1100px){
  .ft__grid{grid-template-columns:1fr 1fr}
  .ft__col--brand{grid-column:1/-1}
}
@media (max-width:767px){.ft{padding-top:clamp(56px,9vw,80px)}}
@media (max-width:640px){
  .ft__grid{grid-template-columns:1fr;gap:36px}
  .ft__ctas .btn{width:100%;justify-content:center}
  .ft__base{flex-direction:column}
  .ft__disc-head{align-items:flex-start}
}
/* Táctil (celular y tableta chica): objetivos de 44 px y texto de 12 px o más; el escritorio no cambia. */
@media (pointer:coarse) and (max-width:899px){
  .ft__contact{gap:2px}
  .ft__contact li{align-items:center}
  .ft__contact span{font-size:max(.75rem,12px)}
  .ft__contact a,.ft__list a,.ft__pending{min-height:44px;display:inline-flex;align-items:center}
  .ft__list{gap:0}
  .ft__social{margin-top:20px}
  .ft__tag{font-size:max(.75rem,12px);margin-left:0}
  .ft__h,.ft__disc-tabs button{font-size:max(.74rem,12px)}
}
