*,*:before,*:after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;  
}

html {
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	height:100%;
}

h1,h2,h3,h4,p,ul,li {
    display: block;
	font-size: inherit;
	list-style: none;
}

ul.list li{
    display:list-item;
    text-align:left;
    list-style:disc outside none;
    margin-left:20px;
}

a{
    text-decoration: none;
    color: inherit;
    transition: .5s;
}

a:hover{
    color:#881e38;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

img.imgLeft{
    display:block;
    float:left;
    margin-right:15px;
}

.lt450 img.imgLeft{
    display:block;
    float:none;
    margin:auto;
    margin-bottom:15px;
}

body{
    font-family: 'Lato', sans-serif;
	font-size: 16px;
	font-weight:400;
	line-height:24px;
	height:100%;
	color: #888;
	background-color:#222222;
}

/* STYLE */
.t-center{text-align:center}
.t-left{text-align:left}
.t-right{text-align:right}
.t-bold, b{font-weight:700; color:#000}
.t-heavy{font-weight:900}
.t-underline{text-decoration:underline}
.t-italic, i{font-style:italic}
.t-uppercase{text-transform:uppercase}
.t-capitalize{text-transform:capitalize}

/* COLORS */
.black{color:#000 !important}
.bk-black{background-color:#000 !important}
.white{color:#fff !important}
.color1{color:#881e38 !important}
.bk-color1{background-color:#881e38 !important}
.color2{color:#571b3c !important}
.grey{color:#999 !important}

p{
    margin-bottom:15px;
    text-align:justify;
}

/* GRAPHIC ELEMENTS */
a.button{
    display:inline-block;
    background-color:#000;
    color:#fff;
    line-height: 20px;
    padding:10px 15px;
    font-weight:400;
    text-transform:uppercase;
    white-space:nowrap;
} 

a.button span[class^="ti-"]{
    font-size:20px;
    vertical-align:-3px;
}

a.button:hover{
    background-color:#fff;
    color:#000;
}

a.section{
    display:inline-block;
    border:2px solid #ccc;
    border-radius: 3px;
    line-height: 10px;
    padding:9px;
    font-weight:400;
    margin:2px;
    font-size:16px;
} 

a.section:hover{
   border:2px solid #881e38;
   color:#881e38;
}

a div.over-zoom{
    width:100%;
    height:100%;
    background: url("../img/zoom-in.svg") no-repeat scroll center center / 48px auto rgba(0, 0, 0, 0.6);
    position:absolute;
    top:0px;
    left:0;
    transition: .5s;
    opacity:0;
}

a:hover div.over-zoom{opacity:1}

/* DIALOG */
#w-box {
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 2000;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s 0s, visibility 0s 0.3s;
}

#w-box.is-visible {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.3s 0s, visibility 0s 0s;
}

#w-box.is-visible #w-win {
  transform: scale(1,1);
  opacity:1;
}

#w-win {
  position: absolute;
  width: 400px;
  height: 400px;
  background: #FFF;
  text-align: center;
  margin:auto;
  top:0;bottom:0;left:0;right:0;
  padding:25px;
  transform: scale(0.75,0.75);
  opacity:0;
  transition: 0.3s;
  z-index: 2001;
  overflow-y:auto;
}

div.w-actions{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
}

div.w-actions a{
    display:block;
    width:50%;
    height:50px;
    line-height:50px;
    font-weight:400;
    white-space:nowrap;
    float:left;
}

div.w-actions a span[class^="ti-"]{
    font-size:20px;
    vertical-align:-3px;
}

div.w-actions a.first{
    background-color:#881e38;
    border-radius:0px 0px 0px 3px;
    color:#fff;
}

div.w-actions a.first:hover{
    background-color:#571b3c;
}

div.w-actions a.second{
    background-color:#eee;
    border-radius:0px 0px 3px 0px;
}

#w-close{
  position: absolute;
  width:32px;
  height:32px;
  top:25px;
  right:25px;
  font-size:32px;
  color:#fff;
  line-height:32px;
  cursor:pointer;
  z-index:2003;
}

body.lt450 #w-close{
    margin:auto;
    left:0;
    right:0;
    top:5px;
}

body.lt450 #w-win {
  width:90% !important;
  height:80% !important;
}

/* GRID */
.container{
  margin:auto;
  max-width: 1200px;
  padding:0 20px;
}

.container.no-pad{padding:0}

.group:before, .group:after, .container:before, .container:after, .clear {
  content: "";
  display: table;
  clear: both;
}

.group>*{
  float:left;
  display:block;
}

.column{
    padding:0px 30px;
}

.pad{
    padding:50px 0px;
}

.col-50{width:50%}
.col-65{width:65%}
.col-35{width:35%}

.lt900 .col-50{width:100%;text-align:center}
.lt900 .col-65{width:100%;text-align:center}
.lt900 .col-35{width:100%;text-align:center}

/* HELPER */
.hide{display:none}
.centered{margin:auto}
.relative{position:relative}

.m-top{margin-top:25px !important}
.m-top-2x{margin-top:50px !important}
.m-bottom{margin-bottom:25px !important}
.m-bottom-2x{margin-bottom:50px !important}

/* HEADING */
h1{
    font-size:32px;
    font-weight:300;
    line-height:34px;
    text-align:center;
}

div.page_title{
    color:#fff;
    padding:100px 0px;
    text-align:center;
    position:relative;
    background-position: top center;
    background-repeat:no-repeat;
    background-size:cover;    
}

div.page_title::after {
  content: "";
  background-color:rgba(136,30,56,0.9);
  top: 0;
  left: 0;
  position: absolute;
  z-index:1;
  width:100%;
  height:100%; 
}

div.page_title h1{
    font-size:48px;
    position:absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin:auto;
    height:64px;
    z-index:2;
}

div.page_title h1 span{
    font-size:22px;
    color:#000;
    font-weight:700;
}

div.page_title.lt560{
    padding:50px 0px;   
}

div.page_title.lt560 h1{ 
    font-size:32px;
    height:32px;
    line-height:32px;  
}

h1.stripe{
    padding:50px 0px;
    background-color:#eee;
    margin-bottom:35px;
}

h1.title{
    padding:50px 0px 0px 0px;
    font-weight:600;
}

h2{
    padding:15px 0px;
    font-size:24px;
}

h3{
    padding:15px;
    background-color:#ddd;
    color:#571b3c;
    margin:50px 0px 25px 0px;
}

h4{
    padding:0px 15px 30px 15px;
    font-size:32px;
    font-weight:300;
    line-height:36px;
}

div.splash_image{
    background-position: top center;
    background-repeat:no-repeat;
    background-size:cover;    
    height:400px; 
}

/* SECTIONS */
header{
    width:100%;
    height:123px;
    background-color:#fff;
    border-top:3px solid #881e38;
}

header #logo{
    line-height:0;
    padding-left:15px;
    display:none;
}

header #logo_B{
    position:absolute;
    top:0px;
    left:0px;
    z-index:2;
}

