/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/
/* @import "../css/fonts.css"; */
/* @import "includes/form.css"; */

/* @font-face {
    font-family: 'FontCostamp';
    src:  url('../fonts/font-costamp.eot?wt4oww');
    src:  url('../fonts/font-costamp?wt4oww#iefix') format('embedded-opentype'),
    url('../fonts/font-costamp.ttf?wt4oww') format('truetype'),
    url('../fonts/font-costamp.woff?wt4oww') format('woff'),
    url('../fonts/font-costamp.svg?wt4oww#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: block;
} */
:root{
    --first-color:#005EBC;
    --second-color:#72BB6F;
    --third-color:#35B6B4;
    --color-white:#FFF;
    --color-black:#000;
    --theme-font: 'Archivo'
}
ol, ul{
    margin-left:12px;
}
.first-color{
    color:var(--first-color);
}
.second-color{
    color:var(--second-color);
}
.third-color{
    color:var(--third-color);
}
.white-color{
    color:var(--color-white);
}
.black-color{
    color:var(--color-black);
}
.d-none{
    display:none !important;
}
.uppercase{
    text-transform: uppercase !important;
}
.fw-7{
    font-weight: 700 !important;
}
@media screen and (max-width:1024px){
    .dx-block{
        display: block !important;
    }
    .dx-none{
        display:none !important;
    }
}


/*** tabbed section ***/
.tabbed>ul li a{
    background-color:transparent;
    border-left: 1px solid #CCCCCC !important;
    text-transform: uppercase;
}
.tabbed>ul li a:hover{
    background-color:var(--first-color);
    color:#FFF;
}
.tabbed>ul li.active-tab a{
    pointer-events: none;
    font-weight: 700;
}
.tabbed>ul li .active-tab{
    color:var(--first-color);
    font-weight: 700;
}
.tabbed[data-style="vertical"][data-color-scheme="accent-color"] > ul li .active-tab{
    background-color:transparent;
    border-left:3px solid var(--first-color) !important;
}

/*** clients ***/

.clients>div{
    margin-bottom: 0;
}

/*** menu ***/

.sf-menu li:nth-of-type(2) ul{
    width:30em;
}

/*** list style custom ***/
.nectar-fancy-ul ul{
    margin-top: 20px;
}
.container-wrap .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li{
    padding-left: 45px;
    list-style: none;
}
.container-wrap .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li h5{
    color:var(--first-color);
    text-transform: uppercase;
    font-weight: 700;
}
.container-wrap .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:before{
    content:'';
    position: absolute;
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2024/09/punto-elenco.png');
    width: 30px;
    height: 30px;
    background-position: center;
    background-size: 100%;
    left: 0;
    top: -2px;
    background-color: #FFF;
}
.container-wrap .bg-blue .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:before{
    background-color: var(--first-color);
}
.container-wrap .nectar-fancy-ul[data-color="extra-color-3"][data-list-icon="fa fa-circle"] ul li:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2024/09/punto-elenco-white.png');
}
.nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li .icon-default-style[class^="icon-"]{
    display: none;
}
.container-wrap .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:after{
    content: '';
    position: absolute;
    height: 110%;
    width: 1px;
    border-right: 2px solid var(--first-color);
    top: 21px;
    left: 13px;
    z-index: -1;
}
.container-wrap .bg-blue .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:after{
    height: 90px;
    border-right: 1px dashed #FFF;
}
.container-wrap .bg-blue.ul-70 .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:after{
    height: 70px;
}
.container-wrap .nectar-fancy-ul[data-list-icon="fa fa-circle"] ul li:last-of-type:after{
    content:none;
}

/*** footer ***/

#footer-widgets{
    display: none;
}
.footer a:hover{
    color:#FFF !important;
    opacity:.6 !important;
}
.footer .widget_nav_menu ul li{
    list-style: none;
    margin-bottom: 10px;
    white-space: nowrap;
}
.footer .widget_nav_menu ul{
    margin-left: 0;
}
.footer .widget_nav_menu ul li:before{
    content: "-"; /* Inserisce il trattino come marker */
    margin-right: 8px; /* Spazio tra il trattino e il testo dell'elemento */
    color: #FFF; /* Colore del trattino */
    font-size: 1rem; /* Dimensione del trattino */
}
.footer.wpb_row .row-bg-wrap .row-bg-overlay{
    opacity:.7 !important;
}
/*** fancy box ***/

.nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 10px;
}
.nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap img{
    width: 50px;
}
.nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap h6{
    width: calc(100% - 60px);
}
.nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap p{
    width: 100%;
}

