/*
Theme Name:   DOKAI
Theme URI:    https://dokaiseo.com/
Description:  Tema hijo de Astra para DOKAI SEO. Sistema visual claro: verde #016f29, crema #f2f1e9, pizarra #222b34 y blanco #fdfdfd, derivado del logo.
Author:       DOKAI SEO
Template:     astra
Version: 1.0.7
Text Domain:  dokai
*/

/* ============================================================
   TOKENS v1.0. Paleta de marca: verde #016f29, crema #f2f1e9,
   pizarra #222b34, blanco #fdfdfd. Sistema claro.
   Los nombres de token se conservan para no tocar plantillas:
   --dk-cream  = fondo base (blanco)
   --dk-dark   = fondo de seccion suave (crema)
   --dk-deep   = fondo invertido (pizarra), con su propia paleta
   --dk-lime   = acento (verde; verde claro dentro de lo invertido)
   Contrastes: verde sobre blanco 6.2:1, sobre crema 5.6:1;
   pizarra sobre crema 12.7:1; blanco sobre verde 6.2:1.
   ============================================================ */
.dk{
  --dk-white:#fdfdfd;
  --dk-green:#016f29;
  --dk-green-2:#015a21;
  --dk-slate:#222b34;
  --dk-sand:#f2f1e9;

  --dk-deep:#222b34;
  --dk-dark:#f2f1e9;
  --dk-cream:#fdfdfd;
  --dk-cream-2:#f2f1e9;
  --dk-ink:#222b34;
  --dk-lime:#016f29;
  --dk-accent-light:#016f29;
  --dk-on-dark:#222b34;
  --dk-on-dark-2:#56616c;
  --dk-on-cream-2:#56616c;
  --dk-rule-dark:#e2e0d5;
  --dk-rule-light:#e2e0d5;
  --dk-radius:14px;
  --dk-shadow:0 1px 2px rgba(34,43,52,.04),0 12px 32px -12px rgba(34,43,52,.14);

  --dk-s1:8px;--dk-s2:16px;--dk-s3:24px;--dk-s4:32px;
  --dk-s5:48px;--dk-s6:64px;--dk-s7:80px;--dk-s8:104px;

  --dk-display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --dk-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;

  --dk-max:1200px;
  --dk-gutter:32px;
}
@media (max-width:782px){ .dk{ --dk-gutter:20px; } }

/* reset acotado: evita que el CSS heredado del Personalizador mande */
.dk,.dk *{box-sizing:border-box}
.dk{margin:0;background:var(--dk-cream);color:var(--dk-ink);
  font-family:var(--dk-body);font-size:17px;line-height:1.55;
  -webkit-font-smoothing:antialiased}
.dk p,.dk h1,.dk h2,.dk h3,.dk h4,.dk ul,.dk ol,.dk figure{margin:0;padding:0}
.dk ul{list-style:none}
.dk a{color:inherit;text-decoration:none}
.dk img{max-width:100%;display:block}
.dk h1,.dk h2,.dk h3{font-family:var(--dk-display);font-weight:700;
  letter-spacing:-.025em;line-height:1.04;text-wrap:balance}
.dk :focus-visible{outline:2px solid var(--dk-lime);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.dk *{transition:none!important;animation:none!important}}

.dk-wrap{max-width:var(--dk-max);margin-inline:auto;padding-inline:var(--dk-gutter)}
.dk-dark{background:var(--dk-dark);color:var(--dk-on-dark)}
.dk-deep{background:var(--dk-deep);color:var(--dk-on-dark)}
.dk-dark h1,.dk-dark h2,.dk-dark h3,.dk-deep h2,.dk-deep h3{color:var(--dk-on-dark)}
.dk-eyebrow{font-family:var(--dk-body);font-weight:500;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;color:var(--dk-accent-light)}
.dk-dark .dk-eyebrow,.dk-deep .dk-eyebrow{color:var(--dk-lime)}

/* ---------- cabecera ---------- */
.dk-header{background:var(--dk-deep);color:var(--dk-on-dark)}
.dk-header .dk-wrap{display:flex;align-items:center;gap:var(--dk-s4);min-height:88px}
@media (max-width:921px){.dk-header .dk-wrap{min-height:72px}}
.dk-brand{display:flex;align-items:center;gap:14px}
.dk-brand img{height:44px;width:auto}
.dk-brand .dk-name{font-family:var(--dk-display);font-weight:700;font-size:19px;
  letter-spacing:.01em;line-height:1.05;color:var(--dk-on-dark)}
.dk-brand .dk-sub{display:block;font-family:var(--dk-body);font-weight:400;font-size:12px;
  letter-spacing:.1em;text-transform:uppercase;color:var(--dk-on-dark-2);margin-top:3px}
@media (max-width:921px){.dk-brand img{height:36px}.dk-brand .dk-sub{display:none}}
.dk-nav{display:flex;align-items:center;gap:var(--dk-s4);margin-left:auto;font-size:16px}
.dk-nav a{padding:8px 0;border-bottom:1px solid transparent;color:var(--dk-on-dark)}
.dk-nav a:hover,.dk-nav a:focus-visible{border-bottom-color:var(--dk-on-dark)}
.dk-nav .dk-lead{color:var(--dk-lime);font-weight:600;text-decoration:underline;
  text-underline-offset:5px;border-bottom:0}
.dk-menu-btn{display:none;font:inherit;font-weight:600;color:var(--dk-on-dark);
  background:none;border:1px solid var(--dk-on-dark-2);border-radius:3px;
  padding:10px 14px;min-height:44px;margin-left:auto;cursor:pointer}
@media (max-width:921px){.dk-nav{display:none}.dk-menu-btn{display:inline-flex}}
.dk-nav--open{display:flex;flex-direction:column;align-items:flex-start;gap:var(--dk-s2);
  width:100%;padding-block:var(--dk-s3);border-top:1px solid var(--dk-rule-dark)}

/* ---------- botones ---------- */
.dk-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;
  padding:0 26px;border-radius:999px;font-weight:600;font-size:16px;
  background:var(--dk-green);color:var(--dk-white);transition:background .15s ease,transform .15s ease}
.dk-btn:hover{background:var(--dk-green-2)}
.dk-btn--ghost{background:transparent;color:var(--dk-on-dark);
  border:1px solid currentColor}
.dk-btn--ghost:hover{background:var(--dk-on-dark);border-color:var(--dk-on-dark)}
.dk-btn--light{background:var(--dk-accent-light);color:var(--dk-cream)}
.dk-btn--light:hover{background:#33520C}

/* ---------- hero ---------- */
.dk-hero{padding-block:var(--dk-s7) var(--dk-s8)}
.dk-hero__grid{display:grid;grid-template-columns:47fr 53fr;gap:var(--dk-s6);align-items:center}
.dk-hero h1{font-size:clamp(38px,3.9vw,56px);letter-spacing:-.03em}
.dk-hero h1 em{font-style:normal;color:var(--dk-lime)}
.dk-hero__lede{font-size:19px;line-height:1.55;max-width:46ch;margin-top:var(--dk-s3);
  color:var(--dk-on-dark-2)}
.dk-hero__cta{display:flex;gap:var(--dk-s2);flex-wrap:wrap;margin-top:var(--dk-s5)}

/* metodo en el hero: la secuencia es informacion, por eso va numerada */
.dk-seq{border-top:1px solid var(--dk-rule-dark)}
.dk-seq li{display:grid;grid-template-columns:62px 1fr;gap:var(--dk-s3);
  padding-block:var(--dk-s3);border-bottom:1px solid var(--dk-rule-dark);align-items:baseline}
.dk-seq .n{font-family:var(--dk-display);font-weight:700;font-size:15px;
  letter-spacing:.06em;color:var(--dk-lime);font-variant-numeric:tabular-nums}
.dk-seq h3{font-size:19px;letter-spacing:-.01em}
.dk-seq p{font-size:15px;color:var(--dk-on-dark-2);margin-top:5px}

/* ---------- secciones ---------- */
.dk-sec{padding-block:var(--dk-s8)}
@media (max-width:782px){.dk-sec,.dk-hero{padding-block:var(--dk-s6)}}
.dk-head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  gap:var(--dk-s5);align-items:start}
.dk-head h2{font-size:clamp(30px,3.6vw,48px)}
.dk-head p{color:var(--dk-on-cream-2);font-size:18px}
.dk-dark .dk-head p,.dk-deep .dk-head p{color:var(--dk-on-dark-2)}

/* servicios */
.dk-svc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;
  background:var(--dk-rule-light);margin-top:var(--dk-s6)}
.dk-svc article{background:var(--dk-cream);padding:var(--dk-s5) var(--dk-s4);
  display:flex;flex-direction:column;gap:var(--dk-s2);min-width:0}
.dk-svc h3{font-size:24px}
.dk-svc p{color:var(--dk-on-cream-2)}
.dk-svc .dk-list{display:grid;gap:7px;color:var(--dk-on-cream-2);font-size:15px}
.dk-svc .dk-list li{padding-left:18px;position:relative}
.dk-svc .dk-list li::before{content:"";position:absolute;left:0;top:9px;
  width:7px;height:7px;background:var(--dk-accent-light)}
.dk-svc .dk-more{margin-top:auto;padding-top:var(--dk-s2);font-weight:600;
  color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:4px}

/* equipo: 8 fichas reales, retratos 4:5 */
.dk-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
  gap:var(--dk-s4) var(--dk-s3);margin-top:var(--dk-s6)}
.dk-person{min-width:0}
.dk-person a{display:block}
.dk-shot{display:block;position:relative;width:100%;aspect-ratio:4/5;
  overflow:hidden;background:var(--dk-sand);border-radius:var(--dk-radius)}
