/*
REPOSNSIVE POINTS: 540 -> 750 -> 960 -> 1200;
*/


/* IE10 viewport hack for Surface/desktop Windows 8 bug */


/* @-webkit-viewport {
    width: device-width
}

@-moz-viewport {
    width: device-width
}

@-ms-viewport {
    width: device-width
}

@-o-viewport {
    width: device-width
} */


/* @viewport {
    width: device-width
} */











/* RESET */

*,
*:before,
*:after {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    box-sizing: border-box;
    /* -webkit-box-sizing: border-box; */
    vertical-align: baseline;
    /* -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%; */
    /* line-height: normal; */
}

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


/* a,a:link,a:active,.a{background-color:transparent;cursor:pointer;color:#337ab7;text-decoration:none;-webkit-text-decoration-skip:objects}
a:hover/*,a:active,a:focus*,.a:hover{outline:0;color:#23527c;text-decoration:none} */

img,
iframe {
    display: inline-block;
    max-width: 100%;
    /* max-height:100%; */
    /* height: auto; */
}

img {
    height: auto
}


/* img:not(.lazyLoad),
img.lazyLoaded,
iframe {
    height: auto;
} */

img {
    vertical-align: middle
}

small,
.small {
    font-size: 80%
}

.big {
    font-size: 120%
}

.verybig {
    font-size: 160%
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}

sub {
    bottom: -0.25em
}

sup {
    top: -0.5em
}

code,
.code,
pre {
    /*display: block;*/
    font-family: monospace;
    font-size: 80%;
    background: #eee;
    padding: 2px 4px;
    border: 1px dashed #999;
    color:#333;
}
pre{
	display: block;
    overflow: auto;
    padding: 5px 10px;
}
pre code{
	border:0;
	padding:0;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible
}

button,
input,
select,
textarea {
    font: inherit;
    line-height: inherit
}

button,
input {
    overflow: visible
}

button,
button:focus,
input,
input:focus,
textarea,
textarea:focus,
select,
select:focus {
    outline: none
}

button,
select {
    text-transform: none
}

textarea {
    overflow: auto;
    resize: vertical
}

section {
    position: relative
}

blockquote {
    padding: 10px 20px;
    margin: 0 0 20px;
    font-size: 17.5px;
    border-left: 5px solid #eee
}

blockquote cite {
    display: block;
    font-size: 80%;
    line-height: 1.4;
    color: #777
}

blockquote cite:before {
    content: '\2014 \00A0'
}


/* MAIN */

html {
    /* -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0); */
    height: 100%;
    width: 100%;
}

body {
    /* font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; */
    font-family: "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    /*
    The Times New Roman-based serif stack: Cambria, "Hoefler Text", Utopia, "Liberation Serif", "Nimbus Roman No9 L Regular", Times, "Times New Roman", serif
    A Modern Georgia-based serif stack: Constantia, "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "DejaVu Serif", "Bitstream Vera Serif", "Liberation Serif", Georgia, serif
    A more traditional Garamond-based serif stack: "Palatino Linotype", Palatino, Palladio, "URW Palladio L", "Book Antiqua", Baskerville, "Bookman Old Style", "Bitstream Charter", "Nimbus Roman No9 L", Garamond, "Apple Garamond", "ITC Garamond Narrow", "New Century Schoolbook", "Century Schoolbook", "Century Schoolbook L", Georgia, serif
    The Helvetica/Arial-based sans serif stack: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif
    The Verdana-based sans serif stack: Corbel, "Lucida Grande", "Lucida Sans Unicode", "DejaVu Sans", "Bitstream Vera Sans", "Liberation Sans", Verdana, "Verdana Ref", sans-serif
    The Trebuchet-based sans serif stack: "Segoe UI", Candara, "Bitstream Vera Sans", "DejaVu Sans", "Bitsream Vera Sans", "Trebuchet MS", Verdana, "Verdana Ref", sans-serif
    The heavier “Impact” sans serif stack: Impact, Haettenschweiler, "Franklin Gothic Bold", Charcoal, "Helvetica Inserat", "Bitstream Vera Sans Bold", "Arial Black", sans-serif
    The Monospace stack: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace 
    */
    font-size: 14px;
    line-height: 1.5;
    background-color: #fff;
    color: #333;
    position: relative;
    /*height:100%;width:100%*/
    height: 100%;
    width: 100%;
}

h1,
.h1,
.title1 {
    font-size: 240%
}

h2,
.h2,
.title2 {
    font-size: 200%
}

h3,
.h3,
.title3 {
    font-size: 160%
}

h4,
.h4,
.title4 {
    font-size: 133%
}

h5,
.h5,
.title5 {
    font-size: 120%
}

h6,
.h6,
.title6 {
    font-size: 106%
}