/*** custom icons ***/
.fa-battery-4:before,
.fa-battery:before,
.fa-battery-full:before{
    font-family: FontCostamp;
    font-size: 2em;
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(1) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(1) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(1) .fa-battery-full:before{
    content: "\e900";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(2) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(2) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(2) .fa-battery-full:before{
    content: "\e906";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(3) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(3) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(3) .fa-battery-full:before{
    content: "\e905";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(4) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(4) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(4) .fa-battery-full:before{
    content: "\e904";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(5) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(5) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(5) .fa-battery-full:before{
    content: "\e903";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(6) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(6) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(6) .fa-battery-full:before{
    content: "\e902";
}
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(7) .fa-battery-4:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(7) .fa-battery:before,
body .tabbed[data-style*=vertical] .wpb_tabs_nav li:nth-of-type(7) .fa-battery-full:before{
    content: "\e901";
}

/*** tabs ***/
.tabbed[data-style*=vertical] .wpb_tabs_nav{
    width: 30%;
}
.tabbed[data-style*=vertical]>div{
    width: 70%;
}
.tabbed>ul li a{
    padding: 10px 0 10px 15px ;
}
/*** tabs horizontal ***/
.tabbed[data-style=minimal]>ul li:not(.cta-button) a{
    border:none !important;
    padding-bottom: 5px !important;
}
.tabbed[data-style=minimal]>ul li:not(.cta-button) a span{
    display: none;
}
.tabbed>ul li .fa-battery-3:before,
.tabbed>ul li .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li .fa-battery-three-quarters:before{
    font-family: FontCostamp;
    color:#929497
}
.tabbed>ul li.active-tab .fa-battery-3:before,
.tabbed>ul li.active-tab .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li.active-tab .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li.active-tab .fa-battery-three-quarters:before{
    color:#82AABE;
}

.tabbed>ul li:nth-of-type(1) .fa-battery-3:before,
.tabbed>ul li:nth-of-type(1) .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(1) .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(1) .fa-battery-three-quarters:before{
    content:"\e910";
    color:#82AABE
}
.tabbed>ul li:nth-of-type(2) .fa-battery-3:before,
.tabbed>ul li:nth-of-type(2) .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(2) .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(2) .fa-battery-three-quarters:before{
    content:"\e911";
    color:#E57844
}
.tabbed>ul li:nth-of-type(3) .fa-battery-3:before,
.tabbed>ul li:nth-of-type(3) .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(3) .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(3) .fa-battery-three-quarters:before{
    content:"\e912";
    color:#558C78
}
.tabbed>ul li:nth-of-type(4) .fa-battery-3:before,
.tabbed>ul li:nth-of-type(4) .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(4) .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(4) .fa-battery-three-quarters:before{
    content:"\e913";
    color:#325A78
}
.tabbed>ul li:nth-of-type(5) .fa-battery-3:before,
.tabbed>ul li:nth-of-type(5) .fa-battery-three-quarters:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(5) .fa-battery-3:before,
.wpb_content_element .tabbed .wpb_tabs_nav li:nth-of-type(5) .fa-battery-three-quarters:before{
    content:"\e914";
    color:#C86464
}
#ajax-content-wrap .custom_font_size_16px.nectar-post-grid .nectar-post-grid-item .post-heading,
.custom_font_size_16px.nectar-post-grid .nectar-post-grid-item .post-heading{
    font-weight: 400;
    text-transform: none;
    position: relative;
}
#ajax-content-wrap .custom_font_size_16px.nectar-post-grid .nectar-post-grid-item .post-heading:before,
.custom_font_size_16px.nectar-post-grid .nectar-post-grid-item .post-heading:before{
    content: '';
    border-top: 3px solid var(--first-color);
    position: absolute;
    top: -15px;
    left: 0;
    height: 1px;
    width: 100px;
}

/*** milestones ***/


/*** milestones chi siamo ***/
body .counters .nectar-milestone .number h2{
    font-size: .7em;
    color:var(--first-color);
    margin-bottom: 0;
    font-weight: 700;
}
body .counters .nectar-milestone .subject{
    font-size: .8em;
    line-height: 1.2;
}
body .counters .nectar-milestone .number.extra-color-3{
    line-height: .5em;
}
body .counters .nectar-milestone .number .symbol-wrap span.symbol{
    font-size: .7em;
    line-height: 1;
    color:var(--first-color);
}
/*** milestone ***/
body .nectar-milestone{
    margin-top: -10px;
}
body .nectar-milestone .subject{
    text-transform: uppercase;
    color:#51555A;
    font-weight: 700;
    max-width: 65%;
    margin: 0 auto;
    line-height: 1.3;
}
.nectar-milestone .number h3{
    font-family: 'Archivo SemiExpanded';
    font-weight: 700;
    font-size: .9em !important;
}

/*** news ***/
.blog-recent[data-style=minimal]{
    display: flex;
}
.blog-recent[data-style=minimal] .col{
    background-color:#FFF;
    border-radius:20px;
    padding: 40px;
    box-shadow: rgba(0, 0, 0, .04) 0 1px 0, rgba(0, 0, 0, .05) 0 2px 7px, rgba(0, 0, 0, .06) 0 12px 22px;
}
.blog-recent[data-style=minimal] .meta{
    font-size: 12px;
    margin-bottom: 0;
    color:#B2B2B2;
}
.blog-recent .col .post-header h3{
    text-transform: none;
    color:#005EBC !important;
    font-size: 20px;
    line-height: 1.2;
}
.blog-recent[data-style="minimal"] .col > span{
    font-size: 16px !important;
    letter-spacing: 0 !important;
}

/*** highlights ***/

.highlights-blog .meta-category{
    display: none;
}
.highlights-blog .blog-recent[data-style*=classic_enhanced] .post-featured-img{
    border-radius: 20px;
    overflow: hidden;
}
.highlights-blog .blog-recent[data-style*=classic_enhanced] .inner-wrap{
    background-color:transparent;
    box-shadow: none;
}
.blog-recent[data-style*=classic_enhanced] .article-content-wrap{
    padding: 20px 0 0;
    background-color:transparent;
}

/*** circle ***/
.container-circle {
    position: relative;
    width: 60%;
    /* width: 70%; */
    /* width: 75%; */
    margin: 50px auto;
}
.container-circle .circle {
    position: relative;
    padding-top: 0;
    border-radius: 50%;
    border: 30px solid #FFF;
    height: 700px;
    width: 700px;
    margin: 0 auto;
    -webkit-box-shadow: 0px 3px 14px 6px rgba(0,0,0,0.05);
    box-shadow: 0px 3px 14px 6px rgba(0,0,0,0.05);
}
.container-circle .circle .inner-circle{
    border-radius: 50%;
    height: 640px;
    width: 640px;
    margin:0 auto;
    -webkit-box-shadow: inset 0px 3px 14px 6px rgba(0,0,0,0.05);
    box-shadow: inset 0px 3px 14px 6px rgba(0,0,0,0.05);
}
.container-circle .progress-circle {
    width: 100%;
    max-width: 750px;
    height: 100%;
    transform: rotate(-90deg);
    max-height: 745px;
    margin: auto;
}
.container-circle .center-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 1000;
}
.container-circle .center-text h2 strong{white-space: nowrap;
  
    /* 辅助设置：可选，防止内容溢出时被截断 */
    overflow: hidden;
    
    /* 辅助设置：可选，用省略号(...)表示被截断的文本 */
    text-overflow: ellipsis;}
.container-circle h2 {
    color: #0056b3;
    line-height: .9;
    font-size: 3.5em;
    /* font-weight: 300; */
    margin-bottom: 30px;
}
.container-circle .subtitle {
    font-size: 1.5em;
    font-weight: 700;
    padding: 0;
    margin-bottom: 20px;
}
.container-circle .desc {
    font-size: 14px;
    color: #555;
}
.container-circle .icons {
    position: absolute;
    width: 700px;
    height: 700px;
    top: -30px;
    left: -30px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.container-circle .icons .icon.right{text-align: center}
.container-circle .icons .icon.left{text-align: center}
.container-circle .icons div {
    position: absolute;
    font-size: 14px;
    color: #888;
    transform-origin: center;
    line-height: 1.1;
    font-weight: 700;
    width: 4vw;
}
.container-circle .icons .icon .icon-svg img:nth-child(1){opacity: 0;}



.container-circle .icons .icon .icon-svg img:nth-child(2){position: absolute;top: 0;left: 0;}
.container-circle .icons div .icon-svg{
    display: block;
    margin-bottom: 10px;
}
.container-circle .icons div:nth-child(1) { top: 10%; left: 100%; }
.container-circle .icons div:nth-child(2) { top: 43%; left: 110%; }
.container-circle .icons div:nth-child(3) { bottom: 10%; left: 100%; }
.container-circle .icons div:nth-child(4) { bottom: 0%; right: 91%;}
.container-circle .icons div:nth-child(5) { top: 60%; right: 110%; }
.container-circle .icons div:nth-child(6) { top: 27%; right: 108%;}
.container-circle .icons div:nth-child(7) { top: -2%; right: 90%;}

/* ---------------------------------------------------- */
/* 必须的设置：确保图标中心对齐定位点                  */
/* ---------------------------------------------------- */
.container-circle .icons div {
    position: absolute;
    /* 确保图标中心对齐计算出的定位点 */
    transform: translate(-50%, -50%); 
}

/* ---------------------------------------------------- */
/* 9 个图标的最终精确计算和定位 (R=65% 最大外推，SIMULATION 320° 起始) */
/* ---------------------------------------------------- */

/* 角度公式: Angle = 320° + (n-1) * 40° */

/* 1. SIMULATION (顶部偏右) - 角度 290° */
.container-circle .icons div:nth-child(1) {
    /* Top: 50 + sin(290) * 60 ≈ -6.4% */
    /* Left: 50 + cos(290) * 60 ≈ 60.3% */
    top: -15%;
    left: 74%;
}

/* 2. DESIGN (右上角) - 角度 330° 或 -30° */
.container-circle .icons div:nth-child(2) {
    /* Top: 50 + sin(-30) * 60 = 20% */
    /* Left: 50 + cos(-30) * 60 ≈ 101.9% */
    top: 15%; 
    left: 111%; 
}

/* 3. MACHINING (右侧) - 角度 370° 或 10° */
.container-circle .icons div:nth-child(3) {
    /* Top: 50 + sin(10) * 60 ≈ 60.4% */
    /* Left: 50 + cos(10) * 60 ≈ 109.1% */
    top: 62%;
    left: 118%;
}

/* 4. ASSEMBLY (右下角) - 角度 50° */
.container-circle .icons div:nth-child(4) {
    /* Top: 50 + sin(50) * 60 ≈ 95.9% */
    /* Left: 50 + cos(50) * 60 ≈ 88.6% */
    top: 104%; 
    left: 95%; 
}

/* 5. MOLD TRIAL (底部) - 角度 90° */
.container-circle .icons div:nth-child(5) {
    /* Top: 50 + sin(90) * 60 = 110% */
    /* Left: 50 + cos(90) * 60 = 50% */
    top: 120%; 
    left: 50%; 
}

/* 6. INSPECTION (左下角) - 角度 130° */
.container-circle .icons div:nth-child(6) {
    /* Top: 50 + sin(130) * 60 ≈ 95.9% */
    /* Left: 50 + cos(130) * 60 ≈ 11.4% */
    top: 104%; 
    left: 5%; 
}

/* 7. SURFACE FINISHING (左侧) - 角度 170° */
.container-circle .icons div:nth-child(7) {
    /* Top: 50 + sin(170) * 60 ≈ 60.4% */
    /* Left: 50 + cos(170) * 60 ≈ -9.1% */
    top: 62%; 
    left: -19%; 
}

/* 8. PILOT PRODUCTION (左上角) - 角度 210° */
.container-circle .icons div:nth-child(8) {
    /* Top: 50 + sin(210) * 60 = 20% */
    /* Left: 50 + cos(210) * 60 ≈ -1.9% */
    top: 15%; 
    left: -11%; 
}

/* 9. MASS PRODUCTION (顶部偏左) - 角度 250° */
.container-circle .icons div:nth-child(9) {
    /* Top: 50 + sin(250) * 60 ≈ -6.4% */
    /* Left: 50 + cos(250) * 60 ≈ 39.7% */
    top: -16%;
    left: 26%;
}

.container-circle .cursor {
    position: absolute;
    width: 50px;
    height: 50px;
    background-color: rgba(0, 86, 179, 0.8);
    border-radius: 50%;
    transition: transform 0.5s ease, opacity 0.3s ease;
    opacity: 0;
}


/*** cursor ***/
.line-wrapper{
    position: absolute;
    width: 750px;
    height: 750px;
    top: -52px;
    left: -55px;
}
.circle .line{
    position: absolute;
    width: 800px;
    display: inline-block;
    box-sizing: border-box;
    border: solid 30px transparent;
    border-radius:50%;
    transition: transform .5s ease-in-out;
    transform: rotate(170deg);
}
.circle .line-225 {transform: rotate(225deg);}
.circle .line-270{transform: rotate(270deg);}
.circle .line-315{transform: rotate(315deg);}
.circle .line-360{transform: rotate(360deg);}
.circle .line-45{transform: rotate(405deg);}
.circle .line-90{transform: rotate(450deg);}
.circle .line-125{transform: rotate(495deg);}

.circle .line.active{
    border-bottom-color:#015EBC;
    background:
            radial-gradient(farthest-side,#015EBC 100%,transparent) left  15% bottom 14.3%,
            radial-gradient(farthest-side,#015EBC 98%,transparent) right 15% bottom 14.3%;
    background-size:30px 30px;
    background-origin:border-box;
    background-repeat:no-repeat;
    z-index:10;
    transition: transform .5s ease-in-out;
}

/* maintain the square ratio */
.circle .line::before {
    content:"";
    display:block;
    padding-top:100%;
}

/* add */

.container-circle {
    /* 使用 max-width 限制最大尺寸，并用 margin: auto 居中 */
    /* max-width: calc(100vh - 52px); 保持原有的最大尺寸限制 */
    max-width: max(90vh, 750px);
    /* max-width: 750px; 保持原有的最大尺寸限制 */
    /* max-width: 900px; 保持原有的最大尺寸限制 */
    /* margin: 0 auto; */
    margin: 0;
    /* margin-left: -6vw; */
}
/* .vc_column-inner .scroll-animation-section{margin-left: -1vw;margin-right: 1vw;} */
/* .robot_{margin-right: -4vw;margin-left: 4vw;} */
/* @media screen and (max-width:1920px){
    .container-circle{max-width: 900px;}
} */
.row .col .robot_ img{max-width:500px;/* margin-left:3vw */margin-left:7vh;margin-bottom: 0;}
.container-circle .icons {
    position: absolute;
    /* 替换固定的 700px 为相对单位，例如 100% 或基于视口的单位 */
    width: 100%; 
    height: 100%;
    /* 将固定的 -30px 偏移量替换为相对单位，例如基于父元素宽度的百分比或使用 calc() */
    /* 假设父元素是 .circle，其宽度为 700px，边框为 30px */
    /* 700px / (700px + 2*30px) = 700/760 ≈ 92.1% */
    /* top: -4.2%; /* (30 / 710) * 100% 约等于 4.2% */
    /* left: -4.2%; */
    /* 更简单的做法是：如果 .icons 是用来定位内部元素的，确保其覆盖整个圆环区域 */
    top: 0;
    left: 0;
    
    /* 另一种方法: 使用 calc() 适应边框 */
    /* top: calc(-30px / 7.5); /* 示例：如果 30px 对应于某个相对大小 */
    /* left: calc(-30px / 7.5); */

    /* 保持原样，但需要确保父级 .circle 尺寸是响应式的 */
    /* 如果目的是让 .icons 尺寸大于 .circle, 保持 100% 并调整 .circle 的 top/left */
    /* 考虑到原 CSS，保持 100% 并在 HTML 结构中调整会更灵活 */
    /* 原始 700px 的尺寸是相对于哪个父元素的？如果相对于 .circle 内部 */
    /* 调整为覆盖整个容器： */
    /* top: -30px; 
    left: -30px; 
    width: calc(100% + 60px); 
    height: calc(100% + 60px); 
    display: flex;
    justify-content: center;
    align-items: center; */
    
    /* 由于 .icons 的目的是定位里面的 icon 元素，我们先聚焦于响应式圆环 */
}
.container-circle .circle {
    
    /* 保持边框固定，或使用响应式边框，例如 1.5vw */
     
    
    /* 核心修改：将固定 700px 替换为响应式单位，例如 vw 或 % */
    /* 使用 100% 占用父容器的可用宽度 */
    /* width: 85%;  */
    width: 75%; 
    /* 使用 aspect-ratio 确保高度跟随宽度，保持圆形 */
    aspect-ratio: 1 / 1; 
    
    /* 移除固定 height: 700px; */
    height: auto;
}
.container-circle .circle .inner-circle{
    
    /* 核心修改：使用百分比让内圆相对于外圆尺寸变化 */
    /* 原始尺寸 640px / 700px ≈ 91.43% */
    /* 考虑到 30px 的边框，内圆尺寸应该是 外圆内容区尺寸（100%） */
    height: 100%;
    width: 100%;
}
.container-circle .progress-circle {
    width: 100%;
    /* 移除 max-width: 750px; 以确保在小屏幕上也能缩小 */
    /* max-width: 750px; */
    height: 100%;
    transform: rotate(-90deg);
    /* 移除 max-height: 745px; */
    /* max-height: 745px; */
    margin: auto;
}
.hover-wrap-inner img{max-height: 95vh;object-fit: contain;}

.line-wrapper{width: 119%;    height: 117.4%;top: -8.6%;    left: -9.5%;}
.vc_column-inner .scroll-animation-section{padding-top: 2.5vh;}

@media screen and (max-width:1680px){
/* .container-circle{transform: translate(0px, -13%);} */
.container-circle .circle{width: 65%;border: 25px solid #fff;}
}


/* list icon+text */

.text-icon{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.text-icon .text-block{
    width: 75%;
}
.text-icon img{
    max-width: 100px !important;
}

/*** tabbed scroll section ***/
.nectar-scrolling-tabs .scrolling-tab-nav .n-sticky > .line,
.nectar-scrolling-tabs .scrolling-tab-nav .theiaStickySidebar:before{
    content:none !important;
    display: none !important;
}
.nectar-scrolling-tabs .scrolling-tab-nav ul li{
    background-color: transparent;
    border: 1px solid var(--first-color);
    border-radius: 50px;
    padding: 15px 30px !important;
    color: #51555A;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 10px;
    opacity: 1;
}
.nectar-scrolling-tabs .scrolling-tab-nav a{
    text-decoration: none;
}
.nectar-scrolling-tabs .scrolling-tab-nav ul li.active{
    background-color:var(--first-color);
    color:#FFF;
}


/*** investors ***/
body.material .nectar-button.see-through.investors-button.active,
material .nectar-button.see-through.investors-button.active.accent-color[data-color-override="false"]{
    background-color:var(--first-color) !important;
    color:#FFF !important;
}
body .nectar-button.see-through.investors-button{
    text-transform: uppercase !important;
    display: block;
    padding: 20px !important;
}
body .nectar-button.see-through.investors-button span{
    font-size: 15px;
    font-weight: 700 !important;
}
body .nectar-button.see-through.investors-button:hover{
    background-color:var(--first-color) !important;
}
body .nectar-button.see-through.investors-button:hover span{
    color:#FFF;
}
body .nectar-button.see-through.investors-button.active span{
    color:#FFF;
}

/*** business units ***/
.row .col.header-bu .iwithtext{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 40px;
}
.row .col.header-bu .iwithtext .iwt-icon{
    max-width:70px;
    position: relative;
    height: 70px;
}
.row .col.header-bu .iwithtext .iwt-icon:after{
    content: '';
    position: absolute;
    height: 40px;
    width: 1px;
    border-right: 2px solid #82AABE;
    top: 70px;
    left: 35px;
    z-index: -1;
}
.row .col.header-bu.lpdc .iwithtext .iwt-icon:after{
    border-right: 2px solid #E9AC13;
}
.row .col.header-bu.plastic .iwithext .iwt-icon:after{
    border-right: 2px solid #558C78;
}
.row .col.header-bu.foundry .iwithtext .iwt-icon:after{
    border-right: 2px solid #C86464;
}

.row .col.header-bu .iwithtext:last-of-type .iwt-icon:after{
    content:none;
}
.row .col.header-bu .iwithtext .iwt-icon img:not([srcset]){
    width: 70px;
    margin-bottom: 0;
}
.row .col.header-bu .iwithtext .iwt-text{
    width: calc(100% - 70px);
    padding-left: 20px;
}
.row .col.header-bu .iwithtext .iwt-text h3{
    margin-bottom: 0;
    line-height: 1;
}

/*** fancy bu ***/

#ajax-content-wrap .fancy-bu .nectar-fancy-box[data-style=hover_desc] .box-bg:before,
#ajax-content-wrap .fancy-bu .nectar-fancy-box[data-style=hover_desc] .box-bg:after,
#ajax-content-wrap .related .nectar-fancy-box[data-style=hover_desc] .box-bg:before,
#ajax-content-wrap .related .nectar-fancy-box[data-style=hover_desc] .box-bg:after{
    height:100%;
}

#ajax-content-wrap .nectar-fancy-box[data-style="hover_desc"][data-color].hover_color_82aabe .box-bg:after{
    background-color: #82AABE !important;
    background:#82AABE;
}
#ajax-content-wrap .nectar-fancy-box[data-style="hover_desc"][data-color].hover_color_e9ac13 .box-bg:after{
    background-color: #E9AC13 !important;
    background:#E9AC13;
}
#ajax-content-wrap .nectar-fancy-box[data-style="hover_desc"][data-color].hover_color_558c78 .box-bg:after{
    background-color: #558C78 !important;
    background:#558C78;
}
#ajax-content-wrap .nectar-fancy-box[data-style="hover_desc"][data-color].hover_color_c86464 .box-bg:after{
    background-color: #C86464 !important;
    background:#C86464;
}
#ajax-content-wrap .nectar-fancy-box[data-style="hover_desc"][data-color].hover_color_325a78 .box-bg:after{
    background-color: #325A78 !important;
    background:#325A78;
}
#ajax-content-wrap .fancy-bu .nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap,
#ajax-content-wrap .related .nectar-fancy-box[data-style=hover_desc]>.inner>.heading-wrap{
    text-align: center;
    background-color: #FFF;
    width: 150px;
    margin: 0 auto;
    border-radius: 50px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--first-color);
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    font-size: .8em;
    padding: 0 10px;
}
.prototyping-listing ul,
.foundry-listing ul{
    margin-bottom:0;
}
.foundry-listing .box-listing-wrap{
    display: block;
}
.foundry-listing .box-listing-wrap .box-listing{
    display: inline-block;
    background-color:#F6E3E4;
    border-radius:50px;
    padding:5px 10px;
    box-shadow: rgba(0, 0, 0, .04) 0 1px 0, rgba(0, 0, 0, .05) 0 2px 7px, rgba(0, 0, 0, .06) 0 12px 22px;
    margin-bottom: 5px;
    margin-top: 5px;
    font-size:.9em;
}
.foundry-listing .fa-circle-o:before {
    content: "\f111" !important;
    color:#C86464;
}
.plastic-listing .fa-circle-o:before {
    content: "\f111" !important;
    color:#558C78;
}
.foundry-listing .nectar-fancy-ul ul li{
    padding-left:25px;
}
.foundry-two-columns ul{
    column-count: 2;
    column-gap: 20px; /* Distanza tra le colonne */
    list-style-position: inside; /* Mantiene i pallini dentro la colonna */
}
.prototyping-listing .box-listing-wrap{
    display: block;
}
.prototyping-listing .box-listing-wrap .box-listing{
    display: inline-block;
    background-color:rgba(50,90,120,.2);
    border-radius:50px;
    padding:5px 10px;
    box-shadow: rgba(0, 0, 0, .04) 0 1px 0, rgba(0, 0, 0, .05) 0 2px 7px, rgba(0, 0, 0, .06) 0 12px 22px;
    margin-bottom: 5px;
    margin-top: 5px;
    font-size:.9em;
}
.prototyping-listing .fa-circle-o:before {
    content: "\f111" !important;
    color:#325A78;
}
.prototyping-listing .nectar-fancy-ul ul li{
    padding-left:25px;
}
.row .col.prototyping-icons .iwithtext .iwt-icon img:not([srcset]){
    width: 65px;
}
.row .col.prototyping-icons .iwithtext .iwt-text{
    padding-left: 85px;
}

/*** gallery ***/

.nectar-flickity:not(.masonry) .flickity-slider .cell{
    border-radius:20px;
    overflow: hidden;
}

/*** mega menu ***/

#header-outer nav .nectar-global-section-megamenu{
    border-radius: 50px !important;
}

.label-menu{
    margin-bottom: 20px !important;
}
.label-menu div{
    background-color:var(--first-color);
    border-radius: 17px;
    padding: 5px 10px;
    text-transform: uppercase;
    display: inline-block;
    color:#FFF;
}
.material .megamenu-custom.wpb_row{
    margin-bottom: 0 !important;
}
.megamenu-custom .widget_nav_menu li:before{
    position: absolute;
    content:'';
    width:4px;
    height:130%;
    background-color:var(--first-color);
    border-radius:20px;
    left:0;
    /* left:-15px; */
    top:-15%;
}
.megamenu-custom .widget_nav_menu li{
    margin-bottom: 20px;
}
.megamenu-custom .widget_nav_menu li:last-of-type{
    margin-bottom: 0;
}
.megamenu-custom .widget_nav_menu li a{
    text-transform: uppercase;
    font-size:1em !important;
    padding-left: 10px;
    color:#000;
}
.mini-megamenu .widget_nav_menu ul{
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    width:350px !important;
}
.mini-megamenu .widget_nav_menu ul li{
    display: inline-block;
}
.mini-megamenu .widget_nav_menu ul li a{
    font-size:.9em !important;
    color:#51555A;
}
body #top nav .sf-menu .megamenu-custom ul .current-menu-item > a{
    color:#000 !important;
}