.dk-person img{width:100%;height:100%;object-fit:cover;
  object-position:var(--px,50%) var(--py,18%);
  transform:scale(var(--z,1));
  transform-origin:var(--px,50%) var(--py,18%);
  filter:grayscale(1) contrast(1.05);transition:filter .2s ease}
.dk-person a:hover img,.dk-person a:focus-visible img{filter:grayscale(0) contrast(1)}
.dk-person .role{font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dk-lime);margin-top:var(--dk-s2)}
.dk-person h3{font-size:18px;margin-top:5px;letter-spacing:-.015em}
.dk-person__link{display:inline-block;margin-top:7px;font-size:14px;
  color:var(--dk-on-dark-2);text-decoration:underline;text-underline-offset:4px}
.dk-person a:hover .dk-person__link{color:var(--dk-on-dark)}
.dk-team__note{margin-top:var(--dk-s5);padding-top:var(--dk-s3);
  border-top:1px solid var(--dk-rule-dark);color:var(--dk-on-dark-2);max-width:62ch}
@media (max-width:980px){.dk-team{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:680px){.dk-team{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* cierre */
.dk-end h2{font-size:clamp(34px,5vw,64px);max-width:20ch}
.dk-end .dk-hero__cta{margin-top:var(--dk-s5)}
.dk-contact{display:flex;gap:var(--dk-s6);flex-wrap:wrap;margin-top:var(--dk-s6);
  padding-top:var(--dk-s3);border-top:1px solid var(--dk-rule-dark)}
.dk-contact div{min-width:0}
.dk-contact span{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dk-on-dark-2);margin-bottom:5px}

/* pie */
.dk-foot{padding-block:var(--dk-s5);font-size:15px}
.dk-foot .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:var(--dk-s5)}
.dk-foot h4{font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dk-on-dark-2);font-weight:500;margin-bottom:var(--dk-s2)}
.dk-foot li{margin-bottom:9px}
.dk-foot a{color:var(--dk-on-dark-2);text-decoration:underline;text-underline-offset:3px}
.dk-foot a:hover{color:var(--dk-on-dark)}
.dk-legal{margin-top:var(--dk-s5);padding-top:var(--dk-s3);
  border-top:1px solid var(--dk-rule-dark);color:var(--dk-on-dark-2);
  display:flex;gap:var(--dk-s3);flex-wrap:wrap;justify-content:space-between}

/* ---------- movil ---------- */
@media (max-width:860px){
  .dk-hero__grid,.dk-head,.dk-svc,.dk-foot .cols{grid-template-columns:1fr}
  .dk-hero__grid{gap:var(--dk-s6)}
  .dk-head{gap:var(--dk-s3)}
  .dk-svc{gap:1px}
  .dk-team{gap:var(--dk-s4) var(--dk-s2)}
  .dk-hero__lede{font-size:18px}
}

/* --- ajustes v0.2.1 tras revision a 1440 y 390 --- */
.dk [id]{scroll-margin-top:24px}
@media (max-width:860px){
  .dk-hero__lede{margin-top:var(--dk-s3)}
  .dk-hero h1{line-height:1.08}
  .dk-seq li{grid-template-columns:38px 1fr;gap:var(--dk-s2)}
  .dk-svc article{padding:var(--dk-s4) var(--dk-s3)}
  .dk-end h2{max-width:none}
}
/* la cuarta tarjeta de servicios no tiene lista: que no quede corta */
.dk-svc article:last-child{justify-content:flex-start}

/* ============================================================
   GLOBAL v0.3.0. Estas reglas valen para TODA la web, no solo
   la portada, para que una correccion aqui se propague sola.
   ============================================================ */

/* 1. Seguro de contraste del lima.
   El lima solo es legible con texto oscuro encima: con texto claro
   da 1.33:1. Cualquier elemento con fondo lima fuerza tinta oscura,
   venga de donde venga el estilo. */
[style*="#a5e310" i],[style*="#A5E312" i],
.has-lime-background-color,
.wp-block-button__link[style*="a5e3" i]{
  color:#0B0F0A !important;
}
.dk-btn,.dk-btn:visited{color:#fdfdfd !important}
.dk-btn--ghost,.dk-btn--ghost:visited{color:var(--dk-on-dark) !important}
.dk-btn--ghost:hover{color:var(--dk-ghost-hover,#fdfdfd) !important}
.dk-btn--light,.dk-btn--light:visited{color:var(--dk-cream) !important}

/* 2. Contraste de enlaces en el resto del sitio.
   El verde heredado (#567457 sobre crema) da 4.34:1 y no llega al
   4.5:1 de WCAG AA. Lo sustituimos por uno medido a 5.95:1. */
body:not(.dk) a:not(.ast-button):not(.wp-block-button__link),
body:not(.dk) .entry-content a{
  color:#016f29;
}
body:not(.dk) a:hover{color:#015a21}

/* 3. Foco visible en todo el sitio, no solo en la portada. */
body:not(.dk) a:focus-visible,
body:not(.dk) button:focus-visible{
  outline:2px solid #016f29;outline-offset:3px;
}

/* el eyebrow de la metodologia es un H2 real, para no colgar H3 del H1 */
.dk-eyebrow--h{font-family:var(--dk-body);font-weight:500;font-size:12px;
  letter-spacing:.14em;text-transform:uppercase;line-height:1.4;margin-bottom:var(--dk-s2)}

/* los titulos de servicio que enlazan a su pagina no deben parecer texto muerto */
.dk-svc h3 a{text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:5px;text-decoration-color:var(--dk-accent-light)}
.dk-svc h3 a:hover{color:var(--dk-accent-light)}
.dk-svc .dk-list a{color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:3px}

/* ============================================================
   v0.7 LANDING: formulario en el hero, dolores, tres formas,
   ventajas, videos y FAQ. Mucho aire, pocas cosas por pantalla.
   ============================================================ */
.dk-hero__grid--form{grid-template-columns:52fr 48fr;align-items:start}
.dk-proof{margin-top:var(--dk-s4);display:grid;gap:10px;color:var(--dk-on-dark-2);font-size:16px}
.dk-proof li{padding-left:22px;position:relative}
.dk-proof li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;background:var(--dk-lime)}

/* formulario */
.dk-form-wrap{min-width:0;scroll-margin-top:24px}
.dk-form{background:var(--dk-dark);border:1px solid var(--dk-rule-dark);padding:var(--dk-s4);
  display:grid;gap:var(--dk-s2)}
.dk-form__title{font-size:24px;letter-spacing:-.02em}
.dk-form__sub{color:var(--dk-on-dark-2);font-size:15px;margin-top:-6px}
.dk-form label{display:grid;gap:6px;font-size:13px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--dk-on-dark-2);font-weight:500;min-width:0}
.dk-form input,.dk-form select,.dk-form textarea{
  font:inherit;font-size:16px;text-transform:none;letter-spacing:0;color:var(--dk-on-dark);
  background:var(--dk-deep);border:1px solid var(--dk-rule-dark);border-radius:3px;
  padding:12px 14px;width:100%;min-height:46px}
.dk-form textarea{resize:vertical;min-height:84px}
.dk-form input:focus-visible,.dk-form select:focus-visible,.dk-form textarea:focus-visible{
  outline:2px solid var(--dk-lime);outline-offset:0;border-color:var(--dk-lime)}
.dk-form select{appearance:none;-webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--dk-on-dark-2) 50%),linear-gradient(135deg,var(--dk-on-dark-2) 50%,transparent 50%);
  background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat;padding-right:40px}
.dk-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--dk-s2)}
.dk-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.dk-btn--full{width:100%;min-height:52px;font-size:17px;margin-top:4px}
.dk-form__alt{font-size:14px;color:var(--dk-on-dark-2);text-align:center}
.dk-form__alt a{color:var(--dk-on-dark);text-decoration:underline;text-underline-offset:3px}
.dk-form__err{background:#3a1a14;border:1px solid #7a3528;color:#F7D9D2;padding:10px 14px;border-radius:3px;font-size:15px}
.dk-form--ok h2{font-size:26px;margin-top:10px}
.dk-form--ok p{color:var(--dk-on-dark-2);margin-top:14px}
.dk-form--ok a{color:var(--dk-lime);text-decoration:underline;text-underline-offset:3px}

/* dolores: afirmaciones grandes, dos columnas */
.dk-pains{margin-top:var(--dk-s6);display:grid;grid-template-columns:1fr 1fr;gap:var(--dk-s5) var(--dk-s6)}
.dk-pains li{border-top:2px solid var(--dk-ink);padding-top:var(--dk-s3);min-width:0}
.dk-pains h3{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.02em;line-height:1.12}
.dk-pains p{color:var(--dk-on-cream-2);margin-top:12px;max-width:44ch}

/* tres formas de trabajar */
.dk-ways{margin-top:var(--dk-s6);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--dk-rule-dark)}
.dk-ways article{background:var(--dk-dark);padding:var(--dk-s5) var(--dk-s4);display:flex;flex-direction:column;gap:var(--dk-s2);min-width:0}
.dk-ways h3{font-size:26px;letter-spacing:-.02em}
.dk-ways p{color:var(--dk-on-dark-2)}
.dk-ways a{margin-top:auto;padding-top:var(--dk-s2);color:var(--dk-lime);font-weight:600;text-decoration:underline;text-underline-offset:5px}

/* ventajas */
.dk-adv{margin-top:var(--dk-s6);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--dk-s5) var(--dk-s4)}
.dk-adv div{min-width:0;border-top:1px solid var(--dk-rule-light);padding-top:var(--dk-s3)}
.dk-adv h3{font-size:22px;letter-spacing:-.02em}
.dk-adv p{color:var(--dk-on-cream-2);margin-top:10px;font-size:16px}
.dk-adv a{color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:3px}

