
/* Tipografías alojadas en el propio sitio (SIL Open Font License: fonts/OFL-*.txt). Solo caracteres latinos y los pesos que usa el sitio. */
@font-face { font-family: "Montserrat"; src: url("/fonts/montserrat-latin-v1.woff2") format("woff2"); font-weight: 500 800; font-style: normal; font-display: swap; }
@font-face { font-family: "Hanken Grotesk"; src: url("/fonts/hanken-grotesk-latin-v1.woff2") format("woff2"); font-weight: 400 600; font-style: normal; font-display: swap; }
/* Layout: catálogo de lotes. Columna editorial asimétrica; tipografía extendida que acompaña al logo; azul pizarra y dorado de marca. */
:root {
  --paper: #F4F5F6;
  --paper-2: #E7EAED;
  --ink: #24323F;
  --muted: #4B5966;
  --line: #CBD2D8;
  --accent: #8A6200;
  --gold: #CD9619;
  --on-gold: #24323F;
  --accent-soft: #F1E5C6;
  --contact-bg: #24323F;
  --contact-fg: #F2F4F6;
  --show-light: block;
  --show-dark: none;
  --f-display: "Montserrat", "Arial Black", system-ui, sans-serif;
  --f-body: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --gutter: clamp(16px, 4vw, 40px);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --paper: #24323F; --paper-2: #1B2630; --ink: #F2F4F6; --muted: #B6C1CB;
    --line: #3E4E5C; --accent: #CD9619; --gold: #CD9619; --on-gold: #24323F; --accent-soft: #3A3A2C;
    --contact-bg: #141C23; --show-light: none; --show-dark: block;
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --paper: #24323F; --paper-2: #1B2630; --ink: #F2F4F6; --muted: #B6C1CB;
  --line: #3E4E5C; --accent: #CD9619; --gold: #CD9619; --on-gold: #24323F; --accent-soft: #3A3A2C;
  --contact-bg: #141C23; --show-light: none; --show-dark: block;
  color-scheme: dark;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--paper); color: var(--ink);
  font-family: var(--f-body); font-size: 17px; line-height: 1.6;
  padding-inline: var(--gutter); padding-block: 0;
  -webkit-font-smoothing: antialiased; margin: 0; overflow-x: clip; }
