/* Componentes adicionados pelo Southpartner Visual Builder */
.spb-section{position:relative;width:100%;padding:80px 0}.spb-section>.spb-container,.spb-container{width:min(1200px,calc(100% - 48px));margin:0 auto;position:relative}.spb-columns{display:flex;align-items:stretch;gap:24px;width:100%;min-height:80px}.spb-column{flex:1 1 0;min-width:0;position:relative}.spb-widget{position:relative}.spb-widget-heading{margin:0 0 18px;font:600 clamp(36px,4vw,64px)/.95 var(--font,Barlow Condensed,sans-serif);color:var(--blue,#003865)}.spb-widget-text{font:400 16px/1.7 var(--body,"Inter",sans-serif);color:var(--ink,#061827)}.spb-widget-button{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:0 24px;border:1px solid var(--orange,#ED8B00);border-radius:0;background:var(--orange,#ED8B00);color:#fff;font:800 10px/1 var(--body,"Inter",sans-serif);letter-spacing:0;text-transform:uppercase}.spb-widget-image{display:block;max-width:100%;height:auto}.spb-widget-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid rgba(82,101,140,.15);color:var(--cyan,#00A9E0)}.spb-widget-icon svg{width:28px;height:28px}.spb-widget-video{width:100%;height:auto;display:block}.spb-widget-divider{height:1px;background:rgba(82,101,140,.18);width:100%;margin:24px 0}.spb-widget-spacer{height:60px}.spb-icon-box,.spb-image-box,.spb-card,.spb-testimonial{padding:28px;border:1px solid rgba(82,101,140,.12);background:#fff}.spb-icon-box{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}.spb-icon-box h3,.spb-image-box h3,.spb-card h3{margin:0 0 8px;font:600 28px/1 var(--font,Barlow Condensed,sans-serif);color:var(--blue,#003865)}.spb-icon-box p,.spb-image-box p,.spb-card p{margin:0;color:var(--muted,#a5bbca)}.spb-image-box img{width:100%;aspect-ratio:16/9;object-fit:cover;margin-bottom:20px}.spb-counter{display:grid;gap:5px;text-align:center}.spb-counter strong{font:600 64px/1 var(--font,Barlow Condensed,sans-serif);color:var(--cyan,#00A9E0)}.spb-counter span{font:800 10px/1.2 var(--body,"Inter",sans-serif);letter-spacing:0;text-transform:uppercase}.spb-progress{display:grid;gap:8px}.spb-progress-head{display:flex;justify-content:space-between;font-size:12px;font-weight:800}.spb-progress-track{height:8px;background:rgba(82,101,140,.1);overflow:hidden}.spb-progress-track i{display:block;height:100%;width:70%;background:var(--cyan,#00A9E0)}.spb-accordion{display:grid}.spb-accordion details{border-bottom:1px solid rgba(82,101,140,.15);padding:14px 0}.spb-accordion summary{cursor:pointer;font-weight:800;list-style:none}.spb-accordion summary::-webkit-details-marker{display:none}.spb-accordion details p{padding:12px 0 0;margin:0;color:var(--muted,#a5bbca)}.spb-tabs{border:1px solid rgba(82,101,140,.12)}.spb-tab-nav{display:flex;border-bottom:1px solid rgba(82,101,140,.12)}.spb-tab-nav button{flex:1;min-height:44px;border:0;border-right:1px solid rgba(82,101,140,.12);background:#f3f6f5;font-weight:800}.spb-tab-nav button.is-active{background:var(--blue,#003865);color:#fff}.spb-tab-panel{display:none;padding:24px}.spb-tab-panel.is-active{display:block}.spb-testimonial blockquote{margin:0;font:500 26px/1.3 var(--font,Barlow Condensed,sans-serif);color:var(--blue,#003865)}.spb-testimonial footer{margin-top:16px;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--cyan,#00A9E0)}.spb-social{display:flex;gap:8px}.spb-social a{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(82,101,140,.16);font-weight:900}.spb-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.spb-gallery img{width:100%;aspect-ratio:1;object-fit:cover}.spb-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.spb-form label{display:grid;gap:5px;font-size:9px;font-weight:800;letter-spacing:.08em}.spb-form label:last-of-type{grid-column:1/-1}.spb-form input,.spb-form textarea{width:100%;border:1px solid rgba(82,101,140,.18);background:#fff;padding:12px}.spb-form button{grid-column:1/-1;justify-self:start}.spb-map{width:100%;min-height:360px;border:0;background:#eef1ef}.spb-html-placeholder{padding:30px;border:1px dashed rgba(82,101,140,.3);text-align:center;color:#889FAC}.spb-card{box-shadow:none}
@media(max-width:1024px){.spb-columns{gap:18px}.spb-section{padding:64px 0}}
@media(max-width:767px){.spb-section{padding:52px 0}.spb-container{width:min(100% - 28px,1200px)}.spb-columns{flex-direction:column}.spb-gallery{grid-template-columns:1fr 1fr}.spb-form{grid-template-columns:1fr}.spb-form label:last-of-type,.spb-form button{grid-column:1}}

/* NOVA identity and motion safety */
.spb-widget-heading{font-family:Barlow Condensed,sans-serif;font-weight:700;line-height:1;text-transform:uppercase;color:inherit}
.spb-widget-text{font-family:"Inter",sans-serif;color:inherit}
.spb-widget-button{font-family:"Inter",sans-serif;font-size:12px;font-weight:700;letter-spacing:0;border-radius:4px}
.spb-widget-button:hover{background:var(--yellow,#FFC72C);color:var(--blue,#003865)}
.spb-icon-box,.spb-image-box,.spb-card,.spb-testimonial{background:transparent;color:inherit;border-color:rgba(255,255,255,.15)}
.spb-card{box-shadow:none!important}
@media(prefers-reduced-motion:reduce){.spb-widget,.spb-widget *{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* NOVA 20.2 — responsive editing without changing brand, type or desktop geometry. */
.spb-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;grid-column:1/-1}
.spb-form-fields>label{min-width:0;display:grid;gap:6px}
.spb-form-fields :is(input,textarea,select){width:100%;min-width:0;box-sizing:border-box;background:transparent;color:inherit;border:1px solid currentColor;padding:13px;font:inherit}
.spb-form-fields .spb-check-label{display:flex;align-items:center;gap:10px}
.spb-form-fields input[type=checkbox]{width:auto}
.spb-form-status{grid-column:1/-1;font-size:13px;min-height:1em}
.spb-form [type=submit]:disabled{opacity:.6;cursor:wait}
@media(max-width:767px){
  html body main#main{max-width:100%;min-width:0}
  html body main#main :is(.hero-inner,.hero-copy,.hero-ctas,.hero-title,.hero-lead,.hero-stage,.essence-grid-rich,.promise-layout,.human-tech-bottom,.spb-columns,.spb-container,.spb-widget,.spb-section){min-width:0;max-width:100%;box-sizing:border-box}
  html body main#main :is(img,video,picture,iframe){max-width:100%;height:auto}
  html body main#main :is(.hero-title,.hero-lead,h1,h2,p){overflow-wrap:break-word}
  html body main#main .hero-inner{grid-template-columns:minmax(0,1fr)}
  html body main#main .hero-ctas{flex-wrap:wrap;align-items:stretch}
  html body main#main .hero-ctas>*{max-width:100%;white-space:normal}
  html body main#main .spb-columns{flex-direction:column}
  html body main#main .spb-column{flex:1 1 auto;width:100%;max-width:100%}
  html body main#main .spb-form-fields{grid-template-columns:minmax(0,1fr)}
  .spb-form-fields .spb-check-label{grid-column:1/-1}
}

/* Iconos reemplazados por el Builder. Mantienen las dimensiones del SVG original. */
svg[data-nv-icon-source^="solid:"],svg[data-nv-icon-source^="regular:"]{fill:currentColor!important;stroke:none!important}
svg[data-nv-icon-source^="nova:"]{fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