/* videos: uno grande, cuatro pequenos */
.dk-videos{margin-top:var(--dk-s6);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:auto;gap:var(--dk-s3)}
.dk-video{position:relative;display:block;min-width:0;color:var(--dk-on-dark)}
.dk-video--main{grid-column:1 / -1}
.dk-video img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#1a241a;filter:grayscale(.3) contrast(1.05);transition:filter .2s}
.dk-video--main img{aspect-ratio:21/9;object-position:50% 40%}
.dk-video:hover img{filter:none}
.dk-video__play{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;
  background:var(--dk-lime);display:grid;place-items:center}
.dk-video__play::after{content:"";margin-left:5px;border-style:solid;border-width:11px 0 11px 19px;border-color:transparent transparent transparent #fdfdfd}
.dk-video:not(.dk-video--main) .dk-video__play{width:44px;height:44px;top:32%}
.dk-video:not(.dk-video--main) .dk-video__play::after{border-width:8px 0 8px 13px;margin-left:3px}
.dk-video__t{display:block;margin-top:12px}
.dk-video__t b{display:block;font-weight:600;font-size:16px;line-height:1.3}
.dk-video__t small{display:block;color:var(--dk-on-dark-2);font-size:13px;margin-top:3px}
.dk-video--main .dk-video__t b{font-family:var(--dk-display);font-weight:700;font-size:24px;letter-spacing:-.02em}

/* FAQ nativo y accesible */
.dk-faq{margin-top:var(--dk-s5);max-width:72ch;border-top:1px solid var(--dk-rule-light)}
.dk-faq details{border-bottom:1px solid var(--dk-rule-light)}
.dk-faq summary{cursor:pointer;list-style:none;padding:var(--dk-s3) 44px var(--dk-s3) 0;position:relative;
  font-family:var(--dk-display);font-weight:700;font-size:19px;letter-spacing:-.015em}
.dk-faq summary::-webkit-details-marker{display:none}
.dk-faq summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);
  width:32px;height:32px;display:grid;place-items:center;font-weight:400;font-size:26px;color:var(--dk-accent-light)}
.dk-faq details[open] summary::after{content:"−"}
.dk-faq details p{color:var(--dk-on-cream-2);padding-bottom:var(--dk-s3);max-width:62ch}
.dk-faq summary:focus-visible{outline:2px solid var(--dk-accent-light);outline-offset:4px}

/* --- movil --- */
@media (max-width:980px){
  .dk-adv{grid-template-columns:1fr 1fr}
  .dk-videos{grid-template-columns:1fr 1fr}
  .dk-ways{grid-template-columns:1fr}
}
@media (max-width:860px){
  .dk-hero__grid--form{grid-template-columns:1fr}
  .dk-pains{grid-template-columns:1fr;gap:var(--dk-s4)}
}
@media (max-width:600px){
  .dk-form{padding:var(--dk-s3)}
  .dk-form__row{grid-template-columns:1fr}
  .dk-adv,.dk-videos{grid-template-columns:1fr}
  .dk-video--main img{aspect-ratio:16/9}
}

/* v0.7.3: sin etiquetas sobre titulares; el titulo del formulario respira */
.dk-form__title{margin-bottom:var(--dk-s1)}
.dk-form--ok h2{margin-top:0}

/* ============================================================
   v0.8 FICHAS DE PERSONA. Estilos para la estructura dk-* que ya
   llevan las ocho paginas del equipo. Mismo sistema que la portada.
   ============================================================ */
.dk-persona__content{min-width:0}
.dk-persona__content > *{max-width:none}
.dk-persona .dk-badges br,.dk-persona .dk-btns br{display:none}
.dk-persona__content p:empty{display:none}
.dk-persona__content img{max-width:100%;height:auto}

.dk-persona__top{padding-top:var(--dk-s4)}
.dk-persona__back{font-size:14px;color:var(--dk-on-cream-2);text-decoration:underline;text-underline-offset:4px}
.dk-persona__back::before{content:"\2190  "}
.dk-persona__name{font-size:14px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;
  color:var(--dk-accent-light);margin-top:var(--dk-s2);font-family:var(--dk-body)}

/* tipografia compartida de las fichas */
.dk-persona .dk-label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:500;color:var(--dk-accent-light);margin-bottom:var(--dk-s2)}
.dk-persona .dk-dark .dk-label,.dk-persona .dk-deep .dk-label,
.dk-persona .dk-hero .dk-label,.dk-persona .dk-cta-block .dk-label{color:var(--dk-lime)}
.dk-persona .dk-title{font-family:var(--dk-display);font-weight:700;letter-spacing:-.025em;line-height:1.04;
  font-size:clamp(28px,3.4vw,44px);text-wrap:balance}
.dk-persona .dk-title em{font-style:normal;color:var(--dk-accent-light)}
.dk-persona .dk-title--hero{font-size:clamp(36px,4vw,58px);letter-spacing:-.03em}
.dk-persona .dk-title--hero em{color:var(--dk-lime)}
.dk-persona .dk-lead{font-size:19px;line-height:1.55;color:var(--dk-on-dark-2);margin-top:var(--dk-s3);max-width:46ch}
.dk-persona .dk-body{color:var(--dk-on-cream-2);margin-top:var(--dk-s2);max-width:60ch}
.dk-persona .dk-link{color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:4px;font-weight:600}

/* badges: solo texto plano con separadores, nada de pastillas */
.dk-persona .dk-badges{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:var(--dk-s3);font-size:14px;color:var(--dk-on-dark-2)}
.dk-persona .dk-badge{display:inline-flex;align-items:center;gap:8px}
.dk-persona .dk-badge::before{content:"";width:7px;height:7px;background:var(--dk-lime)}
.dk-persona .dk-badge--label{display:block;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--dk-lime);margin-bottom:var(--dk-s2)}
.dk-persona .dk-badge--label::before{display:none}
.dk-persona a.dk-badge{color:var(--dk-on-dark);text-decoration:underline;text-underline-offset:4px}

/* botones: heredan .dk-btn del sistema; los modificadores antiguos se mapean */
.dk-persona .dk-btns{display:flex;flex-wrap:wrap;gap:var(--dk-s2);margin-top:var(--dk-s4)}
.dk-persona .dk-btns--center{justify-content:flex-start}
.dk-persona .dk-btn--ghost,.dk-persona .dk-btn--outline-white{background:transparent;color:var(--dk-on-dark) !important;border:1px solid var(--dk-on-dark-2)}
.dk-persona .dk-btn--ghost:hover,.dk-persona .dk-btn--outline-white:hover{background:var(--dk-on-dark);color:var(--dk-ghost-hover,#fdfdfd) !important}
.dk-persona .dk-btn--white{background:var(--dk-cream);color:var(--dk-deep) !important}

/* HERO de persona: texto + foto */
.dk-persona .dk-hero{background:var(--dk-deep);color:var(--dk-on-dark);padding-block:var(--dk-s6) var(--dk-s7)}
.dk-persona .dk-hero__inner{max-width:var(--dk-max);margin-inline:auto;padding-inline:var(--dk-gutter);
  display:grid;grid-template-columns:58fr 42fr;gap:var(--dk-s6);align-items:center}
.dk-persona .dk-hero__photo-card{position:relative;aspect-ratio:4/5;overflow:hidden;background:#1a241a;min-width:0}
.dk-persona .dk-hero__photo-card img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;
  filter:grayscale(1) contrast(1.05)}
.dk-persona .dk-hero__photo-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(11,15,10,.92) 0%,rgba(11,15,10,0) 45%)}
.dk-persona .dk-hero__photo-kanji{position:absolute;top:16px;right:18px;font-size:22px;color:var(--dk-lime);opacity:.9}
.dk-persona .dk-hero__photo-caption{position:absolute;left:20px;right:20px;bottom:18px}
.dk-persona .dk-hero__photo-name{font-family:var(--dk-display);font-weight:700;font-size:22px;letter-spacing:-.02em}
.dk-persona .dk-hero__photo-role{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--dk-lime);margin-top:4px}

/* banda de datos */
.dk-persona .dk-stat-band__grid{background:var(--dk-dark);color:var(--dk-on-dark);border-block:1px solid var(--dk-rule-dark);
  padding:var(--dk-s4) max(var(--dk-gutter),calc((100% - var(--dk-max)) / 2 + var(--dk-gutter)));
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--dk-s3)}
.dk-persona .dk-stat-band__item{min-width:0}
/* algunas fichas meten los cuatro pares en un solo item: se reparte en columnas */
.dk-persona .dk-stat-band__item:has(> :nth-child(5)){grid-column:1 / -1;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto;grid-auto-flow:column;gap:0 var(--dk-s3)}
.dk-persona .dk-stat-band__value{font-family:var(--dk-display);font-weight:700;font-size:clamp(24px,2.6vw,34px);
  letter-spacing:-.03em;color:var(--dk-lime);line-height:1}
.dk-persona .dk-stat-band__label{font-size:13px;color:var(--dk-on-dark-2);margin-top:6px;margin-bottom:10px}
.dk-persona .dk-stat-band__label:last-child{margin-bottom:0}

/* secciones */
.dk-persona .dk-section,.dk-persona .dk-section--top{max-width:var(--dk-max);margin-inline:auto;
  padding:var(--dk-s8) var(--dk-gutter)}
.dk-persona .dk-section-header{margin-bottom:var(--dk-s5);max-width:60ch}