.wrap { max-width: 1120px; margin-inline: auto; }
.skip-link { position: fixed; left: 16px; top: -200px; z-index: 1000; padding: 10px 16px; background: var(--ink); color: #fff; font-weight: 600; border-radius: 4px; text-decoration: none; }
.skip-link:focus { top: 12px; }
main:focus { outline: none; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
h1, h2, h3 { font-family: var(--f-display); font-weight: 800; line-height: 1.15; margin: 0; text-wrap: balance; letter-spacing: 0.005em; text-transform: uppercase; hyphens: manual; overflow-wrap: break-word; }
p { margin: 0; max-width: 62ch; }
a { color: inherit; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; border-radius: 2px; }
.eyebrow { font-size: 13px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); }

/* Header */
header.top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 20px; border-bottom: 1px solid var(--line); }
.brand { display: flex; align-items: center; gap: 12px; text-decoration: none; flex: none; }
.brand img { height: 40px; width: auto; max-width: none; flex: none; }
.logo-l { display: var(--show-light); }
.logo-d { display: var(--show-dark); }
nav.main { display: flex; align-items: center; gap: clamp(16px, 1.8vw, 28px); font-size: 15px; font-weight: 500; }
nav.main a { white-space: nowrap; text-decoration: none; color: var(--muted); transition: color .2s ease; }
nav.main a:hover { color: var(--ink); }
.btn { display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 24px; background: var(--gold); color: var(--on-gold) !important; font-weight: 600; font-size: 15px; text-decoration: none; border-radius: 2px; transition: transform .2s ease, filter .2s ease; cursor: pointer; border: 0; }
.btn:hover { filter: brightness(1.08); transform: translateY(-1px); }
.btn.ghost { background: transparent; color: var(--ink) !important; border: 1px solid var(--ink); }
/* Botones principales: brillo giratorio en el borde al pasar el mouse o enfocar (CSS puro) */
@property --g-angle { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
@property --g-offset { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
@property --g-pct { syntax: "<percentage>"; initial-value: 0%; inherits: false; }
@property --g-shine { syntax: "<color>"; initial-value: #CD9619; inherits: false; }
.btn:not(.ghost) {
  --g-hi: #F0CB6E; --g-hi-soft: #FFF4D2;
  border: 2px solid transparent; position: relative; isolation: isolate;
  background: linear-gradient(var(--gold), var(--gold)) padding-box,
    conic-gradient(from calc(var(--g-angle) - var(--g-offset)), transparent, var(--g-hi) var(--g-pct), var(--g-shine) calc(var(--g-pct) * 2), var(--g-hi) calc(var(--g-pct) * 3), transparent calc(var(--g-pct) * 4)) border-box;
  transition: transform .2s ease, filter .2s ease, box-shadow .6s cubic-bezier(.25,1,.5,1), --g-offset .8s cubic-bezier(.25,1,.5,1), --g-pct .8s cubic-bezier(.25,1,.5,1), --g-shine .8s cubic-bezier(.25,1,.5,1);
  animation: g-spin 3s linear infinite paused;
}
.btn:not(.ghost):is(:hover, :focus-visible) {
  --g-pct: 20%; --g-offset: 95deg; --g-shine: var(--g-hi-soft);
  animation-play-state: running;
  box-shadow: 0 0 0 1px rgba(240,203,110,.35), 0 4px 22px rgba(205,150,25,.45);
}
.btn:not(.ghost):active { transform: translateY(1px); }
@keyframes g-spin { to { --g-angle: 360deg; } }
@media (prefers-reduced-motion: reduce) { .btn:not(.ghost) { animation: none; } }
/* Botones con borde: mismo brillo giratorio, dibujado como anillo sobre el borde */
.btn.ghost { position: relative; isolation: isolate; transition: transform .2s ease, filter .2s ease, box-shadow .6s cubic-bezier(.25,1,.5,1); }
.btn.ghost::after {
  --g-hi: #CD9619; --g-hi-soft: #F0CB6E;
  content: ""; position: absolute; inset: -1px; padding: 2px; border-radius: inherit; pointer-events: none;
  background: conic-gradient(from calc(var(--g-angle) - var(--g-offset)), transparent, var(--g-hi) var(--g-pct), var(--g-shine) calc(var(--g-pct) * 2), var(--g-hi) calc(var(--g-pct) * 3), transparent calc(var(--g-pct) * 4));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  transition: --g-offset .8s cubic-bezier(.25,1,.5,1), --g-pct .8s cubic-bezier(.25,1,.5,1), --g-shine .8s cubic-bezier(.25,1,.5,1);
  animation: g-spin 3s linear infinite paused;
}
.btn.ghost:is(:hover, :focus-visible)::after { --g-pct: 20%; --g-offset: 95deg; --g-shine: var(--g-hi-soft); animation-play-state: running; }
.btn.ghost:is(:hover, :focus-visible) { box-shadow: 0 4px 22px rgba(205,150,25,.28); }
.btn.ghost:active { transform: translateY(1px); }
@media (prefers-reduced-motion: reduce) { .btn.ghost::after { animation: none; } }
/* Celulares y pantallas táctiles (sin hover): brillo giratorio sutil y constante en los botones */
@media (hover: none) {
  .btn:not(.ghost) { --g-pct: 9%; --g-offset: 60deg; --g-shine: #FFF4D2; animation-play-state: running; animation-duration: 9s; }
  .btn.ghost::after { --g-pct: 9%; --g-offset: 60deg; --g-shine: #F0CB6E; animation-play-state: running; animation-duration: 9s; }
}
@media (prefers-reduced-motion: reduce) { .btn:not(.ghost), .btn.ghost::after { animation: none !important; } }

nav.main .btn { min-height: 42px; padding: 0 18px; color: var(--on-gold); }
nav.main .btn:hover { color: var(--on-gold); }

/* Hero con gradiente animado (WebGL, con respaldo CSS) */
.hero-fx { position: relative; overflow: hidden; width: 100vw; margin-inline: calc(50% - 50vw); border-radius: 0; min-height: max(560px, 100vh); min-height: max(560px, 100svh); display: grid; align-items: center; color: #F2F4F6; isolation: isolate;
  background: radial-gradient(120% 90% at 20% 10%, #3a5068 0%, #24323F 45%, #0f171e 100%); }
.hero-fx canvas { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; display: block; }
.hero-fx .hero { padding-inline: clamp(20px, 5vw, 64px); max-width: 920px; max-width: none; margin-inline: auto; text-align: center; justify-items: center; padding-block: clamp(120px, 13vw, 170px) clamp(88px, 9vw, 120px); width: 100%; max-width: 1120px; }

.hero-fx .hero h1 { font-size: clamp(26px, 5.6vw, 62px); letter-spacing: 0.01em; margin-top: 0; text-wrap: balance; }
.hero-fx .hero p { margin-inline: auto; }
.hero-fx .hero .cta { justify-content: center; margin-top: 40px; }
.hero-fx .hero .creds { justify-content: center; margin-top: 40px; }
.hero-fx .eyebrow { color: #D9B25A; }
.hero-fx .hero .lead, .hero-fx .hero .creds { color: #DCE3E9; }
.hero-fx .btn.ghost { color: #F2F4F6 !important; border-color: rgba(242,244,246,.55); }
.hero-fx .btn.ghost:hover { background: rgba(255,255,255,.08); }

/* Hero */
.hero { display: grid; grid-template-columns: minmax(0, 1fr); max-width: 860px; gap: clamp(32px, 6vw, 80px); padding-block: clamp(48px, 8vw, 104px); align-items: center; }
.hero h1 { font-size: clamp(32px, 4.8vw, 56px); margin-top: 20px; }
.hero h1 em { font-style: normal; }
.hero .lead { margin-top: 26px; font-size: 18px; color: var(--muted); }
.hero .cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.creds { margin-top: 44px; display: flex; flex-wrap: wrap; gap: 8px 28px; font-size: 14px; color: var(--muted); }
.creds b { color: var(--ink); font-weight: 500; }

/* Ficha de lote */
.lot { border-top: 1px solid var(--ink); padding-top: 24px; position: relative; }
.lot-head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; position: relative; }
.lot-head .num { font-family: var(--f-display); font-weight: 600; font-size: 24px; line-height: 1; color: var(--ink); }
.lot-head .tag { font-size: 14px; color: var(--muted); text-align: right; }
.lot dl { margin: 22px 0 0; position: relative; }
.lot dl div { display: flex; justify-content: space-between; gap: 16px; padding-block: 11px; border-top: 1px solid var(--line); }
.lot dt { font-size: 14px; color: var(--muted); }
.lot dd { margin: 0; font-weight: 500; text-align: right; }
.lot .note { position: relative; margin-top: 16px; font-size: 14px; color: var(--muted); }

/* Secciones */
section { padding-block: clamp(72px, 10vw, 128px); border-top: 1px solid var(--line); }
.sec-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: clamp(24px, 5vw, 72px); }
.sec-head h2 { font-size: clamp(24px, 3.3vw, 38px); }
.sec-head .intro { color: var(--muted); font-size: 18px; }

.cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(32px, 5vw, 64px); margin-top: 56px; }
.card { padding: 0; }
.card h3, .card h2 { font-size: 22px; margin-bottom: 10px; }
.card p { color: var(--muted); font-size: 16px; }

.steps { list-style: none; counter-reset: s; padding: 0; margin: 52px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.steps li { counter-increment: s; padding-top: 18px; border-top: 1px solid var(--line); }
.steps li::before { content: "Paso " counter(s); display: block; font-size: 13px; font-weight: 600; letter-spacing: .06em; color: var(--accent); margin-bottom: 10px; }
.steps h3 { font-size: 22px; margin-bottom: 8px; }
.steps p { color: var(--muted); font-size: 16px; }
.legal { margin-top: 40px; font-size: 14px; color: var(--muted); max-width: 78ch; }

/* Entidades */
.split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 6vw, 80px); margin-top: 44px; }
.ticks { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.ticks li { display: flex; gap: 14px; padding-block: 16px; border-bottom: 1px solid var(--line); }
.ticks li:first-child { border-top: 1px solid var(--line); }
.ticks svg { width: 20px; height: 20px; flex: none; margin-top: 4px; color: var(--accent); }

.clients { list-style: none; margin: 48px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.client { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 148px; padding: 24px 16px; text-align: center; color: var(--muted); }
.client + .client { border-left: 1px solid var(--line); }
.client-name { font-family: var(--f-display); font-weight: 800; font-size: clamp(24px, 3.6vw, 44px); line-height: 1; letter-spacing: -0.01em; text-transform: uppercase; color: var(--ink); opacity: .82; }
.client-logo { display: block; width: clamp(150px, 66%, 210px); aspect-ratio: 144.5 / 47.99; background-color: var(--ink); opacity: 1; -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDQuNSA0Ny45OSI+PHRpdGxlPklDQkMgbG9nbzwvdGl0bGU+PHBhdGggZD0iTTU1OS40Nyw1MDIuNzZ2LTMuNjlINTQ3LjU0djExLjA3aDcuMzF2My42OWgtNy4zMXYxMS4wN2gxMS45M1Y1MjEuMmgtOC4yNnYtMy42OWg3LjM0VjUwNi40NGgtNy4zNHYtMy42OU01MzYuNDQsNTEyYTIzLjkxLDIzLjkxLDAsMSwxLDIzLjksMjQsMjMuOTQsMjMuOTQsMCwwLDEtMjMuOS0yNG0zLjcsMGEyMC4yLDIwLjIsMCwxLDEsMjAuMiwyMC4yOEEyMC4yNSwyMC4yNSwwLDAsMSw1NDAuMTQsNTEybTIxLjE4LDkuMjF2My42OWgxMS45MVY1MTMuODRoLTcuMzN2LTMuNjloNy4zM1Y0OTkuMDhINTYxLjMydjMuNjloOC4yNHYzLjdoLTcuMzR2MTEuMDZoNy4zNHYzLjY5WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQzOS43NSAtNDg4KSIgc3R5bGU9ImZpbGw6I2NiMDIwMjtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjxwYXRoIGQ9Ik00ODkuMSw1MjVjMy4wOCwwLDUuNC0uNzUsNi45LTIuMjRhNi43NSw2Ljc1LDAsMCwwLDEuODYtNC44N2MwLTMtMS4yNS01LjEyLTMuNzMtNi4yNGwtLjExLDAsLjEtLjA2YzEuMTItLjU5LDIuNTktMS43OSwyLjU5LTUuMzdhNi43Miw2LjcyLDAsMCwwLTIuMDgtNSw4Ljg5LDguODksMCwwLDAtNi4yMS0yLjFINDc1VjUyNW00Ljg3LTE1Ljc0di01LjQxSDQ4OGMxLjQzLDAsMy44MiwwLDMuODIsMi44NWEyLjI0LDIuMjQsMCwwLDEtMS4zMywyLjIsNiw2LDAsMCwxLTIuNDcuNDJoLTguMTR2LS4wNlptMCw0LjgyVjUxNGg4Ljg3YTUuMzksNS4zOSwwLDAsMSwyLjkxLjc1LDIuODcsMi44NywwLDAsMSwxLjMyLDIuNTQsMi44MSwyLjgxLDAsMCwxLS43MSwyYy0uODcuODgtMi4zNy44OC0zLjQ3Ljg4aC04Ljk1di0uMDVsMC02LjA5WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQzOS43NSAtNDg4KSIgc3R5bGU9ImZpbGw6IzIwMWUxZDtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjxwb2x5Z29uIHBvaW50cz0iMCAzNi45OCA1LjExIDM2Ljk4IDUuMTEgMTEuMDUgMCAxMS4wNSAwIDM2Ljk4IDAgMzYuOTgiIHN0eWxlPSJmaWxsOiMyMDFlMWQ7ZmlsbC1ydWxlOmV2ZW5vZGQiLz48cGF0aCBkPSJNNDQ5LDUxMS43OWExNC4wNiwxNC4wNiwwLDAsMCwxLjI4LDYuMzIsMTEuMzMsMTEuMzMsMCwwLDAsMy4yLDMuODdjMi4yOCwxLjg0LDUuNDksMi43Nyw5LjU1LDIuNzdoN3YtNC44OWgtNi42Yy0zLjY3LDAtNi4zMy0uOTItNy45MS0yLjc0QTcuNzEsNy43MSwwLDAsMSw0NTMuOCw1MTJhNy4zNCw3LjM0LDAsMCwxLDEuODktNS40MmMxLjYtMS42Myw0LjItMi40NSw3LjczLTIuNDVINDcwdi00Ljg1aC02Ljc0YTIxLjM0LDIxLjM0LDAsMCwwLTUuODIuNywxMC43NiwxMC43NiwwLDAsMC00LjEzLDIuMTQsMTIuNDksMTIuNDksMCwwLDAtNC4zMiw5LjczIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDM5Ljc1IC00ODgpIiBzdHlsZT0iZmlsbDojMjAxZTFkO2ZpbGwtcnVsZTpldmVub2RkIi8+PHBhdGggZD0iTTUwMC45NSw1MTEuNzlhMTUuNTgsMTUuNTgsMCwwLDAsMS4yOCw2LjU2LDExLjI4LDExLjI4LDAsMCwwLDMuMiw0LjA5YzIuMTQsMS43Myw1LjE4LDIuNTMsOS41NSwyLjUzaDcuMzd2LTQuODloLTdjLTMuNjYsMC02LjMzLTEtNy45MS0yLjg1YTgsOCwwLDAsMS0xLjcxLTUuMjgsNy41Nyw3LjU3LDAsMCwxLDItNS41OWMxLjYtMS42NCw0LjE4LTIuNDcsNy42Ni0yLjQ3aDd2LTQuODVoLTcuMTJhMjEuMzEsMjEuMzEsMCwwLDAtNS44Mi43LDEwLjcsMTAuNywwLDAsMC00LjEzLDIuMTMsMTIuODMsMTIuODMsMCwwLDAtNC4zMiw5LjkxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDM5Ljc1IC00ODgpIiBzdHlsZT0iZmlsbDojMjAxZTFkO2ZpbGwtcnVsZTpldmVub2RkIi8+PC9zdmc+") center / contain no-repeat; mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDQuNSA0Ny45OSI+PHRpdGxlPklDQkMgbG9nbzwvdGl0bGU+PHBhdGggZD0iTTU1OS40Nyw1MDIuNzZ2LTMuNjlINTQ3LjU0djExLjA3aDcuMzF2My42OWgtNy4zMXYxMS4wN2gxMS45M1Y1MjEuMmgtOC4yNnYtMy42OWg3LjM0VjUwNi40NGgtNy4zNHYtMy42OU01MzYuNDQsNTEyYTIzLjkxLDIzLjkxLDAsMSwxLDIzLjksMjQsMjMuOTQsMjMuOTQsMCwwLDEtMjMuOS0yNG0zLjcsMGEyMC4yLDIwLjIsMCwxLDEsMjAuMiwyMC4yOEEyMC4yNSwyMC4yNSwwLDAsMSw1NDAuMTQsNTEybTIxLjE4LDkuMjF2My42OWgxMS45MVY1MTMuODRoLTcuMzN2LTMuNjloNy4zM1Y0OTkuMDhINTYxLjMydjMuNjloOC4yNHYzLjdoLTcuMzR2MTEuMDZoNy4zNHYzLjY5WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQzOS43NSAtNDg4KSIgc3R5bGU9ImZpbGw6I2NiMDIwMjtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjxwYXRoIGQ9Ik00ODkuMSw1MjVjMy4wOCwwLDUuNC0uNzUsNi45LTIuMjRhNi43NSw2Ljc1LDAsMCwwLDEuODYtNC44N2MwLTMtMS4yNS01LjEyLTMuNzMtNi4yNGwtLjExLDAsLjEtLjA2YzEuMTItLjU5LDIuNTktMS43OSwyLjU5LTUuMzdhNi43Miw2LjcyLDAsMCwwLTIuMDgtNSw4Ljg5LDguODksMCwwLDAtNi4yMS0yLjFINDc1VjUyNW00Ljg3LTE1Ljc0di01LjQxSDQ4OGMxLjQzLDAsMy44MiwwLDMuODIsMi44NWEyLjI0LDIuMjQsMCwwLDEtMS4zMywyLjIsNiw2LDAsMCwxLTIuNDcuNDJoLTguMTR2LS4wNlptMCw0LjgyVjUxNGg4Ljg3YTUuMzksNS4zOSwwLDAsMSwyLjkxLjc1LDIuODcsMi44NywwLDAsMSwxLjMyLDIuNTQsMi44MSwyLjgxLDAsMCwxLS43MSwyYy0uODcuODgtMi4zNy44OC0zLjQ3Ljg4aC04Ljk1di0uMDVsMC02LjA5WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQzOS43NSAtNDg4KSIgc3R5bGU9ImZpbGw6IzIwMWUxZDtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjxwb2x5Z29uIHBvaW50cz0iMCAzNi45OCA1LjExIDM2Ljk4IDUuMTEgMTEuMDUgMCAxMS4wNSAwIDM2Ljk4IDAgMzYuOTgiIHN0eWxlPSJmaWxsOiMyMDFlMWQ7ZmlsbC1ydWxlOmV2ZW5vZGQiLz48cGF0aCBkPSJNNDQ5LDUxMS43OWExNC4wNiwxNC4wNiwwLDAsMCwxLjI4LDYuMzIsMTEuMzMsMTEuMzMsMCwwLDAsMy4yLDMuODdjMi4yOCwxLjg0LDUuNDksMi43Nyw5LjU1LDIuNzdoN3YtNC44OWgtNi42Yy0zLjY3LDAtNi4zMy0uOTItNy45MS0yLjc0QTcuNzEsNy43MSwwLDAsMSw0NTMuOCw1MTJhNy4zNCw3LjM0LDAsMCwxLDEuODktNS40MmMxLjYtMS42Myw0LjItMi40NSw3LjczLTIuNDVINDcwdi00Ljg1aC02Ljc0YTIxLjM0LDIxLjM0LDAsMCwwLTUuODIuNywxMC43NiwxMC43NiwwLDAsMC00LjEzLDIuMTQsMTIuNDksMTIuNDksMCwwLDAtNC4zMiw5LjczIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDM5Ljc1IC00ODgpIiBzdHlsZT0iZmlsbDojMjAxZTFkO2ZpbGwtcnVsZTpldmVub2RkIi8+PHBhdGggZD0iTTUwMC45NSw1MTEuNzlhMTUuNTgsMTUuNTgsMCwwLDAsMS4yOCw2LjU2LDExLjI4LDExLjI4LDAsMCwwLDMuMiw0LjA5YzIuMTQsMS43Myw1LjE4LDIuNTMsOS41NSwyLjUzaDcuMzd2LTQuODloLTdjLTMuNjYsMC02LjMzLTEtNy45MS0yLjg1YTgsOCwwLDAsMS0xLjcxLTUuMjgsNy41Nyw3LjU3LDAsMCwxLDItNS41OWMxLjYtMS42NCw0LjE4LTIuNDcsNy42Ni0yLjQ3aDd2LTQuODVoLTcuMTJhMjEuMzEsMjEuMzEsMCwwLDAtNS44Mi43LDEwLjcsMTAuNywwLDAsMC00LjEzLDIuMTMsMTIuODMsMTIuODMsMCwwLDAtNC4zMiw5LjkxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDM5Ljc1IC00ODgpIiBzdHlsZT0iZmlsbDojMjAxZTFkO2ZpbGwtcnVsZTpldmVub2RkIi8+PC9zdmc+") center / contain no-repeat; }
.client-logo.macro { aspect-ratio: 400 / 95; width: clamp(160px, 68%, 230px); -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgOTUiPjxnIHRyYW5zZm9ybT0ibWF0cml4KDAuNzI2Nzk1NDQsMCwwLDAuNzI2Nzk1NDQsLTE0LjAxMzY3NCwtMC4wNzA5OTMwMikiIGZpbGw9IiMyMzJiNTQiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTSAxMjEuNiwzOS44IEMgOTAsMzkuOCA2My44LDY0LjMgNjIsOTUuNSBjIDAsMC44IDAuMiwxLjUgMC44LDIuMSAwLjUsMC42IDEuMywwLjkgMi4xLDAuOSBIIDg2IGMgMS41LDAgMi43LC0xLjEgMi45LC0yLjcgMS42LC0xNi44IDE1LjcsLTI5LjUgMzIuOCwtMjkuNSAxNy4xLDAgMzEuMiwxMi43IDMyLjgsMjkuNSAwLjEsMS41IDEuNCwyLjcgMi45LDIuNyBoIDIxIGMgMC44LDAgMS42LC0wLjMgMi4xLC0wLjkgMC41LC0wLjYgMC44LC0xLjMgMC44LC0yLjEgLTEuOSwtMzEuMyAtMjguMSwtNTUuNyAtNTkuNywtNTUuNyIvPjxwYXRoIGQ9Im0gMTIxLjYsNzIuMSBjIC0xNC45LDAgLTI3LjEsMTIgLTI3LjEsMjYuOCAwLDE0LjggMTIuMiwyNi44IDI3LjEsMjYuOCAxNC45LDAgMjcuMSwtMTIgMjcuMSwtMjYuOCAwLC0xNC44IC0xMi4yLC0yNi44IC0yNy4xLC0yNi44Ii8+PHBhdGggZD0ibSAxMjEuNiw3LjUgYyAtMjQsMCAtNDYuOCw5LjEgLTY0LjEsMjUuNiAtMTcuMiwxNi41IC0yNy4yLDM4LjYgLTI4LjEsNjIuMyAwLDAuOCAwLjMsMS41IDAuOCwyLjEgMC42LDAuNiAxLjMsMC45IDIuMSwwLjkgaCAyMC45IGMgMS41LDAgMi44LC0xLjIgMi45LC0yLjcgMS43LC0zNC43IDMwLjQsLTYxLjggNjUuNSwtNjEuOCAzNSwwIDYzLjgsMjcuMSA2NS41LDYxLjggMC4xLDEuNSAxLjMsMi43IDIuOSwyLjcgaCAyMC45IGMgMC44LDAgMS41LC0wLjMgMi4xLC0wLjkgMC42LC0wLjYgMC44LC0xLjMgMC44LC0yLjEgQyAyMTIuOSw3MS43IDIwMi45LDQ5LjYgMTg1LjcsMzMuMSAxNjguNCwxNi43IDE0NS42LDcuNSAxMjEuNiw3LjUiLz48cGF0aCBkPSJtIDMyMi40LDE5LjEgaCAtMjQgYyAtMC40LDAgLTAuNywwLjIgLTAuNywwLjYgbCAtMTUsNTguNCBoIC0wLjIgTCAyNjgsMTkuNyBjIC0wLjEsLTAuMyAtMC40LC0wLjYgLTAuNywtMC42IGggLTI1IGMgLTAuNCwwIC0wLjcsMC4zIC0wLjgsMC43IGwgLTUuMiw3Ny4xIGMgMCwwLjIgMC4xLDAuNCAwLjIsMC42IDAuMSwwLjIgMC40LDAuMiAwLjYsMC4yIGggMTMgYyAwLjQsMCAwLjcsLTAuMyAwLjgsLTAuNyBsIDMuOCwtNjQuMiBoIDAuMSBsIDE3LjEsNjQuNCBjIDAuMSwwLjMgMC40LDAuNiAwLjcsMC42IGggMTcuOSBjIDAuMywwIDAuNiwtMC4yIDAuNywtMC42IGwgMTcuNywtNjQuNCBoIDAuMSBsIDIuOCw2NC4yIGMgMCwwLjQgMC40LDAuNyAwLjgsMC43IGggMTUuMSBjIDAuMiwwIDAuNCwtMC4xIDAuNiwtMC4yIDAuMSwtMC4yIDAuMiwtMC40IDAuMiwtMC42IGwgLTUuMiwtNzcuMSBjIC0wLjEsLTAuNCAtMC41LC0wLjcgLTAuOSwtMC43Ii8+PHBhdGggZD0ibSAzNjEuMSwzNy4yIGMgLTYuMiwwIC0xNS43LDEgLTIwLjcsMi4xIC0wLjMsMC4xIC0wLjYsMC40IC0wLjYsMC43IHYgMTAuOSBjIDAsMC4yIDAuMSwwLjQgMC4zLDAuNiAwLjIsMC4xIDAuNCwwLjIgMC42LDAuMSAzLjUsLTAuOCAxMS41LC0yLjEgMTkuNSwtMi4xIDEzLjMsMCAxMy43LDMuMiAxMy43LDExLjYgaCAtMS4yIGMgLTEyLDAgLTI1LjYsMCAtMzIuNSw2LjggLTIuOSwyLjggLTQuMyw2LjcgLTQuMywxMS41IDAsMTYuOCAxMy4zLDE5LjMgMjcuNywxOS41IDEuMywwIDIuNiwwLjEgMy45LDAuMSA2LjcsMCAxMy43LC0wLjUgMjMuMSwtMS41IDAuNCwwIDAuNywtMC40IDAuNywtMC44IFYgNTcuMiBjIDAsLTUuOSAtMS43LC0xMC41IC01LC0xMy43IC01LjgsLTUuNyAtMTUuNSwtNi40IC0yNS4yLC02LjMgbSAxMi44LDM1LjUgdiAxNC4xIGMgLTMsMC40IC01LjUsMC42IC04LjQsMC42IC02LjgsMCAtMTEuNiwtMC41IC0xMS42LC03LjQgMCwtNi45IDQuOCwtNy40IDExLjYsLTcuNCA0LjEsMCA2LjksMCA4LjQsMC4xIi8+PHBhdGggZD0ibSA0NDkuNSw4NS4xIC0xLDAuMSBjIC0yLjgsMC40IC01LjUsMC43IC0xMC4xLDAuNyAtMTUuMiwwIC0yMS40LC01LjMgLTIxLjQsLTE4LjIgMCwtMTIuOCA2LC0xNy45IDIxLjQsLTE3LjkgMy41LDAgNi41LDAuMyAxMC43LDAuOCAwLjIsMCAwLjQsMCAwLjYsLTAuMiAwLjIsLTAuMSAwLjMsLTAuMyAwLjMsLTAuNiBWIDM5LjUgYyAwLC0wLjQgLTAuMiwtMC43IC0wLjYsLTAuNyAtNSwtMS4xIC0xMC43LC0xLjcgLTE3LjEsLTEuNyAtMjMsMCAtMzMuMywxNSAtMzMuMywyOS44IDAsMjAgMTIuNywzMS45IDM0LDMxLjkgNi40LDAgMTEuNywtMC42IDE2LjksLTEuOSAwLjMsLTAuMSAwLjYsLTAuNCAwLjYsLTAuNyBWIDg1LjcgYyAwLC0wLjIgLTAuMSwtMC40IC0wLjMsLTAuNiAtMC4zLDAgLTAuNSwwIC0wLjcsMCIvPjxwYXRoIGQ9Im0gNDk3LjQsMzguNyBjIDAsLTAuNCAtMC4zLC0wLjggLTAuOCwtMC44IGggLTEgYyAtNS4yLDAgLTExLjYsLTAuMSAtMjEsNS4yIHYgLTQgYyAwLC0wLjQgLTAuMywtMC44IC0wLjgsLTAuOCBoIC0xNCBjIC0wLjQsMCAtMC44LDAuMyAtMC44LDAuOCBWIDk3IGMgMCwwLjQgMC4zLDAuOCAwLjgsMC44IGggMTUuOCBjIDAuNCwwIDAuOCwtMC4zIDAuOCwtMC44IFYgNTUuNyBjIDUuMiwtMy40IDEzLjcsLTMuNCAxOS40LC0zLjQgaCAwLjkgYyAwLjQsMCAwLjgsLTAuMyAwLjgsLTAuOCB6Ii8+PHBhdGggZD0ibSA1MjkuMiwzNy4xIGMgLTE5LjcsMCAtMzEuOSwxMS45IC0zMS45LDMwLjkgMCwxOS4xIDEyLjIsMzAuOSAzMS45LDMwLjkgMTguNiwwIDMxLjcsLTEyLjcgMzEuNywtMzAuOSAwLC0xOS4xIC0xMi4yLC0zMC45IC0zMS43LC0zMC45IG0gMTMuNywzMS4xIGMgMCwxMy4yIC00LDE4LjYgLTEzLjgsMTguNiAtOS45LDAgLTEzLjksLTUuNCAtMTMuOSwtMTguNiAwLC0xMy4zIDQsLTE4LjcgMTMuOSwtMTguNyA5LjgsMCAxMy44LDUuNCAxMy44LDE4LjciLz48L2c+PC9zdmc+"); mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgOTUiPjxnIHRyYW5zZm9ybT0ibWF0cml4KDAuNzI2Nzk1NDQsMCwwLDAuNzI2Nzk1NDQsLTE0LjAxMzY3NCwtMC4wNzA5OTMwMikiIGZpbGw9IiMyMzJiNTQiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PHBhdGggZD0iTSAxMjEuNiwzOS44IEMgOTAsMzkuOCA2My44LDY0LjMgNjIsOTUuNSBjIDAsMC44IDAuMiwxLjUgMC44LDIuMSAwLjUsMC42IDEuMywwLjkgMi4xLDAuOSBIIDg2IGMgMS41LDAgMi43LC0xLjEgMi45LC0yLjcgMS42LC0xNi44IDE1LjcsLTI5LjUgMzIuOCwtMjkuNSAxNy4xLDAgMzEuMiwxMi43IDMyLjgsMjkuNSAwLjEsMS41IDEuNCwyLjcgMi45LDIuNyBoIDIxIGMgMC44LDAgMS42LC0wLjMgMi4xLC0wLjkgMC41LC0wLjYgMC44LC0xLjMgMC44LC0yLjEgLTEuOSwtMzEuMyAtMjguMSwtNTUuNyAtNTkuNywtNTUuNyIvPjxwYXRoIGQ9Im0gMTIxLjYsNzIuMSBjIC0xNC45LDAgLTI3LjEsMTIgLTI3LjEsMjYuOCAwLDE0LjggMTIuMiwyNi44IDI3LjEsMjYuOCAxNC45LDAgMjcuMSwtMTIgMjcuMSwtMjYuOCAwLC0xNC44IC0xMi4yLC0yNi44IC0yNy4xLC0yNi44Ii8+PHBhdGggZD0ibSAxMjEuNiw3LjUgYyAtMjQsMCAtNDYuOCw5LjEgLTY0LjEsMjUuNiAtMTcuMiwxNi41IC0yNy4yLDM4LjYgLTI4LjEsNjIuMyAwLDAuOCAwLjMsMS41IDAuOCwyLjEgMC42LDAuNiAxLjMsMC45IDIuMSwwLjkgaCAyMC45IGMgMS41LDAgMi44LC0xLjIgMi45LC0yLjcgMS43LC0zNC43IDMwLjQsLTYxLjggNjUuNSwtNjEuOCAzNSwwIDYzLjgsMjcuMSA2NS41LDYxLjggMC4xLDEuNSAxLjMsMi43IDIuOSwyLjcgaCAyMC45IGMgMC44LDAgMS41LC0wLjMgMi4xLC0wLjkgMC42LC0wLjYgMC44LC0xLjMgMC44LC0yLjEgQyAyMTIuOSw3MS43IDIwMi45LDQ5LjYgMTg1LjcsMzMuMSAxNjguNCwxNi43IDE0NS42LDcuNSAxMjEuNiw3LjUiLz48cGF0aCBkPSJtIDMyMi40LDE5LjEgaCAtMjQgYyAtMC40LDAgLTAuNywwLjIgLTAuNywwLjYgbCAtMTUsNTguNCBoIC0wLjIgTCAyNjgsMTkuNyBjIC0wLjEsLTAuMyAtMC40LC0wLjYgLTAuNywtMC42IGggLTI1IGMgLTAuNCwwIC0wLjcsMC4zIC0wLjgsMC43IGwgLTUuMiw3Ny4xIGMgMCwwLjIgMC4xLDAuNCAwLjIsMC42IDAuMSwwLjIgMC40LDAuMiAwLjYsMC4yIGggMTMgYyAwLjQsMCAwLjcsLTAuMyAwLjgsLTAuNyBsIDMuOCwtNjQuMiBoIDAuMSBsIDE3LjEsNjQuNCBjIDAuMSwwLjMgMC40LDAuNiAwLjcsMC42IGggMTcuOSBjIDAuMywwIDAuNiwtMC4yIDAuNywtMC42IGwgMTcuNywtNjQuNCBoIDAuMSBsIDIuOCw2NC4yIGMgMCwwLjQgMC40LDAuNyAwLjgsMC43IGggMTUuMSBjIDAuMiwwIDAuNCwtMC4xIDAuNiwtMC4yIDAuMSwtMC4yIDAuMiwtMC40IDAuMiwtMC42IGwgLTUuMiwtNzcuMSBjIC0wLjEsLTAuNCAtMC41LC0wLjcgLTAuOSwtMC43Ii8+PHBhdGggZD0ibSAzNjEuMSwzNy4yIGMgLTYuMiwwIC0xNS43LDEgLTIwLjcsMi4xIC0wLjMsMC4xIC0wLjYsMC40IC0wLjYsMC43IHYgMTAuOSBjIDAsMC4yIDAuMSwwLjQgMC4zLDAuNiAwLjIsMC4xIDAuNCwwLjIgMC42LDAuMSAzLjUsLTAuOCAxMS41LC0yLjEgMTkuNSwtMi4xIDEzLjMsMCAxMy43LDMuMiAxMy43LDExLjYgaCAtMS4yIGMgLTEyLDAgLTI1LjYsMCAtMzIuNSw2LjggLTIuOSwyLjggLTQuMyw2LjcgLTQuMywxMS41IDAsMTYuOCAxMy4zLDE5LjMgMjcuNywxOS41IDEuMywwIDIuNiwwLjEgMy45LDAuMSA2LjcsMCAxMy43LC0wLjUgMjMuMSwtMS41IDAuNCwwIDAuNywtMC40IDAuNywtMC44IFYgNTcuMiBjIDAsLTUuOSAtMS43LC0xMC41IC01LC0xMy43IC01LjgsLTUuNyAtMTUuNSwtNi40IC0yNS4yLC02LjMgbSAxMi44LDM1LjUgdiAxNC4xIGMgLTMsMC40IC01LjUsMC42IC04LjQsMC42IC02LjgsMCAtMTEuNiwtMC41IC0xMS42LC03LjQgMCwtNi45IDQuOCwtNy40IDExLjYsLTcuNCA0LjEsMCA2LjksMCA4LjQsMC4xIi8+PHBhdGggZD0ibSA0NDkuNSw4NS4xIC0xLDAuMSBjIC0yLjgsMC40IC01LjUsMC43IC0xMC4xLDAuNyAtMTUuMiwwIC0yMS40LC01LjMgLTIxLjQsLTE4LjIgMCwtMTIuOCA2LC0xNy45IDIxLjQsLTE3LjkgMy41LDAgNi41LDAuMyAxMC43LDAuOCAwLjIsMCAwLjQsMCAwLjYsLTAuMiAwLjIsLTAuMSAwLjMsLTAuMyAwLjMsLTAuNiBWIDM5LjUgYyAwLC0wLjQgLTAuMiwtMC43IC0wLjYsLTAuNyAtNSwtMS4xIC0xMC43LC0xLjcgLTE3LjEsLTEuNyAtMjMsMCAtMzMuMywxNSAtMzMuMywyOS44IDAsMjAgMTIuNywzMS45IDM0LDMxLjkgNi40LDAgMTEuNywtMC42IDE2LjksLTEuOSAwLjMsLTAuMSAwLjYsLTAuNCAwLjYsLTAuNyBWIDg1LjcgYyAwLC0wLjIgLTAuMSwtMC40IC0wLjMsLTAuNiAtMC4zLDAgLTAuNSwwIC0wLjcsMCIvPjxwYXRoIGQ9Im0gNDk3LjQsMzguNyBjIDAsLTAuNCAtMC4zLC0wLjggLTAuOCwtMC44IGggLTEgYyAtNS4yLDAgLTExLjYsLTAuMSAtMjEsNS4yIHYgLTQgYyAwLC0wLjQgLTAuMywtMC44IC0wLjgsLTAuOCBoIC0xNCBjIC0wLjQsMCAtMC44LDAuMyAtMC44LDAuOCBWIDk3IGMgMCwwLjQgMC4zLDAuOCAwLjgsMC44IGggMTUuOCBjIDAuNCwwIDAuOCwtMC4zIDAuOCwtMC44IFYgNTUuNyBjIDUuMiwtMy40IDEzLjcsLTMuNCAxOS40LC0zLjQgaCAwLjkgYyAwLjQsMCAwLjgsLTAuMyAwLjgsLTAuOCB6Ii8+PHBhdGggZD0ibSA1MjkuMiwzNy4xIGMgLTE5LjcsMCAtMzEuOSwxMS45IC0zMS45LDMwLjkgMCwxOS4xIDEyLjIsMzAuOSAzMS45LDMwLjkgMTguNiwwIDMxLjcsLTEyLjcgMzEuNywtMzAuOSAwLC0xOS4xIC0xMi4yLC0zMC45IC0zMS43LC0zMC45IG0gMTMuNywzMS4xIGMgMCwxMy4yIC00LDE4LjYgLTEzLjgsMTguNiAtOS45LDAgLTEzLjksLTUuNCAtMTMuOSwtMTguNiAwLC0xMy4zIDQsLTE4LjcgMTMuOSwtMTguNyA5LjgsMCAxMy44LDUuNCAxMy44LDE4LjciLz48L2c+PC9zdmc+"); }
.client-logo.fca { aspect-ratio: 616 / 87; width: clamp(200px, 88%, 290px); -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 616.0 87.0%22%3E%3Cpath fill=%22%2324323F%22 fill-rule=%22evenodd%22 d=%22M557.2 50.3 L556.5 51.3 L556.8 78.7 L558.3 79.0 L559.2 78.2 L559.5 68.0 L567.3 67.5 L569.0 68.8 L576.8 78.8 L579.0 78.8 L579.0 77.0 L571.5 67.5 L571.8 66.8 L576.5 64.5 L578.3 61.8 L579.0 57.5 L577.3 53.8 L575.5 52.0 L570.0 50.2Z M559.3 53.7 L560.3 53.0 L569.2 53.0 L572.3 53.5 L573.8 54.3 L575.7 56.5 L575.7 61.0 L573.8 63.2 L571.0 64.5 L559.8 64.7 L559.3 64.2Z M530.3 50.3 L529.7 51.5 L529.8 78.3 L530.7 79.0 L549.8 78.8 L550.7 77.3 L548.8 76.2 L533.5 76.2 L532.7 75.5 L532.5 67.0 L533.0 66.2 L547.5 65.8 L548.3 65.2 L548.5 64.2 L547.0 63.0 L533.0 62.8 L532.5 61.7 L532.5 54.0 L533.2 53.2 L548.8 53.2 L550.2 52.5 L550.2 50.7 L549.3 50.2Z M520.2 50.2 L518.8 51.7 L519.0 78.0 L519.7 78.8 L520.8 79.0 L521.5 78.7 L522.0 77.3 L521.8 51.0Z M458.3 50.3 L457.7 51.3 L458.0 78.7 L459.5 79.0 L460.5 77.7 L460.5 56.3 L461.2 56.0 L479.7 78.8 L481.2 78.8 L481.8 76.5 L481.5 50.8 L480.0 50.2 L479.2 50.7 L478.8 51.7 L478.8 72.5 L478.3 72.8 L461.5 51.7 L460.0 50.3Z M395.3 50.3 L394.7 51.2 L394.8 78.5 L396.5 79.0 L397.3 77.8 L397.3 56.5 L398.0 55.8 L415.7 78.0 L417.8 79.0 L418.7 77.7 L418.3 50.7 L417.0 50.2 L415.8 51.2 L415.8 70.0 L414.3 71.3 L411.7 68.7 L397.7 50.8 L396.5 50.2Z M385.2 50.2 L384.0 51.3 L384.0 78.0 L384.7 78.8 L385.7 79.0 L386.5 78.5 L386.8 77.3 L386.8 51.5 L386.3 50.5Z M377.5 50.5 L358.5 50.2 L357.7 50.8 L357.3 77.2 L358.0 78.8 L359.5 79.0 L360.3 77.8 L360.3 67.2 L360.8 66.5 L375.2 66.3 L376.2 65.3 L376.0 64.2 L374.7 63.5 L360.8 63.5 L360.3 63.0 L360.5 53.5 L361.5 53.0 L377.0 53.0 L377.8 52.2Z M596.8 50.0 L595.8 50.7 L583.7 76.7 L583.3 78.3 L584.0 79.0 L585.0 79.0 L586.2 78.0 L589.7 71.2 L604.8 71.2 L605.5 71.7 L608.7 78.5 L610.7 79.0 L611.3 78.2 L611.2 77.0 L600.2 53.2 L598.3 50.2Z M597.2 54.5 L597.7 54.7 L603.7 67.5 L603.2 68.5 L591.3 68.5 L590.8 68.0Z M437.5 50.0 L435.8 52.0 L424.5 76.7 L424.2 78.3 L424.8 79.0 L426.7 78.5 L429.5 72.3 L430.7 71.2 L445.5 71.2 L446.5 72.0 L449.3 78.3 L450.2 79.0 L451.5 79.0 L452.2 78.2 L452.0 77.0 L440.2 51.5 L439.3 50.3Z M438.0 54.5 L438.7 54.8 L444.5 67.5 L444.2 68.5 L431.8 68.2 L432.3 66.2Z M500.0 49.8 L494.5 52.0 L490.8 55.5 L488.8 59.2 L488.2 61.7 L488.2 67.5 L489.8 72.3 L491.7 74.8 L494.8 77.5 L499.0 79.2 L506.0 79.2 L511.8 76.2 L513.3 74.5 L513.2 73.3 L511.7 72.8 L507.7 75.7 L504.7 76.7 L499.8 76.5 L497.2 75.5 L493.8 72.8 L491.2 67.3 L491.0 62.8 L491.5 60.5 L493.3 57.0 L496.3 54.2 L500.0 52.7 L504.0 52.5 L507.5 53.5 L511.2 56.2 L512.2 56.2 L513.2 55.2 L513.2 54.2 L512.0 53.0 L508.2 50.7 L505.3 49.8Z M542.8 11.3 L542.0 12.5 L542.0 39.0 L542.7 39.8 L543.8 40.0 L544.7 39.5 L545.0 38.3 L545.0 12.5 L544.3 11.5Z M510.5 11.7 L510.0 12.7 L510.3 39.5 L512.0 40.0 L513.0 38.8 L513.0 17.2 L513.7 16.8 L530.7 38.3 L532.5 40.0 L533.8 39.7 L534.0 12.0 L532.7 11.2 L531.7 11.8 L531.3 12.8 L531.5 32.8 L530.8 33.8 L513.7 12.3 L512.2 11.2Z M471.8 12.7 L467.0 11.2 L456.0 11.2 L455.0 11.7 L454.7 38.7 L455.5 40.0 L456.7 40.0 L457.5 39.2 L458.0 29.7 L469.2 29.0 L472.3 27.5 L475.0 24.7 L476.2 20.5 L475.8 17.7 L474.2 14.7Z M457.7 14.7 L458.3 14.0 L468.0 14.2 L470.7 15.3 L472.3 17.0 L473.2 19.3 L472.5 23.3 L470.0 25.7 L467.3 26.7 L458.2 26.7 L457.5 25.8Z M420.8 11.3 L420.0 13.0 L420.2 39.3 L422.0 40.0 L422.8 39.2 L423.2 17.7 L424.5 18.8 L433.3 31.5 L434.7 30.8 L442.5 19.2 L444.0 17.7 L444.3 39.0 L445.2 40.0 L446.7 39.8 L447.2 39.0 L446.8 11.7 L445.3 11.2 L443.8 12.3 L434.5 26.3 L433.3 26.8 L423.7 12.7 L421.8 11.2Z M102.8 11.7 L103.0 78.8 L116.5 78.7 L116.7 56.3 L117.5 55.5 L163.7 55.5 L164.5 54.8 L164.7 42.3 L163.8 41.5 L117.3 41.3 L116.7 40.5 L116.7 26.0 L118.0 25.0 L166.2 25.2 L167.3 24.3 L167.3 12.2 L166.8 11.3 L103.3 11.2Z M36.7 11.2 L27.3 13.0 L20.0 16.3 L12.8 22.7 L9.5 26.8 L9.5 27.5 L42.7 27.7 L43.5 28.3 L43.5 29.2 L40.2 38.7 L38.5 39.7 L5.3 39.5 L4.7 40.3 L4.3 44.7 L4.8 50.3 L5.5 50.8 L34.5 51.2 L35.2 52.2 L31.5 61.7 L30.5 63.0 L10.2 63.2 L10.0 63.8 L16.3 71.0 L23.3 75.5 L29.0 77.7 L40.0 78.8 L47.3 77.7 L52.8 75.7 L58.7 72.2 L63.8 67.2 L67.3 62.3 L70.2 56.0 L71.5 50.7 L71.8 43.7 L70.7 35.3 L67.7 28.5 L63.8 23.2 L59.5 18.8 L54.5 15.3 L47.3 12.3Z M564.0 11.0 L563.0 11.8 L550.7 38.3 L550.7 39.3 L551.3 40.0 L552.5 40.0 L553.5 39.2 L556.3 32.8 L557.2 32.2 L572.2 32.2 L576.0 39.5 L578.0 40.0 L578.7 39.3 L578.3 37.5 L567.0 13.0 L565.8 11.2Z M564.5 15.5 L565.5 16.3 L571.0 29.0 L570.5 29.5 L558.7 29.5 L558.2 29.0Z M489.8 11.0 L486.8 16.2 L476.8 37.8 L476.7 39.3 L477.5 40.0 L479.2 39.5 L482.2 33.0 L483.2 32.2 L498.0 32.2 L499.2 33.5 L501.8 39.3 L502.7 40.0 L503.8 40.0 L504.7 39.3 L504.3 37.7 L493.2 13.5 L491.7 11.2Z M490.3 15.5 L491.2 15.8 L496.7 27.8 L496.8 29.2 L496.3 29.5 L484.8 29.5 L484.2 29.0Z M398.0 10.7 L393.2 12.0 L390.5 13.7 L388.0 16.2 L385.8 19.8 L385.0 22.8 L384.8 26.3 L385.8 31.3 L387.7 34.7 L390.2 37.3 L395.2 40.0 L400.3 40.5 L405.8 39.0 L410.0 35.8 L413.0 30.8 L413.8 24.8 L413.0 20.2 L411.2 16.8 L408.5 13.8 L402.8 11.0Z M397.2 13.7 L401.5 13.7 L405.7 15.3 L409.3 19.3 L410.7 23.2 L410.7 28.3 L409.5 31.7 L406.0 35.7 L401.3 37.7 L397.3 37.7 L392.5 35.5 L389.7 32.3 L388.2 28.8 L388.0 23.2 L389.3 19.3 L392.7 15.5Z M369.2 10.7 L366.2 11.3 L363.0 12.8 L359.3 16.2 L356.8 20.8 L356.2 27.3 L358.0 33.2 L361.5 37.3 L367.0 40.2 L371.5 40.5 L374.8 40.0 L379.8 37.3 L381.5 35.5 L381.2 34.0 L379.7 33.8 L376.7 36.2 L372.8 37.7 L368.7 37.7 L365.3 36.5 L361.8 33.5 L360.2 30.8 L359.2 27.2 L359.2 23.8 L360.0 20.7 L361.2 18.5 L364.0 15.5 L367.0 14.0 L373.0 13.7 L376.0 14.7 L379.7 17.2 L381.2 16.7 L381.3 15.2 L376.7 11.8 L373.7 10.8Z M210.7 7.8 L203.7 9.0 L197.3 11.2 L190.8 15.2 L184.2 21.3 L180.2 27.2 L177.0 34.7 L176.0 39.2 L175.7 47.2 L176.8 54.8 L179.0 60.8 L183.2 67.7 L188.3 73.2 L193.2 76.8 L201.3 80.7 L209.0 82.3 L215.5 82.5 L221.3 81.7 L227.7 79.7 L232.0 77.5 L237.7 73.5 L240.5 70.8 L244.8 65.3 L247.8 59.7 L249.8 52.8 L249.2 52.2 L236.2 52.2 L232.8 58.2 L229.5 62.0 L224.7 65.7 L219.5 67.8 L215.5 68.5 L210.8 68.5 L204.5 67.0 L200.0 64.7 L195.2 60.3 L192.3 56.2 L190.2 50.5 L189.7 46.8 L190.0 40.7 L191.0 37.0 L193.8 31.7 L197.8 27.3 L203.2 23.8 L208.8 22.0 L214.8 21.7 L221.7 23.2 L228.2 27.0 L232.8 32.0 L236.0 38.0 L248.8 38.2 L249.7 37.7 L249.8 36.7 L247.7 30.2 L244.5 24.5 L241.0 20.0 L235.3 15.0 L228.5 11.0 L223.0 9.0 L216.2 7.8Z M248.3 78.0 L248.7 79.0 L263.7 79.0 L264.5 78.3 L289.7 34.7 L290.8 34.2 L316.5 78.2 L317.5 79.0 L332.3 79.0 L332.8 78.5 L290.7 6.0 L289.7 6.7Z M528.3 6.2 L527.3 5.2 L525.0 6.7 L519.2 5.3 L517.0 6.8 L516.2 8.7 L516.5 9.5 L517.3 9.8 L519.7 8.2 L525.5 9.7 L527.7 8.0Z M548.3 4.8 L547.0 4.2 L545.7 4.5 L543.0 7.8 L543.0 9.3 L544.5 9.3 L548.3 6.2Z%22/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 616.0 87.0%22%3E%3Cpath fill=%22%2324323F%22 fill-rule=%22evenodd%22 d=%22M557.2 50.3 L556.5 51.3 L556.8 78.7 L558.3 79.0 L559.2 78.2 L559.5 68.0 L567.3 67.5 L569.0 68.8 L576.8 78.8 L579.0 78.8 L579.0 77.0 L571.5 67.5 L571.8 66.8 L576.5 64.5 L578.3 61.8 L579.0 57.5 L577.3 53.8 L575.5 52.0 L570.0 50.2Z M559.3 53.7 L560.3 53.0 L569.2 53.0 L572.3 53.5 L573.8 54.3 L575.7 56.5 L575.7 61.0 L573.8 63.2 L571.0 64.5 L559.8 64.7 L559.3 64.2Z M530.3 50.3 L529.7 51.5 L529.8 78.3 L530.7 79.0 L549.8 78.8 L550.7 77.3 L548.8 76.2 L533.5 76.2 L532.7 75.5 L532.5 67.0 L533.0 66.2 L547.5 65.8 L548.3 65.2 L548.5 64.2 L547.0 63.0 L533.0 62.8 L532.5 61.7 L532.5 54.0 L533.2 53.2 L548.8 53.2 L550.2 52.5 L550.2 50.7 L549.3 50.2Z M520.2 50.2 L518.8 51.7 L519.0 78.0 L519.7 78.8 L520.8 79.0 L521.5 78.7 L522.0 77.3 L521.8 51.0Z M458.3 50.3 L457.7 51.3 L458.0 78.7 L459.5 79.0 L460.5 77.7 L460.5 56.3 L461.2 56.0 L479.7 78.8 L481.2 78.8 L481.8 76.5 L481.5 50.8 L480.0 50.2 L479.2 50.7 L478.8 51.7 L478.8 72.5 L478.3 72.8 L461.5 51.7 L460.0 50.3Z M395.3 50.3 L394.7 51.2 L394.8 78.5 L396.5 79.0 L397.3 77.8 L397.3 56.5 L398.0 55.8 L415.7 78.0 L417.8 79.0 L418.7 77.7 L418.3 50.7 L417.0 50.2 L415.8 51.2 L415.8 70.0 L414.3 71.3 L411.7 68.7 L397.7 50.8 L396.5 50.2Z M385.2 50.2 L384.0 51.3 L384.0 78.0 L384.7 78.8 L385.7 79.0 L386.5 78.5 L386.8 77.3 L386.8 51.5 L386.3 50.5Z M377.5 50.5 L358.5 50.2 L357.7 50.8 L357.3 77.2 L358.0 78.8 L359.5 79.0 L360.3 77.8 L360.3 67.2 L360.8 66.5 L375.2 66.3 L376.2 65.3 L376.0 64.2 L374.7 63.5 L360.8 63.5 L360.3 63.0 L360.5 53.5 L361.5 53.0 L377.0 53.0 L377.8 52.2Z M596.8 50.0 L595.8 50.7 L583.7 76.7 L583.3 78.3 L584.0 79.0 L585.0 79.0 L586.2 78.0 L589.7 71.2 L604.8 71.2 L605.5 71.7 L608.7 78.5 L610.7 79.0 L611.3 78.2 L611.2 77.0 L600.2 53.2 L598.3 50.2Z M597.2 54.5 L597.7 54.7 L603.7 67.5 L603.2 68.5 L591.3 68.5 L590.8 68.0Z M437.5 50.0 L435.8 52.0 L424.5 76.7 L424.2 78.3 L424.8 79.0 L426.7 78.5 L429.5 72.3 L430.7 71.2 L445.5 71.2 L446.5 72.0 L449.3 78.3 L450.2 79.0 L451.5 79.0 L452.2 78.2 L452.0 77.0 L440.2 51.5 L439.3 50.3Z M438.0 54.5 L438.7 54.8 L444.5 67.5 L444.2 68.5 L431.8 68.2 L432.3 66.2Z M500.0 49.8 L494.5 52.0 L490.8 55.5 L488.8 59.2 L488.2 61.7 L488.2 67.5 L489.8 72.3 L491.7 74.8 L494.8 77.5 L499.0 79.2 L506.0 79.2 L511.8 76.2 L513.3 74.5 L513.2 73.3 L511.7 72.8 L507.7 75.7 L504.7 76.7 L499.8 76.5 L497.2 75.5 L493.8 72.8 L491.2 67.3 L491.0 62.8 L491.5 60.5 L493.3 57.0 L496.3 54.2 L500.0 52.7 L504.0 52.5 L507.5 53.5 L511.2 56.2 L512.2 56.2 L513.2 55.2 L513.2 54.2 L512.0 53.0 L508.2 50.7 L505.3 49.8Z M542.8 11.3 L542.0 12.5 L542.0 39.0 L542.7 39.8 L543.8 40.0 L544.7 39.5 L545.0 38.3 L545.0 12.5 L544.3 11.5Z M510.5 11.7 L510.0 12.7 L510.3 39.5 L512.0 40.0 L513.0 38.8 L513.0 17.2 L513.7 16.8 L530.7 38.3 L532.5 40.0 L533.8 39.7 L534.0 12.0 L532.7 11.2 L531.7 11.8 L531.3 12.8 L531.5 32.8 L530.8 33.8 L513.7 12.3 L512.2 11.2Z M471.8 12.7 L467.0 11.2 L456.0 11.2 L455.0 11.7 L454.7 38.7 L455.5 40.0 L456.7 40.0 L457.5 39.2 L458.0 29.7 L469.2 29.0 L472.3 27.5 L475.0 24.7 L476.2 20.5 L475.8 17.7 L474.2 14.7Z M457.7 14.7 L458.3 14.0 L468.0 14.2 L470.7 15.3 L472.3 17.0 L473.2 19.3 L472.5 23.3 L470.0 25.7 L467.3 26.7 L458.2 26.7 L457.5 25.8Z M420.8 11.3 L420.0 13.0 L420.2 39.3 L422.0 40.0 L422.8 39.2 L423.2 17.7 L424.5 18.8 L433.3 31.5 L434.7 30.8 L442.5 19.2 L444.0 17.7 L444.3 39.0 L445.2 40.0 L446.7 39.8 L447.2 39.0 L446.8 11.7 L445.3 11.2 L443.8 12.3 L434.5 26.3 L433.3 26.8 L423.7 12.7 L421.8 11.2Z M102.8 11.7 L103.0 78.8 L116.5 78.7 L116.7 56.3 L117.5 55.5 L163.7 55.5 L164.5 54.8 L164.7 42.3 L163.8 41.5 L117.3 41.3 L116.7 40.5 L116.7 26.0 L118.0 25.0 L166.2 25.2 L167.3 24.3 L167.3 12.2 L166.8 11.3 L103.3 11.2Z M36.7 11.2 L27.3 13.0 L20.0 16.3 L12.8 22.7 L9.5 26.8 L9.5 27.5 L42.7 27.7 L43.5 28.3 L43.5 29.2 L40.2 38.7 L38.5 39.7 L5.3 39.5 L4.7 40.3 L4.3 44.7 L4.8 50.3 L5.5 50.8 L34.5 51.2 L35.2 52.2 L31.5 61.7 L30.5 63.0 L10.2 63.2 L10.0 63.8 L16.3 71.0 L23.3 75.5 L29.0 77.7 L40.0 78.8 L47.3 77.7 L52.8 75.7 L58.7 72.2 L63.8 67.2 L67.3 62.3 L70.2 56.0 L71.5 50.7 L71.8 43.7 L70.7 35.3 L67.7 28.5 L63.8 23.2 L59.5 18.8 L54.5 15.3 L47.3 12.3Z M564.0 11.0 L563.0 11.8 L550.7 38.3 L550.7 39.3 L551.3 40.0 L552.5 40.0 L553.5 39.2 L556.3 32.8 L557.2 32.2 L572.2 32.2 L576.0 39.5 L578.0 40.0 L578.7 39.3 L578.3 37.5 L567.0 13.0 L565.8 11.2Z M564.5 15.5 L565.5 16.3 L571.0 29.0 L570.5 29.5 L558.7 29.5 L558.2 29.0Z M489.8 11.0 L486.8 16.2 L476.8 37.8 L476.7 39.3 L477.5 40.0 L479.2 39.5 L482.2 33.0 L483.2 32.2 L498.0 32.2 L499.2 33.5 L501.8 39.3 L502.7 40.0 L503.8 40.0 L504.7 39.3 L504.3 37.7 L493.2 13.5 L491.7 11.2Z M490.3 15.5 L491.2 15.8 L496.7 27.8 L496.8 29.2 L496.3 29.5 L484.8 29.5 L484.2 29.0Z M398.0 10.7 L393.2 12.0 L390.5 13.7 L388.0 16.2 L385.8 19.8 L385.0 22.8 L384.8 26.3 L385.8 31.3 L387.7 34.7 L390.2 37.3 L395.2 40.0 L400.3 40.5 L405.8 39.0 L410.0 35.8 L413.0 30.8 L413.8 24.8 L413.0 20.2 L411.2 16.8 L408.5 13.8 L402.8 11.0Z M397.2 13.7 L401.5 13.7 L405.7 15.3 L409.3 19.3 L410.7 23.2 L410.7 28.3 L409.5 31.7 L406.0 35.7 L401.3 37.7 L397.3 37.7 L392.5 35.5 L389.7 32.3 L388.2 28.8 L388.0 23.2 L389.3 19.3 L392.7 15.5Z M369.2 10.7 L366.2 11.3 L363.0 12.8 L359.3 16.2 L356.8 20.8 L356.2 27.3 L358.0 33.2 L361.5 37.3 L367.0 40.2 L371.5 40.5 L374.8 40.0 L379.8 37.3 L381.5 35.5 L381.2 34.0 L379.7 33.8 L376.7 36.2 L372.8 37.7 L368.7 37.7 L365.3 36.5 L361.8 33.5 L360.2 30.8 L359.2 27.2 L359.2 23.8 L360.0 20.7 L361.2 18.5 L364.0 15.5 L367.0 14.0 L373.0 13.7 L376.0 14.7 L379.7 17.2 L381.2 16.7 L381.3 15.2 L376.7 11.8 L373.7 10.8Z M210.7 7.8 L203.7 9.0 L197.3 11.2 L190.8 15.2 L184.2 21.3 L180.2 27.2 L177.0 34.7 L176.0 39.2 L175.7 47.2 L176.8 54.8 L179.0 60.8 L183.2 67.7 L188.3 73.2 L193.2 76.8 L201.3 80.7 L209.0 82.3 L215.5 82.5 L221.3 81.7 L227.7 79.7 L232.0 77.5 L237.7 73.5 L240.5 70.8 L244.8 65.3 L247.8 59.7 L249.8 52.8 L249.2 52.2 L236.2 52.2 L232.8 58.2 L229.5 62.0 L224.7 65.7 L219.5 67.8 L215.5 68.5 L210.8 68.5 L204.5 67.0 L200.0 64.7 L195.2 60.3 L192.3 56.2 L190.2 50.5 L189.7 46.8 L190.0 40.7 L191.0 37.0 L193.8 31.7 L197.8 27.3 L203.2 23.8 L208.8 22.0 L214.8 21.7 L221.7 23.2 L228.2 27.0 L232.8 32.0 L236.0 38.0 L248.8 38.2 L249.7 37.7 L249.8 36.7 L247.7 30.2 L244.5 24.5 L241.0 20.0 L235.3 15.0 L228.5 11.0 L223.0 9.0 L216.2 7.8Z M248.3 78.0 L248.7 79.0 L263.7 79.0 L264.5 78.3 L289.7 34.7 L290.8 34.2 L316.5 78.2 L317.5 79.0 L332.3 79.0 L332.8 78.5 L290.7 6.0 L289.7 6.7Z M528.3 6.2 L527.3 5.2 L525.0 6.7 L519.2 5.3 L517.0 6.8 L516.2 8.7 L516.5 9.5 L517.3 9.8 L519.7 8.2 L525.5 9.7 L527.7 8.0Z M548.3 4.8 L547.0 4.2 L545.7 4.5 L543.0 7.8 L543.0 9.3 L544.5 9.3 L548.3 6.2Z%22/%3E%3C/svg%3E"); }
.client-sub { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ink); }

/* Martillero */

.team { list-style: none; margin: 56px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(32px, 5vw, 64px); }
.member { border-top: 1px solid var(--ink); padding-top: 24px; transition: transform .35s cubic-bezier(.2,.7,.2,1); }
.member .photo { width: 100%; aspect-ratio: 4 / 5; max-height: 420px; margin-bottom: 24px; display: grid; place-items: center; background: var(--paper-2); color: var(--muted); font-family: var(--f-display); font-weight: 600; font-size: 44px; letter-spacing: .04em; overflow: hidden; }
.member .photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.member .bio { margin-top: 14px; color: var(--muted); font-size: 16px; }
.member .name { font-family: var(--f-display); font-weight: 600; font-size: 24px; line-height: 1.2; letter-spacing: -0.01em; color: var(--accent); text-transform: none; text-wrap: wrap; margin: 0; }
.team:empty { display: none; }
.member .role { margin-top: 6px; color: var(--muted); }
.member dl { margin: 22px 0 0; }
.member dl div { display: flex; justify-content: space-between; gap: 16px; padding-block: 11px; border-top: 1px solid var(--line); }
.member dt { font-size: 14px; color: var(--muted); }
.member dd { margin: 0; font-weight: 500; }

/* Próximas subastas */
.auctions { margin-top: 56px; }
.month + .month { margin-top: 40px; }
.month h3 { font-family: var(--f-body); font-size: 14px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); padding-bottom: 12px; border-bottom: 1px solid var(--ink); }
.auction-ul { list-style: none; margin: 0; padding: 0; }
.auction { display: grid; grid-template-columns: 96px minmax(0, 1fr) auto; gap: 24px; align-items: start; padding-block: 24px; border-bottom: 1px solid var(--line); }
.a-date { font-family: var(--f-display); font-weight: 600; font-size: 40px; line-height: 1; }
.a-date small { display: block; margin-top: 8px; font-family: var(--f-body); font-size: 14px; font-weight: 500; color: var(--muted); text-transform: capitalize; }
.a-body h4 { margin: 0; font-family: var(--f-display); font-weight: 600; font-size: 20px; line-height: 1.25; }
.a-meta { margin-top: 6px; color: var(--muted); font-size: 15px; }
.a-detail { margin-top: 10px; font-size: 16px; white-space: pre-line; }
.empty { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--line); }
.empty p { color: var(--muted); }
.btn.small { min-height: 38px; padding: 0 16px; font-size: 14px; }
.a-tag { display: inline-block; margin-bottom: 8px; padding: 3px 10px; border: 1px solid var(--gold); color: var(--accent); font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; border-radius: 2px; }
.a-photos { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.a-ph { position: relative; width: 160px; max-width: 31%; aspect-ratio: 4 / 3; padding: 0; border: 0; border-radius: 2px; overflow: hidden; cursor: zoom-in; background: var(--line); }
.a-ph img { width: 100%; height: 100%; object-fit: cover; display: block; }
.a-ph .more { position: absolute; inset: 0; display: grid; place-items: center; background: rgba(36,50,63,.62); color: #fff; font-weight: 600; font-size: 18px; }
.a-ph:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.ph-viewer { border: 0; padding: 0; background: transparent; width: min(1040px, 100vw); max-width: 100vw; max-height: 100dvh; margin: auto; overflow: visible; }
.ph-viewer::backdrop { background: rgba(20,28,36,.9); }
.ph-box { position: relative; display: grid; place-items: center; min-height: 200px; }
.ph-box img { max-width: 100vw; max-height: calc(100dvh - 64px); object-fit: contain; display: block; }
.ph-viewer .ph-close { position: absolute; top: 8px; right: 8px; z-index: 3; }
.ph-count { color: #F2F4F6; text-align: center; padding: 10px; font-size: 14px; margin: 0; max-width: none; width: 100%; }
.a-bases a { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; }
.a-actions { display: flex; flex-direction: column; gap: 10px; align-items: stretch; }
.a-card-hl { animation: hl 2.4s ease; }
@keyframes hl { 0%, 60% { background: var(--accent-soft); } 100% { background: transparent; } }

/* Párrafos justificados */
.hero .lead, .sec-head .intro, .card p, .steps p, .legal, .member .bio, .a-detail, .split > div > p, .empty p { hyphens: manual; -webkit-hyphens: manual; text-wrap: pretty; }

/* Opiniones */
.quotes { --qgap: clamp(16px, 3vw, 32px); --qw: min(560px, 74%); list-style: none; margin: 56px 0 0; padding: 0 0 6px; display: flex; gap: var(--qgap); overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.quotes::-webkit-scrollbar { display: none; }
.quotes::before, .quotes::after { content: ""; flex: 0 0 max(0px, calc((100% - var(--qw)) / 2 - var(--qgap))); }
.quotes .quote { flex: 0 0 var(--qw); scroll-snap-align: center; scroll-snap-stop: always; opacity: .38; transform: scale(.94); transition: opacity .35s ease, transform .35s ease; }
.quotes .quote.is-on { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .quotes .quote { transition: none; } }
.op-nav { display: flex; align-items: center; gap: 10px; margin-top: 28px; }
.op-nav[hidden] { display: none; }
.op-nav button { width: 44px; height: 44px; border: 1px solid var(--ink); background: transparent; color: var(--ink); border-radius: 50%; font-size: 20px; line-height: 1; cursor: pointer; transition: background .2s ease, color .2s ease, opacity .2s ease; }
.op-nav button:hover:not(:disabled) { background: var(--ink); color: var(--paper); }
.op-nav button:disabled { opacity: .35; cursor: default; }
.op-nav .op-pos { margin-left: 8px; font-size: 14px; color: var(--muted); }
.quote { border-top: 1px solid var(--ink); padding-top: 24px; display: flex; flex-direction: column; gap: 20px; }
.quote blockquote { margin: 0; font-size: 18px; font-style: italic; line-height: 1.55; hyphens: manual; -webkit-hyphens: manual; }
.quote .who { font-weight: 600; color: var(--accent); }
.quote .rol { color: var(--muted); font-size: 15px; }
.empty-note { margin-top: 40px; color: var(--muted); font-size: 15px; max-width: 70ch; }

/* Contacto */
.contact { background: var(--contact-bg); color: var(--contact-fg); margin-inline: calc(var(--gutter) * -1); padding-inline: var(--gutter); border-top: 0; }
.contact .eyebrow { color: var(--gold); }
.contact h2 { font-size: clamp(32px, 4.6vw, 56px); max-width: 16ch; }
.contact .grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: clamp(28px, 6vw, 80px); align-items: end; }
.contact .box { border: 1px solid color-mix(in srgb, var(--contact-fg) 30%, transparent); padding: 24px; }
.contact .box div { display: flex; justify-content: space-between; gap: 16px; padding-block: 12px; border-top: 1px solid color-mix(in srgb, var(--contact-fg) 22%, transparent); }
.contact .box div:first-child { border-top: 0; padding-top: 0; }
.contact .box div:last-child { padding-bottom: 0; }
.contact dt { font-size: 14px; opacity: .75; }
.contact dd { margin: 0; text-align: right; }
.contact dd a { color: inherit; text-underline-offset: 3px; overflow-wrap: anywhere; }
.contact .logo-big { height: 44px; width: auto; max-width: 100%; margin-bottom: 28px; }

footer { padding-block: 28px; display: flex; flex-wrap: wrap; justify-content: center; text-align: center; gap: 12px; font-size: 14px; color: var(--muted); }

/* Vender */
.vender { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-top: 16px; padding: 28px; border: 1px solid var(--line); border-left: 3px solid var(--gold); border-radius: 2px; }
.vender h3, .vender h2 { font-size: 22px; margin: 0 0 6px; }
.vender p { color: var(--muted); }

/* Menú y páginas */
.menu-btn { display: none; width: 44px; height: 44px; border: 1px solid var(--line); background: transparent; border-radius: 2px; cursor: pointer; padding: 0; flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.menu-btn span { display: block; width: 20px; height: 2px; background: var(--ink); transition: transform .2s ease, opacity .2s ease; }
header.top.open .menu-btn span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
header.top.open .menu-btn span:nth-child(2) { opacity: 0; }
header.top.open .menu-btn span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
nav.main a[aria-current="page"]:not(.btn) { color: var(--ink); box-shadow: 0 6px 0 -4px var(--gold); }
.pg-off { display: none !important; }
main > .pg-first { border-top: 0; }
main > section.pg-first { padding-top: clamp(40px, 6vw, 72px); }
.atajos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.atajos a { position: relative; display: block; height: 100%; padding: 24px 24px 52px; border: 1px solid var(--line); border-radius: 2px; text-decoration: none; transition: border-color .2s ease, transform .2s ease; }
.atajos a:hover { border-color: var(--gold); transform: translateY(-2px); }
.atajos h3 { font-size: 20px; margin: 0 0 8px; }
.atajos p { color: var(--muted); font-size: 15px; }
.atajos span { position: absolute; left: 24px; bottom: 20px; color: var(--gold); font-size: 20px; }
#atajos { padding-top: 0; border-top: 0; }
@media (max-width: 1220px) {
  header.top { position: relative; }
  .menu-btn { display: inline-flex; }
  nav.main { display: none; position: absolute; top: 100%; left: 0; right: 0; z-index: 20; flex-direction: column; align-items: stretch; gap: 0; background: var(--paper); border: 1px solid var(--line); border-top: 0; padding: 8px 16px 16px; box-shadow: 0 14px 30px rgba(0,0,0,.12); }
  header.top.open nav.main { display: flex; }
  nav.main a { padding: 14px 4px; border-bottom: 1px solid var(--line); }
  nav.main a[aria-current="page"]:not(.btn) { box-shadow: inset 3px 0 0 var(--gold); padding-left: 12px; }
  nav.main .btn { margin-top: 12px; justify-content: center; border-bottom: 0; }
}

@media (max-width: 900px) {
  .hero, .sec-head, .split, .team, .contact .grid { grid-template-columns: minmax(0, 1fr); }
  .cards { grid-template-columns: minmax(0, 1fr); }
  .quotes { --qw: min(80%, 420px); }
  .split { margin-top: 36px; }
  .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .steps { grid-template-columns: minmax(0, 1fr); }
  .auction { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .a-actions { align-items: flex-start; }
  .a-date { display: flex; align-items: baseline; gap: 10px; font-size: 32px; }
  .a-date small { margin-top: 0; }
  .clients { grid-template-columns: minmax(0, 1fr); }
  .client + .client { border-left: 0; border-top: 1px solid var(--line); }
  .client { min-height: 112px; }
  body { font-size: 16px; }
  .brand img { height: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none !important; }
}

/* Preguntas frecuentes */
.faq { margin-top: 48px; border-top: 1px solid var(--ink); max-width: 860px; }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-block: 22px; font-family: var(--f-display); font-weight: 600; font-size: clamp(18px, 2.2vw, 21px); line-height: 1.3; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: ""; flex: none; width: 12px; height: 12px; border-right: 2px solid var(--accent); border-bottom: 2px solid var(--accent); transform: rotate(45deg); margin-top: -4px; transition: transform .2s ease; }
.faq details[open] summary::after { transform: rotate(225deg); margin-top: 4px; }
.faq summary:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.faq .ans { padding: 0 40px 24px 0; color: var(--muted); font-size: 17px; }
.faq .ans p { margin: 0; hyphens: manual; }
.faq .ans p + p { margin-top: 10px; }
.faq .ans a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 640px) { .faq .ans { padding-right: 0; } }

/* Catálogo de lotes (se carga desde catalogo.json) */
.cat-info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 4vw, 56px); margin-top: 28px; }
.ci { border-top: 3px solid var(--gold); padding-top: 20px; }
.ci h3 { font-family: var(--f-display); font-weight: 600; font-size: clamp(24px, 3vw, 32px); margin: 0 0 18px; }
.ci .ci-lead { font-family: var(--f-display); font-weight: 600; font-size: clamp(22px, 2.8vw, 30px); line-height: 1.2; margin: 0 0 16px; }
.ci dl { margin: 0; border-top: 1px solid var(--line); }
.ci dl > div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 16px; padding-block: 12px; border-bottom: 1px solid var(--line); }
.ci dt { color: var(--muted); font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; padding-top: 3px; }
.ci dd { margin: 0; font-size: 18px; font-weight: 500; }
.ci dd small { display: block; color: var(--muted); font-size: 15px; margin-top: 2px; }
.ci dd a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; font-size: 14px; }
.cat-by { grid-column: 1 / -1; color: var(--muted); font-size: 15px; margin: -8px 0 0; }
@media (max-width: 760px) { .cat-info { grid-template-columns: 1fr; } .ci dl > div { grid-template-columns: 104px minmax(0, 1fr); gap: 12px; } }
.cat-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 40px; }
.cat-chip { font: inherit; font-size: 14px; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 999px; padding: 8px 16px; cursor: pointer; }
.cat-chip[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.cat-chip:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.cat-list { list-style: none; margin: 24px 0 0; padding: 0; border-top: 1px solid var(--ink); }
.cat-row { align-items: center; display: grid; grid-template-columns: 96px 56px minmax(0, 1fr) 190px 70px 120px; gap: 20px; align-items: center; padding-block: 18px; border-bottom: 1px solid var(--line); }
.cat-n { font-family: var(--f-display); font-weight: 600; font-size: 20px; color: var(--accent); }
.cat-name { font-family: var(--f-display); font-weight: 600; font-size: 18px; line-height: 1.25; }
.cat-name small { display: block; margin-top: 4px; font-family: var(--f-body); font-weight: 400; font-size: 14px; color: var(--muted); }
.cat-ent { font-size: 15px; color: var(--muted); }
.cat-year, .cat-km { font-size: 16px; text-align: right; font-variant-numeric: tabular-nums; }
.cat-km span { color: var(--muted); }
.cat-head { color: var(--muted); font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; padding-block: 12px; }
.cat-head .cat-year, .cat-head .cat-km, .cat-head .cat-ent { font-size: 14px; }
.cat-thumb { display: block; width: 96px; height: 72px; padding: 0; border: 0; border-radius: 6px; overflow: hidden; background: var(--paper-2); cursor: pointer; position: relative; }
.cat-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .25s ease; }
.cat-thumb:hover img { transform: scale(1.05); }
.cat-thumb:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.cat-thumb .cat-count { position: absolute; right: 4px; bottom: 4px; background: rgba(36,50,63,.85); color: #fff; font-size: 14px; font-weight: 600; padding: 2px 6px; border-radius: 4px; }
.cat-thumb.ph { cursor: default; }
.cat-viewer { border: 0; padding: 0; background: transparent; width: min(560px, 100vw); max-width: 100vw; max-height: 100dvh; margin: auto; overflow: visible; width: min(1040px, 100vw); }
.cat-viewer::backdrop { background: rgba(20,28,36,.82); }
.cv-box { position: relative; background: var(--paper); border-radius: 10px; overflow: hidden; color: var(--ink); }
.cv-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 14px 12px 18px; border-bottom: 1px solid var(--line); }
.cv-title { font-family: var(--f-display); font-weight: 600; font-size: 16px; line-height: 1.25; }
.cv-title small { display: block; font-family: var(--f-body); font-weight: 400; font-size: 14px; color: var(--muted); }
.cv-close, .cv-nav { font: inherit; border: 0; cursor: pointer; color: var(--ink); background: var(--paper-2); width: 40px; height: 40px; border-radius: 999px; font-size: 22px; line-height: 1; display: grid; place-items: center; flex: none; }
.cv-close:focus-visible, .cv-nav:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.cv-stage { position: relative; background: #11181f; aspect-ratio: 3 / 4; max-height: calc(100dvh - 150px); margin-inline: auto; display: grid; place-items: center; touch-action: pan-y; max-height: calc(100dvh - 130px); }
.cv-stage img { width: 100%; height: 100%; object-fit: contain; display: block; }
.cv-nav { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(244,245,246,.92); z-index: 2; background: #fff; color: #24323F; box-shadow: 0 1px 6px rgba(0,0,0,.35); width: 44px; height: 44px; }
/* Las flechas del visor del catálogo van debajo de la foto, a los costados del contador, para no tapar la imagen */
.cv-foot .cv-nav { position: static; transform: none; width: 44px; height: 44px; }
.cv-foot .cv-nav[hidden] { display: none; }
.ph-box .cv-prev { left: 10px; } .ph-box .cv-next { right: 10px; }
.cv-cta { padding: 32px 64px; text-align: center; background: var(--paper); width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; }
.cv-cta h3 { font-family: var(--f-display); font-weight: 600; font-size: 24px; line-height: 1.2; margin: 0; }
.cv-cta p { color: var(--muted); margin: 0; max-width: 34ch; }
.cv-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px; font-size: 14px; color: var(--muted); text-align: center; font-variant-numeric: tabular-nums; }
.cv-foot .cv-count { flex: 1; min-width: 0; }
/* Dónde y cuándo */
.dnd { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: clamp(24px, 4vw, 56px); margin-top: 48px; align-items: start; }
.dnd.rev > .dnd-media { order: -1; }
.dnd .ci > p { margin: 0 0 20px; color: var(--muted); font-size: 17px; }
.dnd .ci > p a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; font-size: inherit; }
.dnd-media { display: grid; gap: 12px; min-width: 0; }
.dnd-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.dnd-ph { aspect-ratio: 16 / 10; display: grid; place-items: center; text-align: center; padding: 16px; background: var(--paper-2); color: var(--muted); font-size: 15px; overflow: hidden; }
.dnd-ph img, .dnd-ph video { width: 100%; height: 100%; object-fit: cover; display: block; }
.dnd-main { aspect-ratio: 4 / 3; padding: 0; position: relative; display: block; border-radius: 4px; box-shadow: 0 22px 44px -26px rgba(10,20,30,.55); isolation: isolate; }
.dnd-main img { position: absolute; inset: 0; object-position: 50% 40%; transition: transform 1.1s cubic-bezier(.2,.7,.2,1), filter .6s ease; transform: scale(1.001); }

.dnd-b { aspect-ratio: 1 / 1; }
.dnd-b img { object-position: 50% 52%; }
.dnd-two .dnd-ph { aspect-ratio: 4 / 3; }

.dnd-main::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(15,23,30,0) 52%, rgba(15,23,30,.78) 100%), linear-gradient(135deg, rgba(36,50,63,.14), rgba(36,50,63,0) 45%); transition: opacity .6s ease; }
.dnd-main::after { content: ""; position: absolute; inset: 22px; z-index: 2; pointer-events: none; border: 1px solid rgba(240,203,110,.9); opacity: 0; transform: scale(1.025); transition: opacity .55s ease, transform .75s cubic-bezier(.2,.7,.2,1); -webkit-mask: linear-gradient(#000 0 0) top left / 28px 28px no-repeat, linear-gradient(#000 0 0) top right / 28px 28px no-repeat, linear-gradient(#000 0 0) bottom left / 28px 28px no-repeat, linear-gradient(#000 0 0) bottom right / 28px 28px no-repeat; mask: linear-gradient(#000 0 0) top left / 28px 28px no-repeat, linear-gradient(#000 0 0) top right / 28px 28px no-repeat, linear-gradient(#000 0 0) bottom left / 28px 28px no-repeat, linear-gradient(#000 0 0) bottom right / 28px 28px no-repeat; }
.dnd-cap { position: absolute; left: 0; bottom: 0; z-index: 3; display: flex; align-items: center; gap: 12px; max-width: 100%; padding: 0 20px 18px; color: #F2F4F6; font-family: var(--f-body); font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; line-height: 1.3; text-shadow: 0 1px 10px rgba(0,0,0,.55); pointer-events: none; }
.dnd-cap::before { content: ""; flex: none; width: 28px; height: 2px; background: var(--gold); transition: width .5s cubic-bezier(.2,.7,.2,1); }
@media (hover: hover) {
  .dnd-main:hover img { transform: scale(1.045); }
  .dnd-main:hover::after { opacity: 1; transform: none; }
  .dnd-main:hover .dnd-cap::before { width: 44px; }
}
@media (hover: none) { .dnd-main::after { opacity: .5; transform: none; } }
@media (prefers-reduced-motion: reduce) { .dnd-main img, .dnd-main::after, .dnd-cap::before { transition: none; } .dnd-main:hover img { transform: none; } }
@media (max-width: 860px) { .dnd { grid-template-columns: minmax(0, 1fr); margin-top: 36px; } .dnd.rev > .dnd-media { order: 0; } }
.cat-foot { margin-top: 28px; color: var(--muted); font-size: 15px; max-width: 70ch; }
@media (max-width: 640px) {
  .cat-row { grid-template-columns: 88px minmax(0, 1fr); gap: 4px 14px; align-items: start; }
  .cat-row > .cat-thumb { grid-column: 1; grid-row: 1 / span 5; width: 88px; height: 88px; }
  .cat-row > :not(.cat-thumb) { grid-column: 2; }
  .cat-ent, .cat-year, .cat-km { text-align: left; font-size: 15px; }
  .cat-ent::before { content: 'Vende: '; }
  .cat-head { display: none; }
}

.cat-rowbtn { all: unset; box-sizing: border-box; display: grid; grid-template-columns: 96px 56px minmax(0, 1fr) 190px 70px 120px; gap: 20px; align-items: center; width: 100%; padding-block: 18px; cursor: pointer; }
.cat-rowbtn:hover .cat-name { text-decoration: underline; text-underline-offset: 4px; text-decoration-color: var(--gold); }
.cat-rowbtn:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
li.cat-row:has(.cat-rowbtn) { display: block; padding-block: 0; }
.cat-hint { color: var(--muted); font-size: 15px; margin: 20px 0 0; }

.cv-body { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); }
.cv-media { min-width: 0; }

.cv-side { padding: 20px 22px 24px; border-left: 1px solid var(--line); overflow-y: auto; max-height: calc(100dvh - 60px); }
.cv-side h4 { font-family: var(--f-display); font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); margin: 0 0 8px; }
.cv-side section { padding: 0; margin: 0; border: 0; }
.cv-side section + section { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--line); }
.cv-side dl { margin: 0; display: grid; gap: 6px; }
.cv-side dl > div { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 12px; font-size: 15px; }
.cv-side dt { color: var(--muted); }
.cv-side dd { margin: 0; }
.cv-side dd small { display: block; color: var(--muted); }
.cv-side a { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.cv-side .cv-note { font-size: 14px; color: var(--muted); margin: 0; }
.cv-car { width: 100%; height: 100%; overflow-y: auto; background: var(--paper); padding: 28px 68px; text-align: left; }
.cv-car h3 { font-family: var(--f-display); font-weight: 600; font-size: 22px; margin: 0 0 4px; }
.cv-car > p { color: var(--muted); font-size: 14px; margin: 0 0 16px; }
.cv-car dl { margin: 0; display: grid; gap: 0; }
.cv-car dl > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 15px; grid-template-columns: auto minmax(0, 1fr); }
.cv-car dt { color: var(--muted); } .cv-car dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; }
.cv-car .tot dt, .cv-car .tot dd { color: var(--ink); font-weight: 600; }
.cv-car a { display: inline-block; margin-top: 18px; color: var(--ink); text-underline-offset: 3px; }