p, .p{
    font-size: 100%;
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.title1,
.title2,
.title3,
.title4,
.title5,
.title6 {
    font-weight: 700
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a,
.title1 a,
.title2 a,
.title3 a,
.title4 a,
.title5 a,
.title6 a {
    font-weight: inherit
}

p,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.title1,
.title2,
.title3,
.title4,
.title5,
.title6 {
    margin: 0 0 10px 0
}

.hr,
hr {
    border: 0;
    border-top: 1px solid #ddd;
    margin: 20px 0
}


/*
ol,
ul {
    list-style: none;
    /*counter-reset:c;*
    display: block;
}

ol li,
ul li {
    /* counter-increment:c; *
    display: block;
}


/* ol li:before,ul li:before {
  content:counter(c) ".";
  display:block;
  float:left;
  padding-right:.2em;
} *

ol ol,
ul ul {
    padding-left: 1em;
    /* counter-reset:c; *
}

ol, ul {
	list-style: none;
}
*/


/* ul li:before {
  content:"-";
} */

ul,
ol {
    display: block;
    list-style: disc outside none;
    margin: 0 0 10px 0;
    padding: 0 0 0 40px;
}

ol {
    list-style-type: decimal;
}

li {
    display: list-item;
}

ul ul,
ol ul {
    list-style-type: circle;
    margin-left: 15px;
}

ol ol,
ul ol {
    list-style-type: lower-latin;
    margin-left: 15px;
}

.circled {
    border-radius: 50%;
    overflow: hidden
}

.left {
    text-align: left !important
}

.right {
    text-align: right !important
}

.center {
    text-align: center !important
}

.justify {
    text-align: justify !important
}

.bold {
    font-weight: 700
}

.italic {
    font-style: italic;
}

.oblique {
    font-style: oblique;
}

.alignleft {
    float: left;
    margin-right: 10px
}

.aligncenter {
    margin: 0 auto
}

.alignright {
    float: right;
    margin-left: 10px
}

.clear {
    clear: both
}

.unselectable {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.top {
    vertical-align: top !important
}

.middle {
    vertical-align: middle !important
}

.bottom {
    vertical-align: bottom !important
}

.uppercase {
    text-transform: uppercase
}

.lowercase {
    text-transform: lowercase
}

.capitalize {
    text-transform: capitalize
}

.push {
    height: 5px;
    width: 5px
}

.bigpush {
    height: 10px;
    width: 10px
}

.nopd {
    padding: 0 !important
}

.nomg {
    margin: 0 !important
}

.nowrap {
    white-space: nowrap
}

.hide {
    display: none !important
}

.hidden {
    visibility: hidden
}

.inline {
    display: inline !important;
    vertical-align: baseline !important;
    font-size: inherit !important
}

.block {
    display: block !important;
    width: 100%
}

.inline-block {
    display: inline-block !important;
    vertical-align: middle !important
}

.table {
    display: table
}

.tr {
    display: table-row
}

.td {
    display: table-cell
}

.ellipsis {
    text-overflow: ellipsis
}

.relative {
    position: relative;
    overflow: hidden;
}

.force_container {
    margin: 0 auto;
    max-width: 100%
}

.force16x9,
.force4x3 {
    position: relative;
    height: 0;
    display: block;
    overflow: hidden;
    padding-bottom: 56.25%;
}

.force4x3 {
    padding-bottom: 75%
}

.force16x9 .item,
.force4x3 .item,
.force16x9 iframe,
.force4x3 iframe,
.force16x9 object,
.force4x3 object,
.force16x9 embed,
.force4x3 embed,
.force16x9 video,
.force4x3 video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

iframe,
object,
embed,
video{
    max-width: 100%;
}

.reset_width {
    width: auto
}


/*

.embed-responsive{
    position:relative;
    height:0;
    display:block;
    overflow:hidden;
}
.embed-responsive.force16by9{padding-bottom:56.25%}
.embed-responsive.force4x3{padding-bottom:75%}
.embed-responsive .item, .embed-responsive iframe, .embed-responsive embed, .embed-responsive object, .embed-responsive video {
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:100%;
    height:100%;
    border:0;
}*/

.responsive {
    overflow-x: auto
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
}


/* RESPONSIVE LAYOUT */

.container,
.container_full {
    padding: 0 5px;
    margin: 0 auto;
    /*height:100%; Non usare perché crea problemi, per esempio nel footer del gpanellite*/
    /* height: inherit; */
    /* overflow: hidden; */
    /**/
}

.container {
    max-width: 1200px;
}

.row {
    text-align: center;
    font-size: 0;
    height: 100%
}

.row:before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle
}

.row:after {
    content: "";
    display: inline-block;
    clear: both
}

.col {
    font-size: 14px;
    display: none;
    /* display: inline-block; */
    vertical-align: middle;
    position: relative;
    min-height: 1px;
    padding: 5px;
    width: 100%;
    /* width: 1px; */
}

body.loaded .col {
    display: inline-block;
}


/* .col:before{content:"";display:inline-block;height:100%;vertical-align:middle}
.col:after{content:"";display:inline-block;clear:both} */

.container>.row,
.container_full>.row,
.row.nosd {
    margin: 0 -5px
}

.container>.row.nosd,
.container_full>.row.nosd {
    margin: 0 -10px
}

.row.nopd>.col {
    padding: 0
    /*!important*/
}

.col.s0 {
    width: auto
}

.col.s1 {
    width: 8.33333%
}

.col.s2 {
    width: 16.66666%
}

.col.s3 {
    width: 24.99999%
}

.col.s4 {
    width: 33.33333%
}

.col.s5 {
    width: 41.66666%
}

.col.s6 {
    width: 49.99999%
}

.col.s7 {
    width: 58.33333%
}

.col.s8 {
    width: 66.66666%
}

.col.s9 {
    width: 74.99999%
}

.col.s10 {
    width: 83.33333%
}

.col.s11 {
    width: 91.66666%
}

.col.s12 {
    width: 100%
}

@media screen and (max-width:539.99999px) {
    .no-s {
        display: none !important
    }
    .center-s {
        text-align: center
    }
    .left-s {
        text-align: left
    }
    .right-s {
        text-align: right
    }
    .justify-s {
        text-align: justify
    }
}

@media screen and (min-width:540px) {
    /* .container{
    /* width:100%; *
    max-width:1200px;
  } */
    .col.m0 {
        width: auto
    }
    .col.m1 {
        width: 8.33333%
    }
    .col.m2 {
        width: 16.66666%
    }
    .col.m3 {
        width: 24.99999%
    }
    .col.m4 {
        width: 33.33333%
    }
    .col.m5 {
        width: 41.66666%
    }
    .col.m6 {
        width: 49.99999%
    }
    .col.m7 {
        width: 58.33333%
    }
    .col.m8 {
        width: 66.66666%
    }
    .col.m9 {
        width: 74.99999%
    }
    .col.m10 {
        width: 83.33333%
    }
    .col.m11 {
        width: 91.66666%
    }
    .col.m12 {
        width: 100%
    }
}

@media screen and (min-width:540px) and (max-width:959.9999px) {
    .no-m {
        display: none !important
    }
    .center-m {
        text-align: center
    }
    .left-m {
        text-align: left
    }
    .right-m {
        text-align: right
    }
    .justify-m {
        text-align: justify
    }
    /* .container{width:540px} */
    .container,
    .container_full {
        padding: 0 10px
    }
    .container>.row,
    .container_full>.row,
    .row.nosd {
        margin: 0 -10px
    }
    .container>.row.nosd,
    .container_full>.row.nosd {
        margin: 0 -20px
    }
    body,
    .col {
        font-size: 15px
    }
    .col {
        padding: 10px
    }
    .push {
        height: 10px;
        width: 10px
    }
    .bigpush {
        height: 20px;
        width: 20px
    }
}


/* @media screen and (min-width:750px) and (max-width:959px){
  .container{width:750px}
} */

@media screen and (min-width:960px) {
    /*.container,.container_full{padding:30px}
  .container > .row,.container_full > .row{margin:-30px}
  .col{padding:30px}*/
    body,
    .col {
        font-size: 16px
    }
    /* .container{width:960px} */
    .container,
    .container_full {
        padding: 0 15px
    }
    .container>.row,
    .container_full>.row,
    .row.nosd {
        margin: 0 -15px
    }
    .container>.row.nosd,
    .container_full>.row.nosd {
        margin: 0 -30px
    }
    /* .container > .row.nosd,.container_full > .row.nosd{margin:0 -30px} */
    .col {
        padding: 15px
    }
    .push {
        height: 15px;
        width: 15px
    }
    .bigpush {
        height: 30px;
        width: 30px
    }
    .col.l0 {
        width: auto
    }
    .col.l1 {
        width: 8.33333%
    }
    .col.l2 {
        width: 16.66666%
    }
    .col.l3 {
        width: 24.99999%
    }
    .col.l4 {
        width: 33.33333%
    }
    .col.l5 {
        width: 41.66666%
    }
    .col.l6 {
        width: 49.99999%
    }
    .col.l7 {
        width: 58.33333%
    }
    .col.l8 {
        width: 66.66666%
    }
    .col.l9 {
        width: 74.99999%
    }
    .col.l10 {
        width: 83.33333%
    }
    .col.l11 {
        width: 91.66666%
    }
    .col.l12 {
        width: 100%
    }
    .no-l {
        display: none !important
    }
    .center-l {
        text-align: center
    }
    .left-l {
        text-align: left
    }
    .right-l {
        text-align: right
    }
    .justify-l {
        text-align: justify
    }
}


/* @media screen and (min-width:1200px) {
    body,
    .col {
        font-size: 18px
    }
} */


/* ANIMATIONS */


/* a,
.a,
button,
.btn,
.gAnimate,
.gCarousel .item,
.gTab .item,
.gAccordion .body {
    transition: all 0.5s ease;
}

a,
.a,
button,
.btn {
    transition-property: color, background-color;
} */


/* .animate-fadein{
  animation:fading 2s;
  -moz-animation:fading 2s;
  -webkit-animation:fading 2s;
  -o-animation:fading 2s;
}
@keyframes fading{0%{opacity:0}100%{opacity:1}}
@-moz-keyframes fading{0%{opacity:0}100%{opacity:1}}
@-webkit-keyframes fading{0%{opacity:0}100%{opacity:1}}
@-o-keyframes fading{0%{opacity:0}100%{opacity:1}}

.animate-fadeout{
  animation:fadeout 1s;
  -moz-animation:fadeout 1s;
  -webkit-animation:fadeout 1s;
  -o-animation:fadeout 1s;
  overflow: hidden;
}
@keyframes fadeout{0%{opacity:1}100%{opacity:0;display:none;height:0}}
@-moz-keyframes fadeout{0%{opacity:1}100%{opacity:0;display:none;height:0}}
@-webkit-keyframes fadeout{0%{opacity:1}100%{opacity:0;display:none;height:0}}
@-o-keyframes fadeout{0%{opacity:1}100%{opacity:0;display:none;height:0}} */


/* .animate-opacity{
  animation:opac 1.5s;
  -moz-animation:opac 1.5s;
  -webkit-animation:opac 1.5s;
  -o-animation:opac 1.5s;
}
@keyframes opac{from{opacity:0} to{opacity:1}}
@-moz-keyframes opac{from{opacity:0} to{opacity:1}}
@-webkit-keyframes opac{from{opacity:0} to{opacity:1}}
@-o-keyframes opac{from{opacity:0} to{opacity:1}} */


/* .animate-top{
  animation:animatetop 1s;
  -moz-animation:animatetop 1s;
  -webkit-animation:animatetop 1s;
  -o-animation:animatetop 1s;
  position:relative;
}
@keyframes animatetop{from{top:-100%;opacity:0} to{top:0;opacity:1}}
@-moz-keyframes animatetop{from{top:-100%;opacity:0} to{top:0;opacity:1}}
@-webkit-keyframes animatetop{from{top:-100%;opacity:0} to{top:0;opacity:1}}
@-o-keyframes animatetop{from{top:-100%;opacity:0} to{top:0;opacity:1}}

.animate-left{
  animation:animateleft 1s;
  -moz-animation:animateleft 1s;
  -webkit-animation:animateleft 1s;
  -o-animation:animateleft 1s;
  position:relative;
}
@keyframes animateleft{from{left:-100%;opacity:0} to{left:0;opacity:1}}
@-moz-keyframes animateleft{from{left:-100%;opacity:0} to{left:0;opacity:1}}
@-webkit-keyframes animateleft{from{left:-100%;opacity:0} to{left:0;opacity:1}}
@-o-keyframes animateleft{from{left:-100%;opacity:0} to{left:0;opacity:1}}

.animate-right{
  animation:animateright 1s;
  -moz-animation:animateright 1s;
  -webkit-animation:animateright 1s;
  -o-animation:animateright 1s;
  position:relative;
}
@keyframes animateright{from{right:-100%;opacity:0} to{right:0;opacity:1}}
@-moz-keyframes animateright{from{right:-100%;opacity:0} to{right:0;opacity:1}}
@-webkit-keyframes animateright{from{right:-100%;opacity:0} to{right:0;opacity:1}}
@-o-keyframes animateright{from{right:-100%;opacity:0} to{right:0;opacity:1}}

.animate-bottom{
  animation:animatebottom 1s;
  -moz-animation:animatebottom 1s;
  -webkit-animation:animatebottom 1s;
  -o-animation:animatebottom 1s;
  position:relative;
}
@keyframes animatebottom{from{bottom:-100px;opacity:0} to{bottom:0;opacity:1}}
@-moz-keyframes animatebottom{from{bottom:-100px;opacity:0} to{bottom:0px;opacity:1}}
@-webkit-keyframes animatebottom{from{bottom:-100px;opacity:0} to{bottom:0px;opacity:1}}
@-o-keyframes animatebottom{from{bottom:-100px;opacity:0} to{bottom:0px;opacity:1}}

.animate-zoom{
  animation:animatezoom 0.6s;
  -moz-animation:animatezoom 0.6s;
  -webkit-animation:animatezoom 0.6s;
  -o-animation:animatezoom 0.6s;
}
@keyframes animatezoom{from{transform:scale(0)} to{transform:scale(1)}}
@-moz-keyframes animatezoom{from{-webkit-transform:scale(0)} to{-webkit-transform:scale(1)}}
@-webkit-keyframes animatezoom{from{-webkit-transform:scale(0)} to{-webkit-transform:scale(1)}}
@-o-keyframes animatezoom{from{-webkit-transform:scale(0)} to{-webkit-transform:scale(1)}}

.animate-spin{
  animation:spin 2s infinite linear;
  -moz-animation:spin 2s infinite linear;
  -webkit-animation:spin 2s infinite linear;
  -o-animation:spin 2s infinite linear;
}
@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}
@-moz-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}
@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}
@-o-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}} */


/*.animate-input{-webkit-transition:width 0.4s ease-in-out;transition:width 0.4s ease-in-out}.animate-input:focus{width:100%!important}
.opacity,.hover-opacity:hover{opacity:0.60;filter:alpha(opacity=60);-webkit-backface-visibility:hidden}
.opacity-off,.hover-opacity-off:hover{opacity:1;filter:alpha(opacity=100);-webkit-backface-visibility:hidden}
.text-shadow{text-shadow:1px 1px 0 #444}.text-shadow-white{text-shadow:1px 1px 0 #ddd}
*/


/* GTAB */

.gTabsItem {
    transition: opacity 0.5s ease-out;
    opacity: 0;
    height: 0;
    overflow: hidden;
}

.gTabsItem.active {
    opacity: 1;
    height: auto;
}


/* TABLES */

.gTable {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    min-height: 100%;
}

.gTable.tablefixed,
.gTable.fixed,
table.tablefixed,
table.fixed,
.table.tablefixed,
.table.fixed {
    table-layout: fixed
}

.gTable td,
.gTable th {
    vertical-align: middle;
    position: relative;
    text-align: left
}

.gTable.bordered {
    border: 1px solid #ccc
}

.gTable.bordered tr {
    border-bottom: 1px solid #ddd
}

.gTable.bordered_full td,
.gTable.bordered_full th {
    border: 1px solid #ddd
}

.gTable.striped tr:nth-child(even) {
    background-color: #f1f1f1
}

.gTable.striped tr:nth-child(odd) {
    background-color: #fff
}

.gTable th {
    background-color: #eee
}

.gTable.hoverable,
.gTable.hoverable_full {
    background-color: #fff;
}

.gTable.hoverable tr:hover,
.gTable.hoverable_full tr:hover {
    background-color: #f9f9f9
}

.gTable td,
.gTable th,
.gTable.striped td,
.gTable.striped th {
    padding: 8px
}

.gTable.nopd td,
.gTable.nopd th,
.gTable.nopd.striped td,
.gTable.nopd.striped th {
    padding: 0
}


/*.table th:first-child,.table td:first-child,.striped th:first-child,.striped td:first-child{padding-left:16px}*/


/* LINKS AND BUTTONS */

a,
.a,
.btn,
button {
    background-color: transparent;
    cursor: pointer;
    color: #337ab7;
    text-decoration: none;
    /* -webkit-text-decoration-skip: objects; */
    outline: none;
    /* -ms-touch-action: manipulation; */
    touch-action: manipulation;
    /* -webkit-touch-callout: none; */
    /* -webkit-user-select: none; */
    /* -khtml-user-select: none; */
    /* -moz-user-select: none; */
    /* -ms-user-select: none; */
    /* user-select: none; */
    overflow: hidden;
    position: relative;
}

.btn,
button {
    vertical-align: middle;
}

body.notouch a:hover,
body.notouch .a:hover,
body.notouch button:hover {
    color: #23527c;
    text-decoration: none
}

.btn {
    margin: 1px 0;
    position: relative;
    display: inline-block;
    /* vertical-align: middle; */
    max-width: 100%;
    padding: 8px 14px;
    line-height: inherit;
    font-size: inherit;
    color: #333;
    /*background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAYAAACd+7GKAAAAdElEQVQImT3E6yoDAACA0W9ui4m2JppIFpFFlhFze/+XOvu38+OE//AXfrf9hO+wDl/hM3yE97AKb2EZXsNLeA6L8BQew0O4D3dhHm7DTbgOV+EyzMJFOA9nYRomYRxOw0k4DqNwFA7DMByE/bAXdsPOtsEGdaibyxFck+8AAAAASUVORK5CYII=) 0 0 repeat-x;*/
    background-size: auto 100%;
    border: 1px solid transparent;
    border-radius: 2px;
    text-align: center;
    cursor: pointer;
    /* outline:0; */
    text-decoration: none !important;
    /* font-size:90%; */
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.btn.inline {
    margin: 0
}

body.notouch .btn:hover {
    color: #333;
    background-color: #e9e9e9;
    border-color: #adadad
}

.btn.big {
    padding: 10px 16px;
    border-radius: 4px;
    font-size: 120%
}

.btn.small {
    padding: 4px 10px;
    font-size: 80%
}


/* ALERT */

.alert {
    padding: 10px 12px;
    border-radius: 2px;
    border: 2px solid #000;
    position: relative;
    color: inherit;
    background: #fff;
    border: 1px solid #ccc;
    margin-bottom: 20px
}

.alert.nomargin {
    margin: 0
}

.alert.small {
    padding: 4px 6px
}

.alert a {
    text-decoration: underline;
    color: inherit
}

body.notouch .alert a:hover {
    text-decoration: none;
    color: inherit
}

.alert>.close_icon,
.alert>.gClose {
    display: block;
    float: right;
    cursor: pointer;
    opacity: 0.7;
    margin: 0 0 0 10px;
    font-size: 120%;
    line-height: normal;
}

body.notouch .alert>.gClose:hover,
body.notouch .alert>.close_icon:hover {
    opacity: 1
}

.alert h5 {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px solid #ccc;
}


/* FORMS */

body:not(.noplaceholder) .placeholder {
    display: none
}

.gForm .item {
    position: relative;
    margin-bottom: 15px
}

.gForm .item .fa,
.gForm .item .fas,
.gForm .item .fab {
    position: absolute;
    top: 10px;
    right: 10px;
    /* line-height: 34px; */
    color: #ccc;
}

.input {
    margin: 1px 0;
    position: relative;
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    padding: 8px 10px;
    line-height: inherit;
    font-size: inherit;
    color: #777;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 2px;
    /* -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); */
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    /* -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; */
    /* -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; */
    /* transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; */
    /* height:34px; */
    /* line-height:32px; */
    /* padding-left:6px; */
    /* padding-right:6px; */
    /* padding:6px 12px; */
    /* font-size: 80%; */
    /*font-size:90%;*/
}

.btn, .input{
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* select.input{padding-left:6px} */

.input.inline {
    margin: 0
}

.input.inline,
.input.inline-block {
    width: auto
}

.input:focus {
    border-color: #66afe9;
    outline: 0;
    color: #444;
    /* -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6); */
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6)
}

textarea,
textarea.input {
    /* padding: 6px; */
    height: 180px
}

textarea.input.inline,
textarea.input.inline-block {
    width: 460px
}

select.input{
  background: #fff;
  background: #fff url("data:image/svg+xml;utf8,<svg fill='000' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>") right .2em center no-repeat;
  padding-right: 1.8em;
}

select.input::-ms-expand {
    display: none;
}

.input.short,
.item.short {
    width: 60px
}


/* .input.big{padding: 10px 14px} */

.input.small {
    padding: 4px;
    font-size: 80%
}

.input.big {
    padding: 10px 12px;
    font-size: 120%
}

.input.error {
    border: 2px solid #f00
}

.input.long,
.item.long {
    max-width: 300px;
    width: 100%
}

.input::placeholder,
select.input:has(option:disabled:checked) {
    color: #bbb
}


/* .input::-moz-placeholder {
    color: #999;
    opacity: 1
}

.input:-ms-input-placeholder {
    color: #999
}

.input::-webkit-input-placeholder {
    color: #999
}

.input::-ms-expand {
    background: transparent;
    border: 0
} */

.btn>input,
a>input,
.a>input,
.btn>.input,
a>.input,
.a>.input {
    /* .btn > .absolute,.relative > .absolute{ */
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 0;
    font-size: 400%;
    cursor: pointer;
    opacity: 0;
    /* filter: alpha(opacity=0); */
    /* visibility:hidden; */
}


/* input[type=checkbox].input:focus{
    outline: 1px solid rgba(0, 0, 0, 0.2);
} */

input[type=checkbox].input,
input[type=radio].input {
    margin: 0 2px 0 0;
    /* background-color: #DDD; */
    /* border-radius: 2px; */
    appearance: none;
    /* -webkit-appearance: none;
    -moz-appearance: none; */
    /* width: 17px;
    height: 17px; */
    cursor: pointer;
    /* position: relative; */
    top: -2px;
    padding: 8px;
    width: auto;
    max-width: unset;
}

input[type=checkbox].input:checked,
input[type=radio].input:checked {
    background: #409fd6 url("data:image/gif;base64,R0lGODlhCwAKAIABAP////3cnSH5BAEKAAEALAAAAAALAAoAAAIUjH+AC73WHIsw0UCjglraO20PNhYAOw==") center no-repeat;
    background-size: 64% auto;
}

input[type=radio].input {
    border-radius: 50%
}


/* .input + .close{background:#000;padding:5px} */


/* .gForm .submit {
    display: inline-block
} */

.gForm .sending {
    display: none
}

.gForm.loading .submit {
    display: none
}

.gForm.loading .sending {
    display: unset
}

.gForm.loaded .hide_if_loaded {
    display: none
}

.gForm .gFormAnswer.ok {
    color: #0c0
}

.gForm .gFormAnswer.error {
    color: #f00
}

.gForm .gFormAnswer.att {
    color: #fa0
}


/* COLORS */

.alert.transparent,
.btn.transparent {
    color: inherit;
    background-color: transparent;
    border-color: transparent
}

.green {
    color: #449d44
}

.alert.green,
.btn.green {
    color: #fff;
    background-color: #5cb85c;
    border-color: #4cae4c;
    text-shadow: 1px 1px 1px #777
}

body.notouch .btn.green:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439
}

.black {
    color: #000
}

.alert.black,
.btn.black {
    color: #fff;
    background-color: #000;
    border-color: #111
}

body.notouch .btn.black:hover {
    color: #fff;
    background-color: #222;
    border-color: #333
}

.white {
    color: #fff
}

.alert.white,
.btn.white {
    color: #000;
    background-color: #fff;
    border-color: #ccc;
    text-shadow: none
}

body.notouch .btn.white:hover {
    color: #000;
    background-color: #ddd;
    border-color: #aaa
}

.pink {
    color: #ff46ff
}

.alert.pink,
.btn.pink {
    color: #fff;
    background-color: #e565ac;
    border-color: #f4f;
    text-shadow: 1px 1px 1px #777
}

body.notouch .btn.pink:hover {
    color: #fff;
    background-color: #bc5990;
    border-color: #c200c2
}

.blue {
    color: #286090
}

.alert.blue,
.btn.blue {
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4;
    text-shadow: 1px 1px 1px #777
}

body.notouch .btn.blue:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74
}

.cyan {
    color: #31b0d5
}

.alert.cyan,
.btn.cyan {
    color: #fff;
    background-color: #5bc0de;
    border-color: #46b8da;
    text-shadow: 1px 1px 1px #777
}

body.notouch .btn.cyan:hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc
}