/* historia + trayectoria */
.dk-persona .dk-story__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--dk-s7)}
.dk-persona .dk-story__grid > div{min-width:0}
.dk-persona .dk-timeline{display:grid;gap:0;border-left:2px solid var(--dk-rule-light);margin-left:6px}
.dk-persona .dk-timeline-item{display:grid;gap:0}
.dk-persona .dk-timeline__year{font-family:var(--dk-display);font-weight:700;font-size:15px;letter-spacing:.04em;
  color:var(--dk-accent-light);padding-left:var(--dk-s3);position:relative;margin-top:var(--dk-s3)}
.dk-persona .dk-timeline__year::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;
  background:var(--dk-accent-light);border:3px solid var(--dk-cream)}
.dk-persona .dk-timeline__year:first-child{margin-top:0}
.dk-persona .dk-timeline__content{padding-left:var(--dk-s3);padding-bottom:var(--dk-s2)}
.dk-persona .dk-timeline__title{font-weight:600;font-size:17px;margin-top:4px}
.dk-persona .dk-timeline__desc{color:var(--dk-on-cream-2);font-size:15px;margin-top:4px;max-width:44ch}

/* cita */
.dk-persona .dk-quote-mark{display:block;max-width:var(--dk-max);margin-inline:auto;padding:var(--dk-s7) var(--dk-gutter) 0;
  font-family:var(--dk-display);font-size:64px;line-height:.6;color:var(--dk-lime)}
.dk-persona .dk-quote-text{max-width:var(--dk-max);margin-inline:auto;padding:var(--dk-s3) var(--dk-gutter) var(--dk-s7);
  font-family:var(--dk-display);font-weight:700;font-size:clamp(24px,3vw,38px);letter-spacing:-.025em;line-height:1.15;
  text-wrap:balance}
.dk-persona .dk-quote-text,.dk-persona .dk-quote-mark{background:var(--dk-deep);color:var(--dk-on-dark);max-width:none}
.dk-persona .dk-quote-text > *,.dk-persona .dk-quote-text{box-sizing:border-box}
.dk-persona .dk-quote-text{padding-left:max(var(--dk-gutter),calc((100% - var(--dk-max)) / 2 + var(--dk-gutter)));
  padding-right:max(var(--dk-gutter),calc((100% - var(--dk-max)) / 2 + var(--dk-gutter)))}
.dk-persona .dk-quote-mark{padding-left:max(var(--dk-gutter),calc((100% - var(--dk-max)) / 2 + var(--dk-gutter)))}
.dk-persona .dk-quote-author{display:block;max-width:none;background:var(--dk-deep);color:var(--dk-on-dark-2);
  font-family:var(--dk-body);font-size:14px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;
  padding:0 max(var(--dk-gutter),calc((100% - var(--dk-max)) / 2 + var(--dk-gutter))) var(--dk-s7);margin-top:calc(-1 * var(--dk-s5))}

/* pilares (como trabaja) */
.dk-persona .dk-pillars-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--dk-rule-light)}
.dk-persona .dk-pillar-card{background:var(--dk-cream);padding:var(--dk-s4);min-width:0}
.dk-persona .dk-pillar-card__icon{font-family:var(--dk-display);font-weight:700;font-size:13px;letter-spacing:.08em;
  color:var(--dk-accent-light);margin-bottom:var(--dk-s2)}
.dk-persona .dk-pillar-card__title{font-family:var(--dk-display);font-weight:700;font-size:21px;letter-spacing:-.02em}
.dk-persona .dk-pillar-card__desc{color:var(--dk-on-cream-2);margin-top:10px;font-size:15px}

/* proyectos */
.dk-persona .dk-projects__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--dk-s3)}
.dk-persona .dk-project-card{padding:var(--dk-s5) var(--dk-s4);min-width:0;display:flex;flex-direction:column;gap:10px}
.dk-persona .dk-project-card--dark{background:var(--dk-deep);color:var(--dk-on-dark)}
.dk-persona .dk-project-card--light{background:var(--dk-cream-2);color:var(--dk-ink)}
.dk-persona .dk-project-card__kanji{font-size:28px;color:var(--dk-lime)}
.dk-persona .dk-project-card--light .dk-project-card__kanji{color:var(--dk-accent-light)}
.dk-persona .dk-project-card__tag{font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.dk-persona .dk-project-card__name{font-family:var(--dk-display);font-weight:700;font-size:26px;letter-spacing:-.02em}
.dk-persona .dk-project-card__desc{opacity:.85;font-size:15px}
.dk-persona .dk-project-card__link{margin-top:auto;padding-top:var(--dk-s2);font-weight:600;text-decoration:underline;text-underline-offset:4px}
.dk-persona .dk-project-card--dark .dk-project-card__link{color:var(--dk-lime)}
.dk-persona .dk-project-card--light .dk-project-card__link{color:var(--dk-accent-light)}

/* convicciones: columna fija + lista */
.dk-persona .dk-philosophy__inner{display:grid;grid-template-columns:40fr 60fr;gap:var(--dk-s7);align-items:start}
.dk-persona .dk-philosophy__sticky{position:sticky;top:var(--dk-s4);min-width:0}
.dk-persona .dk-pillar-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--dk-rule-light)}
.dk-persona .dk-pillar-list__item{display:grid;grid-template-columns:48px 1fr;gap:var(--dk-s2);
  padding-block:var(--dk-s3);border-bottom:1px solid var(--dk-rule-light)}
.dk-persona .dk-pillar-list__num{font-family:var(--dk-display);font-weight:700;color:var(--dk-accent-light);font-size:14px;letter-spacing:.06em}
.dk-persona .dk-pillar-list__title{font-family:var(--dk-display);font-weight:700;font-size:19px;letter-spacing:-.015em}
.dk-persona .dk-pillar-list__desc{color:var(--dk-on-cream-2);margin-top:6px;font-size:15px;max-width:52ch}

/* videos: fondo oscuro, facade con play */
.dk-persona .dk-videos__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--dk-s3);margin-top:var(--dk-s3)}
.dk-persona .dk-video__wrap{min-width:0}
.dk-persona .dk-yt{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--dk-sand);border-radius:var(--dk-radius)}
.dk-persona .dk-yt img{width:100%;height:100%;object-fit:cover;filter:grayscale(.3) contrast(1.05);transition:filter .2s}
.dk-persona .dk-yt:hover img{filter:none}
.dk-persona .dk-video__wrap iframe{width:100%;aspect-ratio:16/9;height:auto;border:0;display:block}
.dk-persona .dk-video__title{font-weight:600;font-size:16px;margin-top:12px;line-height:1.3}

/* el bloque de videos y el de proyectos van sobre oscuro: envolver por la seccion */
.dk-persona .dk-section--top:has(.dk-videos__grid),
.dk-persona .dk-section--top:has(.dk-projects__grid){max-width:none;padding-inline:0;background:var(--dk-dark);color:var(--dk-on-dark)}
.dk-persona .dk-section--top:has(.dk-videos__grid) > *,
.dk-persona .dk-section--top:has(.dk-projects__grid) > *{max-width:var(--dk-max);margin-inline:auto;padding-inline:var(--dk-gutter)}
.dk-persona .dk-section--top:has(.dk-videos__grid) .dk-label,
.dk-persona .dk-section--top:has(.dk-projects__grid) .dk-label{color:var(--dk-lime)}
.dk-persona .dk-section--top:has(.dk-videos__grid) .dk-title em{color:var(--dk-lime)}

/* cierre */
.dk-persona .dk-section--top:has(.dk-cta-block){max-width:none;padding-inline:0;background:var(--dk-deep);color:var(--dk-on-dark)}
.dk-persona .dk-cta-block{max-width:var(--dk-max);margin-inline:auto;padding-inline:var(--dk-gutter);text-align:left}
.dk-persona .dk-cta-block__kanji{font-size:28px;color:var(--dk-lime);margin-bottom:var(--dk-s2)}
.dk-persona .dk-title--cta{font-family:var(--dk-display);font-weight:700;font-size:clamp(32px,4.6vw,56px);
  letter-spacing:-.03em;line-height:1.04;max-width:22ch;text-wrap:balance}
.dk-persona .dk-title--cta em{font-style:normal;color:var(--dk-lime)}
.dk-persona .dk-cta-block__sub{color:var(--dk-on-dark-2);font-size:18px;margin-top:var(--dk-s3);max-width:52ch}

/* movil */
@media (max-width:980px){
  .dk-persona .dk-stat-band__grid,.dk-persona .dk-stat-band__item:has(> :nth-child(5)){grid-template-columns:1fr 1fr}
  .dk-persona .dk-stat-band__item:has(> :nth-child(5)){grid-template-rows:auto auto auto auto}
  .dk-persona .dk-pillars-grid{grid-template-columns:1fr}
}
@media (max-width:860px){
  .dk-persona .dk-hero__inner,.dk-persona .dk-story__grid,.dk-persona .dk-projects__grid,
  .dk-persona .dk-philosophy__inner,.dk-persona .dk-videos__grid{grid-template-columns:1fr}
  .dk-persona .dk-hero__inner{gap:var(--dk-s5)}
  .dk-persona .dk-philosophy__sticky{position:static}
  .dk-persona .dk-section,.dk-persona .dk-section--top{padding-block:var(--dk-s6)}
}

/* v0.8.1: anular contenedores y fondo de los bloques de WordPress en las fichas */
body.dk-persona{background:var(--dk-cream) !important}
.dk-persona__content .wp-block-group,.dk-persona__content .is-layout-constrained,
.dk-persona__content .is-layout-constrained > *,.dk-persona__content .is-layout-flow > *,
.dk-persona__content .wp-block-group__inner-container{max-width:none !important;margin-inline:0 !important;padding:0 !important}
.dk-persona .dk-pillar-card__icon{display:none}
.dk-persona .dk-hero__inner{padding-block:0}