.cv-stage video { width: 100%; height: 100%; object-fit: contain; background: #000; display: block; }
@media (max-width: 800px) {
  .cat-rowbtn { grid-template-columns: 88px minmax(0, 1fr); gap: 4px 14px; align-items: start; padding-block: 18px; }
  .cat-rowbtn > .cat-thumb { grid-column: 1; grid-row: 1 / span 5; width: 88px; height: 88px; }
  .cat-rowbtn > :not(.cat-thumb) { grid-column: 2; }
  .cat-rowbtn .cat-ent, .cat-rowbtn .cat-year, .cat-rowbtn .cat-km { text-align: left; font-size: 15px; }
  .cat-rowbtn .cat-ent::before { content: 'Vende: '; }
  .cv-body { grid-template-columns: 1fr; }
  .cv-side { border-left: 0; border-top: 1px solid var(--line); max-height: none; }
  .cv-stage { max-height: 62dvh; }
  .cv-car { padding: 20px 56px; }
  .cat-viewer { max-height: 100dvh; overflow-y: auto; }
}
.cv-car .cc-blk + .cc-blk { margin-top: 12px; }
.cv-car h4 { font-family: var(--f-display); font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); margin: 0 0 4px; }
.cv-car .cc-blk dl > div { padding: 5px 0; font-size: 15px; }
.cv-car .cc-blk { border: 1px solid var(--line); border-radius: 8px; padding: 12px 16px 10px; }
.cv-car .cc-blk dl > div:last-child { border-bottom: 0; }
.cv-car .cc-exp { margin: 4px 0 4px; color: var(--muted); font-size: 14px; text-align: left; }
.cv-car { padding-block: 14px; }
.cv-stage > #cv-slide { min-height: 0; overflow: hidden; }

