/* ============================================================
   PORTADA · origen-growthpartners.es
   Estética de Origen (negro, crema y el rojo de la marca) con la
   retícula y, sobre todo, el MOVIMIENTO de las referencias:
   fondo animado, titular que entra por líneas, banda que corre,
   escalera que se dibuja, imagen con deriva y micro-reacciones.
   No usa la capa cine: aquí no hay letterbox ni HUD.
   ============================================================ */

.mk{
  --gut:  clamp(18px, 4.2vw, 64px);
  --papel:  #08080A;                    /* el negro de Origen */
  --papel2: #0C0B0C;
  --tinta:  #F7F4EE;                    /* crema */
  --tinta2: rgba(247,244,238,.70);
  --tinta3: rgba(247,244,238,.46);
  --raya:   rgba(247,244,238,.13);
  --raya2:  rgba(247,244,238,.26);
  --rojo-mk:#E5232B;                    /* rojo Origen */
  --rojo-hi:#FB4148;

  background:var(--papel);
  color:var(--tinta);
  font-family:var(--body);
  -webkit-font-smoothing:antialiased;
}
.mk *{ box-sizing:border-box; }
.mk img{ display:block; max-width:100%; }
.mk ::selection{ background:var(--rojo-mk); color:#fff; }

/* ---- entradas: sube y aparece ---- */
.mk .up{ opacity:0; transform:translateY(20px); }
@media(prefers-reduced-motion:no-preference){
  .mk .up{ transition:opacity .9s cubic-bezier(.16,1,.3,1), transform .9s cubic-bezier(.16,1,.3,1); }
}
.mk .up.on{ opacity:1; transform:none; }
@media(prefers-reduced-motion:reduce){ .mk .up{ opacity:1; transform:none; } }

/* ---- barra de lectura ---- */
.mk-prog{ position:fixed; top:0; left:0; right:0; height:2px; z-index:90;
  background:linear-gradient(90deg, var(--rojo-mk), var(--rojo-hi));
  box-shadow:0 0 16px -2px rgba(229,35,43,.5);
  transform:scaleX(0); transform-origin:0 50%; pointer-events:none; }

/* ============================================================
   NAVEGACIÓN
   ============================================================ */
.mk-nav{ position:sticky; top:0; z-index:60; display:grid; align-items:center; gap:16px;
  grid-template-columns:1fr auto 1fr; padding:18px var(--gut);
  background:rgba(8,8,10,.86); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--raya); }
.mk-nav a{ color:var(--tinta); }
.mk-nav__marca{ display:inline-flex; align-items:center; gap:12px; justify-self:start;
  font-family:var(--display); font-weight:700; font-size:clamp(15px,1.35vw,19px);
  letter-spacing:.2em; text-transform:uppercase; line-height:1; }
.mk-nav__marca svg{ flex:none; }
@media(max-width:520px){ .mk-nav__marca{ font-size:14px; gap:9px; } .mk-nav__marca svg{ width:21px; height:21px; } }
.mk-nav__c{ display:flex; gap:clamp(18px,2.4vw,38px); justify-self:center; }
.mk-nav__c a, .mk-nav__d a, .mk-nav__tel{ font-family:var(--display); font-weight:500; font-size:10.5px;
  letter-spacing:.19em; text-transform:uppercase; color:var(--tinta2); }
.mk-nav__c a{ position:relative; padding-bottom:3px; }
.mk-nav__c a::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:1px;
  background:var(--rojo-mk); transform:scaleX(0); transform-origin:0 50%; transition:transform .45s cubic-bezier(.16,1,.3,1); }
.mk-nav__c a:hover{ color:var(--tinta); }
.mk-nav__c a:hover::after{ transform:scaleX(1); }
.mk-nav__d{ display:flex; align-items:center; gap:22px; justify-self:end; }
.mk-nav__d a{ color:var(--tinta); font-weight:600; }
.mk-nav__d a:hover{ color:var(--rojo-mk); }
@media(max-width:860px){
  .mk-nav{ grid-template-columns:1fr auto; }
  .mk-nav__c, .mk-nav__tel{ display:none; }
}

/* ---- contador de sección ---- */
.mk-cnt{ display:inline-block; font-family:'Roboto Mono',monospace; font-size:10.5px;
  letter-spacing:.16em; color:var(--tinta3); }
.mk-cnt--fin{ display:block; margin-top:clamp(40px,4.6vw,64px); }

