@charset "UTF-8";


html {
  font-size: 16px;
}


body {
  font-size: 18px;
  line-height: 1.6;
  font-weight: 400;
  color: #524f4f;
  overflow-x: hidden !important;
}


.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.1;
  font-weight: 500;
}
/*font*/
.poppins-thin {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: normal;
}


.poppins-extralight {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: normal;
}


.poppins-light {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal;
}


.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}


.poppins-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}


.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}


.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
}


.poppins-extrabold {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: normal;
}


.poppins-black {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: normal;
}


.poppins-thin-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: italic;
}


.poppins-extralight-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: italic;
}


.poppins-light-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: italic;
}


.poppins-regular-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: italic;
}


.poppins-medium-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: italic;
}


.poppins-semibold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: italic;
}


.poppins-bold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
}


.poppins-extrabold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
}


.poppins-black-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: italic;
}


/* Menu */
#mod-menu1 {
    display: flex;
    align-items: center;
    gap: 2rem;
}


#mod-menu1 > li {
    position: relative;
}


#mod-menu1 > li > a,
#mod-menu1 > li > button .mod-menu__heading {
    color: #161d29;
    text-decoration: none;
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: .3px;
    transition: all .3s ease;
    position: relative;
    text-transform: uppercase;
}


/* Linea animata */


#mod-menu1 > li > a::after,
#mod-menu1 > li > button .mod-menu__heading::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background: #161d29;
    transition: width .3s ease;
}


/* Hover */
#mod-menu1 > li:hover > a,
#mod-menu1 > li:hover > button .mod-menu__heading {
    color: #161d29;
}


#mod-menu1 > li:hover > a::after,
#mod-menu1 > li:hover > button .mod-menu__heading::after {
    width: 100%;
}


/* Voce attiva 
#mod-menu1 > li.active > a,
#mod-menu1 > li.current > a {
    color: #161d29;
}


#mod-menu1 > li.active > a::after,
#mod-menu1 > li.current > a::after {
    width: 100%;
}
*/
/*sottomenu desk mobile*/
/* ===== DESKTOP ===== */
/* BASE */
#mod-menu1 .deeper {
    position: relative;
    display: inline-flex;
    align-items: center;
}


/* SUBMENU: stato base SEMPRE nascosto */
#mod-menu1 .mod-menu__sub {
    position: absolute;
    top: 100%;
    left: 0;


    min-width: 240px;


    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);


    transition: all .25s ease;


    z-index: 9999;


    /* IMPORTANTISSIMO: annulla eventuali display Joomla */
    display: block !important;
    pointer-events: none;
}


/* HOVER ATTIVO */
@media (min-width: 992px) {


    #mod-menu1 .deeper:hover > .mod-menu__sub,
    #mod-menu1 .deeper:focus-within > .mod-menu__sub {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
    }


}


#mod-menu1 .mod-menu__sub[aria-hidden="true"] {
    display: block !important;
}


/*sotto menu*/
ul.mod-menu__sub{background-color: #fff; padding: 20px 10px;}
ul.mod-menu__sub li{
    padding: 10px 5px;
}
ul.mod-menu__sub li a, ul.mod-menu__sub li a:link{
    text-decoration: none; color: #161d29; text-transform: uppercase;
    position: relative;
    display: inline-block;
    padding-bottom: 4px;
}
/* linea animata */
ul.mod-menu__sub li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;


    width: 0;
    height: 2px;
    background: #161d29;


    transition: width .3s ease;
}


/* hover */
ul.mod-menu__sub li a:hover::after {
    width: 100%;
}