.orange {
    color: #ec971f
}

.alert.orange,
.btn.orange {
    color: #333;
    background-color: #faa72f;
    border-color: #ff9600;
    text-shadow: 1px 1px 2px #fff
}

body.notouch .btn.orange:hover {
    color: #333;
    background-color: #f99300;
    border-color: #ec8b00
}

.yellow {
    color: #fe0
}

.alert.yellow,
.btn.yellow {
    color: #555;
    background-color: #fe0;
    border-color: #ffe551
}

body.notouch .btn.yellow:hover {
    /*color: #fff;*/
    background-color: #e6d922;
    border-color: #d0c534;
}

.red {
    color: #e62d18
}

.alert.red,
.btn.red {
    color: #fff;
    background-color: #ec5645;
    border-color: #d43f3a;
    text-shadow: 1px 1px 1px #777
}

body.notouch .btn.red:hover {
    color: #fff;
    background-color: #e62d18;
    border-color: #ac2925
}

.grey,
.disabled {
    color: #ccc
}

.alert.grey,
.btn.grey,
div.disabled,
.btn.disabled,
.input.disabled,
.input:disabled,
body.notouch .input.disabled:hover,
body.notouch .input:disabled:hover,
.btn:disabled,
body.notouch .btn.disabled:hover,
body.notouch .btn:disabled:hover {
    background-color: #ddd;
    color: #333;
    border-color: #ccc;
    text-shadow: none;
}