/* ---- botones píldora: el relleno sube desde abajo ---- */
.mk-btns{ display:flex; flex-wrap:wrap; gap:10px; }
.mk-b{ position:relative; isolation:isolate; display:inline-flex; align-items:center; justify-content:center;
  overflow:hidden; height:46px; padding:0 26px; border:1px solid var(--raya2); border-radius:999px;
  color:var(--tinta); background:transparent;
  font-family:var(--display); font-weight:600; font-size:11px; letter-spacing:.14em; text-transform:uppercase;
  white-space:nowrap; transition:color .35s, border-color .35s, transform .35s; }
.mk-b::before{ content:""; position:absolute; inset:0; z-index:-1; background:var(--tinta);
  transform:translateY(101%); transition:transform .45s cubic-bezier(.16,1,.3,1); }
.mk-b:hover{ border-color:var(--tinta); color:var(--papel); transform:translateY(-2px); }
.mk-b:hover::before{ transform:translateY(0); }
.mk-b--full{ background:var(--rojo-mk); border-color:var(--rojo-mk); color:#fff;
  box-shadow:0 10px 34px -16px rgba(229,35,43,.85); }
.mk-b--full::before{ background:var(--rojo-hi); }
.mk-b--full:hover{ border-color:var(--rojo-hi); color:#fff; }

/* ============================================================
   001-003 · APERTURA ANCLADA
   La sección mide tres pantallas; dentro, un escenario pegado.
   Todo se mueve con --p (0 arriba del todo, 1 al final del anclaje),
   que pone el JS en cada fotograma.
   ============================================================ */
.mk-abre{ --p:0; position:relative; height:300svh; }
.mk-stage{ position:sticky; top:68px; height:calc(100svh - 68px); overflow:hidden; }

/* ---- fondo animado: tres focos que derivan despacio ---- */
.mk-fondo{ position:absolute; inset:0; z-index:0; overflow:hidden; pointer-events:none;
  opacity:calc(1 - var(--p) * 2.4); }
.mk-fondo span{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; }
.mk-fondo span:nth-child(1){ width:52vw; height:52vw; left:-8vw; top:-18vw;
  background:radial-gradient(circle, rgba(229,35,43,.34), transparent 66%); }
.mk-fondo span:nth-child(2){ width:44vw; height:44vw; right:-6vw; top:-10vw;
  background:radial-gradient(circle, rgba(247,244,238,.13), transparent 68%); }
.mk-fondo span:nth-child(3){ width:60vw; height:36vw; left:26vw; top:6vw;
  background:radial-gradient(circle, rgba(229,35,43,.18), transparent 70%); }
@media(prefers-reduced-motion:no-preference){
  .mk-fondo span:nth-child(1){ animation:mkDeriva1 26s ease-in-out infinite alternate; }
  .mk-fondo span:nth-child(2){ animation:mkDeriva2 34s ease-in-out infinite alternate; }
  .mk-fondo span:nth-child(3){ animation:mkDeriva3 30s ease-in-out infinite alternate; }
  @keyframes mkDeriva1{ to{ transform:translate3d(9vw,5vw,0) scale(1.15); opacity:.72 } }
  @keyframes mkDeriva2{ to{ transform:translate3d(-7vw,7vw,0) scale(1.2);  opacity:.34 } }
  @keyframes mkDeriva3{ to{ transform:translate3d(-11vw,-4vw,0) scale(1.1); opacity:.7 } }
}

/* ---- la esfera de malla: el objeto vivo de la apertura ---- */
.mk-esfera{ position:absolute; z-index:1; pointer-events:none;
  right:calc(var(--gut) * -3); top:-10%; width:min(48vw, 58vh); height:min(48vw, 58vh);
  opacity:calc(.8 - var(--p) * 3.2);
  transform:translateY(calc(var(--p) * -14vh)) scale(calc(1 - var(--p) * .12)); }
@media(max-width:900px){
  .mk-esfera{ right:-14vw; top:-4%; width:min(86vw, 46vh); height:min(86vw, 46vh); opacity:calc(.55 - var(--p) * 2.2); }
}
@media(prefers-reduced-motion:reduce){ .mk-esfera{ opacity:.4; transform:none; } }

/* ---- el panel de texto: se va hacia arriba y se apaga ---- */
.mk-abre__panel{ position:absolute; inset:0 0 auto 0; z-index:2;
  display:flex; flex-direction:column; justify-content:space-between;
  height:46%; min-height:280px; gap:clamp(24px,3vw,44px);
  padding:clamp(30px,4vw,54px) var(--gut) clamp(20px,2.2vw,30px);
  opacity:calc(1 - var(--p) * 3.6);
  transform:translateY(calc(var(--p) * -26vh));
  pointer-events:auto; }
.mk-abre__panel[data-ido]{ pointer-events:none; }

.mk-abre__rej{ display:grid; gap:clamp(18px,2.4vw,44px); align-items:start; }
@media(min-width:900px){ .mk-abre__rej{ grid-template-columns:1.05fr 1fr; gap:clamp(48px,7vw,120px); } }

.mk-h1{ margin:0; font-family:var(--display); font-weight:600;
  font-size:clamp(29px,3.5vw,50px); line-height:1.06; letter-spacing:-.015em;
  text-transform:uppercase; color:var(--tinta); }
.mk-l{ display:block; overflow:hidden; }
.mk-l i{ display:block; font-style:normal; transform:translateY(102%); }
@media(prefers-reduced-motion:no-preference){
  .mk-l i{ animation:mkSube .95s cubic-bezier(.16,1,.3,1) forwards; }
  .mk-l:nth-child(2) i{ animation-delay:.13s; }
  @keyframes mkSube{ to{ transform:none } }
}
@media(prefers-reduced-motion:reduce){ .mk-l i{ transform:none; } }

.mk-abre__p{ margin:0; max-width:44ch; font-weight:500;
  font-size:clamp(15px,1.05vw,16.5px); line-height:1.66; color:var(--tinta2); }
@media(prefers-reduced-motion:no-preference){
  .mk-abre__p{ opacity:0; animation:mkAsoma .9s cubic-bezier(.16,1,.3,1) .38s forwards; }
  @keyframes mkAsoma{ from{ opacity:0; transform:translateY(16px) } to{ opacity:1; transform:none } }
}

.mk-abre__pie{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:18px; }
.mk-abre__pie .mk-btns{ justify-self:center; }
.mk-abre__nota{ justify-self:end; font-family:'Roboto Mono',monospace; font-size:10.5px;
  letter-spacing:.16em; color:var(--tinta3); }
@media(max-width:760px){
  .mk-abre__panel{ height:52%; }
  .mk-abre__pie{ grid-template-columns:1fr; justify-items:start; gap:14px; }
  .mk-abre__pie .mk-btns{ justify-self:stretch; order:-1; }
  .mk-abre__nota{ justify-self:start; }
  .mk-b{ flex:1; }
}

/* ---- el vídeo: empieza siendo una banda y se abre hasta ocuparlo todo ---- */
.mk-abre__media{ position:absolute; left:0; right:0; bottom:0; z-index:1; overflow:hidden;
  background:var(--papel2);
  top:calc(46% * (1 - var(--p) * 2.6)); }
@media(max-width:760px){ .mk-abre__media{ top:calc(52% * (1 - var(--p) * 2.6)); } }
.mk-abre__media img, .mk-abre__media video{ position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center 46%;
  filter:saturate(.42) contrast(1.1) brightness(1.18);
  transform:scale(calc(1.1 - var(--p) * .1)); will-change:transform; }
.mk-abre__media::after{ content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(180deg,
    rgba(8,8,10,calc(.82 - var(--p) * .78)) 0%,
    rgba(8,8,10,.06) 26%,
    rgba(8,8,10,calc(.34 + var(--p) * .22)) 62%,
    rgba(8,8,10,calc(.8 + var(--p) * .1)) 100%); }

/* ---- las frases que entran encima del vídeo ---- */
.mk-abre__cap{ position:absolute; left:var(--gut); bottom:clamp(26px,3.4vw,44px); z-index:2; margin:0;
  max-width:34ch; font-weight:500; font-size:13.5px; line-height:1.6; color:rgba(247,244,238,.9); }

.mk-frase{ position:absolute; left:var(--gut); right:var(--gut); bottom:clamp(72px,9vh,120px); z-index:2;
  max-width:min(52ch, 48vw); opacity:0; transform:translateY(26px); pointer-events:none; }
.mk-frase.on{ opacity:1; transform:none; pointer-events:auto; }
@media(prefers-reduced-motion:no-preference){
  .mk-frase{ transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
}
.mk-frase__t{ margin:0; max-width:11em; font-family:var(--display); font-weight:600;
  font-size:clamp(26px,3.6vw,54px); line-height:1.04; letter-spacing:-.018em;
  text-transform:uppercase; color:var(--tinta); text-shadow:0 4px 30px rgba(8,8,10,.7); }
.mk-frase__s{ margin:16px 0 0; max-width:44ch; font-weight:500; font-size:clamp(14.5px,1.05vw,16.5px);
  line-height:1.66; color:rgba(247,244,238,.82); text-shadow:0 2px 18px rgba(8,8,10,.8); }

.mk-raton{ position:absolute; left:50%; bottom:clamp(22px,2.6vw,34px); z-index:3; transform:translateX(-50%);
  width:24px; height:38px; border:1px solid rgba(247,244,238,.5); border-radius:999px;
  opacity:calc(1 - var(--p) * 1.6); }
.mk-raton span{ position:absolute; left:50%; top:8px; width:2px; height:6px; margin-left:-1px; border-radius:2px;
  background:var(--rojo-mk); }
@media(prefers-reduced-motion:no-preference){
  .mk-raton span{ animation:mkRueda 1.9s cubic-bezier(.5,0,.3,1) infinite; }
  @keyframes mkRueda{ 0%{ transform:translateY(0); opacity:0 } 22%{ opacity:1 } 78%{ transform:translateY(15px); opacity:0 } 100%{ opacity:0 } }
}

/* quien pide menos movimiento no tiene anclaje: una pantalla y a correr */
@media(prefers-reduced-motion:reduce){
  .mk-abre{ height:auto; }
  .mk-stage{ position:static; height:auto; min-height:calc(100svh - 60px); }
  .mk-abre__panel{ position:static; height:auto; opacity:1; transform:none; }
  .mk-abre__media{ position:relative; top:auto; min-height:46vh; }
  .mk-frase{ position:static; opacity:1; transform:none; margin:24px 0 0; }
  .mk-raton{ display:none; }
}

/* ============================================================
   BANDA EN MOVIMIENTO
   ============================================================ */
.mk-banda{ overflow:hidden; border-block:1px solid var(--raya); padding-block:15px; background:var(--papel2); }
.mk-banda__pista{ display:flex; width:max-content; }
.mk-banda__g{ display:inline-flex; align-items:center; white-space:nowrap;
  font-family:'Roboto Mono',monospace; font-size:11.5px; letter-spacing:.24em;
  text-transform:uppercase; color:var(--tinta3); }
.mk-banda__g i{ display:inline-block; width:7px; height:7px; margin:0 32px; border-radius:50%;
  background:var(--rojo-mk); }
@media(prefers-reduced-motion:no-preference){
  .mk-banda__pista{ animation:mkCorre 38s linear infinite; }
  @keyframes mkCorre{ to{ transform:translateX(-50%) } }
}

/* ============================================================
   SECCIONES
   ============================================================ */
.mk-sec{ padding:clamp(64px,8vw,132px) var(--gut); border-top:1px solid var(--raya); }

.mk-cab{ display:grid; gap:clamp(18px,2.4vw,44px); align-items:start;
  margin-bottom:clamp(44px,5vw,80px); }
@media(min-width:900px){ .mk-cab{ grid-template-columns:1.05fr 1fr; gap:clamp(48px,7vw,120px); } }

.mk-h2{ margin:0; font-family:var(--display); font-weight:600;
  font-size:clamp(25px,3vw,42px); line-height:1.07; letter-spacing:-.015em;
  text-transform:uppercase; color:var(--tinta); }
.mk-h2--sm{ font-size:clamp(22px,2.3vw,32px); }
.mk-cab__p{ margin:0; max-width:46ch; font-weight:500; font-size:clamp(15px,1.05vw,16.5px);
  line-height:1.66; color:var(--tinta2); }

/* ============================================================
   002 · LA ESCALERA
   ============================================================ */
.mk-esc{ display:grid; gap:clamp(34px,4vw,58px); align-items:start; }
@media(min-width:960px){ .mk-esc{ grid-template-columns:1fr 1fr; gap:clamp(48px,6vw,96px); } }

.mk-esc__svg{ width:100%; height:auto; overflow:visible; }
.mk-esc__guia{ stroke:var(--raya2); stroke-width:1; }
.mk-esc__guia.dib{ stroke-dasharray:1000; stroke-dashoffset:1000; animation:mkDib 1.7s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes mkDib{ to{ stroke-dashoffset:0 } }
.mk-p{ stroke:var(--tinta3); stroke-width:2; opacity:.55; transition:stroke .45s, opacity .45s, stroke-width .45s; }
.mk-p.viva{ stroke:var(--rojo-mk); opacity:1; stroke-width:4; }
.mk-esc__punto{ fill:var(--rojo-mk); filter:drop-shadow(0 0 8px rgba(229,35,43,.8));
  transition:cx .55s cubic-bezier(.16,1,.3,1), cy .55s cubic-bezier(.16,1,.3,1); }
@media(prefers-reduced-motion:reduce){
  .mk-esc__guia.dib{ animation:none; stroke-dashoffset:0 }
  .mk-esc__punto{ transition:none }
}

.mk-esc__lista{ list-style:none; margin:24px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.mk-esc__b{ display:inline-flex; align-items:center; gap:8px; height:36px; padding:0 15px; cursor:pointer;
  border:1px solid var(--raya); border-radius:999px; background:transparent; color:var(--tinta2);
  font-family:var(--display); font-weight:600; font-size:10.5px; letter-spacing:.13em; text-transform:uppercase;
  transition:color .3s, border-color .3s, background .3s; }
.mk-esc__b i{ font-family:'Roboto Mono',monospace; font-style:normal; font-size:9.5px; letter-spacing:.1em; opacity:.6; }
.mk-esc__b:hover{ color:var(--tinta); border-color:var(--raya2); }
.mk-esc__b.is-on{ color:#fff; background:var(--rojo-mk); border-color:var(--rojo-mk); }
.mk-esc__b.is-on i{ opacity:.8; }
.mk-esc__b:focus-visible{ outline:2px solid var(--rojo-mk); outline-offset:3px; }

.mk-esc__pane{ animation:mkEntra .5s cubic-bezier(.16,1,.3,1) both; }
.mk-esc__pane:focus-visible{ outline:none; }
@keyframes mkEntra{ from{ opacity:0; transform:translateY(12px) } to{ opacity:1; transform:none } }
@media(prefers-reduced-motion:reduce){ .mk-esc__pane{ animation:none } }

.mk-esc__claim{ margin:0; font-family:var(--display); font-weight:600; font-size:clamp(19px,2vw,27px);
  line-height:1.14; letter-spacing:-.012em; text-transform:uppercase; color:var(--tinta); }
.mk-esc__t{ margin:18px 0 0; max-width:50ch; font-weight:500; font-size:15.5px; line-height:1.72; color:var(--tinta2); }
.mk-esc__n{ margin:24px 0 0; padding-top:20px; border-top:1px solid var(--raya); max-width:50ch;
  font-weight:500; font-size:15.5px; line-height:1.66; color:var(--tinta); }
.mk-esc__n i{ display:block; margin-bottom:7px; font-family:'Roboto Mono',monospace; font-style:normal;
  font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:var(--rojo-mk); }

.mk-pie{ display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:20px;
  margin-top:clamp(44px,5vw,76px); padding-top:26px; border-top:1px solid var(--raya); }
.mk-pie p{ margin:0; justify-self:center; text-align:center; max-width:52ch;
  font-weight:500; font-size:15.5px; line-height:1.62; color:var(--tinta2); }
.mk-pie .mk-b{ justify-self:end; }
@media(max-width:860px){
  .mk-pie{ grid-template-columns:1fr; justify-items:start; }
  .mk-pie p{ justify-self:start; text-align:left; }
  .mk-pie .mk-b{ justify-self:stretch; }
}

/* ============================================================
   003 · LA TABLA
   ============================================================ */
.mk-tabla{ border-top:1px solid var(--raya); }
.mk-fila{ position:relative; isolation:isolate; display:grid; gap:5px 24px; align-items:baseline;
  padding:clamp(22px,2.6vw,34px) 0; border-bottom:1px solid var(--raya); color:var(--tinta);
  transition:padding-left .45s cubic-bezier(.16,1,.3,1); }
/* al pasar por encima se enciende un rastro rojo y la regla se dibuja */
.mk-fila::after{ content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(90deg, rgba(229,35,43,.12), transparent 62%);
  opacity:0; transition:opacity .45s; }
.mk-fila::before{ content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px;
  background:var(--rojo-mk); transform:scaleX(0); transform-origin:0 50%;
  transition:transform .55s cubic-bezier(.16,1,.3,1); }
.mk-fila:hover::before{ transform:scaleX(1); }
.mk-fila:hover::after{ opacity:1; }
.mk-fila:hover{ padding-left:14px; }
.mk-fila__n{ font-family:'Roboto Mono',monospace; font-size:10.5px; letter-spacing:.16em; color:var(--tinta3);
  transition:color .35s; }
.mk-fila__t{ font-family:var(--display); font-weight:600; font-size:clamp(19px,2vw,28px);
  line-height:1.1; letter-spacing:-.012em; text-transform:uppercase; }
.mk-fila__p{ font-family:'Roboto Mono',monospace; font-size:11px; letter-spacing:.12em;
  text-transform:uppercase; color:var(--rojo-mk); }
.mk-fila__d{ font-weight:500; font-size:15.5px; line-height:1.66; color:var(--tinta2); max-width:54ch; }
.mk-fila__a{ font-size:22px; color:var(--tinta3); transition:transform .45s cubic-bezier(.16,1,.3,1), color .35s; }
.mk-fila:hover .mk-fila__n{ color:var(--rojo-mk); }
.mk-fila:hover .mk-fila__a{ color:var(--rojo-mk); transform:translateX(10px); }
@media(min-width:900px){
  .mk-fila{ grid-template-columns:48px minmax(210px,1fr) 1.45fr 40px; align-items:center; }
  .mk-fila__n{ grid-column:1 }
  .mk-fila__t{ grid-column:2; grid-row:1 }
  .mk-fila__p{ grid-column:2; grid-row:2 }
  .mk-fila__d{ grid-column:3; grid-row:1 / span 2 }
  .mk-fila__a{ grid-column:4; grid-row:1 / span 2; text-align:right }
}

/* ============================================================
   004 · QUIÉN SOY
   ============================================================ */
.mk-sec--quien{ background:var(--papel2); }
.mk-quien{ display:grid; gap:clamp(30px,4vw,64px); align-items:start; }
@media(min-width:900px){ .mk-quien{ grid-template-columns:.8fr 1.2fr; gap:clamp(44px,5.5vw,92px); } }

.mk-quien__foto{ margin:0; position:sticky; top:104px; }
.mk-quien__foto img{ width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center 18%;
  filter:grayscale(1) contrast(1.06); }
.mk-quien__foto figcaption{ margin-top:11px; font-family:'Roboto Mono',monospace; font-size:10.5px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--tinta3); }
@media(max-width:899px){ .mk-quien__foto{ position:static; } }

.mk-quien__txt p{ margin:20px 0 0; max-width:56ch; font-weight:500;
  font-size:clamp(15px,1.05vw,16.5px); line-height:1.76; color:var(--tinta2); }
.mk-quien__txt p b{ color:var(--tinta); font-weight:600; }
.mk-quien__txt .mk-cnt{ margin-top:clamp(30px,3.4vw,46px); }

.mk-cita{ margin:clamp(28px,3vw,44px) 0 !important; padding:0 0 0 clamp(18px,2vw,26px);
  border-left:2px solid var(--rojo-mk); max-width:24ch !important;
  font-family:var(--display) !important; font-weight:600 !important;
  font-size:clamp(20px,2.2vw,30px) !important; line-height:1.14 !important; letter-spacing:-.012em;
  text-transform:uppercase; color:var(--tinta) !important; }

/* ============================================================
   005 · EMPEZAR
   ============================================================ */
.mk-fin{ position:relative; overflow:hidden; }
.mk-fin::before{ content:""; position:absolute; left:50%; bottom:-30vw; width:80vw; height:60vw;
  transform:translateX(-50%); pointer-events:none; z-index:0;
  background:radial-gradient(circle, rgba(229,35,43,.16), transparent 62%); filter:blur(60px); }
@media(prefers-reduced-motion:no-preference){
  .mk-fin::before{ animation:mkLatido 9s ease-in-out infinite alternate; }
  @keyframes mkLatido{ to{ opacity:.5; transform:translateX(-50%) scale(1.16) } }
}
.mk-fin > *{ position:relative; z-index:1; }
.mk-fin__h{ font-size:clamp(30px,4.4vw,64px); }
.mk-fin__p{ margin:clamp(22px,2.6vw,34px) 0 clamp(30px,3.4vw,44px); max-width:52ch;
  font-weight:500; font-size:clamp(15px,1.05vw,16.5px); line-height:1.7; color:var(--tinta2); }

/* ============================================================
   PIE
   ============================================================ */
.mk-foot{ display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px 26px;
  padding:26px var(--gut) 34px; border-top:1px solid var(--raya);
  font-family:'Roboto Mono',monospace; font-size:10.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--tinta3); }
.mk-foot nav{ display:flex; flex-wrap:wrap; gap:20px; }
.mk-foot a{ color:var(--tinta3); }
.mk-foot a:hover{ color:var(--tinta); }
