/* 
 * HTML5 ✰ Boilerplate
 *
 * What follows is the result of much research on cross-browser styling. 
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 *
 * Detailed information about this CSS: h5bp.com/css
 * 
 * ==== Normalize ==========================================================
 */
/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}
audio,
canvas,
video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
}
[hidden] {
  display: none;
}
/* =============================================================================
	  Base
	  ========================================================================== */
/*
	* 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
	* 2. Force vertical scrollbar in non-IE
	* 3. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
	*/
html {
  font-size: 100%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}
body {
  margin: 0;
  line-height: 1.231;
}
body,
button,
input,
select,
textarea {
  font-family: sans-serif;
  color: #222;
}
/* 
	* Remove text-shadow in selection highlight: h5bp.com/i
	* These selection declarations have to be separate
	* Also: hot pink! (or customize the background color to match your design)
	*/
::-moz-selection {
  background: #3AC3E0;
  color: #fff;
  text-shadow: none;
}
::selection {
  background: #3AC3E0;
  color: #fff;
  text-shadow: none;
}
/* =============================================================================
	  Links
	  ========================================================================== */
/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover,
a:active {
  outline: 0;
}
/* =============================================================================
	  Typography
	  ========================================================================== */
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
blockquote {
  margin: 1em 40px;
}
dfn {
  font-style: italic;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}
ins {
  background: #ff9;
  color: #333;
  text-decoration: none;
}
mark {
  background: #ff0;
  color: #333;
  font-style: italic;
  font-weight: bold;
}
/* Redeclare monospace font family: h5bp.com/j */
pre,
code,
kbd,
samp {
  font-family: monospace, monospace;
  _font-family: 'courier new', monospace;
  font-size: 1em;
}
/* Improve readability of pre-formatted text in all browsers */
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: 85%;
}
/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* =============================================================================
	  Lists
	  ========================================================================== */
ul,
ol {
  margin: 1em 0;
  padding: 0 0 0 40px;
}
dd {
  margin: 0 0 0 40px;
}
ul,
nav ol {
  list-style: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}
/* =============================================================================
	  Embedded content
	  ========================================================================== */
/*
	* 1. Improve image quality when scaled in IE7: h5bp.com/d
	* 2. Remove the gap between images and borders on image containers: h5bp.com/e 
	*/
img {
  border: 0;
  vertical-align: middle;
}
/*
	* Correct overflow not hidden in IE9 
	*/
svg:not(:root) {
  overflow: hidden;
}
/* =============================================================================
	  Figures
	  ========================================================================== */
figure {
  margin: 0;
}
/* =============================================================================
	  Forms
	  ========================================================================== */
form {
  margin: 0;
}
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}
/* Indicate that 'label' will shift focus to the associated form element */
label {
  cursor: pointer;
}
/* 
	* 1. Correct color not inheriting in IE6/7/8/9 
	* 2. Correct alignment displayed oddly in IE6/7 
	*/
legend {
  border: 0;
  margin-left: -7px;
  padding: 0;
}
/*
	* 1. Correct font-size not inheriting in all browsers
	* 2. Remove margins in FF3/4 S5 Chrome
	* 3. Define consistent vertical alignment display in all browsers
	*/
button,
input,
select,
textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  vertical-align: middle;
}
/*
	* 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
	* 2. Correct inner spacing displayed oddly in IE6/7
	*/
button,
input {
  line-height: normal;
  overflow: visible;
}
/*
	* Reintroduce inner spacing in 'table' to avoid overlap and whitespace issues in IE6/7
	*/
table button,
table input {
  overflow: auto;
}
/*
	* 1. Display hand cursor for clickable form elements
	* 2. Allow styling of clickable form elements in iOS
	*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
}
/*
	* Consistent box sizing and appearance
	*/
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
}
input[type="search"] {
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/* 
	* Remove inner padding and border in FF3/4: h5bp.com/l 
	*/
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/* 
	* 1. Remove default vertical scrollbar in IE6/7/8/9 
	* 2. Allow only vertical resizing
	*/
textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical;
}
/* Colors for form validity */
input:invalid,
textarea:invalid {
  background-color: #f0dddd;
}
/* =============================================================================
	  Tables
	  ========================================================================== */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td {
  vertical-align: top;
}
/* ==== Non-semantic helper classes ========================================
	  Please define your styles before this section.
	  ========================================================================== */