.header-area:has(#mod-menu1:hover) {
    background: #fff;
}
.bg-blu{background-color: #161d29;}
.bg-azzurro{background-color: #5897d047;}
.text-blu{color: #161d29;}
.text-azzurro{color: #5897d0;}


.navbar .logo {
  position: relative;
}
.w-100px {
  width: 100px;
}
img {
  max-width: 100%;
  height: auto;
}


/**/


.carousel-item:before,
.imgarticolo:before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background:#214783;
  opacity: 0.5;
  z-index: 1;
}
#carouselProd .carousel-item:before{content: unset;}


.header-area{
  z-index: 1020;
  position: fixed;
  top: 0;
  width: 100%;
  /*background-color: #ffffffb2;*/
  background-color: #fff;
}
#cmslideh {
    height: 85vh;
    overflow: hidden;
    background: #000;
}


#cmslideh .carousel-inner,
#cmslideh .carousel-item {
    height: 100%;
}


/* TRANSIZIONE MODERNA */
#cmslideh .carousel-item {
    opacity: 0;
    transform: scale(1.12);
    transition:
        opacity 1.8s ease,
        transform 7s ease;


    display: block;
    position: absolute;
    inset: 0;
}


/* slide attiva */
#cmslideh .carousel-item.active {
    opacity: 1;
    transform: scale(1);
    z-index: 2;
}


/* immagini */
#cmslideh .carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;


    filter:
        brightness(.82)
        contrast(1.05)
        saturate(1.1);
}


/* overlay cinematografico */
#cmslideh::after {
    content: "";


    position: absolute;
    inset: 0;


    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,.15),
            rgba(0,0,0,.35)
        );


    z-index: 3;
    pointer-events: none;
}


.text-red{color: #161d29;}
.bg-red{background-color: #161d29;}
/**/
/* contenitore */
.showcase-slider {
    padding: 80px 0;
}


/* item base */
.showcase-slider .item {
    border-radius: 24px;
    overflow: hidden;


    transform: scale(.82);
    opacity: .45;


    transition: all .6s ease;
}


/* immagine */
.showcase-slider .item img {
    width: 100%;
    height: 550px;
    object-fit: cover;
}


/* slide centrale attiva */
.showcase-slider .owl-item.active.center .item {
    transform: scale(1);
    opacity: 1;
}


/* laterali */
.showcase-slider .owl-item.active .item {
    transform: scale(.88);
    opacity: .7;
}


/* spacing */
.showcase-slider .owl-stage-outer {
    overflow: visible;
}



@media (width >= 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1500px;
  }
}



.showcase-slider .owl-stage-outer {
    overflow: visible;
}


.showcase-slider {
    overflow: hidden;
}
.showcase-slider .center .item {
    transform: scale(1);
    opacity: 1;
}
/*


.showcase-slider {
    width: 100%;
    overflow: hidden;
    padding: 60px 0;
}


.showcase-slider .owl-stage-outer {
    overflow: visible;
}


.showcase-slider .item {
    height: 500px;
    border-radius: 24px;
    overflow: hidden;


    transform: scale(.85);
    opacity: .5;


    transition: all .5s ease;
}


.showcase-slider .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}




.showcase-slider .center .item {
    transform: scale(1);
    opacity: 1;
}
*/
.full-width {
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw)
}


.img-border{
border-radius: 24px;
  overflow: hidden;
  transform: scale(.82);
  transition: all .6s ease;
  }


  .cta-secondarie {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    background-color: #ffffff;
    color: #161d29;
    border: 2px solid #161d29;
    /*border-radius: 999px;*/
    border-radius: 15px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(226, 6, 19, 0.08);
}


.cta-secondarie:hover {
    background-color: #161d29;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(6, 6, 19, 0.25);
}


.cta-secondarie:active {
    transform: translateY(0);
}


.cta-secondarie:focus-visible {
    outline: 3px solid rgba(6, 153, 226, 0.25);
    outline-offset: 4px;
}






.cta-primaria {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    background-color: #ffffff;
    color: #fff;
    border: 2px solid #161d29;
    /*border-radius: 999px;*/
    border-radius: 15px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(226, 6, 19, 0.08);
    background-color: #161d29;
}