/* v0.8.2: el contenido antiguo trae envoltorios con estilos en linea
   (ancho 100vw, fondo del diseno viejo, caja de 1080px). Se neutralizan
   para que manden las secciones del sistema nuevo. */
.dk-persona__content div[style*="100vw"]{width:auto !important;position:static !important;left:auto !important;
  margin:0 !important;background:transparent !important;padding:0 !important}
.dk-persona__content div[style*="max-width"]{max-width:none !important;margin:0 !important;padding:0 !important}
/* bloques sueltos (formacion y similares) que no son secciones a sangre: vuelven al contenedor */
.dk-persona__content div[style*="max-width"]:not(:has(section,.dk-stat-band__grid,.dk-quote-text,.dk-quote-mark)){
  max-width:var(--dk-max) !important;margin-inline:auto !important;
  padding:var(--dk-s7) var(--dk-gutter) !important}
.dk-persona__content [style*="background"]:not(.dk-project-card):not(.dk-pillar-card){background:transparent !important}
.dk-persona__content [style*="color:"]{color:inherit !important}

/* v0.8.5: rejilla de tarjetas sueltas dentro de esos bloques (formacion) */
.dk-persona__content div[style*="grid-template-columns"]{gap:0 !important}
.dk-persona__content div[style*="grid-template-columns"] > div{padding:var(--dk-s3) var(--dk-s4) var(--dk-s3) 0 !important;min-width:0}
.dk-persona__content div[style*="grid-template-columns"] > div + div{padding-left:var(--dk-s4) !important}
@media (max-width:860px){
  .dk-persona__content div[style*="grid-template-columns"]{grid-template-columns:1fr !important}
  .dk-persona__content div[style*="grid-template-columns"] > div,
  .dk-persona__content div[style*="grid-template-columns"] > div + div{padding:var(--dk-s3) 0 !important;border-left:0 !important;border-top:1px solid var(--dk-rule-light) !important}
}

/* v0.8.6: el bloque de cierre lleva su propio fondo oscuro, este donde este.
   En algunas fichas no va dentro de una seccion y quedaba lima sobre crema. */
.dk-persona .dk-cta-block{background:var(--dk-deep);color:var(--dk-on-dark);
  padding:var(--dk-s7) var(--dk-s5) !important}
.dk-persona .dk-section--top:has(.dk-cta-block) .dk-cta-block{padding-inline:var(--dk-gutter) !important}
.dk-persona .dk-cta-block .dk-label{color:var(--dk-lime)}
@media (max-width:860px){.dk-persona .dk-cta-block{padding:var(--dk-s6) var(--dk-s3) !important}}

/* v0.8.7: la cita y la entradilla mandan sobre los colores en linea antiguos */
.dk-persona .dk-quote-text,.dk-persona .dk-quote-text *{color:var(--dk-on-dark) !important}
.dk-persona .dk-quote-mark{color:var(--dk-lime) !important}
.dk-persona .dk-quote-author,.dk-persona .dk-quote-author *{color:var(--dk-on-dark-2) !important}
/* la cita de Nacho y Desiree viene dentro de figure/blockquote: mismo fondo a sangre */
.dk-persona__content div:has(> figure .dk-quote-text){background:var(--dk-deep) !important;text-align:left !important}
.dk-persona__content figure:has(.dk-quote-text),.dk-persona__content blockquote:has(.dk-quote-text){margin:0 !important;padding:0 !important;border:0 !important}
/* entradilla fuera del hero, sobre crema */
.dk-persona .dk-lead{color:var(--dk-on-dark-2)}
.dk-persona .dk-section .dk-lead,.dk-persona .dk-section--top .dk-lead,.dk-persona .dk-story__grid .dk-lead{color:var(--dk-on-cream-2) !important}
.dk-persona .dk-section--top:has(.dk-videos__grid) .dk-lead,.dk-persona .dk-section--top:has(.dk-projects__grid) .dk-lead{color:var(--dk-on-dark-2) !important}

/* ============================================================
   v0.9 BLOG: tarjetas, articulo e indice.
   ============================================================ */

/* tarjetas */
.dk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--dk-s5) var(--dk-s4);margin-top:var(--dk-s5)}
.dk-card{min-width:0}
.dk-card__link{display:flex;flex-direction:column;gap:10px;height:100%}
.dk-card__img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--dk-cream-2)}
.dk-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.dk-card__link:hover .dk-card__img img{transform:scale(1.03)}
.dk-card__meta{font-size:13px;color:var(--dk-on-cream-2);margin-top:6px}
.dk-card__title{font-family:var(--dk-display);font-weight:700;font-size:21px;letter-spacing:-.02em;line-height:1.18;text-wrap:balance}
.dk-card__more{margin-top:auto;padding-top:6px;font-weight:600;font-size:15px;color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:4px}
.dk-cards__all{margin-top:var(--dk-s5)}
.dk-cards__all a{font-weight:600;color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:5px}
@media (max-width:980px){.dk-cards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.dk-cards{grid-template-columns:1fr}}

/* cabecera de articulo e indice */
.dk-post__hero{padding-block:var(--dk-s6) var(--dk-s7)}
.dk-post__hero-in{max-width:880px}
.dk-crumbs{display:flex;gap:10px;font-size:14px;color:var(--dk-on-dark-2);margin-bottom:var(--dk-s3)}
.dk-crumbs a{color:var(--dk-on-dark-2);text-decoration:underline;text-underline-offset:4px}
.dk-post__title{font-size:clamp(34px,4.4vw,56px);letter-spacing:-.03em;line-height:1.05}
.dk-post__meta{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:var(--dk-s3);font-size:15px;color:var(--dk-on-dark-2)}
.dk-post__meta a{color:var(--dk-on-dark);text-decoration:underline;text-underline-offset:4px}
.dk-post__cover{margin-top:calc(-1 * var(--dk-s5))}
.dk-post__cover img{width:100%;max-height:520px;object-fit:cover;display:block}

/* cuerpo del articulo: columna de lectura */
.dk-article{padding-block:var(--dk-s6) var(--dk-s7)}
.dk-article__body{max-width:720px;margin-inline:auto;font-size:18px;line-height:1.7}
.dk-article__body > * + *{margin-top:1.1em}
.dk-article__body h2{font-size:clamp(26px,2.6vw,34px);margin-top:1.9em;line-height:1.12}
.dk-article__body h3{font-size:clamp(20px,2vw,24px);margin-top:1.6em;line-height:1.2}
.dk-article__body h4{font-family:var(--dk-display);font-weight:700;font-size:19px;margin-top:1.4em}
.dk-article__body p,.dk-article__body li{color:#2E362A}
.dk-article__body ul,.dk-article__body ol{padding-left:1.3em}
.dk-article__body ul{list-style:disc}.dk-article__body ol{list-style:decimal}
.dk-article__body li + li{margin-top:.45em}
.dk-article__body li::marker{color:var(--dk-accent-light)}
.dk-article__body a{color:var(--dk-accent-light) !important;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.dk-article__body strong{font-weight:600;color:var(--dk-ink)}
.dk-article__body img{height:auto;margin-inline:auto}
.dk-article__body blockquote{border-left:3px solid var(--dk-lime);padding-left:var(--dk-s3);font-family:var(--dk-display);font-weight:700;font-size:22px;line-height:1.3}
.dk-article__body br + br{display:none}

/* el contenido antiguo trae tipografia y color en linea: manda el sistema */
.dk-article__body [style*="font-family"]{font-family:inherit !important}
.dk-article__body h2[style],.dk-article__body h3[style],.dk-article__body h4[style]{font-family:var(--dk-display) !important;font-size:revert-layer}
.dk-article__body [style*="color"]:not(.dk-post-bar__fill){color:inherit !important}
.dk-article__body [style*="background"]:not(.dk-post-bar__fill):not(.dk-post-bar__track){background:transparent !important}
.dk-article__body [style*="border"]{border-color:var(--dk-rule-light) !important}
.dk-article__body h2,.dk-article__body h3{color:var(--dk-ink) !important}

/* componentes de los articulos */
.dk-article__body .dk-post-intro{font-size:20px;line-height:1.6;color:var(--dk-ink) !important}
.dk-article__body .dk-post-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--dk-rule-light) !important;margin-block:1.6em}
.dk-article__body .dk-post-stat-card{background:var(--dk-cream) !important;padding:var(--dk-s3) !important;border:0 !important;border-radius:0 !important;min-width:0}
.dk-article__body .dk-post-stat-card__value,.dk-article__body .dk-post-stat-row__value{font-family:var(--dk-display) !important;font-weight:700;font-size:32px;letter-spacing:-.03em;line-height:1;color:var(--dk-accent-light) !important}
.dk-article__body .dk-post-stat-card__label,.dk-article__body .dk-post-stat-row__label{font-size:14px;color:var(--dk-on-cream-2) !important;margin-top:8px}
.dk-article__body .dk-post-stat-row{display:grid;grid-template-columns:120px 1fr;gap:var(--dk-s3);align-items:baseline;padding-block:var(--dk-s3);border-top:1px solid var(--dk-rule-light)}
.dk-article__body .dk-post-stat-row__source{font-size:13px;color:var(--dk-on-cream-2) !important;margin-top:4px}
.dk-article__body .dk-post-callout{background:var(--dk-cream-2) !important;padding:var(--dk-s4) !important;border:0 !important;border-left:3px solid var(--dk-accent-light) !important;border-radius:0 !important}
.dk-article__body .dk-post-callout--dark{background:var(--dk-deep) !important;border-left-color:var(--dk-lime) !important}
.dk-article__body .dk-post-callout--dark,.dk-article__body .dk-post-callout--dark *{color:var(--dk-on-dark) !important}
.dk-article__body .dk-post-callout--dark a{color:var(--dk-lime) !important}
.dk-article__body .dk-post-tip{display:flex;gap:var(--dk-s2);background:var(--dk-cream-2) !important;padding:var(--dk-s3) !important;border:0 !important;border-radius:0 !important}
.dk-article__body .dk-post-tip__icon{display:none}
.dk-article__body .dk-post-tip__text::before{content:"Clave";display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--dk-accent-light);margin-bottom:6px}
.dk-article__body .dk-post-table-wrap{overflow-x:auto;margin-block:1.6em;border:0 !important}
.dk-article__body .dk-post-table,.dk-article__body table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.45}
.dk-article__body th{text-align:left;font-weight:600;background:var(--dk-deep) !important;color:var(--dk-on-dark) !important;padding:12px 14px !important}
.dk-article__body td{padding:12px 14px !important;border-bottom:1px solid var(--dk-rule-light) !important;vertical-align:top}
.dk-article__body .dk-post-bar{margin-block:14px}
.dk-article__body .dk-post-bar__header{display:flex;justify-content:space-between;font-size:15px;margin-bottom:6px}
.dk-article__body .dk-post-bar__pct{font-weight:600;color:var(--dk-accent-light) !important}
.dk-article__body .dk-post-bar__track{height:8px;background:var(--dk-cream-2) !important;border-radius:0 !important;overflow:hidden}
.dk-article__body .dk-post-bar__fill{height:100%;background:var(--dk-accent-light) !important;border-radius:0 !important}
.dk-article__body .dk-post-cta{background:var(--dk-deep) !important;padding:var(--dk-s5) var(--dk-s4) !important;border-radius:0 !important;margin-block:2em}
.dk-article__body .dk-post-cta,.dk-article__body .dk-post-cta *{color:var(--dk-on-dark) !important}
.dk-article__body .dk-post-cta__text{font-family:var(--dk-display) !important;font-weight:700;font-size:22px;line-height:1.25}
.dk-article__body .dk-post-cta a{display:inline-flex;margin-top:var(--dk-s2);background:var(--dk-lime) !important;color:var(--dk-deep) !important;
  text-decoration:none;font-weight:600;padding:12px 22px;border-radius:3px}