.cv-car dt { padding-right: 8px; }

.cv-nav:hover { background: #F1E5C6; }
.cv-nav svg { display: block; }

/* Simulador */
.sim { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(24px, 4vw, 56px); margin-top: 48px; align-items: start; }
.sim-in { border: 1px solid var(--line); border-radius: 8px; padding: 22px; position: sticky; top: 16px; padding: 24px; }
.sim-in label, .sim-in .lbl { display: block; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); margin-bottom: 10px; }
.sim-ents { display: flex; flex-direction: column; gap: 8px; margin-bottom: 22px; }
.sim-ent { font: inherit; text-align: left; color: var(--ink); background: transparent; border: 1px solid var(--line); border-radius: 6px; padding: 12px 14px; cursor: pointer; display: flex; align-items: center; gap: 12px; }
.sim-ent[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: var(--paper); }
.sim-ent:focus-visible, .sim-money input:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.sim-money { display: flex; align-items: center; border: 1px solid var(--ink); border-radius: 6px; padding: 0 14px; background: var(--paper); }
.sim-money span { font-family: var(--f-display); font-weight: 600; font-size: 22px; color: var(--muted); }
.sim-money input { font: inherit; font-family: var(--f-display); font-weight: 600; font-size: 24px; color: var(--ink); background: transparent; border: 0; width: 100%; min-height: 56px; padding: 0 0 0 10px; font-variant-numeric: tabular-nums; }
.sim-money input:focus-visible { outline: 0; }
.sim-hint { margin: 10px 0 0; font-size: 14px; color: var(--muted); }
.sim-out { display: grid; gap: 16px; }
.sim-blk { border: 1px solid var(--line); border-radius: 8px; padding: 16px 20px 8px; }
.sim-blk h3 { font-family: var(--f-display); font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--accent); margin: 0 0 4px; }
.sim-blk dl { margin: 0; }
.sim-blk dl > div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--line); font-size: 16px; }
.sim-blk dl > div:last-child { border-bottom: 0; }
.sim-blk dt small { display: block; color: var(--muted); font-size: 14px; }
.sim-blk dd { margin: 0; text-align: right; font-variant-numeric: tabular-nums; }
.sim-blk .tot dt, .sim-blk .tot dd { font-weight: 600; font-size: 18px; }
.sim-blk.key { border-color: var(--ink); }
.sim-legal { margin: 32px auto 0; width: 100%; color: var(--muted); font-size: 14px; max-width: 90ch; hyphens: manual; -webkit-hyphens: manual; text-wrap: pretty; }
@media (max-width: 860px) { .sim { grid-template-columns: minmax(0, 1fr); } }