body.notouch .btn.grey:hover {
    color: #333;
    background-color: #ccc;
    border-color: #bbb;
    text-shadow: none;
}

.input.disabled,
body.notouch .input.disabled:hover,
.input:disabled,
body.notouch .input:disabled:hover,
.btn.disabled,
.btn:disabled,
body.notouch .btn.disabled:hover,
body.notouch .btn:disabled:hover {
    cursor: not-allowed;
    opacity: 0.4
}

.btn.disabled * {
    pointer-events: none
}

.group .f {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    /*font-size: 12.75px*/
}

.group .l {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    margin-left: -1px;
}

.group .c {
    border-radius: 0;
    margin-left: -1px;
}


/* MENU */

.orizontal_menu>ul,
ul.orizontal_menu,
.orizontal_menu ul,
.orizontal_menu li,
.horizontal_menu>ul,
ul.horizontal_menu,
.horizontal_menu ul,
.horizontal_menu li {
    display: block;
    text-align: left;
    padding: 0;
    margin: 0;
}

.orizontal_menu ul ul,
ul.orizontal_menu ul,
.horizontal_menu ul ul,
ul.horizontal_menu ul {
    padding-left: 10px;
}

.orizontal_menu a,
.horizontal_menu a {
    display: inline-block;
    white-space: nowrap;
    padding: 2px 0
}