/*** quote ***/
blockquote{
    padding-left: 0 !important;
}
blockquote::before{
    content:none;
}

/*** piecharts ***/

.piecharts .vc_pie_chart{
    max-width:310px;
    position: relative;
}
.piecharts .vc_pie_chart .vc_pie_wrapper > span.vc_pie_chart_back{
    max-width: 80px;
    max-height:80px;
    border-color: #FFF !important;
    opacity: 1 !important;
    border-width: 2px;
}
.piecharts .vc_pie_chart .vc_pie_wrapper canvas{
    max-width: 80px;
    max-height: 80px;
}
body .vc_pie_chart .vc_pie_chart_value{
    position: absolute;
    left:90px;
    top: 0;
    line-height: 1 !important;
    text-align: left;
    font-size: 3em;
    color:#FFF !important;
    font-weight: 700;
    font-family: Archivo SemiExpanded;
}
body .vc_pie_chart .wpb_pie_chart_heading{
    position: absolute;
    left: 123px;
    bottom: 10px;
    line-height: 1 !important;
    text-align: center;
    background-color:#FFF;
    padding:5px 10px;
    border-radius:50px;
    text-transform: uppercase !important;
    color:var(--first-color) !important;
    font-family: Archivo SemiExpanded;
    letter-spacing:0;
}
/*** line ***/
.line-custom-wrapper{
    position: absolute;
    top: 39px;
    left: 0;
    width: 100%;
}
.custom-line{
    border-bottom: 2px solid #000;
    width: 72%;
    margin: 0 auto;
}
.custom-line.line-hpdc{
    border-color:#82AABE;
}
.custom-line.line-lpdc{
    border-color:#E9AC13;
}
.custom-line.line-plastic{
    border-color:#558C78;
}
.custom-line.line-generic{
    width:80%;
    border-color:#005EBC;
}