/* For image replacement */
.ir {
  display: block;
  border: 0;
  text-indent: -999em;
  overflow: hidden;
  background-color: transparent;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr;
}
.ir br {
  display: none;
}
/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden {
  display: none !important;
  visibility: hidden;
}
/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
/* Hide visually and from screenreaders, but maintain layout */
.invisible {
  visibility: hidden;
}
/* Contain floats: h5bp.com/q */
.clearfloat,
.clearfloat:before,
.clearfloat:after {
  content: "";
  display: table;
  font-size: 1px;
  clear: both;
}
.clearfloat:after {
  clear: both;
}
.clearfloat {
  zoom: 1;
}
/* ==== RIASSEGNAZIONI BASE ====*/
h1,
h2,
h3,
h4,
h5 {
  font-family: 'Open Sans', sans-serif;
  color: #145e97;
  margin: 0;
  text-align: left;
}
h1,
h2 {
  font-size: 1.75em;
  font-weight: bold;
  margin-bottom: 0.25em;
  line-height: 150%;
}
h3 {
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 0.25em;
  line-height: 150%;
}
h4 {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 0.25em;
  line-height: 150%;
}
h5 {
  font-size: 1.15em;
  font-weight: normal;
  margin-bottom: 0;
  line-height: 150%;
}
p {
  margin: 0;
  padding: 0;
}
strong {
  font-weight: bold;
}
em {
  font-style: italic;
}
ul {
  list-style-type: disc;
  list-style-position: outside;
  margin-left: 1em;
}
.button {
  border: 0px;
  vertical-align: bottom;
}
.espon {
  font-size: 0.8em;
  vertical-align: super;
}
a,
a:link {
  text-decoration: underline;
  color: #d28833;
}
a:hover,
a:link:hover {
  text-decoration: underline;
  color: #b64d35;
}
/*==== FINE RIASSEGNAZIONI ====*/
/* ==== Print styles =======================================================
	  Inlined to avoid required HTTP connection: h5bp.com/r
	  ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: black !important;
    text-shadow: none !important;
    filter: none !important;
    -ms-filter: none !important;
  }
  /* Black prints faster: h5bp.com/s */
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  /* Don't show links for images, or javascript/internal links */
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  /* h5bp.com/t */
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
/* == Fine HTML5 ✰ Boilerplate == */
/* == Stili di base - Mobile first ===== */
body {
  font-size: 100%;
  font-family: 'Helvetica Neue', 'Open Sans', Arial, Verdana, sans-serif;
  font-weight: 400;
  color: #333;
  background: #145e97;
  margin: 0;
  padding: 0 0 10px 0;
}
input,
select,
textarea {
  border: 1px solid #c4c4c4;
  font-family: Arial, Helvetica, sans-serif;
}
form input,
form select,
form textarea {
  border-radius: 3px;
}
form input,
form textarea {
  padding: 5px;
}
#wrapper {
  width: 100%;
  background: #fff;
}
img {
  max-width: 100%;
}
/*** COOKIES DISCLAIMER ***/
#cookieDisclaimer {
  position: absolute;
  width: 340px;
  top: 20%;
  left: 50%;
  margin-left: -170px;
  background: #fff;
  border: 4px solid #009ee0;
  border-radius: 5px;
  box-shadow: 10px 10px 21px -13px rgba(0, 0, 0, 0.75);
  z-index: 10000;
  box-sizing: border-box;
  font-size: 0.85em;
  color: #222;
}
#cookieDisclaimer .box {
  display: block;
  margin: 0 auto;
  padding: 20px;
  line-height: 1.5em;
  box-sizing: border-box;
}
#cookieDisclaimer .box a {
  color: #F93;
}
#cookieDisclaimer .testa {
  margin: 0 auto;
  padding: 10px;
  font-size: 1.25em;
  font-weight: bold;
  line-height: 2em;
  text-align: center;
  color: #fff;
  background: #009ee0;
  box-sizing: border-box;
}
#cookieDisclaimer #btnContainer {
  margin-top: 20px;
  display: inline-grid;
  width: 100%;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  #cookieDisclaimer #btnContainer {
    grid-template-columns: auto auto auto;
    column-gap: 10px;
  }
}
#cookieDisclaimer #btnContainer .cookieBtn {
  font-size: 0.7em;
  line-height: 130%;
  margin-bottom: 5px;
  padding: 10px;
  border-radius: 8px;
  background: #f9f9f9;
  color: #959595;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
}
#cookieDisclaimer #btnContainer .cookieBtn:hover {
  background: #eeeeee;
}
@media only screen and (min-width: 768px) {
  #cookieDisclaimer #btnContainer .cookieBtn {
    padding: 10px 15px;
    margin-bottom: 0;
  }
}
#cookieDisclaimer #btnContainer #cookieOK {
  background: #3093b4;
  color: #fff;
}
#cookieDisclaimer #btnContainer #cookieOK:hover {
  background: #306383;
}
#cookieDisclaimer #cookiePrefs {
  display: block;
  margin-top: 10px;
  font-size: 0.8em;
  line-height: 150%;
}
#cookieDisclaimer #cookiePrefs .cmpl-category {
  display: table;
  width: 100%;
  margin-bottom: 4px;
}
#cookieDisclaimer #cookiePrefs .cmpl-category .row {
  display: inline-grid;
  width: 100%;
  grid-template-columns: 40% auto 35px;
  column-gap: 5px;
  background-color: #f9f9f9;
}
#cookieDisclaimer #cookiePrefs .cmpl-category .row > div {
  padding: 5px 8px;
}
#cookieDisclaimer #cookiePrefs .cmpl-category .details {
  background-color: #f9f9f9;
  padding: 5px 8px;
}
#cookieDisclaimer .cmpl-open {
  display: inline-block;
  cursor: pointer;
  content: '';
  background: url(../images/down.png) no-repeat;
  transform: rotate(0deg);
  -webkit-transition: all 0.5s ease;
  -moz-transition: all 0.5s ease;
  -o-transition: all 0.5s ease;
  transition: all 0.5s ease;
  background-size: cover;
  height: 15px;
  width: 15px;
  margin-right: 5px;
}
@media only screen and (min-width: 768px) {
  #cookieDisclaimer .cmpl-open {
    height: 20px;
    width: 20px;
  }
}
@media only screen and (min-width: 768px) {
  #cookieDisclaimer {
    width: 500px;
    margin-left: -250px;
  }
}
/*** END COOKIES DISCLAIMER ***/
#header {
  width: 100%;
  position: relative;
  margin: 0 auto;
  padding: 0;
  background: #fff;
}
#testata,
#menu {
  width: 100%;
  position: relative;
  margin: 0 auto;
  padding: 0;
}
#testata {
  background: url(../images/logoTestaSmall.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  height: 160px;
}
#testata img {
  width: 100%;
  height: 100%;
}
#testata .logoTesta {
  height: 100%;
  margin: 0;
  padding: 0;
}
#testata .logoTesta img {
  width: 100%;
  height: 100%;
}
#language {
  position: absolute;
  width: auto;
  top: 51px;
  left: 4px;
  z-index: 100;
  border: none;
  margin: 0px;
  padding: 0px;
}
#container {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  text-align: center;
}
#primoPiano {
  width: 100%;
  margin: 0 auto;
  background: #666;
}
#primoPiano h1,
#primoPiano h2 {
  text-align: center;
}
#flexContainer {
  display: inline-block;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #flexContainer {
    width: 720px;
  }
}
@media only screen and (min-width: 1024px) {
  #flexContainer {
    width: 960px;
  }
}
@media only screen and (min-width: 1200px) {
  #flexContainer {
    width: 1100px;
  }
}
#menu {
  width: 100%;
  text-align: left;
  text-transform: uppercase;
  position: relative;
}
#menu.collapsible {
  margin: 0;
}
#menu.collapsible .section {
  width: 100%;
  height: 30px;
  background: #0f436b url(../images/sections.svg) no-repeat top center;
  cursor: pointer;
}
#menu.collapsible .section.minus {
  background: #0f436b url(../images/sectionsMinus.svg) no-repeat top center;
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  #menu.collapsible .section {
    display: none;
    height: 0;
  }
}
@media only screen and (min-width: 768px) {
  #menu {
    height: 40px;
    line-height: 40px;
    font-size: 1.05rem;
    color: #000;
    letter-spacing: 3px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    background: none;
  }
  #menu:before {
    content: '';
    display: inline-block;
    background: #CCC;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
  }
}
@media only screen and (min-width: 1024px) {
  #menu {
    width: 960px;
  }
}
@media only screen and (min-width: 1200px) {
  #menu {
    width: 1100px;
  }
}
.menuArrow {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid #222;
  display: inline-block;
  vertical-align: middle;
  width: 0;
  height: 0;
  margin: 0 0 0 5px;
  text-indent: -9999px;
}
#menuAlto {
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 10px;
  right: 1em;
  z-index: 100;
  margin: 0px;
  text-align: right;
  line-height: 30px;
  height: 30px;
}
@media (min-width: 768px) {
  #menuAlto {
    top: auto;
    bottom: 20px;
  }
}
/*** MENU ***/
/* ==== PRIMO LIVELLO ==== */
ul#nav {
  position: relative;
  left: 0;
  z-index: 50;
  background: none;
  font-family: Helvetica, Verdana, sans-serif;
  font-size: 1em;
  font-weight: bold;
  margin: 0;
  width: 100%;
  text-align: left;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  ul#nav {
    display: inline-block;
    width: auto;
    top: 0;
    font-size: 0.8em;
    font-weight: normal;
    font-family: 'Montserrat', Helvetica, Verdana, sans-serif;
    height: 40px;
    line-height: 40px;
    background: none;
    text-align: center;
  }
}
ul#nav li {
  position: relative;
  height: 40px;
  display: block;
  box-sizing: border-box;
  /* ==== SECONDO LIVELLO ==== */
}
@media only screen and (min-width: 768px) {
  ul#nav li {
    float: left;
    background: none;
    transition: all 0.2s;
  }
}
@media only screen and (min-width: 1024px) {
  ul#nav li {
    display: block;
  }
}
ul#nav li a {
  display: block;
  position: relative;
  text-align: left;
  text-decoration: none;
  color: #fff;
  background: #067aba;
  padding: 0 35px 0 15px;
  height: 40px;
  border-bottom: 1px solid #fff;
  line-height: 40px;
  box-sizing: border-box;
}
ul#nav li a:hover,
ul#nav li a:active {
  background: #0391e0;
  transition: background 0.3s linear;
}
@media only screen and (min-width: 768px) {
  ul#nav li a:hover,
  ul#nav li a:active {
    background: #f5f5f5;
  }
}
@media only screen and (min-width: 1024px) {
  ul#nav li a:hover,
  ul#nav li a:active {
    transition: background 0.3s linear;
  }
}
ul#nav li a:hover > a {
  background-color: #0391e0;
}
@media only screen and (min-width: 1024px) {
  ul#nav li a:hover > a {
    background-color: #0391e0;
  }
}
@media only screen and (min-width: 768px) {
  ul#nav li a {
    color: #333;
    padding: 0 15px;
    border-right: none;
    background: #fff;
    border-bottom: none;
    text-align: center;
    transition: all 0.2s;
  }
  ul#nav li a:after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 4px;
    background-color: #009ee0;
    content: "";
    transition: width 0.2s;
  }
  ul#nav li a:hover:after {
    width: 100%;
  }
}
ul#nav li:hover > a {
  background-color: #0391e0;
}
@media only screen and (min-width: 768px) {
  ul#nav li:hover > a {
    background-color: #f5f5f5;
    color: #000;
  }
}
ul#nav li:hover ul {
  left: 1.5em;
}
@media only screen and (min-width: 768px) {
  ul#nav li:hover ul {
    left: 0;
  }
}
ul#nav li ul {
  position: absolute;
  padding: 0;
  top: 40px;
  left: -9999px;
  width: 100%;
  z-index: 250;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  ul#nav li ul {
    margin: 0;
    margin-top: 0;
    top: 40px;
    left: -9999px;
    width: 250px;
    background: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: normal;
    box-shadow: 4px 8px 17px -11px #000000;
  }
}
ul#nav li ul li {
  position: relative;
  display: block;
  float: none;
  background-image: none;
  background-color: #489dac;
  margin-right: 0;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  /*** III LIVELLO ***/
}
ul#nav li ul li a {
  display: block;
  background-image: none;
  background-color: transparent;
  color: #fff;
  padding-left: 3%;
  border-bottom: none;
  border: none;
  height: auto;
  letter-spacing: 0;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  ul#nav li ul li a {
    color: #333;
    padding: 0 15px;
    border-right: none;
    background: transparent;
    border-bottom: none;
    text-align: left;
    transition: all 0.2s;
  }
}
ul#nav li ul li:hover {
  background-color: #56929c;
}
ul#nav li ul li:hover ul {
  visibility: visible;
}
@media only screen and (min-width: 768px) {
  ul#nav li ul li {
    background-color: #fff;
    padding: 0 15px;
    height: auto;
    text-align: left;
  }
  ul#nav li ul li:hover {
    background-color: #f5f5f5;
  }
  ul#nav li ul li > a:after {
    display: none;
  }
  ul#nav li ul li:last-of-type a {
    border-bottom: none;
  }
  ul#nav li ul li:hover > a {
    background-color: transparent;
  }
  ul#nav li ul li:first-of-type {
    border-top: 1px solid #ccc;
  }
  ul#nav li ul li:last-of-type {
    border-bottom: 4px solid #0391e0;
  }
}
ul#nav li ul li ul {
  z-index: 300;
  top: 30px;
  padding: 0;
  width: 16em;
  background: #30a8dc;
  visibility: hidden;
  color: #fff;
}
ul#nav li ul li ul li {
  width: 16em;
  float: none;
  background: none;
}
ul#nav li ul li ul li a {
  background: #fff;
  color: #000;
  border-bottom: 1px solid #C90;
}
ul#nav li ul li ul li a:hover {
  background-color: #f9f9f9;
}
/* ===== END NAV ==== */
#main {
  padding: 0;
  margin: 0 auto;
  width: 95%;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  #main {
    width: 720px;
    padding: 10px 0 0 0;
    margin: 0 auto;
    font-size: 1rem;
    line-height: 1.5rem;
    text-align: justify;
    box-sizing: border-box;
  }
}
@media only screen and (min-width: 1024px) {
  #main {
    width: 960px;
    padding: 10px 0 0 0;
  }
}
@media only screen and (min-width: 1200px) {
  #main {
    width: 1100px;
  }
}
#claim {
  margin: 20px auto 20px auto;
  text-align: center;
  font-size: 1.5rem;
  color: #222;
  line-height: 150%;
}
@media only screen and (min-width: 768px) {
  #claim {
    font-size: 2rem;
    padding: 0 10%;
  }
}
.subClaim {
  margin: 20px 0 0 0;
  font-size: 1.25rem;
  color: #222;
  line-height: 150%;
}
.promobox {
  margin: 20px0;
  font-size: 1.25rem;
  line-height: 150%;
  padding: 20px;
  background-color: #e28c30;
}
.promobox * {
  color: #fff;
}
a.labelButton {
  display: inline-block;
  background-color: #fff;
  border-radius: 2px;
  border: 1px solid #b1b1b1;
  color: #222;
  font-family: 'Open Sans', arial;
  font-size: 1.25rem;
  padding: 30px;
  text-decoration: none;
  cursor: pointer;
}
a.labelButton:hover {
  display: inline-block;
  background-color: #009ee0;
  color: #fff;
  text-decoration: none;
}
/*** HOME ***/
#featuresBox {
  position: relative;
  background: #f5f5f5;
  margin: 0;
  padding: 0;
}
#featuresBox h3 {
  color: #fff;
  text-align: center;
  padding: 20px;
  margin: 0;
}
#featuresBox h4 {
  text-align: center;
  font-size: 1.05em;
  margin-top: 10px;
}
#features {
  width: 100%;
  padding: 2%;
  position: relative;
  box-sizing: border-box;
}
#features .boxFeature {
  position: relative;
  float: left;
  width: 100%;
  height: 215px;
  margin: 0 auto;
  padding: 20px;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 3px;
  vertical-align: top;
  overflow: hidden;
  z-index: 0;
  box-sizing: border-box;
  transition: all 1s;
}
#features .boxFeature:hover {
  background-position: 0 0;
  border: 1px solid #ccc;
  background: #fff;
  overflow: visible;
  cursor: pointer;
  z-index: 100;
}
#features .boxFeature:hover .featuresRefs {
  z-index: 100;
}
#features .boxFeature:hover > b {
  background-position: 0 0;
}
@media only screen and (min-width: 768px) {
  #features .boxFeature {
    width: 46%;
  }
}
@media only screen and (min-width: 1024px) {
  #features .boxFeature {
    width: 32%;
  }
}
@media only screen and (min-width: 1024px) {
  #features .boxFeature {
    width: 24%;
  }
}
.featuresText {
  text-align: left;
  color: #666;
}
.featuresIcon {
  display: inline-block;
  min-width: 140px;
  min-height: 140px;
}
.featuresIcon.anagrafiche {
  background: url(../images/home/anagrafiche.png) no-repeat 0 -140px;
}
.featuresIcon.lista {
  background: url(../images/home/liste.png) no-repeat 0 -140px;
}
.featuresIcon.fatture {
  background: url(../images/home/fatture.png) no-repeat 0 -140px;
}
.featuresIcon.planner {
  background: url(../images/home/planner.png) no-repeat 0 -140px;
}
.featuresIcon.studi {
  background: url(../images/home/studi.png) no-repeat 0 -140px;
}
.featuresIcon.prestazioni {
  background: url(../images/home/prestazioni.png) no-repeat 0 -140px;
}
.featuresIcon.operatori {
  background: url(../images/home/operatori.png) no-repeat 0 -140px;
}
.featuresIcon.notifiche {
  background: url(../images/home/notifiche.png) no-repeat 0 -140px;
}
.featuresIcon.archive {
  background: url(../images/home/archive.png) no-repeat 0 -140px;
}
.featuresIcon.stat {
  background: url(../images/home/stat.png) no-repeat 0 -140px;
}
.featuresIcon.gruppi {
  background: url(../images/home/gruppi.png) no-repeat 0 -140px;
}
.featuresIcon.docs {
  background: url(../images/home/docs.png) no-repeat 0 -140px;
}
.featuresRefs {
  position: absolute;
  display: none;
  left: -1px;
  padding: 10px;
  width: 100%;
  border: 1px solid #ccc;
  border-top: none;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-radius: 0 0 3px 3px;
  background: #fff;
  box-sizing: border-box;
}
#footer {
  background: #145e97;
  box-sizing: border-box;
  color: #fff;
  border-top: 4px solid #0f436b;
  margin: 0;
}
#footer a {
  color: #d5edfa;
}
#footer p {
  margin: 0;
  padding: 10px 0;
}
#footer #footerContent {
  padding: 10px;
  width: 95%;
  margin: 0 auto 10px auto;
}
@media only screen and (min-width: 768px) {
  #footer #footerContent {
    width: 720px;
  }
}
@media only screen and (min-width: 1024px) {
  #footer #footerContent {
    width: 960px;
  }
}
@media only screen and (min-width: 1200px) {
  #footer #footerContent {
    width: 1100px;
  }
}
.frame_footer {
  float: left;
  background: none;
  padding: 0 1em;
  font-size: 0.75em;
  line-height: 1.5em;
  margin: 20px 0 10px 0;
  height: auto;
}
.frame_footer2 {
  float: left;
  background: none;
  padding: 0 1em;
  font-size: 0.75em;
  line-height: 1.5em;
  margin-left: 4px;
  margin-top: 25px;
  height: auto;
}
.sep_footer {
  display: none;
}
@media only screen and (min-width: 768px) {
  .sep_footer {
    display: block;
    float: left;
    min-height: 100px;
    min-width: 1px;
    border-left: 1px solid #fff;
    margin: 20px 10px 0 10px;
  }
}
/*** TABELLE ***/
.tableB {
  color: #666;
  font-size: 12px;
  text-align: left;
  background: #eaebec;
  margin: 10px 0 0 0;
}
.tableB a:link {
  color: #666;
  font-weight: bold;
  text-decoration: underline;
}
.tableB a:visited {
  color: #999999;
  font-weight: bold;
  text-decoration: none;
}
.tableB a:active,
.tableB a:hover {
  color: #bd5a35;
  text-decoration: underline;
}
.tableB th,
.tableB thead td {
  text-transform: uppercase;
  text-align: center;
  vertical-align: top;
  padding: 5px;
  border-top: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
  border-left: 1px solid #fff;
  font-weight: bold;
  font-size: 0.9em;
  line-height: 150%;
  background: #f2f2f2;
}
.tableB th {
  color: #222;
}
.tableB th:first-child,
.tableB td:first-child {
  border-left: none;
}
.tableB tr.sez2 th {
  color: #fff;
  text-align: center;
  background: #dd7602;
}
.tableB tr.sezione th,
.tableB th.sezione {
  color: #fff;
  text-align: center;
  background: #68bcd4;
  background: -webkit-gradient(linear, left top, left bottom, from(#68bcd4), to(#599eb2));
  background: -moz-linear-gradient(top, #68bcd4, #599eb2);
}
.tableB tr:first-child th,
.tableB tr:first-child td {
  border-top: 1px solid #e6e6e6;
}
.tableB tr {
  text-align: center;
  padding-left: 5px;
}
.tableB td {
  vertical-align: top;
  padding: 5px;
  border-top: 1px solid #ffffff;
  border-bottom: 1px solid #e0e0e0;
  background: #fff;
  text-align: left;
  line-height: 150%;
}
.tableB tr.even td {
  background: #f6f6f6;
  background: -webkit-gradient(linear, left top, left bottom, from(#f8f8f8), to(#f6f6f6));
  background: -moz-linear-gradient(top, #f8f8f8, #f6f6f6);
}
.tableB tr:last-child td {
  border-bottom: none;
}
.tableB tr:last-child td:first-child {
  -moz-border-radius-bottomleft: 3px;
  -webkit-border-bottom-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.tableB tr:last-child td:last-child {
  -moz-border-radius-bottomright: 3px;
  -webkit-border-bottom-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.tableB tbody tr:hover td,
.tableB tbody tr.figlio:hover td {
  background: #fefdf6;
}
.tableB tr.nascondi th {
  background: #e2eded;
  background: -webkit-gradient(linear, left top, left bottom, from(#e2eded), to(#d2eeee));
  background: -moz-linear-gradient(top, #e2eded, #d2eeee);
}
.tableB tr.figlio td {
  background: #f6f6f6;
}
.tableB tr.noBorder td {
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #e0e0e0;
  min-height: 1em;
}
/*** TABELLA LISTINO ***/
.tableList {
  color: #666;
  font-size: 1em;
  text-align: left;
  min-width: 50%;
  margin-bottom: 2em;
  border: 0;
}
.tableList th {
  text-transform: uppercase;
  text-align: center;
  color: #fff;
  vertical-align: top;
  padding: 5px 15px;
  font-weight: bold;
  font-size: 0.9em;
  background: #666;
}
.tableList td {
  vertical-align: top;
  padding: 5px 15px;
  border-bottom: 1px solid #ccc;
  text-align: left;
}
/*** BUTTONS ***/
a.logBtn {
  display: block;
  background: #3498db;
  background-image: -webkit-linear-gradient(top, #3498db, #2980b9);
  background-image: -moz-linear-gradient(top, #3498db, #2980b9);
  background-image: -ms-linear-gradient(top, #3498db, #2980b9);
  background-image: -o-linear-gradient(top, #3498db, #2980b9);
  background-image: linear-gradient(to bottom, #3498db, #2980b9);
  -webkit-border-radius: 28;
  -moz-border-radius: 28;
  border-radius: 28px;
  font-family: 'Open Sans', Arial;
  color: #ffffff;
  font-size: 1.15rem;
  padding: 12px 40px 12px 40px;
  text-decoration: none;
}
a.logBtn:hover {
  background: #3cb0fd;
  background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
  background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
  text-decoration: none;
}
/*==== BREADCRUMBS ====*/
.breadcrumb {
  display: none;
  margin: 0 0 20px 0;
  padding: 0;
  font-size: 0.75em;
  color: #777;
  font-weight: 300;
  line-height: 21px;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .breadcrumb {
    display: block;
  }
}
.breadcrumb .breadSep {
  display: inline-block;
  padding: 0;
  width: 25px;
  height: 100%;
  line-height: 21px;
  background: url(../images/breadCrumbBack.svg) no-repeat 0 0;
  background-size: 21px 14px;
}
.breadcrumb .breadSepLast {
  display: inline-block;
  width: 25px;
  min-height: 21px;
  padding: 0;
  margin: 0;
  background: url(../images/breadCrumbBackSelected.svg) no-repeat 0 0;
  background-size: 28px 21px;
}
.breadcrumb .breadText {
  display: inline-block;
  height: 20px;
  line-height: 20px;
  padding: 0 10px 0 20px;
  margin: 0;
  background: #fff url(../images/breadCrumbBack.svg) no-repeat -1px 0;
  background-size: 10px 20px;
  box-sizing: border-box;
}
.breadcrumb .breadLast {
  display: inline-block;
  height: 20px;
  line-height: 20px;
  color: #fff;
  padding: 0 10px 0 20px;
  margin: 0;
  background: #000 url(../images/breadCrumbBackSelected.svg) no-repeat -1px 0;
  background-size: 10px 20px;
  box-sizing: border-box;
}
.breadcrumb .back a {
  display: block;
  float: left;
  margin: 0 4px 0 0;
  padding: 0;
  font-size: 0.1em;
  text-indent: -9999px;
  width: 20px;
  height: 20px;
  background: url(../images/back.png) no-repeat top left;
}
.breadcrumb .back a:hover {
  background-position: bottom left;
}
/*==== END BREADCRUMBS ====*/
/*==== MASONRY ====*/
.masonry-layout {
  column-count: 1;
  column-gap: 15px;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .masonry-layout {
    column-count: 2;
  }
}
@media only screen and (min-width: 1024px) {
  .masonry-layout {
    column-count: 3;
  }
}
@media only screen and (min-width: 1200px) {
  .masonry-layout {
    column-count: 4;
  }
}
.masonry-layout-panel {
  display: inline-block;
  margin: 0 0 1em;
  width: 100%;
}
#titMail {
  color: #d5edfa;
  cursor: pointer;
}
#titMail:hover {
  text-decoration: underline;
}
/*** BOTTONI ***/
.btn {
  display: inline-block;
  padding: 4px 12px;
  margin-bottom: 0;
  margin-left: 0.3em;
  font-size: 14px;
  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, #ffffff, #e6e6e6);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
  background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
  background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
  background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
  background-repeat: repeat-x;
  border: 1px solid #cccccc;
  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);
  border-bottom-color: #b3b3b3;
  border-radius: 4px;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0);
}
.btn:hover,
.btn:focus,
.btn:active,
.btn.active,
.btn.disabled,
.btn[disabled] {
  color: #333333;
  background-color: #e6e6e6;
}
.btn:active,
.btn.active {
  background-color: #cccccc \9;
}
.btn:first-child {
  margin-left: 0;
}
.btn:hover,
.btn:focus {
  color: #333333;
  text-decoration: none;
  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
  -moz-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-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-primary.active,
.btn-warning.active,
.btn-danger.active,
.btn-success.active,
.btn-info.active,
.btn-inverse.active {
  color: rgba(255, 255, 255, 0.75);
}
.btn-primary,
a.btn-primary {
  background: #3498db;
  background-image: -webkit-linear-gradient(top, #3498db, #2980b9);
  background-image: -moz-linear-gradient(top, #3498db, #2980b9);
  background-image: -ms-linear-gradient(top, #3498db, #2980b9);
  background-image: -o-linear-gradient(top, #3498db, #2980b9);
  background-image: linear-gradient(to bottom, #3498db, #2980b9);
  -webkit-border-radius: 14;
  -moz-border-radius: 14;
  border-radius: 14px;
  color: #ffffff;
  padding: 4px 14px 4px 14px;
  text-decoration: none;
}
.btn-primary:hover,
a.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.disabled,
.btn-primary[disabled] {
  background: #3cb0fd;
  color: #ffffff;
  background-image: -webkit-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -moz-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -ms-linear-gradient(top, #3cb0fd, #3498db);
  background-image: -o-linear-gradient(top, #3cb0fd, #3498db);
  background-image: linear-gradient(to bottom, #3cb0fd, #3498db);
  text-decoration: none;
}
.obbligatorio {
  display: inline-block;
  color: #f00;
  margin-right: 5px;
}
#msgBox {
  color: #ee7f00;
  font-weight: bold;
  font-size: 1rem;
  margin: 10px 0 10px 0;
}
#msgBox span {
  display: inline-block;
  padding-left: 30px;
  min-height: 25px;
  line-height: 25px;
  background: url(../images/msg.svg) no-repeat 0 0;
}
/* ==== NEWS === */
.titNewsBox,
.titApici {
  position: relative;
  font-family: 'Open Sans', sans-serif;
  font-size: 1.5rem;
  font-weight: bold;
  font-weight: 700;
  letter-spacing: 2px;
  color: #222;
  min-height: 35px;
  line-height: 35px;
  text-align: center;
  margin-bottom: 2rem;
  background-color: transparent;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.titApici {
  font-size: 1.2rem;
  min-height: 25px;
  line-height: 25px;
}
.titApici span {
  position: absolute;
  display: inline-block;
  padding-right: 10px;
  padding-left: 50px;
  background: #fff url(../images/apici.svg) no-repeat 8px 0;
  background-color: #fff;
  background-size: 30px 24px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
.titApici:before {
  content: '';
  display: inline-block;
  background: #CCC;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  z-index: 0;
}
@media only screen and (min-width: 1024px) {
  .titApici {
    font-size: 1.5rem;
  }
}
.titNewsBox span {
  position: absolute;
  display: inline-block;
  padding-right: 5px;
  padding-left: 5px;
  background: #fff;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
.titNewsBox:before {
  content: '';
  display: inline-block;
  background: #CCC;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  z-index: 0;
}
.titNewsBox:before span {
  background-color: #fff;
}
@media only screen and (min-width: 768px) {
  .titNewsBox:before {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1024px) {
  .titNewsBox {
    font-family: 'Work Sans', sans-serif;
  }
}
#newsContainer {
  width: 100%;
  padding: 0;
  background-color: transparent;
  box-sizing: border-box;
}
#newsContainer .newsBox {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 5px;
  margin-top: 0.5em;
  margin-bottom: 0.25em;
}
@media only screen and (min-width: 768px) {
  #newsContainer .newsBox {
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  #newsContainer .newsBox {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
#newsContainer .newsFrame {
  font-size: 1em;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 300px;
  max-height: 300px;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  transition: all 1s;
}
#newsContainer .newsFrame a {
  text-decoration: none;
}
#newsContainer .newsFrame img {
  width: 100%;
}
#newsContainer .newsFrame:hover .imgWrap {
  background-position: 0 -5px;
}
#newsContainer .newsFrame:hover .newsTxtBlock {
  max-height: 300px;
  visibility: visible;
  transition: max-height 1.5s ease-in, visibility 1.5s ease-in;
}
#newsContainer .newsFrame .artRefs {
  position: absolute;
  z-index: 400;
  padding: 15px;
  bottom: 0;
  width: 100%;
  background: rgba(155, 198, 200, 0.85);
  box-sizing: border-box;
}
#newsContainer .newsFrame .newsTxtBlock {
  visibility: hidden;
  max-height: 0;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.85em;
  line-height: 1.15em;
  color: #fff;
  transition: max-height 0.5s ease-out, visibility 0.5s ease-out;
}
#newsContainer .newsFrame .introNews {
  display: block;
  margin: 0;
  padding: 0;
}
#newsContainer .newsFrame h2,
#newsContainer .newsFrame h2 a,
#newsContainer .newsFrame h2 a:link {
  padding: 0;
  color: #222;
  margin: 0 0 0.25em 0;
  font-size: 1.35rem;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  #newsContainer .newsFrame h2,
  #newsContainer .newsFrame h2 a,
  #newsContainer .newsFrame h2 a:link {
    font-family: 'Work Sans', sans-serif;
    font-size: 1.15em;
    line-height: 1.25em;
    text-transform: none;
    margin-top: 0;
    margin-bottom: 0.5em;
  }
}
#newsContainer .newsFrame h2 a {
  text-decoration: none;
}
#newsContainer .newsFrame h2 a:hover,
#newsContainer .newsFrame h2 a:link:hover {
  text-decoration: none;
  color: #fff;
}
@media only screen and (min-width: 1024px) {
  #newsContainer .newsFrame h2 {
    margin-top: 0;
    margin-bottom: 0.5em;
  }
}
@media only screen and (min-width: 768px) {
  #newsContainer .newsFrame {
    height: 300px;
    max-height: 300px;
  }
}
#newsContainer .imgWrap {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  transition: background-position 1s;
}
#newsContainer .news_sep {
  float: left;
  width: 0;
}
@media only screen and (min-width: 1024px) {
  #newsContainer .news_sep {
    float: left;
    width: 2%;
    min-width: 2%;
    height: 1px;
  }
}
@media only screen and (min-width: 1024px) {
  #newsContainer {
    margin: 0;
    padding: 0;
  }
}
#boxListaNews {
  width: 100%;
  padding: 0;
  background-color: transparent;
  box-sizing: border-box;
}
#boxListaNews .newsGrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 10px;
  margin-top: 1em;
  margin-bottom: 1em;
}
#boxListaNews .newsGrid a {
  text-decoration: none;
}
#boxListaNews .newsGrid a:hover div {
  background-color: azure;
}
@media only screen and (min-width: 768px) {
  #boxListaNews .newsGrid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  #boxListaNews .newsGrid {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
}
#boxListaNews .newsExtractBox {
  margin: 0;
  padding: 15px;
  width: 100%;
  height: 150px;
  max-height: 150px;
  border: 1px solid #ccc;
  box-sizing: border-box;
}
#boxListaNews .newsExtract {
  font-size: 1em;
  margin: 0;
  padding: 0;
  border: none;
  height: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