/* GSLIDER / GCAROUSEL */

.gCarousel,
.gSlider {
    position: relative;
    overflow: hidden;
    /*SERVE IN CASO DI SLIDING ANIMATION */
}

.gCarousel .item,
.gSlider .item {
    /* display:none; */
    position: relative;
    overflow: hidden;
    height: inherit;
}

.gSlider .item {
    z-index: 0;
    opacity: 0;
    transition: opacity 1s;
}

.gSlider .item.active {
    z-index: 1;
    opacity: 1
}

body.notouch .gSlider .gSliderAction {
    opacity: .2;
    transition: opacity .3s;
}

body.notouch .gSlider:hover .gSliderAction {
    opacity: .9
}

.gSlider .gSliderAction.button {
    position: absolute;
    top: 50%;
    left: 0;
    right: auto;
    height: 50px;
    width: 40px;
    line-height: 54px;
    padding: 0 6px;
    margin-top: -25px;
    background: #333;
    /* text-shadow: rgba(0, 0, 0, .6) 0 1px 2px; */
    background: rgba(0, 0, 0, .5);
    color: #eee;
    font-size: 180%;
    cursor: pointer;
    z-index: 2;
    text-align: center;
}

.gSlider .gSliderAction.button>i {
    width: auto;
}

.gSlider .gSliderAction.button.r {
    left: auto;
    right: 0
}

