@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

/*Normalize.css
-----------------------------------------------*/
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;*display:inline;*zoom:1;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}html,button,input,select,textarea{font-family:sans-serif;}body{margin:0;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;margin:0.67em 0;}h2{font-size:1.5em;margin:0.83em 0;}h3{font-size:1.17em;margin:1em 0;}h4{font-size:1em;margin:1.33em 0;}h5{font-size:0.83em;margin:1.67em 0;}h6{font-size:0.75em;margin:2.33em 0;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:bold;}blockquote{margin:1em 40px;}dfn{font-style:italic;}mark{background:#ff0;color:#000;}p,pre{margin:1em 0;}code,kbd,pre,samp{font-family:monospace,serif;_font-family:'courier new',monospace;font-size:1em;}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word;}q{quotes:none;}q:before,q:after{content:'';content:none;}small{font-size:75%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-0.5em;}sub{bottom:-0.25em;}dl,menu,ol,ul{margin:1em 0;}dd{margin:0 0 0 40px;}menu,ol,ul{padding:0 0 0 40px;}nav ul,nav ol{list-style:none;list-style-image:none;}img{border:0;-ms-interpolation-mode:bicubic;}svg:not(:root){overflow:hidden;}figure{margin:0;}form{margin:0;}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em;}legend{border:0;padding:0;white-space:normal;*margin-left:-7px;}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle;}button,input{line-height:normal;}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer;*overflow:visible;}button[disabled],input[disabled]{cursor:default;}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0;*height:13px;*width:13px;}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}

/*Generici
-----------------------------------------------*/
*{position:relative}
html{
    height: 100%;
}
body{
	height:100%;
    font-family: 'Montserrat', sans-serif;
    font-weight:300;
    overflow-x:hidden;
    color:#000;
    line-height:1.6;
    font-size:16px;
    margin:0;
    padding:0;
	background:#fff;
}

button, input, select, textarea {font-weight:300;}

a{color:#55a550; text-decoration:none; outline:none !important;}
a:hover{color:#000; text-decoration:none;}
p{margin:0 0 1em 0;}
strong, b{font-weight:500;}

h1,.h1,h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6{font-weight:400; margin:0 0 1em 0; line-height:1.2em; padding:0;}
h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover{text-decoration:none;}

h1,.h1{font-size:3.2rem;}
h2,.h2{font-size:2.8rem;}
h3,.h3{font-size:2.4rem;}
h4,.h4{font-size:2.0rem;}
h5,.h5{font-size:1.6rem;}
h6,.h6{font-size:1.4rem;}
@media(max-width:767px){
h1,.h1{font-size:3rem;}
h2,.h2{font-size:2.5rem;}
h3,.h3{font-size:2.2rem;}
}

.title-hide{text-indent:-9999px; font-size:0; height:0; margin:0;}


/*animazioni generiche*/
.m-ani{
-webkit-transition:all 600ms ease-in-out;
-moz-transition:all 600ms ease-in-out;
-o-transition:all 600ms ease-in-out;
-ms-transition:all 600ms ease-in-out;
transition:all 600ms ease-in-out;
}


/*estensione del container*/
@media (min-width:1440px){
.container{max-width:1380px;}
}
@media (min-width:1700px){
.container{max-width:1640px;}
}
/*@media (min-width:1900px){
.container{max-width:1860px;}
}*/
@media (max-width:767px){
	.container{
		padding-right: var(--bs-gutter-x,1.5rem);
		padding-left: var(--bs-gutter-x,1.5rem);
	}
}

/*Header
-----------------------------------------------*/
header{
    font-size:1.15rem;
    min-height: 100px;
    width:100%;
	padding:100px 0 60px 0;

}
header .logo{margin:0 auto; text-align:center;}
header .logo img{width:100%}

/*Generici
-----------------------------------------------*/
main{font-size:18px; background:#fff}
.max{width:100%!important; max-width:100%!important}
.bg-page{background:#f4f4f4!important}
.radius-primary{border-radius: 48px}
.shadow-primary{box-shadow: 3px 3px 12px 0 rgba(0,0,0,0.08 )}

/*classi input*/
.nocompiled {border:1px solid #f00 !important;}
.nocompiled2 {padding:0 17px 0 0; color:#f00;}

/*text*/
.text-normal{text-transform:none}

/*btn*/
.btn{white-space:nowrap; padding:0.675rem 1.25rem; text-decoration:none!important}
.btn-sm{padding:0.275rem 0.75rem;}

/*404*/
#notfound {padding:300px 0; min-height: 90vh}
.notfound {width: 100%; padding-left: 160px; line-height: 1.1}
.notfound h1{font-size:5em; margin:0}
.notfound .notfound-404 {position: absolute; left: 0; top: 0; display: flex; justify-content: center; align-items: center; width: 140px; height: 140px;}
.notfound .notfound-404:before {content: ''; position: absolute; width: 260%; height: 260%; top:50%; left:50%; transform:translate(-50%, -50%); border-radius: 50%; background-color: #f2f5f8;}
.notfound .notfound-404 i{font-size:8em;}

/*Home
-----------------------------------------------*/
.cat-item{margin-bottom:60px;}
.cat-item a{position:absolute; z-index:11; top:0; left:0; width:100%; height:100%;}
.cat-item .figure{width:100%;}
.cat-item .figure img{height:100%; width:100%; object-fit:cover; opacity:0.2}
.cat-item .caption{position:absolute; top:0; left:0; width:100%; height:100%; padding:30px; display:flex; flex-direction: column; justify-content: space-between;}
.cat-item .caption h2{margin:0;}
.cat-item .caption .btn{width:180px; cursor:auto}

/*variante corten*/
.cat-item.cat-corten{color:#fff; background:#ece9e3}
.cat-item.cat-corten .figure img{opacity:1}

@media(max-width:767px){
    .cat-item .figure{height:450px}
}

/*Footer
-----------------------------------------------*/
footer{padding:60px 0; font-size:0.9rem; line-height:1.7em; color:#000;}

footer strong{font-size:1em}
footer a{text-decoration:none; color:#000; }
footer a:hover{color:#55a550;}
footer small{font-size:0.7em;}


#msgReg{
    display:none;
    padding:20px;
    margin-top:20px;
    text-align:center;
    font-style:italic;
    border-top:2px solid #fff;
}