#boxListaNews .newsExtract .estratto {
  font-style: italic;
  font-size: 0.85em;
  line-height: 1.35em;
  color: #666;
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  #boxListaNews {
    margin: 0;
    padding: 0;
  }
}
/* ==== VIDEO === */
.moreVideo {
  display: inline-block;
  background: url(../images/moreVideo.svg) no-repeat 0px 0px;
  height: 26px;
  line-height: 14px;
  font-size: 0.8em;
  color: #5c5c5c;
  text-align: left;
  margin-bottom: 10px;
  padding-left: 38px;
  text-decoration: none;
}
.moreVideo:hover {
  background-position: 0px -26px;
}
@media only screen and (min-width: 768px) {
  .moreVideo {
    line-height: 28px;
  }
}
.videoBox {
  display: inline-block;
  width: 100%;
  padding: 0;
  margin-right: 0.5%;
  margin-top: 10px;
  background: #fff;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .videoBox {
    width: 49%;
  }
}
@media only screen and (min-width: 1024px) {
  .videoBox {
    width: 32.5%;
  }
}
.videoCop {
  display: block;
  margin: 0;
  padding: 8px;
  color: #FFF;
  width: 100%;
  height: 50px;
  overflow: hidden;
  position: relative;
  background: #000;
  box-sizing: border-box;
}
.videoContainer {
  position: relative;
  width: 100%;
  padding: 0;
  padding-top: 56.25%;
  /* 16:9 Aspect Ratio */
  text-align: center;
}
.videoContainer h4 {
  color: #3093b4;
  text-align: left;
  line-height: 1.15em;
  margin-top: 2px;
}
.videoContainer.videoPlaceHolder {
  background-image: url(../images/YTplaceholder.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.videoContainer .videoTitle {
  box-sizing: border-box;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  z-index: 1000;
  font-size: 1em;
  font-weight: bold;
  color: #fff;
  top: 0;
  text-align: left;
  padding: 8px;
  background: #145e97;
  background: linear-gradient(90deg, #145e97 82%, rgba(255, 255, 255, 0) 100%);
  transition: visibility 0s, opacity 0.5s linear;
}
.videoContainer:hover .videoTitle {
  visibility: visible;
  opacity: 1;
  width: 80%;
  transition: all 0.5s ease;
}
.video-iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.videoIcon {
  display: inline-block;
  background: url(../images/videoIcon.svg) no-repeat 0 0;
  padding: 0;
  margin-right: 0;
  min-height: 40px;
  min-width: 70px;
}
.videoIcon:hover {
  background-position: 0 -40px;
}
/*==== END YOUTUBE ====*/
/*==== VIDEO GALLEY ====*/
#videoGallery {
  padding: 0;
  width: 100%;
}
#videoGallery h4 {
  color: #fff;
  text-align: left;
  line-height: 1.15em;
  margin-top: 2px;
}
/*==== END VIDEO GALLEY ====*/
.data,
.dataVideo,
.dataWhite,
.dataNewsList,
.dataPost {
  display: block;
  background: url(../images/data_icon.png) no-repeat top left;
  height: 14px;
  font-family: "Montserrat", Arial, sans-serif;
  font-size: 0.8em;
  font-weight: 400;
  color: #222;
  text-align: left;
  line-height: 0.8em;
  margin-bottom: 0.5em;
  padding-left: 14px;
  box-sizing: border-box;
}
.dataWhite {
  background: url(../images/dataWhite_icon.png) no-repeat top left;
  color: #fff;
}
/* override margin bottom */
.dataVideo,
.dataNewsList {
  margin-bottom: 0;
}
.dataNewsList {
  color: #027cbd;
}
/*** BOX INDICE NEWS ***/
#newsList {
  padding: 5px;
  border-left: 1px dotted #CCC;
}
.bloccoNewsList {
  margin-bottom: 4px;
  padding: 0 0 4px 0;
}
.annoNewsList {
  display: block;
  font-family: 'Work Sans', sans-serif;
  font-weight: bold;
  font-size: 1.1rem;
  color: #000;
  text-align: left;
  margin: 0;
  margin: 10px 0 0 10px;
}
.annoNewsList a {
  text-decoration: none;
}
.meseNewsList {
  display: block;
  font-family: 'Work Sans', sans-serif;
  font-weight: 400;
  font-size: 0.85rem;
  color: #333;
  text-align: left;
  margin-left: 10px;
  margin-bottom: 6px;
  background: url(../images/greyDot_1-3.png) repeat-x 50%;
}
.meseNewsList span {
  display: inline-block;
  margin: 0;
  padding-right: 5px;
  background: #FFF;
}
.titNewsList {
  display: block;
  font-weight: bold;
  font-size: 1em;
  color: #000;
  text-align: left;
  line-height: 1.4em;
  margin-bottom: 8px;
  color: #666;
}
.titNewsList a {
  text-decoration: none;
}
.moreNews {
  height: auto;
  box-sizing: border-box;
  margin-bottom: 20px;
  text-align: center;
  padding-top: 30%;
}
.moreNewsButton {
  position: absolute;
  top: 25%;
  left: 0;
  width: 100%;
  height: auto;
  min-height: 100px;
  box-sizing: border-box;
}
.moreNews a,
.moreNewsButton a {
  display: inline-block;
  background: url(../images/moreNews.svg) no-repeat 10px 10px;
  background-size: 28px 28px;
  line-height: 30px;
  font-family: 'Work Sans', sans-serif;
  font-size: 1em;
  text-align: left;
  padding: 10px 10px 10px 42px;
  text-decoration: none;
  width: auto;
  border: 1px solid #ccc;
  box-sizing: border-box;
  vertical-align: middle;
}
.moreNews a:hover,
.moreNewsButton a:hover {
  text-decoration: none;
  color: #222;
  background-color: #f9f9f9;
}
/* ==== END NEWS === */
/*** PAGINAZIONE RISULTATI RICERCA ***/
.pageButton {
  display: inline-block;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  min-width: 2em;
  padding: 2px;
  margin-right: 1px;
  border: 1px solid #dfdcd6;
  text-align: center;
  color: #333;
  cursor: pointer;
  background: #fff;
  border-radius: 0;
}
.pageButton:hover {
  background-color: #ccc;
}
.pageSelected {
  display: inline-block;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.8em;
  font-weight: bold;
  min-width: 2em;
  padding: 2px;
  cursor: pointer;
  border: 1px solid #dfdcd6;
  text-align: center;
  color: #fff;
  background: #dfdcd6;
  border-radius: 0;
}
.cercaRemember {
  border: none;
  background-color: transparent;
  color: #306383;
  text-decoration: underline;
  margin: 0;
  padding: 0;
  font-size: 1em;
  cursor: pointer;
}
.titoloBlocco {
  display: block;
  line-height: 1.35em;
  margin-bottom: 4px;
  margin-top: 10px;
  font-size: 1.15em;
  font-weight: bold;
  color: #027cbd;
  letter-spacing: 2px;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .titoloBlocco {
    font-family: 'Open Sans', sans-serif;
    font-weight: 400;
    font-size: 1.2em;
    line-height: 1.2em;
  }
}
/*** SOCIAL PLUGINS BAR, MAIL ***/
.socials {
  display: block;
  position: relative;
  overflow: hidden;
  margin: 10px 0 0 0;
}
.socialsTitle {
  position: relative;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
}
.socialsTitle span {
  position: relative;
  margin: 0 auto;
  display: inline-block;
  background-color: #fff;
  color: #222;
  font-family: 'Montserrat', sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: 2px;
  padding: 6px 20px;
  box-sizing: border-box;
}
.socialsTitle:before {
  content: '';
  display: inline-block;
  background: #CCC;
  height: 1px;
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
}
.list-social {
  margin: 10px 0;
  padding: 0;
  text-align: center;
}
.list-social li {
  display: inline-block;
  width: auto;
  vertical-align: top;
  text-align: center;
  position: relative;
  margin: 0 10px 0 0;
}
.list-social li a {
  text-align: center;
  text-decoration: none;
  margin: 0;
}
.outer-circle {
  display: inline-block;
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.25);
  border-radius: 20px;
  border: 1px solid #fff;
  padding: 5px;
  box-sizing: border-box;
}
.outer-circle:hover {
  border: 1px solid #9b9b9b;
  transition-duration: 275ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.53, -0.67, 0.73, 0.74);
}
.outer-circle .inner-circle {
  display: block;
  width: 100%;
  height: 100%;
  text-align: center;
  box-sizing: none;
  border: 1px solid #222;
  border-radius: 15px;
  border: none;
}
.soc_fb {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff url(../images/socials/fb.svg) no-repeat 0 0;
  background-size: 30px 60px;
}
.soc_fb:hover {
  background: #222 url(../images/socials/fb.svg) no-repeat 0 -30px;
}
.soc_twitter {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff url(../images/socials/twitter.svg) no-repeat 0 0;
  background-size: 30px 60px;
}
.soc_twitter:hover {
  background: #222 url(../images/socials/twitter.svg) no-repeat 0 -30px;
}
.soc_google {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff url(../images/socials/google.svg) no-repeat 0 0;
  background-size: 30px 60px;
}
.soc_google:hover {
  background: #222 url(../images/socials/google.svg) no-repeat 0 -30px;
}
.soc_pint {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff url(../images/socials/pint.svg) no-repeat 0 0;
  background-size: 30px 60px;
}
.soc_pint:hover {
  background: #222 url(../images/socials/pint.svg) no-repeat 0 -30px;
}
.soc_mail {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff url(../images/socials/mail.svg) no-repeat 0 0;
  background-size: 30px 60px;
}
.soc_mail:hover {
  background: #222 url(../images/socials/mail.svg) no-repeat 0 -30px;
}
.ourTube {
  display: block;
  width: 100%;
}
.bigOK {
  display: block;
  min-height: 40px;
  height: 40px;
  background: url(../images/bigOk.svg) no-repeat center center;
  margin-bottom: 20px;
}
.bigKO {
  display: block;
  min-height: 40px;
  height: 40px;
  background: url(../images/bigKo.svg) no-repeat center center;
  margin-bottom: 20px;
}
/* checkboox slider */
.checkboxSlider {
  width: 75px;
  height: 25px;
  background: #333;
  margin: 0px;
  padding: 0;
  border-radius: 30px;
  position: relative;
  /**
	* Create the label for the off position
	*/
  /**
	* Create the pill to click
	*/
  /**
	* Create the checkbox event for the label
	*/
}
.checkboxSlider:before {
  content: 'On';
  position: absolute;
  top: 4px;
  left: 8px;
  height: 2px;
  color: #00aeef;
  font-size: 11px;
}
.checkboxSlider:after {
  content: 'Off';
  position: absolute;
  top: 4px;
  left: 50px;
  height: 2px;
  color: #979797;
  font-size: 11px;
}
.checkboxSlider label {
  display: block;
  width: 30px;
  height: 17px;
  border-radius: 30px;
  transition: all 0.5s ease;
  cursor: pointer;
  position: absolute;
  top: 4px;
  z-index: 1;
  left: 7px;
  background: #ddd;
}
.checkboxSlider input[type=checkbox] {
  visibility: hidden;
}
.checkboxSlider input[type=checkbox]:checked + label {
  left: 40px;
  background: #00aeef;
}
/* The switch - the box around the slider */
.switch {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 24px;
}
/* Hide default HTML checkbox */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
.slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}
input:checked + .slider {
  background-color: #2196F3;
}
input:focus + .slider {
  box-shadow: 0 0 1px #2196F3;
}
input:checked + .slider:before {
  -webkit-transform: translateX(25px);
  -ms-transform: translateX(25px);
  transform: translateX(25px);
}
/* Rounded sliders */
.slider.round {
  border-radius: 24px;
}
.slider.round:before {
  border-radius: 50%;
}
/**
 * Tooltip Styles
 */