.gSlider .bullets {
    position: absolute;
    bottom: 15px;
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 3
}

.gSlider .bullets .bullet {
    padding: 6px;
    margin: 0 1px;
    background: #000;
    background: rgba(0, 0, 0, .5);
    border-radius: 50%;
    cursor: pointer;
    font-size: 0;
    border: 1px solid #333;
    box-shadow: 0 0 2px #fff;
    line-height: 30px
}

.gSlider .bullets .bullet.active,
.gSlider .bullets .bullet:hover,
.gSlider .gSliderAction.button.active,
.gSlider .gSliderAction.button:hover {
    background: #337ab7
}

.gSlider.gAutoplay .progress_bar,
.gCarousel.gAutoplay .progress_bar {
    background: #3b78a4;
    height: 3px;
    width: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0.5;
    /* -webkit-transition: width 1s linear;
    -moz-transition: width 1s linear;
    -o-transition: width 1s linear; */
    animation: progress_bar_animation 1s linear infinite;
}

.gSlider.gAutoplay:hover .progress_bar, 
.gCarousel.gAutoplay:hover .progress_bar{
    animation-play-state: paused;
}

@keyframes progress_bar_animation {
    from {
        width: 0
    }
    to {
        width: 100%
    }
}


/* GCAROUSEL */