.sim-step { display: flex; gap: 14px; align-items: flex-start; }
.sim-step + .sim-step { margin-top: 22px; padding-top: 22px; border-top: 1px dashed var(--line); }
.sim-step .n { flex: none; width: 32px; height: 32px; border-radius: 50%; background: var(--gold); color: var(--on-gold); font-family: var(--f-display); font-weight: 700; font-size: 16px; display: grid; place-items: center; }
.sim-step .body { flex: 1; min-width: 0; }
.sim-step .sim-ents { margin-bottom: 0; }
.sim-step label, .sim-step .lbl { margin-bottom: 12px; font-size: 14px; }

.sim-ent::before { content: ""; flex: none; width: 16px; height: 16px; border-radius: 50%; border: 2px solid var(--muted); box-sizing: border-box; }
.sim-ent[aria-pressed="true"]::before { border-color: var(--gold); background: radial-gradient(circle, var(--gold) 0 4px, transparent 5px); }
.sim-blk { padding: 0; overflow: hidden; border-left-width: 6px; }
.sim-blk dl { padding: 4px 20px 6px; }
.sim-head { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.sim-head h3 { margin: 0; font-size: 14px; }
.sim-head p { margin: 4px 0 0; font-size: 14px; color: var(--muted); }
.sim-head strong { font-family: var(--f-display); font-weight: 700; font-size: clamp(22px, 3vw, 30px); letter-spacing: -.01em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.sim-blk.total { border-color: var(--contact-bg); background: var(--contact-bg); color: #F2F4F6; }
.sim-blk.total .sim-head { border-bottom-color: rgba(255,255,255,.2); }
.sim-blk.total h3 { color: var(--gold); }
.sim-blk.total .sim-head p, .sim-blk.total dt small { color: inherit; opacity: .78; }
.sim-blk.total dl > div { border-bottom-color: rgba(255,255,255,.16); }
.sim-blk.hoy { border-left-color: var(--gold); }
.sim-blk.desp { border-left-color: #5B7691; }
.sim-blk.desp h3 { color: var(--muted); }
@media (max-width: 860px) { .sim-in { position: static; } }
@media (max-width: 480px) { .sim-head { flex-direction: column; align-items: flex-start; gap: 8px; } }
.sim-blk dl > .wide { display: block; }
.sim-blk dl > .wide dd { text-align: left; color: var(--muted); font-size: 15px; margin-top: 2px; }

.cat-row.cat-cancel { display: grid; grid-template-columns: 96px 56px minmax(0, 1fr); gap: 20px; align-items: center; padding-block: 14px; }
.cat-cancel .cat-n { text-decoration: line-through; text-decoration-thickness: 2px; color: var(--muted); }
.cat-cancel .cc-band { grid-column: 3; display: flex; align-items: center; justify-content: center; min-height: 40px; border: 1px solid var(--muted); color: var(--ink); font-family: var(--f-display); font-weight: 600; font-size: 13px; letter-spacing: .18em; text-transform: uppercase; background: repeating-linear-gradient(135deg, transparent 0 10px, var(--paper-2) 10px 20px); }
.cat-cancel .cc-band span { background: var(--paper); padding: 4px 14px; }
@media (max-width: 800px) { .cat-row.cat-cancel { grid-template-columns: 56px minmax(0, 1fr); gap: 14px; } .cat-cancel .cc-band { grid-column: 2; } .cat-cancel .cc-sp { display: none; } }
.cards.two { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 48px; }
.card.kind { border-top: 3px solid var(--gold); padding-top: 22px; }
.card.kind h3, .card.kind h2 { font-size: 24px; }
#servicios .cards:not(.two) { padding-top: 48px; margin-top: 48px; border-top: 1px solid var(--line); }
@media (max-width: 860px) { .cards.two { grid-template-columns: minmax(0, 1fr); } }
.cat-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 40px; border-bottom: 1px solid var(--line); }
.cat-tab { font: inherit; font-weight: 600; font-size: 16px; color: var(--muted); background: transparent; border: 0; border-bottom: 3px solid transparent; padding: 12px 18px; margin-bottom: -1px; cursor: pointer; }
.cat-tab[aria-selected="true"] { color: var(--ink); border-bottom-color: var(--gold); }
.cat-tab:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }
.cat-tab small { font-weight: 400; color: var(--muted); margin-left: 6px; }
.cat-state { margin: 24px 0 0; color: var(--muted); font-size: 16px; }
.cat-state.done { display: inline-block; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ink); border: 1px solid var(--muted); padding: 6px 12px; border-radius: 2px; }
.faq .ans ul { margin: 12px 0 0; padding-left: 22px; max-width: 62ch; }
.faq .ans li { margin-top: 4px; }
.faq .ans .ans-cta { margin-top: 18px; }
.faq .ans a.btn { text-decoration: none; }
/* Catálogos: listado de tarjetas y página individual */
.cat-group { margin-top: 40px; }
.cat-group h3 { font-family: var(--f-display); font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin: 0 0 14px; font-weight: 600; }
.cat-cards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.cat-card { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 22px; border: 1px solid var(--line); border-radius: 8px; text-decoration: none; color: var(--ink); background: transparent; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; transition: border-color .3s ease, transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease; }
.cat-card:hover, .cat-card:focus-visible { border-color: var(--gold); transform: translateY(-2px); box-shadow: 0 6px 22px rgba(0,0,0,.08); transform: translateY(-5px); box-shadow: 0 18px 40px -18px rgba(10,20,30,.35); }
.cat-card .cc-badge { align-self: flex-start; font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: 4px 10px; border-radius: 2px; border: 1px solid var(--muted); color: var(--muted); }
.cat-card.next .cc-badge { background: var(--gold); border-color: var(--gold); color: var(--on-gold); }
.cat-card h4 { font-family: var(--f-display); font-weight: 600; font-size: 20px; line-height: 1.2; margin: 10px 0 0; letter-spacing: -.01em; }
.cat-card .cc-meta { color: var(--muted); font-size: 15px; }
.cat-card .cc-go { margin-top: auto; padding-top: 14px; font-weight: 600; font-size: 15px; }
.cat-back { margin: 0 0 16px; font-size: 15px; }
.cat-back a { color: var(--muted); text-decoration: none; }
.cat-back a:hover { color: var(--ink); text-decoration: underline; }
.cat-filters[hidden], .cat-state[hidden], .cat-info[hidden], #cat-body[hidden] { display: none; }

/* FX-LUJO: aparición, tarjetas, menú fijo */
header.top { position: sticky; top: 0; z-index: 30; margin-inline: calc(50% - 50vw); padding-inline: var(--gutter); background: color-mix(in srgb, var(--paper) 96%, transparent); transition: padding .3s ease, background .3s ease, box-shadow .3s ease; }
header.top .brand img { transition: height .3s ease; }
header.top.scrolled { border-radius: 0 0 12px 12px; padding-block: 10px; background: color-mix(in srgb, var(--paper) 80%, transparent); -webkit-backdrop-filter: blur(14px) saturate(1.5); backdrop-filter: blur(14px) saturate(1.5); box-shadow: 0 10px 34px -14px rgba(10,20,30,.28); }
header.top.scrolled .brand img { height: 32px; }
@media (max-width: 1220px) { header.top { position: sticky; } }
html.rv .rv { opacity: 0; transform: translateY(28px); transition: opacity .9s cubic-bezier(.2,.7,.2,1), transform .9s cubic-bezier(.2,.7,.2,1); transition-delay: var(--d, 0ms); will-change: opacity, transform; }
html.rv .rv.in { opacity: 1; transform: none; }
.card { position: relative; padding: 30px 28px 28px; border: 1px solid var(--line); border-radius: 8px; background: color-mix(in srgb, var(--paper-2) 35%, transparent); transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s ease, border-color .35s ease; }
.card::before { content: ""; position: absolute; left: 28px; right: 28px; top: -1px; height: 2px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .45s cubic-bezier(.2,.7,.2,1); }
.card:hover { transform: translateY(-5px); border-color: color-mix(in srgb, var(--gold) 55%, var(--line)); box-shadow: 0 18px 40px -18px rgba(10,20,30,.35); }
.card:hover::before { transform: scaleX(1); }

.member:hover { transform: translateY(-4px); }

@media (prefers-reduced-motion: reduce) { html.rv .rv { opacity: 1; transform: none; transition: none; } .card, .member, .cat-card, header.top { transition: none; } .card:hover, .member:hover, .cat-card:hover { transform: none; } }

/* FX2: hero, cifras, detalles */
.hero-fx .hero h1 .w { display: inline-block; opacity: 0; transform: translateY(.45em); filter: blur(6px); animation: wIn 1.7s cubic-bezier(.2,.7,.2,1) forwards; animation-delay: calc(.35s + var(--i) * .228s); }
@keyframes wIn { to { opacity: 1; transform: none; filter: none; } }
.hero-line { display: block; width: 0; height: 2px; margin: 26px auto 0; background: linear-gradient(90deg, transparent, var(--gold), transparent); animation: hLine 1.4s cubic-bezier(.2,.7,.2,1) 2.1s forwards; }
@keyframes hLine { to { width: min(140px, 40%); } }
.hero-fx .hero .cta { margin-top: 30px; }
.hero-down { position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); width: 34px; height: 34px; border: 1px solid rgba(242,244,246,.4); border-radius: 50%; background: transparent; cursor: pointer; padding: 0; display: grid; place-items: center; opacity: .8; transition: opacity .2s ease, border-color .2s ease; z-index: 2; }
.hero-down:hover, .hero-down:focus-visible { opacity: 1; border-color: var(--gold); }
.hero-down span { width: 8px; height: 8px; border-right: 1.5px solid #F2F4F6; border-bottom: 1.5px solid #F2F4F6; transform: rotate(45deg) translate(-1px, -1px); animation: hBob 2.2s ease-in-out infinite; }
@keyframes hBob { 0%, 100% { transform: rotate(45deg) translate(-1px, -1px); } 50% { transform: rotate(45deg) translate(2px, 2px); } }
section#cifras { padding-block: clamp(40px, 6vw, 72px); }
.cifras { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cifras li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 8px clamp(10px, 3vw, 32px); }
.cifras li + li { border-left: 1px solid var(--line); }
.cifras .num { font-family: var(--f-display); font-weight: 800; font-size: clamp(32px, 6vw, 64px); line-height: 1; letter-spacing: -0.02em; color: var(--accent); font-variant-numeric: tabular-nums; }
.cifras .lab { color: var(--muted); font-size: clamp(13px, 1.6vw, 16px); max-width: 24ch; line-height: 1.35; }
main > section { position: relative; }
main > section::before { content: ""; position: absolute; top: -1px; left: 50%; width: min(260px, 44%); height: 1px; background: linear-gradient(90deg, transparent, var(--gold), transparent); transform: translateX(-50%) scaleX(0); transition: transform 1.2s cubic-bezier(.2,.7,.2,1); pointer-events: none; }
main > section.lined::before { transform: translateX(-50%) scaleX(1); }
main > section.pg-first::before { display: none; }
@media (min-width: 1221px) {
  nav.main a:not(.btn) { position: relative; }
  nav.main a:not(.btn)::after { content: ""; position: absolute; left: 0; right: 0; bottom: -6px; height: 2px; background: var(--gold); transform: scaleX(0); transform-origin: left; transition: transform .35s cubic-bezier(.2,.7,.2,1); }
  nav.main a:not(.btn):hover::after, nav.main a[aria-current="page"]:not(.btn)::after { transform: scaleX(1); }
  nav.main a[aria-current="page"]:not(.btn) { box-shadow: none; }
}
@keyframes pgIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }
.pg-enter { animation: pgIn .6s cubic-bezier(.2,.7,.2,1) both; }
@media (prefers-reduced-motion: reduce) { .hero-fx .hero h1 .w { animation: none; opacity: 1; transform: none; filter: none; } .hero-line { animation: none; width: min(140px, 40%); } .hero-down span { animation: none; } main > section::before { transition: none; transform: translateX(-50%) scaleX(1); } .pg-enter { animation: none; } }

