@media print { #camo-edit {display: none;} }
/* Cookie bar **/
/*** inizio video e consenso cookie ***/

div.external-blocker {font-family: "Segoe UI", sans-serif; border: 1px solid black!important;width: 100%;height: 315px;padding: 20px 10px 10px 10px;background: #ededed;color: #777;text-align:center; margin-bottom: 20px;}
div.external-blocker > p {margin: 0 0 20px 0;padding: 0}
div.external-blocker > p > a {border: none;text-decoration: underline;color: #2572e3;}
div.external-blocker > p > a:hover {text-decoration: none;}
div.external-blocker > a.cookie_consent_accept_save {display: inline-block; padding: 10px; font-size: 16px; font-weight: 600; text-align: center; text-decoration: none; border-radius: 6px; border: 1px solid #2572e3; background: #2572e3; color: #fff; box-sizing: border-box;margin-bottom: 20px;}
.youtube-preview {cursor:pointer;height: 420px;width: 100%; max-width: 640px;}
section.g10 div.external-blocker {height: 100%;}
body.overlay-active { width: 100% !important;height: 100% !important;overflow: hidden; position: fixed; top: 0; left: 0; z-index: 11000;}
div.cookie_wrap {font-family: "Segoe UI", sans-serif; position: fixed;inset: 0; background-color: rgba(0, 0, 0, 0.6);z-index: 11000;display: flex;justify-content: center;align-items: flex-end;padding: 2rem 0;overflow-y: auto;}
div.cookie_wrap p {font-size: 15px; margin: 0;}
div.cookie_wrap p a {text-decoration: underline;  font-weight: normal; color: #000000;}
div.cookie_wrap p a:hover {text-decoration: none;}

a.cookie_consent_panel_change {color: #2572e3; font-weight: 600; text-decoration: none; margin: 0 auto; display: block; width: fit-content; line-height: 30px; font-size: 15px}
a.cookie_consent_panel_change:hover { text-decoration: underline}

div.cookie_consent {background: white;color: #222;  border-radius: 12px; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); max-width: 680px;  width: 94%;   margin: 20px auto; padding: 2.5rem; z-index: 9999; font-family: "Segoe UI", sans-serif; transition: all 0.3s ease-in-out;}
div.cookie_consent_actions {display: flex; justify-content: space-between; align-items: stretch; flex-wrap: wrap; gap: 1rem; padding-bottom: 1rem; margin:30px 0 0 0; font-weight:700;}
div.cookie_consent_actions a { flex: 1 1 40%; max-width: 200px; white-space: nowrap; padding: 10px 0; font-size: 16px; font-weight: 600; text-align: center; text-decoration: none; border-radius: 6px; border: 1px solid #2572e3; background: #2572e3; color: #fff; box-sizing: border-box;}
div.cookie_consent_actions a:hover { background: #000; border-color: #000; color: #fff;}
div.cookie_consent_actions a.cookie_consent_reject_save, div.cookie_consent_actions a.cookie_consent_selection_save { background: none; color: #000; border-color: #000;}
div.cookie_consent_actions a.cookie_consent_accept_save:hover, div.cookie_consent_actions a.cookie_consent_reject_save:hover, div.cookie_consent_actions a.cookie_consent_selection_save:hover, div.external-blocker > a.cookie_consent_accept_save:hover { background: #000; border-color: #000; color: #fff;}
div.cookie_consent > div.cookie_consent_actions, div.cookie_consent > a.cookie_consent_panel_change {display: none;}

#cookie_consent_title {font-size: 26px; line-height: 30px; font-weight: 600; color: #000000; margin-bottom: 20px;}
#cookie_consent_selection {display: none;}
#cookie_consent_selection p {max-height: 0; overflow: hidden; opacity: 0; margin-bottom: 0; transition: max-height 0.2s ease, opacity 0.2s ease; color: #222;}
#cookie_consent_selection p.visible { max-height: 200px; margin-top: 4px; margin-bottom: 12px; opacity: 1;}
#cookie_consent_selection a.more-info:before { content: "?"; cursor: pointer; color: #a0a0a0; display: inline-block; width: 20px; font-size: 16px; height: 20px; line-height: 18px; border: 1px solid #a0a0a0; border-radius: 50%; text-align: center; margin-left: 5px; font-weight: 400;
}
#cookie_scroll_fade_overlay {position: sticky; bottom: 0; left: 0; width: 100%; height: 30px; pointer-events: none; background: linear-gradient(to bottom, transparent, white 80%); z-index: 2;}

.cookie_consent.customize #cookie_consent_intro {display: none;}
.cookie_consent.customize #cookie_consent_selection { max-height: calc(100vh - 360px); overflow-y: auto; -webkit-overflow-scrolling: touch; display: block; padding-right: 8px;}
.cookie_consent.customize #cookie_consent_selection::-webkit-scrollbar { width: 10px;  background-color: transparent;}
.cookie_consent.customize #cookie_consent_selection::-webkit-scrollbar-track { background-color: #f1f1f1; border-radius: 10px;}
.cookie_consent.customize #cookie_consent_selection::-webkit-scrollbar-thumb { background-color: #000; border-radius: 10px; border: 2px solid #f1f1f1;}
.cookie_consent.customize #cookie_consent_selection::-webkit-scrollbar-thumb:hover { background-color: #174aa3;}
.cookie_consent.customize > a.cookie_consent_panel_change { display: block; }
.cookie_consent.customize > div.cookie_consent_actions { display: flex; margin: 0}
 
div.cookie_consent_option{ display: flex; justify-content: space-between; align-items: center; margin-top: 6px; padding-top: 6px; border-top: solid 1px #cccccc; gap: 6px; flex-wrap: wrap;}
div.cookie_consent_option:first-child { border: none; margin-top: 0; padding-top: 8px;}
div.cookie_consent_option > span.option_title {margin-bottom: 0px; font-size: 16px; font-weight: 400; display: flex; align-items: center; gap: 5px; color: #222;}
div.cookie_consent_option div.cookies-switch { display: flex; align-items: center; gap: 8px;}
div.cookie_consent_option div.cookies-switch .selection_value {order: 0; color:gray; font-size: 15px}
div.cookie_consent_option div.cookies-switch .cookie_consent_toggle {order: 1;}
div.cookie_consent_option div.cookies-switch .selection_value.selected {color:#2572e3;}
div.cookie_consent_option p{margin:8px 0px;clear:both}

a.cookie_consent_toggle, a.cookie_consent_forced{ position:relative; cursor: pointer; background-color: #ccc; -webkit-transition: .4s; transition: .4s; padding: 2px; color: #fff; border-radius: 30px; width: 54px; height:26px; display: inline-block }
a.cookie_consent_toggle:before, a.cookie_consent_forced:before { position: absolute; content: ""; height: 22px; width: 22px; left: 2px; bottom: 2px; background-color: white; -webkit-transition: .4s; transition: .4s; border-radius: 50%; }
a.cookie_consent_toggle.selected:before, a.cookie_consent_forced:before{left:30px; }
a.cookie_consent_forced {background:#2572e3; cursor: not-allowed;opacity: 0.7}
a.cookie_consent_toggle.selected { background:#2572e3; }

@media (max-width: 599px) {    
    div.cookie_consent {padding: 1rem;}
    div.cookie_consent_actions {margin: 12px 0;}
    div.cookie_consent_actions a{padding:8px 0;width: 96%;  display: block;  text-align: center !important;  margin: 6px 0 !important; font-size:16px;line-height: 22px;}        

    #cookie_consent_title {flex-wrap: wrap;font-size: 22px;line-height: 26px;margin-bottom: 0;padding:12px;}
    #cookie_consent_title span{display: block;width:100%;}

    #cookie_consent_intro {padding: 12px 12px 6px 12px;font-size: 15px;line-height: 22px;}
    #cookie_consent_intro p{max-height: 220px; overflow-y: auto; -webkit-overflow-scrolling: touch;}
    #cookie_consent_selection {font-size: 15px; line-height: 22px;}
    #cookie_consent_selection p {margin-bottom: 10px;}
    #cookie_consent_selection p.visible {margin-top: 8px}
    #cookie_consent_selection a.more-info, div.cookie_consent_option div.cookies-switch a {margin-bottom: 0;}

    .cookie_consent.customize #cookie_consent_selection { max-height: calc(100vh - 400px);margin: 0 12px; padding-right: 0;}
    .cookie_consent.customize a.cookie_consent_panel_change {margin-bottom: 6px}
    .cookie_consent.customize > div.cookie_consent_actions {margin: 12px}

    a.cookie_consent_reject_save {margin: 10px 0 20px 0;font-size: 18px;line-height: 26px;padding: 7px 25px;}
    
    div.cookie_consent_option {flex-direction: column; align-items: flex-start;}
    div.cookie_consent_option > span.option_title { font-size: 16px; line-height: 16px; float: none; margin-bottom: 0;}    
    div.cookie_consent_option div.cookies-switch {  margin-top: 0;  align-self: flex-start; }
    div.cookie_consent_option div.cookies-switch .selection_value {order: 2; }    
}

@media (orientation: landscape) and (max-device-width: 899px) {
    div.cookie_wrap {align-items: flex-start; padding-top: 1vh;}
    div.cookie_consent {padding: 1.5rem 2.5rem;}
    div.cookie_consent_actions {padding-bottom: 0;}

    .cookie_consent.customize #cookie_consent_selection {max-height: calc(100vh - 240px);}
}

/*** fine video e consenso cookie ***/

/***zoom image**/
html.camo-bmark #zoom{top:48px}
html.camo-bmark #zoom button{top:58px}
#zoom {	position: fixed;inset: 0px; overflow: scroll; height:100%;  background-color: rgb(0, 0, 0,0.7);	z-index:1000;display:none;   padding-top:40px;	padding-left:15px; padding-right: 15px;}
#zoom button {position: fixed; top:10px;right: 25px; font-size:40px;line-height: 36px;    background:transparent;   color:var(--c1);min-width:50px}	
#zoom img {max-width: 100%;height: auto; margin:40px auto;display: block;}
.overlay-active{width:100% !important;height:auto!important;overflow:hidden;position:fixed;}
.overlay-active #zoom {display:block;}
.btitle{display: block}
/***zoom image*/


/**slider**/

/***/

/**menù**/

#intestazione.fixed-top {position: fixed;right: 0;left: 0;z-index: 1030;}
.fixed-top .logobig{height: 60px; width: auto}
body.open .content-menu .main-menu {
  right: 0%;
  ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  z-index:299;
}
 .active.responsive-nav::before {transform: translateY(8px) rotate(135deg);}
 .active.responsive-nav::after {transform: translateY(-9px) rotate(-135deg);}
 .active.responsive-nav span {transform: scale(0);}
 .active.responsive-nav span, .active.responsive-nav::after, .active.responsive-nav::before {background: var(--c1);border: 1px solid var(--c1);}
 .fixed-top .active.responsive-nav span, .fixed-top .active.responsive-nav::after, .active.responsive-nav::before {background: var(--c1);border: 1px solid var(--c1);}
#menu .separa:before{content: "";display: block;left:0; top:10px; width: 100%;height: 20px;background: url("../img/background/scalino-menu.svg") no-repeat -90px top;background-size: 600px;position: absolute; color:var(--c3)}
#menu .separa{position: absolute; padding-top: 30px;width: 100%;bottom:40px;color:var(--c3)}
.main-menu .last-info{position: absolute;bottom:10px;display: block; color:var(--c3)}
#menu .tel,  #menu .mail,#menu .tel:visited,#menu .mail:visited{color:var(--c3)}
#menu .tel:hover, #menu .mail:hover{opacity: 0.8}
body.open .content-menu .main-menu{}
/** gallery**/
.gallery ul li:before{content: "";width:0;padding-left:0;}
/***download***/
section.download{padding-top:20px;padding-bottom: 30px}
section.download >.title,.vertical-table-files > .title,section.gallery >.title,.plain-table >.title,.vertical-table >.title,section.module>.title{display: block;font-family: var(--f2);text-transform: none;font-weight:400;padding:20px 0 10px;font-size:28px; line-height: 32px; margin-bottom: 10px;}
section.download .description{display:none;}
section.download li:before{content:""}
section.download li{display: block;position:relative;font-family: var(--f1);font-style: normal;padding-left:30px;min-height:30px; padding-bottom: 5px;padding-top:5px;}
section.download .object-item a,section.download .object-item a:visited{color:var(--c3)}
section.download .object-item a:hover{color:var(--c5)}
.file-size{color:var(--c5); font-size:16px;}
.file-size:before{content:"("}
.file-size:after{content:")"}
.download .file {position: relative;display: block}
.pdf:before,.doc:before,.docx:before,.xls:before,.xlsx:before,.ppt:before,.zip:before{display: block; content:"";width:35px;height:35px;position: absolute;left:0; top:2px;}
.pdf:before{background:url("../img/background/file-pdf.svg") no-repeat top}
.doc:before, .docx:before{background:url("../img/background/file-word.svg")no-repeat top}
.xls:before, .xlsx:before{background:url("../img/background/file-excel.svg")no-repeat top}
.ppt:before{background:url("../img/background/file-ppt.svg")no-repeat top}
.pp_pic_holder .ppt{ display: none !important;}
 .zip:before{background:url("../img/background/file-zip.svg")no-repeat top}
.wrap-contact .module .title {text-align: center}
/**homepage**/
a.leggi{font-weight: 700;display: inline-block;margin-top: 10px; padding-right: 40px;padding-left: 40px; background: url("../img/background/arrow-right.svg") no-repeat;background-position: calc(90%) center;background-size: contain;  transition: background-position 0.5s ease;overflow: visible;}
a.leggi:visited,a.leggi:hover{color:var(--c4)}
a.leggi:hover,.allclick:hover a.leggi { background-position: right center;overflow: visible}


/*pagina dettaglio*/

.detail .wrap-archive{font-weight: 300}
.detail .block-maps{padding-top: 20px;}
.detail .block-maps{padding-bottom: 30px;}
.detail iframe {margin-bottom: 0}
.detail .file{display: block; color:var(--c2);padding-left: 40px;min-height: 40px}
.detail .file:hover{color:var(--c4)}
.detail .download-content .file-size {margin: 0}
.detail .download-content .odd {margin-bottom: 15px}

.blog.detail .content::before{content: ""}
article > .product-gallery {border-bottom: 1px solid black;}
.request-sent p, .homepage .attributi .prezzo {text-align: center;margin: auto}
.detail .attributo{min-width:30%;text-align: left;}
.detail .attributo.prezzo{min-width: 100%;margin-bottom:15px;}
.detail .attributo .label{display: block}
.request-sent::before {content:"Grazie!";font-weight: 800;font-size: 30px;line-height: 34px;margin-bottom: 20px;text-transform: none;color: var(--c2);display: block;text-align: center}


form {display: flex;flex-direction: column;}
form .form-buttons {text-align: center}
form .check-block label {margin-bottom: 0px;font-size: 15px}
form .input-checkbox {/*justify-content: center;*/display: flex;}
form textarea {resize: vertical;}
article .title,article .abstract{display: block}
aside.related{background: var(--c2)} 

/**pagine**/
.mappa iframe{margin-bottom: 0}
.contatti section.mappa .block{max-width: none;padding-bottom: 0}


.chi .back-c6 .media-wrap{margin: 25px 0}
.ico-settori .content a,.ico-settori .content a:visited,.ico-settori .content a:hover{font-weight: var(--w2);font-size: 22px;line-height: 26px;color:var(--c3)}
.ico-settori .media-content-wrap{display: flex;flex-wrap: wrap;column-gap:20px;}
.ico-settori .allclick:hover a {color:var(--c5)}
.ico-settori {margin-bottom: 30px}
.ico-settori .media{padding: 10px 0 0;text-align: center;width: 80px;}
.ico-settori .media img{width: 100%; height: auto}
.ico-settori .wrap-content{width: calc(100% - 100px);align-self: flex-end}
.ico-settori .wrap-content p{margin-bottom: 0}
.riga{position: relative}
.riga::before {	content: "";	width: 100%;background: url("../img/background/scalinoYel.svg") no-repeat;	display: block;	height: 40px;	background-position: center;	background-size: 100% 100%;	position: absolute;	top: 9%;}
.servizi .page>.btn-ser,.servizi .page>.txt-ser,.page>.ico-settori{display: none}
.servizi .contbs{background: var(--c3)}
.servizi .contbs .cont{padding-left: 10px; padding-right: 10px;background: var(--c1);  width: calc(100vw - 40px);  max-width: 1390px;  margin-left:20px;  position: relative; display: flex; column-gap: 10px;align-items: flex-start;margin-top: 10px;height:320px}
.cont button{top:-40px}
.servizi .cont.slick-slider .slick-list{min-height: 350px}
@media (min-width: 1400px) {
  .servizi .contbs .cont {flex-wrap: wrap; overflow: visible;}
}
/* < 1400: slick gestisce lo scorrimento */
@media (max-width: 1399px) {
  .servizi .contbs .cont { flex-wrap: nowrap; }
}
.servizi section.btn-ser .block { margin-top: 0; width: 220px;  height: 320px;  position: relative;  overflow: hidden;transition: transform 300ms ease;}
.servizi section.btn-ser.active .block { transform: translateY(30px);}
.servizi section.btn-ser .media-wrap,.servizi section.btn-ser .media {  width: 100%;  height: 100%;}
.servizi section.btn-ser .media {position: relative;  overflow: hidden;}
.servizi section.btn-ser .media:hover{opacity: 0.8}
.cont .slick-slide > div {margin-right: 10px;}
.servizi section.btn-ser img {height: 320px;  width: auto;  max-width: none; position: absolute;  top: 0;  left: 50%;  transform: translateX(-50%);}
.contts{padding: 60px 0 30px}
.contts .gallery{padding-left: 0}
.txt-ser{width: calc(100vw - 40px);padding-left: 20px; padding-right: 20px}
.servizi .riga header{padding-top: 30px}
.servizi .riga::before {top:0%}
/* =========
   TITOLO verticale in basso a sinistra con padding 10
========= */
.servizi section.btn-ser header { position: absolute;  left: 10px;  bottom: 10px;  z-index: 2;   display: flex;  align-items: flex-end; box-sizing: border-box; }
.servizi section.btn-ser header .title {font-size: 25px; color:var(--c1);writing-mode: vertical-rl;	transform: rotate(180deg);	white-space: nowrap;	line-height: 1;}
.servizi section.btn-ser header .title span{display: block}

/* =========
   TXT-SER: inizialmente nascosti + reveal graduale
========= */
.servizi .contts section.txt-ser { opacity: 0; max-height: 0; overflow: hidden; pointer-events: none; transition: opacity 2s cubic-bezier(0, 0, 0.2, 1);}

/* quando attivo */
.servizi .contts section.txt-ser.active { opacity: 1; pointer-events: auto;}
.servizi .content-loghi{padding:0px 20px 20px;display: flex;gap: 10px;justify-content: center;flex-wrap: wrap;align-items: center}


/***footer***/
footer a,footer a:visited, footer a:hover{color:var(--c6); text-decoration:none} 
footer a:hover{color:var(--c1)}
footer mark{font-weight:var(--w2);}
footer mark {color: var(--c1);font-size: 18px;line-height: 20px;padding-top:0px;padding-bottom: 5px}
.fcont span.email{display: block}

footer {background: url("../img/background/bg-footer.jpg") no-repeat center top;background-size: cover;color:var(--c1);font-size: 16px; line-height: 22px}
footer .finfo .flink {float: right}
footer .container {padding-top: 20px;padding-bottom: 20px;}
footer p {margin: 0px; padding: 0px;color: var(--c1);}
.flink {padding-top: 15px;}
footer p, footer {text-align: center}
.footerlogo{width:180px;margin: 15px auto 25px;display: block}
.credit p{text-align: right;font-size: 13px;line-height: 18px;}
footer .visible-xs{display: none}
.xsacapo{display: block}

/***home **/
.home .g3 .first{background: var(--c3);}
.home .g3 .first.block .title{position: relative; color:var(--c1);font-size:34px; line-height: 38px;padding:20px;bottom:0; top:auto;left:0}
.home .g3 .block .title a,.home .g3 .block .title a:visited,.home .g4 .block .title a,.home .g4 .block .title a:visited{color:var(--c1)}
.home .g3 .block,.home .g4 .block{position: relative;margin-top: 4px; margin-bottom: 4px}
.home .g4 .block.first{margin-top: 0}
.home .g3 .block .title,.home .g4 .block .title{position: absolute;color:var(--c1);left:20px; top:15px;text-transform: uppercase}
.home .g3 .block .title span,.home .g4 .block .title span{display: block}
.home .g3 .block1 .title,.home .g4 .block6 .title,.home .g3 .block1 .title a,.home .g4 .block6 .title a,.home .g3 .block1 .title a:visited,.home .g4 .block6 .title a:visited{color:var(--c3)}
.home .g3 .allclick:hover,.home .g4 .allclick:hover{opacity: 0.8}
.home .g3 .block1 .title{top:auto;bottom:15px}
.home .g4 .block4 .title{top:auto;bottom:15px;left: auto;right:15px}
.home .g5 {padding: 30px 0 20px;position: relative}
.home .g5 .block,.home .g6 .block{padding-left: 20px; padding-right: 20px}
.home .g5:before{content:"";width: 100%;background: url("../img/background/scalinoYel2.svg") no-repeat;display: block;height: 40px;	background-position: 45% center;background-size: 100% 100%; position: absolute;top:35%}
.home .g5 .theme,.riga .theme{text-transform: uppercase;margin-bottom: 5px}
.home .g5 ol{ list-style-type: none;counter-reset: step;}
.home .g5 ol li{margin-top: 20px;color:var(--c5);font-weight: var(--w3);counter-increment: step;position: relative}
.home .g5 ol li strong{font-size: 26px;line-height:36px; padding-left: 50px; display: block;color:var(--c3);margin-bottom: 5px }
.home .g5 ol li::before {content: counter(step) ".";position: absolute;	left: 0;top: -7px;	font-size: 40px;font-weight: var(--w2);	line-height: 1;	color: var(--c5);}
.home .g6{background: var(--c6);margin-top: 20px}
.home .g6 .title{font-size: 16px; line-height: 18px; color:var(--c5); text-transform: uppercase; font-weight: var(--w3)}
.home .g6 .block{margin-top: 20px; padding-top: 20px; padding-bottom: 20px}
.home .g7{background: var(--c6);padding-bottom: 20px}
.home .g7c .cslick {max-height: 85px;width: 100%;max-width:calc(100vw - 40px); overflow: hidden;margin-left: 20px;}
.home .g7c .slick-slide{width: auto!important}
.g7 .cslick {  touch-action: pan-y;}
.home .g7c .media{margin-left: 5px; margin-right: 5px;text-align: center}

@media (min-width: 320px) and (max-width:500px) {
	.content-loghi section{max-width: 48%}
}
@media (min-width: 320px)and (max-width:767px) {  
	.home .g3 img{max-width: none;width: 100%}
	.home .g3 header .title{max-width: 55%}
	.home .g4 img{max-width: none;width: 100%}
	.home .g4 header .title{max-width: 55%}
}
@media (max-width:767px) {  
	footer .visible-xs{display: block;margin-top: 20px}
	footer .visible-xs img{max-width: 120px}
}
@media (min-width: 420px) {
	.bwrap {background:rgba(0,0,0,.75);}
	.homepage .slider img{max-height:none}	
	.btitle{font-size:26px;line-height: 32px; }
	.babstract{font-size:16px;line-height: 22px; }
}
@media (min-width: 600px) {
	.homepage .slider{top:0px/**da questo punto lo slider è visualizzato sotto il menù*/}
	.block-maps .indirizzo{padding-top: 10px;padding-bottom: 5px; display: block}
	.detail .attributi{padding-bottom: 25px;padding-top: 20px}
	.attributi strong {font-size: 18px;	line-height: 20px;}
	.detail .attributo,.detail .attributo.prezzo{min-width: 100px;margin-bottom: 0;padding-right: 3%}
	.detail .attributo .label{display: inline-block}
	.home .g5 {padding: 50px 0 40px;}
	
	.content-ico{display: flex;flex-wrap: wrap}
	.ico-settori .media-content-wrap{width: 280px}


}

@media (min-width: 768px) {
	
	.btitle{font-size:30px;line-height: 36px;}
	.babstract{font-size:20px;line-height: 24px; padding-top: 10px;}
	.bwrap{padding:20px 20px 30px}
	.footerlogo {margin-left:0}
	.flink {padding-top: 0px;}
	footer p, footer {text-align: left}
	.finfo .row{display: flex;}
	.finfo .credit{display: flex;  flex-direction: column;  justify-content: flex-end;}
	.credit{padding-bottom: 0px}
	.fsocial{padding-top: 82px}
	.fsocial a{display: block}


	form {display: flex;flex-wrap: wrap;column-gap: 4%;flex-direction: row}
	.input-field  {width: 48%;}
	form .textarea, form .input-checkbox {width: 100%}
	.input-field {margin-bottom: unset;}
	form p {margin: 0}
	
	.content-ico {column-gap: calc(100% - 720px);max-width: 810px;margin-left: auto;margin-right: auto}
	.ico-settori .content a,.ico-settori .content a:visited,.ico-settori .content a:hover{font-size: 28px;line-height: 32px;}
	.ico-settori .media{width: 90px;}
	.ico-settori .wrap-content{width: calc(100% - 110px);}
	.ico-settori .media-content-wrap {width: 360px;}
	.foto .block {display: flex;flex-direction: row-reverse;column-gap: 4%;align-items: flex-start;position: relative}
	.fotol .block {flex-direction: row}
	.foto .block .media-wrap{padding-top:0;position: sticky;top:90px;align-self: start;}
	.foto .block >div {width:48%}
	.riga .block .wrap-content{align-self: center}
	
	.homepage .wrap-contact {padding:80px 0;}
	.homepage .wrap-contact .module {width:80%;}

	
	.home .g3c,.home .g4c {display: flex;flex-wrap: wrap;column-gap: 4px}
	.home .g3 .block.first{width:100%}
	.home .g3 .block,.home .g4 .block{width:calc(33.333333% - 3px);overflow: hidden}
	.home .g5 .first{display: flex;column-gap: 4%;align-items: flex-start;position: relative}
	.home .g5 .first >div {width:48%}
	.home .g5 .text{padding-top: 0%;padding-bottom: 10%}
	.home .g5 .media{padding-top:5%;position: sticky;top:90px;align-self: start;}
	.home .g5::before {bottom: 30px; top:auto}
	.home .g5 ol{display: flex;flex-wrap: wrap;column-gap: 4%;justify-content: flex-end}
	.home .g5 ol li{width: 48%}
	.home .g7{padding-bottom: 40px}

}
@media (min-width: 768px)and (max-width:1024px) {  
	.home .g3 .title,.home .g4 .title,.home .g5 ol li strong{font-size: 24px; line-height: 28px}
	.home .g3 .media,.home .g4 .media {height: 350px;overflow: hidden}
	.home .g3 img,.home .g4 img{position: absolute;max-width: none;width: auto;height: 100%;  left: 50%;  transform: translateX(-50%);}
	.home .g3 .block, .home .g4 .block {margin-top: 0px;margin-bottom: 4px;	}
	.home .g4-2m img{min-width: 350px;height: 100%}
	.home .g5 .first{column-gap: 1%;}
	.home .g5 ol li strong{padding-left: 40px}

}
@media (min-width: 800px) { 
}
@media (min-width: 992px) {
	.fixed-top .logobig {width: auto;height:50px;margin-top: 5px;margin-left: 0}
	.fixed-top .logo {max-width:200px}
	body #header{transition: top 1s cubic-bezier(0, 0, 0.2, 1);}
	body.fixed-top #header{background: transparent;top:0}
	body.fixed-top #header .top {background-size: auto 125px;background-position: calc(50% - 30px) top; height: 130px}
	.fixed-top .main-menu .nav {top:70px}
	.fixed-top .info,.fixed-top .icon-cerca svg {top: 0px;	opacity: 0;}
	
	footer .footerlogo{width:340px;}

	.servizi .content-loghi{jpadding-bottom: 40px}
	.main-menu .separa, .main-menu .last-info {	display: none;}

	
}
@media (min-width: 1025px) {
	.homepage .wrap-contact{background-attachment: fixed;}
}
@media (min-width: 1200px) {
	.txt-ser,footer .container, .no-template main > .container-fluid,.home .g5 .block,.home .g6 .block,.home .g7 .block {	max-width: 1160px;	margin-left: auto;	margin-right: auto;}
	.fixed-top .logo {	max-width: 150px;}	
	body.fixed-top #header .top {background-position: calc(50% - 100px) top; }	
	footer .container {padding:100px 40px;}
	.home .g3 .first.block .title {font-size: 44px;	line-height: 48px;padding: 0}
	.home .g3 .block, .home .g4 .block {margin-top: 0px;	margin-bottom: 0px;}
	.home .g3{ background: var(--c3); margin-bottom: 4px }
	/* wrapper a max 1920 e gap “bianco” */
	.home .g3c{	max-width: 1920px;margin: 0 auto;display: flex;	flex-wrap: nowrap;	gap: 4px;background: var(--c1); /* il gap appare bianco */
	align-items: stretch;  /* stessa altezza */}
    /* reset width legacy */
	.home .g3 .block{ width: auto !important; overflow: hidden; background:#fff; }
    /* FIRST a sinistra */
	.home .g3 .block.first{flex: 0 0 clamp(90px, 6vw, 140px);display: flex;align-items: flex-end;justify-content: flex-end;	padding: 24px 20px;		box-sizing: border-box;	background: var(--c3)   }
	.home .g3 .block.first .title{writing-mode: vertical-rl;transform: rotate(180deg);	white-space: nowrap;line-height: 1;  }

	 /* ----- I 3 blocchi a destra: larghezze proporzionali ----- */
	 .home .g3 .block:not(.first){flex-basis: 0; /* fondamentale per usare i grow “a peso” */display: flex; flex-direction: column;  height: min(520px, 32vw);  /* max 520, poi scala giù con viewport */overflow: hidden;  }

	 /* pesi 486 : 504 : 653 */
	.home .g3 .g3-2{ flex-grow: 486; }
	.home .g3 .g3-3{ flex-grow: 504; }
	.home .g3 .g3-4{ flex-grow: 653; }

	/* media prende tutto lo spazio disponibile sopra al titolo */
	.home .g3 .block:not(.first) .media{flex: 1 1 auto;  overflow: hidden;  position: relative;  }

	/* immagini: proporzioni OK + crop/overflow dentro il box */
	.home .g3 .block:not(.first) .media img{  width: 100%; height: 100%; object-fit: cover; /* mantiene proporzioni e taglia l’eccesso */ object-position: center;    /* crop centrato */   display: block;  }
	.home .g3 .block:not(.first) header{ flex: 0 0 auto;  }
	/* colore esterno, deve vedersi a destra */
	.home .g4{   background: var(--c4); }
	/* wrapper centrato + gap bianchi */
	.home .g4c{max-width: 1920px; margin: 0 auto; display: flex; flex-wrap: nowrap; column-gap: 4px;align-items: stretch; background: var(--c1); /* gap “bianchi” */ box-sizing: border-box; }

	/* reset eventuali width legacy */
	.home .g4 .block{ width: auto !important; overflow: hidden; background: var(--c1); flex-basis: 0; /* per usare grow pesati */ display: flex; flex-direction: column; height: min(520px, 32vw);  /* max 520, scala giù */ }

	/* proporzioni 632 : 412 : 600 */
	.home .g4 .g4-1{ flex-grow: 632; }
	.home .g4 .g4-2{ flex-grow: 412; }
	.home .g4 .g4-3{ flex-grow: 600; }
	/* questo sostituisce il padding-right: crea una colonna a destra */
	.home .g4c::after{content: ""; display: block; /* IMPORTANTISSIMO */ flex: 0 0 clamp(90px, 6vw, 140px); /* la fascia gialla */background: var(--c4); }
	.home .g4 .media{flex: 1 1 auto; overflow: hidden; position: relative;  }

	.home .g4 .media img{  width: 100%; height: 100%;  object-fit: cover;   object-position: center;  display: block; }
	.home .g4 header{  flex: 0 0 auto;  }

	.home .g5 .block,.home .g6 .block {padding-left: 40px;	padding-right: 40px;}
	.home .g5::before {content: "";	height: 60px;	bottom: 120px;}
	.home .g7c .cslick {max-width: 1080px;margin-left: auto;margin-right: auto}


	.mappa iframe{height: 600px}
	.content-ico {column-gap: calc((100% - 1080px) / 2);max-width: none;margin-left: auto;	margin-right: auto;}
	.foto .block .media-wrap {	padding-top: 0;	position: sticky;	top: 90px;margin-top:0; margin-bottom: 0; align-self: center;}
	.contts {padding: 80px 0 30px;}
	
}
@media (min-width: 1300px) {
	footer .container {	padding-top: 130px;}
 	footer .container{width: auto;max-width: 1390px;padding-left: 40px; padding-right: 40px}
   
}
@media (min-width: 1400px) {
	.content-ico,.riga .block,.servizi .contbs .cont{max-width: 1390px; margin-left: auto;margin-right: auto}
	.txt-ser,.servizi .content-loghi{max-width: 1360px; margin-left: auto;margin-right: auto}
	body.fixed-top #header .top {background-position: calc(50% - 0px) top; }	
	.home .g5c,.home .g6 .block,.home .g7c {max-width: 1390px; margin-left: auto;margin-right: auto}
	.home .g3 .first.block .title {font-size: 80px;	line-height: 84px;padding: 0}
	.home .g3 .block .title,.home .g4 .block .title {font-size: 36px;	line-height: 40px;padding: 0}
	.home .g3 .block .title,.home .g4 .block .title{left:25px; top:40px;text-transform: uppercase}
	.home .g3 .block1 .title{top:auto;bottom:40px;margin-bottom: 0}
	.home .g4 .block4 .title{top:auto;bottom:40px;left: auto;right:25px}
	.home .g3 .block.first {padding: 30px 12px;}
	.home .g3 .block.first {flex: 0 0 clamp(140px, 6vw, 140px);}
	.home .g4c::after {	flex: 0 0 clamp(140px, 6vw, 140px);}
	.home .g5{padding-top: 80px;padding-bottom: 0px}
	.home .g5::before {content: "";	height: 60px;	bottom: 110px;}
	.home .g5 .first > div.contenuto {width: 50%;}
	.home .g5 .first {	column-gap: 2%;}
	.home .g5 .media {	padding-top:0;	}
	.home .g5 .theme {	margin-bottom: 10px;}
	.riga::before {content: "";	height: 60px;	top: 10%;}
	.servizi section.btn-ser .block{width:215px}
	.servizi .page > section.txtcenter > .block{padding-bottom: 20px}
	.txt-ser,.servizi .content-loghi{padding-left: 40px; padding-right: 40px}
	.servizi .content-loghi{justify-content: space-between;gap:0;padding-bottom: 60px}
	.servizi .contbs .cont {display: flex;  gap: 10px;}
	.servizi section.btn-ser {flex: 0 0 calc((100% - (10px * 5)) / 6);  max-width: calc((100% - (10px * 5)) / 6); cursor:pointer}
	.servizi section.btn-ser .block { width: 100%; }
	
}
@media (min-width: 1450px) {
	.txt-ser, .servizi .content-loghi,footer .container, .home .g5 .block, .home .g6 .block{padding-left: 0;padding-right: 0}
	.gallery,.page > section > .block,.page > section > .download,.page > .first >.block,.txt-ser, .servizi .content-loghi {max-width: 1390px;}
	.home .g7c .cslick {max-width: calc(100vw );margin-left: 0px;}
}
@media (min-width: 1600px) {
	.home .g3 .first.block .title {font-size: 94px;	line-height: 94px;padding: 0}
	.home .g3 .block .title,.home .g4 .block .title {font-size: 42px;	line-height: 46px;padding: 0}

}
@media (min-width: 1700px) {

}

.hidden,.fadein,.fromleft,.fromright {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
	filter: alpha(opacity=0);
	opacity:0;	
	display:block !important;
	-webkit-transition: background .4s ease;
    transition: background .4s ease;
}
.visible {
	/*-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)" !important;
	filter: alpha(opacity=100) !important;
	opacity:1 !important;	*/
	-webkit-transition: background .4s ease;
    transition: background .4s ease;
	visibility:visible !important;

}
.fromleft.visible,.fromright.visible ,.zoomin.visible {
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)" !important;
	filter: alpha(opacity=100) !important;
	opacity:1 !important;

}
.del6 {-webkit-animation-delay: 2.2s; animation-delay: 1.2s;}
.del5 {-webkit-animation-delay: 1.8s; animation-delay: 1.0s;}
.del4 {-webkit-animation-delay: 1.4s;animation-delay: .8s;}
.del3 {-webkit-animation-delay: 1.0s; animation-delay: .6s;}
.del2 {-webkit-animation-delay: .6s; animation-delay: .4s;}
.del1 {-webkit-animation-delay: .2s; animation-delay: .2s;}
.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}
@-webkit-keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0);transform:translate3d(-3000px,0,0)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0);transform:translate3d(25px,0,0)}75%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}90%{-webkit-transform:translate3d(5px,0,0);transform:translate3d(5px,0,0)}to{-webkit-transform:none;transform:none}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0);transform:translate3d(-3000px,0,0)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0);transform:translate3d(25px,0,0)}75%{-webkit-transform:translate3d(-10px,0,0);transform:translate3d(-10px,0,0)}90%{-webkit-transform:translate3d(5px,0,0);transform:translate3d(5px,0,0)}to{-webkit-transform:none;transform:none}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0);transform:translate3d(3000px,0,0)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0);transform:translate3d(-25px,0,0)}75%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}90%{-webkit-transform:translate3d(-5px,0,0);transform:translate3d(-5px,0,0)}to{-webkit-transform:none;transform:none}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0);transform:translate3d(3000px,0,0)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0);transform:translate3d(-25px,0,0)}75%{-webkit-transform:translate3d(10px,0,0);transform:translate3d(10px,0,0)}90%{-webkit-transform:translate3d(-5px,0,0);transform:translate3d(-5px,0,0)}to{-webkit-transform:none;transform:none}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}