.dk-article__body details{border-top:1px solid var(--dk-rule-light);padding-block:var(--dk-s2)}
.dk-article__body summary{cursor:pointer;font-family:var(--dk-display) !important;font-weight:700;font-size:18px}

/* indice de contenidos (Easy TOC) */
.dk-article__body #ez-toc-container,.dk-article__body .ez-toc-v2_0_86{background:var(--dk-cream-2) !important;border:0 !important;border-radius:0 !important;
  box-shadow:none !important;padding:var(--dk-s3) var(--dk-s4) !important;width:100% !important;margin-block:1.8em !important}
.dk-article__body #ez-toc-container .ez-toc-title{font-family:var(--dk-body) !important;font-size:12px !important;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--dk-accent-light) !important}
.dk-article__body #ez-toc-container ul{list-style:none;padding-left:0}
.dk-article__body #ez-toc-container ul ul{padding-left:var(--dk-s2)}
.dk-article__body #ez-toc-container a{font-size:15px;text-decoration:none;color:var(--dk-ink) !important}
.dk-article__body #ez-toc-container a:hover{text-decoration:underline}

/* autor */
.dk-author{max-width:720px;margin:var(--dk-s6) auto 0;display:grid;grid-template-columns:72px 1fr;gap:var(--dk-s3);
  padding-top:var(--dk-s4);border-top:1px solid var(--dk-rule-light);align-items:start}
.dk-author img{width:72px;height:72px;object-fit:cover;border-radius:50%;filter:grayscale(1)}
.dk-author__name{font-family:var(--dk-display);font-weight:700;font-size:18px}
.dk-author__bio{color:var(--dk-on-cream-2);font-size:15px;margin-top:4px}
.dk-author a{display:inline-block;margin-top:8px;font-size:14px;font-weight:600;color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:4px}

/* paginacion */
.dk-pager{margin-top:var(--dk-s6);display:flex;gap:var(--dk-s2);flex-wrap:wrap}
.dk-pager .page-numbers{padding:8px 14px;border:1px solid var(--dk-rule-light);font-weight:600}
.dk-pager .current{background:var(--dk-ink);color:var(--dk-cream);border-color:var(--dk-ink)}

@media (max-width:860px){
  .dk-article__body{font-size:17px}
  .dk-post__cover{margin-top:0;padding-inline:0}
  .dk-article__body .dk-post-stat-row{grid-template-columns:1fr;gap:6px}
}

/* ============================================================
   v0.10 LANDINGS DE SERVICIO, MENU DE SERVICIOS Y FOOTER
   ============================================================ */

/* menu desplegable de servicios */
.dk-dd{position:relative}
.dk-dd__btn{font:inherit;font-size:16px;color:var(--dk-on-dark);background:none;border:0;padding:8px 18px 8px 0;cursor:pointer;position:relative}
.dk-dd__btn::after{content:"";position:absolute;right:2px;top:50%;width:7px;height:7px;margin-top:-6px;
  border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.dk-dd__btn[aria-expanded="true"]::after{transform:rotate(-135deg);margin-top:-2px}
.dk-dd__panel{display:none;position:absolute;left:-28px;top:calc(100% + 18px);z-index:50;
  grid-template-columns:repeat(2,minmax(240px,1fr));gap:var(--dk-s4);padding:var(--dk-s4);
  background:var(--dk-dark);border:1px solid var(--dk-rule-dark);box-shadow:0 24px 48px rgba(0,0,0,.45);width:max-content}
.dk-dd__btn[aria-expanded="true"]+.dk-dd__panel{display:grid}
@media (hover:hover) and (min-width:922px){
  .dk-dd:hover .dk-dd__panel,.dk-dd:focus-within .dk-dd__panel{display:grid}
  .dk-dd::after{content:"";position:absolute;left:0;right:0;top:100%;height:20px}
}
.dk-dd__h{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--dk-lime);font-weight:500;margin-bottom:10px}
.dk-dd__col ul{display:grid;gap:2px}
.dk-nav .dk-dd__col a{display:block;padding:10px 12px;margin-inline:-12px;border:0;border-radius:3px}
.dk-nav .dk-dd__col a:hover,.dk-nav .dk-dd__col a:focus-visible{background:var(--dk-deep)}
.dk-dd__col b{display:block;font-weight:600;font-size:16px;color:var(--dk-on-dark)}
.dk-dd__col small{display:block;font-size:14px;color:var(--dk-on-dark-2);margin-top:2px}
@media (max-width:921px){
  .dk-nav--open .dk-dd{width:100%}
  .dk-nav--open .dk-dd__btn{padding-left:0}
  .dk-nav--open .dk-dd__panel{position:static;display:grid;grid-template-columns:1fr;width:auto;box-shadow:none;border:0;
    padding:var(--dk-s1) 0 var(--dk-s2);gap:var(--dk-s2);background:transparent}
  .dk-nav--open .dk-dd__btn{pointer-events:none}
  .dk-nav--open .dk-dd__btn::after{display:none}
}

/* hero de landing: migas arriba, algo menos de aire */
.dk-lp-hero{padding-top:var(--dk-s5)}
.dk-lp-hero .dk-crumbs{margin-bottom:var(--dk-s4)}
.dk-lp-hero .dk-crumbs span[aria-current]{color:var(--dk-on-dark)}

/* que revisamos: rejilla de cuatro */
.dk-grid4{margin-top:var(--dk-s6);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--dk-rule-dark);list-style:none;padding:0}
.dk-grid4 li{background:var(--dk-dark);padding:var(--dk-s4) var(--dk-s3);min-width:0}
.dk-grid4 .n,.dk-steps .n{display:block;font-family:var(--dk-display);font-weight:700;font-size:14px;color:var(--dk-lime);letter-spacing:.04em}
.dk-grid4 h3{font-size:20px;letter-spacing:-.015em;margin-top:var(--dk-s2)}
.dk-grid4 p{color:var(--dk-on-dark-2);font-size:15px;margin-top:10px}
@media (max-width:1080px){.dk-grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.dk-grid4{grid-template-columns:1fr}}