/* Add this attribute to the element that needs a tooltip */
[data-tooltip],
[data-tooltipdown],
[data-tooltip-right],
[data-tooltip-left],
[data-tooltipdown-left] {
  position: relative;
  cursor: pointer;
}
/* Hide the tooltip content by default */
[data-tooltip]:before,
[data-tooltip]:after,
[data-tooltipdown]:before,
[data-tooltipdown]:after,
[data-tooltip-right]:before,
[data-tooltip-right]:after,
[data-tooltip-left]:before,
[data-tooltip-left]:after,
[data-tooltipdown-left]:before,
[data-tooltipdown-left]:after {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
}
/* Position tooltip above the element */
[data-tooltip]:before,
[data-tooltipdown]:before,
[data-tooltip-right]:before,
[data-tooltip-left]:before,
[data-tooltipdown-left]:before {
  position: absolute;
  left: 50%;
  margin-left: -60px;
  padding: 7px;
  width: 120px;
  border-radius: 3px;
  background-color: rgba(255, 150, 51, 0.9);
  color: #fff;
  text-align: center;
  font-size: 10px;
  line-height: 1.2;
}
[data-tooltip-right]:before {
  margin-left: -20px;
}
[data-tooltip]:before {
  bottom: 110%;
  margin-bottom: 5px;
  content: attr(data-tooltip);
}
[data-tooltip-right]:before {
  bottom: 110%;
  margin-bottom: 5px;
  content: attr(data-tooltip-right);
}
[data-tooltip-left]:before {
  margin-right: auto;
  margin-left: -120px;
  bottom: 110%;
  margin-bottom: 5px;
  content: attr(data-tooltip-left);
}
[data-tooltipdown]:before {
  top: 110%;
  margin-top: 5px;
  content: attr(data-tooltipdown);
}
[data-tooltipdown-left]:before {
  top: 110%;
  margin-top: 5px;
  margin-left: -20px;
  content: attr(data-tooltipdown-left);
}
/* Triangle hack to make tooltip look like a speech bubble */
[data-tooltip]:after,
[data-tooltip-right]:after,
[data-tooltip-left]:after {
  position: absolute;
  bottom: 110%;
  left: 50%;
  margin-left: -5px;
  width: 0;
  border-top: 5px solid rgba(255, 150, 51, 0.9);
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  content: " ";
  font-size: 0;
  line-height: 0;
}
[data-tooltip-right]:after {
  margin-left: -5px;
}
[data-tooltipdown]:after,
[data-tooltipdown-left]:after {
  position: absolute;
  top: 110%;
  left: 50%;
  margin-left: -5px;
  width: 0;
  border-bottom: 5px solid rgba(255, 150, 51, 0.9);
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  content: " ";
  font-size: 0;
  line-height: 0;
}
[data-tooltipdown-left]:before {
  margin-right: -5px;
}
/* Show tooltip content on hover */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after,
[data-tooltipdown]:hover:before,
[data-tooltipdown]:hover:after,
[data-tooltip-right]:hover:before,
[data-tooltip-right]:hover:after,
[data-tooltip-left]:hover:before,
[data-tooltip-left]:hover:after,
[data-tooltipdown-left]:hover:before,
[data-tooltipdown-left]:hover:after {
  visibility: visible;
  opacity: 1;
}
.grid_1_2 {
  display: inline-grid;
  grid-template-columns: auto;
  color: #666;
  font-size: 0.85em;
  width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .grid_1_2 {
    grid-template-columns: auto auto;
    column-gap: 5px;
    max-width: 600px;
  }
}
.grid_1_2 .testata {
  background-color: #eaebec;
  color: #222;
  padding: 5px;
  text-align: center;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .grid_1_2 .testata {
    text-align: right;
    border-bottom: 1px solid #fff;
  }
}
.grid_1_2 .riga {
  padding: 5px;
  margin-bottom: 15px;
  box-sizing: border-box;
}
@media only screen and (min-width: 768px) {
  .grid_1_2 .riga {
    margin-bottom: 0;
  }
}
video.myVideo {
  width: 320px;
  height: 240px;
}
@media only screen and (min-width: 768px) {
  video.myVideo {
    width: 640px;
    height: 480px;
  }
}
.citazione {
  display: block;
  padding: 0 0 0 60px;
  background: url(../images/apici.jpg) no-repeat 0 0;
  min-height: 45px;
  font-style: italic;
}
/* AGGIORNA ICON */
.aggiornaIcon {
  display: inline-block;
  height: 21px;
  width: 21px;
  min-width: 21px;
  min-height: 21px;
  border: none;
  background: url(../images/icons.png) no-repeat -231px 0px;
}
.aggiornaIcon:hover {
  cursor: pointer;
  background-position: -231px -21px;
}
