@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

* { border:0px; list-style:none; margin:0px; padding:0px; outline:none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; *behavior: url(boxsizing.htc); -webkit-appearance: none; -moz-appearance: none; appearance: none; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
html { font-size: 100%; }
html, body { height:100%; }
body { background:#FFF; margin: 0px; font-family: "Inter", sans-serif; font-size:15px; -webkit-text-size-adjust:100%;  color:#000; line-height:23px; text-align:justify;  }
a { text-decoration:none; outline:none; color:#000; text-overflow:ellipsis; }
a:hover, a.selected { text-decoration:none; color:#B01F2C; transition: all 0.9s ease-in-out;  -webkit-transition: all 0.9s ease-in-out; -moz-transition: all 0.9s ease; -o-transition: all 0.9s ease;  -ms-transition: all 0.9s ease-in-out; }
#footer i { width:25px; text-align:center; }
b, strong { font-weight:600; }
h1, h2, h3 { line-height:normal; margin:0px; font-family: "Cormorant Garamond", serif; color:#000; font-weight:normal; }
h1 { margin-bottom:20px; font-size:60px; line-height: 55px; }
h2 { font-size:28px; font-weight:normal; margin-bottom:20px; }
h2.section { text-align:center; margin:20px 0 20px 0; text-transform:uppercase; font-size:25px; color:#000; }
h3 { font-size:26px; font-weight:bold; color:#000; margin: 20px 0 40px 0; text-transform:uppercase; text-align:center; }
h4 { font-size:16px; margin:0; text-align:center; }

img.scale { width:100%; height:auto; }
img.loading { background: url('../images/loading.gif') no-repeat center; }
img.border { border:10px solid #E7E7E7; }
img.rounder { border-radius:1000px; }
input, select, textarea { border-radius:0; color:#444; font-family: "Inter", sans-serif; font-size:13px; padding: 12px; background-color: #FFFFFF; border: 1px solid #CCCCCC; }
input:focus, textarea:focus, select:focus { border-color: #222; }
input.error, textarea.error, select.error { border-color:#FF0000; color:#FF0000; background:#F9CCCB; } 
label.error { color:#FF0000; font-size:0px; visibility:hidden; float:none; overflow:hidden; height:0px; display:none; line-height:0; padding:0px; margin:0px; letter-spacing: 0; }
input[type='checkbox'] { padding:0; height:20px; width:20px; float:left; margin-right:10px;  border: 1px solid #CCCCCC; }
input[type='checkbox']:checked { background:#666; }
form .row { margin-bottom:10px; }
option { padding:0 5px; }
.btn, input[type='submit'], input[type='button'], input[type='reset'] { padding: 12px 20px; border:0px; cursor:pointer; display:inline-block; color:#FFF; background:#CCC; line-height:normal; text-align:center;  text-transform:uppercase;}
.btn:hover, input[type='button']:hover, input[type='submit']:hover, input[type='reset']:hover { text-decoration:none; background: #888;}
.btn-primary, input.btn-primary { background-color:#B01F2C; color:#FFF;  }
.btn-primary:hover, input.btn-primary:hover { color:#FFF; background:#222; }
.warning { color:#FF0000; font-weight:600; background: url('../images/icon_warning.png') no-repeat left top; padding:5px 0 5px 22px; text-transform:uppercase; }
.icon_info { margin-left:10px; cursor:pointer;  font-size:11px; }
.strike { text-decoration: line-through; font-weight:normal; }
.msg_error { color:#FFF; margin-bottom:20px; display:block; background:#FF0000; padding: 5px 10px; border-radius: 5px; }
.msg_success { color:#FFF; margin-bottom:20px; display:block; background:#59B200; padding: 5px 10px; border-radius: 5px; }
p.limit { margin: 10px 0; font-size:11px; }
.videoWrapper { position: relative; padding-bottom: 56.25%; /* 16:9 */	padding-top: 25px; height: 0; }
.videoWrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
iframe {  width: 100%; }
.placeholder { color: #FFF; text-transform:uppercase; }
.column_2 { column-count: 2; column-gap: 40px; }

ul.list_border li:first-child { border-top:0px; }
ul.list_border li { float:none; border-top:1px dotted #CCC; margin:0px; padding: 5px 0; color:#999; }
ul.list_border li a { display:block; }
ul.list_border li p a { display:inline; }
li span.tot { float:right; font-size:11px; width:30px; text-align:center; display: inline-block; }
ul.icon_right li a i { float:right; }
ul.list_number li { list-style:decimal; margin:5px 0 5px 20px; }
ul.list_disc li { list-style:disc; margin:0 40px 10px 15px; }
ul.list_disc li li { list-style:circle; }


.layout { position:relative; }
.wrapper { width:100%; margin: 0 auto; min-width:720px; clear: both;  }
.content { width:100%; max-width:1400px; margin: 0 auto; clear: both; padding:0px 20px; position:relative; }
.content-large { width:100%; margin: 0 auto; clear: both; padding:0 20px; position:relative; }
.content-small { max-width:660px; margin: 0 auto; clear: both; padding:0 20px; position:relative; }
.cover { max-width:90%; margin:0 auto; text-align:center; height:90%; background-size: cover; background-attachment: fixed; background-position:center center; }

.align_left { text-align: left; }
.align_right { text-align: right; }
.align_center { text-align: center; }
.hidden { display:none; }
.bold { font-weight:600; }
.avatar { width:50px; height:50px; float:left; margin-right:10px; border-radius: 50%; }
.fa { margin-right:5px; }
.fr { float:right; }
.red { color:#FF0000; }
.green { color:#59B200; }
.gray, .gray a { color:#999; }
.black, .black a { color:#000; }
.fixed { position:fixed; }
.hidden { display:none; }
.block { display:block; }
.mt100 { margin-top:100px; }
.mt60 { margin-top:60px; }
.mt40 { margin-top:40px; }
.pl80 { padding-left:80px; }
.pr40 { padding-right:40px; }
.mb40 { margin-bottom:40px; }
.mt20 { margin-top:20px; }
.mb20 { margin-bottom:20px; }
.mb10 { margin-bottom:10px; }

table { border-collapse: collapse; width:100%; }
table, th, td { border: 1px solid #888; padding: 2px 5px; }
thead td { background:#E7E7E7; }
figure { overflow:hidden; background:#B01F2C; }
figure * { transition: all .9s ease-in-out; line-height:normal;  }
figure img { display:block; }
a figure.zoom:hover img { filter: none; transform: scale(1.1);  }
a figure.fade:hover img { opacity:0.5; background:#B01F2C; }

.group:before, .group:after { content:""; display:table; }
.group:after { clear:both; }
.col { display: block; float:left; margin: 0 0 0 1.6%; }
.col:first-child { margin-left: 0; }

.span_1_of_2 { width: 49.2%; }
.span_2_of_2 { width: 100%; }

.span_1_of_3 { width: 32.2%; }
.span_2_of_3 { width: 66.1%; }
.span_3_of_3 { width: 100%; }

.span_1_of_4 { width: 23.8%; }
.span_2_of_4 { width: 49.2%; }
.span_3_of_4 { width: 74.6%; }
.span_4_of_4 { width: 100%; }

.span_1_of_5 { width: 18.72%; }
.span_2_of_5 { width: 39.04%; }
.span_3_of_5 { width: 59.36%; }
.span_4_of_5 { width: 79.68%; }
.span_5_of_5 { width: 100%; }

.span_1_of_6 { width: 15.33%; }
.span_2_of_6 { width: 32.26%; }
.span_3_of_6 { width: 49.2%; }
.span_4_of_6 { width: 66.13%; }
.span_5_of_6 { width: 83.06%; }
.span_6_of_6 { width: 100%; }

.span_1_of_8 { width: 11.1%; }
.span_2_of_8 { width: 23.8%; }
.span_3_of_8 { width: 36.5%;}
.span_4_of_8 { width: 49.2%; }
.span_5_of_8 { width: 61.9%; }
.span_6_of_8 { width: 74.6%; }
.span_7_of_8 { width: 87.3%; }
.span_8_of_8 { width: 100%; }

.span_1_of_10 { width: 8.56%; }
.span_2_of_10 { width: 18.72%;  }
.span_3_of_10 { width: 28.88%; }
.span_4_of_10 { width: 39.04%;  }
.span_5_of_10 { width: 49.2%; }
.span_6_of_10 { width: 59.36%; }
.span_7_of_10 { width: 69.52%;  }
.span_8_of_10 { width: 79.68%; }
.span_9_of_10 { width: 89.84%; }
.span_10_of_10 { width: 100%; }
.iphone_show, .header .menu li.iphone_show { display:none; }
.pr80 { padding-right:100px; }

.span_50 { width:50%; margin:0 auto; text-align:center; }
.span_25 { width:25%; margin:0 auto; text-align:center; }

.bg_gray { background:#E7E7E7;  }
.overlay h3 { font-size:20px; margin-bottom:10px; }
.overlay { font-weight:normal; position:absolute; padding: 20px; text-align:left; line-height:20px; z-index:2; top:0; left:0; right:0; bottom:0; color:#FFF; background-color: rgba(0, 0, 0, 0.8); }

.header { border-bottom:1px solid #CCC; }
.header .content { padding: 0px 20px; }
.header .menu nav, .header .menu ul { margin:0 auto; text-align:right; margin-top:70px; }
.header .menu li { display:inline-block; margin: 0 10px; font-size:14px; }
.header .logo img {  margin:30px 0; height:70px; }
.header a { font-weight: normal; }

.footer { padding: 40px 0; font-size:14px; margin-top:80px; text-align:center; background:#9caab3; color:#132030;  }
.footer .credits {  padding: 40px 0 0 0; font-size:13px; text-align:center; color:#FFF; }
.footer .credits a { color:#FFF; }

.home .slide { position:relative; }
.home .bg { background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(138,138,138,0) 70%, rgba(0,0,0,0.5) 100%); position:absolute; bottom:0; left:0; right:0; top:0; z-index:11; }
.slider li { position:relative; }
.slider li h2 { position:absolute; bottom:40px; left:0px; right:0px; text-align:center; font-size:24px; color:#FFF; font-weight:normal; margin:0px; }

.headline { text-align:center; }
.headline h1 { font-weight:400; font-size:40px; padding: 20px; color:#444; font-family: "Cormorant Garamond", serif; }
.headline h4 { font-weight:200; font-size:14px; text-transform:uppercase; }

.item-row { padding: 40px 0 0 0; }
.item-row h3 { text-align:center; }

.list-service { display:grid; grid-template-columns:1fr 1fr 1fr; gap:40px;  }
.list-service .item { background: #EEE; padding:40px 60px; min-height:300px; position:relative; }
.list-service .item h4 { text-align:left; font-size:36px; line-height:40px; font-family: "Cormorant Garamond", serif; font-weight:normal; }
.info {text-transform:uppercase; letter-spacing:1px; font-size:13px;  text-decoration:underline; text-underline-offset: 10px;}
.list-service .item .info { position:absolute; bottom:40px; left:60px; }
.list-service .item .dot { width:30px; height:30px; background:#e9d3bc; border-radius:200px; display:block; margin-bottom:20px; }
.list-service .item:hover { background:#e9d3bc; }
.list-service .item:hover .dot { background:#FFFFFF; }
	
.list-soci { display:grid; grid-template-columns:1fr 1fr 1fr; gap:40px; margin-bottom:60px; }
.list-soci h4 { text-align:left; font-size:24px; line-height:30px; font-family: "Cormorant Garamond", serif; font-weight:normal; margin:30px 0 0 0;  }
.list-soci p { color:#AAA; }

.nav-item.social a { border:1px solid #000; border-radius:200px; background:#000; color:#FFF; padding:5px 10px; display:inline-block; }
.nav-item.social a:hover { background:#FFF; color:#000; }

.contact-form { padding-right:40px; }

.about { display:grid; grid-template-columns:2fr 3fr; margin-top:40px; }
.about .header-profile { background:#e9edec; padding:20px 60px; }
.about .header-profile h1 { color:#000; }
.about .header-profile .contact a { color:#999; }
.about .container { padding:20px 60px; }
.about h2 { font-family: "Inter", sans-serif; font-size:16px; text-transform:uppercase; letter-spacing:1px; }

.about .contact li { font-size:16px; margin: 5px 0; }
.videoconsulto img { float:right; margin-left:80px; max-width:300px; }

.pagination { margin: 20px 0 40px 0; }
.pagination .page { text-align:right; }
.pagination .page a, .pagination .page b { padding:10px 15px; display:inline-block; border:1px solid #DDD; }
.pagination .page a:hover { background:#E7E7E7; }
.pagination .result { padding-top:10px; }
.subnav .col { position:relative;   }
.subnav a { display:block; padding:10px; }
.subnav .left a { padding-left:50px;  }
.subnav .left i { left:10px;  }
.subnav .right a { padding-right:50px; text-align:right; }
.subnav .right i { right:10px;  }
.subnav i { font-size:40px; position:absolute; top:10px; }

.header-section p { text-transform:uppercase; font-size:13px; letter-spacing:1px; margin-bottom:10px; }
.header-section h1 { margin:0px; font-size: 65px; color:#000; line-height:55px; font-weight:normal;  }
.header-section h2 { margin:0px; font-size: 65px; color:#000; line-height:55px; margin-top:10px; }
.header-section { display:grid; grid-template-columns: 1fr 1fr; gap:20px; padding: 40px 0; align-items:end; font-size:18px; line-height:24px; }

.maps { display:grid; grid-template-columns: 1fr 1fr 1fr; gap:80px; }
.maps iframe { margin-bottom:40px; }

.accordion_title { text-transform:uppercase; text-align:center; font-size:18px; font-family: "Cormorant Garamond", serif;  cursor:pointer; color:#B01F2C; padding:20px 0px; position:relative; font-weight:bold; border-top:1px solid #CCC; }
.accordion_text { padding:10px 0; border-top:0px; margin-bottom:10px; } 
.profile { position:relative; text-align:center; border-radius:2px; margin-bottom:20px;}
.profile.span_1_of_4:nth-child(4n+1) { margin-left:0px; }
.profile .container { margin:0 auto; width: 32.2%; }
.profile img { border-radius: 500px; width:150px; height:auto; display:inline-block; }
.profile h2 { font-size:15px; margin-top:20px; text-transform:inherit; font-weight:bold; text-transform:uppercase; }
.profile .buttons { text-align:center; position:absolute; bottom:20px; left:20px; right:20px; }

.profile .buttons a { display:inline-block; padding:3px 10px; margin-bottom:5px; }


.profile h3 { font-size:13px; font-weight:700; color:#000; margin:0 0 5px 0; }
.grid-container { display: grid; grid-gap: 5px; grid-template-columns: auto auto auto; }
.grid-item { background:#FFF; padding:20px; text-align:left; }

.gallery .span_1_of_2:nth-child(2n+1) { margin-left:0px; }
.gallery .span_1_of_3:nth-child(3n+1) { margin-left:0px; }
.gallery .span_1_of_4:nth-child(4n+1) { margin-left:0px; }
.gallery .span_1_of_6:nth-child(6n+1) { margin-left:0px; }
.gallery .col { margin-bottom:1.6%; }
.gallery img { display:block; }
.span_25 { width:25%; margin:0px; line-height:normal; font-size:0px; }

.slider li { height:700px; }

.blog { margin-top:20px; }
.blog .item { display:grid; grid-template-columns: 200px 1fr; gap:0; background:#e9edec; margin-bottom:40px; text-align:left; }
.blog .item .data { background:#132030; padding:30px; color:#FFF; font-family: "Cormorant Garamond", serif; font-size:28px; position:relative; line-height:30px; }
.blog .item .text { padding:20px; position:relative; }
.blog .item .section {  position:absolute; left:30px; right:30px; bottom:30px; font-family: "Inter", sans-serif; font-size:13px; text-transform:uppercase; text-decoration:underline; text-underline-offset: 10px; text-align:left; line-height:28px; letter-spacing:1px; }
.blog .item .data a { color:#FFF; }
.blog .item  h2 { font-size:20px; font-family: "Inter", sans-serif; font-weight:bold; }
.blog .item:hover { background:#e9d3bc; }
.blog .item:hover .share a { background:#FFF; }
.blog .item .pdf { margin-top:10px; text-decoration:underline; text-underline-offset: 10px; padding-bottom:5px; }
.blog .item .info { margin-top:15px; }
.blog .item .user { position:absolute; right:200px; bottom:24px; }

.tag { margin-bottom:20px; }
.tag a { display:inline-block; padding:2px 5px; margin: 0 2px 2px 0; border-radius:200px; }
.tag a:hover { background:#B01F2C; color:#E7E7E7; }


.blog .item .text.en { font-style:italic; margin-top:10px; }
.blog #lato {  font-size:13px; }
.blog #lato h3 { font-size:26px; margin-bottom:20px; font-weight:normal; text-transform:inherit; color:#000; text-align:left;  }
.blog #lato li { border-bottom:1px dotted #CCC; padding:2px 0; text-transform:uppercase; }
.blog #lato li .tot { font-size:11px; color:#777; top:-3px; position:relative; margin-left:5px; }
.blog #lato .list-social li { border:0px; float:left; margin-right:10px; }
.blog #lato .list-social li a { width:50px; height:50px; display:block; text-align:center; padding:10px 5px; }
.blog #lato .list-social li i { margin:0px; font-size:28px; }
.blog .gallery { margin-top:40px; }
.blog .gallery .item { border:0px; padding:0px; margin-bottom:1.6%; }
.gallery .span_1_of_3:nth-child(3n+1) { margin-left:0px; }
.share { margin-top:20px; text-align:right; }
.share ul { margin: 0 auto; text-align:right; }
.share li { display:inline-block; margin-right:10px;  }
.share li a { background:#e9d3bc; border-radius:200px; display:inline-block; padding-top:3px; width:30px; height:30px; text-align:center; }
.share li a:hover { color:#888;  }

.scheda h1 { font-size:40px; text-align:center; margin-bottom:40px; text-transform:uppercase; }
.scheda h4 { text-align:left; }

#contact .footer { margin-top:0; text-align:left; }

.soci .item { position:relative; }
.soci .item img { display:block; }
.soci li { display:inline-block; }

.maps { text-align:center; }
.maps iframe {
    -webkit-filter: grayscale(100%);
       -moz-filter: grayscale(100%);
        -ms-filter: grayscale(100%);
         -o-filter: grayscale(100%);
            filter: grayscale(100%);
}



.grid .span_1_of_2:nth-child(2n+1) { margin-left:0px; }
.grid .span_1_of_3:nth-child(3n+1) { margin-left:0px; }
.grid .span_1_of_4:nth-child(4n+1) { margin-left:0px; }
.grid .span_1_of_5:nth-child(5n+1) { margin-left:0px; }
.grid .span_1_of_6:nth-child(6n+1) { margin-left:0px; }
.grid .item { margin-bottom:1.6%; }
.grid img { display:block; }
.grid-2 { display:grid; grid-template-columns:1fr 1fr;  }

.global-site-notice {  background: #F5F5F5 none repeat scroll 0% 0%;  color: #333; display:block;  padding: 10px 30px; float:none; font-size:13px; }
.global-site-notice .notice-inner { max-width:960px; margin: 0 auto; text-align:left; float:none; position:relative; }
.global-site-notice .notice-inner p { width: auto; padding-right: 30px; adding-left: 40px; display: block; }
.global-site-notice .notice-inner a {  }
.global-site-notice .notice-inner a:hover { text-decoration:underline; }
#close-cookie-notice { position: absolute; right:0; top:0px; }
.global-site-notice.hidden { display:none; }

.scrolloff { pointer-events: none; }

div.top {  display: none; overflow: hidden; position: fixed; right:40px; bottom:40px; }
div.top .fa { margin:0px; }
div.top a { padding-top:7px; display:block; color:#B01F2C; cursor:pointer; font-size:20px; width:40px; height:40px; text-align:center; background:#E7E7E7; border-radius:200px; }

 
 
.nav-menu { position:relative; display:block; }
.nav .fa { margin-right:0px; }
.nav-item { display:block; zoom:1; position:relative; margin-right:1px; }
.nav-item a { display:block; padding:10px 0; text-transform:uppercase; }
.nav-item:hover .nav-submenu { display:block; text-decoration:none;  }

/* Navigation submenu */
.nav-submenu { display:none; position:absolute; z-index:200; background:#D89A20; width:300px; margin-left:-25px; }
.nav-submenu-item { display:block; }
.nav-submenu-item a { color:#FFF; padding:7px 7px; display:block; width:100%; text-align:left;  }
.nav-submenu-item a:hover { text-decoration:none; color:#000; }

/* Mobile navigation */
.nav-mobile {  background:#E7E7E7; border-radius:200px; color:#B01F2C; display:none; position:absolute; top:50px; right:10px; text-align:center; font-size:20px; height:40px; width:40px; cursor:pointer; padding:9px 10px; }

/* Mobile navigation, clickable area for revealing <ul> */
.nav-click { position:absolute; top:0; right:0; display:none; height:39px; width:50px; cursor:pointer; text-align:center; }
.nav-click i { display:block; height:36px; width:40px; font-size:20px; padding:8px; color:#B9C2E5; }
.nav-rotate { -webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); -ms-transform:rotate(180deg); -o-transform:rotate(180deg); transform:rotate(180deg); }