/* NAV-ICONS */
#nav-icons{
    float:right;
    height:120px;
    text-align:right;
    padding-right:5px;
}
#nav-icons a{
    padding:0px 7px;
    font-size:24px;
    position:relative;
}
#nav-icons a:hover{color:#881e38}
#nav-icons #btn_toggleMenu{display:none}

/* BREAKPOINTS */
header.lt900{
    height:75px;
}
header.lt900 #logo img{height:72px}
header.lt900 #nav-icons{height:72px;padding:24px 25px 0px 0px}
header.lt900 #nav-icons #btn_abax{display:none}
header.lt900 #nav-icons #btn_toggleMenu{display:inline}

/* MENU */
#menu{
    font-weight:300;
    white-space:nowrap;
    background:#f0f0f0 url(../img/back.png) top center no-repeat;
    width:100%;
    transition:0.5s
}

#menu ul>li{
    position:relative;
    min-height:50px; 
    text-align:left; 
    background-color:#f0f0f0; 
}

#menu ul>li>a
{
    line-height:47px;
    padding:0px 25px;
}

#menu li.focus{
    background-color:#881e38;
    color:#fff;
}

#menu li.focus:hover>a{
    color:#fff;
}

#m_home{
    margin-left:185px;
    padding-left:66px;
    background-image:url(../img/curve.png);
    background-position: top left;
    background-repeat: no-repeat;
}

