/* au·di·tor — cinematic editorial layer. Content remains visible without JS. */
.fa, .fa-ui, .fa-legacy {
  --fa-premium-ink: #07101C;
  --fa-premium-paper: #FCFBF9;
  --fa-premium-red: #D6000C;
  --fa-premium-ease: cubic-bezier(.16,1,.3,1);
}

/* Reading widths and article indexes belong to the existing reading layer. */
.fa .fa-salto {
  position: fixed;
  z-index: 1400;
  top: -100px;
  max-width: calc(100vw - 24px);
  min-height: 44px;
  border: 1px solid rgba(255,255,255,.62);
  background: #07101C;
  color: #fff !important;
}
.fa .fa-salto:focus, .fa .fa-salto:focus-visible { top: 12px; }
.fa :is(.fa-hd,.fa-osc,.fa-ph-osc) :is(a,button,summary,input,select,textarea,[tabindex]):focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}

/* Same definition, closer composition; tablets retain the two protagonists. */
.fa .fa-hd .fa-hd-in {
  grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
  align-items: center;
  gap: 30px clamp(30px,4.2vw,64px);
  padding-top: calc(var(--fa-header-height,72px) + clamp(36px,4vw,60px));
  padding-bottom: clamp(28px,3.4vw,48px);
}
.fa .fa-hd-w { font-size: clamp(88px,11.4vw,164px); }
.fa .fa-hd-k { margin-top: 15px; }
.fa .fa-hd-def {
  max-width: 24ch;
  margin-top: clamp(22px,2.2vw,32px);
  font-size: clamp(27px,2.7vw,39px);
  line-height: 1.16;
}
.fa .fa-hd .fa-hd-firma {
  margin-top: 24px;
  padding-top: 17px;
  gap: 5px;
}
.fa .fa-hd-firma span { max-width: 44ch; line-height: 1.45; }
.fa .fa-hd-acc { margin-top: 24px; gap: 10px 18px; }
.fa .fa-hd-acc .fa-btn { min-height: 48px; padding-inline: 21px; font-size: 14px; }
.fa .fa-hd-vis { width: 100%; max-width: 460px; }
.fa .fa-h-ev-marco { border-radius: 16px; }
.fa .fa-h-dest { margin-top: 16px; }
.fa .fa-h-dest-c { width: 61px; height: 61px; }
.fa .fa-h-dest-l { font-size: 11px; }
.fa .fa-hd-vis {
  --fa-thumb-size: 61px;
  --fa-thumb-label-line: 15.4px;
  --fa-thumb-top-gap: 16px;
  /* Circle + flex gap + label line + button padding + preceding margin. */
  padding-bottom: calc(var(--fa-thumb-size) + 8px + var(--fa-thumb-label-line) + 8px + var(--fa-thumb-top-gap));
}
.fa .fa-h-dest {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}
.fa .fa-hd-datos { padding-top: 20px; padding-bottom: 23px; }
.fa .fa-hd-datos :is(b,strong) { font-size: 14px !important; }
.fa .fa-hd-datos li > span { font-size: 12px; line-height: 1.45; }

/* Desktop streaming reserve: the measured metadata row is two text lines
   (three in English), plus its existing 20/23px padding and 1px border.
   Once all four items exist, the original row owns its natural height again. */
@media (min-width:1101px) {
  .fa .fa-hd { --fa-data-slot: calc(20px + 23px + 1px + 2 * 17.4px); }
  .fa:lang(en) .fa-hd { --fa-data-slot: calc(20px + 23px + 1px + 3 * 17.4px); }
  .fa .fa-hd:not(:has(.fa-hd-datos > li:nth-child(4))) { padding-bottom: var(--fa-data-slot); }
  .fa .fa-hd:not(:has(.fa-hd-datos > li:nth-child(4))) > .fa-wrap:has(.fa-hd-datos) {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }
}