.cta-primaria:hover {
    background-color: #fff;
    color: #161d29;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(226, 6, 19, 0.25);
}


.cta-primaria:active {
    transform: translateY(0);
}


.cta-primaria:focus-visible {
    outline: 3px solid rgba(226, 6, 19, 0.25);
    outline-offset: 4px;
}










.feature-card {
    height: 100%;
    text-align: center;
    padding: 24px;
    background: #fff;
    border-radius: 20px;
    transition: all .3s ease;
}


.feature-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0,0,0,.08);
}


.feature-image {
    width: 90px;
    height: 90px;
    object-fit: cover;
    border-radius: 18px;
    margin-bottom: 20px;
}


.feature-card h3 {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 12px;
    color: #222;
}


.feature-card p {
    margin: 0;
    color: #666;
    line-height: 1.6;
    font-size: 0.95rem;
}
/*versione cerchio img




.feature-image {
    width: 100px;
    height: 100px;
    object-fit: cover;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 50%;
    margin-bottom: 20px;
    transition: all .3s ease;
}


.feature-card:hover .feature-image {
    background: #161d29;
    transform: scale(1.08);
}








*/
.process-list {
    list-style: none;
    margin: 0;
    padding: 0;
    max-width: 900px;
}


.process-list li {
    display: flex;
    gap: 24px;
    align-items: flex-start;
    position: relative;
    padding-bottom: 40px;
}


.process-list li:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 28px;
    top: 70px;
    width: 2px;
    height: calc(100% - 40px);
    background: #e5e7eb;
}


.step-number {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: #111827;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 1px;
}


.step-content h3 {
    margin: 0 0 8px;
    font-size: 1.25rem;
    font-weight: 600;
    color: #111827;
}


.step-content p {
    margin: 0;
    color: #6b7280;
    line-height: 1.7;
    font-size: 1rem;
}


@media (max-width: 768px) {
    .process-list li {
        gap: 18px;
        padding-bottom: 30px;
    }


    .step-number {
        width: 48px;
        height: 48px;
        font-size: 0.9rem;
    }


    .process-list li:not(:last-child)::after {
        left: 23px;
        top: 60px;
    }


    .step-content h3 {
        font-size: 1.1rem;
    }
}


/*blocco full col-md-6 allineato container*/
.content-left{
   /* max-width: 660px;*/
    max-width: 760px;
    margin-left: auto;
}
.content-right{
   /* max-width: 660px;*/
    max-width: 760px;
    margin-right: auto;
}
/*ul chisiamo*/
.service-list {
    list-style: none;
    padding: 0;
    margin: 0;
}


.service-list li {
    padding: 1rem 1.25rem;
    margin-bottom: .75rem;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 12px;
    color: #fff;
    backdrop-filter: blur(10px);
    transition: all .3s ease;
}


.service-list li:hover {
    background: rgba(255,255,255,.14);
    transform: translateX(6px);
}


.service-list li::after {
    content: "\F144"; /* arrow-up-right */
    font-family: "bootstrap-icons";


    position: absolute;
    top: 50%;
    right: 1rem;


    width: 42px;
    height: 42px;


    display: flex;
    align-items: center;
    justify-content: center;


    transform: translateY(-50%);


    border-radius: 50%;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.2);


    color: #fff;
    font-size: 1rem;


    transition: all .3s ease;
}


/*hero-parallax */
.hero-parallax {
    position: relative;
    height: 70vh;
    overflow: hidden;
}


.hero-image {
     position: absolute;
    inset: 0;
    width: 100%;
    height: 120%;
    object-fit: cover;
    will-change: transform;
}


.hero-overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}


.com-content-article .article-content {






    position: relative;
    background: #fff;
    margin-top: -120px;
    border-radius: 20px 20px 0 0;
    z-index: 20;
    padding: 3rem;
}


/*pag interne come lavoriamo*/
.step-orizzontale .process-timeline{
    position:relative;
    display:flex;
    justify-content:space-between;
    gap:2rem;
}


