@font-face{font-family:'Blauer Nue';src:url('../fonts/BlauerNue-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Blauer Nue';src:url('../fonts/BlauerNue-Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Blauer Nue';src:url('../fonts/BlauerNue-SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Blauer Nue';src:url('../fonts/BlauerNue-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Blauer Nue';src:url('../fonts/BlauerNue-ExtraBold.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
:root{--blue:#1919e0;--navy:#0a0a6b;--lime:#ccff00;--ink:#12123a;--mute:#4a4c6a;--tint:#f2f4ff;--line:#dfe2f5;--r:18px;--font:'Blauer Nue',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--head:'Blauer Nue',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font-family:var(--font);font-size:17px;line-height:1.65;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
h1,h2,h3,h4{font-family:var(--head);line-height:1.12;margin:0 0 .6em;letter-spacing:-.01em}
h1{font-size:clamp(2.3rem,5.5vw,4.4rem);font-weight:800}
h2{font-size:clamp(1.8rem,3.6vw,2.7rem);font-weight:800}
h3{font-size:1.4rem;font-weight:700}h4{font-size:1.15rem;font-weight:700}
p{margin:0 0 1em;max-width:68ch}
.wrap{width:min(1160px,100% - 2.5rem);margin-inline:auto}
.narrow{max-width:780px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.skip{position:absolute;left:-999px;top:0;background:var(--lime);color:var(--ink);padding:.6rem 1rem;z-index:100}.skip:focus{left:0}
:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
.tz-sec :focus-visible,.page-head :focus-visible{outline-color:var(--blue)}

/* Header */
.site-header{position:fixed;inset:0 0 auto 0;z-index:50;transition:background .25s,box-shadow .25s}
.site-header .bar{display:flex;align-items:center;justify-content:space-between;min-height:76px;gap:1rem}
.brand img{width:auto;height:52px}
.logo-white{display:block}.logo-color{display:none}
.site-header.scrolled,.site-header.menu-open,body:not(.home) .site-header{background:#fff;box-shadow:0 1px 0 var(--line)}
.site-header.scrolled .logo-white,.site-header.menu-open .logo-white,body:not(.home) .logo-white{display:none}
.site-header.scrolled .logo-color,.site-header.menu-open .logo-color,body:not(.home) .logo-color{display:block}
.nav .menu{list-style:none;display:flex;gap:1.6rem;margin:0;padding:0}
.nav a{color:#fff;text-decoration:none;font-weight:600;font-size:.98rem;padding:.4rem 0;border-bottom:2px solid transparent}
.nav a:hover{border-bottom-color:var(--lime)}
.site-header.scrolled .nav a,.site-header.menu-open .nav a,body:not(.home) .nav a{color:var(--ink)}
.site-header.scrolled .nav a:hover,body:not(.home) .nav a:hover{border-bottom-color:var(--blue)}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}
.nav-toggle i,.nav-toggle i::before,.nav-toggle i::after{position:absolute;left:10px;right:10px;height:2px;background:#fff;content:"";transition:.2s}
.nav-toggle i{top:21px}.nav-toggle i::before{top:-7px;left:0;right:0}.nav-toggle i::after{top:7px;left:0;right:0}
.scrolled .nav-toggle i,.scrolled .nav-toggle i::before,.scrolled .nav-toggle i::after,.menu-open .nav-toggle i,.menu-open .nav-toggle i::before,.menu-open .nav-toggle i::after,body:not(.home) .nav-toggle i,body:not(.home) .nav-toggle i::before,body:not(.home) .nav-toggle i::after{background:var(--ink)}


/* Botones del tema */
.btn{display:inline-block;background:var(--lime);color:var(--ink);font-weight:700;text-decoration:none;padding:.85rem 1.5rem;border-radius:999px;border:2px solid var(--lime);font-family:var(--font);font-size:1rem;cursor:pointer;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-2px);background:#d9ff3d}

/* ================= ELEMENTOR ================= */
body[class*="elementor-kit"]{--e-global-color-primary:#12123a;--e-global-color-secondary:#4a4c6a;--e-global-color-text:#12123a;--e-global-color-accent:#1919e0;--e-global-typography-primary-font-family:'Blauer Nue';--e-global-typography-secondary-font-family:'Blauer Nue';--e-global-typography-text-font-family:'Blauer Nue';--e-global-typography-accent-font-family:'Blauer Nue'}
.elementor-widget-text-editor,.elementor-widget-icon-list,.elementor-widget-icon-box .elementor-icon-box-description{font-family:var(--font);color:var(--ink)}
.elementor-widget-heading .elementor-heading-title,.elementor-icon-box-title{font-family:var(--head);color:var(--ink);letter-spacing:-.01em;line-height:1.12}
h1.elementor-heading-title{font-size:clamp(2.3rem,5.5vw,4.4rem);font-weight:800}
h2.elementor-heading-title{font-size:clamp(1.8rem,3.6vw,2.7rem);font-weight:800}
h3.elementor-heading-title{font-size:1.5rem;font-weight:700}
h4.elementor-heading-title{font-size:1.2rem;font-weight:700}
.elementor-widget-text-editor{font-size:17px;line-height:1.65}
.elementor-widget-text-editor p{margin:0 0 1em}.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-section-boxed>.elementor-container{max-width:1160px}
.tz-center{text-align:center}.tz-center .elementor-heading-title{text-align:center}
.tz-muted{color:var(--mute)}.tz-muted,.tz-muted p{color:var(--mute)}
.tz-small{font-size:.92rem}.tz-small p{color:var(--mute);line-height:1.35}

/* Secciones */
.tz-sec{padding:clamp(3rem,7vw,6rem) 0}
.tz-tight{padding:0 0 clamp(2.5rem,5vw,4rem)}
.tz-nobottom{padding-bottom:0}
.tz-tint{background:var(--tint)}
.tz-tint.tz-nobottom{padding-bottom:clamp(2rem,5vw,3.5rem)}
.tz-photo img{width:100%;border-radius:18px;object-fit:cover;aspect-ratio:4/3;display:block}
.tz-photo.tz-tall img{aspect-ratio:4/5}
.tz-lead2{font-size:1.15rem;margin-bottom:2rem}
.tz-subh{margin-top:clamp(2.5rem,5vw,4rem)}

/* Portada */
.tz-hero{color:#fff}
.tz-hero>.elementor-container{min-height:100svh;align-items:flex-end}
.tz-hero .elementor-widget-wrap{padding:9rem 10px 5rem!important}
.tz-hero .tz-iso img{height:92px;width:auto}
.tz-hero h1.elementor-heading-title{color:#fff;max-width:15ch}
.tz-hero .tz-lead{font-size:1.2rem}.tz-hero .tz-lead .elementor-widget-container{max-width:46ch}.tz-hero .tz-lead,.tz-hero .tz-lead p{color:#e8ebff}
.tz-hero .elementor-widget-button{margin:.6rem .8rem 0 0}

/* Botones Elementor */
body .tz-btn .elementor-button{background:var(--lime);color:var(--ink);border:2px solid var(--lime);border-radius:999px;padding:.85rem 1.5rem;font-family:var(--font);font-weight:700;font-size:1rem;line-height:1.2;transition:transform .15s,background .15s}
body .tz-btn .elementor-button:hover{background:#d9ff3d;color:var(--ink);transform:translateY(-2px)}
body .tz-btn-ghost .elementor-button{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
body .tz-btn-ghost .elementor-button:hover{background:rgba(255,255,255,.12);color:#fff}
body .tz-btn-dark .elementor-button{background:transparent;color:var(--blue);border-color:var(--blue)}
body .tz-btn-dark .elementor-button:hover{background:var(--tint);color:var(--blue)}

/* Cifras */
.tz-num .elementor-heading-title{font-size:2.4rem;font-weight:800;color:var(--blue);line-height:1}
.tz-facts .elementor-widget-wrap{border-top:2px solid var(--line);margin-top:0;padding-top:1.4rem!important}

/* Tarjetas */
.tz-card{padding:0 .6rem;margin-bottom:1.2rem}
.tz-cards>.elementor-container,.tz-card-row>.elementor-container{align-items:stretch}
.tz-card>.elementor-widget-wrap,.tz-card>.elementor-column-wrap>.elementor-widget-wrap{border-radius:18px;padding:1.7rem!important;height:100%;align-content:flex-start}
.tz-card-blue>.elementor-widget-wrap,.tz-card-blue>.elementor-column-wrap>.elementor-widget-wrap{background:var(--blue)}
.tz-card-light>.elementor-widget-wrap,.tz-card-light>.elementor-column-wrap>.elementor-widget-wrap{background:#fff;border:1px solid var(--line)}
.tz-card .elementor-icon-box-wrapper{text-align:left}
.tz-card .elementor-icon-box-icon{display:block;margin:0 0 1rem!important}
.tz-card .elementor-icon{font-size:34px;color:var(--blue)}.tz-card .elementor-icon i{color:var(--blue)}.tz-card .elementor-icon svg{fill:var(--blue)}
.tz-card .elementor-icon-box-title{font-size:1.2rem;font-weight:700;margin-bottom:.4rem}
.tz-card .elementor-icon-box-description{font-size:.98rem;margin:0}
.tz-card-blue .elementor-icon,.tz-card-blue .elementor-icon i{color:var(--lime)}.tz-card-blue .elementor-icon svg{fill:var(--lime)}
.tz-card-blue .elementor-icon-box-title,.tz-card-blue .elementor-icon-box-title a,.tz-card-blue .elementor-icon-box-description,.tz-card-blue .elementor-heading-title{color:#fff}
.tz-big .elementor-icon-box-description,.tz-card-blue.tz-big .elementor-icon-box-description{font-size:1.1rem}
.tz-cards>.elementor-container{align-items:stretch}

/* Cultura / valores */
.tz-pills .elementor-icon-list-items{display:grid;gap:.7rem;margin:0;padding:0}
.tz-pills .elementor-icon-list-item{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.7rem 1.3rem .7rem .8rem;font-weight:600;display:flex;align-items:center;gap:.9rem}
.tz-pills .elementor-icon-list-icon{width:40px!important;height:40px;display:grid;place-items:center;background:var(--blue);border-radius:50%;flex:none}
.tz-pills .elementor-icon-list-icon i{color:var(--lime);font-size:16px}.tz-pills .elementor-icon-list-icon svg{fill:var(--lime);width:16px}
.tz-pills .elementor-icon-list-text{padding:0!important;color:var(--ink)}
.tz-band{color:#fff}
.tz-band h2.elementor-heading-title,.tz-band h4.elementor-heading-title{color:#fff}
.tz-valores .elementor-widget-wrap{justify-content:center;text-align:center}
.tz-ring{text-align:center}
.tz-ring img{width:96px;height:96px;padding:22px;border:3px solid var(--lime);border-radius:50%;object-fit:contain;display:inline-block}
.tz-ring-sm img{width:78px;height:78px;padding:17px}
.tz-card-blue .tz-ring{text-align:left}.tz-card-blue .tz-center,.tz-card-blue .tz-center .elementor-heading-title{text-align:left}
.tz-solid{background:var(--blue);color:#fff}
.tz-solid h2.elementor-heading-title{color:#fff}

/* Servicios */
.tz-row{margin-bottom:clamp(1.8rem,4vw,3rem)}
.tz-row .elementor-heading-title{font-size:1.9rem}
.tz-row .tz-muted{font-size:1.1rem}
@media(min-width:768px){.tz-flip>.elementor-container{flex-direction:row-reverse}}

/* Productos / calidad */
.tz-linea .elementor-heading-title{font-size:1.2rem!important;color:var(--blue)!important;margin:1.2rem 0 0}
.tz-sec ul{margin:0;padding-left:1.2rem}
.tz-checks .elementor-icon-list-items{margin:1rem 0}
.tz-checks .elementor-icon-list-item{align-items:flex-start;padding:.3rem 0}
.tz-checks .elementor-icon-list-icon i{color:var(--blue)}.tz-checks .elementor-icon-list-icon svg{fill:var(--blue)}
.tz-checks .elementor-icon-list-text{color:var(--ink)}
.tz-sqf img{height:57px;width:auto}
.tz-obj>.elementor-widget-wrap,.tz-obj>.elementor-column-wrap>.elementor-widget-wrap{border-top:4px solid var(--blue);padding-top:1.2rem!important}
.tz-obj .tz-muted{font-size:.98rem}

/* Propuesta de valor */
.tz-olist ol{list-style:none;counter-reset:v;margin:0;padding:0}
.tz-olist li{counter-increment:v;display:flex;gap:1rem;align-items:baseline;font-size:1.1rem;padding:.4rem 0 .8rem;border-bottom:1px solid rgba(255,255,255,.25);margin-bottom:.4rem}
.tz-olist li::before{content:counter(v);font-family:var(--head);font-weight:800;color:var(--lime);font-size:1.4rem;min-width:1.5rem}
.tz-olist,.tz-olist li{color:#fff}

/* Clientes */
.tz-logos{margin-top:1rem}
.tz-logo img{width:100%;aspect-ratio:1.4;object-fit:contain;padding:10%;background:#fff;border:1px solid var(--line);border-radius:18px;display:block}

/* Equipo */
.tz-team{color:#fff}
.tz-team>.elementor-container{min-height:55vh;align-items:flex-end}
.tz-team .elementor-widget-wrap{padding:3rem 10px!important}
.tz-team .elementor-heading-title,.tz-team,.tz-team p{color:#fff}

/* Contacto */
.tz-contact p{margin:0;padding:.7rem 0;border-bottom:1px solid var(--line)}
.tz-contact strong{font-family:var(--head)}
.tz-contact a{color:var(--blue);font-weight:600}
.tz-formcol .form{margin:0}
.form{background:var(--tint);border-radius:18px;padding:clamp(1.4rem,3vw,2.2rem);display:grid;gap:1rem}
.form label{display:grid;gap:.35rem;font-weight:600;font-size:.95rem}
.form input,.form textarea{font:inherit;padding:.8rem .9rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);width:100%}
.form input:focus,.form textarea:focus{outline:3px solid var(--blue);outline-offset:1px;border-color:var(--blue)}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form .btn{background:var(--blue);color:#fff;border-color:var(--blue);justify-self:start}
.form .btn:hover{background:var(--navy)}
.hp{position:absolute!important;left:-9999px;height:0;overflow:hidden}
.notice{padding:.8rem 1rem;border-radius:12px;margin:0;font-weight:600}
.notice.ok{background:#e6ffd0;color:#1c4a00}.notice.err{background:#ffe3e3;color:#7a0b0b}

/* Footer y páginas internas */
.site-footer{background:var(--navy);color:#cfd2ff;padding:3rem 0;text-align:center}
.foot{display:grid;justify-items:center;gap:.4rem}
.foot img{height:52px;width:auto}.foot p{margin:.3rem 0}.small{font-size:.85rem;opacity:.8}
.page-head{background:var(--blue);color:#fff;padding:9rem 0 3rem}.page-head h1{font-size:clamp(2rem,4vw,3rem);margin:0;color:#fff}
.sec{padding:clamp(3rem,7vw,5rem) 0}
.meta{opacity:.8;font-size:.9rem}
.content img{border-radius:18px;margin:1.5rem 0}
.post{padding:1.5rem 0;border-bottom:1px solid var(--line)}.post h2 a{text-decoration:none}
.taisa-elementor:not(.home) main{padding-top:76px}

/* Responsive */
@media(max-width:1024px){
  .tz-cards .elementor-column{width:50%!important}
  .tz-valores .elementor-column{width:33.33%!important;margin-bottom:1.5rem}
  .tz-logos .elementor-column{width:33.33%!important;margin-bottom:.8rem}
}
@media(max-width:767px){
  .tz-logos .elementor-column,.tz-valores .elementor-column{width:50%!important}
  .tz-cards .elementor-column{width:100%!important}
  .tz-photo img{aspect-ratio:3/2}.tz-photo.tz-tall img{aspect-ratio:3/2}
  .tz-hero>.elementor-container,.tz-team>.elementor-container{min-height:80svh}
  .tz-facts .elementor-column{width:100%!important}
  .form .two{grid-template-columns:1fr}
  .tz-sec .elementor-column{margin-bottom:1rem}
}
@media(max-width:820px){
  .nav-toggle{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;background:#fff;padding:1rem 1.25rem 1.4rem;display:none;box-shadow:0 12px 24px rgba(10,10,107,.12)}
  .nav.open{display:block}
  .nav .menu{flex-direction:column;gap:.4rem}
  .nav a{color:var(--ink);display:block;padding:.7rem 0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* ================= REDISEÑO MINIMALISTA ================= */
.tz-sec{padding:clamp(3.5rem,8vw,7rem) 0}
.tz-sec h2.elementor-heading-title{letter-spacing:-.02em}
.tz-centerbtn{text-align:center}
.tz-centerbtn .elementor-button-wrapper{text-align:center}
.tz-cta .tz-center{margin-bottom:.4rem}

/* Cabecera de páginas internas */
.tz-pagehero{color:#fff}
.tz-pagehero>.elementor-container{min-height:46vh;align-items:flex-end}
.tz-pagehero .elementor-widget-wrap{padding:9rem 10px 3.5rem!important}
.tz-pagehero h1.elementor-heading-title{color:#fff;font-size:clamp(2.2rem,5vw,3.8rem)}
.tz-pagehero .tz-lead .elementor-widget-container{max-width:56ch}
.tz-pagehero .tz-lead,.tz-pagehero .tz-lead p{color:#e8ebff;font-size:1.15rem}
.taisa-elementor:not(.home) main{padding-top:0}

/* Pasos (inicio) */
.tz-steps .tz-stepcol>.elementor-widget-wrap{border-top:3px solid var(--blue);padding-top:1.2rem!important}
.tz-step .elementor-heading-title{font-size:1.35rem}

/* Contador 15 años */
.tz-counter{text-align:left}
.tz-counter .elementor-counter-number-wrapper{font-family:var(--head);font-weight:800;font-size:clamp(5rem,13vw,9.5rem);line-height:.95;color:var(--lime);letter-spacing:-.04em}
.tz-counter .elementor-counter-title{font-family:var(--font);font-size:1.15rem;color:#fff;margin-top:.5rem;font-weight:500}
.tz-solid .elementor-widget-text-editor,.tz-solid .elementor-widget-text-editor p{color:#e8ebff}
.tz-solid h2.elementor-heading-title{color:#fff}

/* Mapa */
.tz-mapwrap .elementor-widget-container{padding:0}
.tz-map{position:relative;width:100%;border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.tz-map svg{display:block;width:100%;height:auto}
.tz-map .sea{fill:#f7f8ff}
.tz-map .c{fill:#e3e6fb;stroke:#fff;stroke-width:1;transition:fill .8s ease}
.tz-map .c.on{fill:#cfd4f7}
.tz-map.is-in .c.on{fill:var(--blue)}
.tz-map .arc{fill:none;stroke:var(--lime);stroke-width:2.6;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:0}
.tz-map.is-in .arc{animation:tzdraw 1.6s ease forwards;animation-delay:var(--d)}
.tz-map .pin .disc{fill:var(--navy);stroke:#fff;stroke-width:3.5}
.tz-map .pin .pop{transform-box:fill-box;transform-origin:center;transform:scale(0);cursor:pointer;transition:filter .2s}
.tz-map.is-in .pin .pop{animation:tzpop .7s cubic-bezier(.2,1.5,.4,1) forwards;animation-delay:calc(.3s + var(--i)*.2s)}
.tz-map .pin:hover .pop{filter:drop-shadow(0 0 6px rgba(204,255,0,.9))}
.tz-map .pulse{fill:var(--lime);opacity:0;transform-box:fill-box;transform-origin:center}
.tz-map.is-in .pulse{animation:tzpulse 2.8s ease-out infinite;animation-delay:calc(1.2s + var(--i)*.25s)}
.tz-map.is-in .pulse.p2{animation-delay:calc(2.6s + var(--i)*.25s)}
.tz-map .lbl{font-family:var(--font);font-weight:700;font-size:23px;fill:var(--ink);stroke:#fff;stroke-width:6;paint-order:stroke;stroke-linejoin:round;opacity:0;transition:opacity .6s}
.tz-map.is-in .lbl{opacity:1;transition-delay:1.4s}
@keyframes tzdraw{to{stroke-dashoffset:0;opacity:.95}}
@keyframes tzpop{0%{transform:scale(0)}100%{transform:scale(1)}}
@keyframes tzpulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(2.6);opacity:0}}
@media(max-width:600px){.tz-map .lbl{display:none}.tz-map{border-radius:16px}}
@media(prefers-reduced-motion:reduce){.tz-map .c.on{fill:var(--blue)}.tz-map .arc{stroke-dashoffset:0;opacity:.95;animation:none}.tz-map .pin .pop{transform:scale(1);animation:none}.tz-map .lbl{opacity:1}.tz-map .pulse{display:none}}

/* Banderas */
.tz-flags .elementor-widget-wrap{align-content:center;gap:.2rem}
.tz-flag .elementor-image-box-wrapper{display:flex;align-items:center;gap:1rem;text-align:left}
.tz-flag .elementor-image-box-img{margin:0!important;flex:none}
.tz-flag .elementor-image-box-img img{width:68px;height:auto;border-radius:10px;box-shadow:0 2px 10px rgba(10,10,107,.15);display:block;transition:transform .3s}
.tz-flag:hover .elementor-image-box-img img{transform:scale(1.08) rotate(-2deg)}
.tz-flag .elementor-image-box-title{font-family:var(--head);font-size:1.15rem;font-weight:700;margin:0;color:var(--ink)}
.tz-flag .elementor-image-box-content{width:auto}

/* Clientes B2B / B2C */
.tz-panels>.elementor-container{align-items:stretch}
.tz-panel>.elementor-widget-wrap{background:var(--tint);border-radius:22px;padding:2rem!important;align-content:flex-start}
.tz-tag .elementor-heading-title{display:inline-block;background:var(--blue);color:#fff;border-radius:999px;padding:.25rem 1rem;font-size:1.05rem;letter-spacing:.04em}
.tz-ico{text-align:center}
.tz-ico .elementor-image-box-wrapper{text-align:center}
.tz-ico .elementor-image-box-img{margin:0 auto 1rem!important;display:block;width:auto!important}
.tz-ico .elementor-image-box-img img{width:112px;height:112px;padding:26px;border-radius:50%;background:#fff;box-shadow:0 4px 18px rgba(25,25,224,.12);transition:background .3s,filter .3s,transform .3s;object-fit:contain;display:block;margin:0 auto}
.tz-ico:hover .elementor-image-box-img img{background:var(--blue);filter:brightness(0) invert(1);transform:translateY(-6px) scale(1.06)}
.tz-ico .elementor-image-box-title{font-family:var(--head);font-size:1.05rem;font-weight:700;margin:0;color:var(--ink)}
.tz-icorow .elementor-column{padding:0 4px}

/* SQF */
.tz-navy{background:var(--navy);color:#fff}
.tz-navy h2.elementor-heading-title{color:#fff}
.tz-navy .elementor-widget-text-editor,.tz-navy .elementor-widget-text-editor p{color:#dfe2ff;font-size:1.15rem}
.tz-sqfcard img{background:transparent;border-radius:0;padding:0;box-shadow:none;width:100%;max-width:340px;height:auto;margin:0 auto;display:block}
.tz-sqfcard{text-align:center}

/* Responsive extra */
@media(max-width:1024px){.tz-icorow .elementor-column{width:50%!important;margin-bottom:1rem}}
@media(max-width:767px){
  .tz-counter,.tz-counter .elementor-counter-number-wrapper{text-align:left}
  .tz-panel>.elementor-widget-wrap{padding:1.4rem!important}
  .tz-ico .elementor-image-box-img img{width:92px;height:92px;padding:20px}
  .tz-flags .elementor-widget{margin-bottom:.6rem}
  .tz-pagehero>.elementor-container{min-height:38vh}
}

.tz-center .elementor-widget-container{text-align:center}
.tz-center p{margin-inline:auto;max-width:60ch}

.tz-panel{padding:0 .75rem;margin-bottom:1.2rem}
.tz-panels{padding-top:clamp(1.5rem,3vw,2.5rem)}
@media(max-width:767px){.tz-panel{padding:0}}

/* Ajustes v3.1 */
.tz-steps{padding-top:0;padding-bottom:clamp(3.5rem,7vw,5.5rem)}
.tz-hero .tz-herosqf{margin-top:1.8rem}
.tz-hero .tz-herosqf img{height:54px;width:auto;opacity:.95}
/* íconos de clientes: círculos perfectos */
.tz-ico .elementor-image-box-img{display:block!important;width:auto!important;line-height:0}
.tz-ico .elementor-image-box-img img{width:112px!important;height:112px!important;min-width:112px;max-width:none!important;aspect-ratio:1/1;padding:21px;border-radius:50%!important;object-fit:contain;box-sizing:border-box;display:block;margin:0 auto}
@media(max-width:767px){.tz-ico .elementor-image-box-img img{width:92px!important;height:92px!important;min-width:92px;padding:17px}}

/* v3.4: capa azul independiente sobre la foto de las portadas */
.tz-hero::before,.tz-pagehero::before{content:"";position:absolute;inset:0;background:var(--tz-capa,rgba(25,25,224,.75));pointer-events:none;z-index:0}
.tz-hero>.elementor-container,.tz-pagehero>.elementor-container{position:relative;z-index:1}
/* Bloque SQF en el azul de la marca */
.tz-navy{background:var(--blue);color:#fff}
