@import url(colorbox.css);
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary { display: block; }

body { font-family: 'PT Sans Narrow', sans-serif; color: #4b4b4b; line-height: 1.2em; font-size: 16px; }

p { margin: 1em 0; }

a { color: #bd2b11; }

strong { font-weight: bold; }

.wrapper { width: 980px; margin: 0 auto; background: #fff; }
@media (max-width: 600px) { .wrapper { width: 100%; } }

#main { clear: both; background: #efefef; }

.header-main { position: relative; z-index: 999; }
.header-main .logo { float: left; }
@media (max-width: 600px) { .header-main .logo { float: none; display: block; width: 70%; }
  .header-main .logo img { max-width: 100%; } }
.header-main .nav-main { float: right; margin-top: 45px; }
@media (max-width: 600px) { .header-main .nav-main { margin-top: 10px; } }

.nav-main { position: relative; z-index: 999; width: 50%; }
@media (max-width: 600px) { .nav-main { position: static; } }
.nav-main .btn-navbar { display: none; }
@media (max-width: 600px) { .nav-main .btn-navbar { display: block; } }

.nav-main-items li { display: block; float: left; position: relative; }
.nav-main-items li:hover > .nav-main-submenu-wrapper { opacity: 1; visibility: visible; margin: 0; }
.nav-main-items li:hover > a { color: #bd2b11; }
.nav-main-items a { float: left; display: block; padding: 0 10px; margin: 0 10px; text-decoration: none; color: #7c7c7c; }
.nav-main-items a:hover, .nav-main-items a.active { color: #bd2b11; }
.nav-main-items .nav-main-submenu-wrapper { margin: 12px 0 0 0; padding-top: 14px; background: url("../img/layout/nav-arrow.gif") 30px 3px no-repeat; opacity: 0; visibility: hidden; position: absolute; top: 16px; left: 0; z-index: 1; transition: all .2s ease-in-out; }
@media (max-width: 600px) { .nav-main-items .nav-main-submenu-wrapper { margin: 0; visibility: visible; padding: 0; opacity: 1; visibility: visible; position: static; } }
.nav-main-items .nav-main-submenu { padding: 10px; width: 200px; background: #efefef; border-radius: 2px; }
@media (max-width: 600px) { .nav-main-items .nav-main-submenu { width: 100% !important; padding: 0; } }
.nav-main-items .nav-main-submenu li { position: static; display: block; float: none; }
.nav-main-items .nav-main-submenu a { float: none; margin: 6px 10px; padding: 0; font-size: 0.875em; }
@media (max-width: 600px) { .nav-main-items .nav-main-submenu a { margin: 0; padding: 10px 0; } }

.content { overflow: hidden; *zoom: 1; padding: 20px 0; font-size: 0.875em; }

.content-main { float: left; width: 552px; padding: 0 25px; }
.content-main .intro { font-size: 1.14286em; }

.sidebar { float: left; width: 313px;  }
.sidebar h1 { font-size: 1.14286em; color: #bd2b11; font-weight: bold; }
.sidebar .sidebar-box { background: #efefef; padding: 20px; margin-bottom: 1rem }

footer { margin: 2em 0 0 0; border-top: 1px solid #e6e6e6; padding: 1em 0 2em 0; text-align: center; font-size: 0.875em; line-height: 1em; }
footer a { color: #4b4b4b; }

.col { width: 300px; float: left; }

.map { float: right; width: 600px; height: 400px; border: 4px solid #e6e6e6; }

.contacts a { color: #4b4b4b; }
.contacts span { display: block; padding: 0 0 0 30px; margin: 10px 0; background: url("../img/layout/contacts.png") 0 0 no-repeat; }
.contacts span.fax { background-position: 0 -76px; }
.contacts span.email { background-position: 0 -38px; }

.section-header { overflow: hidden; *zoom: 1; }
.section-header.ingegneria { background: url("../img/layout/header-ing.jpg") 0 0 no-repeat; }
.section-header.ambiente { background: url("../img/layout/header-ambiente.jpg") 0 0 no-repeat; }
.section-header.energia { background: url("../img/layout/header-energia.jpg") 0 0 no-repeat; }
.section-header > div { float: right; width: 378px; margin-left: -17px; padding: 0 0 0 17px; background: url("../img/layout/hp-slider-arrow.png") 0 15px no-repeat; }
.section-header h2 { background: #bd2b11; color: #fff; padding: 18px 0 23px 20px; font-size: 1.5em; }
@media (max-width: 600px) { .section-header > div { width: 40%; } }

.breadcrumbs { margin: 0 25px 25px 25px; color: #bd2b11; }
.breadcrumbs a { color: #bd2b11; }

article { padding: 0 25px; font-size: 1.14286em; }
article h1 { color: #bd2b11; font-size: 1.5em; line-height: 1.1em; }
article h3 { color: #bd2b11; font-size: 1.125em; }
article p.sub-text { margin: 0.2em 0 1em 0; }

ul.article-list { max-width: 60%; margin-left: 25px; list-style: circle outside; }

ul.article-sublist { margin: 0 0 1em 0; margin-left: 25px; list-style: circle outside; }

img.thumb { border: 4px solid #e6e6e6; }
@media (max-width: 600px) { img.thumb { max-width: 100%; } }
img.thumb:hover { border: 4px solid #ccc; }
img.thumb.float_right { float: right; margin: 0 0 0 20px; }
@media (max-width: 600px) { img.thumb.float_right { float: none; margin: 5px 0; } }
img.thumb.float_left { float: left; margin: 5px 10px 0 0; }
@media (max-width: 600px) { img.thumb.float_left { float: none; margin: 5px 0; } }

.slider-items { position: relative; height: 236px; }
.slider-items li { overflow: hidden; *zoom: 1; position: absolute; top: 0; left: 0; }
.slider-items .slider-img { float: left; }
.slider-items .slider-content { float: left; width: 378px; height: 236px; margin-left: -17px; padding-left: 17px; background: url("../img/layout/hp-slider-arrow.png") 0 40px no-repeat; }
.slider-items .slider-content article { padding: 20px; background: #bd2b11; color: #ffffff; height: 196px; }
.slider-items .slider-content article h1 { color: #fff; font-size: 1.5em; margin: 0 0 0.6em 0; }
.slider-items .slider-content article p { line-height: 1.25em; }
@media (max-width: 600px) { .slider-items { height: auto; }
  .slider-items .slider-img { float: none; display: block; max-width: 100%; }
  .slider-items .slider-content { float: none; width: 100%; height: auto; position: absolute; bottom: 0; left: 0; margin-left: 0; padding-left: 0; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); opacity: 0.8; }
  .slider-items .slider-content article { min-height: 0 !important; height: auto; }
  .slider-items .slider-content article h1 { margin: 0; }
  .slider-items .slider-content article p { display: none; } }

.hp-modules { overflow: hidden; *zoom: 1; }
.hp-modules li { float: left; width: 50%; }
.hp-modules a { text-decoration: none; }
.hp-modules a.title { color: #bd2b11; font-weight: bold; display: block; margin-bottom: 10px; }
.hp-modules a img { border: 0; }
.hp-modules p.desc { padding-right: 15px; }
.hp-modules p.desc a { color: #4b4b4b; }
@media (max-width: 600px) { .hp-modules li { float: none; width: 100%; }
  .hp-modules a.title { font-size: 1.375em; }
  .hp-modules a img { width: 100%; } }

.btn { display: inline-block; *display: inline; /* IE7 inline-block hack */ *zoom: 1; padding: 4px 10px 4px; margin-bottom: 0; font-size: 13px; line-height: 18px; *line-height: 20px; color: #333333; text-align: center; text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); vertical-align: middle; cursor: pointer; background-color: #f5f5f5; background-image: -moz-linear-gradient(top, white, #e6e6e6); background-image: -ms-linear-gradient(top, white, #e6e6e6); background-image: -webkit-gradient(linear, 0 0, 0 100%, from(white), to(#e6e6e6)); background-image: -webkit-linear-gradient(top, white, #e6e6e6); background-image: -o-linear-gradient(top, white, #e6e6e6); background-image: linear-gradient(top, #ffffff, #e6e6e6); background-repeat: repeat-x; filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0); border-color: #e6e6e6 #e6e6e6 #bfbfbf; border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); *background-color: #e6e6e6; /* Darken IE7 buttons by default so they stand out more given they won't have borders */ filter: progid:dximagetransform.microsoft.gradient(enabled=false); border: 1px solid #cccccc; *border: 0; border-bottom-color: #b3b3b3; -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; *margin-left: .3em; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); }

.btn:hover, .btn:active, .btn.active, .btn.disabled, .btn[disabled] { background-color: #e6e6e6; *background-color: #d9d9d9; }

.btn:active, .btn.active { background-color: #cccccc \9; }

.btn:first-child { *margin-left: 0; }

.btn:hover { color: #333333; text-decoration: none; background-color: #e6e6e6; *background-color: #d9d9d9; /* Buttons in IE7 don't get borders, so darken on hover */ background-position: 0 -15px; -webkit-transition: background-position 0.1s linear; -moz-transition: background-position 0.1s linear; -ms-transition: background-position 0.1s linear; -o-transition: background-position 0.1s linear; transition: background-position 0.1s linear; }

.btn:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; outline-offset: -2px; }

.btn.active, .btn:active { background-color: #e6e6e6; background-color: #d9d9d9 \9; background-image: none; outline: 0; -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); }

.btn.disabled, .btn[disabled] { cursor: default; background-color: #e6e6e6; background-image: none; opacity: 0.65; filter: alpha(opacity=65); -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; }

nav .btn-navbar { position: absolute; right: 10px; top: 28px; padding: 7px 10px; margin-left: 5px; margin-right: 5px; -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); }

nav .btn-navbar:active { background-color: #e6e6e6; background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#d9d9d9), to(white)); background-image: -webkit-linear-gradient(top, white, #d9d9d9); background-color: #d9d9d9; background-image: -moz-linear-gradient(top, #d9d9d9, white); background-image: -ms-linear-gradient(top, #d9d9d9, white); background-image: -o-linear-gradient(top, #d9d9d9, white); background-image: linear-gradient(top, #d9d9d9, #ffffff); background-repeat: repeat-x; }

nav .btn-navbar .icon-bar { display: block; width: 18px; height: 2px; background-color: #000; -webkit-border-radius: 1px; -moz-border-radius: 1px; border-radius: 1px; -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); }

nav .btn-navbar.active .icon-bar { background-color: #a67b45; -webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25); -moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25); box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.25); }

.btn-navbar .icon-bar + .icon-bar { margin-top: 3px; }

@media (max-width: 600px) { .content-main { float: none; width: 90%; padding: 0 5%; }
  .sidebar { float: none; width: 80%; padding: 5%; margin: 0 5%; }
  footer { padding: 5% 10%; }
  .nav-main-items { background: #000; display: none; position: absolute; top: 80px; left: 0; width: 100%; font-size: 15px !important; overflow-x: hidden; -ms-overflow-x: hidden; -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5); }
  .nav-main-items li { display: block; float: none; height: 40px; width: 100%; border-bottom: 1px solid #ccc; background-color: #ededed; background-repeat: repeat-x; background-image: -moz-linear-gradient(top, white, #ededed); background-image: -ms-linear-gradient(top, white, #ededed); background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #ededed)); background-image: -webkit-linear-gradient(top, white, #ededed); background-image: -o-linear-gradient(top, white, #ededed); background-image: linear-gradient(top, #ffffff, #ededed); filter: progid:dximagetransform.microsoft.gradient(startColorstr='#ffffff', endColorstr='#ededed', GradientType=0); }
  .nav-main-items li:last-child { border: none; }
  .nav-main-items li.hasChildren { height: auto !important; }
  .nav-main-items li.hasChildren ul { display: none; margin: 0 !important; padding: 0 0 0 20px !important; }
  .nav-main-items li.hasChildren ul li { background: none; }
  .nav-main-items li a { display: block; float: none; text-decoration: none; padding: 12px 20px; font-weight: normal; margin: 0; }
  .nav-main-items li a span { display: block; }
  .nav-main-items li a:link, .nav-main-items li a:visited { color: #666; text-decoration: none; outline: none; }
  .nav-main-items li a:hover, .nav-main-items li a:active { color: #a67b45; text-decoration: none; outline: none; background: rgba(0, 0, 0, 0.05); }
  .nav-main-items li.hasChildren a > span { background: url("../img/layout/nav-sprite.png"); background-position: right -97px !important; background-repeat: no-repeat; }
  .nav-main-items li.hasChildren a:hover > span, .nav-main-items li.hasChildren.hover > a span { background-position: right -138px !important; }
  .overthrow-enabled .overthrow { overflow: auto; -webkit-overflow-scrolling: touch; } }

  .download-pdf {
    display: inline-block;
    padding-left: 25px;
    background: url("../img/layout/if_file-pdf_285666.svg") 0 0 no-repeat;
    background-size: 20px;
    line-height: 22px;
  }