.step-orizzontale .process-line{
    position:absolute;
    top:40px;
    left:10%;
    right:10%;
    height:2px;
    background:#d9d9d9;
    z-index:1;
}


.step-orizzontale .process-step{
    position:relative;
    z-index:2;
    flex:1;
    text-align:center;
}


.step-orizzontale .step-number{
    width:80px;
    height:80px;
    margin:0 auto 1.5rem;
    border-radius:50%;
    background:#fff;
    border:2px solid #000;
    color:#000;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.5rem;
    font-weight:700;
    transition:.3s;
}


.step-orizzontale .process-step:hover .step-number{
    background:#000;
    color:#fff;
    transform:translateY(-8px);
}


.step-orizzontale .process-step h3{
    font-size:1.1rem;
    margin-bottom:.75rem;
}


.step-orizzontale .process-step p{
    font-size:.95rem;
    color:#666;
}
@media (max-width: 991px){


    .step-orizzontale .process-timeline{
        flex-direction:column;
        gap:3rem;
    }


    .step-orizzontale .process-line{
        width:2px;
        height:100%;
        left:40px;
        right:auto;
        top:0;
    }


    .step-orizzontale .process-step{
        text-align:left;
        padding-left:100px;
    }


    .step-orizzontale .step-number{
        position:absolute;
        left:0;
        top:0;
        margin:0;
    }


}




/*problemi*/
.problem-card{
    display:flex;
    gap:1.5rem;
    padding:2rem;
    background:#fff;
    border-radius:20px;
    border:1px solid rgba(0,0,0,.08);
    transition:.3s;
}


.problem-card:hover{
    transform:translateX(10px);
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}


.problem-icon{
    width:70px;
    height:70px;
    flex-shrink:0;
    border-radius:18px;
    background:#f5f7fa;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:1.75rem;
    color:var(--bs-primary);
}


.problem-card h3{
    font-size:1.2rem;
    margin-bottom:.75rem;
}


.problem-card p{
    margin:0;
    color:#666;
}




/*btn mobile*/
.call-pulse{
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#28a745;
    color:#fff;
    border-radius:50%;
    position:relative;
    text-decoration:none;
}


.call-pulse::before{
    content:'';
    position:absolute;
    inset:0;
    border-radius:50%;
    background:#28a745;
    animation:pulse 2s infinite;
    z-index:-1;
}
/*x menu mobile*/
.animated-toggler{
    width:42px;
    height:42px;
    background:none;
    border:none;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:6px;
}


.animated-toggler span{
    display:block;
    width:28px;
    height:2px;
    background:#161d29;
    border-radius:5px;
    transition:.3s;
}


/* menu aperto */
.animated-toggler[aria-expanded="true"] span:nth-child(1){
    transform:translateY(8px) rotate(45deg);
}


.animated-toggler[aria-expanded="true"] span:nth-child(2){
    opacity:0;
}


.animated-toggler[aria-expanded="true"] span:nth-child(3){
    transform:translateY(-8px) rotate(-45deg);
}




/*menu mobile*/
#navmobile {
    padding: 20px;
}


/* Liste */
#navmobile ul,
#navmobile li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}


/* Voci principali */
#navmobile li {
    border-bottom: 1px solid rgba(255,255,255,.08);
}


/* Link */
#navmobile a,
#navmobile .mod-menu__toggle-sub {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: auto;
    padding: 0;
    color: #161d29;
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;
}


/* Stato attivo */
#navmobile .current > a,
#navmobile .active > a {
    color: #161d29;
    font-weight: 600;
}


/* Submenu */
#navmobile .mod-menu__sub {
    margin: 0;
    padding: 0 0 10px 20px;
    position: relative;
    display:block;
    visibility: unset;


    top: unset;
    left: unset;
    min-width: unset;
    z-index: unset;
    opacity: unset;
    width: 100%;
    pointer-events: unset;
}


