/* ================================================================
   DARZACK — capa de diseño (réplica de grupo-darzack.com)
   Se carga desde el CSS personalizado del Kit de Elementor.
   Traducción directa de las clases Tailwind del proyecto Astro.
   ================================================================ */
:root{
  --dz-blue:#002855; --dz-blue-dark:#00152F;
  --dz-green:#82D093; --dz-green-light:#EBF7EE;
  --dz-gray:#888B8D;
  --dz-ink:#0F172A; --dz-ink-muted:#4A5568; --dz-ink-soft:#6B7280;
  --dz-surface:#F4F6F8; --dz-surface-muted:#F4F4F6; --dz-border:#E5E7EB;
}
html{scroll-behavior:smooth}
body{font-family:"Inter",system-ui,sans-serif;color:var(--dz-ink);background:#fff;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-family:"Montserrat",system-ui,sans-serif;color:var(--dz-ink);letter-spacing:-.01em;margin:0}
p{margin:0}

/* ---------- Sección genérica: max-w-7xl + py-16 lg:py-24 ---------- */
.dz-sec{padding:64px 24px}
@media(min-width:1024px){.dz-sec{padding:96px 32px}}
.dz-sec > .e-con-inner{max-width:1280px;margin-inline:auto;width:100%}
.dz-sec--white{background:#fff}
.dz-sec--surface{background:var(--dz-surface)}
.dz-sec--tight{padding-top:48px;padding-bottom:48px}
@media(min-width:1024px){.dz-sec--tight{padding-top:64px;padding-bottom:64px}}

/* ---------- Bloque de encabezado de sección ---------- */
.dz-head{max-width:768px}
.dz-head--center{margin-inline:auto;text-align:center}
.dz-head h2,.dz-h2{font-weight:700;font-size:30px;line-height:1.15;letter-spacing:-.025em;margin-bottom:16px}
@media(min-width:640px){.dz-head h2,.dz-h2{font-size:36px}}
@media(min-width:1024px){.dz-head h2,.dz-h2{font-size:44px}}
.dz-lead,.dz-head p{font-size:18px;line-height:1.625;color:var(--dz-ink-muted)}
.dz-eyebrow{font-size:14px;font-weight:600;color:var(--dz-blue);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.dz-rule{border-top:1px solid var(--dz-border);padding-top:40px}
.dz-rule--lg{padding-top:48px}
@media(min-width:1024px){.dz-rule--lg{padding-top:64px}}

/* ---------- Botones ---------- */
.dz-btn .elementor-button,a.dz-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;line-height:1;
  padding:16px 28px;border-radius:8px;transition:background-color .2s,color .2s;border:0}
.dz-btn--primary .elementor-button{background:var(--dz-blue);color:#fff}
.dz-btn--primary .elementor-button:hover{background:var(--dz-blue-dark);color:#fff}
.dz-btn--ghost .elementor-button{background:#fff;color:var(--dz-blue);border:1px solid var(--dz-border)}
.dz-btn--ghost .elementor-button:hover{background:var(--dz-surface-muted);color:var(--dz-blue)}
.dz-btn--green .elementor-button{background:var(--dz-green);color:var(--dz-blue);padding:16px 32px}
.dz-btn--green .elementor-button:hover{background:#fff;color:var(--dz-blue)}

/* ================= HERO ================= */
.dz-hero{background:var(--dz-surface);position:relative;overflow:hidden}
.dz-hero__col{gap:24px}
@media(min-width:1024px){.dz-hero__col{gap:28px}}
.dz-badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--dz-border);
  border-radius:9999px;padding:6px 16px;font-size:12px;font-weight:600;color:var(--dz-blue);
  text-transform:uppercase;letter-spacing:.05em;width:fit-content}
.dz-badge::before{content:"";width:8px;height:8px;border-radius:9999px;background:var(--dz-green)}
.dz-hero h1,.dz-h1{font-weight:800;font-size:36px;line-height:1.05;letter-spacing:-.025em}
@media(min-width:640px){.dz-hero h1,.dz-h1{font-size:48px}}
@media(min-width:1024px){.dz-hero h1,.dz-h1{font-size:60px}}
.dz-hero h1 em,.dz-h1 em{font-style:normal;color:var(--dz-blue)}
.dz-hero__lead{font-size:18px;line-height:1.625;color:var(--dz-ink-muted);max-width:576px}
.dz-hero__btns{gap:12px;padding-top:8px}
.dz-trust{display:flex;align-items:center;gap:24px;padding-top:16px;font-size:14px;color:var(--dz-ink-soft)}
.dz-trust .elementor-icon-list-item{margin:0}
.dz-trust .elementor-icon-list-icon svg{width:18px;height:18px;fill:none;stroke:var(--dz-green);stroke-width:2.5}
.dz-hero__media{position:relative}
.dz-hero__img img{aspect-ratio:4/5;width:100%;height:100%;object-fit:cover;border-radius:16px;
  box-shadow:0 25px 50px -12px rgba(0,40,85,.2)}
.dz-hero__card{position:absolute;bottom:-24px;left:-24px;background:#fff;border-radius:12px;
  box-shadow:0 20px 25px -5px rgba(0,0,0,.1);padding:16px;display:none;align-items:center;gap:12px;max-width:240px;z-index:2}
@media(min-width:1024px){.dz-hero__card{display:flex}}
.dz-hero__card .dz-icon{width:48px;height:48px;border-radius:8px;background:var(--dz-green-light);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dz-hero__card .dz-icon svg{width:24px;height:24px;stroke:var(--dz-blue);fill:none;stroke-width:2}
.dz-hero__card b{font-family:"Montserrat",sans-serif;font-weight:700;font-size:14px;color:var(--dz-ink);display:block}
.dz-hero__card span{font-size:12px;color:var(--dz-ink-soft)}

/* ================= STATS ================= */
.dz-stat__value{font-family:"Montserrat",sans-serif;font-weight:700;font-size:36px;line-height:1;color:var(--dz-blue)}
@media(min-width:1024px){.dz-stat__value{font-size:48px}}
.dz-stat__label{font-family:"Montserrat",sans-serif;font-weight:700;font-size:16px;color:var(--dz-ink);margin-top:8px}
.dz-stat__desc{font-size:14px;line-height:1.625;color:var(--dz-ink-soft);margin-top:8px}

/* ================= LOGOS ================= */
.dz-logos{background:#fff;border-top:1px solid var(--dz-border);border-bottom:1px solid var(--dz-border)}
.dz-logos h2{font-weight:700;font-size:24px;line-height:1.25}
@media(min-width:1024px){.dz-logos h2{font-size:28px}}
.dz-logo img{max-height:48px;width:auto;opacity:.7;filter:grayscale(1);transition:opacity .3s,filter .3s}
.dz-logo img:hover{opacity:1;filter:grayscale(0)}

/* ================= SERVICIOS (tarjetas enlazadas) ================= */
.dz-cardserv{border-radius:16px;overflow:hidden;background:var(--dz-surface);
  transition:background-color .3s,box-shadow .3s,transform .3s}
.dz-cardserv:hover{background:var(--dz-surface-muted);box-shadow:0 20px 25px -5px rgba(0,0,0,.1);transform:translateY(-4px)}
.dz-cardserv__img img{aspect-ratio:4/3;width:100%;object-fit:cover;transition:transform .5s}
.dz-cardserv:hover .dz-cardserv__img img{transform:scale(1.05)}
.dz-cardserv__body{padding:24px}
@media(min-width:1024px){.dz-cardserv__body{padding:28px}}
.dz-cardserv h3{font-weight:700;font-size:20px;line-height:1.375;margin-bottom:12px}
.dz-cardserv p{font-size:15px;line-height:1.625;color:var(--dz-ink-soft)}

/* ================= RAZONES ================= */
.dz-razon__icon{width:48px;height:48px;border-radius:12px;background:var(--dz-surface-muted);
  display:flex;align-items:center;justify-content:center;color:var(--dz-ink-soft);margin-bottom:16px}
.dz-razon__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}
.dz-razon h3{font-weight:700;font-size:20px;line-height:1.375;margin-bottom:16px}
.dz-razon p{font-size:15px;line-height:1.625;color:var(--dz-ink-soft)}

/* ================= PROCESO (fondo azul) ================= */
.dz-proceso{position:relative;background:var(--dz-blue);overflow:hidden}
.dz-proceso::before{content:"";position:absolute;inset:0;opacity:.3;pointer-events:none;
  background:radial-gradient(circle at 20% 50%,var(--dz-green) 0%,transparent 50%),
             radial-gradient(circle at 80% 30%,#1e4a8c 0%,transparent 50%)}
.dz-proceso > .e-con-inner{position:relative;z-index:1}
.dz-proceso h2{color:#fff}
.dz-proceso .dz-lead{color:rgba(255,255,255,.75)}
.dz-paso{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);
  border-radius:16px;padding:28px;backdrop-filter:blur(4px)}
@media(min-width:1024px){.dz-paso{padding:32px}}
.dz-paso__num{font-family:"Montserrat",sans-serif;font-weight:800;font-size:60px;line-height:1;
  color:var(--dz-green);margin-bottom:24px}
.dz-paso h3{font-weight:700;font-size:20px;color:#fff;margin-bottom:12px}
.dz-paso p{font-size:15px;line-height:1.625;color:rgba(255,255,255,.75)}

/* ================= TESTIMONIOS ================= */
.dz-testi{background:#fff;border:1px solid var(--dz-border);border-radius:16px;padding:28px;
  display:flex;flex-direction:column;gap:20px;height:100%}
@media(min-width:1024px){.dz-testi{padding:32px}}
.dz-stars{display:flex;gap:4px}
.dz-stars svg{width:18px;height:18px;fill:#F59E0B}
.dz-testi__text{font-size:15px;line-height:1.625;color:var(--dz-ink-muted);flex:1}
.dz-testi__foot{padding-top:16px;border-top:1px solid var(--dz-border)}
.dz-testi__foot b{font-family:"Montserrat",sans-serif;font-weight:700;font-size:14px;color:var(--dz-ink);display:block}
.dz-testi__foot span{font-size:12px;color:var(--dz-ink-soft)}

/* ================= FAQ (acordeón Elementor con look <details>) ================= */
.dz-faq .e-n-accordion-item,.dz-faq .elementor-accordion-item{background:var(--dz-surface);border:0;
  border-radius:12px;margin-bottom:12px;overflow:hidden;transition:background-color .2s}
.dz-faq .e-n-accordion-item:hover,.dz-faq .elementor-accordion-item:hover{background:var(--dz-surface-muted)}
.dz-faq summary,.dz-faq .elementor-tab-title{cursor:pointer;padding:20px;border:0;background:transparent;
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;line-height:1.375;color:var(--dz-ink);
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;list-style:none}
@media(min-width:1024px){.dz-faq summary,.dz-faq .elementor-tab-title{padding:24px;font-size:17px}}
.dz-faq summary::-webkit-details-marker{display:none}
.dz-faq .e-n-accordion-item-title-icon,.dz-faq .elementor-accordion-icon{flex-shrink:0;width:28px;height:28px;
  border-radius:9999px;background:#fff;border:1px solid var(--dz-border);color:var(--dz-blue);
  display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}
.dz-faq details[open] .e-n-accordion-item-title-icon,
.dz-faq .elementor-active .elementor-accordion-icon{background:var(--dz-blue);color:#fff}
.dz-faq .e-con-inner p,.dz-faq .elementor-tab-content{padding:0 20px 20px;font-size:15px;line-height:1.625;
  color:var(--dz-ink-soft);border:0}
@media(min-width:1024px){.dz-faq .e-con-inner p,.dz-faq .elementor-tab-content{padding:0 24px 24px}}

/* ================= OTROS SERVICIOS ================= */
.dz-otro{background:#fff;border:1px solid var(--dz-border);border-radius:16px;overflow:hidden;
  display:flex;flex-direction:column;height:100%;transition:box-shadow .3s}
.dz-otro:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,.1)}
.dz-otro__img img{aspect-ratio:16/9;width:100%;object-fit:cover;transition:transform .5s}
.dz-otro__img:hover img{transform:scale(1.05)}
.dz-otro__body{padding:28px;display:flex;flex-direction:column;flex:1}
@media(min-width:1024px){.dz-otro__body{padding:32px}}
.dz-otro h3{font-weight:700;font-size:24px;line-height:1.25;margin-bottom:12px}
.dz-otro h3 a{color:var(--dz-ink);transition:color .2s}
.dz-otro h3 a:hover{color:var(--dz-blue)}
.dz-otro__desc{font-size:15px;line-height:1.625;color:var(--dz-ink-muted);margin-bottom:20px}
.dz-otro__subs{border-top:1px solid var(--dz-border);padding-top:20px;margin-bottom:20px}
.dz-otro__subs .dz-subtitle{font-size:12px;font-weight:600;color:var(--dz-ink-soft);
  text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}
.dz-otro__subs .elementor-icon-list-item{margin-bottom:6px}
.dz-otro__subs .elementor-icon-list-text{font-size:14px;color:var(--dz-ink-muted)}
.dz-otro__subs .elementor-icon-list-item:hover .elementor-icon-list-text{color:var(--dz-blue);text-decoration:underline}
.dz-otro__subs svg{width:12px;height:12px;fill:none;stroke:var(--dz-green);stroke-width:3}
.dz-otro__link{margin-top:auto;display:inline-flex;align-items:center;gap:8px;color:var(--dz-blue);
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px}
.dz-otro__link:hover{gap:12px}

/* ================= CTA FINAL + FORMULARIO ================= */
.dz-cta{position:relative;background:var(--dz-blue);overflow:hidden}
.dz-cta::before{content:"";position:absolute;inset:0;opacity:.4;pointer-events:none;
  background:radial-gradient(circle at 70% 50%,var(--dz-green) 0%,transparent 60%)}
.dz-cta > .e-con-inner{position:relative;z-index:1}
.dz-cta h2{color:#fff;font-weight:700;font-size:30px;line-height:1.1;letter-spacing:-.025em}
@media(min-width:640px){.dz-cta h2{font-size:36px}}
@media(min-width:1024px){.dz-cta h2{font-size:48px}}
.dz-cta__lead{font-size:18px;line-height:1.625;color:rgba(255,255,255,.8);max-width:576px}
.dz-cta__bullets .elementor-icon-list-item{margin-bottom:12px;color:rgba(255,255,255,.85);font-size:16px}
.dz-cta__bullets svg{width:20px;height:20px;fill:none;stroke:var(--dz-green);stroke-width:2.5}
.dz-form{background:#fff;border-radius:16px;padding:28px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}
@media(min-width:1024px){.dz-form{padding:32px}}
.dz-form .elementor-field-label{font-size:14px;font-weight:500;color:var(--dz-ink);margin-bottom:6px}
.dz-form .elementor-field-textual{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--dz-border);
  font-size:16px;color:var(--dz-ink);background:#fff;transition:border-color .2s,box-shadow .2s}
.dz-form .elementor-field-textual:focus{border-color:var(--dz-blue);box-shadow:0 0 0 2px rgba(0,40,85,.1);outline:0}
.dz-form textarea.elementor-field-textual{resize:none}
.dz-form .elementor-field-type-acceptance .elementor-field-option{font-size:12px;line-height:1.375;color:var(--dz-ink-soft)}
.dz-form .elementor-field-type-acceptance a{color:var(--dz-blue);text-decoration:underline}
.dz-form .elementor-button[type=submit]{width:100%;background:var(--dz-blue);color:#fff;border-radius:8px;
  padding:16px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;justify-content:center}
.dz-form .elementor-button[type=submit]:hover{background:var(--dz-blue-dark)}
.dz-form__note{font-size:12px;color:var(--dz-ink-soft);text-align:center;margin-top:8px}

/* ================= CABECERA ================= */
.dz-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--dz-border)}
.dz-header > .e-con-inner{max-width:1280px;margin-inline:auto;height:144px;display:flex;
  align-items:center;justify-content:space-between;padding-inline:24px}
@media(min-width:768px){.dz-header > .e-con-inner{height:220px;padding-inline:32px}}
.dz-header__logo img{height:112px;width:auto}
@media(min-width:768px){.dz-header__logo img{height:200px}}
.dz-nav .elementor-item{font-family:"Inter",sans-serif;font-size:14px;font-weight:500;color:var(--dz-ink-muted);padding:8px 0}
.dz-nav .elementor-item:hover{color:var(--dz-blue)}

/* ================= PIE ================= */
.dz-footer{background:#0a0f1c;color:#fff}
.dz-footer > .e-con-inner{max-width:1280px;margin-inline:auto;padding:64px 24px}
@media(min-width:1024px){.dz-footer > .e-con-inner{padding:80px 32px}}
.dz-footer h4{font-family:"Montserrat",sans-serif;font-weight:700;font-size:14px;color:#fff;
  text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px}
.dz-footer__desc{font-size:14px;line-height:1.625;color:rgba(255,255,255,.6);max-width:384px}
.dz-footer__data{font-size:14px;color:rgba(255,255,255,.7);line-height:1.8}
.dz-footer__data a{color:rgba(255,255,255,.7)}
.dz-footer__data a:hover{color:#fff}
.dz-footer .elementor-icon-list-text{font-size:14px;color:rgba(255,255,255,.6)}
.dz-footer .elementor-icon-list-item:hover .elementor-icon-list-text{color:#fff}
.dz-footer__bar{border-top:1px solid rgba(255,255,255,.1);padding-top:32px;font-size:12px;color:rgba(255,255,255,.5)}
.dz-footer__bar a{color:rgba(255,255,255,.5)}
.dz-footer__bar a:hover{color:#fff}

/* ================= BOTÓN FLOTANTE DE LLAMADA ================= */
.dz-call{position:fixed;bottom:20px;right:20px;z-index:40;width:56px;height:56px;border-radius:9999px;
  background:var(--dz-blue);color:#fff;box-shadow:0 20px 25px -5px rgba(0,0,0,.2);
  display:flex;align-items:center;justify-content:center;transition:transform .2s}
.dz-call:active{transform:scale(.95)}
.dz-call svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;position:relative}
@media(min-width:640px){.dz-call{display:none}}

/* ================= REJILLAS (traducción de los grid de Tailwind) ================= */
.dz-grid-hero{display:grid;grid-template-columns:1fr;gap:48px;align-items:center}
@media(min-width:1024px){.dz-grid-hero{grid-template-columns:1fr 1fr;gap:64px}}
.dz-grid2{display:grid;grid-template-columns:1fr;column-gap:48px;row-gap:12px}
@media(min-width:768px){.dz-grid2{grid-template-columns:1fr 1fr}}
.dz-grid3{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:768px){.dz-grid3{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.dz-grid3{gap:32px}}
.dz-grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
@media(min-width:1024px){.dz-grid4{grid-template-columns:repeat(4,1fr);gap:40px}}
.dz-grid-razones{display:grid;grid-template-columns:1fr;column-gap:40px;row-gap:48px}
@media(min-width:768px){.dz-grid-razones{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.dz-grid-razones{grid-template-columns:repeat(3,1fr);row-gap:56px}}
.dz-grid-logos{display:grid;grid-template-columns:1fr;gap:40px;align-items:center}
@media(min-width:1024px){.dz-grid-logos{grid-template-columns:1fr 2fr;gap:64px}}
.dz-logos__row{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:center}
@media(min-width:640px){.dz-logos__row{grid-template-columns:repeat(5,1fr)}}
@media(min-width:1024px){.dz-logos__row{gap:32px}}
.dz-row{display:flex;flex-direction:column;gap:12px}
@media(min-width:640px){.dz-row{flex-direction:row}}
.dz-center{text-align:center;margin-top:48px;display:flex;justify-content:center}

/* Iconos Font Awesome de las listas: son rellenos, no de trazo */
.dz-trust .elementor-icon-list-icon svg,
.dz-cta__bullets .elementor-icon-list-icon svg,
.dz-otro__subs .elementor-icon-list-icon svg{stroke:none}
.dz-trust .elementor-icon-list-icon svg{fill:var(--dz-green);width:18px;height:18px}
.dz-cta__bullets .elementor-icon-list-icon svg{fill:var(--dz-green);width:20px;height:20px}
.dz-otro__subs .elementor-icon-list-icon svg{fill:var(--dz-green);width:12px;height:12px}
.dz-trust ul{display:flex;gap:24px;flex-wrap:wrap}
.dz-trust .elementor-icon-list-text{font-size:14px;color:var(--dz-ink-soft);padding-inline-start:8px}
.dz-cta__bullets .elementor-icon-list-text{padding-inline-start:12px}

/* Flechas de las tarjetas (equivalen a los SVG inline del original) */
.dz-cardserv h3{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.dz-cardserv h3::after{content:"";width:22px;height:22px;flex-shrink:0;margin-top:4px;transition:transform .2s;
  background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23002855" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/></svg>') no-repeat center/contain}
.dz-cardserv:hover h3::after{transform:translate(4px,-4px)}
.dz-otro__link a::after{content:"";display:inline-block;width:16px;height:16px;margin-left:8px;vertical-align:-2px;
  background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23002855" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></svg>') no-repeat center/contain}
.dz-otro__link a{color:var(--dz-blue);font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px}
.dz-btn .elementor-button-icon svg{width:18px;height:18px;fill:currentColor}

/* El widget HTML no debe añadir márgenes propios */
.dz-plain .elementor-widget-container{margin:0}

/* ================= FAQ con <details> (idéntico al original) ================= */
.dz-faq__col{display:flex;flex-direction:column;gap:12px}
.dz-faq__item{background:var(--dz-surface);border-radius:12px;overflow:hidden;transition:background-color .2s}
.dz-faq__item:hover{background:var(--dz-surface-muted)}
.dz-faq__item > summary{cursor:pointer;list-style:none;display:flex;align-items:flex-start;justify-content:space-between;
  gap:16px;padding:20px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;line-height:1.375;color:var(--dz-ink)}
@media(min-width:1024px){.dz-faq__item > summary{padding:24px;font-size:17px}}
.dz-faq__item > summary::-webkit-details-marker{display:none}
.dz-faq__plus{flex-shrink:0;width:28px;height:28px;border-radius:9999px;background:#fff;border:1px solid var(--dz-border);
  color:var(--dz-blue);position:relative;transition:background-color .2s,color .2s,transform .2s}
.dz-faq__plus::before,.dz-faq__plus::after{content:"";position:absolute;background:currentColor;border-radius:2px}
.dz-faq__plus::before{width:3px;height:14px;left:calc(50% - 1.5px);top:calc(50% - 7px)}
.dz-faq__plus::after{height:3px;width:14px;top:calc(50% - 1.5px);left:calc(50% - 7px)}
.dz-faq__item[open] .dz-faq__plus{background:var(--dz-blue);color:#fff;transform:rotate(45deg)}
.dz-faq__answer{padding:0 20px 20px;margin-top:-4px;font-size:15px;line-height:1.625;color:var(--dz-ink-soft)}
@media(min-width:1024px){.dz-faq__answer{padding:0 24px 24px}}

/* ================= FORMULARIO (markup propio, idéntico al de Astro) ================= */
.dz-form__inner{display:flex;flex-direction:column;gap:16px}
.dz-field label{display:block;font-size:14px;font-weight:500;color:var(--dz-ink);margin-bottom:6px}
.dz-field input,.dz-field select,.dz-field textarea{width:100%;padding:12px 16px;border-radius:8px;
  border:1px solid var(--dz-border);font-family:"Inter",sans-serif;font-size:16px;color:var(--dz-ink);
  background:#fff;transition:border-color .2s,box-shadow .2s}
.dz-field input:focus,.dz-field select:focus,.dz-field textarea:focus{border-color:var(--dz-blue);
  box-shadow:0 0 0 2px rgba(0,40,85,.1);outline:0}
.dz-field textarea{resize:none}
.dz-field-row{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.dz-field-row{grid-template-columns:1fr 1fr}}
.dz-accept{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.375;color:var(--dz-ink-soft)}
.dz-accept input{margin-top:2px;accent-color:var(--dz-blue)}
.dz-accept a{color:var(--dz-blue);text-decoration:underline}
.dz-submit{width:100%;background:var(--dz-blue);color:#fff;border:0;border-radius:8px;padding:16px;
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:16px;cursor:pointer;transition:background-color .2s}
.dz-submit:hover{background:var(--dz-blue-dark)}
.dz-form__note{font-size:12px;color:var(--dz-ink-soft);text-align:center}

/* ================= CABECERA / PIE: piezas que faltaban ================= */
.dz-btn--sm .elementor-button{padding:10px 20px;font-size:14px}
.dz-header__logo{flex-shrink:0}
.dz-header__actions{display:flex;align-items:center;gap:12px}
.dz-nav .elementor-nav-menu--main .elementor-item{font-family:"Inter",sans-serif;font-size:14px;
  font-weight:500;color:var(--dz-ink-muted);padding:8px 0}
.dz-nav .elementor-nav-menu--main .elementor-item:hover{color:var(--dz-blue)}
.dz-nav .elementor-nav-menu--main > li{margin-inline:16px}
.dz-nav .elementor-nav-menu--dropdown{background:#fff;border-radius:16px;border:1px solid var(--dz-border);
  box-shadow:0 25px 50px -12px rgba(0,0,0,.25);overflow:hidden;padding:8px 0;min-width:260px}
.dz-nav .elementor-nav-menu--dropdown a{padding:12px 20px;font-size:14px;font-weight:500;color:var(--dz-ink)}
.dz-nav .elementor-nav-menu--dropdown a:hover{background:var(--dz-surface);color:var(--dz-blue)}
@media(max-width:1024px){.dz-header > .e-con-inner{height:144px}.dz-header__logo img{height:112px}}

.dz-footer__grid{display:grid;grid-template-columns:1fr;gap:40px;margin-bottom:48px}
@media(min-width:1024px){.dz-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1fr;gap:48px}}
.dz-footer__brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.dz-footer__brand img{height:40px;width:auto}
.dz-footer__brand span{font-family:"Montserrat",sans-serif;font-weight:700;font-size:16px;color:#fff}
.dz-footer__data{margin-top:16px}
.dz-footer__bar{display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:space-between}
@media(min-width:640px){.dz-footer__bar{flex-direction:row}}
.dz-footer__bar nav{display:flex;gap:24px}
.dz-footer__bar button{background:none;border:0;color:rgba(255,255,255,.5);font-size:12px;cursor:pointer;padding:0}
.dz-footer__bar button:hover{color:#fff}
.dz-footer .elementor-icon-list-items{display:flex;flex-direction:column;gap:10px}
.dz-footer .elementor-icon-list-icon{display:none}
.dz-footer .elementor-icon-list-text{padding-inline-start:0!important}

/* ================= Espaciado entre bloques (equivale a mb-10 / mb-12 de Tailwind) ================= */
.dz-head{margin-bottom:40px}
.dz-head--center{margin-bottom:48px}
.dz-head--lg{margin-bottom:48px}
.dz-proceso .dz-head--center{margin-bottom:48px}
@media(min-width:1024px){.dz-proceso .dz-head--center{margin-bottom:64px}}
.dz-stat{gap:8px}
.dz-razon{gap:0}
.dz-testi{gap:20px}
.dz-hero__col{gap:24px}
@media(min-width:1024px){.dz-hero__col{gap:28px}}

/* ================= Ancho útil exacto =================
   El original es max-w-7xl (1280) CON px-6/px-8 por dentro → 1232 / 1216 de contenido.
   Aquí el relleno va en el contenedor exterior, así que el interior se limita al ancho real. */
.dz-sec > .e-con-inner{max-width:1232px}
@media(min-width:1024px){.dz-sec > .e-con-inner{max-width:1216px}}
/* El relleno del pie va fuera: Elementor pone a 0 el del contenedor interior */
.dz-footer{padding:64px 24px}
@media(min-width:1024px){.dz-footer{padding:80px 32px}}
.dz-footer > .e-con-inner{max-width:1216px;margin-inline:auto;padding:0}
.dz-header{padding-inline:24px}
@media(min-width:768px){.dz-header{padding-inline:32px}}
.dz-header > .e-con-inner{max-width:1216px;padding:0}

/* Los contenedores de Elementor son columna por defecto: la cabecera va en fila */
.dz-header > .e-con-inner{flex-direction:row;flex-wrap:nowrap}
.dz-header__logo{width:auto;flex:0 0 auto}
.dz-header__actions{width:auto;flex:0 0 auto}
.dz-nav{width:auto;flex:1 1 auto;display:flex;justify-content:center}
.dz-form__note{margin-top:8px}

/* ================= Ajuste fino contra los defaults de Elementor =================
   Elementor anula el margen inferior de los widgets con `.elementor-widget:not(:last-child)`,
   que gana en especificidad. Estas reglas usan dos clases para recuperarlo. */
.dz-paso .dz-paso__num{margin-bottom:24px}
.dz-otro .dz-otro__desc{margin-bottom:20px}
.dz-paso h3{line-height:1.4}
.dz-otro__link{margin-top:auto}

/* Formulario: métricas exactas del original (label 20px, input 50px) */
.dz-form .elementor-field-group{margin-bottom:16px;padding:0}
.dz-form .elementor-form-fields-wrapper{margin:0;display:flex;flex-wrap:wrap;gap:0 16px}
.dz-form .elementor-field-group > .elementor-field-label{line-height:20px;margin-bottom:6px}
.dz-form .elementor-field-group .elementor-field-textual{line-height:24px;padding:12px 16px;height:auto}
.dz-form .elementor-field-group textarea.elementor-field-textual{min-height:98px}
.dz-form .elementor-field-type-acceptance{margin-bottom:16px}
.dz-form .elementor-field-type-submit{margin-bottom:0}

/* Menú: centrado entre logo y botón, con la separación del original (gap-8 = 32px) */
.dz-nav{flex:1 1 auto}
.dz-nav .elementor-widget-container{width:100%}
.dz-nav .elementor-nav-menu--main > ul.elementor-nav-menu{display:flex;justify-content:center;
  align-items:center;gap:32px;margin:0;padding:0}
.dz-nav .elementor-nav-menu--main > ul.elementor-nav-menu > li{margin:0}
.dz-nav .elementor-nav-menu--main > ul.elementor-nav-menu > li > a.elementor-item{padding:8px 0}
.dz-nav .elementor-nav-menu--dropdown li a{padding:12px 20px}

/* ================= Márgenes de widget: hay que ganar al CSS del kit =================
   El kit genera `.elementor-widget:not(:last-child){margin-block-end:0}` y se carga
   después de esta hoja, así que estas reglas necesitan tres clases para imponerse. */
.dz-proceso .dz-paso .dz-paso__num{margin-bottom:24px}
.dz-otro .dz-otro__body .dz-otro__desc{margin-bottom:20px}
.dz-logos .dz-grid-logos .dz-eyebrow{margin-bottom:8px}
.dz-otros .dz-head .dz-eyebrow,.dz-sec--surface .dz-head .dz-eyebrow{margin-bottom:12px}
/* Botón: el original es text-base con interlineado normal → 56px de alto */
.dz-btn .elementor-button{line-height:24px}

/* Columna de texto del CTA: space-y-6 del original */
.dz-cta__col{gap:24px}
/* Los campos en dos columnas: el gap del contenedor obliga a recalcular el ancho */
.dz-form .elementor-field-group.elementor-col-50{width:calc(50% - 8px)}
.dz-form .elementor-field-group.elementor-col-100{width:100%}
.dz-form .elementor-field-group.elementor-field-type-submit{width:100%}
/* El <nav> es hijo directo del widget, no va dentro de .elementor-widget-container */
.dz-nav .elementor-nav-menu--main{width:100%}
.dz-nav ul.elementor-nav-menu{width:100%}

/* ================= ICONOS =================
   wp_kses elimina los <svg> en línea de los widgets HTML, y la regla de lazy-load de
   Elementor anula con !important los background-image de los contenedores bajo el
   pliegue. Por eso los iconos van como <img> a ficheros de ./icons/. */
.dz-razon__icon img{width:22px;height:22px;display:block}
.dz-hero__card .dz-icon img{width:24px;height:24px;display:block}
.dz-call img{width:24px;height:24px;display:block;position:relative}
.dz-stars{display:flex;gap:4px}
.dz-stars img{width:18px;height:18px;display:block}

/* Sección proceso (fondo azul): el párrafo necesita regla directa, porque
   `.dz-head p` apunta al <p> y gana a la herencia del contenedor. */
.dz-proceso .dz-head p,.dz-proceso .dz-lead p,.dz-proceso .dz-lead{color:rgba(255,255,255,.75)}

/* ================================================================
   PÁGINAS INTERIORES
   ================================================================ */

/* ---- PageHero: pt-10 lg:pt-14 / pb-16 lg:pb-24, h1 hasta 56px ---- */
.dz-pagehero{background:var(--dz-surface);padding:40px 24px 64px}
@media(min-width:1024px){.dz-pagehero{padding:56px 32px 96px}}
.dz-pagehero h1{font-weight:800;font-size:36px;line-height:1.05;letter-spacing:-.025em}
@media(min-width:640px){.dz-pagehero h1{font-size:48px}}
@media(min-width:1024px){.dz-pagehero h1{font-size:56px}}
.dz-crumbs{margin-bottom:24px;font-size:14px;color:var(--dz-ink-soft);display:flex;
  align-items:center;gap:8px;flex-wrap:wrap}
.dz-crumbs a{color:var(--dz-ink-soft)}
.dz-crumbs a:hover{color:var(--dz-blue)}
.dz-crumbs span{color:rgba(107,114,128,.5)}
.dz-crumbs .dz-crumb--actual{color:var(--dz-ink);font-weight:500}

/* ---- FeatureList ---- */
.dz-rule--48{padding-top:48px}
.dz-feats{column-gap:40px;row-gap:40px}
.dz-feat{gap:12px}
.dz-feat__icon{width:32px;height:32px;border-radius:8px;background:var(--dz-green-light);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dz-feat__icon img{width:16px;height:16px;display:block}
.dz-feat h3{font-weight:700;font-size:18px;line-height:1.4}
.dz-feat .dz-feat__desc{font-size:15px;line-height:1.625;color:var(--dz-ink-soft);padding-left:44px}

/* ---- ServiciosHijos ---- */
.dz-hijos{display:grid;grid-template-columns:1fr;gap:20px}
@media(min-width:768px){.dz-hijos{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.dz-hijos{grid-template-columns:repeat(4,1fr)}}
.dz-hijo{background:#fff;border:1px solid var(--dz-border);border-radius:16px;padding:24px;
  transition:border-color .3s,box-shadow .3s,transform .3s}
.dz-hijo:hover{border-color:var(--dz-blue);box-shadow:0 10px 15px -3px rgba(0,0,0,.1);transform:translateY(-2px)}
.dz-hijo__icon{width:44px;height:44px;border-radius:12px;background:var(--dz-surface-muted);
  display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background-color .2s}
.dz-hijo__icon img{width:20px;height:20px;display:block}
.dz-hijo:hover .dz-hijo__icon{background:var(--dz-blue)}
.dz-hijo:hover .dz-hijo__icon img{filter:brightness(0) invert(1)}
.dz-hijo h3{font-weight:700;font-size:18px;line-height:1.375;margin-bottom:8px}
.dz-hijo p{font-size:14px;line-height:1.625;color:var(--dz-ink-soft)}

/* ---- Tablas comparativas ---- */
.dz-tabla__wrap{overflow-x:auto;border-radius:16px;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.05)}
.dz-tabla{width:100%;min-width:720px;text-align:left;border-collapse:collapse}
.dz-tabla thead tr{border-bottom:1px solid var(--dz-surface-muted)}
.dz-tabla th{font-family:"Montserrat",sans-serif;font-weight:700;font-size:14px;color:var(--dz-ink);padding:20px}
.dz-tabla tbody tr{border-bottom:1px solid var(--dz-surface-muted);vertical-align:top}
.dz-tabla tbody tr:last-child{border-bottom:0}
.dz-tabla td{padding:20px;font-size:15px;line-height:1.625;color:var(--dz-ink-soft)}
.dz-tabla td:first-child{font-family:"Montserrat",sans-serif;font-weight:600;color:var(--dz-ink)}
.dz-tabla__nota{font-size:14px;color:var(--dz-ink-soft);margin-top:16px}

/* ---- Rejilla de bloques h3 + p ---- */
.dz-bloques{column-gap:32px;row-gap:32px}
@media(min-width:1024px){.dz-bloques{column-gap:40px;row-gap:40px}}
.dz-bloque{gap:0}
.dz-bloque h3{font-weight:700;font-size:20px;line-height:1.4;margin-bottom:8px}
.dz-bloque p{font-size:15px;line-height:1.625;color:var(--dz-ink-soft)}

/* ---- Misión / visión a dos columnas ---- */
.dz-grid-duo{display:grid;grid-template-columns:1fr;gap:48px}
@media(min-width:1024px){.dz-grid-duo{grid-template-columns:1fr 1fr;gap:64px}}
.dz-duo__col .dz-duo__title{font-weight:700;font-size:24px;line-height:1.25;margin-bottom:20px}
@media(min-width:1024px){.dz-duo__col .dz-duo__title{font-size:30px}}
.dz-duo__text{color:var(--dz-ink-muted);line-height:1.625}

/* ---- Mapa ---- */
.dz-mapa{padding-top:64px;padding-bottom:64px}
@media(min-width:1024px){.dz-mapa{padding-top:80px;padding-bottom:80px}}
.dz-mapa__head{margin-bottom:40px}
.dz-mapa__head h2{font-weight:700;font-size:24px;line-height:1.25;margin-bottom:12px}
@media(min-width:1024px){.dz-mapa__head h2{font-size:30px}}
.dz-mapa__head p{color:var(--dz-ink-muted)}
.dz-mapa__frame{border-radius:16px;overflow:hidden;border:1px solid var(--dz-border);
  box-shadow:0 1px 2px rgba(0,0,0,.05)}
.dz-mapa__frame iframe{display:block;border:0;width:100%}

/* ---- Páginas legales ---- */
.dz-legal > .e-con-inner{max-width:896px}
.dz-legal .dz-legal__title{font-weight:800;font-size:30px;line-height:1.25;margin-bottom:32px}
@media(min-width:640px){.dz-legal .dz-legal__title{font-size:36px}}
@media(min-width:1024px){.dz-legal .dz-legal__title{font-size:48px}}
.dz-legal__body{color:var(--dz-ink-muted);font-size:18px;line-height:1.625}
.dz-legal__body > * + *{margin-top:20px}
.dz-legal__body h2{font-family:"Montserrat",sans-serif;font-weight:700;font-size:24px;
  color:var(--dz-ink);margin-top:40px;margin-bottom:12px}
.dz-legal__body h3{font-family:"Montserrat",sans-serif;font-weight:700;font-size:18px;
  color:var(--dz-ink);margin-top:24px;margin-bottom:8px}
.dz-legal__body a{color:var(--dz-blue);text-decoration:underline}
.dz-legal__body ul{list-style:disc;margin-left:24px}
.dz-legal__body ol{list-style:decimal;margin-left:24px}
.dz-legal__body li + li{margin-top:8px}

/* ---- Hero sin imagen (contacto) ---- */
.dz-pagehero--simple{padding-bottom:40px}
@media(min-width:1024px){.dz-pagehero--simple{padding-bottom:40px}}
.dz-hero__simple{max-width:768px;gap:24px}
.dz-pagehero--simple h1{font-size:36px}
@media(min-width:640px){.dz-pagehero--simple h1{font-size:48px}}
@media(min-width:1024px){.dz-pagehero--simple h1{font-size:60px}}

/* ---- Página de gracias ---- */
.dz-gracias > .e-con-inner{max-width:768px;text-align:center;align-items:center}
.dz-gracias{padding-top:96px;padding-bottom:96px}
@media(min-width:1024px){.dz-gracias{padding-top:128px;padding-bottom:128px}}
.dz-ok{width:64px;height:64px;border-radius:9999px;background:rgba(130,208,147,.15);
  display:flex;align-items:center;justify-content:center;margin:0 auto 24px}
.dz-ok img{width:32px;height:32px;display:block}
.dz-gracias h1{font-weight:800;font-size:30px;line-height:1.1;letter-spacing:-.025em;margin-bottom:20px}
@media(min-width:640px){.dz-gracias h1{font-size:36px}}
@media(min-width:1024px){.dz-gracias h1{font-size:48px}}
.dz-gracias .dz-hero__lead{margin-bottom:40px;max-width:none}
.dz-row--center{justify-content:center;align-items:center}

/* ---- Página de contacto: datos + formulario ---- */
.dz-contacto{align-items:start}
.dz-datos__col{gap:32px}
.dz-datos__col .dz-datos__title h2,.dz-datos__col .dz-datos__title{font-weight:700;font-size:24px;line-height:1.25}
.dz-datos{display:flex;flex-direction:column;gap:20px;margin-top:20px}
.dz-datos li{display:flex;align-items:flex-start;gap:16px}
.dz-dato__icon{width:44px;height:44px;border-radius:12px;background:var(--dz-surface);
  display:flex;align-items:center;justify-content:center;flex-shrink:0}
.dz-dato__icon img{width:20px;height:20px;display:block}
.dz-dato__label{font-size:12px;font-weight:600;color:var(--dz-ink-soft);text-transform:uppercase;
  letter-spacing:.05em;margin-bottom:4px}
.dz-datos a,.dz-datos span{display:block}
.dz-datos li > div > a:first-of-type{font-family:"Montserrat",sans-serif;font-weight:700;color:var(--dz-ink)}
.dz-datos li > div > a:first-of-type:hover{color:var(--dz-blue)}
.dz-datos li > div > a + a,.dz-datos li > div > span{font-size:14px;color:var(--dz-ink-muted)}
.dz-aside{background:var(--dz-surface);border-radius:16px;padding:24px}
.dz-aside h3{font-family:"Montserrat",sans-serif;font-weight:700;font-size:18px;color:var(--dz-ink);margin-bottom:8px}
.dz-aside p{font-size:15px;line-height:1.625;color:var(--dz-ink-muted);margin-bottom:16px}
.dz-aside__cta{display:inline-flex;align-items:center;gap:8px;background:var(--dz-blue);color:#fff;
  font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;padding:12px 20px;border-radius:8px}
.dz-aside__cta:hover{background:var(--dz-blue-dark);color:#fff}
.dz-form--claro{border:1px solid var(--dz-border);box-shadow:0 1px 2px rgba(0,0,0,.05)}

/* ---- Correcciones de especificidad (el CSS del kit se carga después) ---- */
.dz-legal .dz-legal__title h1,.dz-legal h1.elementor-heading-title{font-weight:800;font-size:30px;
  line-height:1.25;margin-bottom:32px}
@media(min-width:640px){.dz-legal .dz-legal__title h1,.dz-legal h1.elementor-heading-title{font-size:36px}}
@media(min-width:1024px){.dz-legal .dz-legal__title h1,.dz-legal h1.elementor-heading-title{font-size:48px}}
.dz-gracias .dz-hero__lead.elementor-widget{margin-bottom:40px}

/* Legales: el proyecto Astro no carga @tailwindcss/typography, así que `prose` no
   aplica nada: el texto hereda 16px/1.625 y el ancho útil es 896 - 64 = 832. */
.dz-legal > .e-con-inner{max-width:832px}
.dz-legal__body{font-size:16px;line-height:1.625}
.dz-legal__body h2{line-height:1.333}

/* Tabla dentro del texto legal (política de cookies) */
.dz-legal__body > div{overflow-x:auto;margin:24px 0}
.dz-legal__body table{width:100%;font-size:14px;border-collapse:collapse}
.dz-legal__body thead tr{border-bottom:2px solid var(--dz-border);text-align:left}
.dz-legal__body th{padding:8px 16px 8px 0;font-family:"Montserrat",sans-serif;font-weight:600;color:var(--dz-ink)}
.dz-legal__body tbody tr{border-bottom:1px solid var(--dz-border);vertical-align:top}
.dz-legal__body td{padding:8px 16px 8px 0}

/* WordPress/Hello pintan bordes verticales y filas alternas en las tablas: fuera */
.dz-tabla th,.dz-tabla td,.dz-legal__body th,.dz-legal__body td{border-left:0;border-right:0;border-top:0}
.dz-tabla tbody tr,.dz-legal__body tbody tr{background:transparent}
.dz-tabla tbody tr:nth-child(odd),.dz-tabla tbody tr:nth-child(even),
.dz-legal__body tbody tr:nth-child(odd),.dz-legal__body tbody tr:nth-child(even){background:transparent}
.dz-tabla thead th{border-bottom:0}
.dz-tabla__wrap .dz-tabla tbody tr,.dz-tabla__wrap .dz-tabla tbody td,
.dz-tabla__wrap .dz-tabla tbody tr:nth-child(2n),.dz-tabla__wrap .dz-tabla tbody tr:nth-child(2n+1){
  background-color:transparent}
/* El kit fija a{color:primario} con más peso: el CTA del aside necesita dos selectores */
.dz-aside a.dz-aside__cta{color:#fff}
.dz-aside a.dz-aside__cta:hover{color:#fff}

/* ---- Página 404 ---- */
.dz-404 > .e-con-inner{max-width:768px;text-align:center;align-items:center}
.dz-404{padding-top:80px;padding-bottom:80px;min-height:60vh;justify-content:center}
.dz-404 .dz-404__marca{font-family:"Montserrat",sans-serif;font-weight:800;font-size:120px;
  line-height:1;color:rgba(0,40,85,.15)}
@media(min-width:640px){.dz-404 .dz-404__marca{font-size:160px}}
.dz-404 h1{font-weight:800;font-size:30px;line-height:1.15;letter-spacing:-.025em;margin-top:-24px;margin-bottom:20px}
@media(min-width:640px){.dz-404 h1{font-size:36px}}
@media(min-width:1024px){.dz-404 h1{font-size:48px}}
.dz-404 .dz-404__lead{font-size:18px;line-height:1.625;color:var(--dz-ink-muted);max-width:576px;
  margin:0 auto 32px}
.dz-404 .dz-404__btns{margin-bottom:48px;justify-content:center}
.dz-404__mas{border-top:1px solid var(--dz-border);padding-top:40px;width:100%}
.dz-404 .dz-404__eyebrow{color:var(--dz-ink-soft);margin-bottom:16px}
.dz-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.dz-chips a{display:inline-flex;align-items:center;background:var(--dz-surface);color:var(--dz-ink);
  font-size:14px;padding:8px 16px;border-radius:9999px;transition:background-color .2s}
.dz-chips a:hover{background:var(--dz-surface-muted);color:var(--dz-blue)}

/* ================= BLOG (17/09/2026) ================= */
/* Cabecera de entrada */
.dz-post-hero{padding-bottom:48px}
@media(min-width:1024px){.dz-post-hero{padding-bottom:64px}}
.dz-post-head{max-width:860px;gap:20px}
.dz-post-hero h1{font-weight:800;font-size:32px;line-height:1.1;letter-spacing:-.025em}
@media(min-width:640px){.dz-post-hero h1{font-size:40px}}
@media(min-width:1024px){.dz-post-hero h1{font-size:48px}}
.dz-post-meta .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.dz-post-meta .elementor-icon-list-item{margin:0!important;padding:0!important;font-size:13px;color:var(--dz-ink-soft)}
.dz-post-meta .elementor-icon-list-item::after{display:none!important}
.dz-post-meta .elementor-post-info__terms-list a{display:inline-flex;background:#fff;border:1px solid var(--dz-border);
  border-radius:9999px;padding:4px 12px;font-size:12px;font-weight:600;color:var(--dz-blue);
  text-transform:uppercase;letter-spacing:.05em}
.dz-post-lead p,.dz-post-lead{font-size:18px;line-height:1.625;color:var(--dz-ink-muted);max-width:760px}

/* Cuerpo */
.dz-post-body{padding-top:0}
.dz-post-body > .e-con-inner{max-width:820px!important}
.dz-post-img img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;margin-top:-32px;
  box-shadow:0 25px 50px -12px rgba(0,40,85,.2)}
.dz-post-img{margin-bottom:48px}
.dz-prose{font-size:18px;line-height:1.75;color:var(--dz-ink)}
.dz-prose p{margin:0 0 1.25em}
.dz-prose h2{font-weight:700;font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:2em 0 .6em}
@media(min-width:1024px){.dz-prose h2{font-size:32px}}
.dz-prose h3{font-weight:700;font-size:21px;line-height:1.3;margin:1.6em 0 .5em}
.dz-prose ul,.dz-prose ol{margin:0 0 1.25em;padding-left:1.4em}
.dz-prose li{margin-bottom:.45em}
.dz-prose li::marker{color:var(--dz-blue);font-weight:700}
.dz-prose a{color:var(--dz-blue);text-decoration:underline;text-decoration-color:var(--dz-green);
  text-decoration-thickness:2px;text-underline-offset:3px}
.dz-prose a:hover{color:var(--dz-blue-dark);text-decoration-color:var(--dz-blue)}
.dz-prose strong{font-weight:600;color:var(--dz-ink)}
.dz-prose blockquote{margin:1.75em 0;padding:20px 24px;border-left:4px solid var(--dz-green);
  background:var(--dz-green-light);border-radius:0 12px 12px 0;color:var(--dz-ink);font-size:17px}
.dz-prose blockquote p:last-child{margin-bottom:0}
.dz-prose hr{border:0;border-top:1px solid var(--dz-border);margin:2.5em 0}
.dz-prose img{border-radius:12px;height:auto;margin:1em 0}
.dz-prose figure{margin:2em 0}
.dz-prose figcaption{font-size:14px;color:var(--dz-ink-soft);margin-top:8px}
.dz-prose table{width:100%;border-collapse:collapse;margin:1.75em 0;font-size:15px;line-height:1.5;
  display:block;overflow-x:auto;border:1px solid var(--dz-border);border-radius:12px}
.dz-prose thead th{background:var(--dz-blue);color:#fff;font-family:"Montserrat",sans-serif;font-weight:600;
  text-align:left;padding:12px 14px;white-space:nowrap}
.dz-prose td{padding:12px 14px;border-top:1px solid var(--dz-border);vertical-align:top}
.dz-prose tbody tr:nth-child(even){background:var(--dz-surface)}

/* Listado de entradas (widget Posts, skin cards) */
.dz-posts .elementor-posts-container{gap:24px}
.dz-posts .elementor-post__card{border-radius:16px!important;border:1px solid var(--dz-border)!important;
  box-shadow:none!important;background:#fff;transition:box-shadow .2s,transform .2s}
.dz-posts .elementor-post__card:hover{box-shadow:0 20px 25px -5px rgba(0,40,85,.12)!important;transform:translateY(-2px)}
.dz-posts .elementor-post__badge{background:var(--dz-green)!important;color:var(--dz-blue)!important;
  font-family:"Inter",sans-serif;font-weight:600;font-size:11px!important;text-transform:uppercase;
  letter-spacing:.05em;border-radius:9999px!important;padding:6px 12px!important}
.dz-posts .elementor-post__title,.dz-posts .elementor-post__title a{font-family:"Montserrat",sans-serif;
  font-weight:700;font-size:19px!important;line-height:1.3;color:var(--dz-ink)!important}
.dz-posts .elementor-post__excerpt p{font-size:15px;line-height:1.6;color:var(--dz-ink-muted)}
.dz-posts .elementor-post__read-more{font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px!important;
  color:var(--dz-blue)!important;text-transform:none!important}
.dz-posts .elementor-post__meta-data{font-size:13px!important;color:var(--dz-ink-soft)!important;border-color:var(--dz-border)!important}
.dz-post-more .dz-head{margin-bottom:40px}