/* que recibes: lista y maqueta del entregable */
.dk-deliv{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--dk-s7);align-items:center}
.dk-deliv h2{font-size:clamp(30px,3.6vw,48px)}
.dk-deliv__p{color:var(--dk-on-cream-2);font-size:18px;margin-top:var(--dk-s2);max-width:44ch}
.dk-deliv__list{margin-top:var(--dk-s5);display:grid;gap:var(--dk-s3)}
.dk-deliv__list li{border-top:1px solid var(--dk-rule-light);padding-top:var(--dk-s2)}
.dk-deliv__list h3{font-size:20px;letter-spacing:-.015em}
.dk-deliv__list p{color:var(--dk-on-cream-2);margin-top:6px;font-size:16px}
.dk-mock{background:var(--dk-deep);border-radius:10px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(11,15,10,.55);min-width:0}
.dk-mock__bar{display:flex;gap:6px;padding:12px 14px;background:var(--dk-dark);border-bottom:1px solid var(--dk-rule-dark)}
.dk-mock__bar span{width:10px;height:10px;border-radius:50%;background:var(--dk-rule-dark)}
.dk-mock__in{padding:var(--dk-s4)}
.dk-mock__t{font-family:var(--dk-display);font-weight:700;font-size:22px;color:var(--dk-on-dark);letter-spacing:-.02em}
.dk-mock ul{margin-top:var(--dk-s3);display:grid;gap:10px}
.dk-mock li{display:grid;grid-template-columns:40px 1fr;gap:4px 14px;padding:14px;background:var(--dk-dark);border:1px solid var(--dk-rule-dark);border-radius:4px}
.dk-mock li b{grid-row:span 2;font-family:var(--dk-display);color:var(--dk-deep);background:var(--dk-lime);border-radius:3px;display:grid;place-items:center;height:32px;font-size:14px}
.dk-mock .t{color:var(--dk-on-dark);font-weight:600;font-size:15px;line-height:1.3}
.dk-mock .tags{display:flex;gap:6px;flex-wrap:wrap}
.dk-mock i{font-style:normal;font-size:12px;color:var(--dk-on-dark-2);border:1px solid var(--dk-rule-dark);border-radius:20px;padding:2px 9px}
.dk-mock figcaption{padding:0 var(--dk-s4) var(--dk-s3);font-size:13px;color:var(--dk-on-dark-2)}
@media (max-width:860px){.dk-deliv{grid-template-columns:1fr;gap:var(--dk-s5)}}

/* proceso en cuatro pasos */
.dk-steps{margin-top:var(--dk-s6);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--dk-s4);list-style:none;padding:0;counter-reset:none}
.dk-steps li{border-top:2px solid var(--dk-lime);padding-top:var(--dk-s3);min-width:0}
.dk-steps h3{font-size:21px;letter-spacing:-.015em;margin-top:var(--dk-s1)}
.dk-steps p{color:var(--dk-on-dark-2);font-size:15px;margin-top:10px}
@media (max-width:980px){.dk-steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.dk-steps{grid-template-columns:1fr}}

/* comparativa */
.dk-cmp{margin-top:var(--dk-s5);overflow-x:auto;-webkit-overflow-scrolling:touch}
.dk-cmp table{width:100%;min-width:720px;border-collapse:collapse;font-size:16px}
.dk-cmp th,.dk-cmp td{text-align:left;padding:18px 20px;border-bottom:1px solid var(--dk-rule-light);vertical-align:top}
.dk-cmp thead th{font-family:var(--dk-display);font-size:17px;letter-spacing:-.01em;border-bottom:2px solid var(--dk-ink)}
.dk-cmp tbody th{font-weight:600;color:var(--dk-ink);width:20%}
.dk-cmp td{color:var(--dk-on-cream-2)}
.dk-cmp .is-us{background:var(--dk-deep);color:var(--dk-on-dark)}
.dk-cmp thead .is-us{color:var(--dk-lime);border-bottom-color:var(--dk-lime)}
.dk-cmp tbody tr:last-child .is-us{border-bottom-color:var(--dk-deep)}
.dk-head p a,.dk-deliv a{color:var(--dk-accent-light);text-decoration:underline;text-underline-offset:3px}

/* barra fija de conversion en movil */
.dk-sticky{display:none}
@media (max-width:860px){
  .dk-sticky{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:60;min-height:52px;
    box-shadow:0 10px 30px rgba(0,0,0,.35);transition:transform .25s,opacity .25s}
  .dk-sticky.is-hidden{transform:translateY(140%);opacity:0;pointer-events:none}
  .dk-landing .dk-foot{padding-bottom:96px}
}

/* footer en cuatro columnas */
.dk-foot .cols{grid-template-columns:1.3fr 1fr 1fr 1fr}
.dk-foot__about{color:var(--dk-on-dark-2);margin-top:14px;max-width:34ch}
.dk-foot__stack{display:grid;gap:var(--dk-s4);align-content:start}
.dk-legal__links{display:flex;gap:var(--dk-s3);flex-wrap:wrap}
@media (max-width:980px){.dk-foot .cols{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.dk-foot .cols{grid-template-columns:1fr}}

/* v0.10.1: el reset ".dk p/ul/ol{margin:0}" pesa mas que una sola clase.
   Los margenes de separacion van con .dk delante para que no se pierdan
   (y para que ningun subtitulo quede pegado a su titulo). */
.dk .dk-hero__lede{margin-top:var(--dk-s4)}
.dk .dk-deliv__p{margin-top:var(--dk-s3)}
.dk .dk-deliv__list{margin-top:var(--dk-s5)}
.dk .dk-grid4,.dk .dk-steps{margin-top:var(--dk-s6)}
.dk .dk-mock ul{margin-top:var(--dk-s3)}
.dk .dk-foot__about{margin-top:14px}
.dk-form__row{align-items:end}
/* menu movil: el panel abierto baja a su propia fila bajo la marca */
@media (max-width:921px){
  .dk-header .dk-wrap{flex-wrap:wrap}
  .dk-nav--open{order:3;flex:0 0 100%;margin-left:0}
  .dk-nav--open .dk-dd__col small{display:none}
  .dk-nav--open .dk-dd__col a{padding:8px 0;margin:0}
  .dk-nav--open .dk-dd__h{margin-bottom:2px}
}
/* comparativa en movil: una tarjeta por fila, la columna DOKAI siempre a la vista */
@media (max-width:700px){
  .dk-cmp{overflow:visible}
  .dk-cmp table{min-width:0}
  .dk-cmp table,.dk-cmp tbody,.dk-cmp tr,.dk-cmp th,.dk-cmp td{display:block;width:auto}
  .dk-cmp thead{display:none}
  .dk-cmp tr{border-top:2px solid var(--dk-ink);padding-top:var(--dk-s2);margin-bottom:var(--dk-s4)}
  .dk-cmp tbody th{width:auto;padding:0 0 10px;border:0;font-family:var(--dk-display);font-size:19px}
  .dk-cmp td{padding:10px 0;border-bottom:1px solid var(--dk-rule-light)}
  .dk-cmp td::before{content:attr(data-label);display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--dk-on-cream-2);margin-bottom:2px}
  .dk-cmp td.is-us{padding:12px 14px;border:0;margin-top:6px}
  .dk-cmp td.is-us::before{color:var(--dk-lime)}
}
/* videos en landings: tres miniaturas por fila y proporcion 16:9 real */
.dk .dk-videos--lp .dk-video img{height:auto}
.dk-videos--lp{grid-template-columns:repeat(3,minmax(0,1fr))}
.dk-videos--lp .dk-video--main img{object-position:50% 50%}
@media (max-width:700px){.dk-videos--lp{grid-template-columns:1fr}}
.dk .dk-pains{margin-top:var(--dk-s6)}
.dk .dk-proof{margin-top:var(--dk-s4)}
/* en landings los cuatro videos van iguales, sin destacado */
.dk-videos--lp{grid-template-columns:repeat(4,minmax(0,1fr))}
.dk-videos--lp .dk-video--main{grid-column:auto}
.dk-videos--lp .dk-video img,.dk-videos--lp .dk-video--main img{aspect-ratio:16/9}
.dk-videos--lp .dk-video--main .dk-video__t b{font-family:var(--dk-body);font-weight:600;font-size:16px;letter-spacing:0}
.dk-videos--lp .dk-video .dk-video__play{width:44px;height:44px;top:32%}
.dk-videos--lp .dk-video .dk-video__play::after{border-width:8px 0 8px 13px;margin-left:3px}
@media (max-width:980px){.dk-videos--lp{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.dk-videos--lp{grid-template-columns:1fr}}

/* ============================================================
   v1.0 SISTEMA CLARO. Blanco y crema para leer, pizarra solo
   para los bloques que deben pesar (metodologia, proceso, cierre
   y footer), verde para la accion. Esquinas suaves y sombra leve.
   ============================================================ */

/* superficies invertidas: misma maqueta, paleta pizarra */
.dk-deep:not(.dk-hero):not(.dk-post__hero),.dk-foot,.dk-mock,.dk-cmp .is-us,.dk-invert,
.dk-persona .dk-quote-text,.dk-persona .dk-quote-mark,.dk-persona .dk-quote-author,
.dk-persona .dk-project-card--dark,.dk-persona .dk-section--top:has(.dk-cta-block),
.dk-persona .dk-cta-block,.dk-persona__content div:has(> figure .dk-quote-text),
.dk-persona .dk-hero__photo-card,
.dk-article__body .dk-post-callout--dark,.dk-article__body th,.dk-article__body .dk-post-cta{
  --dk-dark:#2b3540;
  --dk-on-dark:#f2f1e9;
  --dk-on-dark-2:#b4bcc4;
  --dk-on-cream-2:#b4bcc4;
  --dk-ink:#f2f1e9;
  --dk-lime:#86d29e;
  --dk-accent-light:#86d29e;
  --dk-rule-dark:#3a4551;
  --dk-rule-light:#3a4551;
  --dk-ghost-hover:#222b34;
}
.dk-deep:not(.dk-hero):not(.dk-post__hero) h2,.dk-deep:not(.dk-hero):not(.dk-post__hero) h3{color:var(--dk-on-dark)}

/* cabecera blanca con el logotipo completo */
.dk-header{background:rgba(253,253,253,.92);color:var(--dk-slate);border-bottom:1px solid var(--dk-rule-light);
  position:sticky;top:0;z-index:40;-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px)}
