﻿@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400&display=swap');
html {width:100%;height:100%;font-size:1rem;}
body {background-color:#fff;font-family:'Poppins', sans-serif;color:#333;font-weight:400;line-height:1.8rem;}
@media (max-width: 991.98px) {
    html {font-size:0.875rem;}
}
a {color:#000;text-decoration:none;}
a:hover, a.focus, a:focus {color:#900;text-decoration:none;}
.col-lg-auto,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12 {margin-bottom:1rem !important;}
b, strong {font-weight:bold;}
h1, h2, h3, h4, h5, h6 {margin:0;padding:0;}
h1, .h1 {color:#263238;font-size:2.6rem;margin-bottom:30px;font-weight:200;}
h2, .h2 {color:#263238;font-size:1.7rem;margin-bottom:5px;font-weight:200;}
h3, .h3 {color:#263238;font-size:1.4rem;margin-bottom:5px;font-weight:300;}
h4, .h4 {color:#263238;font-size:1.2rem;margin-bottom:5px;}
h5, .h5 {color:#263238;font-size:1.1rem;margin-bottom:5px;}
h6, .h6 {color:#263238;font-size:1rem;margin-bottom:5px;}
.descrizione {font-size:1rem;line-height:1.6rem;}
.editor p {margin:0;padding:0.5rem 0;}
@media (max-width: 991.98px) {
     h1, .h1 {font-size:2.4rem;margin-bottom:15px;}
}
.img-thumbnail {border:none;background-color:transparent;border-radius:0;}

/********** input **********/
.form-label {margin-left:0.2rem;}
.form-control {color:#333;}
.form-select {color:#333;}
.form-control-error {border-color:#f00;}
.form-check {padding-top:2rem;}
.form-check-input {border:none;}
.form-check-label {padding-left:3px;padding-top:2px;}
.form-check-err .form-check-label {color:#f00;}
.btn {white-space:normal;}
.btn-default {color:#fff;background-color:#263238;border-color:#263238;font-weight:200;}
.btn-default:hover, .btn-default:focus, .btn-default.focus {color:#fff;background-color:#900;border-color:#900;box-shadow:none;}
.btn-default {
  --bs-btn-color:#fff;--bs-btn-bg:#263238;--bs-btn-border-color:#263238;
  --bs-btn-hover-color:#fff;--bs-btn-hover-bg:#900;--bs-btn-hover-border-color:#900;
  --bs-btn-focus-shadow-rgb: 102, 102, 102;
  --bs-btn-active-color:#fff;--bs-btn-active-bg:#900;--bs-btn-active-border-color:#900;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#999;--bs-btn-disabled-border-color:#000;
}
.btn-default-inv {
  --bs-btn-color:#263238;--bs-btn-bg:#fff;--bs-btn-border-color:#263238;
  --bs-btn-hover-color:#900;--bs-btn-hover-bg:#fff;--bs-btn-hover-border-color:#900;
  --bs-btn-focus-shadow-rgb: 102, 102, 102;
  --bs-btn-active-color:#900;--bs-btn-active-bg:#fff;--bs-btn-active-border-color:#900;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#999;--bs-btn-disabled-border-color:#000;
}

.alert-danger {background-color:#f2dede;border-color:#ebccd1;color:#f00;}

/*********** body **********/
.body_background {position:relative;width:100%;}

/*********** header **********/
.header_background {position:relative;width:100%;}
.navbar-light {background-color:#fff;padding:0;border-bottom:solid 1px #888;height:90px;}
.brand, .brand_mobile {text-align:left;white-space:nowrap;font-size:1.6rem;color:#263238;font-weight:200;}
.brand img, .brand_mobile img {padding-right:0.5rem;}
.brand_mobile {display:none;}
.navbar-toggler {border:1px solid #fff;}
.navbar-toggler:focus {border:1px solid #fff;box-shadow:none;}
.navbar-light .navbar-nav {margin-top:0px;}
.navbar-light .navbar-nav .nav-link {font-size:0.9rem;font-weight:normal;color:#263238;background-color:transparent;padding-right:1rem;padding-left:1rem;}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link.active {color:#900;background-color:transparent;}
.offcanvas {width:100%;background-color:#fff;}
.offcanvas-header .offcanvas-title a {padding-left:1.5rem;padding-right:1.5rem;}
@media (max-width: 1199.98px) {
    .navbar-light .navbar-nav .nav-link {font-size:0.8rem;padding-right:0.5rem;padding-left:0.5rem;}
}
@media (max-width: 991.98px) {
    .brand {display:none;}
    .brand_mobile {display:inline;}
    .navbar-light {padding:1.5rem 1rem;height:65px;}
    .navbar-light .navbar-nav .nav-link {font-size:1.2rem;text-align:center}
}

 /*********** lingua **********/
.lingua_background {position:relative;width:100%;background-color:#eee;}
.lingua {position:relative;height:20px;text-align:right;color:#666;}
.lingua a {margin-right:10px;text-decoration:none;font-size:0.9rem;color:#ccc;}
.lingua a:hover {color:#666;}
.lingua a.active {color:#333;}

/*********** contenuto **********/
.contenuto_background {width:100%;height:100%;background-color:transparent;}
.contenuto {padding:150px 0 60px 0;text-align:left;min-height:650px;background-color:#fff;}
.contenuto_home h1, .contenuto_home h2, .contenuto_home h4 {color:#111;font-weight:200;}
@media (max-width: 991.98px) {
    .contenuto {padding:100px 0 30px 0;}
}
.container_parallax {margin-top:4rem;margin-bottom:3rem;}
.div_parallax {position:relative;background-attachment:fixed;background-position:center;background-repeat:no-repeat;min-height:500px;filter:grayscale(0%);transition:filter 0.4s ease;}
.div_parallax:hover {filter:grayscale(0%);}
.home_button {margin-top:6rem;margin-bottom:2rem;text-align:center;}
.button_big {padding:2rem 0.5rem;font-size:1.3rem;}
.button_big .bi {font-size:2rem;}
@media (max-width: 991.98px) {
    .home_area {margin-top:3rem;margin-bottom:3rem;}
    .div_parallax {margin-top:5rem;margin-bottom:5rem;background-size:cover;filter:grayscale(0%);}
    .home_button {margin-top:3rem;}
}
@media (max-width: 767.98px) {
    .div_parallax {background-attachment:scroll;}
}

/*********** viewbox **********/
.viewbox {position:relative;opacity:0;}
.viewbox.activebox {opacity:1;}
.activebox.box-fade-spinner {animation:key-spinner 2s forwards;}
.activebox.box-fade-in {animation:key-fade-in 0.8s ease-in;}
.activebox.box-fade-top {animation:key-fade-top 0.8s ease-in;}
.activebox.box-fade-bottom {animation:key-fade-bottom 0.8s ease-in;}
.activebox.box-fade-left {animation:key-fade-left 0.8s ease-in;}
.activebox.box-fade-right {animation:key-fade-right 0.8s ease-in;}
@keyframes key-spinner{to {transform:rotate(360deg)}}
@keyframes key-fade-in{0% {opacity:0;transform:scale(0)}100% {opacity:1;transform:scale(1)}}
@keyframes key-fade-top {0% {transform:translateY(-100px);opacity:0;}100% {transform:translateY(0);opacity:1;}}
@keyframes key-fade-bottom {0% {transform:translateY(100px);opacity:0;}100% {transform:translateY(0);opacity:1;}}
@keyframes key-fade-left {0% {transform:translateX(-100px);opacity:0;}100% {transform:translateX(0);opacity:1;}}
@keyframes key-fade-right {0% {transform:translateX(100px);opacity:0;}100% {transform:translateX(0);opacity:1;}}

/*********** home **********/
.servizi {text-align:center;margin-bottom:3rem;}
.servizi a {text-decoration:none;}
.servizi .card {border-color:#ccc;border-radius:0.8rem;box-shadow:0 0 0.8rem #eee;}
.servizi .card:hover {border-color:#ccc;box-shadow:0 0 0.8rem #ccc;}
.servizi .card_img {text-align:center;vertical-align:bottom;}
.servizi .bi {font-size:2rem;}
.servizi h3 {font-size:1.3rem;line-height:1rem;font-weight:400;}
.servizi .descrizione {line-height:1rem;font-size:1rem;font-weight:300;}
.servizi .card:hover a, .servizi .card:hover h3 {color:#900;text-decoration:none;}

/*********** progetti **********/
.tc-wrapper {position:relative;}
.tc-collapsed {display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;max-height:10.8rem;transition:max-height 0.4s ease;}
.tc-expanded {overflow:hidden;max-height:20000px;transition:max-height 0.4s ease;}
/* Dissolvenza finale */
.tc-fade::after {content:"";position:absolute;bottom:0;left:0;width:100%;height:2.5rem;background:linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1));pointer-events:none;transition:opacity 0.3s ease;}
/* Quando espanso, la dissolvenza sparisce */
.tc-expanded + .tc-fade::after {opacity:0;}
.tc-btn, .tc-btn:hover {color:#900;text-decoration:none;}
.tc-caret {display:inline-block;transition:transform 0.3s ease;}
.tc-caret.rotated {transform:rotate(180deg);}

.progetti {}
.progetti a {text-decoration:none;}
.progetti .card {border-color:#ccc;border-radius:0.8rem;box-shadow:0 0 0.8rem #eee;}
.progetti .card:hover {border-color:#ccc;box-shadow:0 0 0.8rem #ccc;}
.progetti .card_img {/*height:250px;*/text-align:center;vertical-align:bottom;/*filter:grayscale(80%);transition:filter 0.2s ease;opacity:0.8;*/}
.progetti .card:hover .card_img {filter:grayscale(0%);opacity:1;}
.progetti h4 {line-height:1rem;font-weight:400;}
.progetti .small {line-height:1rem;font-weight:300;}
.progetti .card:hover a, .progetti .card:hover h4 {color:#900;text-decoration:none;}
@media (max-width: 991.98px) {
    .progetti .card_img {filter:grayscale(0%);opacity:1;}
}

/*********** traccia **********/
.traccia {}
.traccia a {color:#263238;}
.traccia a:hover {color:#900;}
.traccia_titolo {font-size:1.5rem;}
.traccia_bottom {margin-top:40px;padding-top:10px;border-top:solid 1px #aaa;}

/*********** condividi **********/
.condividi a {color:#263238;cursor:pointer;}
.condividi i {color:#263238;margin-right:15px;width:5px;}
.condividi .dropdown-menu {background-color:#fff;color:#263238;}
.condividi a:hover, .condividi a:hover i {color:#900;}
.condividi .dropdown-item:hover {background-color:#fff;}

/*********** contatti **********/
.contatti_dati {text-align:left;}
@media (max-width: 991.98px) {
	.contatti_dati {text-align:center;}
}

/*********** info **********/
.h1_info {color:#263238;font-size:1.6rem;margin-bottom:10px;}
.h2_info {color:#263238;font-size:1.4rem;margin-top:10px;margin-bottom:5px;}
.h3_info {color:#263238;font-size:1.3rem;margin-top:30px;padding-top:15px;padding-bottom:10px;border-top:solid 1px #ccc;}
.h4_info {color:#263238;font-size:1.2rem;margin-top:5px;margin-bottom:5px;}

/*********** sitemap **********/
.sitemap a {margin-top:1rem;}

/*********** footer **********/
.footer_top_background {width:100%;background-color:#fff;border-top:solid 1px #ccc;}
.footer_prm_messaggio {padding-top:10px;padding-bottom:10px;font-size:1rem;color:#900;}
.footer_top, .footer_top a {color:#263238;font-size:1.1rem;}
.footer_top .bi {color:#263238;margin-right:0.6rem;font-size:1.1rem;}
.footer_top .bi-brands {color:#263238;margin-right:0.6rem;font-size:1.5rem;}
.footer_top a:hover, .footer_top a:hover .bi, .footer_top a:hover .bi-brands {color:#900;cursor:pointer;}
.footer_social a {margin-left:1.5rem;margin-right:1.5rem;}
.footer_background {width:100%;background-color:#263238;}
.footer {padding-top:20px;padding-bottom:20px;color:#999;}
.footer_link {margin-top:15px; margin-bottom:15px;}
.footer_link a {color:#999;padding-left:0.5rem;padding-right:0.5rem;font-size:0.9rem;}
.footer_link a:hover {color:#fff;}
.footer_societa {font-size:0.8rem;color:#999;}
.footer_copy {margin-top:10px;font-size:0.8rem;color:#999;}
@media (max-width: 991.98px) {
    .footer_top, .footer_top a, .footer_top .bi, .footer_top .bi-brands {font-size:1.3rem;}
}

/*********** Cookie **********/
.cookie_background {width:100%;height:auto;background-color:#fff;color:#333;padding:25px 25px;border-top:1px solid #000;line-height:1.2rem;}
.cookie_link_beg a {color:#333;text-decoration:underline;margin-left:10px;}
.cookie_accetto_beg {text-align:right;}
@media (max-width: 767.98px) {
    .cookie_accetto_beg {text-align:left;padding-top:20px;}
}
.cookie_modal {background-color:#fff;color:#333;line-height:1.2rem;}
.cookie_modal .modal-body,.cookie_modal .container-fluid {margin:0;padding:0;}
.cookie_body {overflow-x:hidden;overflow-y:auto;padding:20px 20px;}
.cookie_titolo {font-size:1.7rem;font-weight:200;color:#333;}
.cookie_text {color:#333;font-size:0.9em;}
.cookie_text_titolo {font-size:1em;font-weight:bold;}
.cookie_link {text-align:center;margin-top:20px;margin-bottom:20px;}
.cookie_link a {color:#333;text-decoration:underline;}
.cookie_footer {padding:0.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(0.3rem - 1px);border-bottom-left-radius:calc(0.3rem - 1px);}

/********** Back-top **********/
#back-top {position:fixed;top:100%;left:100%;margin-left:-70px;margin-top:-70px;z-index:10000;}
#back-top a {color:#900;width:50px;display:block;-webkit-transition:1s;-moz-transition:1s;transition:1s;}
#back-top i {font-size:1.3em;background-color:transparent;color:#900;border:solid 1px #900;width:50px;height:50px;line-height:48px;display:block;-webkit-transition:1s;-moz-transition:1s;transition:1s;-webkit-border-radius:50px;-moz-border-radius:50px;border-radius:50px;text-align:center;text-decoration:none;}
#back-top a:hover, #back-top span:hover {color:#900;border-color:#900;text-decoration:none;}