#menu ul.submenu{
    position:absolute;
    left:0px;
    top:50px;
    z-index: 1000;
    border:1px solid #eee;
    border-top:none;
    transition:0.5s;
    height:0px;
    visibility:hidden;
    opacity:0;
    overflow:hidden;
}

#menu ul.submenu.is-visible{
    opacity:1;
    visibility:visible;
    height:auto;
}

#menu ul.submenu li a
{
    display:block;
    border-top:1px solid #eee;
    background-color:#fff;
    padding:2px 23px;
    transition:0.5s;
    color:#888;
}

#menu ul.submenu li span[class^="ti-"]{
    font-size:8px;
    vertical-align:2px;
}

#menu ul.submenu li a:hover{
    background-color:#f9f9f9;
    color:#881e38
}

/* BREAKPOINTS */
.lt1024 #logo_B{display:none}
.lt1024 #logo{display:block}

.lt1024 #m_home{
    margin-left:0px;
    padding-left:0px;
    background-image:none;
}

#menu.lt900 ul>li{
    width:100%;
    border-bottom:1px solid #ccc;  
}

#menu.lt900{
    display:none;
}

#menu.lt900 ul.submenu{
    position:relative;
    top:0; 
    opacity:1;
    visibility:visible;     
    height:auto;
}

#menu.lt900 ul.submenu li a{
    padding:8px 40px;
}

/* MAIN */
#main{
    background-color:#f0f0f0;
}

#medici div.feature div.feature-box{
    min-height:370px;
}

#difetti div.feature div.feature-box{
    min-height:392px;
}

#chirurgia div.feature div.feature-box{
    min-height:300px;
}

#microchirugia div.feature div.feature-box{
    min-height:300px;
}

.lt450 div.feature div.feature-box{
    min-height:auto !important;
}

/* VIDEO */
div.video__embed{
	width:50%;
	height: 400px;
	overflow: hidden;
	position: relative;
}
div.video__embed iframe,
div.video__embed object,
div.video__embed embed {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}	

.lt900 div.video__embed{
	width:100%;
}

div.video__text{width:50%}

div.video__text h2{
	font-weight:400;
	line-height:27px;
	padding:0 30px;
}
	
.lt900 div.video__text{
	width:100%;
}

.lt900 div.video__text h2{
	padding-top:30px;
	text-align:center;
}

/* FOOTER*/
footer{
    padding:25px 0px;
    color:#fff;
    text-align:center;
    font-size:13px;
    background-color:#222222;
}

/* FORM */
label{
    display:block;
    width:100%;
}

input:not([type='checkbox']), select, textarea{
    border:1px solid #ccc;
    border-radius:3px;
    width:100%;
    padding:15px;
    margin-bottom:10px;
	font-size: 16px;
	font-weight:400;
	color:#888; 
	transition:.3s;   
}

input:focus{
    border:1px solid #888;
}

div.msg{
    font-weight:700;
    text-align:center;
    padding:10px;
}

div.msg.red{
    background-color: #f2dede;
    border:1px solid #a94442;
    color: #a94442;
}

div.msg.yellow{
    background-color: #fcf8e3;
    border:1px solid #d5b25e;
    color: #b88b00;
}

div.msg.green{
    background-color: #dff0d8;
    border:1px solid #80a571;
    color: #80a571;
}

/* PERSONALIZZAZIONI */
#blog div.blog-main{
    width:70%;
    margin-top:50px;
}

#blog div.blog-side{
    width:30%;
}

#blog.lt768 div.blog-main{
    width:100%;
}

#blog.lt768 div.blog-side{
    width:100%;
}

#form>div{
    width:50%;
    padding:0px 10px;
}

#form.lt600>div{
    width:100%;
}

/* COOKIE POLICY */
#privacy{
	width:100%;
	background-color:#000;
	position:fixed;
	top:0px;
	z-index:10000;
	color:#fff;
	text-align:center;
	font-size:100%;
	padding:15px;
	font-size:16px;
	line-height:24px;
}

#privacy a{
	text-decoration:underline;
	color:#fff;
}

#privacy a#btn_ok{
	display:inline-block;
	background-color:#881E38;
	padding:2px 7px 3px 7px;
	text-decoration:none;
}

#privacy a#btn_ok:hover{
	background-color:#fff;
	color:#000;
} 