/* Voci submenu */
#navmobile .mod-menu__sub a {
    min-height: 44px;
    font-size: 15px;
    color: #5897d0;
}


/* Hover */
#navmobile a:hover,
#navmobile .mod-menu__toggle-sub:hover {
    color: #161d29;
}


/* Freccia */
#navmobile .icon-chevron-down {
    opacity: .7;
    font-size: 12px;
    transition: transform .3s ease;
}


#navmobile li {
    border-bottom: 0;
}


#navmobile li + li {
    margin-top: 8px;
}
#navmobile #mod-menu1 .deeper{width: 100%; display:block!important;}



/*consulenza custica pagina 2 tipo*/
.cons_acustica_card{
    background:#fff;
    border:1px solid #e6ebef;
    border-radius:18px;
    padding:40px;
    margin-bottom:35px;
    box-shadow:0 8px 30px rgba(0,0,0,.05);
}


.cons_acustica_title{
    font-size:2rem;
    font-weight:700;
    margin-bottom:15px;
}


.cons_acustica_separator{
    width:70px;
    height:4px;
    background:#161d29;
    border-radius:20px;
    margin-bottom:30px;
}


.cons_acustica_text{
    line-height:1.9;
    color:#4b5563;
    font-size:1.05rem;
}


.cons_acustica_box{
    background:#f8fafc;
    border:1px solid #e8edf2;
    border-radius:14px;
    padding:28px;
    margin-top:35px;
}


.cons_acustica_box h4{
    font-size:1.2rem;
    margin-bottom:20px;
    color:#161d29;
    font-weight:600;
}




.cons_acustica_cta_side{
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:35px 25px;
/*
    border:1px dashed #d7dde5;
    border-radius:16px;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
*/
}

.cons_acustica_cta_side p{
    color:#17324D;
    font-size:1.05rem;
    line-height:1.6;
}

.cons_acustica_cta_side .cta-secondarie{
    margin-top:10px;
}