/* Visor de lote: en pantallas bajas el escenario ya no se angosta por la proporción 3:4 */
@media (min-width: 801px) {
  .cv-stage { aspect-ratio: auto; width: 100%; max-height: none; height: clamp(380px, calc(100dvh - 150px), 800px); }
  .cv-car { padding: 24px 60px; }
  .cv-side { max-height: calc(100dvh - 135px); }
  .cv-car dl > div { grid-template-columns: minmax(0, auto) minmax(0, 1fr); }
  .cv-car dd { overflow-wrap: break-word; }
}

/* Párrafos de más de dos renglones: justificados (lo marca el script con la clase .j; las opiniones quedan fuera) */
.j { text-align: justify; text-justify: inter-word; }
/* En celular el texto justificado deja espacios irregulares entre palabras: se alinea a la izquierda */
@media (max-width: 640px) { .j { text-align: left; } }
/* Visor de lotes en celulares chicos: flechas más chicas y pegadas al borde para que no tapen los datos */
@media (max-width: 420px) {
  .cv-nav { width: 34px; height: 34px; }
  .cv-nav svg { width: 18px; height: 18px; }
  .ph-box .cv-prev { left: 4px; } .ph-box .cv-next { right: 4px; }
  .cv-car { padding-inline: 44px; }
}
/* Datos del lote: cada fila es flexible; si el importe no entra al lado de la etiqueta, baja al renglón siguiente en vez de salirse de la tarjeta */
.cv-car dl > div, .cv-car .cc-blk dl > div { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 2px 12px; grid-template-columns: none; }
.cv-car dt { flex: 0 1 auto; min-width: 0; }
.cv-car dd { flex: 0 1 auto; min-width: 0; margin-left: auto; overflow-wrap: anywhere; }
@media (max-width: 480px) {
  .cv-car .cc-blk { padding: 10px 12px 8px; }
  .cv-car .cc-blk dl > div { font-size: 14px; gap: 2px 8px; }
}

