/* Shared WinPro elements. Presentation only; native plugin behavior and content remain owned by WordPress. */
:root{--winpro-bg:#0a0a0b;--winpro-surface:#121214;--winpro-ink:#f4f4f5;--winpro-muted:#b7b7c1;--winpro-accent:#e11d2e;--winpro-highlight:#ff6875;--winpro-line:#2b2b31;--winpro-white:#ffffff;--winpro-font:'Segoe UI',Arial,sans-serif;--winpro-mono:Consolas,monospace;--winpro-space:32px}
body.winpro-elements{background:var(--winpro-bg)!important;color:var(--winpro-muted)!important;font-family:var(--winpro-font)!important;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
.winpro-elements .wrap,.winpro-elements .wpi-layout>.container,.winpro-elements #header-inner-bg>.container,.winpro-elements .main-navigation>.container,.winpro-elements #footer>.container,.winpro-elements #copyright-wrapper>.container{width:min(1240px,calc(100% - 64px))!important;max-width:1240px!important;box-sizing:border-box}
.winpro-elements .brandbar{padding:17px 0}
.winpro-elements header,.winpro-elements #hb-header,.winpro-elements #header-inner,.winpro-elements #header-inner-bg,.winpro-elements .main-navigation-container,.winpro-elements .main-navigation,.winpro-elements .nav-border{background:var(--winpro-bg)!important;box-shadow:none!important;border-color:var(--winpro-line)!important}
.winpro-elements #header-inner{border-top-color:var(--winpro-accent)!important}
.winpro-elements #header-inner-bg>.container{padding:17px 0!important}
.winpro-elements .logo-frame,.winpro-elements #logo,.winpro-elements #logo a{width:260px!important}
.winpro-elements #main-nav>li>a,.winpro-elements #navigation>ul>li>a,.winpro-elements #navigation>ul>li>details>summary{font-family:var(--winpro-font)!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;color:var(--winpro-ink)!important}
.winpro-elements #main-nav>li.current-menu-item>a,.winpro-elements #main-nav>li>a:hover,.winpro-elements #navigation a:hover,.winpro-elements #navigation summary:hover{color:var(--winpro-highlight)!important}
.winpro-elements #main-nav ul,.winpro-elements #navigation details>ul{background:var(--winpro-surface)!important;border-color:var(--winpro-line)!important;border-radius:0!important}
.winpro-elements .intro h1,.winpro-elements #main-content .wpi-hero h1,.winpro-elements #main-content .wpi-hero h1 *{font-family:var(--winpro-font)!important;font-size:clamp(36px,4.8vw,64px)!important;font-weight:700!important;line-height:1.12!important;letter-spacing:-.035em!important;color:var(--winpro-ink)!important}
.winpro-elements .editorial h2,.winpro-elements #main-content .wpi-panel h2,.winpro-elements #main-content .wpi-panel h2 *{font-family:var(--winpro-font)!important;font-size:clamp(27px,2.7vw,38px)!important;font-weight:700!important;line-height:1.18!important;letter-spacing:-.035em!important;color:var(--winpro-ink)!important}
.winpro-elements #main-content p,.winpro-elements #main-content li,.winpro-elements #main-content td{color:var(--winpro-muted)!important;line-height:1.75}
.winpro-elements .editorial,.winpro-elements .service,.winpro-elements .directory-card,.winpro-elements .wpi-panel,.winpro-elements .wpi-outline,.winpro-elements .wpi-form-card,.winpro-elements .wpi-story-grid>article,.winpro-elements #sidebar .widget-item,.winpro-elements .hb-accordion-single,.winpro-elements .hb-toggle,.winpro-elements .hb-tabs-wrapper{background:var(--winpro-surface)!important;border-color:var(--winpro-line)!important;border-radius:0!important;box-shadow:none!important}
.winpro-elements .wpi-panel,.winpro-elements .wpi-form-card{padding:32px}
.winpro-elements .wpi-panel:before{background:var(--winpro-accent)}
.winpro-elements .header-contact,.winpro-elements .wpi-header-contact,.winpro-elements .hb-button,.winpro-elements input[type=submit],.winpro-elements .wpcf7-submit{display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;padding:13px 24px!important;border:1px solid var(--winpro-accent)!important;border-radius:0!important;background:var(--winpro-accent)!important;color:var(--winpro-white)!important;font:600 14px/1.5 var(--winpro-font)!important;box-shadow:none!important;text-decoration:none!important;clip-path:polygon(0 0,100% 0,100% 75%,92% 100%,0 100%)}
.winpro-elements .header-contact:hover,.winpro-elements .wpi-header-contact:hover,.winpro-elements .hb-button:hover,.winpro-elements input[type=submit]:hover{border-color:var(--winpro-highlight)!important;filter:brightness(1.08)}
.winpro-elements .button{border-radius:0!important;font-family:var(--winpro-font);font-weight:600;min-height:48px}
.winpro-elements .esg-filterbutton,.winpro-elements .esg-navigationbutton,.winpro-elements .hb-filter-wrap a,.winpro-elements .filter-tabs a,.winpro-elements .pagination a,.winpro-elements .pagination .current,.winpro-elements .hb-pagination a{box-sizing:border-box;border:1px solid var(--winpro-line)!important;border-radius:0!important;background:var(--winpro-surface)!important;color:var(--winpro-muted)!important;box-shadow:none!important;font:600 14px/1.5 var(--winpro-font)!important;min-height:44px;padding:10px 16px!important;margin-bottom:8px}
.winpro-elements .esg-filterbutton.selected,.winpro-elements .esg-filterbutton:hover,.winpro-elements .hb-filter-wrap a.active,.winpro-elements .pagination .current{background:var(--winpro-accent)!important;border-color:var(--winpro-accent)!important;color:var(--winpro-white)!important}
.winpro-elements .esg-filterbutton.selected *,.winpro-elements .esg-filterbutton:hover *{color:var(--winpro-white)!important}
.winpro-elements .wpcf7-form label{font:600 14px/1.6 var(--winpro-font)!important;color:var(--winpro-ink)!important}
.winpro-elements .wpcf7-form input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([type=hidden]),.winpro-elements .wpcf7-form textarea,.winpro-elements .wpcf7-form select{background:var(--winpro-bg)!important;border:1px solid var(--winpro-muted)!important;color:var(--winpro-ink)!important;border-radius:0!important;min-height:48px;padding:12px!important;font:400 16px/1.5 var(--winpro-font)!important;width:100%!important;box-sizing:border-box}
.winpro-elements .wpcf7-form textarea{min-height:144px;resize:vertical}
.winpro-elements .wpcf7-form input::placeholder,.winpro-elements .wpcf7-form textarea::placeholder{color:var(--winpro-muted)!important;opacity:1}
.winpro-elements .wpcf7-not-valid-tip{color:var(--winpro-highlight)!important;font-size:14px!important}
.winpro-elements .wpcf7-response-output{background:var(--winpro-surface)!important;color:var(--winpro-ink)!important}
.winpro-elements .wpi-portfolio table.supsystic-table td,.winpro-elements .wpi-portfolio table.supsystic-table th{font-family:var(--winpro-font)!important;border-color:var(--winpro-line)!important;padding:14px 16px!important}
.winpro-elements .wpi-portfolio table.supsystic-table th{background:var(--winpro-surface)!important;color:var(--winpro-ink)!important;font-weight:700}
.winpro-elements footer,.winpro-elements #footer,.winpro-elements #footer.dark-style,.winpro-elements #copyright-wrapper{background:var(--winpro-bg)!important;color:var(--winpro-muted)!important;border-color:var(--winpro-line)!important;font:400 13px/1.75 var(--winpro-font)!important}
.winpro-elements #footer{border-top:2px solid var(--winpro-accent)!important}
.winpro-elements footer h2,.winpro-elements #footer .widget-title,.winpro-elements #footer h4{font:700 17px/1.3 var(--winpro-font)!important;letter-spacing:0!important;color:var(--winpro-ink)!important}
.winpro-elements footer a,.winpro-elements #footer a,.winpro-elements #footer p{color:var(--winpro-muted)!important}
.winpro-elements a:focus-visible,.winpro-elements button:focus-visible,.winpro-elements summary:focus-visible,.winpro-elements input:focus-visible,.winpro-elements textarea:focus-visible,.winpro-elements select:focus-visible,.winpro-elements .esg-filterbutton:focus-visible{outline:3px solid var(--winpro-highlight)!important;outline-offset:4px}
@media(max-width:767px){
.winpro-elements .wrap,.winpro-elements .wpi-layout>.container,.winpro-elements #header-inner-bg>.container,.winpro-elements .main-navigation>.container,.winpro-elements #footer>.container,.winpro-elements #copyright-wrapper>.container{width:calc(100% - 36px)!important}
.winpro-elements .brandbar,.winpro-elements #header-inner-bg>.container{padding:14px 0!important;gap:12px}
.winpro-elements .logo-frame,.winpro-elements #logo,.winpro-elements #logo a{width:clamp(145px,48vw,205px)!important}
.winpro-elements .header-contact,.winpro-elements .wpi-header-contact{padding:10px 14px!important;font-size:11px!important;min-height:44px;white-space:nowrap}
.winpro-elements .intro h1,.winpro-elements #main-content .wpi-hero h1,.winpro-elements #main-content .wpi-hero h1 *{font-size:36px!important;line-height:1.16!important;overflow-wrap:anywhere}
.winpro-elements .wpi-panel,.winpro-elements .wpi-form-card{padding:24px 18px}
.winpro-elements .wpi-portfolio table.supsystic-table td,.winpro-elements .wpi-portfolio table.supsystic-table th{padding:12px!important}
}
@media(prefers-reduced-motion:reduce){.winpro-elements *{scroll-behavior:auto!important}.winpro-elements .service,.winpro-elements .video{transition:none!important;transform:none!important}}

/* Builder-native variants share the same visual roles without replacing their controls. */
.winpro-elements .vc_btn3-container .vc_btn3{background:var(--winpro-accent)!important;color:var(--winpro-white)!important;border:1px solid var(--winpro-accent)!important;border-radius:0!important;box-shadow:none!important;font-family:var(--winpro-font)!important;font-weight:600!important;min-height:48px;padding:13px 24px!important}
.winpro-elements .vc_tta-tabs .vc_tta-tab>a,.winpro-elements .vc_tta-panel-heading,.winpro-elements .hb-pricing-table,.winpro-elements .hb-box-cont,.winpro-elements .icon-box,.winpro-elements .feature-box{background:var(--winpro-surface)!important;color:var(--winpro-ink)!important;border-color:var(--winpro-line)!important;border-radius:0!important;box-shadow:none!important}
.winpro-elements .vc_tta-tabs .vc_tta-tab.vc_active>a,.winpro-elements .vc_tta-tabs .vc_tta-tab>a:hover{color:var(--winpro-white)!important;border-color:var(--winpro-accent)!important}
.winpro-elements .vc_tta-tabs .vc_tta-tab>a:focus-visible,.winpro-elements .vc_btn3:focus-visible{outline:3px solid var(--winpro-highlight)!important;outline-offset:4px}