/* cat home prodotti blk */
:root{
    --ink:#14212B;
    --steel:#55666F;
    --azzurro:#1F6E90;
    --azzurro-deep:#123C4E;
    --chris:#F1F3F3;
    --line:#DCE3E5;
    --metal:#5897d0;
    --radius:3px;
  }
  .pw-wrap{max-width:1500px;margin:0 auto;padding:0 24px;}


  .pw-section{
    padding:3.5rem 0;
    border-bottom:1px solid var(--line);
  }
  .pw-section:last-child{border-bottom:none;}
  .pw-section.is-alt{background:var(--chris);}


  .pw-row{
    display:grid;
    grid-template-columns: 6fr 6fr;
    /*grid-template-columns:5fr 7fr;*/
    gap:4.5rem;
    align-items:center;
  }
  .pw-row.is-reverse .pw-figure{order:2;}
  .pw-row.is-reverse .pw-content{order:1;}


  /* figure with technical crop marks */
  .pw-figure{
    position:relative;
    line-height:0;
  }
  .pw-figure img{
    width:100%;
    height:auto;
    display:block;
    border-radius:var(--radius);
    filter:grayscale(6%);
    transition:transform .5s cubic-bezier(.2,.7,.2,1), filter .5s ease;
  }
  .pw-figure::before,
  .pw-figure::after{
    content:"";
    position:absolute;
    width:22px;
    height:22px;
    border:2px solid var(--metal);
    opacity:0;
    transition:opacity .4s ease, transform .4s ease;
  }
  .pw-figure::before{
    top:-9px; left:-9px;
    border-right:none; border-bottom:none;
    transform:translate(6px,6px);
  }
  .pw-figure::after{
    bottom:-9px; right:-9px;
    border-left:none; border-top:none;
    transform:translate(-6px,-6px);
  }
  .pw-row:hover .pw-figure::before,
  .pw-row:hover .pw-figure::after{
    opacity:1;
    transform:translate(0,0);
  }
  .pw-row:hover .pw-figure img{
    transform:scale(1.015);
    filter:grayscale(0%);
  }


  /* content */
  .pw-content{max-width:560px;}


  .pw-eyebrow{
    display:flex;
    align-items:center;
    gap:.65rem;
    margin-bottom:1.1rem;
  }
  .pw-eyebrow-bar{
    width:0;
    height:2px;
    background:var(--metal);
    transition:width .8s cubic-bezier(.2,.7,.2,1);
  }
  .pw-row.is-visible .pw-eyebrow-bar{width:32px;}
  .pw-eyebrow span{
    font-size:.72rem;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--steel);
  }


  .pw-content h2{
    font-family:'Space Grotesk',sans-serif;
    font-size:1.85rem;
    font-weight:600;
    color:var(--azzurro-deep);
    margin:0 0 .6rem;
    letter-spacing:-.01em;
  }
  .pw-content h3{
    font-family:'Inter',sans-serif;
    font-weight:500;
    font-size:1rem;
    color:var(--steel);
    margin:0 0 1.3rem;
    text-transform:none;
    letter-spacing:0;
  }
  .pw-content p{
    font-size:.98rem;
    line-height:1.7;
    color:var(--ink);
    opacity:.85;
    margin:0 0 1.8rem;
  }


  .pw-cta{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    font-family:'Inter',sans-serif;
    font-weight:600;
    font-size:.92rem;
    color:var(--azzurro);
    text-decoration:none;
    padding-bottom:2px;
    border-bottom:1px solid transparent;
    transition:border-color .25s ease, color .25s ease, gap .25s ease;
  }
  .pw-cta svg{width:16px;height:16px;transition:transform .25s ease;}
  .pw-cta:hover{
    color:var(--azzurro-deep);
    border-bottom-color:var(--azzurro-deep);
    gap:.75rem;
  }
  .pw-cta:hover svg{transform:translateX(2px);}
  .pw-cta:focus-visible{outline:2px solid var(--azzurro);outline-offset:4px;border-radius:2px;}


  /* header for demo */
  .pw-intro{padding:5rem 0 1rem;text-align:center;}
  .pw-intro p{
    font-size:.8rem;
    font-weight:600;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--metal);
    margin:0 0 .8rem;
  }
  .pw-intro h1{
    font-family:'Space Grotesk',sans-serif;
    font-size:2.5rem;
    color:var(--ink);
    margin:0;
    letter-spacing:-.02em;
  }


  @media (max-width:860px){
    .pw-row, .pw-row.is-reverse{
      grid-template-columns:1fr;
      gap:2rem;
    }
    .pw-row .pw-figure, .pw-row.is-reverse .pw-figure{order:1;}
    .pw-row .pw-content, .pw-row.is-reverse .pw-content{order:2;}
    .pw-section{padding:3.75rem 0;}
    .pw-content h2{font-size:1.55rem;}
  }


  @media (prefers-reduced-motion:reduce){
    .pw-figure img, .pw-eyebrow-bar, .pw-cta, .pw-cta svg, .pw-figure::before, .pw-figure::after{
      transition:none !important;
    }
    .pw-eyebrow-bar{width:32px;}
  }



/* FAQ ACCORDION*/

.faqarea {
    max-width: 900px;
    margin: 0px auto;
}

.faqarea .accordion {
    --faq-border: #e4e9ef;
    --faq-blue: #1683b8;
    --faq-text: #263746;
    --faq-bg: #ffffff;
    --faq-open-bg: #f7fafc;
}

/* Singola FAQ */
.faqarea .accordion-item {
    background: var(--faq-bg);
    border: 1px solid var(--faq-border);
    border-radius: 12px !important;
    margin-bottom: 14px;
    overflow: hidden;
    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        transform .25s ease;
}

/* Effetto hover */
.faqarea .accordion-item:hover {
    border-color: #cfdbe5;
    box-shadow: 0 6px 20px rgba(30, 55, 75, 0.07);
}

