/* DD Base global: fuentes locales, foco accesible, apariciones, marcador, movimiento reducido y compatibilidad con el tema. Va una sola vez por página (plantilla de cuerpo). */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:500 800;font-stretch:100%;font-display:swap;src:url('/wp-content/uploads/dd-fonts/bricolage-grotesque-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Geist';font-style:normal;font-weight:400 700;font-display:swap;src:url('/wp-content/uploads/dd-fonts/geist-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
html{scroll-behavior:smooth}
.dd-page{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
/* Especificidad cero: nunca pisa las medidas de imágenes definidas por los componentes */
.dd-page :where(img){max-width:100%}
/* Aparición al hacer scroll: solo se oculta si el script está activo */
.dd-js .dd-rv{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:calc(var(--i,0)*90ms)}
.dd-js .dd-rv.dd-in{opacity:1;transform:none}
/* Marcador dorado */
.dd-mark{position:relative;white-space:nowrap;z-index:0}
.dd-mark:before{content:"";position:absolute;left:-.08em;right:-.08em;bottom:.08em;height:.38em;background:var(--dd-accent);z-index:-1;border-radius:3px;transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1) .5s}
.dd-mark.dd-on:before,.dd-in .dd-mark:before{transform:scaleX(1)}
.dd-sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;padding:0;margin:-1px}

/* === Foco visible solo con teclado (gana al reset del tema) === */
:is(.dd-page,.ddh,.ddf) :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--dd-teal-text);outline-offset:3px;box-shadow:none}
:is(.dd-on-blue,.ddf,.ddh--transparente:not(.is-stuck)) :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline-color:var(--dd-teal-on-dark)}

/* === Compatibilidad con el kit de Elementor: fuerza Poppins en h2, h3 y enlaces (.elementor-kit-XXXX h2). Se devuelve la tipografía DD. === */
body :is(.dd-page,.ddh,.ddf) :is(h1,h2,h3,h4,h5,h6){font-family:var(--dd-font-display)}
body :is(.dd-page,.ddh,.ddf) a{font-family:inherit}
body .ddf .ddf-grid h3{font-family:var(--dd-font-text)}

/* === Compatibilidad con Hello Elementor: el reset del tema pinta los botones de #c36 y cambia campos. Se neutraliza solo dentro de los componentes DD. === */
.ddh .ddh-burger,.ddh .ddh-burger:hover,.ddh .ddh-burger:focus{background:transparent;border:0;border-radius:var(--dd-radius-md);padding:0;color:inherit}
.ddmet .ddmet-tab{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;text-align:left;white-space:normal;padding:18px 20px;border-radius:var(--dd-radius-sm);background:var(--dd-card);border:1.5px solid var(--dd-border);font:600 17px/1.3 var(--dd-font-text);color:var(--dd-ink)}
.ddmet .ddmet-tab:hover,.ddmet .ddmet-tab:focus{background:var(--dd-card);color:var(--dd-ink);border-color:var(--dd-ink)}
.ddmet .ddmet-tab[aria-selected="true"],.ddmet .ddmet-tab[aria-selected="true"]:hover,.ddmet .ddmet-tab[aria-selected="true"]:focus{background:var(--dd-ink);border-color:var(--dd-ink);color:#fff}
.ddtes .ddtes-ctrl button{padding:0;border-radius:12px;border:1.5px solid var(--dd-border);background:transparent;color:var(--dd-ink)}
.ddtes .ddtes-ctrl button:hover{background:var(--dd-ink);border-color:var(--dd-ink);color:#fff}
.ddtes .ddtes-ctrl button:focus:not(:hover){background:transparent;color:var(--dd-ink)}
.ddtes .ddtes-person{padding:16px 18px;border-radius:14px;border:1.5px solid var(--dd-border);background:transparent;color:inherit;font-size:14px;font-weight:400;line-height:1.4;text-align:left;white-space:normal}
.ddtes .ddtes-person:hover,.ddtes .ddtes-person:focus{background:transparent;color:inherit;border-color:#9FB6C3}
.ddtes .ddtes-person[aria-selected="true"],.ddtes .ddtes-person[aria-selected="true"]:hover,.ddtes .ddtes-person[aria-selected="true"]:focus{background:var(--dd-card);border-color:var(--dd-ink)}
.ddcta .ddcta-form button,.ddf .ddf-form button{padding:0 26px;border-radius:var(--dd-radius-md);border:1.5px solid transparent;font-size:16px;font-weight:600;line-height:1}
.ddcta .ddcta-form button,.ddcta .ddcta-form button:focus{background:var(--dd-accent);color:var(--dd-on-accent)}
.ddcta .ddcta-form button:hover{background:var(--dd-accent-hover);color:var(--dd-on-accent)}
.ddf .ddf-form button,.ddf .ddf-form button:focus{background:var(--dd-card);color:var(--dd-primary-deep)}
.ddf .ddf-form button:hover{background:var(--dd-tint);color:var(--dd-primary-deep)}
.ddf .ddf-top,.ddf .ddf-top:focus{padding:8px 12px;border:0;border-radius:10px;background:transparent;color:#E6EEF2;font-size:14px;font-weight:600}
.ddf .ddf-top:hover{background:rgba(255,255,255,.08);color:#E6EEF2}
.ddcta .ddcta-form input,.ddcta .ddcta-form select{border:1.5px solid var(--dd-border);border-radius:var(--dd-radius-sm);padding:0 14px;height:50px;font-size:16px;line-height:1.2;transition:border-color .18s,box-shadow .18s}
.ddcta .ddcta-form input:focus,.ddcta .ddcta-form select:focus{border-color:var(--dd-teal-text)}
.ddcta .ddcta-form [aria-invalid="true"]{border-color:#C2410C}
.ddf .ddf-form input{border:1.5px solid rgba(255,255,255,.22);border-radius:var(--dd-radius-md);padding:0 16px;height:54px;font-size:16px;line-height:1.2}
.ddf .ddf-form input:focus{border-color:var(--dd-teal-on-dark)}
.ddf .ddf-form input[aria-invalid="true"]{border-color:#FF9B85}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  .dd-page *,.dd-page *:before,.dd-page *:after{animation:none!important;transition:none!important}
  .dd-js .dd-rv{opacity:1!important;transform:none!important}
  .dd-mark:before{transform:scaleX(1)!important}
}