/**
 * This file should get overwritten if Method 1 is used. If Method 2 is chosen,
 * remove this comment and start adding your styles to this file.
 */

/* CSS Document */
@charset "utf-8";

@import url('https://fonts.googleapis.com/css?family=Montserrat:100,200,300,400,500,600,700,800,900&display=swap');
@import url('https://fonts.googleapis.com/css?family=Roboto:900&display=swap');

/* SYSTEM */

.wide {
    margin: 0 -9999px;
    padding: 0px 9999px;
    position: relative;
    background-color: #FFFFFF;
}

.wide.odd { background-color: #FFFFFF; }

.wide.even { background-color: #004750; }

.padding-vertical { padding-bottom: 1em; padding-top: 1em; }
.padding-vertical2 { padding-bottom: 2em; padding-top: 2em; }
.padding-left { padding-left: 15px; }
.padding-right { padding-right: 15px; }
.padding-top { padding-top: 1em; }
.padding-bottom { padding-bottom: 1em; }
.padding-top2 { padding-top: 2em; }
.padding-bottom2 { padding-bottom: 2em; }
.nopadding-top { padding-top: 0;}
.nopadding-bottom { padding-bottom: 0;}
.margin-top { margin-top: 1em; }
.margin-bottom { margin-bottom: 1em; }
.nomargin-top { margin-top: 0;}
.nomargin-bottom { margin-bottom: 0;}
.alpha { padding-left: 0px; }
.omega { padding-right: 0px; }

.table { margin: 0; padding: 1em 0; }

.grid-flex {
    width: 100%;
    float: left;
    position: relative;
    display: block;
}

.row-full {
    width: 100vw;
    position: relative;
    margin-left: -50vw;
    left: 50%;
}


/*FIX SAFARI*/
    .clearfix:before, .clearfix:after, .dl-horizontal dd:before, .dl-horizontal dd:after, .container:before, .container:after, .container-fluid:before, .container-fluid:after, .row:before, .row:after, .form-horizontal .form-group:before, .form-horizontal .form-group:after, .btn-toolbar:before, .btn-toolbar:after, .btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after, .nav:before, .nav:after, .navbar:before, .navbar:after, .navbar-header:before, .navbar-header:after, .navbar-collapse:before, .navbar-collapse:after, .pager:before, .pager:after, .panel-body:before, .panel-body:after, .modal-header:before, .modal-header:after, .modal-footer:before, .modal-footer:after { display: block; }


#page { 
    overflow: hidden;
/*  background-color: #003c84;
	-webkit-appearance: none;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	border-radius: 20px;
  box-shadow: 5px 5px 20px #666666;
  margin: 50px 0 20px;*/
}

/* DEFAULT */

body {
    background: none no-repeat scroll 0 0 #FFFFFF;
    font: 17px/1.2 Helvetica,Arial,sans-serif;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    color: #004750;
    margin: 0px 0px;
}

h1, h2, h3, h4, h5, h6, p { 
    font-family: Helvetica,Arial,sans-serif;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    margin-top: 10px;
    margin-bottom: 10px;
    color: #008c5d;
    line-height: 1.2;
}

h1, .h1 { font-weight: 400; font-size: 2.5em; line-height: 1; }

h1.title, .h1.title { font-weight: 400; font-size: 5em; line-height: 1; }

h2, .h2 { font-weight: 400; font-size: 2em; line-height: 1.1; }

h3, .h3 { font-weight: 400; font-size: 1.5em; line-height: 1.2; }

h4, .h4 { font-size: 1em; line-height: 1.2; }

h5, .h5 { font-size: 0.9em; line-height: 1.2; }

h6, .h6 { font-size: 0.8em; line-height: 1.2; }

p, ul { 
    font-family: 'Montserrat', sans-serif;
    font-size: 1em;
    color: #004750;
    line-height: 1.3;
    font-weight: 400;
    margin-top: 0px;
}

ul.bullet-image {  list-style: outside url("../images/arrow.png") none; padding-left: 3em; }
ul.list-unstyled {  list-style: outside none none; padding-left: 2em; }
ul.list-bullet { padding-left: 1.5em; list-style: outside none none;  }
ul.list-bullet li { display: block; margin-bottom: 0.3em; }
ul.list-bullet li:before {
    /*Using a Bootstrap glyphicon as the bullet point*/
    content: "\e258";
    font-family: 'Glyphicons Halflings';
    font-size: 1em;
    float: left;
    margin-top: 4px;
    margin-left: -1.1em;
    color: #005573;
}

p.big { font-size: 1.3em; }

p.Tbig { font-size: 10em; font-family: 'Roboto', sans-serif; line-height: 1; }

p.Tabsolute { font-size: 1.8em; position: absolute; top: 2em; left: 0; width: 100%; }

.thin { font-weight: 100!important; }
.extra-light { font-weight: 200!important; }
.light { font-weight: 300!important; }
.normal { font-weight: 400!important; }
.medium { font-weight: 500!important; }
.semi-bold { font-weight: 600!important; }
.bold { font-weight: 700!important; }
.extra-bold { font-weight: 800!important; }
.ultra-bold { font-weight: 900!important; }


.fprimary { font-family: 'Montserrat', sans-serif; }
.fsecondary { font-family: 'Roboto', sans-serif; }

.bggreen { background-color: #008c5d; }
.bgdgreen { background-color: #004750; }
.bgwhite { background-color: #FFFFFF; }




/* STYLE */

a, img { border: 0 none; transition: all 0.25s ease-in-out 0s; outline: none; }

a:link, a:visited, li a:link, li a:visited {  color: #008c5d; text-decoration: none; }

a:hover, a:focus, li a:hover { color: #004750; outline: none; }

a:active, li a:active, a.active, li a.active { color: #004750;  }


.bgVgradient a { color: #FFFFFF; }
.bgVgradient a:hover { text-decoration: underline;  }

.marker, .form-required, .request { color: #008c5d; }

.evidenza { color: #008c5d; }
.oliva { color: #78b62b; }
.menta { color: #93d1bb; }
.green { color: #008c5d; }
.dlgreen { color: #007759; } 
.dgreen { color: #004750; }
.dgray { color: #737575;}
.white { color: #FFFFFF; }
.black { color: #000000; }
.text { color: #004750; }

strong,b { font-weight: 700; }

.italic { font-style: italic; }

span.sup { font-size: 70%; position: relative; top: -0.5em; }

sub { font-size: 70%; position: relative; top: 2px; }

.btn { border: none; padding: 0.6em 1em 0.8em; }

.btn { border: none; padding: 0.6em 1em 0.8em; }

.btn, .webform-client-form .form-actions .form-submit { 
  transition: all 0.25s ease-in-out 0s;
  font-family: 'Montserrat', sans-serif;
  border: 0px solid #3B3B3B;
  border-radius: 0;
  background: #008c5d;
  color: #FFFFFF !important;
  font-size: 1em !important;
  padding: 0.7em 3em 0.6em;
  text-shadow: none;
  text-transform: none;
  font-weight: 400;
  width: auto;
  position: relative;
  z-index: 1;
  transition: all 0.25s ease-in-out 0s;
  -webkit-border-radius: 8px; 
  -moz-border-radius: 8px;
  border-radius: 8px;
  outline: none;
}

.btn:hover,
.webform-client-form .form-actions .form-submit:hover { 
  transition: all 0.25s ease-in-out 0s;
  background: #004750;
}

.bgVgradient { 
  background: #008c5d;
  background: -moz-linear-gradient(top,  #008c5d 0%, #004750 100%);
  background: -webkit-linear-gradient(top,  #008c5d 0%,#004750 100%);
  background: linear-gradient(to bottom,  #008c5d 0%,#004750 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#008c5d', endColorstr='#004750',GradientType=0 );
}

.bgVgradient-negative { 
  background: #004750;
  background: -moz-linear-gradient(top,  #004750 0%, #008c5d 100%);
  background: -webkit-linear-gradient(top,  #004750 0%,#008c5d 100%);
  background: linear-gradient(to bottom,  #004750 0%,#008c5d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004750', endColorstr='#008c5d',GradientType=0 );
}

.bgHgradient { 
  background: #008c5d;
  background: -moz-linear-gradient(left,  #008c5d 0%, #004750 100%);
  background: -webkit-linear-gradient(left,  #008c5d 0%,#004750 100%);
  background: linear-gradient(to right,  #008c5d 0%,#004750 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#008c5d', endColorstr='#004750',GradientType=1 );
}

.bgHgradient-negative { 
  background: #004750;
  background: -moz-linear-gradient(left,  #004750 0%, #008c5d 100%);
  background: -webkit-linear-gradient(left,  #004750 0%,#008c5d 100%);
  background: linear-gradient(to right,  #004750 0%,#008c5d 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004750', endColorstr='#008c5d',GradientType=1 );
}

.vertical-line,
.vertical-line-negative,
.vertical-line-green  {
  border-left: 3px solid #004750;
  height: 5em;
  position: absolute;
  left: 50%;
  top: -6em;
}

.vertical-line-negative { border-left-color: #FFFFFF; }
.vertical-line-green { border-left-color: #00945e; }

.border-top  { border-top: 3px solid #bfbfbf!important; }

.padding-fascia { padding-top: 4em; padding-bottom: 4em; }
.padding-fascia-line { padding-top: 6em; }

.icon-action { transition: all 0.25s ease-in-out 0s; }
.icon-action:before { font-weight: 700 }
.icon-action:hover { cursor: pointer; opacity: 0.7; }

@-webkit-keyframes custom-float-Y {
  0% {
    -webkit-transform: translatey(0px);
            transform: translatey(0px);
  }
  50% {
    -webkit-transform: translatey(-20px);
            transform: translatey(-20px);
  }
  100% {
    -webkit-transform: translatey(0px);
            transform: translatey(0px);
  }
}

@keyframes custom-float-Y {
  0% {
    -webkit-transform: translatey(0px);
            transform: translatey(0px);
  }
  50% {
    -webkit-transform: translatey(-20px);
            transform: translatey(-20px);
  }
  100% {
    -webkit-transform: translatey(0px);
            transform: translatey(0px);
  }
}

.custom-float-Y {
  -webkit-transform: translatey(0px);
          transform: translatey(0px);
  -webkit-animation: custom-float-Y 4s ease-in-out infinite;
          animation: custom-float-Y 4s ease-in-out infinite;
}

@-webkit-keyframes custom-float-X {
  0% {
    -webkit-transform: translatex(0px);
            transform: translatex(0px);
  }
  50% {
    -webkit-transform: translatex(-20px);
            transform: translatex(-20px);
  }
  100% {
    -webkit-transform: translatex(0px);
            transform: translatex(0px);
  }
}

@keyframes custom-float-X {
  0% {
    -webkit-transform: translatex(0px);
            transform: translatex(0px);
  }
  50% {
    -webkit-transform: translatex(-20px);
            transform: translatex(-20px);
  }
  100% {
    -webkit-transform: translatex(0px);
            transform: translatex(0px);
  }
}

.custom-float-X {
  -webkit-transform: translatex(0px);
          transform: translatex(0px);
  -webkit-animation: custom-float-X 4s ease-in-out infinite;
          animation: custom-float-X 4s ease-in-out infinite;
}

/*VISUAL-VIDEO*/
.visual-video  p.video { margin: 0; line-height: 0; }
.visual-video #video-background {
    background: #FFFFFF url('../images/u_all_mini.png')  no-repeat scroll top center / contain;
    position: relative;
    right: 0; 
    bottom: 0;
    min-width: 100%; 
    min-height: 100%;
    max-width: 100vw;
    width: auto; 
    height: auto;
    z-index: -100;
}

.visual-video .box-overlay { 
    background: none;
    position: absolute; top: 0; left: 0; right: 0; bottom: 0; 
}

.visual-video .box-overlay .logo { top: 2em; position: absolute; left: 65%; z-index: 1; width: auto; text-align: center; }

.visual-video .box-overlay .caption { bottom: 2em; position: absolute; left: 0; }

/*HEADER*/
/*.header { text-align: right; }*/

/*.header .logo img { position: absolute; top: 0; right: -10em; }*/

/*.header .absolute { position: absolute; top: 0; right: 0; }*/

/*.umbra-mobile h2 { position: relative;  top: -3em; }*/

/*NUMERI*/
.numeri .numeri-header .Tbig { margin-top: 0.2em; }

.numeri .numeri-typeit .box-numeri { position: absolute; top: -12em; left: 0; width: 100%; }
.numeri .numeri-typeit .h2 { font-weight: 800; margin-bottom: 0; }

.numeri .numeri-footer { margin-top: 2em; }


/*COMPANY*/

.company .company-header { padding-bottom: 2em; }
.company .company-body .row-full .etichetta { position: absolute; top: 0em; left: 2em; }

.company .company-tondo { padding: 15px; }
.company .company-tondo { position: relative; top: 0; left: 0; }

.company .company-body .company-tondo-azienda { top: -2em; left: 10em; }
.company .company-body .company-tondo-prodotti { top: 1em; left: 7em; }
.company .company-body .company-tondo-esclusive { top: 10em; left: -4em; }
.company .company-body .company-tondo-servinst { top: -3em; left: 6em; }
.company .company-body .company-tondo-asstec { top: 2em; left: 2em; }
.company .company-body .company-tondo-consulenza { top: 7em; left: 0em; }
.company .company-body .company-tondo-qtcert { top: 0em; left: 3em; }
.company .company-body .company-tondo-formazione { top: -2em; left: 0em; }
.company .company-body .company-tondo-eccellenza { top: 6em; left: -7em; }
.company .company-body .company-tondo-futuro { top: 0em; left: 16em; }


  /* COMPANY-BULLET */
  .company-bullet {  text-align: center; z-index: 1;}
  .company-bullet .company-bullet-open { z-index: 2;  transition: all 0.25s ease-in-out 0s; }
  .company-bullet .company-bullet-open:hover {  cursor: pointer; opacity: 0.7; }

  .company-bullet { 
    background: transparent url("../images/alpha_green.png") scroll repeat center center;
    position: relative;
    display: block;
    display: flex !important;
    padding: 0.5em;
    border-radius: 50%;
    width: 13.5em;
    height: 13.5em; 
    z-index: 20;
  }

  .company-bullet .w-100 { margin: auto; }

  .company-bullet-dgreen { background-image: url("../images/alpha_dgreen.png"); }
  .company-bullet-ciano { background-image: url("../images/alpha_ciano.png"); }
  .company-bullet-oliva { background-image: url("../images/alpha_oliva.png"); }

  /* COMPANY-CAPTION */
  .company-caption { display: none !important; text-align: center; }
  .company-caption .close { position: absolute; bottom: 1em; left: 0; text-align: center; width: 100%; }
  .company-caption-close:hover { cursor: pointer; }
  .company-caption .close p { font-size: 1.2em; }

  .company-caption.animated { 
    background: transparent url("../images/tondo_bg.jpg") scroll repeat center center;
    position: absolute;
    display: block;
    display: flex !important;
    padding: 1em;
    padding: 0.5em 1.5em;
    top: -1em;
    left: -1em;
    border-radius: 50%;
    width: 16em;
    height: 16em; 
    z-index: 99;
  }

  .company-caption .w-100 { margin: auto; }

/*  .cartina-caption.animated.zoomIn { z-index: 99; }*/
  .company-caption.spento { z-index: -1; }

  .company-caption h4,
  .company-caption h6 { margin-bottom: 0.5em; }

  .company-caption h4, .company-caption p { font-size: 0.9em; font-weight: 700; color: #004750; }
  .company-caption h6 { font-size: 0.7em; font-weight: 300; color: #004750; }

  .company-caption h6 span { clear: both; position: relative; display: block; margin-top: 0.5em; font-size: 90%; line-height: 1.3; }
  .company-caption p br { margin-bottom: 0.1em; }

  .company-tondo-qtcert h6 { text-align: left; margin-left: 1em; }

/*PARTNER*/
.partner .padding-fascia-line { padding-bottom: 2em; }
/*.partner .partner-imm .foto { background: transparent url("../images/parallax/1.jpg") repeat scroll center center / cover; height: 25em; }*/
/*.partner .partner-imm .foto { background-size: auto 100%;; }*/
/*.partner .partner-imm .foto { background-size: auto; background-position: -50px center;   background-repeat: repeat-x;  background: none;   position: relative; }*/
/*.partner .partner-imm .foto img {  max-width: 100%;  height: auto; }*/

.partner .partner-imm .foto { background: none;   position: relative; height: 25em; }
.partner .partner-imm .foto img {  position: relative; left: 0em }
.partner .partner-imm .foto1 img { left: -9em; }
.partner .partner-imm .foto2 img { left: 0; }
.partner .partner-imm .foto3 img { left: -3em; }
.partner .partner-imm .foto6 img { }


/*.partner .partner-imm .foto1 { background-image: url("../images/parallax/1.jpg"); }*/
/*.partner .partner-imm .foto2 { background-image: url("../images/parallax/2.jpg"); }*/
/*.partner .partner-imm .foto3 { background-image: url("../images/parallax/3.jpg"); }*/
/*.partner .partner-imm .foto4 { background-image: url("../images/parallax/4.jpg"); }*/
/*.partner .partner-imm .foto5 { background-image: url("../images/parallax/5.jpg"); }*/
/*.partner .partner-imm .foto6 { background-image: url("../images/parallax/6.jpg"); background-position: center right; }*/

.partner .icon-action:hover { cursor: pointer; }

.partner .partner-imm .caption-image { display: none!important; }
.partner .partner-imm .caption-image.animated { 
  position: absolute;
  display: block!important;
  position: absolute; left: 0; top: 0; height: 100%;
  z-index: 99;
  padding-right: 2em!important; 
}

.partner .caption-image h2 { font-size: 1.7em; padding-bottom: 0.5em; padding-top: 0.5em; }
.partner .caption-image p { font-size: 1em; }


/*MARCHI*/
.marchi p.Tbig { line-height: 0.8em; font-size: 9em; }
.marchi p.Tabsolute { top: 3.5em;}

.marchi .box-flip1 { margin-top: 2em; }
.marchi .box-flip2 { margin-top: 5em; }
.marchi .box-flip3 { margin-top: 1em; }

  /*FLIPPER*/
  .marchi .flipper { transition: 0.8s; transform-style: preserve-3d; position: relative; }

  /* flip the pane when hovered */
  .marchi .flip-container.hover .flipper { transform: rotateY(180deg); }

  .marchi .flip-container, .marchi .front, .marchi .back { text-align: center; }

  /* flip speed */
  .marchi .flipper { transition: 0.8s; transform-style: preserve-3d; position: relative; }

  /* hide back of pane during swap */

  .marchi .front, .marchi .back {
      transition: all 0.25s ease-in-out 0s;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      position: absolute;
      top: 0;
      left: 0;
      width: 14em; 
      height: 14em;
      width: auto; 
      height: auto; 
  }

  .marchi .front:hover, .marchi .back:hover { cursor: pointer; opacity: 0.7; }

  /* front pane, placed above back */
  .marchi .front { z-index: 2; -webkit-transform: rotateY(0deg); transform: rotateY(0deg); }

  /* back, initially hidden pane */
  .marchi .back { -webkit-transform: rotateY(180deg); transform: rotateY(180deg); position: relative; }


/*CARTINA-HEADER*/
.cartina .cartina-header .sedi { position: absolute; right: 0; top: 0; }
.cartina .cartina-header .sedi strong { font-size: 1.5em; line-height: 1; }

.cartina .cartina-sede { position: absolute; top: 0; left: 0; width: 4em; }

.cartina .cartina-sede-perugia { top: 35%; left: 46%; width: 4.3em; }
.cartina .cartina-sede-ancona { top: 33%; left: 54%;}
.cartina .cartina-sede-bergamo { top: 12%; left: 29%;}
.cartina .cartina-sede-bologna { top: 24%; left: 40%; }
.cartina .cartina-sede-bolzano { top: 4%; left: 38%; }
.cartina .cartina-sede-cagliari { top: 70%; left: 30%; }
.cartina .cartina-sede-genova { top: 25%; left: 26%; }
.cartina .cartina-sede-napoli { top: 53%; left: 64%; }
.cartina .cartina-sede-palermo { top: 80%; left: 58%; }
.cartina .cartina-sede-pescara { top: 41%; left: 59%; }
.cartina .cartina-sede-prato { top: 35%; left: 39%; }
.cartina .cartina-sede-roma { top: 45%; left: 49%; }
.cartina .cartina-sede-sassari { top: 60%; left: 25%;}
.cartina .cartina-sede-torino { top: 22%; left: 18%; }
.cartina .cartina-sede-venezia { top: 17%; left: 44%; }
.cartina .cartina-sede-verona { top: 15%; left: 36%; }
.cartina .cartina-sede-taranto { top: 55%; left: 86%; }
.cartina .cartina-sede-calabria { top: 65%; left: 78%; }

  /* CARTINA-BULLET */
  .cartina-bullet { cursor: pointer; text-align: center; z-index: 1;}
  .cartina-bullet .cartina-bullet-open{ z-index: 2; }
  .cartina-bullet:hover {  cursor: pointer; }
  .cartina-bullet:hover img {
    -webkit-filter: invert(.2);
    filter: invert(.3);
  }
  .cartina-caption { display: none!important; text-align: center; }

  .cartina-caption-close:hover { cursor: pointer; }

  .cartina-caption.animated { 
    background: transparent url("../images/alpha.png") scroll repeat center center;
    position: absolute;
    display: block;
    display: flex!important;
    padding: 8px;
/*    top: -100%;*/
/*    left: 40%;*/
    top: -140%;
    left: -120%;
    border-radius: 50%;
    width: 12em;
    height: 12em; 
    z-index: 99;
  }

/*  .cartina-caption.animated.fadeInUp { z-index: 99; }*/
  .cartina-caption.spento { z-index: -1; }

  .cartina-sede p,
  .cartina-caption h4,
  .cartina-caption h6 { margin: 0; }

  .cartina-caption h4, .cartina-caption p { font-size: 0.9em; font-weight: 700; color: #004750; }
  .cartina-caption h6 { font-size: 0.7em; font-weight: 300; color: #004750; }

/*ACCORDION-CARTINA*/
/*.accordion-cartina .panel-default { border: none; }*/
.accordion-cartina.panel-group { margin-bottom: 0; }
.accordion-cartina.panel-group .panel { margin-top: 0!important; margin-bottom: 0!important; border-radius: 0; border-color: transparent;     border-top: 0; box-shadow: none;}
.accordion-cartina.panel-group .panel-heading { color: #004750; background-color: #f5f5f5; border: none; border-radius: 0; border-top: 1px solid #004750; transition: all 0.25s ease-in-out 0s; outline: none;  }
.accordion-cartina.panel-group .panel-heading:hover { cursor: pointer; background-color: #93d1bb; }
.accordion-cartina.panel-group .panel-collapse > .panel-body { border: 0px solid #FFFFFF!important; }

/*FOOTER-FIRST*/
.footer { display: none; }



/*  WEBFORM  */
.webform-client-form p,
.webform-client-form label { color: #3B3B3B; }

.webform-component,
.webform-component input,
.webform-component select,
.webform-component textarea,
.webform-client-form fieldset,
.webform-component label,
.webform-component .description
.webform-client-form .form-actions {
    font-family: 'Montserrat', sans-serif;
    display: inline;
    float: left;
    margin: 0.5em 0px;
    position: relative;
    font-weight: 400;
}

.webform-component label,
.webform-component .description {
    font-family: 'Montserrat', sans-serif;
    display: inline;
    float: left;
    margin: 0 0 0.5em;
    font-size: 1em;
    position: relative;
    color: #3B3B3B;
    font-weight: 600;
    width: 100%;
    line-height: 1.3;
}

.webform-component .description { }

.webform-component input,
.webform-component select,
.webform-component textarea,
.webform-client-form fieldset {
    border: 0px solid #535353;
    border-bottom: 1px solid #535353;
    background:  none no-repeat scroll 0 0 transparent;
    display: inline;
    float: left;
    font-size: 1em;
    font-weight: 400;
    margin: 0;
    position: relative;
    padding: 0.5em 0.2em;
    height: auto;
    color: #3B3B3B;
    border-radius: 0;
    box-shadow: none;
}

.webform-component textarea { resize: none; }

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    font-family: 'Montserrat', sans-serif;
    margin-bottom: 0;
    margin-top: 5px;
    width: 50%;
    float: left;
}

.webform-component .form-type-checkbox label,
.webform-component .form-type-checkbox .description,
.webform-component .form-type-radio label,
.webform-component .form-type-radio .description {
    font-size: 1em;
    color: #3B3B3B;
    font-weight: 400;
    line-height: 1.2;
    width: 100%;
    margin: 0.2em;
    padding-left: 1.5em;
    text-align: center;
}

.webform-component .form-type-checkbox .control-label strong,
.webform-component .form-type-radio .control-label strong { 
    display: block; 
    clear: right; 
    color: #3B3B3B; 
    font-weight: 400; 
    margin-left: 5px;
}

.webform-component .form-type-checkbox input,
.webform-component .form-type-radio input {
    margin: 0.2em 0;
    margin-left: -20px;
    margin: 0.1em 0 0.2em -25px;
    margin-left: -30px;
    width: auto; 

    margin-left: -1em;
    width: 0.5em;
    padding: 0;
    height: 0.5em;
    margin-top: 0.3em;

margin-left: -1.5em;

width: 1em;

padding: 0;

height: 1em;

margin-top: 0.1em;

}

.webform-component .form-type-checkbox,
.webform-component .form-type-radio {
    width: 100%;
    width: 50%;
    width: 25%;
    width: 33%;
    margin-bottom: 1em;
}

.webform-component.special .form-type-checkbox,
.webform-component.special .form-type-radio {
    width: 50%;
    padding: 0 15px;
    padding: 0 4em;
    text-align: center;
}

.webform-component.special .form-type-checkbox label,
.webform-component.special .form-type-radio label {
  transition: all 0.25s ease-in-out 0s;
  background-color: transparent;
  border: 1px solid #535353;
  color: #004750;
  padding: 1em 2em;
  border-radius: 0px;
}

.webform-component.special .form-type-checkbox.highlight label,
.webform-component.special .form-type-radio.highlight label {
  background: #004750;
  background: -moz-linear-gradient(top,  #004750 0%, #00c8e2 100%);
  background: -webkit-linear-gradient(top,  #004750 0%,#00c8e2 100%);
  background: linear-gradient(to bottom,  #004750 0%,#00c8e2 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004750', endColorstr='#00c8e2',GradientType=0 );
  color: #FFFFFF;
}

.webform-component.special .form-type-checkbox input,
.webform-component.special .form-type-radio input { z-index: -1; /*display: none;*/ }

.webform-component .highlight label {
    color: #FFFFFF;
}

.webform-component .form-control { color: #004750; }
.webform-component .form-control::-webkit-input-placeholder { color: #929191; text-transform: none; } /* Chrome/Opera/Safari */
.webform-component .form-control::-moz-placeholder { color: #929191; text-transform: none; } /* Firefox 19+ */ 
.webform-component .form-control:-ms-input-placeholder { color: #929191; text-transform: none; } /* IE 10+ */ 
.webform-component .form-control:-moz-placeholder { color: #929191; text-transform: none; } /* Firefox 18- */



.webform-component.webform-component-markup { width: 100%; margin-top: 0; padding: 0 15px; text-align: center; padding-bottom: 1em; }

.webform-component.webform-component-markup h3 { font-weight: 700; font-size: 1.3em; }

.webform-component-markup .campi { font-weight: 400; margin: 1em 0 0; color: #3B3B3B; font-size: 0.7em; font-style: italic; text-align: left; }

.webform-component.privacy .form-type-checkbox, 
.webform-component.privacy .form-type-radio { width: 100%; }

.webform-component.privacy { margin: 1em 0 0; }
.webform-component.privacy a  {  }


.webform-component.privacy .control-label { text-align: left;  font-size: 0.8em; line-height: 1.2; font-weight: 400; }

.webform-component.privacy .control-label .form-required { color: #9F271B; }

.webform-client-form .form-actions { 
  position: relative;
  margin: 0;
  text-align: right;
  height: 0;
}

.webform-client-form .form-actions .form-submit { 
  font-family: 'Montserrat', sans-serif;
  background: #008c5d;
  border: 0px solid #535353;
  border-radius: 0;
  color: #FFFFFF !important;
  font-size: 1em !important;
  padding: 0.7em 2em 0.6em;
  text-shadow: none;
  text-transform: none;
  font-weight: 700;
  width: auto;
  position: relative;
  z-index: 1;
  transition: all 0.25s ease-in-out 0s;
  outline: none;

  right: 0;
  top: -3em;

}


.webform-submit.button-primary:hover,
.webform-client-form .form-actions .form-submit:hover { background: #004750; }



/*==================================================
=            Bootstrap 3 Media Queries             =
==================================================*/

.img-responsive { display: inline-block; }


    /*==========  Mobile First Method  ==========*/

    /* Custom, iPhone Retina */ 
    @media only screen and (min-width : 300px) {

        body { font-size: 17px; }

    }

    /* Extra Small Devices, Phones */ 
    @media only screen and (min-width : 480px) {

        body { font-size: 19px; }
    }

    /* Small Devices, Tablets */
    @media only screen and (min-width : 768px) {

        body { font-size: 21px; }

      /*PARTNER*/
      .partner .caption-image h2 { font-size: 1.35em; }
      .partner .caption-image p { font-size: 0.9em; }

    }

    /* Medium Devices, Desktops */
    @media only screen and (min-width : 992px) {

        body { font-size: 23px; }

      /*PARTNER*/
      .partner .caption-image h2 { font-size: 1.6em; }
      .partner .caption-image p { font-size: 0.95em; }

    }

    /* Large Devices, Wide Screens */
    @media only screen and (min-width : 1200px) {

        body { font-size: 25px; }

      /*PARTNER*/
      .partner .caption-image h2 { font-size: 1.7em; padding-bottom: 0.5em; padding-top: 0.5em; }
      .partner .caption-image p { font-size: 1em; }

    }

    /* Large Devices, Wide Screens */
    @media only screen and (min-width : 1440px) {

        body { font-size: 25px; }

      /*PARTNER*/
      .partner .caption-image h2 { font-size: 1.7em; padding-bottom: 1em; padding-top: 1em; }

    }



    /*==========  Non-Mobile First Method  ==========*/


    /* Large Devices, Wide Screens */
    @media only screen and (max-width : 1440px) {

      /*PARTNER*/
      .partner .partner-imm .caption-image.animated { padding-right: 2em!important; }
      .partner .caption-image h2 { padding-top: 0; }
      .partner .caption-image p { font-size: 0.85em; }

      }


    /* Large Devices, Wide Screens LG */
    @media only screen and (max-width : 1200px) {

      p.Tbig { font-size: 9em; }

      /*VISUAL-VIDEO*/
      .visual-video .box-overlay .logo { top: 2em; }
      .visual-video .box-overlay .caption { bottom: 2em; }

      .visual-video .box-overlay .logo img { max-width: 80%; }

      /*COMPANY*/
      .company p.Tbig { font-size: 8em; }
      .company p.Tabsolute { top: 1.5em; }

      /*PARTNER*/
      .partner .caption-image h2 { padding-top: 0; }
      .partner .partner-imm .caption-image.animated { padding-left: 2em !important; padding-right: 2em !important; }
      .partner .caption-image p { font-size: 0.85em; }


      /*CARTINA-HEADER*/
      .cartina-caption.animated { width: 11em; height: 11em; }

      /*MARCHI*/
      .marchi p.Tbig { font-size: 8em; }
      .marchi p.Tabsolute { font-size: 1.6em; }

    }

    /* Medium Devices, Laptop MD*/
    @media (min-width: 992px) and (max-width: 1199px) { 

    }

    /* Medium Devices, Desktops MD*/
    @media only screen and (max-width : 992px) {

      /*VISUAL-VIDEO*/
      .visual-video .box-overlay .logo img { max-width: 80%; }

      /*CARTINA-HEADER*/
      .cartina .cartina-sede { width: 3.5em; }
      .cartina .cartina-sede-perugia { width: 3.8em; }
      .cartina .cartina-sede-taranto .cartina-caption.animated { left: -160%; }

      /*MARCHI*/
      .marchi p.Tbig { font-size: 6em; }
      .marchi p.Tabsolute { font-size: 1.4em; top: 3em; }


      /*FOOTER-FIRST*/
      .footer-first .footer-grazie p.Tbig { font-size: 8em; }

    }

    /* Portrait tablets and small desktops */
    @media (min-width: 768px) and (max-width: 991px) {

      /*VISUAL-VIDEO*/
      .visual-video .box-overlay .logo img { max-width: 60%; }
    .visual-video .box-overlay .caption { bottom: 1.5em; }
      .visual-video .box-overlay .caption h2 { font-size: 1.5em; }

      /*COMPANY*/
      .company p.Tbig { font-size: 6.5em; }
      .company p.Tabsolute { top: 1.5em; font-size: 1.6em; }
      .company .company-header { padding-bottom: 7em; }

      .company .company-body .row-full .etichetta { left: 1em; }

      .company .company-body .company-tondo-azienda { top: -7em; left: 7em; }
      .company .company-body .company-tondo-prodotti { top: -2em; left: 7em; }
      .company .company-body .company-tondo-esclusive { top: 9em; left: -4em; }
      .company .company-body .company-tondo-servinst { top: -7em; left: 5em; }
      .company .company-body .company-tondo-asstec { top: 3em; left: -2em;}
      .company .company-body .company-tondo-consulenza { top: 7em; left: -2em; }
      .company .company-body .company-tondo-qtcert { top: 0em; left: 5em; }
      .company .company-body .company-tondo-formazione { top: 3em; left: 7em; }
      .company .company-body .company-tondo-eccellenza { top: 15em; left: -6em; }
      .company .company-body .company-tondo-futuro { top: 3em; left: 4em; }

      /*PARTNER*/
      .partner .partner-header p.Tbig { font-size: 7em; }
      .partner .partner-header p.Tabsolute { top: 1.5em; }

      .partner .caption-image h2 { padding: 0; }
      .partner .caption-image p { font-size: 0.75em; }

      /*CARTINA-HEADER*/
      .cartina .cartina-header .sedi { top: -1em; font-size: 1.3em; }

      /* WEBFORM */
      .webform-client-form .form-actions .form-submit { top: -4em; }

    }

    /* Small Devices, Tablets SM*/
    @media only screen and (max-width : 767px) {

      br { display: none; }

      p.Tbig { font-size: 7em; }
      p.Tabsolute { font-size: 1.5em; top: 1.5em; }

      /*NUMERI*/
      .numeri .numeri-typeit .box-numeri {  position: relative; top: auto; left: auto; width: 100%; }
      .numeri .numeri-header .Tbig { margin-top: 30%; position: absolute; width: 100%; top: 0; left: 0; }

      /* COMPANY */
      .company p.Tbig { font-size: 5em; }
      .company p.Tabsolute { top: auto; }
      .company .company-header { padding-bottom: 4em; }

      /* COMPANY-CAPTION */
      .company-tondo .company-caption.animated { top: 0; left: 50%; }
      .company-tondo.even .company-caption.animated { left: -50%; }

      /* COMPANY-CAPTION */
      .company .company-tondo { padding-bottom: 0; }
      .company-bullet { border-radius: 0; width: 100%; height: auto; }
      .company-caption.animated {
          padding: 0.5em 1.5em 3em;
          top: 1em;
          left: 0!important;
          border-radius: 0;
          width: auto;
          height: auto;
      }
      .company-caption .close p { font-size: 1em; }
      .company-caption h4, .company-caption h6, .company-caption p { font-size: 0.9em; }




      /*PARTNER*/
      .partner .partner-header p.Tbig { font-size: 6em; }

      /*MARCHI*/
      .marchi.padding-fascia { padding-top: 2em;  padding-bottom: 2em; }
      .marchi p.Tbig { font-size: 5.5em; }
      .marchi p.Tbig br { display: block; }
      .marchi p.Tabsolute {  top: 3.5em; font-size: 1.2em; }

      .marchi .box-flip { margin-top: 0em; }


      .marchi-tondi-mobile .col-12 { background-color: #FFFFFF; border-top: 1px solid #bfbfbf!important; }
      .marchi-tondi-mobile .col-12:first-child { border-top: 0px solid #bfbfbf!important; }

      /*CARTINA-HEADER*/
      .cartina .cartina-header .sedi { position: relative; top: 0; font-size: 1.3em; text-align: center; }
      .cartina .cartina-header .sedi br { display: block; }
      .cartina.padding-fascia-line { padding-bottom: 0em; }


      /*FOOTER-FIRST*/
      .footer-first .footer-grazie p.Tbig { font-size: 6em; }
      .footer-logo img { max-width: 70%; }

      /* WEBFORM */
      .webform-client-form .form-actions { position: relative; text-align: center; margin-top: 1em; right: auto; width: 100%; height: auto;}
      .webform-client-form .form-actions .form-submit { top: auto; right: auto;  }

    }

    /* Mobile Large, Extra Small Devices, Phones XS*/ 
    @media only screen and (max-width : 575px) {

      h3, .h3 { font-size: 1.4em; }

      p.Tbig {  font-size: 4em; }
      p.Tabsolute { top: auto; position: relative; font-size: 1.4em; }

      /*HEADER*/
      .umbra-mobile h3 { font-size: 1.1em; }

      /*NUMERI*/
      .numeri .numeri-header .Tbig { display: none; }

      /* COMPANY */
      .company p.Tbig { font-size: 3em; }
      .company .company-header { padding-bottom: 1em; }

      /* COMPANY-CAPTION */
      .company .company-tondo { padding-bottom: 0; }
      .company-bullet { border-radius: 0; width: 100%; height: auto; }
      .company-caption.animated {
          padding: 0.5em 1.5em 3em;
          top: 1em;
          left: 0!important;
          border-radius: 0;
          width: auto;
          height: auto;
      }
      .company-caption .close p { font-size: 1em; }
      .company-caption h4, .company-caption h6, .company-caption p { font-size: 0.9em; }

      /*PARTNER*/
      .partner .partner-header p.Tbig { font-size: 4em; }

      /*OMAGGIO*/
      .omaggio-header p.Tabsolute { font-size: 1.3em; }

      /*MARCHI*/
      .marchi p.Tbig { font-size: 3.5em; }
      .marchi p.Tabsolute { top: auto; margin-bottom: 1em; }

      /*FOOTER-FIRST*/
      .footer-first .footer-grazie p.Tbig { font-size: 4em; }

    }


    /* Mobile Large, Extra Small Devices, Phones XS*/ 
    @media only screen and (max-width : 480px) {


    }

    /* Mobile Medium, iPhone Retina */ 
    @media only screen and (max-width : 375px) {

      /*MARCHI*/
      .marchi-tondi-mobile img { max-width: 80%; }

    }

    /* Mobile Small, Custom iPhone Retina */ 
    @media only screen and (max-width : 320px) {

      /*PARTNER*/
      .partner .partner-header p.Tbig { font-size: 3em; }

    }

/* Extra small devices (phones, less than 768px) */
/* No media query since this is the default in Bootstrap */

/* Small devices (tablets, 768px and up) */
@media (min-width: @screen-sm-min) {  }

/* Medium devices (desktops, 992px and up) */
@media (min-width: @screen-md-min) {  }

/* Large devices (large desktops, 1200px and up) */
@media (min-width: @screen-lg-min) {  }


@media (max-width: @screen-xs-max) {  }
@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) {  }
@media (min-width: @screen-md-min) and (max-width: @screen-md-max) {  }
@media (min-width: @screen-lg-min) {  }