/* Rimuove eventuali separazioni Bootstrap */
.faqarea .accordion-item:not(:first-of-type) {
    border-top: 1px solid var(--faq-border);
}

/* =========================
   DOMANDA
   ========================= */

.faqarea .accordion-button {
    position: relative;
    display: flex;
    align-items: center;

    padding: 20px 65px 20px 24px;

    background: #fff;
    color: var(--faq-text);

    font-family: inherit;
    font-size: 17px;
    font-weight: 600;
    line-height: 1.45;

    border: 0;
    box-shadow: none !important;

    transition:
        color .25s ease,
        background-color .25s ease;
}

/* Hover domanda */
.faqarea .accordion-button:hover {
    color: var(--faq-blue);
    background: #fbfdfe;
}

/* FAQ aperta */
.faqarea .accordion-button:not(.collapsed) {
    color: var(--faq-blue);
    background: var(--faq-open-bg);
}

/* =========================
   ICONA + / -
   ========================= */
.faqarea .accordion-button::after {
    content: "\f64d";

    width: 38px;
    height: 38px;
    flex: 0 0 38px;

    margin-left: auto;

    background-image: none !important;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #c9d8e1;
    border-radius: 50%;

    color: #1683b8;

    font-family: "bootstrap-icons";
    font-size: 18px;
    line-height: 1;

    transition: all .25s ease;
}

.faqarea .accordion-button:not(.collapsed)::after {
    content: "\f2ea";

    color: #fff;
    background-color: #1683b8;
    border-color: #1683b8;
}


/* =========================
   CONTENUTO
   ========================= */

.faqarea .accordion-collapse {
    background: var(--faq-open-bg);
}

.faqarea .accordion-body {
    padding: 0 24px 26px;

    color: #536371;
    font-size: 16px;
    line-height: 1.7;
}

/* Linea separatrice sotto la domanda */
.faqarea .accordion-button:not(.collapsed) {
    border-bottom: 1px solid #e8eef2;
}

/* Paragrafi */
.faqarea .accordion-body p {
    margin-bottom: 16px;
}

.faqarea .accordion-body p:last-of-type {
    margin-bottom: 18px;
}

/* "In breve:" */
.faqarea .accordion-body strong {
    color: var(--faq-text);
}

/* Lista */
.faqarea .accordion-body ul {
    margin: 18px 0 0;
    padding-left: 20px;
}

.faqarea .accordion-body li {
    margin-bottom: 7px;
    padding-left: 4px;
}

/* =========================
   MOBILE
   ========================= */

@media (max-width: 767px) {

    .faqarea .accordion-item {
        border-radius: 10px !important;
        margin-bottom: 10px;
    }

    .faqarea .accordion-button {
        padding: 17px 58px 17px 18px;
        font-size: 16px;
    }

    .faqarea .accordion-button::after {
        position: absolute;
        right: 17px;

        width: 30px;
        height: 30px;

        font-size: 21px;
    }

    .faqarea .accordion-body {
        padding: 0 18px 22px;

        font-size: 15px;
        line-height: 1.65;
    }
}
/* fine faq" */

.boxprogmisura{
    background-color: #5897d047;
    border-radius: 20px;
    padding: 40px;
}
.vantaggi .card-body{ background-color: #5897d047;}


.img-wrapper {
  overflow: hidden;
  border-radius: 16px;
}

.img-wrapper img {
  display: block;
  width: 100%;
  transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.img-wrapper:hover img {
  transform: scale(1.07) rotate(0.8deg);
}



@media (min-width: 992px) {/*solo desktop */
    .carousel-inner.text-white .poppins-extralight,
    .imgarticolo.hero-parallax .poppins-extralight{
    background-color: #2191f4ab;
    display: inline;
    }
}



@media only screen and (min-device-width : 320px) and (max-device-width : 568px)  { 
    .process-list{display: none;}
}