/* .gCarousel .gCarouselInner {
    overflow: hidden;
}

.gCarousel .gCarouselInner>div {
    overflow: auto;
    font-size: 0;
    white-space: nowrap;
} */

.gCarousel {
    position: relative;
    overflow: hidden;
}

.gCarousel>div {
    overflow: scroll;
    scroll-behavior: smooth;
    white-space: nowrap;
    font-size: 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
    height: inherit;
}

.gCarousel>div::-webkit-scrollbar {
    width: 0;
    height: 0;
}

.gCarousel .item {
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
    font-size: initial;
}


/* GDIALOG */

body.gDialoged {
    overflow: hidden !important;
}

#gDialog {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #333;
    background: rgba(0, 0, 0, 0.9);
    text-align: center;
    z-index: 9999;
    overflow: hidden;
    display: table;
}

#gDialog>div {
    display: table-cell;
    width: 100%;
    height: 100%;
    vertical-align: middle;
    padding: 10px
}

#gDialog>div>div {
    padding: 30px;
    background: #fff;
    color: #333;
    box-shadow: 0 0 35px #b5b5b5;
    display: inline-block;
    border-radius: 4px;
    max-width: 100%;
}
#gDialog>div>div p {
    margin-bottom:20px;
}


/* GBOX */

.gBox {
    cursor: pointer;
}

#gBox {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #333;
    background: rgba(0, 0, 0, 0.9);
    z-index: 9999;
    display: none;
    overflow: hidden
}

body.gBoxed {
    overflow: hidden !important;
}

body.gBoxed #gBox {
    display: block;
}