/*** button hp ***/

.button-hp{
    position: absolute !important;
    top: auto !important;
    bottom: 20px;
}

/*** subline ***/

h2 span.subline{
    color:#51555A !important;
    font-size: 16px;
    font-family: Archivo;
}

/*** sgvs bu ***/

.sgvs-top:after{
    content:'';
    position: absolute;
    top: 0;
    right: -400px;
    width:600px;
    height: 600px;
    z-index: 1000;
    background-size: contain;
    background-repeat: no-repeat;
}
.sgvs-hpdc:after{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/header-bu.png');
}
.sgvs-lpdc:after{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/header-lpdc.png');
}
.sgvs-plastic:after{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/header-plastic.png');
}
.sgvs-foundry:after{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/header-foundry.png');
}
.sgvs-prototyping:after{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/header-prototyping.png');
}
/*** sgvs generic ***/
[class*="sgvs-generic"]:before{
    content:'';
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
.sgvs-generic:before{
    top: -100px;
    width: 650px;
    height: 850px;
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-generic.png');
    z-index: 10;
}
.sgvs-generic.right:before{
    right:-650px;
}
.sgvs-generic_01:before{
    left: -700px;
    top: -100px;
    width: 650px;
    height: 850px;
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-generic_01.png');
}

/*** sgvs category ***/
[class*="sgvs-category"]:before{
    content:'';
    position: absolute;
    z-index: 1;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
.sgvs-category:before{
    top: -500px;
    left: -500px;
    width: 650px;
    height: 850px;
}
.sgvs-category.sgvs-hpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_hpdc_01.png');
}
.sgvs-category.sgvs-lpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_lpdc_01.png');
}
.sgvs-category.sgvs-plastic:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-plastic_01.png');
}
.sgvs-category.sgvs-foundry:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_foundry_01.png');
}
.sgvs-category.sgvs-prototyping:before{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-prototype_01.png');
}
.sgvs-category_01:before{
    top: 350px;
    right: -700px;
    width: 650px;
    height: 850px;
}
.sgvs-category_01.sgvs-hpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_hpdc_02.png');
}
.sgvs-category_01.sgvs-lpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_lpdc_02.png');
}
.sgvs-category_01.sgvs-plastic:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-plastic_02.png');
}
.sgvs-category_01.sgvs-foundry:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_foundry_02.png');
}
.sgvs-category_01.sgvs-prototyping:before{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-prototype_02.png');
}