/* Disciplinary cinema: an editorial spread, with visible HTML meaning. */
.fa-premium-disciplines { min-width: 0; }
.fa-premium-tabs {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 0;
  margin: 0 0 22px;
  padding: 0;
  border-bottom: 1px solid rgba(7,16,28,.18);
}
.fa-premium-tabs button[role="tab"] {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  min-width: 0;
  min-height: 64px;
  margin: 0;
  padding: 12px 22px 18px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #59616C;
  font: 550 clamp(15px,1.35vw,19px)/1.3 var(--sans,Inter,sans-serif);
  text-align: left;
  cursor: pointer;
  transition: color .18s, background-color .18s;
}
.fa-premium-tabs button[role="tab"]::after {
  content: "";
  position: absolute;
  left: 0;
  right: 22px;
  bottom: -1px;
  height: 3px;
  background: #D6000C;
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: transform .3s var(--fa-premium-ease);
}
.fa-premium-tabs button[role="tab"][aria-selected="true"] { color: #07101C; font-weight: 650; }
.fa-premium-tabs button[role="tab"][aria-selected="true"]::after { transform: scaleX(1); }
.fa-premium-tabs button[role="tab"]:focus-visible { outline-offset: -4px; border-radius: 4px; }
.fa-premium-tabs button[role="tab"] :is(svg,.i) { flex: none; width: 18px; height: 18px; }
.fa-premium-stage {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(7,16,28,.15);
  border-radius: 18px;
  background: #07101C;
  box-shadow: 0 28px 58px -44px rgba(7,16,28,.52);
  color: #fff;
  isolation: isolate;
}
.fa-premium-panel {
  display: grid;
  grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  align-items: stretch;
  min-width: 0;
  margin: 0;
  background: #07101C;
  color: #fff;
}
.fa-premium-panel[hidden] { display: none !important; }
.fa-premium-panel > :is(div,article,section):not(.fa-premium-film),
.fa-premium-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: clamp(32px,3.6vw,54px);
  background: linear-gradient(130deg,#0B1523,#07101C 72%);
}
.fa-premium-norm {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 24px;
  color: rgba(255,255,255,.7);
  font: 550 12px/1.4 var(--sans,Inter,sans-serif);
  letter-spacing: .035em;
}
.fa-premium-norm::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #D6000C; }
.fa-premium-panel h3 {
  max-width: 17ch;
  margin: 0 0 20px;
  color: #fff;
  font-family: var(--serif,Fraunces,Georgia,serif);
  font-variation-settings: 'SOFT' 0,'WONK' 0;
  font-weight: 380;
  font-size: clamp(31px,3.15vw,46px);
  line-height: 1.04;
  letter-spacing: -.03em;
  text-wrap: balance;
}
.fa-premium-panel p:not(.fa-premium-norm):not(.fa-premium-film-label):not(.fa-premium-film-status) {
  max-width: 36ch;
  margin: 0;
  color: rgba(255,255,255,.78);
  font: 400 clamp(15px,1.35vw,18px)/1.6 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
}
.fa-premium-links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 20px;
  margin-top: auto;
  padding-top: 29px;
}
.fa-premium-links :is(a,button) {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  max-width: 100%;
  color: #fff;
  font: 600 14px/1.4 var(--sans,Inter,sans-serif);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
  text-decoration-color: rgba(255,255,255,.4);
}
.fa-premium-links .fa-btn { padding: 10px 18px; border: 1px solid rgba(255,255,255,.3); background: transparent; text-decoration: none; white-space: normal; text-align: center; }
.fa-premium-links .fa-btn-rojo { border-color: #B01018; background: #B01018; color: #fff; }
.fa-premium-links :is(svg,.i) { flex: none; width: 13px; height: 13px; }
.fa-premium-stage :is(a,button,[tabindex]):focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.fa-premium-stage > .fa-premium-panel:focus-visible { outline: 2px solid #fff; outline-offset: -6px; border-radius: inherit; }
.fa-premium-film {
  position: relative;
  z-index: 1;
  align-self: stretch;
  min-width: 0;
  width: 100%;
  min-height: 400px;
  height: auto;
  aspect-ratio: auto;
  margin: 0;
  overflow: hidden;
  border-left: 1px solid rgba(255,255,255,.12);
  background: #0C1626;
  isolation: isolate;
}
.fa-premium-film > picture,
.fa-premium-film > img,
.fa-premium-film > video,
.fa-premium-film > picture > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  object-fit: cover;
  object-position: center;
}
.fa-premium-film > picture, .fa-premium-film > img { z-index: 0; }
.fa .fa-premium-film > .fa-premium-cover {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
.fa .fa-premium-film > picture.fa-premium-cover > img { width: 100%; height: 100%; aspect-ratio: auto; }
.fa-premium-film > video {
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity .5s ease;
}
.fa-premium-film.is-playing > video { opacity: 1; }
.fa-premium-film::after {
  content: "";
  position: absolute;
  inset: 45% 0 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg,transparent 10%,rgba(7,16,28,.1) 60%,rgba(7,16,28,.74));
}
.fa-premium-film :is(figcaption,.fa-premium-film-label,.fa-premium-origin) {
  position: absolute;
  left: 22px;
  right: 22px;
  bottom: 18px;
  z-index: 3;
  margin: 0;
  color: rgba(255,255,255,.85);
  font: 450 11px/1.5 var(--sans,Inter,sans-serif);
  letter-spacing: .025em;
  pointer-events: none;
}
.fa-premium-film figcaption :is(.fa-premium-film-label,.fa-premium-origin) { position: static; display: block; }
.fa-premium-watch {
  position: absolute;
  right: 20px;
  bottom: 53px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 44px;
  min-height: 44px;
  max-width: calc(100% - 40px);
  margin: 0;
  padding: 11px 18px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 999px;
  background: rgba(7,16,28,.8);
  backdrop-filter: blur(12px);
  color: #fff;
  font: 600 12px/1.4 var(--sans,Inter,sans-serif);
  cursor: pointer;
  transition: background-color .18s,color .18s,border-color .18s;
}
.fa-premium-watch :is(svg,.i) { flex: none; width: 15px; height: 15px; }
.fa-premium-film-status {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 110px;
  z-index: 5;
  margin: 0;
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 9px;
  background: rgba(7,16,28,.94);
  color: #fff;
  font: 400 12px/1.5 var(--sans,Inter,sans-serif);
}
.fa-premium-film-status:empty, .fa-premium-film-status[hidden] { display: none; }
.fa-premium-status.is-error {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 110px;
  z-index: 5;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px 13px;
  overflow: visible;
  clip: auto;
  clip-path: none;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 9px;
  background: rgba(7,16,28,.94);
  color: #fff;
  font: 400 12px/1.5 var(--sans,Inter,sans-serif);
}

/* Own conceptual artwork; source photographs keep their original treatment. */
.fa :is(.fa-cv-n,.fa-cv-big) { display: none; }
.fa .fa-cv { --cvp: clamp(22px,6cqi,29px); border-radius: 15px; }
.fa .fa-cv-top { top: 23px; z-index: 2; }
.fa .fa-cv-dom { padding: 5px 10px; border: 1px solid rgba(255,255,255,.19); font-size: 11px; font-weight: 550; letter-spacing: .025em; }
.fa .fa-cv-t { max-width: 23ch; font-size: clamp(22px,7.6cqi,34px); line-height: 1.08; font-weight: 400; }
.fa .fa-cv-m { margin-top: 2px; font-size: 12px; font-weight: 450; }
.fa .fa-premium-norm:not(:where(.fa-premium-panel .fa-premium-norm,.fa-cv .fa-premium-norm)) { margin: 0 0 8px; color: #59616C; font-size: 11px; }
.fa .fa-osc .fa-premium-norm { color: rgba(255,255,255,.72); }
.fa .fa-cv > .fa-premium-norm { margin: 0; color: rgba(255,255,255,.75); font-size: 11px; }
.fa .fa-cv[data-t="claro"] > .fa-premium-norm { color: #59616C; }
.fa .fa-premium-card-cover > .fa-premium-origin {
  position: absolute;
  left: var(--cvp,25px);
  right: var(--cvp,25px);
  top: 62px;
  z-index: 2;
  margin: 0;
  color: rgba(255,255,255,.76);
  font: 450 10.5px/1.5 var(--sans,Inter,sans-serif);
  letter-spacing: .015em;
}
.fa .fa-premium-card-cover[data-t="claro"] > .fa-premium-origin { color: #59616C; }
.fa .fa-cv:has(.fa-premium-cover) { min-height: var(--cvh,420px); background: #07101C; }
.fa .fa-cv > .fa-premium-cover,
.fa .fa-cv > picture.fa-premium-cover > img,
.fa .fa-cv > .fa-premium-cover > picture,
.fa .fa-cv > .fa-premium-cover > picture > img,
.fa .fa-cv > .fa-premium-cover > img {
  position: absolute;
  inset: 0;
  z-index: -3;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  object-fit: cover;
  object-position: center;
  transition: transform .7s var(--fa-premium-ease);
}
.fa .fa-cv:has(.fa-premium-cover)::after {
  inset: 0;
  width: auto;
  height: auto;
  aspect-ratio: auto;
  z-index: -1;
  opacity: 1;
  transform: none;
  transition: none;
  pointer-events: none;
  background: linear-gradient(180deg,rgba(7,16,28,.32),transparent 24%,rgba(7,16,28,.06) 37%,rgba(7,16,28,.76) 66%,#07101C 100%);
}
.fa .fa-cv[data-t="claro"]:has(.fa-premium-cover) { background: #FCFBF9; }
.fa .fa-cv[data-t="claro"]:has(.fa-premium-cover)::after {
  background: linear-gradient(180deg,rgba(252,251,249,.18),transparent 24%,rgba(252,251,249,.13) 39%,rgba(252,251,249,.9) 68%,#FCFBF9);
}
.fa .fa-cv[data-t="claro"] .fa-cv-dom { border-color: rgba(7,16,28,.14); background: rgba(252,251,249,.88); }
.fa .fa-cv:has(.fa-premium-cover)::before {
  content: "";
  position: absolute;
  inset: 13px;
  z-index: 2;
  width: auto;
  height: auto;
  aspect-ratio: auto;
  opacity: 1;
  transform: none;
  filter: none;
  background: none;
  border: 1px solid transparent;
  border-radius: 8px;
  pointer-events: none;
  transition: border-color .25s;
}
.fa .fa-cv:has(.fa-premium-cover):focus-visible::before { border-color: rgba(255,255,255,.6); }
.fa .fa-cv[data-t="claro"]:focus-visible::before { border-color: rgba(7,16,28,.5); }
.fa .fa-premium-cover:not(:where(.fa-cv > .fa-premium-cover)),
.fa-legacy .fa-premium-cover {
  position: relative;
  isolation: isolate;
  display: block;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(7,16,28,.13);
  border-radius: 15px;
  background: #07101C;
  box-shadow: 0 22px 45px -37px rgba(7,16,28,.38);
}
.fa img.fa-premium-cover:not(:where(.fa-cv > .fa-premium-cover)),
.fa-legacy img.fa-premium-cover { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
.fa :is(picture,figure,div).fa-premium-cover:not(:where(.fa-cv > .fa-premium-cover)) > :is(img,picture),
.fa-legacy :is(picture,figure,div).fa-premium-cover > :is(img,picture) { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
.fa .fa-ph :is(.fa-premium-cover,.fa-premium-cover img) { border-radius: 16px; }
.fa .fa-osc .fa-premium-cover { border-color: rgba(255,255,255,.17); }
.fa .fa-tema-ic:has(.fa-premium-cover) { width: 100%; min-width: 0; height: auto; padding: 0; }
.fa .fa-card:has(.fa-premium-cover) { overflow: hidden; }
.fa .fa-card:has(.fa-premium-cover) .fa-premium-cover { box-shadow: none; }
.fa .fa-premium-article-visual {
  display: block;
  min-width: 0;
  justify-self: end;
  width: 100%;
  max-width: 360px;
}
.fa .fa-premium-article-visual > .fa-premium-cover {
  display: block;
  width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 4 / 5;
  align-self: center;
  overflow: hidden;
  border-radius: 16px;
}
.fa .fa-premium-article-visual > .fa-premium-cover > :is(picture,img,video),
.fa .fa-premium-article-visual > .fa-premium-cover > picture > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  border: 0;
  border-radius: 0;
  aspect-ratio: auto;
  object-fit: cover;
}
.fa .fa-premium-article-visual > .fa-premium-cover > picture { box-shadow: none; }
.fa .fa-premium-article-visual > .fa-premium-cover > video { opacity: 0; transition: opacity .45s ease; pointer-events: none; }
.fa .fa-premium-article-visual > .fa-premium-cover.is-playing > video,
.fa .fa-premium-article-visual > .fa-premium-cover > video.is-playing { opacity: 1; }
.fa .fa-premium-article-visual > .fa-premium-cover::after { content: ""; position: absolute; inset: 56% 0 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg,transparent,rgba(7,16,28,.72)); }
.fa .fa-premium-article-visual > .fa-premium-cover > :is(figcaption,.fa-premium-origin) { position: absolute; left: 18px; right: 18px; bottom: 17px; z-index: 3; color: rgba(255,255,255,.84); font: 450 11px/1.5 var(--sans,Inter,sans-serif); }

/* A small visual library: subject, image and useful action, without folios. */
.fa-premium-library {
  display: block;
  min-width: 0;
  margin: 0;
  padding-block: clamp(48px,5.4vw,78px);
  border-top: 1px solid rgba(7,16,28,.12);
  background: #FCFBF9;
}
.fa-premium-library h2 { max-width: 24ch; margin: 0 0 30px; }
.fa-premium-library-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 24px 18px;
  min-width: 0;
  margin-top: 28px;
}
.fa-premium-library-grid > :is(h2,p,header,.fa-cab) { grid-column: 1 / -1; }
.fa .fa-premium-library-grid figure.fa-premium-cover {
  position: relative;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(7,16,28,.16);
  border-radius: 14px;
  background: #07101C;
  color: #fff;
  isolation: isolate;
}
.fa .fa-premium-library-grid figure.fa-premium-cover > :is(picture,img) { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 0; border: 0; }
.fa .fa-premium-library-grid figure.fa-premium-cover > picture > img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.fa-premium-library-grid figure > video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; pointer-events: none; transition: opacity .45s ease; }
.fa-premium-library-grid figure.is-playing > video,
.fa-premium-library-grid figure > video.is-playing { opacity: 1; }
.fa-premium-library-grid figure::after { content: ""; position: absolute; inset: 46% 0 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg,transparent,rgba(7,16,28,.82) 74%,#07101C); }
.fa-premium-library-grid figure > figcaption { position: absolute; left: 18px; right: 18px; bottom: 18px; z-index: 3; display: grid; grid-template-columns: minmax(0,1fr); gap: 7px; min-width: 0; color: #fff; }
.fa-premium-library figcaption :is(h3,strong,b) { display: block; min-width: 0; max-width: 100%; margin: 0; color: #fff; font: 400 clamp(20px,1.9vw,27px)/1.12 var(--serif,Fraunces,Georgia,serif); letter-spacing: -.02em; text-wrap: balance; overflow-wrap: anywhere; hyphens: auto; }
.fa-premium-library figcaption :is(p,span,small) { margin: 0; color: rgba(255,255,255,.76); font: 400 11px/1.5 var(--sans,Inter,sans-serif); }
.fa-premium-library .fa-premium-watch { top: 16px; right: 14px; bottom: auto; padding: 10px 13px; }
.fa-premium-library .fa-premium-watch:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.fa-premium-library-item {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(7,16,28,.15);
  border-radius: 14px;
  background: #fff;
  transition: border-color .2s, box-shadow .3s var(--fa-premium-ease);
}
.fa .fa-premium-library-item > figure.fa-premium-cover {
  flex: none;
  border: 0;
  border-radius: 13px 13px 0 0;
  box-shadow: none;
}
.fa-premium-library-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  min-width: 0;
  padding: 19px 18px 16px;
  background: #fff;
}
.fa-premium-library-copy p {
  max-width: 42ch;
  margin: 0;
  color: #3A414A;
  font: 400 14px/1.6 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
  overflow-wrap: break-word;
}
.fa-premium-read {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  margin-top: auto;
  padding-top: 12px;
  color: #07101C;
  font: 600 13px/1.45 var(--sans,Inter,sans-serif);
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
  text-decoration-color: rgba(7,16,28,.36) !important;
  overflow-wrap: anywhere;
}
.fa-premium-read :is(svg,.i) { flex: none; width: 12px; height: 12px; }
.fa-premium-library-item:focus-within { border-color: #B01018; }
.fa-premium-read:focus-visible { outline: 2px solid #B01018; outline-offset: 4px; }

/* Saved articles remain ordinary links with an explicit remove action. */
.fa-saved-reading {
  display: block;
  min-width: 0;
  padding-block: clamp(42px,5vw,72px);
  border-top: 1px solid rgba(7,16,28,.12);
  background: #F4F4F5;
}
.fa-saved-reading h2 { max-width: 26ch; margin: 0 0 20px; }
.fa-saved-reading-empty {
  max-width: 68ch;
  margin: 0;
  color: #5C6570;
  font: 400 15px/1.65 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
}
.fa-saved-reading-list {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  min-width: 0;
  max-width: 1050px;
  margin-top: 24px;
}
.fa-saved-reading-list:empty { display: none; }
.fa-saved-reading-list > :is(article,div,li) {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 16px;
  min-width: 0;
  margin: 0;
  padding: 18px 20px;
  border: 1px solid rgba(7,16,28,.12);
  border-radius: 12px;
  background: #FCFBF9;
}
.fa-saved-reading-list a {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 44px;
  max-width: 100%;
  color: #07101C;
  font: 550 16px/1.5 var(--sans,Inter,sans-serif);
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
  text-decoration-color: rgba(7,16,28,.3) !important;
  overflow-wrap: anywhere;
}
.fa-saved-reading-list > a { grid-column: 1; padding: 8px 0; }
.fa-saved-reading-list > button { grid-column: 2; }
.fa-saved-reading-list button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 44px;
  min-height: 44px;
  max-width: 100%;
  padding: 10px 15px;
  border: 1px solid rgba(7,16,28,.25);
  border-radius: 999px;
  background: #fff;
  color: #3A414A;
  font: 550 12px/1.4 var(--sans,Inter,sans-serif);
  white-space: normal;
  cursor: pointer;
  transition: border-color .2s, background-color .2s, color .2s;
}
.fa-saved-reading-list :is(a,button):focus-visible { outline: 2px solid #B01018; outline-offset: 4px; }
.fa-saved-reading-empty[hidden], .fa-saved-reading-list[hidden] { display: none !important; }

/* Service and standard covers retain their original words and destinations. */
.fa .page-hero.fa-service-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-top: calc(var(--fa-header-height,72px) + clamp(30px,3.4vw,52px)) !important;
  padding-bottom: clamp(38px,4.5vw,64px);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: linear-gradient(112deg,#07101C 30%,#0C1626);
  color: #fff;
}
.fa .page-hero.fa-service-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg,transparent 34%,#000);
  pointer-events: none;
}
.fa .page-hero.fa-service-hero > .wrap.fa-service-hero-inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(0,.85fr);
  align-items: center;
  gap: 36px clamp(30px,4vw,64px);
  width: min(1300px,calc(100% - clamp(40px,8.88vw,128px)));
  max-width: 1300px;
  margin: 0 auto;
  padding: 0;
}
.fa-service-copy, .fa-service-visual { min-width: 0; }
.fa .fa-service-copy .breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 10px;
  max-width: 100%;
  margin: 0 0 24px;
  color: rgba(255,255,255,.62);
  font: 450 11.5px/1.5 var(--sans,Inter,sans-serif);
  overflow-wrap: anywhere;
}
.fa .fa-service-copy .breadcrumbs a { display: inline-flex; align-items: center; min-height: 44px; color: rgba(255,255,255,.8); }
.fa .fa-service-copy > .eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 16px;
  color: rgba(255,255,255,.76);
  font: 600 12px/1.5 var(--sans,Inter,sans-serif);
  letter-spacing: .035em;
  text-transform: none;
  overflow-wrap: anywhere;
}
.fa .fa-service-copy > .eyebrow::before { flex: none; width: 6px; height: 6px; background: #D6000C; }
.fa .page-hero.fa-service-hero .fa-service-copy h1 {
  max-width: 22ch;
  margin: 0;
  color: #fff;
  font-family: var(--serif,Fraunces,Georgia,serif);
  font-variation-settings: 'SOFT' 0,'WONK' 0;
  font-weight: 380;
  font-size: clamp(40px,4.2vw,62px);
  line-height: 1.06;
  letter-spacing: -.035em;
  text-wrap: balance;
  overflow-wrap: break-word;
}
.fa .page-hero.fa-service-hero .fa-service-copy > .lead {
  max-width: 58ch;
  margin: 24px 0 0;
  color: rgba(255,255,255,.77);
  font: 400 clamp(15px,1.25vw,17px)/1.65 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
}
.fa .page-hero.fa-service-hero .fa-service-copy > .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  min-width: 44px;
  min-height: 48px;
  width: fit-content;
  max-width: 100%;
  margin: 26px 0 0;
  padding: 12px 21px;
  border: 1px solid #B01018;
  border-radius: 999px;
  background: #B01018;
  color: #fff;
  font: 600 14px/1.45 var(--sans,Inter,sans-serif);
  white-space: normal;
  text-align: center;
  text-decoration: none;
  transition: background-color .18s,border-color .18s;
}
.fa .fa-service-copy > .btn > span { flex: none; display: inline-flex; align-items: center; }
.fa .fa-service-copy > .btn :is(svg,.arrow) { flex: none; width: 13px; height: 13px; }
.fa .fa-service-copy :is(a,button,[tabindex]):focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.fa .fa-service-visual {
  justify-self: end;
  width: 100%;
  max-width: 460px;
}
.fa .fa-service-visual > .fa-premium-film {
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  aspect-ratio: 4 / 5;
  border: 1px solid rgba(255,255,255,.23);
  border-radius: 16px;
  background: #0C1626;
  box-shadow: 0 28px 54px -36px rgba(0,0,0,.72);
}
.fa .fa-service-visual .fa-premium-watch { right: 19px; bottom: 51px; min-height: 44px; }
.fa .fa-service-visual .fa-premium-watch:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.fa .fa-service-visual .fa-premium-origin { left: 21px; right: 21px; bottom: 18px; font-size: 11px; }

/* Conceptual films open on request, including when page motion is paused. */
.fa-premium-dialog {
  position: fixed;
  box-sizing: border-box;
  width: min(1120px,calc(100vw - 36px));
  max-width: calc(100vw - 36px);
  max-height: calc(100dvh - 28px);
  margin: auto;
  padding: 64px 18px 22px;
  overflow: auto;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 18px;
  background: #07101C;
  color: #fff;
  box-shadow: 0 30px 90px rgba(0,0,0,.55);
}
.fa-premium-dialog[open] { display: block; }
.fa-premium-dialog :is(a,button) { box-sizing: border-box; }
.fa-premium-dialog::backdrop { background: rgba(3,8,17,.9); backdrop-filter: blur(7px); }
.fa-premium-dialog video {
  display: block;
  width: 100%;
  max-height: calc(100dvh - 200px);
  margin: 0 auto;
  border-radius: 9px;
  background: #030811;
  object-fit: contain;
}
.fa-premium-dialog-close {
  position: absolute;
  top: 10px;
  right: 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 44px;
  min-height: 44px;
  padding: 10px 15px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  background: #0C1626;
  color: #fff;
  font: 600 12px/1.4 Inter,system-ui,sans-serif;
  cursor: pointer;
}
.fa-premium-dialog-close svg { width: 14px; height: 14px; }
.fa-premium-dialog-caption { margin: 16px auto 0; max-width: 880px; color: rgba(255,255,255,.88); font: 500 14px/1.55 Inter,system-ui,sans-serif; text-align: center; }
.fa-premium-dialog-origin { margin: 5px auto 0; color: rgba(255,255,255,.7); font: 400 12px/1.5 Inter,system-ui,sans-serif; text-align: center; }
.fa-premium-dialog-description {
  max-width: 65ch;
  margin: 10px auto 0;
  color: rgba(255,255,255,.76);
  font: 400 14px/1.6 Inter,system-ui,sans-serif;
  text-align: center;
  text-wrap: pretty;
  overflow-wrap: anywhere;
}
.fa-premium-dialog-read {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: fit-content;
  min-height: 44px;
  max-width: 100%;
  margin: 8px auto 4px;
  padding: 8px 3px;
  color: #fff;
  font: 600 13px/1.5 Inter,system-ui,sans-serif;
  text-align: center;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: rgba(255,255,255,.45);
  overflow-wrap: anywhere;
}
.fa-premium-dialog-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  max-width: 720px;
  margin: 17px auto 0;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.17);
}
.fa-premium-dialog-nav button, .fa-premium-dialog-share {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 44px;
  min-height: 44px;
  max-width: 100%;
  margin: 0;
  padding: 10px 16px;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  background: #0C1626;
  color: #fff;
  font: 550 13px/1.4 Inter,system-ui,sans-serif;
  text-align: center;
  white-space: normal;
  cursor: pointer;
  transition: background-color .18s,color .18s,border-color .18s;
}
.fa-premium-dialog-nav button { flex: 0 1 auto; }
.fa-premium-dialog-nav button :is(svg,.i) { flex: none; width: 13px; height: 13px; }
.fa-premium-dialog-share { display: flex; width: fit-content; margin: 12px auto 0; font-size: 12px; }
.fa-premium-dialog-share-link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  max-width: 100%;
  margin: 10px auto 0;
  padding: 9px 4px;
  color: #fff;
  font: 550 12px/1.5 Inter,system-ui,sans-serif;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 5px;
  overflow-wrap: anywhere;
}
.fa-premium-dialog :is(.fa-premium-dialog-nav,.fa-premium-dialog-share,.fa-premium-dialog-share-link,.fa-premium-dialog-read,.fa-premium-dialog-description)[hidden] { display: none !important; }
.fa-premium-dialog-status { margin: 12px auto 0; max-width: 720px; color: rgba(255,255,255,.78); font: 400 13px/1.6 Inter,system-ui,sans-serif; text-align: center; }
.fa-premium-dialog-status:empty, .fa-premium-dialog-status[hidden] { display: none; }
.fa-premium-dialog-status.is-error { padding: 12px 16px; border: 1px solid rgba(255,255,255,.25); border-radius: 9px; background: #0C1626; color: #fff; }
.fa-premium-dialog-status.is-feedback { padding: 10px 14px; border: 1px solid rgba(255,255,255,.17); border-radius: 9px; background: #0C1626; color: rgba(255,255,255,.86); font-size: 12px; }
.fa-premium-dialog:has(.fa-premium-dialog-nav) .fa-premium-dialog-video { max-height: max(160px,calc(100dvh - 330px)); }
.fa-premium-dialog :focus-visible { outline: 2px solid #fff; outline-offset: 4px; }

@media (hover:hover) and (pointer:fine) {
  .fa-premium-tabs button[role="tab"]:hover { color: #07101C; }
  .fa-premium-watch:hover, .fa-premium-dialog-close:hover { border-color: #fff; background: #fff; color: #07101C; }
  .fa-premium-links :is(a,button):hover { text-decoration-color: #fff; }
  .fa-premium-links .fa-btn:hover { background: #fff; color: #07101C; }
  .fa-premium-links .fa-btn-rojo:hover { border-color: #8E0A16; background: #8E0A16; color: #fff; }
  .fa .fa-cv:has(.fa-premium-cover):hover::before { border-color: rgba(255,255,255,.35); }
  .fa .fa-cv[data-t="claro"]:hover::before { border-color: rgba(7,16,28,.25); }
  .fa .fa-cv:hover > img.fa-premium-cover,
  .fa .fa-cv:hover > .fa-premium-cover > img { transform: scale(1.035); }
  .fa-premium-library-item:hover { border-color: rgba(7,16,28,.3); box-shadow: 0 18px 34px -29px rgba(7,16,28,.3); }
  .fa-premium-read:hover, .fa-saved-reading-list a:hover { color: #B01018; text-decoration-color: #B01018 !important; }
  .fa-saved-reading-list button:hover { border-color: #B01018; background: #FCFBF9; color: #B01018; }
  .fa-premium-dialog-nav button:hover, .fa-premium-dialog-share:hover { border-color: #fff; background: #fff; color: #07101C; }
  .fa-premium-dialog-read:hover, .fa-premium-dialog-share-link:hover { text-decoration-color: #fff; }
  .fa .page-hero.fa-service-hero .fa-service-copy > .btn:hover { border-color: #8E0A16; background: #8E0A16; color: #fff; }
}

@media (min-width:760px) and (max-width:1100px) {
  .fa .page-hero.fa-service-hero > .wrap.fa-service-hero-inner { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); gap: 28px; }
  .fa .page-hero.fa-service-hero .fa-service-copy h1 { font-size: clamp(37px,4.5vw,49px); }
  .fa .fa-service-copy .breadcrumbs { margin-bottom: 18px; }
  .fa .page-hero.fa-service-hero .fa-service-copy > .lead { font-size: 15px; margin-top: 20px; }
  .fa .fa-hd .fa-hd-in {
    grid-template-columns: minmax(0,1fr) minmax(0,.9fr);
    align-items: center;
    gap: 28px;
    padding-top: calc(var(--fa-header-height,72px) + 38px);
    padding-bottom: 30px;
  }
  .fa .fa-hd-w { font-size: clamp(75px,10.1vw,111px); }
  .fa .fa-hd-k { margin-top: 12px; font-size: 15px; }
  .fa .fa-hd-def { margin-top: 22px; font-size: clamp(25px,2.6vw,30px); line-height: 1.17; }
  .fa .fa-hd .fa-hd-firma { margin-top: 20px; padding-top: 16px; }
  .fa .fa-hd-firma b { font-size: 15px; }
  .fa .fa-hd-firma span { font-size: 14px; }
  .fa .fa-hd-acc { gap: 8px 14px; margin-top: 20px; }
  .fa .fa-hd-acc .fa-btn { width: 100%; min-height: 44px; padding: 10px 14px; font-size: 13px; white-space: normal; }
  .fa .fa-hd-vis { justify-self: end; max-width: 420px; }
  .fa .fa-h-ev-t { font-size: 25px; }
  .fa .fa-h-ev-cap { padding-inline: 19px; padding-bottom: 22px; }
  .fa .fa-h-dest { gap: 3px; }
  .fa .fa-h-dest-c { width: clamp(45px,5.8vw,59px); height: clamp(45px,5.8vw,59px); }
  .fa .fa-h-dest-l { font-size: 10px; }
  .fa .fa-hd-vis { --fa-thumb-size: clamp(45px,5.8vw,59px); --fa-thumb-label-line: 14px; }
  .fa .fa-hd-datos { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
  .fa .fa-hd-datos li { display: block; }
  .fa .fa-hd-datos li > span { margin-top: 3px; }
  .fa-premium-panel > :is(div,article,section):not(.fa-premium-film), .fa-premium-copy { padding: 30px; }
  .fa-premium-panel h3 { font-size: 34px; }
  .fa-premium-film { min-height: 385px; }
  .fa-premium-library-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

@media (max-width:759px) {
  .fa .page-hero.fa-service-hero { padding-top: calc(var(--fa-header-height,72px) + 22px) !important; padding-bottom: 30px; }
  .fa .page-hero.fa-service-hero > .wrap.fa-service-hero-inner { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .fa .fa-service-copy .breadcrumbs { margin-bottom: 17px; font-size: 11px; gap: 2px 8px; }
  .fa .fa-service-copy > .eyebrow { margin-bottom: 13px; font-size: 11px; }
  .fa .page-hero.fa-service-hero .fa-service-copy h1 { max-width: 24ch; font-size: clamp(33px,8.5vw,43px); line-height: 1.09; letter-spacing: -.03em; }
  .fa .page-hero.fa-service-hero .fa-service-copy > .lead { max-width: 62ch; margin-top: 18px; font-size: 15px; line-height: 1.6; }
  .fa .page-hero.fa-service-hero .fa-service-copy > .btn { margin-top: 21px; min-height: 48px; padding: 11px 17px; font-size: 13px; }
  .fa .fa-service-visual { justify-self: start; max-width: 100%; }
  .fa .fa-service-visual > .fa-premium-film { aspect-ratio: 16 / 10; border-radius: 14px; }
  .fa .fa-service-visual .fa-premium-watch { right: 16px; bottom: 46px; }
  .fa .fa-service-visual .fa-premium-origin { left: 18px; right: 18px; bottom: 15px; font-size: 10.5px; }
  .fa .pf-ph .fa-acc .fa-btn,
  .fa .nr-banda-acc .fa-btn {
    min-width: 0;
    max-width: 100%;
    padding-block: 10px;
    white-space: normal;
    text-align: center;
  }
  .fa .fa-hd .fa-hd-in {
    grid-template-columns: minmax(0,1fr);
    gap: 20px;
    padding-top: calc(var(--fa-header-height,72px) + 22px);
    padding-bottom: 24px;
  }
  .fa .fa-hd-w { font-size: clamp(64px,18vw,92px); }
  .fa .fa-hd-k { margin-top: 8px; font-size: 15px; line-height: 1.35; }
  .fa .fa-hd-def { max-width: 30ch; margin-top: 15px; font-size: clamp(23px,5.7vw,30px); line-height: 1.17; }
  .fa .fa-hd .fa-hd-firma { margin-top: 14px; padding-top: 11px; gap: 4px; }
  .fa .fa-hd-firma b { font-size: 15px; }
  .fa .fa-hd-firma span { max-width: 46ch; font-size: 14px; line-height: 1.4; }
  .fa .fa-hd-acc { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px 10px; margin-top: 12px; }
  .fa .fa-hd-acc .fa-btn { min-height: 48px; padding: 8px 10px; font-size: 13px; line-height: 1.3; white-space: normal; text-align: center; }
  .fa .fa-hd-acc .fa-link { grid-column: 1 / -1; justify-self: start; min-height: 44px; font-size: 14px; }
  .fa .fa-hd-vis { justify-self: center; max-width: 460px; }
  .fa .fa-h-ev-marco { aspect-ratio: 4 / 5; }
  .fa .fa-h-ev-t { font-size: clamp(23px,6.2vw,28px); }
  .fa .fa-h-ev-cap { gap: 8px; padding-inline: 21px; padding-bottom: 22px; }
  .fa .fa-h-dest { margin-top: 13px; gap: 4px; }
  .fa .fa-h-dest-c { width: clamp(47px,13.7vw,57px); height: clamp(47px,13.7vw,57px); }
  .fa .fa-h-dest-l { font-size: 10px; }
  .fa .fa-hd-vis { --fa-thumb-size: clamp(47px,13.7vw,57px); --fa-thumb-label-line: 14px; --fa-thumb-top-gap: 13px; }
  .fa .fa-hd-datos { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 20px; padding-top: 18px; padding-bottom: 21px; }
  .fa .fa-hd-datos li { display: flex; }
  .fa .fa-hd-datos li > span { font-size: 11.5px; line-height: 1.45; }
  .fa-premium-tabs { gap: 0; margin-bottom: 18px; }
  .fa-premium-tabs button[role="tab"] { min-height: 68px; align-items: center; padding: 10px 12px 16px 0; font-size: 13px; line-height: 1.35; }
  .fa-premium-tabs button[role="tab"]::after { right: 12px; }
  .fa-premium-tabs button[role="tab"] :is(svg,.i) { display: none; }
  .fa-premium-stage { border-radius: 15px; }
  .fa-premium-panel { grid-template-columns: minmax(0,1fr); }
  .fa-premium-panel > :is(div,article,section):not(.fa-premium-film), .fa-premium-copy { padding: 29px 25px 24px; }
  .fa-premium-norm { margin-bottom: 18px; font-size: 11px; }
  .fa-premium-panel h3 { max-width: 22ch; margin-bottom: 16px; font-size: clamp(30px,6.8vw,40px); }
  .fa-premium-panel p:not(.fa-premium-norm):not(.fa-premium-film-label):not(.fa-premium-film-status) { max-width: 43ch; font-size: 15px; line-height: 1.6; }
  .fa-premium-links { gap: 7px 17px; padding-top: 18px; }
  .fa-premium-links :is(a,button) { font-size: 13px; }
  .fa-premium-film { width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 10; border-top: 1px solid rgba(255,255,255,.12); border-left: 0; }
  .fa-premium-film :is(figcaption,.fa-premium-film-label,.fa-premium-origin) { left: 18px; right: 18px; bottom: 15px; font-size: 10.5px; }
  .fa-premium-watch { right: 16px; bottom: 48px; padding: 10px 16px; }
  .fa .fa-premium-article-visual { justify-self: start; max-width: 100%; margin-top: 2px; }
  .fa .fa-premium-article-visual > .fa-premium-cover { aspect-ratio: 16 / 9; }
  .fa-premium-library-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px 12px; }
  .fa-premium-library figcaption :is(h3,strong,b) { font-size: 20px; }
  .fa-premium-library-grid figure > figcaption { left: 15px; right: 15px; bottom: 16px; }
  .fa-premium-library .fa-premium-watch { top: 12px; right: 12px; padding-inline: 13px; }
  .fa-premium-library-copy { padding: 17px 15px 14px; }
  .fa-premium-library-copy p { font-size: 13px; line-height: 1.6; }
  .fa-premium-read { font-size: 12px; padding-top: 10px; }
  .fa-saved-reading-list > :is(article,div,li) { gap: 10px; padding: 15px 16px; }
  .fa-saved-reading-list a { font-size: 14px; }
  .fa-saved-reading-list button { padding-inline: 12px; }
  .fa .fa-cr .fa-cv { --cvh: 380px; }
  .fa .fa-cv-top { top: 22px; }
  .fa-premium-dialog { width: calc(100vw - 24px); max-width: calc(100vw - 24px); padding: 62px 11px 20px; border-radius: 14px; }
  .fa-premium-dialog video { max-height: calc(100dvh - 210px); }
  .fa-premium-dialog-description { margin-top: 9px; font-size: 13px; line-height: 1.6; }
  .fa-premium-dialog-read { font-size: 12px; }
  .fa-premium-dialog-nav { gap: 9px; margin-top: 14px; padding-top: 14px; }
  .fa-premium-dialog-nav button { padding-inline: 13px; font-size: 12px; }
}

@media (max-width:360px) {
  .fa .page-hero.fa-service-hero .fa-service-copy h1 { font-size: 32px; }
  .fa .page-hero.fa-service-hero .fa-service-copy > .lead { font-size: 14px; }
  .fa .fa-hd .fa-hd-in { padding-top: calc(var(--fa-header-height,72px) + 22px); gap: 20px; }
  .fa .fa-hd-w { font-size: 63px; }
  .fa .fa-hd-k { font-size: 13px; }
  .fa .fa-hd-def { font-size: 23px; margin-top: 15px; }
  .fa .fa-hd-firma span { font-size: 13px; }
  .fa .fa-hd-acc { gap: 5px 8px; margin-top: 12px; }
  .fa .fa-hd-acc .fa-btn { min-height: 48px; font-size: 12px; }
  .fa .fa-hd-datos li { display: block; }
  .fa .fa-hd-datos li > span { margin-top: 3px; }
  .fa-premium-tabs button[role="tab"] { min-height: 74px; padding-right: 8px; font-size: 12px; }
  .fa-premium-panel > :is(div,article,section):not(.fa-premium-film), .fa-premium-copy { padding: 26px 22px 23px; }
  .fa-premium-panel h3 { font-size: 30px; }
  .fa .fa-h-ev-cap { padding-inline: 18px; }
  .fa .fa-h-ev-a { padding-inline: 12px; font-size: 12px; }
  .fa-premium-library-grid { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .fa .fa-premium-library-grid figure.fa-premium-cover > :is(picture,img) { aspect-ratio: 16 / 10; }
}

@media (prefers-reduced-motion:reduce) {
  .fa-premium-library-item, .fa-saved-reading-list button,
  .fa-premium-dialog-nav button, .fa-premium-dialog-share { transition: none; }
  .fa-premium-tabs button[role="tab"]::after,
  .fa-premium-film > video,
  .fa .fa-cv > .fa-premium-cover,
  .fa .fa-cv > .fa-premium-cover > img { transition: none; }
  .fa .fa-cv:hover > img.fa-premium-cover,
  .fa .fa-cv:hover > .fa-premium-cover > img { transform: none; }
}
html.fa-motion-paused .fa .fa-cv:hover > img.fa-premium-cover,
html.fa-motion-paused .fa .fa-cv:hover > .fa-premium-cover > img { transform: none; }
html.fa-motion-paused :is(.fa-premium-library-item,.fa-saved-reading-list button,.fa-premium-dialog-nav button,.fa-premium-dialog-share) { transition: none; }

@media print {
  .fa-premium-tabs, .fa-premium-watch, .fa-premium-dialog { display: none !important; }
  .fa-premium-panel { break-inside: avoid; background: #fff; color: #07101C; }
  .fa-premium-panel > :is(div,article,section):not(.fa-premium-film), .fa-premium-copy { background: #fff; }
  .fa-premium-panel :is(h3,p,a) { color: #07101C !important; }
  .fa-premium-film > video { display: none; }
}

/* Public references: original logos, editorial context and a source link. */
.fa-authority {
  min-width: 0;
  margin: 0;
  padding-block: clamp(38px,4.5vw,64px);
  border-top: 1px solid rgba(7,16,28,.12);
  border-bottom: 1px solid rgba(7,16,28,.12);
  background: #FCFBF9;
  color: #07101C;
}
.fa-authority-clients { background: #F4F4F5; }
.fa-authority-intro {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(0,.8fr);
  align-items: end;
  gap: 14px 40px;
  min-width: 0;
  margin-bottom: 26px;
}
.fa-authority-intro h2 {
  max-width: 27ch;
  margin: 0;
  color: #07101C;
  font-family: var(--serif,Fraunces,Georgia,serif);
  font-variation-settings: 'SOFT' 0,'WONK' 0;
  font-weight: 400;
  font-size: clamp(29px,3.1vw,45px);
  line-height: 1.08;
  letter-spacing: -.025em;
  text-wrap: balance;
}
.fa-authority-intro p {
  max-width: 55ch;
  margin: 0;
  color: #5C6570;
  font: 400 14px/1.6 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
}
.fa-authority-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  align-items: stretch;
  gap: 16px;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.fa-authority-grid > li {
  display: flex;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.fa-authority-grid > li::before { content: none; }
.fa-authority-card {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
  min-height: 44px;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid rgba(7,16,28,.16);
  border-radius: 12px;
  background: #fff;
  color: #07101C;
  text-decoration: none !important;
  box-shadow: 0 8px 20px -22px rgba(7,16,28,.4);
  transition: border-color .2s,box-shadow .25s;
}
.fa-authority-logo {
  display: flex;
  flex: none;
  align-items: center;
  justify-content: center;
  min-width: 0;
  width: 100%;
  height: 98px;
  padding: 17px 22px;
  border-bottom: 1px solid rgba(7,16,28,.08);
  background: #fff;
}
.fa-authority-logo img {
  display: block;
  flex: 0 1 180px;
  width: 180px;
  height: 64px;
  max-width: 100%;
  margin: 0;
  border: 0;
  border-radius: 0;
  object-fit: contain;
  object-position: center;
  opacity: 1;
  filter: none;
}
.fa-authority-wordmark {
  color: #07101C;
  font: 500 20px/1.25 var(--serif,Fraunces,Georgia,serif);
  text-align: center;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.fa-authority-card[data-tone="dark"] .fa-authority-logo { border-bottom-color: rgba(255,255,255,.14); background: #07101C; }
.fa-authority-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  min-width: 0;
  width: 100%;
  padding: 16px 18px 17px;
}
.fa-authority-copy > strong,
.fa-authority-name {
  display: block;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  color: #07101C;
  font: 650 15px/1.4 var(--sans,Inter,sans-serif);
  letter-spacing: -.008em;
  overflow-wrap: anywhere;
}
.fa-authority-meta {
  display: block;
  max-width: 100%;
  color: #65707C;
  font: 450 11.5px/1.55 var(--sans,Inter,sans-serif);
  overflow-wrap: anywhere;
}
.fa-authority-title {
  max-width: 100%;
  margin: 4px 0 0;
  color: #3A414A;
  font: 400 14px/1.5 var(--serif,Fraunces,Georgia,serif);
  text-wrap: pretty;
  overflow-wrap: anywhere;
}
.fa-authority-scope {
  max-width: 100%;
  margin: 3px 0 0;
  color: #3A414A;
  font: 400 13px/1.6 var(--sans,Inter,sans-serif);
  text-wrap: pretty;
  overflow-wrap: anywhere;
}
.fa-authority-verification {
  display: block;
  max-width: 100%;
  margin-top: 3px;
  color: #5C6570;
  font: 450 11.5px/1.6 var(--sans,Inter,sans-serif);
  overflow-wrap: anywhere;
}
.fa-authority-record {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 44px;
  max-width: 100%;
  margin-top: auto;
  padding-top: 10px;
  color: #07101C;
  font: 650 12px/1.4 var(--sans,Inter,sans-serif);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: rgba(7,16,28,.32);
  overflow-wrap: anywhere;
}
.fa-authority-archive {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  max-width: 100%;
  margin-top: 20px;
  padding-block: 8px;
  color: #07101C;
  font: 600 13px/1.45 var(--sans,Inter,sans-serif);
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 5px;
  text-decoration-color: rgba(7,16,28,.36) !important;
  overflow-wrap: anywhere;
}
.fa-authority-archive :is(svg,.i) { flex: none; width: 13px; height: 13px; }
.fa-authority-card:focus-visible,
.fa-authority-archive:focus-visible { outline: 2px solid #B01018; outline-offset: 4px; }
.fa-authority-card:focus-visible { border-color: #B01018; }
.fa-authority-card:focus-visible .fa-authority-record { text-decoration-color: #B01018; }
@media (hover:hover) and (pointer:fine) {
  .fa-authority-card:hover { border-color: rgba(7,16,28,.4); box-shadow: 0 16px 28px -25px rgba(7,16,28,.28); }
  .fa-authority-card:hover .fa-authority-record { color: #B01018; text-decoration-color: #B01018; }
  .fa-authority-archive:hover { color: #B01018; text-decoration-color: #B01018 !important; }
}
@media (max-width:1050px) {
  .fa-authority-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
  .fa-authority-intro { grid-template-columns: minmax(0,1fr); gap: 13px; }
}
@media (max-width:620px) {
  .fa-authority { padding-block: 32px; }
  .fa-authority-intro { margin-bottom: 22px; }
  .fa-authority-intro h2 { font-size: 29px; }
  .fa-authority-intro p { font-size: 13px; }
  .fa-authority-grid { gap: 12px; }
  .fa-authority-logo { height: 88px; padding: 12px 16px; }
  .fa-authority-logo img { height: 62px; }
  .fa-authority-copy { padding: 14px 15px 15px; gap: 6px; }
  .fa-authority-copy > strong, .fa-authority-name { font-size: 14px; }
  .fa-authority-meta, .fa-authority-verification { font-size: 11px; }
  .fa-authority-title { font-size: 13px; line-height: 1.5; }
  .fa-authority-scope { font-size: 12.5px; line-height: 1.6; }
}
@media (max-width:360px) {
  .fa-authority-grid { grid-template-columns: minmax(0,1fr); }
  .fa-authority-logo { height: 92px; padding: 14px 22px; }
}
@media (prefers-reduced-motion:reduce) {
  .fa-authority-card { transition: none; }
}
html.fa-motion-paused .fa-authority-card { transition: none; }
/* Home references stay compact so the professional fields remain nearby. */
.fa-authority-home { padding-block: clamp(30px,3.4vw,48px); }
.fa-authority-home .fa-authority-intro { margin-bottom: 22px; }
.fa-authority-home .fa-authority-card {
  position: relative;
  height: 98px;
  min-height: 98px;
}
.fa-authority-home .fa-authority-logo { height: 100%; padding: 16px 22px; border-bottom: 0; }
.fa-authority-home .fa-authority-copy {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
@media (max-width:1050px) {
  .fa-authority-home .fa-authority-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px) {
  .fa-authority-home { padding-block: 30px; }
  .fa-authority-home .fa-authority-card { height: 92px; min-height: 92px; }
  .fa-authority-home .fa-authority-logo { padding: 12px; }
  .fa-authority-home .fa-authority-logo img { height: 64px; }
}
@media print {
  .fa-authority { background: #fff; border-color: #aaa; }
  .fa-authority-card { break-inside: avoid; box-shadow: none; }
}

/* Media references form a single, manually scrollable logo row. */
.fa-authority-press { padding-block: clamp(28px,3vw,42px); }
.fa-authority-press .fa-authority-intro { margin-bottom: 18px; }
.fa-authority-press .fa-authority-grid {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 12px;
  max-width: 100%;
  padding: 6px 4px 14px;
  margin-inline: -4px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scroll-snap-type: none;
  scroll-padding-inline: 4px;
  scrollbar-width: thin;
  scrollbar-color: #92979E #E9E9EA;
}
.fa-authority-press .fa-authority-grid > li {
  flex: 0 0 148px;
  scroll-snap-align: start;
}
.fa-authority-press .fa-authority-card {
  position: relative;
  height: 84px;
  min-height: 84px;
}
.fa-authority-press .fa-authority-logo {
  height: 100%;
  padding: 12px 16px;
  border-bottom: 0;
}
.fa-authority-press .fa-authority-logo img { height: 54px; }
.fa-authority-press .fa-authority-copy {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}
.fa-authority-press .fa-authority-archive { margin-top: 12px; }
@media (max-width:620px) {
  .fa-authority-press .fa-authority-grid { gap: 10px; }
  .fa-authority-press .fa-authority-grid > li { flex-basis: 136px; }
  .fa-authority-press .fa-authority-card { height: 78px; min-height: 78px; }
  .fa-authority-press .fa-authority-logo { padding: 10px 14px; }
  .fa-authority-press .fa-authority-logo img { height: 50px; }
}