.admin-bar .dk-header{top:32px}
@media (max-width:782px){.admin-bar .dk-header{top:46px}}
.dk-header .dk-wrap{min-height:76px}
.dk-brand__logo{height:38px;width:auto;display:block}
.dk-foot .dk-brand__logo{height:34px}
@media (max-width:921px){.dk-header .dk-wrap{min-height:64px}.dk-brand__logo{height:32px}}
.dk-nav{gap:28px;font-size:15px;font-weight:500}
.dk-nav a{color:var(--dk-slate)}
.dk-nav a:hover,.dk-nav a:focus-visible{border-bottom-color:var(--dk-green);color:var(--dk-green)}
.dk-nav .dk-lead{background:var(--dk-green);color:#fdfdfd;text-decoration:none;padding:10px 20px;border-radius:999px}
.dk-nav .dk-lead:hover{background:var(--dk-green-2);color:#fdfdfd}
.dk-dd__btn{font-size:15px;font-weight:500;color:var(--dk-slate)}
.dk-dd__panel{background:#fdfdfd;border:1px solid var(--dk-rule-light);border-radius:var(--dk-radius);box-shadow:0 24px 60px -20px rgba(34,43,52,.28)}
.dk-nav .dk-dd__col a:hover,.dk-nav .dk-dd__col a:focus-visible{background:var(--dk-sand)}
.dk-dd__col b{color:var(--dk-slate)}
.dk-dd__col small{color:var(--dk-on-dark-2)}
.dk-dd__h{color:var(--dk-green)}
.dk-menu-btn{color:var(--dk-slate);border-color:var(--dk-rule-light);border-radius:999px}
@media (max-width:921px){.dk-nav--open .dk-lead{align-self:flex-start}}

/* hero claro */
.dk-hero{background:linear-gradient(180deg,#fdfdfd 0%,var(--dk-sand) 100%);color:var(--dk-slate)}
.dk-hero h1{color:var(--dk-slate)}
.dk-hero h1 em{color:var(--dk-green)}
.dk-hero__lede{color:var(--dk-on-dark-2)}
.dk-proof li::before{border-radius:50%;width:8px;height:8px;top:10px}

/* formulario como tarjeta blanca */
.dk-form{background:#fdfdfd;border:1px solid var(--dk-rule-light);border-radius:20px;box-shadow:var(--dk-shadow)}
.dk-form label{color:var(--dk-on-dark-2)}
.dk-form input,.dk-form select,.dk-form textarea{background:#f8f7f2;color:var(--dk-slate);border:1px solid #dcdacf;border-radius:10px}
.dk-form input::placeholder,.dk-form textarea::placeholder{color:#7c868f}
.dk-form__alt a{color:var(--dk-slate)}
.dk-form--ok a{color:var(--dk-green)}

/* secciones */
.dk-sec{padding-block:var(--dk-s8)}
@media (max-width:782px){.dk-sec{padding-block:var(--dk-s6)}}
.dk-head h2,.dk-deliv h2{color:var(--dk-slate)}
.dk-deep:not(.dk-hero) .dk-head h2{color:var(--dk-on-dark)}

/* tarjetas: separadas y redondeadas en vez de rejilla de lineas */
.dk-ways,.dk-grid4{background:transparent;gap:var(--dk-s3)}
.dk-ways article,.dk-grid4 li{background:#fdfdfd;border:1px solid var(--dk-rule-light);border-radius:var(--dk-radius)}
.dk-dark .dk-ways article,.dk-dark .dk-grid4 li{background:#fdfdfd}
.dk-ways a{color:var(--dk-green)}
.dk-ways h3,.dk-grid4 h3{color:var(--dk-slate)}
.dk-ways p,.dk-grid4 p{color:var(--dk-on-dark-2)}
.dk-pains li{border-top:2px solid var(--dk-green)}
.dk-adv div{border-top:2px solid var(--dk-green)}
.dk-svc{border-radius:var(--dk-radius);overflow:hidden}

/* metodologia y pasos sobre pizarra */
.dk-seq{border-top-color:var(--dk-rule-dark)}
.dk-steps li{border-top-color:var(--dk-lime)}

/* equipo: color natural, sin escala de grises */
.dk-person img{filter:none}
.dk-person .role{color:var(--dk-green)}
.dk-person h3{color:var(--dk-slate)}
.dk-person__link{color:var(--dk-on-dark-2)}
.dk-person a:hover .dk-person__link{color:var(--dk-green)}

/* videos */
.dk-video{color:var(--dk-on-dark)}
.dk-video img{border-radius:12px}

/* maqueta del entregable y comparativa */
.dk-mock{border-radius:18px}
.dk-mock li{border-radius:10px}
.dk-cmp{border-radius:var(--dk-radius)}
.dk-cmp thead .is-us{border-radius:var(--dk-radius) var(--dk-radius) 0 0}
.dk-cmp tbody tr:last-child .is-us{border-radius:0 0 var(--dk-radius) var(--dk-radius)}

/* FAQ */
.dk-faq summary{color:var(--dk-slate)}
.dk-faq summary::after{color:var(--dk-green)}

/* cierre y footer en pizarra */
.dk-end .dk-hero__lede{color:var(--dk-on-dark-2)}
.dk-foot{background:var(--dk-slate);color:var(--dk-on-dark);border-top:1px solid #3a4551}
.dk-end + .dk-foot,main:has(> .dk-end:last-child) + .dk-foot{border-top-color:#3a4551}
.dk-foot h4{color:var(--dk-lime)}

/* tarjetas de guias */
.dk-card img,.dk-card__img img{border-radius:12px}

/* fichas de persona: hero claro */
.dk-persona .dk-hero{background:linear-gradient(180deg,#fdfdfd 0%,var(--dk-sand) 100%);color:var(--dk-slate)}
.dk-persona .dk-hero__photo-card{border-radius:20px}
.dk-persona .dk-hero__photo-card img{filter:none}
.dk-persona .dk-hero__photo-overlay{background:linear-gradient(to top,rgba(34,43,52,.88) 0%,rgba(34,43,52,0) 45%)}
.dk-persona .dk-pillars-grid{background:transparent;gap:var(--dk-s3)}
.dk-persona .dk-pillar-card{border:1px solid var(--dk-rule-light);border-radius:var(--dk-radius)}

/* contenido antiguo con lima en linea: pasa al verde de marca */
[style*="color:#a5e310" i],[style*="color: #a5e310" i]{color:#016f29 !important}
[style*="background:#a5e310" i],[style*="background-color:#a5e310" i],
[style*="background: #a5e310" i],[style*="background-color: #a5e310" i]{background:#016f29 !important;color:#fdfdfd !important}
.dk-brand img.dk-brand__logo{height:38px;width:auto}
.dk-foot .dk-brand img.dk-brand__logo{height:34px}
@media (max-width:921px){.dk-brand img.dk-brand__logo{height:32px}}
/* el boton Hablemos de la cabecera no hereda la entradilla .dk-lead de las fichas */
.dk-header .dk-nav .dk-lead{font-size:15px;line-height:1.2;margin:0;max-width:none;color:#fdfdfd;font-weight:600}
.dk-persona .dk-hero__photo-card{color:var(--dk-on-dark)}

/* cabecera de guias y articulos: clara, como el resto de heroes */
.dk-post__hero{background:linear-gradient(180deg,#fdfdfd 0%,var(--dk-sand) 100%);color:var(--dk-slate)}
.dk-post__hero h1{color:var(--dk-slate)}
.dk-post__hero p,.dk-post__hero .dk-post__meta{color:var(--dk-on-dark-2)}
.dk-post__hero a{color:var(--dk-green)}
.dk-persona .dk-hero .dk-hero__photo-name,.dk-persona .dk-hero__photo-card h1,.dk-persona .dk-hero__photo-card h2{color:#f2f1e9}
/* videos: portada 16:9 completa, sin recortes, y reproductor dentro de la pagina */
.dk .dk-video img{height:auto;aspect-ratio:16/9;object-fit:cover}
.dk .dk-video--main img{aspect-ratio:16/9;object-position:50% 50%}
.dk-video__frame{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#000}
.dk-video--main .dk-video__play{top:50%;width:76px;height:76px;box-shadow:0 10px 30px rgba(1,111,41,.35)}
.dk-videos--lp .dk-video--main .dk-video__play{top:32%;width:44px;height:44px;box-shadow:none}
/* en la portada propia el centro tiene texto: el boton va abajo a la izquierda */
.dk-videos:not(.dk-videos--lp) .dk-video--main{container-type:inline-size}
.dk-videos:not(.dk-videos--lp) .dk-video--main .dk-video__play{transform:none;left:3.5cqw;top:calc(56.25cqw - 3.5cqw - 64px);width:64px;height:64px}
@media (max-width:600px){.dk-videos:not(.dk-videos--lp) .dk-video--main .dk-video__play{width:44px;height:44px;top:calc(56.25cqw - 3cqw - 44px)}}

/* ============================================================
   v1.0.6 SIN DESPLAZAMIENTO LATERAL EN MOVIL
   El banner de cookies (CookieYes) deja oculto un panel fijo de
   845px y en iOS eso ensancha la pagina. Se recorta en horizontal
   con clip (no rompe la cabecera fija, a diferencia de hidden) y
   se limita el panel al ancho de la pantalla.
   ============================================================ */
html,body{overflow-x:clip;max-width:100%}
@supports not (overflow:clip){ html{overflow-x:hidden} }
.cky-modal,.cky-preference-center,.cky-consent-container{max-width:calc(100vw - 24px) !important;box-sizing:border-box}
/* honeypot oculto sin coordenadas negativas */
.dk-form__hp{position:absolute !important;left:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:-1px;padding:0;border:0}
/* articulos: tablas con scroll propio y enlaces largos que parten linea */
.dk-article__body table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.dk-article__body a,.dk-article__body p,.dk-article__body li{overflow-wrap:anywhere}
.dk-article__body [style*="e68331" i]{color:#016f29 !important}