.sgvs-category_02:before{
    top: 200px;
    left: -700px;
    width: 650px;
    height: 850px;
}
.sgvs-category_02.sgvs-hpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_hpdc_03.png');
}
.sgvs-category_02.sgvs-lpdc:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_lpdc_03.png');
}
.sgvs-category_02.sgvs-plastic:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-plastic_03.png');
}
.sgvs-category_02.sgvs-foundry:before{
    background-image:url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs_foundry_03.png');
}
.sgvs-category_02.sgvs-prototyping:before{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-prototype_03.png');
}
/*** news ***/

.masonry.material .masonry-blog-item .inner-wrap{
    border-radius:20px;
    box-shadow: 0 1px 15px rgba(0, 0, 0, .14);
}

/*** footer ***/
.footer a{
    transition: all .3s ease-in-out;
}
.footer a:hover{
    color:#FFF !important;
    opacity: .9;
    transition: all .3s ease-in-out;
}

/*** sgvs hp ***/

[class*="sgvs-hp"]:before{
    content:'';
    position: absolute;
    z-index: 1;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
.sgvs-hp-01:before{
    top: 0;
    left: -612px;
    width: 650px;
    height: 850px;
}
.sgvs-hp-01.sgvs-star-01:before{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-star-left.png');
}
.sgvs-hp-02:before{
    top: 0;
    right: -650px;
    width: 650px;
    height: 850px;
}
.sgvs-hp-02.sgvs-star-02:before{
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-star-top.png');
}
.sgvs-hp-03:before{
    top: 0;
    right: -550px;
    width: 550px;
    height: 650px;
}
.sgvs-hp-03.sgvs-star-03:before{
    background-image: url('../images/Block 4.jpg');
}
.sgvs-pupazzo:before{
    content:'';
    position: absolute;
    z-index: 9999;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    top: -100px;
    right: -430px;
    width: 550px;
    height: 650px;
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-pupazzo.png');
}

.pupazzo-01:before{
    top: 80px;
    right: -450px;
}
.pupazzo-02:before{
    top:-300px;
}
.sgvs-bianco:before{
    content:'';
    position: absolute;
    z-index: 10;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    top: -70px;
    left: -500px;
    width: 700px;
    height: 650px;
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-bianco.png');
}
@media screen and (min-width:1920px) and (min-height:1080px){
    .sgvs-pupazzo:before{
        right:-500px;
    }
}
@media screen and (min-width:2000px) and (min-height:1187px){
    .sgvs-pupazzo:before{
        right:-550px;
    }
    .sgvs-hp-01:before{
        left:-750px;
    }
    .sgvs-hp-03:before{
        right: -580px;
    }
}
@media screen and (min-width:2100px){
    .sgvs-hp-01:before{
        left:-800px;
    }
    .sgvs-hp-03:before{
        right: -620px;
    }
}
@media screen and (min-width:2200px){
    .sgvs-hp-01:before{
        left:-850px;
    }
    .sgvs-hp-03:before{
        right: -650px;
    }
}
@media screen and (max-width:1400px){
    .sgvs-pupazzo:before{
        content:none;
    }
}
[class*="sgvs-light-blue"]:before{
    content:'';
    position: absolute;
    z-index: 10;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
[class*="sgvs-light-blue"]:after{
    content:'';
    position: absolute;
    z-index: 10;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}
.sgvs-light-blue-sx:before{
    /* top: -100px; */
    /* left: -500px; */
    top: -30px;
    left: -600px;
    width: 700px;
    height: 800px;
    background-image: url('../images/Block 1.jpg');
}
.sgvs-light-blue-dx:after{
    bottom: 0;
    right: -700px;
    width: 700px;
    height: 650px;
    background-image: url('https://www.costampgroup.com/wp-content/uploads/2025/03/sgvs-light-blue-sx.png');
}
.sgvs-news:before{
    top: 0;
    left: -600px;
}

.sgvs-home-2:before{background-image: url('../images/Block 2.jpg');top: 50%;right: -35%;left: auto;transform: translate(0, -50%);z-index: -1;}
#scroll-animation-section-1743515776{overflow: unset;}
.sgvs-home-3:before{background-image: url('../images/Block 3.jpg');width: 550px;}
/*** bisione ***/

.sequence-image{
    padding-top: 0;
    margin-top: 0 !important;
    min-height:80vh;
}

/*** button custom ***/

.button-custom{
    border-color: #005ebc !important;
    color: #005ebc !important;
    border-radius: 200px !important;
    -webkit-border-radius: 200px !important;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 9px;
    padding-bottom: 9px;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 1px solid;
    text-decoration: none !important;
    font-size:12px;
}
.button-custom:hover{
    background-color: #005ebc !important;
    color:#FFF !important;
}

/*** mobile opacity ***/

@media screen and (max-width:1024px){
    .opacity-mobile-bg .column-image-bg:before{
        content:'';
        background-color:rgba(0,0,0,.3);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .logo-adv{
        text-align: center !important;
    }
    body .wpb_column.instance-17:hover > .vc_column-inner > .column-bg-overlay-wrap > .column-bg-overlay,
    body .wpb_column.instance-18:hover > .vc_column-inner > .column-bg-overlay-wrap > .column-bg-overlay,
    body .wpb_column.instance-19:hover > .vc_column-inner > .column-bg-overlay-wrap > .column-bg-overlay,
    body .wpb_column.instance-20:hover > .vc_column-inner > .column-bg-overlay-wrap > .column-bg-overlay,
    body .wpb_column.instance-21:hover > .vc_column-inner > .column-bg-overlay-wrap > .column-bg-overlay{
        opacity: .7 !important;
    }
}

/*** pagination ***/

.nectar-flickity[data-control-style=material_pagination] .flickity-page-dots, .nectar-flickity[data-controls=material_pagination] .flickity-page-dots{
    bottom: 0 !important;
}

@media screen and (max-width: 1024px){
    .slider-mobile .row-bg.viewport-phone.using-image{
        background-position: 61% 100% !important;
    }
}

/*** news highlights ***/

.categoria-highlights .meta-date{
    display: none !important;
}
.single.single-post .nectar-social{
    display: none;
}

/*** lingua off canvas ***/

.off-canvas-menu-container .wpml-ls-item{
    margin-bottom: 40px !important;
}


/* Font big size slider */
.slider-f-big-size strong.big-size{
    font-size: 125% !important;
}
@media screen and (min-width: 1025px){
    .slider-f-big-size strong.big-size{
        font-size: 140% !important;
    }
}
.slider-f-big-size p:last-of-type{
    font-size: 140% !important;
    font-weight: 700;
}