#gBox #gBoxLoader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: table-cell;
    vertical-align: middle;
    cursor: pointer;
    
    padding: 10px;
    background: transparent url(data:image/gif;base64,R0lGODlhGQAZAKIEAMzMzJmZmTMzM2ZmZgAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAAAEACwAAAAAGQAZAAADVki63P4wSEiZvLXemRf4yhYoQ0l9aMiVLISCDms+L/DIwwnfc+c3qZ9g6Hn5hkhF7YgUKI2dpvNpExJ/WKquSoMCvd9geDeuBpcuGFrcQWep5Df7jU0AACH5BAUAAAQALAoAAQAOABQAAAMwSLDU/iu+Gdl0FbTAqeXg5YCdSJCBuZVqKw5wC8/qHJv2IN+uKvytn9AnFBCHx0cCACH5BAUAAAQALAoABAAOABQAAAMzSLoEzrC5F9Wk9YK6Jv8gEYzgaH4myaVBqYbfIINyHdcDI+wKniu7YG+2CPI4RgFI+EkAACH5BAUAAAQALAQACgAUAA4AAAMzSLrcBNDJBeuUNd6WwXbWtwnkFZwMqUpnu6il06IKLChDrsxBGufAHW0C1IlwxeMieEkAACH5BAUAAAQALAEACgAUAA4AAAM0SLLU/lAtFquctk6aIe5gGA1kBpwPqVZn66hl1KINPDRB3sxAGufAHc0C1IkIxcARZ4QkAAAh+QQFAAAEACwBAAQADgAUAAADMUhK0vurSfiko8oKHC//yyCCYvmVI4cOZAq+UCCDcv3VM4cHCuDHOZ/wI/xxigDQMAEAIfkEBQAABAAsAQABAA4AFAAAAzNIuizOkLgZ13xraHVF1puEKWBYlUP1pWrLBLALz+0cq3Yg324PAUAXcNgaBlVGgPAISQAAIfkEBQAABAAsAQABABQADgAAAzRIujzOMBJHpaXPksAVHoogMlzpZWK6lF2UjgobSK9AtjSs7QTg8xCfELgQ/og9I1IxXCYAADs=) center no-repeat;
    vertical-align: middle;
    /*width: 100%;*/
    text-align: center;
}

#gBox #gBoxNav {
    text-align: center;
    background: #000;
    color: #fff;
    padding: 5px;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
}

#gBox #gBoxItem {
    text-align: left;
    vertical-align: middle;
    display: inline-block;
    margin: 0 auto;
    padding: 5px;
    background: #fff;
    border-radius: 4px;
    box-shadow: 0 0 25px #000;
    /* -webkit-overflow-scrolling: touch; */
    overflow-y: scroll;
    max-height: 100%;
    
    /* SERVE PER LE IMMAGINI */
    cursor: initial;
    position: relative;
    
    /*CENTER VERTICALLY*/
    top: 50%;
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

#gBox iframe#gBoxItem{
    width: 100%;
    max-width: 800px;
    height: 100%;
    overflow: auto;
}

#gBox div#gBoxItem {
    max-width: 100%;
    max-height: 100%;
    padding: 10px;
    overflow: auto;
}

#gBox.gBoxWide iframe#gBoxItem,
#gBox.gBoxWide div#gBoxItem {
    max-width: none;
    width: 100%;
}

#gBox #gBoxNav.single .single {
    display: none;
}

#gBox #gBoxNav button,
#gBox #gBoxNav button:focus {
    background: none;
    color: #fff;
    display: inline-block;
    border: none;
    margin: 0 4px;
    /* outline: none; */
}

#gBox #gBoxNav i {
    font-size: 220%;
}


/* TOOLTIPS */

.gTooltip {
    position: relative;
    display: inline-block;
    border-bottom: 1px dotted black;
    /* If you want dots under the hoverable text */
}

.gTooltip .gTooltipText {
    visibility: hidden;
    /* width: 120px; */
    background-color: black;
    color: #fff;
    text-align: center;
    padding: 5px 0;
    border-radius: 6px;
    /* Position the tooltip text - see examples below! */
    position: absolute;
    z-index: 1;
}

.gTooltip:hover .gTooltipText {
    visibility: visible;
}

@media screen and (min-width:960px) {
    .orizontal_menu>ul,
    ul.orizontal_menu,
    .horizontal_menu>ul,
    ul.horizontal_menu {
        display: inline-block;
        vertical-align: middle;
        text-align: right;
    }
    .orizontal_menu li,
    .horizontal_menu li {
        display: inline-block;
        vertical-align: middle;
        text-align: left;
        position: relative;
        padding: 8px 6px
    }
    .orizontal_menu a,
    .horizontal_menu a {
        display: block;
    }
    .orizontal_menu li>ul,
    .horizontal_menu li>ul {
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        display: inline-block;
        text-align: left;
        padding: 0;
        margin: 0;
        opacity: 0;
        visibility: hidden;
        /* -webkit-transition: all .4s ease; */
        /* transition: all .4s ease; */
        background: #fff;
        /* -webkit-transform: translateX(-20px); */
        transform: translateX(-20px);
        /* -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); */
        box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    }
    body.notouch .orizontal_menu li:hover>ul,
    body.notouch .horizontal_menu li:hover>ul {
        opacity: 1;
        visibility: visible;
        /* -webkit-transform: translateX(0); */
        transform: translateX(0);
    }
    .orizontal_menu li ul li>ul,
    .horizontal_menu li ul li>ul {
        top: 0;
        left: 100%;
    }
}