/* Celular: brillo del borde de los botones del hero a destiempo y en sentidos opuestos */
@media (hover: none) and (prefers-reduced-motion: no-preference) {
  .hero-fx .hero .cta .btn:nth-child(1) { animation-direction: normal; animation-delay: 0s; }
  .hero-fx .hero .cta .btn.ghost::after { animation-direction: reverse; animation-delay: -4.5s; }
}

main { overflow-anchor: none; }
/* Hero a pantalla completa con encabezado transparente */
header.top.on-hero { position: fixed; top: 0; left: 0; right: 0; margin-inline: 0; border-bottom-color: transparent; background: transparent; box-shadow: none; }
header.top.on-hero.scrolled { background: color-mix(in srgb, var(--paper) 80%, transparent); }
header.top.on-hero:not(.scrolled):not(.open) .logo-l { display: none; }
header.top.on-hero:not(.scrolled):not(.open) .logo-d { display: block; }
header.top.on-hero.open { background: var(--paper); }
header.top.on-hero:not(.scrolled):not(.open) .menu-btn { border-color: rgba(242,244,246,.5); }
header.top.on-hero:not(.scrolled):not(.open) .menu-btn span { background: #F2F4F6; }
@media (min-width: 1221px) {
  header.top.on-hero:not(.scrolled) nav.main a:not(.btn) { color: rgba(242,244,246,.85); }
  header.top.on-hero:not(.scrolled) nav.main a:not(.btn):hover, header.top.on-hero:not(.scrolled) nav.main a[aria-current="page"]:not(.btn) { color: #fff; }
  header.top.on-hero:not(.scrolled) nav.main .btn { color: #F2F4F6 !important; border: 1px solid rgba(242,244,246,.55); background: transparent; }
}
.sec-head h1 { font-size: clamp(28px, 3.8vw, 44px); }
.cat-error { padding: 40px 0; }
