@charset "UTF-8";
/* VARS
Questa cartella contiene uno o più file contententi tutte le variabili globali
del progetto. Qui si possono sovrascrivere le variabili di default di Foundation
e all'occorrenza crearne di nuove, organizzandole come meglio si crede.
*/
/* BOURBON
Può essere incluso Bourbon se necessario, previa installazione tramite Bower.
*/
/* FOUNDATION
Qui vengono inclusi singolarmente tutti i moduli componenti sass di Foundation
in base alle esigenze del progetto.
*/
/**
 * Foundation for Sites by ZURB
 * Version 6.1.2
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
   * 1. Set default font family to sans-serif.
   * 2. Prevent iOS and IE text size adjust after device orientation change,
   *    without disabling user zoom.
   */
@import url("https://fonts.googleapis.com/css?family=Ubuntu:300,400,500,700");
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
   * Remove default margin.
   */
body {
  margin: 0;
}

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none;
}

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * Improve readability of focused elements when they are also in an
   * active/hover state.
   */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold;
}

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic;
}

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000;
}

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%;
}

/**
   * Prevent `sub` and `sup` affecting `line-height` in all browsers.
   */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0;
}

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px;
}

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  box-sizing: content-box;
  height: 0;
}

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto;
}

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible;
}

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none;
}

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal;
}

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
   */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
}

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * Define consistent border, margin, and padding.
   * [NOTE] We don't enable this ruleset in Foundation, because we want the <fieldset> element to have plain styling.
   */
/* fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  } */
/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto;
}

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold;
}

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&mlarge=87.5em&xxlarge=100em";
}

html {
  font-size: 100%;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body {
  padding: 0;
  margin: 0;
  font-family: "Ubuntu", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #5b5a5e;
  background: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  display: inline-block;
  vertical-align: middle;
}

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0;
}

select {
  width: 100%;
  border-radius: 0;
}

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

button {
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  line-height: 1;
}

.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

.row {
  max-width: 93.75rem;
  margin-left: auto;
  margin-right: auto;
}

.row::before, .row::after {
  content: ' ';
  display: table;
}

.row::after {
  clear: both;
}

.row.collapse > .column, .row.collapse > .columns {
  padding-left: 0;
  padding-right: 0;
}

.row .row {
  margin-left: -1.25rem;
  margin-right: -1.25rem;
}

.row .row.collapse {
  margin-left: 0;
  margin-right: 0;
}

.row.expanded {
  max-width: none;
}

.row.expanded .row {
  margin-left: auto;
  margin-right: auto;
}

.column, .columns {
  width: 100%;
  float: left;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right;
}

.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left;
}

.column.row.row, .row.row.columns {
  float: none;
}

.row .column.row.row, .row .row.row.columns {
  padding-left: 0;
  padding-right: 0;
  margin-left: 0;
  margin-right: 0;
}

.small-1 {
  width: 8.3333333333%;
}

.small-push-1 {
  position: relative;
  left: 8.3333333333%;
}

.small-pull-1 {
  position: relative;
  left: -8.3333333333%;
}

.small-offset-0 {
  margin-left: 0%;
}

.small-2 {
  width: 16.6666666667%;
}

.small-push-2 {
  position: relative;
  left: 16.6666666667%;
}

.small-pull-2 {
  position: relative;
  left: -16.6666666667%;
}

.small-offset-1 {
  margin-left: 8.3333333333%;
}

.small-3 {
  width: 25%;
}

.small-push-3 {
  position: relative;
  left: 25%;
}

.small-pull-3 {
  position: relative;
  left: -25%;
}

.small-offset-2 {
  margin-left: 16.6666666667%;
}

.small-4 {
  width: 33.3333333333%;
}

.small-push-4 {
  position: relative;
  left: 33.3333333333%;
}

.small-pull-4 {
  position: relative;
  left: -33.3333333333%;
}

.small-offset-3 {
  margin-left: 25%;
}

.small-5 {
  width: 41.6666666667%;
}

.small-push-5 {
  position: relative;
  left: 41.6666666667%;
}

.small-pull-5 {
  position: relative;
  left: -41.6666666667%;
}

.small-offset-4 {
  margin-left: 33.3333333333%;
}

.small-6 {
  width: 50%;
}

.small-push-6 {
  position: relative;
  left: 50%;
}

.small-pull-6 {
  position: relative;
  left: -50%;
}

.small-offset-5 {
  margin-left: 41.6666666667%;
}

.small-7 {
  width: 58.3333333333%;
}

.small-push-7 {
  position: relative;
  left: 58.3333333333%;
}

.small-pull-7 {
  position: relative;
  left: -58.3333333333%;
}

.small-offset-6 {
  margin-left: 50%;
}

.small-8 {
  width: 66.6666666667%;
}

.small-push-8 {
  position: relative;
  left: 66.6666666667%;
}

.small-pull-8 {
  position: relative;
  left: -66.6666666667%;
}

.small-offset-7 {
  margin-left: 58.3333333333%;
}

.small-9 {
  width: 75%;
}

.small-push-9 {
  position: relative;
  left: 75%;
}

.small-pull-9 {
  position: relative;
  left: -75%;
}

.small-offset-8 {
  margin-left: 66.6666666667%;
}

.small-10 {
  width: 83.3333333333%;
}

.small-push-10 {
  position: relative;
  left: 83.3333333333%;
}

.small-pull-10 {
  position: relative;
  left: -83.3333333333%;
}

.small-offset-9 {
  margin-left: 75%;
}

.small-11 {
  width: 91.6666666667%;
}

.small-push-11 {
  position: relative;
  left: 91.6666666667%;
}

.small-pull-11 {
  position: relative;
  left: -91.6666666667%;
}

.small-offset-10 {
  margin-left: 83.3333333333%;
}

.small-12 {
  width: 100%;
}

.small-offset-11 {
  margin-left: 91.6666666667%;
}

.small-up-1 > .column, .small-up-1 > .columns {
  width: 100%;
  float: left;
}

.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both;
}

.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left;
}

.small-up-2 > .column, .small-up-2 > .columns {
  width: 50%;
  float: left;
}

.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both;
}

.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left;
}

.small-up-3 > .column, .small-up-3 > .columns {
  width: 33.3333333333%;
  float: left;
}

.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both;
}

.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left;
}

.small-up-4 > .column, .small-up-4 > .columns {
  width: 25%;
  float: left;
}

.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both;
}

.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left;
}

.small-up-5 > .column, .small-up-5 > .columns {
  width: 20%;
  float: left;
}

.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both;
}

.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left;
}

.small-up-6 > .column, .small-up-6 > .columns {
  width: 16.6666666667%;
  float: left;
}

.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both;
}

.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left;
}

.small-up-7 > .column, .small-up-7 > .columns {
  width: 14.2857142857%;
  float: left;
}

.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both;
}

.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left;
}

.small-up-8 > .column, .small-up-8 > .columns {
  width: 12.5%;
  float: left;
}

.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none;
}

.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both;
}

.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-left: 0;
  padding-right: 0;
}

.small-collapse .row {
  margin-left: 0;
  margin-right: 0;
}

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.small-centered {
  float: none;
  margin-left: auto;
  margin-right: auto;
}

.small-uncentered,
.small-push-0,
.small-pull-0 {
  position: static;
  margin-left: 0;
  margin-right: 0;
  float: left;
}

@media screen and (min-width: 40em) {
  .medium-1 {
    width: 8.3333333333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.6666666667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .medium-4 {
    width: 33.3333333333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.6666666667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .medium-7 {
    width: 58.3333333333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.6666666667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .medium-10 {
    width: 83.3333333333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.6666666667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    width: 33.3333333333%;
    float: left;
  }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    width: 16.6666666667%;
    float: left;
  }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    width: 14.2857142857%;
    float: left;
  }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .medium-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .medium-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .medium-uncentered,
  .medium-push-0,
  .medium-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}

@media screen and (min-width: 64em) {
  .large-1 {
    width: 8.3333333333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.6666666667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .large-4 {
    width: 33.3333333333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.6666666667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .large-7 {
    width: 58.3333333333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.6666666667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .large-10 {
    width: 83.3333333333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.6666666667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    width: 33.3333333333%;
    float: left;
  }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    width: 16.6666666667%;
    float: left;
  }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    width: 14.2857142857%;
    float: left;
  }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .large-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .large-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .large-uncentered,
  .large-push-0,
  .large-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-1 {
    width: 8.3333333333%;
  }
  .xlarge-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .xlarge-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .xlarge-offset-0 {
    margin-left: 0%;
  }
  .xlarge-2 {
    width: 16.6666666667%;
  }
  .xlarge-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .xlarge-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .xlarge-offset-1 {
    margin-left: 8.3333333333%;
  }
  .xlarge-3 {
    width: 25%;
  }
  .xlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xlarge-offset-2 {
    margin-left: 16.6666666667%;
  }
  .xlarge-4 {
    width: 33.3333333333%;
  }
  .xlarge-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .xlarge-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .xlarge-offset-3 {
    margin-left: 25%;
  }
  .xlarge-5 {
    width: 41.6666666667%;
  }
  .xlarge-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .xlarge-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .xlarge-offset-4 {
    margin-left: 33.3333333333%;
  }
  .xlarge-6 {
    width: 50%;
  }
  .xlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xlarge-offset-5 {
    margin-left: 41.6666666667%;
  }
  .xlarge-7 {
    width: 58.3333333333%;
  }
  .xlarge-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .xlarge-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .xlarge-offset-6 {
    margin-left: 50%;
  }
  .xlarge-8 {
    width: 66.6666666667%;
  }
  .xlarge-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .xlarge-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .xlarge-offset-7 {
    margin-left: 58.3333333333%;
  }
  .xlarge-9 {
    width: 75%;
  }
  .xlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xlarge-offset-8 {
    margin-left: 66.6666666667%;
  }
  .xlarge-10 {
    width: 83.3333333333%;
  }
  .xlarge-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .xlarge-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .xlarge-offset-9 {
    margin-left: 75%;
  }
  .xlarge-11 {
    width: 91.6666666667%;
  }
  .xlarge-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .xlarge-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .xlarge-offset-10 {
    margin-left: 83.3333333333%;
  }
  .xlarge-12 {
    width: 100%;
  }
  .xlarge-offset-11 {
    margin-left: 91.6666666667%;
  }
  .xlarge-up-1 > .column, .xlarge-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .xlarge-up-1 > .column:nth-of-type(1n), .xlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-1 > .column:nth-of-type(1n+1), .xlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xlarge-up-1 > .column:last-child, .xlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xlarge-up-2 > .column, .xlarge-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .xlarge-up-2 > .column:nth-of-type(1n), .xlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-2 > .column:nth-of-type(2n+1), .xlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xlarge-up-2 > .column:last-child, .xlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xlarge-up-3 > .column, .xlarge-up-3 > .columns {
    width: 33.3333333333%;
    float: left;
  }
  .xlarge-up-3 > .column:nth-of-type(1n), .xlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-3 > .column:nth-of-type(3n+1), .xlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xlarge-up-3 > .column:last-child, .xlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xlarge-up-4 > .column, .xlarge-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .xlarge-up-4 > .column:nth-of-type(1n), .xlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-4 > .column:nth-of-type(4n+1), .xlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xlarge-up-4 > .column:last-child, .xlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xlarge-up-5 > .column, .xlarge-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .xlarge-up-5 > .column:nth-of-type(1n), .xlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-5 > .column:nth-of-type(5n+1), .xlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xlarge-up-5 > .column:last-child, .xlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xlarge-up-6 > .column, .xlarge-up-6 > .columns {
    width: 16.6666666667%;
    float: left;
  }
  .xlarge-up-6 > .column:nth-of-type(1n), .xlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-6 > .column:nth-of-type(6n+1), .xlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xlarge-up-6 > .column:last-child, .xlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xlarge-up-7 > .column, .xlarge-up-7 > .columns {
    width: 14.2857142857%;
    float: left;
  }
  .xlarge-up-7 > .column:nth-of-type(1n), .xlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-7 > .column:nth-of-type(7n+1), .xlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xlarge-up-7 > .column:last-child, .xlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xlarge-up-8 > .column, .xlarge-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .xlarge-up-8 > .column:nth-of-type(1n), .xlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xlarge-up-8 > .column:nth-of-type(8n+1), .xlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xlarge-up-8 > .column:last-child, .xlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xlarge-collapse > .column, .xlarge-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .xlarge-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .xlarge-uncollapse > .column, .xlarge-uncollapse > .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .xlarge-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .xlarge-uncentered,
  .xlarge-push-0,
  .xlarge-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}

@media screen and (min-width: 100em) {
  .xxlarge-1 {
    width: 8.3333333333%;
  }
  .xxlarge-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .xxlarge-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .xxlarge-offset-0 {
    margin-left: 0%;
  }
  .xxlarge-2 {
    width: 16.6666666667%;
  }
  .xxlarge-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .xxlarge-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .xxlarge-offset-1 {
    margin-left: 8.3333333333%;
  }
  .xxlarge-3 {
    width: 25%;
  }
  .xxlarge-push-3 {
    position: relative;
    left: 25%;
  }
  .xxlarge-pull-3 {
    position: relative;
    left: -25%;
  }
  .xxlarge-offset-2 {
    margin-left: 16.6666666667%;
  }
  .xxlarge-4 {
    width: 33.3333333333%;
  }
  .xxlarge-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .xxlarge-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .xxlarge-offset-3 {
    margin-left: 25%;
  }
  .xxlarge-5 {
    width: 41.6666666667%;
  }
  .xxlarge-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .xxlarge-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .xxlarge-offset-4 {
    margin-left: 33.3333333333%;
  }
  .xxlarge-6 {
    width: 50%;
  }
  .xxlarge-push-6 {
    position: relative;
    left: 50%;
  }
  .xxlarge-pull-6 {
    position: relative;
    left: -50%;
  }
  .xxlarge-offset-5 {
    margin-left: 41.6666666667%;
  }
  .xxlarge-7 {
    width: 58.3333333333%;
  }
  .xxlarge-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .xxlarge-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .xxlarge-offset-6 {
    margin-left: 50%;
  }
  .xxlarge-8 {
    width: 66.6666666667%;
  }
  .xxlarge-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .xxlarge-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .xxlarge-offset-7 {
    margin-left: 58.3333333333%;
  }
  .xxlarge-9 {
    width: 75%;
  }
  .xxlarge-push-9 {
    position: relative;
    left: 75%;
  }
  .xxlarge-pull-9 {
    position: relative;
    left: -75%;
  }
  .xxlarge-offset-8 {
    margin-left: 66.6666666667%;
  }
  .xxlarge-10 {
    width: 83.3333333333%;
  }
  .xxlarge-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .xxlarge-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .xxlarge-offset-9 {
    margin-left: 75%;
  }
  .xxlarge-11 {
    width: 91.6666666667%;
  }
  .xxlarge-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .xxlarge-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .xxlarge-offset-10 {
    margin-left: 83.3333333333%;
  }
  .xxlarge-12 {
    width: 100%;
  }
  .xxlarge-offset-11 {
    margin-left: 91.6666666667%;
  }
  .xxlarge-up-1 > .column, .xxlarge-up-1 > .columns {
    width: 100%;
    float: left;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n), .xxlarge-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-1 > .column:nth-of-type(1n+1), .xxlarge-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .xxlarge-up-1 > .column:last-child, .xxlarge-up-1 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-2 > .column, .xxlarge-up-2 > .columns {
    width: 50%;
    float: left;
  }
  .xxlarge-up-2 > .column:nth-of-type(1n), .xxlarge-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-2 > .column:nth-of-type(2n+1), .xxlarge-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .xxlarge-up-2 > .column:last-child, .xxlarge-up-2 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-3 > .column, .xxlarge-up-3 > .columns {
    width: 33.3333333333%;
    float: left;
  }
  .xxlarge-up-3 > .column:nth-of-type(1n), .xxlarge-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-3 > .column:nth-of-type(3n+1), .xxlarge-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .xxlarge-up-3 > .column:last-child, .xxlarge-up-3 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-4 > .column, .xxlarge-up-4 > .columns {
    width: 25%;
    float: left;
  }
  .xxlarge-up-4 > .column:nth-of-type(1n), .xxlarge-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-4 > .column:nth-of-type(4n+1), .xxlarge-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .xxlarge-up-4 > .column:last-child, .xxlarge-up-4 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-5 > .column, .xxlarge-up-5 > .columns {
    width: 20%;
    float: left;
  }
  .xxlarge-up-5 > .column:nth-of-type(1n), .xxlarge-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-5 > .column:nth-of-type(5n+1), .xxlarge-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .xxlarge-up-5 > .column:last-child, .xxlarge-up-5 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-6 > .column, .xxlarge-up-6 > .columns {
    width: 16.6666666667%;
    float: left;
  }
  .xxlarge-up-6 > .column:nth-of-type(1n), .xxlarge-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-6 > .column:nth-of-type(6n+1), .xxlarge-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .xxlarge-up-6 > .column:last-child, .xxlarge-up-6 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-7 > .column, .xxlarge-up-7 > .columns {
    width: 14.2857142857%;
    float: left;
  }
  .xxlarge-up-7 > .column:nth-of-type(1n), .xxlarge-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-7 > .column:nth-of-type(7n+1), .xxlarge-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .xxlarge-up-7 > .column:last-child, .xxlarge-up-7 > .columns:last-child {
    float: left;
  }
  .xxlarge-up-8 > .column, .xxlarge-up-8 > .columns {
    width: 12.5%;
    float: left;
  }
  .xxlarge-up-8 > .column:nth-of-type(1n), .xxlarge-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .xxlarge-up-8 > .column:nth-of-type(8n+1), .xxlarge-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .xxlarge-up-8 > .column:last-child, .xxlarge-up-8 > .columns:last-child {
    float: left;
  }
  .xxlarge-collapse > .column, .xxlarge-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .xxlarge-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .xxlarge-uncollapse > .column, .xxlarge-uncollapse > .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  .xxlarge-centered {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
  .xxlarge-uncentered,
  .xxlarge-push-0,
  .xxlarge-pull-0 {
    position: static;
    margin-left: 0;
    margin-right: 0;
    float: left;
  }
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

p {
  font-size: inherit;
  line-height: 1.6;
  margin-bottom: 1rem;
  text-rendering: optimizeLegibility;
}

em,
i {
  font-style: italic;
  line-height: inherit;
}

strong,
b {
  font-weight: bold;
  line-height: inherit;
}

small {
  font-size: 80%;
  line-height: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Ubuntu", sans-serif;
  font-weight: normal;
  font-style: normal;
  color: inherit;
  text-rendering: optimizeLegibility;
  margin-top: 0;
  margin-bottom: 0.5rem;
  line-height: 1.4;
}

h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small {
  color: #cacaca;
  line-height: 0;
}

h1 {
  font-size: 1.5rem;
}

h2 {
  font-size: 1.25rem;
}

h3 {
  font-size: 1.1875rem;
}

h4 {
  font-size: 1.125rem;
}

h5 {
  font-size: 1.0625rem;
}

h6 {
  font-size: 1rem;
}

@media screen and (min-width: 40em) {
  h1 {
    font-size: 3rem;
  }
  h2 {
    font-size: 2.5rem;
  }
  h3 {
    font-size: 1.9375rem;
  }
  h4 {
    font-size: 1.5625rem;
  }
  h5 {
    font-size: 1.25rem;
  }
  h6 {
    font-size: 1rem;
  }
}

a {
  color: #ca152a;
  text-decoration: none;
  line-height: inherit;
  cursor: pointer;
}

a:hover, a:focus {
  color: #ae1224;
}

a img {
  border: 0;
}

hr {
  max-width: 93.75rem;
  height: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid #e8eaee;
  border-left: 0;
  margin: 2.5rem auto;
  clear: both;
}

ul,
ol,
dl {
  line-height: 1.6;
  margin-bottom: 1rem;
  list-style-position: outside;
}

li {
  font-size: inherit;
}

ul {
  list-style-type: disc;
  margin-left: 1.25rem;
}

ol {
  margin-left: 1.25rem;
}

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}

dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca;
}

blockquote, blockquote p {
  line-height: 1.6;
  color: #8a8a8a;
}

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a;
}

cite:before {
  content: '\2014 \0020';
}

abbr {
  color: #5b5a5e;
  cursor: help;
  border-bottom: 1px dotted #010101;
}

code {
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #010101;
  background-color: #e6e6e6;
  border: 1px solid #cacaca;
  padding: 0.125rem 0.3125rem 0.0625rem;
}

kbd {
  padding: 0.125rem 0.25rem 0;
  margin: 0;
  background-color: #e6e6e6;
  color: #010101;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
}

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #8a8a8a;
}

.lead {
  font-size: 125%;
  line-height: 1.6;
}

.stat {
  font-size: 2.5rem;
  line-height: 1;
}

p + .stat {
  margin-top: -1rem;
}

.no-bullet {
  margin-left: 0;
  list-style: none;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-center {
  text-align: center;
}

.text-justify {
  text-align: justify;
}

@media screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left;
  }
  .xlarge-text-right {
    text-align: right;
  }
  .xlarge-text-center {
    text-align: center;
  }
  .xlarge-text-justify {
    text-align: justify;
  }
}

@media screen and (min-width: 100em) {
  .xxlarge-text-left {
    text-align: left;
  }
  .xxlarge-text-right {
    text-align: right;
  }
  .xxlarge-text-center {
    text-align: center;
  }
  .xxlarge-text-justify {
    text-align: justify;
  }
}

.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print {
    display: table-cell !important;
  }
  th.show-for-print {
    display: table-cell !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^='javascript:']:after,
  a[href^='#']:after {
    content: '';
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  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;
  }
}

.button {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
          transition: background-color 0.25s ease-out, color 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 0 1rem 0;
  font-size: 0.9rem;
  background-color: #ca152a;
  color: #fff;
}

[data-whatinput='mouse'] .button {
  outline: 0;
}

.button:hover, .button:focus {
  background-color: #ac1224;
  color: #fff;
}

.button.tiny {
  font-size: 0.6rem;
}

.button.small {
  font-size: 0.75rem;
}

.button.large {
  font-size: 1.25rem;
}

.button.expanded {
  display: block;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.button.primary {
  background-color: #ca152a;
  color: #fff;
}

.button.primary:hover, .button.primary:focus {
  background-color: #a21122;
  color: #fff;
}

.button.secondary {
  background-color: #2d4779;
  color: #fff;
}

.button.secondary:hover, .button.secondary:focus {
  background-color: #243961;
  color: #fff;
}

.button.success {
  background-color: #3adb76;
  color: #fff;
}

.button.success:hover, .button.success:focus {
  background-color: #22bb5b;
  color: #fff;
}

.button.alert {
  background-color: #e53935;
  color: #fff;
}

.button.alert:hover, .button.alert:focus {
  background-color: #c81e1a;
  color: #fff;
}

.button.warning {
  background-color: #ffae00;
  color: #fff;
}

.button.warning:hover, .button.warning:focus {
  background-color: #cc8b00;
  color: #fff;
}

.button.hollow {
  border: 1px solid #ca152a;
  color: #ca152a;
}

.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}

.button.hollow:hover, .button.hollow:focus {
  border-color: #650b15;
  color: #650b15;
}

.button.hollow.primary {
  border: 1px solid #ca152a;
  color: #ca152a;
}

.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #650b15;
  color: #650b15;
}

.button.hollow.secondary {
  border: 1px solid #2d4779;
  color: #2d4779;
}

.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #17243d;
  color: #17243d;
}

.button.hollow.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}

.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}

.button.hollow.alert {
  border: 1px solid #e53935;
  color: #e53935;
}

.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #7d1310;
  color: #7d1310;
}

.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}

.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}

.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
  pointer-events: none;
}

.button.dropdown::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  border-color: #ffffff transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: relative;
  top: 0.4em;
  float: right;
  margin-left: 1em;
  display: inline-block;
}

.button.arrow-only::after {
  margin-left: 0;
  float: none;
  top: 0.2em;
}

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 1rem;
  color: #010101;
  background-color: #ffffff;
  box-shadow: inset 0 1px 2px rgba(1, 1, 1, 0.1);
  border-radius: 0;
  -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
          transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none;
}

[type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
textarea:focus {
  border: 1px solid #8a8a8a;
  background-color: #ffffff;
  outline: none;
  box-shadow: 0 0 5px #cacaca;
  -webkit-transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
          transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
}

textarea {
  max-width: 100%;
}

textarea[rows] {
  height: auto;
}

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: default;
}

[type='submit'],
[type='button'] {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
}

input[type='search'] {
  box-sizing: border-box;
}

[type='file'],
[type='checkbox'],
[type='radio'] {
  margin: 0 0 1rem;
}

[type='checkbox'] + label,
[type='radio'] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline;
}

label > [type='checkbox'],
label > [type='label'] {
  margin-right: 0.5rem;
}

[type='file'] {
  width: 100%;
}

label {
  display: block;
  margin: 0;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.8;
  color: #010101;
}

label.middle {
  margin: 0 0 1rem;
  padding: 0.5625rem 0;
}

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #333;
}

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem;
}

.input-group > :first-child {
  border-radius: 0 0 0 0;
}

.input-group > :last-child > * {
  border-radius: 0 0 0 0;
}

.input-group-label, .input-group-field, .input-group-button {
  display: table-cell;
  margin: 0;
  vertical-align: middle;
}

.input-group-label {
  text-align: center;
  width: 1%;
  height: 100%;
  padding: 0 1rem;
  background: #e6e6e6;
  color: #010101;
  border: 1px solid #cacaca;
  white-space: nowrap;
}

.input-group-label:first-child {
  border-right: 0;
}

.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  height: 2.5rem;
}

.input-group-button {
  height: 100%;
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
}

.input-group-button a,
.input-group-button input,
.input-group-button button {
  margin: 0;
}

fieldset {
  border: 0;
  padding: 0;
  margin: 0;
}

legend {
  margin-bottom: 0.5rem;
  max-width: 100%;
}

.fieldset {
  border: 1px solid #cacaca;
  padding: 1.25rem;
  margin: 1.125rem 0;
}

.fieldset legend {
  background: #ffffff;
  padding: 0 0.1875rem;
  margin: 0;
  margin-left: -0.1875rem;
}

select {
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  margin: 0 0 1rem;
  font-size: 1rem;
  font-family: inherit;
  line-height: normal;
  color: #010101;
  background-color: #ffffff;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%2851, 51, 51%29"></polygon></svg>');
  background-size: 9px 6px;
  background-position: right center;
  background-origin: content-box;
  background-repeat: no-repeat;
}

@media screen and (min-width: 0\0) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}

select:disabled {
  background-color: #e6e6e6;
  cursor: default;
}

select::-ms-expand {
  display: none;
}

select[multiple] {
  height: auto;
}

.is-invalid-input:not(:focus) {
  background-color: rgba(229, 57, 53, 0.1);
  border-color: #e53935;
}

.is-invalid-label {
  color: #e53935;
}

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #e53935;
}

.form-error.is-visible {
  display: block;
}

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .hide-for-small-only {
    display: none !important;
  }
}

@media screen and (max-width: -0.0625em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important;
  }
}

@media screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important;
  }
}

@media screen and (max-width: 39.9375em) {
  .show-for-medium {
    display: none !important;
  }
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .hide-for-medium-only {
    display: none !important;
  }
}

@media screen and (max-width: 39.9375em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important;
  }
}

@media screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em) {
  .show-for-large {
    display: none !important;
  }
}

@media screen and (min-width: 64em) and (max-width: 74.9375em) {
  .hide-for-large-only {
    display: none !important;
  }
}

@media screen and (max-width: 63.9375em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important;
  }
}

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em) {
  .show-for-xlarge {
    display: none !important;
  }
}

@media screen and (min-width: 75em) and (max-width: 87.4375em) {
  .hide-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 74.9375em), screen and (min-width: 87.5em) {
  .show-for-xlarge-only {
    display: none !important;
  }
}

@media screen and (min-width: 100em) {
  .hide-for-xxlarge {
    display: none !important;
  }
}

@media screen and (max-width: 99.9375em) {
  .show-for-xxlarge {
    display: none !important;
  }
}

@media screen and (min-width: 100em) {
  .hide-for-xxlarge-only {
    display: none !important;
  }
}

@media screen and (max-width: 99.9375em) {
  .show-for-xxlarge-only {
    display: none !important;
  }
}

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  height: auto;
  width: auto;
  overflow: visible;
  clip: auto;
}

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}

@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}

@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}

@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}

@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-center {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.clearfix::before, .clearfix::after {
  content: ' ';
  display: table;
}

.clearfix::after {
  clear: both;
}

.accordion {
  list-style-type: none;
  background: #ffffff;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  border-radius: 0;
  margin-left: 0;
}

.accordion-title {
  display: block;
  padding: 1.25rem 1rem;
  line-height: 1;
  font-size: 0.75rem;
  color: #ca152a;
  position: relative;
  border-bottom: 1px solid #e6e6e6;
}

.accordion-title:hover, .accordion-title:focus {
  background-color: #e6e6e6;
}

.accordion-title::before {
  content: '+';
  position: absolute;
  right: 1rem;
  top: 50%;
  margin-top: -0.5rem;
}

.is-active > .accordion-title::before {
  content: '–';
}

.accordion-content {
  padding: 1rem;
  display: none;
  border-bottom: 1px solid #e6e6e6;
  background-color: #ffffff;
}

.is-accordion-submenu-parent > a {
  position: relative;
}

.is-accordion-submenu-parent > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: #ca152a transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  right: 1rem;
}

.is-accordion-submenu-parent[aria-expanded='true'] > a::after {
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
}

.callout {
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(1, 1, 1, 0.25);
  border-radius: 0;
  position: relative;
  color: #5b5a5e;
  background-color: white;
}

.callout > :first-child {
  margin-top: 0;
}

.callout > :last-child {
  margin-bottom: 0;
}

.callout.primary {
  background-color: #fbd8dc;
}

.callout.secondary {
  background-color: #d9e1f1;
}

.callout.success {
  background-color: #e1faea;
}

.callout.alert {
  background-color: #fbe1e1;
}

.callout.warning {
  background-color: #fff3d9;
}

.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}

.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.close-button {
  position: absolute;
  color: #8a8a8a;
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
  cursor: pointer;
}

[data-whatinput='mouse'] .close-button {
  outline: 0;
}

.close-button:hover, .close-button:focus {
  color: #010101;
}

.dropdown-pane {
  background-color: #ffffff;
  border: 1px solid #cacaca;
  border-radius: 0;
  display: block;
  font-size: 1rem;
  padding: 1rem;
  position: absolute;
  visibility: hidden;
  width: 300px;
  z-index: 10;
}

.dropdown-pane.is-open {
  visibility: visible;
}

.dropdown-pane.tiny {
  width: 100px;
}

.dropdown-pane.small {
  width: 200px;
}

.dropdown-pane.large {
  width: 400px;
}

.flex-video {
  position: relative;
  height: 0;
  padding-bottom: 75%;
  margin-bottom: 1rem;
  overflow: hidden;
}

.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.flex-video.widescreen {
  padding-bottom: 56.25%;
}

.flex-video.vimeo {
  padding-top: 0;
}

.menu {
  margin: 0;
  list-style-type: none;
}

.menu > li {
  display: table-cell;
  vertical-align: middle;
}

[data-whatinput='mouse'] .menu > li {
  outline: 0;
}

.menu > li > a {
  display: block;
  padding: 0.7rem 1rem;
  line-height: 1;
}

.menu input,
.menu a,
.menu button {
  margin-bottom: 0;
}

.menu > li > a > img,
.menu > li > a > i {
  vertical-align: middle;
}

.menu > li > a > span {
  vertical-align: middle;
}

.menu > li > a > img,
.menu > li > a > i {
  display: inline-block;
  margin-right: 0.25rem;
}

.menu > li {
  display: table-cell;
}

.menu.vertical > li {
  display: block;
}

@media screen and (min-width: 40em) {
  .menu.medium-horizontal > li {
    display: table-cell;
  }
  .menu.medium-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 64em) {
  .menu.large-horizontal > li {
    display: table-cell;
  }
  .menu.large-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 75em) {
  .menu.xlarge-horizontal > li {
    display: table-cell;
  }
  .menu.xlarge-vertical > li {
    display: block;
  }
}

@media screen and (min-width: 100em) {
  .menu.xxlarge-horizontal > li {
    display: table-cell;
  }
  .menu.xxlarge-vertical > li {
    display: block;
  }
}

.menu.simple li {
  line-height: 1;
  display: inline-block;
  margin-right: 1rem;
}

.menu.simple a {
  padding: 0;
}

.menu.align-right > li {
  float: right;
}

.menu.expanded {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.menu.expanded > li:first-child:last-child {
  width: 100%;
}

.menu.icon-top > li > a {
  text-align: center;
}

.menu.icon-top > li > a > img,
.menu.icon-top > li > a > i {
  display: block;
  margin: 0 auto 0.25rem;
}

.menu.nested {
  margin-left: 1rem;
}

.menu-text {
  font-weight: bold;
  color: inherit;
  line-height: 1;
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem;
}

.no-js [data-responsive-menu] ul {
  display: none;
}

table {
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0;
}

table thead,
table tbody,
table tfoot {
  border: 1px solid #f2f2f2;
  background-color: #ffffff;
}

table caption {
  font-weight: bold;
  padding: 0.5rem 0.625rem 0.625rem;
}

table thead,
table tfoot {
  background: #f9f9f9;
  color: #5b5a5e;
}

table thead tr,
table tfoot tr {
  background: transparent;
}

table thead th,
table thead td,
table tfoot th,
table tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
  text-align: left;
}

table tbody tr:nth-child(even) {
  background-color: #f2f2f2;
}

table tbody th,
table tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}

@media screen and (max-width: 63.9375em) {
  table.stack thead {
    display: none;
  }
  table.stack tfoot {
    display: none;
  }
  table.stack tr,
  table.stack th,
  table.stack td {
    display: block;
  }
  table.stack td {
    border-top: 0;
  }
}

table.scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
}

table.hover tr:hover {
  background-color: #fafafa;
}

table.hover tr:nth-of-type(even):hover {
  background-color: #ededed;
}

.has-tip {
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  position: relative;
  display: inline-block;
  cursor: help;
}

.tooltip {
  background-color: #2d4779;
  color: #ffffff;
  font-size: 80%;
  padding: 0.75rem;
  position: absolute;
  z-index: 10;
  top: calc(100% + 0.6495rem);
  max-width: 10rem !important;
  border-radius: 0;
}

.tooltip::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent transparent #2d4779;
  border-bottom-style: solid;
  border-top-width: 0;
  bottom: 100%;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}

.tooltip.top::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: #2d4779 transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  top: 100%;
  bottom: auto;
}

.tooltip.left::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent transparent transparent #2d4779;
  border-left-style: solid;
  border-right-width: 0;
  bottom: auto;
  left: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.tooltip.right::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 0.75rem;
  border-color: transparent #2d4779 transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
  bottom: auto;
  left: auto;
  right: 100%;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

/* UTILS
Questa cartella contiene tutti gli helper sass che possono
servire l'interno del progetto come ad esempio funzioni, mixin e placeholder.
Come regola generale da questa cartella non deve uscire nessuna riga di css.
Questi file non dovrebbero essere intesi come specifici del progetto in quanto
contengono solamente delle utility che possono essere riutilizzate ovunque.
*/
/*
@mixin background-rgba($color,$alpha){
    background:rgba($color,$alpha);
}
*/
/* BASE
Questa cartella contiente gli stili di default dei tag HTML.
Dovrebbe essere utilizzata solo nel caso ci sia la necessità di dare uno stile
base e condiviso in tutto il sito a determinati elementi html. Pensatelo come ad
una sorta di normalizer specifico del progetto. Per una questione di ordine e
coerenza non è consentito l'utilizzo di selettori diversi dagli element
selector, quindi non è consentita la presenza di selettori di classe, id,
attributo, ecc.. É importante evitare di utilizzare stili troppo "aggressivi" in
per evitare di doverli sovrascrivere in seguito.
*/
/* GLOBALS
Questa cartella contiene stili utilizzati in tutto il sito e non specifici di un
determinato componente. I selettori da utilizzare per questi elementi sono
esclusivamente selettori di classe oppure at-rule. Generalmente sono stili
generici che si possono applicare a in molteplici casi indpendentemente
dall'elemento/componente in cui vengono utilizzati. In linea di massima possono
far parte di questa cartella classi helpers  (es. clearfix, text-align, ecc..),
classi relative a griglie e spaziature, classi relative a sfondi, bordi,
visibility ecc..oppure at-rule globali come @font-face, @keyframes ecc..
Le regole di questi stili possono essere utilizzate con la direttiva !important
in quanto vanno a sovrascrivere gli stili di default. Le classi globali non
possono avere selettori innestati, nel caso ci si trovi nella situazione di
sentirne il bisogno probabilmente è più conveniente creare un componente.
*/
.bg-primary {
  background: #e8ebee;
}

.bg-dark {
  background: #151e28;
}

.bg-red {
  background: #d5241b;
}

.bg-grey {
  background-color: #d9dadc;
}

.bg-gradient-red {
  background: #d1002d;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #640018 0%, #d1002d 20%, #d1002d 80%, #640018 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #640018 0%, #d1002d 20%, #d1002d 80%, #640018 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#640018', endColorstr='#640018',GradientType=1 );
  /* IE6-9 */
}

.bg-gradient-grey {
  background: #24292d;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #24292d 0%, #4c5157 50%, #24292d 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #24292d 0%, #4c5157 50%, #24292d 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#24292d', endColorstr='#24292d', GradientType=1);
  /* IE6-9 */
}

.bg-gradient-grey-diagonal {
  background: #5f676c;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, #22272b 0%, #5f676c 30%, #5f676c 70%, #22272b 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, #22272b 0%, #5f676c 30%, #5f676c 70%, #22272b 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#22272b', endColorstr='#22272b',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.bg-gradient-dark-grey-diagonal {
  background: #10171d;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #10171d 0%, #323b40 30%, #323b40 70%, #10171d 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-linear-gradient(315deg, #10171d 0%, #323b40 30%, #323b40 70%, #10171d 100%);
  background: linear-gradient(135deg, #10171d 0%, #323b40 30%, #323b40 70%, #10171d 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#10171d', endColorstr='#10171d',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.bg-gradient-light-grey {
  background-color: #fbfbfb;
  background-image: -webkit-linear-gradient(bottom left, #d0d2d3 0%, #fbfbfb 30%, #fbfbfb 70%, #d0d2d3 100%);
  background-image: linear-gradient(to top right, #d0d2d3 0%, #fbfbfb 30%, #fbfbfb 70%, #d0d2d3 100%);
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .bg-gradient-light-grey {
    background-color: #fbfbfb;
    background-image: none;
  }
}

.bg-gradient-light-green {
  background-color: #fbfbfb;
  background-image: -webkit-linear-gradient(bottom left, #eeeeb0 0%, #fffef6 30%, #fffef6 70%, #eeeeb0 100%);
  background-image: linear-gradient(to top right, #eeeeb0 0%, #fffef6 30%, #fffef6 70%, #eeeeb0 100%);
}

.bg-gradient-blue {
  background-color: #fbfbfb;
  background-image: -webkit-linear-gradient(to top right, #051623 0%, #143956 40%, #143956 60%, #051623 100%);
  background-image: -webkit-linear-gradient(bottom left, #051623 0%, #143956 40%, #143956 60%, #051623 100%);
  background-image: linear-gradient(to top right, #051623 0%, #143956 40%, #143956 60%, #051623 100%);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.clearfix {
  overflow: auto;
}

.block {
  display: block;
}

.relative {
  position: relative;
}

.negative {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.negative use > svg {
  color: #ffffff !important;
  fill: #ffffff !important;
}

.primary-color {
  color: #ca152a !important;
  fill: #ca152a !important;
}

.secondary-color {
  color: #2d4779 !important;
  fill: #2d4779 !important;
}

figure {
  margin: 0;
  padding: 0;
  font-size: 0.75rem;
  color: #5b5a5e;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .small-text-center {
    text-align: center;
  }
}

@media screen and (min-width: 64em) {
  .vertical-centered {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}

.grayscale {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear;
}

.grayscale.grayscale--hover:hover, .grayscale.grayscale--hover:focus {
  -webkit-filter: grayscale(0);
  filter: grayscale(0);
}

/* positions */
.position-bottom {
  position: absolute;
  bottom: 0;
}

/* margins */
.no-margin {
  margin: 0 !important;
}

.no-margin-bottom {
  margin-bottom: 0;
}

.margin-top-1 {
  margin-top: 0.625rem;
}

.margin-bottom-1 {
  margin-bottom: 0.625rem;
}

.padding-top-1 {
  padding-top: 0.625rem;
}

.padding-bottom-1 {
  padding-bottom: 0.625rem;
}

.vertical-margin-10 {
  margin: 0.625rem 0.625rem;
}

.margin-top-2 {
  margin-top: 1.25rem;
}

.margin-bottom-2 {
  margin-bottom: 1.25rem;
}

.padding-top-2 {
  padding-top: 1.25rem;
}

.padding-bottom-2 {
  padding-bottom: 1.25rem;
}

.vertical-margin-20 {
  margin: 1.25rem 1.25rem;
}

.margin-top-3 {
  margin-top: 1.875rem;
}

.margin-bottom-3 {
  margin-bottom: 1.875rem;
}

.padding-top-3 {
  padding-top: 1.875rem;
}

.padding-bottom-3 {
  padding-bottom: 1.875rem;
}

.vertical-margin-30 {
  margin: 1.875rem 1.875rem;
}

.margin-top-4 {
  margin-top: 2.5rem;
}

.margin-bottom-4 {
  margin-bottom: 2.5rem;
}

.padding-top-4 {
  padding-top: 2.5rem;
}

.padding-bottom-4 {
  padding-bottom: 2.5rem;
}

.vertical-margin-40 {
  margin: 2.5rem 2.5rem;
}

.margin-top-5 {
  margin-top: 3.125rem;
}

.margin-bottom-5 {
  margin-bottom: 3.125rem;
}

.padding-top-5 {
  padding-top: 3.125rem;
}

.padding-bottom-5 {
  padding-bottom: 3.125rem;
}

.vertical-margin-50 {
  margin: 3.125rem 3.125rem;
}

.margin-top-6 {
  margin-top: 3.75rem;
}

.margin-bottom-6 {
  margin-bottom: 3.75rem;
}

.padding-top-6 {
  padding-top: 3.75rem;
}

.padding-bottom-6 {
  padding-bottom: 3.75rem;
}

.vertical-margin-60 {
  margin: 3.75rem 3.75rem;
}

.margin-top-7 {
  margin-top: 4.375rem;
}

.margin-bottom-7 {
  margin-bottom: 4.375rem;
}

.padding-top-7 {
  padding-top: 4.375rem;
}

.padding-bottom-7 {
  padding-bottom: 4.375rem;
}

.vertical-margin-70 {
  margin: 4.375rem 4.375rem;
}

.margin-top-8 {
  margin-top: 5rem;
}

.margin-bottom-8 {
  margin-bottom: 5rem;
}

.padding-top-8 {
  padding-top: 5rem;
}

.padding-bottom-8 {
  padding-bottom: 5rem;
}

.vertical-margin-80 {
  margin: 5rem 5rem;
}

.margin-top-9 {
  margin-top: 5.625rem;
}

.margin-bottom-9 {
  margin-bottom: 5.625rem;
}

.padding-top-9 {
  padding-top: 5.625rem;
}

.padding-bottom-9 {
  padding-bottom: 5.625rem;
}

.vertical-margin-90 {
  margin: 5.625rem 5.625rem;
}

.margin-top-10 {
  margin-top: 6.25rem;
}

.margin-bottom-10 {
  margin-bottom: 6.25rem;
}

.padding-top-10 {
  padding-top: 6.25rem;
}

.padding-bottom-10 {
  padding-bottom: 6.25rem;
}

.vertical-margin-100 {
  margin: 6.25rem 6.25rem;
}

/* paddings */
.no-padding {
  padding: 0 !important;
}

.no-padding-bottom {
  padding-bottom: 0;
}

.no-padding-top {
  padding-top: 0;
}

.vertical-padding-10 {
  padding: 0.625rem 0;
}

.vertical-padding-20 {
  padding: 1.25rem 0;
}

.vertical-padding-30 {
  padding: 1.875rem 0;
}

.vertical-padding-40 {
  padding: 2.5rem 0;
}

.vertical-padding-50 {
  padding: 3.125rem 0;
}

.vertical-padding-60 {
  padding: 3.75rem 0;
}

.vertical-padding-70 {
  padding: 4.375rem 0;
}

.vertical-padding-80 {
  padding: 5rem 0;
}

/* text-length */
.text-length {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  line-height: 1.4em;
  /* fallback */
  max-height: 15.625rem;
  /* fallback */
  -webkit-line-clamp: 11;
  /* number of lines to show */
  -webkit-box-orient: vertical;
}

/* text align */
.text-center-medium {
  text-align: center;
}

@media screen and (min-width: 64em) {
  .text-center-medium {
    text-align: left;
  }
}

/* borders */
.no-borderb {
  border-bottom: none !important;
}

/* phone behavior */
.js-phone {
  cursor: pointer;
}

.js-phone.disabled,
.js-phone.disabled:hover {
  cursor: text;
  text-decoration: none !important;
  opacity: 1.0;
}

.is-open {
  display: block !important;
}

@-webkit-keyframes preloader {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes preloader {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@-webkit-keyframes indicate-bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}

@keyframes indicate-bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
  60% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}

html, body {
  height: 100%;
}

html:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #ffffff;
  opacity: 0.7;
  -webkit-animation-name: fade-out;
          animation-name: fade-out;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  opacity: 0;
}

@-webkit-keyframes fade-out {
  from {
    opacity: 0.85;
    z-index: 99;
  }
  to {
    opacity: 0.00;
    z-index: 0;
  }
}

@keyframes fade-out {
  from {
    opacity: 0.85;
    z-index: 99;
  }
  to {
    opacity: 0.00;
    z-index: 0;
  }
}

body {
  position: relative;
  overflow-x: hidden;
}

main {
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  opacity: 1;
  background: #ffffff;
  min-height: 100vh;
}

@-webkit-keyframes fade-in {
  from {
    opacity: 0.0;
  }
  to {
    opacity: 1.00;
  }
}

@keyframes fade-in {
  from {
    opacity: 0.0;
  }
  to {
    opacity: 1.00;
  }
}

.content-padding {
  padding: 0 1.25rem;
}

@media screen and (min-width: 75em) {
  .content-padding {
    padding: 0 2.5rem;
  }
}

@media screen and (min-width: 100em) {
  .content-padding {
    padding: 0 5rem;
  }
}

@media screen and (min-width: 75em) {
  .content-intro {
    min-height: 300px;
  }
}

@media screen and (min-width: 75em) {
  .content-intro {
    min-height: 500px;
  }
}

@media screen and (min-width: 100em) {
  .content-intro {
    min-height: 645px;
  }
}

.overflow-hidden {
  overflow: hidden;
}

section {
  position: relative;
}

@media screen and (min-width: 64em) {
  .row {
    max-width: 90%;
  }
}

@media screen and (min-width: 75em) {
  .row {
    max-width: 80%;
  }
}

@media screen and (min-width: 87.5em) {
  .row {
    max-width: 70%;
  }
}

@media screen and (min-width: 100em) {
  .row {
    max-width: 66%;
  }
}

@media screen and (min-width: 100em) {
  .row-prodotti {
    max-width: 70%;
  }
}

.row.expanded {
  max-width: 120rem;
}

.row.full-width {
  max-width: 100%;
}

.flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

/* units */
.unit {
  position: relative;
  padding: 2.5rem 0;
}

@media screen and (min-width: 40em) {
  .unit {
    padding: 3.125rem 0;
  }
}

@media screen and (min-width: 75em) {
  .unit {
    padding: 5rem 0;
  }
}

@media screen and (min-width: 100em) {
  .unit {
    padding: 7.8125rem 0;
  }
}

.unit.unit--small {
  position: relative;
  padding: 1.25rem 0;
}

@media screen and (min-width: 100em) {
  .unit.unit--small {
    padding: 2.5rem 0;
  }
}

.unit.unit--no-pdt {
  padding-top: 0;
}

.unit.unit--no-pdb {
  padding-bottom: 0;
}

@media screen and (min-width: 100em) {
  .unit.unit--no-pdb-xxl {
    padding-bottom: 0;
  }
}

.unit.unit-icon-list {
  padding: 4.375rem 0;
}

@media screen and (min-width: 100em) {
  .unit.unit-icon-list {
    padding: 5.8125rem 0;
  }
}

@media screen and (min-width: 64em) {
  .two-columns-text {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
    -webkit-column-gap: 50px;
       -moz-column-gap: 50px;
            column-gap: 50px;
  }
}

.img-full-height {
  display: block;
  overflow: hidden;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.img-full-width {
  width: 100%;
  height: auto;
}

.spacer {
  border-color: transparent;
  margin: 1.25rem 0;
}

.spacer-bottom {
  border-color: transparent;
  margin-bottom: 3.125rem;
}

.spacer-bottom50 {
  border-color: transparent;
  margin-bottom: 3.125rem;
}

.spacer-bottom100 {
  border-color: transparent;
  margin-bottom: 7.5rem;
}

.spacer-top {
  border-color: transparent;
  margin-top: 3.125rem;
}

.centered {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.oriz-centered {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

/* Columns */
.medium-7-custom {
  width: 100%;
}

@media screen and (min-width: 64em) {
  .medium-7-custom {
    width: 55%;
  }
}

.medium-5-custom {
  width: 100%;
}

@media screen and (min-width: 64em) {
  .medium-5-custom {
    width: 45%;
  }
}

.title {
  position: relative;
  display: block;
  font-family: "Ubuntu", sans-serif;
  color: #151e28;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1.0em;
  font-size: 1.875rem;
}

@media screen and (min-width: 40em) {
  .title {
    font-size: 1.875rem;
  }
}

@media screen and (min-width: 75em) {
  .title {
    font-size: 3.625rem;
  }
}

.title--small {
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 1.5;
}

@media screen and (min-width: 75em) {
  .title--small {
    font-size: 1.75rem;
  }
}

@media screen and (min-width: 100em) {
  .title--small {
    font-size: 2.75rem;
  }
}

.title--negative {
  color: #ffffff;
}

.title--nomargin {
  margin-bottom: 0;
}

.subtitle {
  position: relative;
  display: block;
  color: #151e28;
  font-weight: 400;
  letter-spacing: 2px;
  font-size: 1.25rem;
}

@media screen and (min-width: 40em) {
  .subtitle {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 75em) {
  .subtitle {
    font-size: 2.125rem;
  }
}

.section-title {
  display: block;
  font-size: 1.25rem;
  font-family: "Ubuntu", sans-serif;
  color: #151e28;
  margin-bottom: 0.8333333333rem;
}

@media screen and (min-width: 40em) {
  .section-title {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 75em) {
  .section-title {
    font-size: 1.875rem;
  }
}

.section-title--negative {
  color: #ffffff;
}

.section-title--nomargin {
  margin-bottom: 0.625rem;
}

body {
  font-family: "Ubuntu", sans-serif;
  font-weight: normal;
  color: #5b5a5e;
  letter-spacing: 1px;
}

p {
  font-weight: normal;
  font-size: 1rem;
  line-height: 1.6;
  color: #5b5a5e;
}

@media screen and (min-width: 75em) {
  p {
    font-size: 1.25rem;
    line-height: 1.8;
  }
}

p a {
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  color: #5b5a5e;
  text-decoration: underline;
}

p.negative {
  color: #ffffff;
}

p.negative a {
  color: #ffffff;
}

p.big {
  font-size: 1.25rem;
  color: #151e28;
  line-height: 1.4;
}

p.red {
  color: #d5241b;
}

p.text-primary {
  color: #ca152a !important;
}

a:hover {
  color: #ca152a;
}

a.underline {
  text-decoration: underline;
}

ul {
  font-weight: normal;
  font-size: 0.875rem;
  line-height: 1.6;
  color: #5b5a5e;
}

@media screen and (min-width: 40em) {
  ul {
    font-size: 1.125rem;
  }
}

ul.check-list {
  margin-left: 0;
}

ul.check-list li {
  list-style-type: none;
  background: url(../images/spritesheet/check-list.svg) no-repeat 0% 3px transparent;
  background-size: 0.8125rem 0.8125rem;
  padding-left: 1.5625rem;
  margin: 0.625rem 0 0 0;
  line-height: 1.3em;
}

/* type utils */
small,
.small {
  font-size: 90%;
}

.big {
  font-size: 150%;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.no-text-transform {
  text-transform: none !important;
}

.light,
.light p {
  font-weight: 300;
}

strong,
.bold {
  font-weight: 700;
}

.data {
  width: 100%;
  display: inline-block;
  font-family: "Ubuntu", sans-serif;
  color: #5b5a5e;
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
  letter-spacing: 0.5px;
}

.ico-download:before {
  content: "\e901";
}

.ico-down-arrow:before {
  content: "\e903";
}

.ico-file-text2:before {
  content: "\e926";
}

.ico-mail-envelope-open:before {
  content: "\e900";
}

.ico-link:before {
  content: "\e9cb";
}

@font-face {
  font-family: 'fbr-icons';
  src: url("../fonts/icomoon/fbr-icons.eot?j0zxtt");
  src: url("../fonts/icomoon/fbr-icons.eot?j0zxtt#iefix") format("embedded-opentype"), url("../fonts/icomoon/fbr-icons.ttf?j0zxtt") format("truetype"), url("../fonts/icomoon/fbr-icons.woff?j0zxtt") format("woff"), url("../fonts/icomoon/fbr-icons.svg?j0zxtt#fbr-icons") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="ico-"], [class*=" ico-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'fbr-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^="ico-"].ico--left, [class*=" ico-"].ico--left {
  margin-right: 0.625rem;
}

[class^="ico-"].ico--right, [class*=" ico-"].ico--right {
  margin-left: 0.625rem;
}

[class^="ico-"].ico--primary, [class*=" ico-"].ico--primary {
  fill: #ca152a;
}

[class^="ico-"].ico--secondary, [class*=" ico-"].ico--secondary {
  fill: #2d4779;
}

[class^="ico-"].ico--white, [class*=" ico-"].ico--white {
  fill: #ffffff;
}

.svg--white svg {
  fill: #ffffff !important;
}

.lazyload {
  min-height: 200px;
}

@media screen and (min-width: 64em) {
  .lazyload {
    min-height: 500px;
  }
}

.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  -webkit-transition: opacity 300ms;
          transition: opacity 300ms;
}

/*IE9*/
img::-moz-selection, figure::-moz-selection, .scroll-results::-moz-selection {
  background-color: transparent;
}
img::selection, figure::selection, .scroll-results::selection {
  background-color: transparent;
}

img::-moz-selection, figure::-moz-selection, .scroll-results::-moz-selection {
  background-color: transparent;
}

*:focus {
  outline: 0;
  outline: none;
}

figure, img, .scroll-results {
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  /*IE10*/
  -ms-user-select: none;
  user-select: none;
  /*You just need this if you are only concerned with android and not desktop browsers.*/
  -webkit-tap-highlight-color: transparent;
}

input[type="text"], textarea, [contenteditable] {
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

/* COMPONENTS
Questa cartella contiente la maggior parte degli stili del sito ed
è suddivisa in componenti indipendenti tra loro. I selettori consentiti per i
componenti sono solamente selettori di classe ed è consigliato utilizzare una
sintssi di tipo BEM o similari. All'interno del componente è consentito ma
sconsigliato, l'utilizzo di altri tipi di selettori. Ogni file deve contenere
all'interno un solo componente principale, definito da una classe con lo stesso
nome del file. Se necessario, è possibile raggruppare i componenti dello stesso
tipo in sottocartelle per una miglior organizzazione. I componenti possono
essere innestati uno dentro l'altro ma non devono interagire tra di loro, ovvero
lo stile di un componente non deve dipendere dal componente che lo contiene.
*/
.address {
  position: relative;
  background: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 50%, #e9e9e9 100%);
  background: linear-gradient(45deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.5) 50%, #e9e9e9 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#e9e9e9', GradientType=1);
  padding-top: 6.25rem;
}

@media screen and (min-width: 40em) {
  .address {
    padding-top: 0;
  }
}

.address:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 2;
}

.address--item {
  line-height: 1.4;
  position: absolute;
  top: 40%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 80%;
  text-align: center;
  z-index: 3;
  color: #151e28;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .address--item {
    position: absolute;
    top: 38%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

@media screen and (min-width: 100em) {
  .address--item {
    font-size: 1.125rem;
  }
}

.address--item a {
  color: #010101;
}

.address--item .button {
  color: #010101;
  border: 1px solid #010101 !important;
}

.address--item .button:hover {
  border: 1px solid #ca152a !important;
}

.address figure img {
  width: 86%;
}

.banner-list figure {
  display: block;
  float: left;
  width: 100%;
  max-width: 100%;
}

.banner-list figure img {
  width: 100%;
  max-width: 100%;
}

.banner-list--item {
  position: relative;
  display: block;
  float: left;
  width: 100%;
  -webkit-transition: all 1s ease;
          transition: all 1s ease;
}

.banner-list--item:after {
  content: '';
  display: block;
  padding-bottom: 100%;
}

@media screen and (min-width: 40em) {
  .banner-list--item:after {
    padding-bottom: 0;
  }
}

.banner-list--item_grey {
  background: #4f595f;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #1d2226 0%, #4f595f 30%, #4f595f 70%, #1d2226 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-linear-gradient(315deg, #1d2226 0%, #4f595f 30%, #4f595f 70%, #1d2226 100%);
  background: linear-gradient(135deg, #1d2226 0%, #4f595f 30%, #4f595f 70%, #1d2226 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1d2226', endColorstr='#1d2226',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.banner-list--item_red {
  background: #640018;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(-45deg, #640018 0%, #d1002d 30%, #d1002d 70%, #640018 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-linear-gradient(315deg, #640018 0%, #d1002d 30%, #d1002d 70%, #640018 100%);
  background: linear-gradient(135deg, #640018 0%, #d1002d 30%, #d1002d 70%, #640018 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#640018', endColorstr='#640018',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.banner-list--item_blue {
  background: #003959;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(45deg, #001624 0%, #003959 30%, #003959 70%, #001624 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(45deg, #001624 0%, #003959 30%, #003959 70%, #001624 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#001624', endColorstr='#001624',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
}

.banner-list--item:hover .banner-list--caption svg {
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  -moz-transform: scale(1.1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  margin-bottom: 1.25rem;
}

.banner-list--caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  text-align: center;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1.3em;
  color: #ffffff;
  letter-spacing: 0.2em;
  font-size: 1.25rem;
}

@media screen and (min-width: 40em) {
  .banner-list--caption {
    font-size: 0.9375rem;
  }
}

@media screen and (min-width: 100em) {
  .banner-list--caption {
    font-size: 1.25rem;
  }
}

.banner-list--caption svg {
  fill: #ffffff;
  width: 78px;
  height: 78px;
  display: inline-block;
  margin-bottom: 0.625rem;
  -webkit-transition: all 1s ease;
          transition: all 1s ease;
  overflow: visible;
}

@media screen and (min-width: 40em) {
  .banner-list--caption svg {
    width: 53px;
    height: 53px;
  }
}

@media screen and (min-width: 100em) {
  .banner-list--caption svg {
    width: 74px;
    height: 74px;
  }
}

.banner-list--caption span {
  display: block;
  -webkit-transition: all 1s ease;
          transition: all 1s ease;
}

.breadcrumbs-container {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

@media screen and (min-width: 40em) {
  .breadcrumbs-container {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}

.breadcrumbs {
  background-color: transparent;
  border: none;
  padding: 0;
  text-align: center;
  margin-bottom: 0.9375rem;
}

@media screen and (min-width: 75em) {
  .breadcrumbs {
    text-align: left;
    margin-top: 0.9375rem;
  }
}

.breadcrumbs a {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.75rem;
  line-height: 14px;
  color: #5b5a5e;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  display: inline-block;
}

@media screen and (min-width: 75em) {
  .breadcrumbs a {
    font-size: 12px;
  }
}

.breadcrumbs a:hover {
  color: #151e28;
}

.breadcrumbs a span {
  max-width: 9.375rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
}

@media screen and (min-width: 64em) {
  .breadcrumbs a span {
    max-width: 12.5rem;
  }
}

.breadcrumbs a:hover {
  opacity: 0.80;
}

.breadcrumbs a:hover,
.breadcrumbs div:hover a {
  text-decoration: none;
}

.breadcrumbs * {
  margin: 0;
  display: inline;
}

.breadcrumbs div:before {
  content: "›";
  color: #cdcdcd;
  margin: 0 0.1875rem;
  position: relative;
  top: -2px;
  font-size: 0.875rem;
}

.breadcrumbs div:first-child:before {
  display: none;
}

.breadcrumbs div .home {
  padding-left: 1.25rem;
}

.breadcrumbs div .home:before {
  content: "";
  position: absolute;
  top: 3px;
  left: 15px;
  width: 10px;
  height: 10px;
  background: url(../images/spritesheet/ico-home.svg) no-repeat 50% 50%;
}

.breadcrumbs a.current {
  font-family: "Ubuntu", sans-serif;
  color: #ca152a;
  cursor: default;
}

.breadcrumbs.secondary a.current {
  color: #2d4779;
}

.link__download {
  margin-top: 20px;
  display: inline-block;
  text-decoration: none;
}

.link__download i {
  margin-left: 10px;
}

.button {
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  font-family: "Ubuntu", sans-serif;
  text-decoration: none;
  font-size: 0.6875rem;
  padding: 0.625rem 0.9375rem !important;
  letter-spacing: 0.2em;
}

@media screen and (min-width: 75em) {
  .button {
    font-size: 0.8125rem;
    padding: 0.75rem 1.125rem !important;
  }
}

@media screen and (min-width: 100em) {
  .button {
    font-size: 0.875rem;
    padding: 1.125rem 1.375rem !important;
  }
}

.button:hover, .button:focus {
  text-decoration: none;
}

.button.secondary.hollow {
  border: 1px solid #5b5a5e !important;
  color: #5b5a5e;
}

.button.secondary.hollow svg {
  fill: #5b5a5e !important;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

.button.secondary.hollow:hover {
  background: #5b5a5e !important;
  color: #ffffff !important;
}

.button.secondary.hollow:hover svg {
  fill: #ffffff !important;
}

.button__download {
  margin-right: 15px;
}

.button__download i {
  margin-right: 10px;
}

.button--gradient {
  background: #762023;
  /* Old browsers */
  /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #762023 0%, #ca152a 50%, #762023 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #762023 0%, #ca152a 50%, #762023 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#762023', endColorstr='#762023', GradientType=1);
  /* IE6-9 */
}

.button--gradient:hover {
  opacity: 0.8;
}

.button--icon-left {
  padding-left: 3.4375rem !important;
  text-align: right;
  position: relative;
  display: inline-block;
}

.button--icon-left svg {
  position: absolute;
  top: 50%;
  left: 0.9375rem;
  width: 1.875rem;
  height: 1.875rem;
  margin-top: -0.9375rem;
}

.button--icon-right {
  padding-right: 2.5rem !important;
  text-align: left;
  position: relative;
  display: inline-block;
}

.button--icon-right svg {
  position: absolute;
  top: 50%;
  right: 0.9375rem;
  width: 0.9375rem;
  height: 0.9375rem;
  margin-top: -0.5rem;
  fill: #ffffff;
}

.button--icon-right.button--large {
  padding-right: 3.75rem;
}

.button--icon-right.button--tiny {
  padding-right: 2.5rem;
  border-width: 0.0625rem !important;
  font-size: 0.8125rem;
}

.button--icon-right.button--tiny svg {
  right: 0.9375rem;
  width: 0.875rem;
  height: 0.875rem;
  margin-top: -0.5rem;
}

.button--text {
  padding-left: 0 !important;
  padding-right: 0 !important;
  background-color: transparent;
  color: #ca152a;
  display: inline-block;
  position: relative;
  text-align: left;
}

.button--text:hover, .button--text:focus {
  background-color: transparent;
  color: #ca152a;
}

.button--text:hover:after, .button--text:focus:after {
  content: '';
  width: 100%;
  height: 2px;
  position: absolute;
  bottom: 10px;
  left: 0;
  background-color: #ca152a;
}

.button--text--secondary {
  color: #2d4779;
}

.button--text--secondary:hover, .button--text--secondary:focus {
  color: #2d4779;
}

.button--text--secondary:hover:after, .button--text--secondary:focus:after {
  background-color: #2d4779;
}

.button--text--arrow {
  background-image: url(../images/spritesheet/ico-arrow-right-primary.svg);
  background-size: 15px 15px;
  background-repeat: no-repeat;
  background-position: 100% center;
  padding-right: 20px !important;
}

.button--text--arrow--secondary {
  background-image: url(../images/spritesheet/ico-arrow-right-secondary.svg);
  background-size: 15px 15px;
  background-repeat: no-repeat;
  background-position: 100% center;
  padding-right: 20px !important;
}

.button--text-ico-left {
  position: relative;
  padding-left: 1.875rem !important;
  text-align: right;
  position: relative;
  display: inline-block;
  color: #5b5a5e;
  background-color: transparent;
}

.button--text-ico-left svg {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: -0.6875rem;
  fill: #5b5a5e;
}

.button--text-ico-left:hover, .button--text-ico-left:focus {
  background-color: transparent;
  color: #5b5a5e;
  text-decoration: underline;
}

.button--text-ico-left--primary {
  color: #ca152a;
}

.button--text-ico-left--primary svg {
  fill: #ca152a;
}

.button--text-ico-left--primary:hover, .button--text-ico-left--primary:focus {
  color: #ca152a;
}

.button--text-ico-left--secondary {
  color: #2d4779;
}

.button--text-ico-left--secondary svg {
  fill: #2d4779;
}

.button--text-ico-left--secondary:hover, .button--text-ico-left--secondary:focus {
  color: #2d4779;
}

.button.hollow {
  border: 0.0625rem solid #ca152a;
}

.button.hollow svg {
  fill: #ca152a;
}

.button.hollow:hover {
  background: #ca152a !important;
  color: #ffffff !important;
}

.button.hollow:hover svg {
  fill: #ffffff;
}

.button.hollow--negative {
  background: transparent;
  border: 0.0625rem solid #ffffff !important;
  color: #fff !important;
}

.button.hollow--negative svg {
  fill: #fff;
}

.button.hollow--negative:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #ca152a !important;
}

.button.hollow--negative:hover svg {
  fill: #ca152a;
}

.button.large {
  padding: 0.625rem 1.5625rem !important;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .button.large {
    padding: 0.75rem 1.875rem !important;
    font-size: 1rem;
  }
}

@media screen and (min-width: 75em) {
  .button.large {
    padding: 0.875rem 2.5rem !important;
    font-size: 0.875rem;
  }
}

@media screen and (min-width: 100em) {
  .button.large {
    padding: 1.125rem 3.3125rem !important;
    font-size: 1.125rem;
  }
}

.button.tiny {
  font-size: 0.6875rem;
  padding: 0.625rem 0.9375rem !important;
  font-weight: 500;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .button.expand-small {
    width: 100%;
  }
}

.button-group {
  margin-left: 0;
}

.button-group .button.expand-small {
  margin: 0.25rem 0;
}

.button-row .button {
  margin: 0.3125rem 0;
  width: 100%;
}

@media screen and (min-width: 40em) {
  .button-row .button {
    margin: 0.3125rem 0.1875rem;
    width: auto;
  }
}

.cover {
  position: relative;
  box-sizing: border-box;
  -webkit-transform-style: inherit;
          transform-style: inherit;
  min-height: 370px;
}

.cover:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.cover, .cover:before {
  background: 50% 50% / cover;
}

@media screen and (min-width: 40em) {
  .cover {
    min-height: 450px;
  }
}

@media screen and (min-width: 64em) {
  .cover {
    background-position: 50% 0%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 500px;
  }
}

@media screen and (min-width: 75em) {
  .cover {
    min-height: 620px;
  }
}

@media screen and (min-width: 100em) {
  .cover {
    min-height: 825px;
  }
}

.cover--caption {
  position: absolute;
  top: 66%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  z-index: 2;
  text-align: center;
  padding: 0 15px;
}

.cover--caption.cover--caption-with-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media screen and (min-width: 40em) {
  .cover--caption.cover--caption-with-icon svg {
    width: 4.4375rem;
    height: 4.4375rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--caption.cover--caption-with-icon svg {
    width: 5.875rem;
    height: 5.875rem;
  }
}

.cover--caption.cover--caption-with-icon .cover--caption--title {
  font-weight: 400;
}

@media screen and (min-width: 40em) {
  .cover--caption.cover--caption-with-icon .cover--caption--title {
    font-weight: 300;
    font-size: 2.625rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--caption.cover--caption-with-icon .cover--caption--title {
    font-size: 3.5rem;
  }
}

.cover--caption--title {
  color: #ffffff;
  font-size: 1.4375rem;
  letter-spacing: 0.12em;
}

@media screen and (min-width: 40em) {
  .cover--caption--title {
    font-size: 1.625rem;
  }
}

@media screen and (min-width: 64em) {
  .cover--caption--title {
    font-size: 1.875rem;
  }
}

@media screen and (min-width: 75em) {
  .cover--caption--title {
    font-size: 1.5625rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--caption--title {
    font-size: 2.125rem;
  }
}

.cover--caption--title_big {
  font-size: 1.875rem;
}

@media screen and (min-width: 40em) {
  .cover--caption--title_big {
    font-size: 2.5rem;
  }
}

@media screen and (min-width: 64em) {
  .cover--caption--title_big {
    font-size: 2.875rem;
  }
}

@media screen and (min-width: 75em) {
  .cover--caption--title_big {
    font-size: 3.125rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--caption--title_big {
    font-size: 3.1875rem !important;
  }
}

.cover--shape {
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 291px;
  height: 50px;
  bottom: -25px;
  background: url(../images/spritesheet/red-shape.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 3;
}

@media screen and (min-width: 40em) {
  .cover--shape {
    width: 466px;
    height: 80px;
    bottom: -40px;
  }
}

@media screen and (min-width: 75em) {
  .cover--shape {
    width: 583px;
    height: 100px;
    bottom: -50px;
  }
}

@media screen and (min-width: 64em) {
  .cover--shape {
    width: 583px;
    height: 100px;
    bottom: -40px;
  }
}

@media screen and (min-width: 100em) {
  .cover--shape {
    width: 710px;
    height: 125px;
    bottom: -55px;
  }
}

.cover--short {
  min-height: 250px;
}

@media screen and (min-width: 75em) {
  .cover--short {
    min-height: 350px;
  }
}

@media screen and (min-width: 100em) {
  .cover--short {
    min-height: 480px;
  }
}

.cover--short .cover--caption--title {
  letter-spacing: 0.05em;
}

@media screen and (min-width: 75em) {
  .cover--short .cover--caption--title {
    font-size: 2rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--short .cover--caption--title {
    font-size: 2.625rem;
  }
}

.cover--shorter {
  min-height: 200px;
}

@media screen and (min-width: 75em) {
  .cover--shorter {
    min-height: 280px;
  }
}

@media screen and (min-width: 100em) {
  .cover--shorter {
    min-height: 320px;
  }
}

.cover--shorter .cover--caption {
  top: 75%;
}

.cover--shorter .cover--caption--title {
  letter-spacing: 0.05em;
}

@media screen and (min-width: 75em) {
  .cover--shorter .cover--caption--title {
    font-size: 2rem;
  }
}

@media screen and (min-width: 100em) {
  .cover--shorter .cover--caption--title {
    font-size: 2.625rem;
  }
}

/*-------------------
FORM
-------------------*/
.form .row.collapse .column, .form .row.collapse .columns,
.form .row.collapse .columns {
  padding: 0 0.4375rem;
}

.is-invalid-input, .is-invalid-input:not(:focus) {
  background-color: #fff;
}

input[type="text"],
input[type="password"],
input[type="date"],
input[type="datetime"],
input[type="datetime-local"],
input[type="month"],
input[type="week"],
input[type="email"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="time"],
input[type="url"],
input[type="color"],
textarea,
select {
  font-family: "Ubuntu", sans-serif;
  color: rgba(91, 90, 94, 0.7);
  font-size: 0.8125rem;
  height: 2.875rem;
  border: 0;
  box-shadow: none;
  padding: 0 0.625rem;
  -webkit-transition: all 0.2s linear;
          transition: all 0.2s linear;
  margin-bottom: 25px;
}

@media screen and (min-width: 40em) {
  input[type="text"],
  input[type="password"],
  input[type="date"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="month"],
  input[type="week"],
  input[type="email"],
  input[type="number"],
  input[type="search"],
  input[type="tel"],
  input[type="time"],
  input[type="url"],
  input[type="color"],
  textarea,
  select {
    height: 2rem;
  }
}

@media screen and (min-width: 40em) {
  input[type="text"],
  input[type="password"],
  input[type="date"],
  input[type="datetime"],
  input[type="datetime-local"],
  input[type="month"],
  input[type="week"],
  input[type="email"],
  input[type="number"],
  input[type="search"],
  input[type="tel"],
  input[type="time"],
  input[type="url"],
  input[type="color"],
  textarea,
  select {
    font-size: 0.9375rem;
  }
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="date"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="time"]:focus,
input[type="url"]:focus,
input[type="color"]:focus,
textarea:focus,
select:focus {
  border: 0;
  background-color: #d9d9d9;
}

textarea {
  padding: 0.625rem;
  height: 150px !important;
}

select {
  background-image: url(../images/spritesheet/select-arrow.svg);
  background-size: 3.25rem;
  background-repeat: no-repeat;
  background-position: calc(100%) center;
  padding: 0.5rem 0 0.5rem 0.9375rem !important;
  -webkit-transition: none;
          transition: none;
  color: rgba(91, 90, 94, 0.7) !important;
}

@media screen and (min-width: 40em) {
  select {
    background-size: 2.25rem;
  }
}

select option {
  color: #5b5a5e;
}

.prefix,
.postfix {
  height: 2.9375rem;
}

label {
  font-family: "Ubuntu", sans-serif;
  padding: 0.625rem 0 0.3125rem 0;
  font-size: 0.875rem;
  color: #5b5a5e;
}

@media screen and (min-width: 40em) {
  label {
    font-size: 1.125rem;
  }
}

input[type="checkbox"] + label,
input[type="radio"] + label {
  width: 100%;
  vertical-align: top;
  line-height: 1.3;
  font-weight: normal;
}

input[type="checkbox"] + label a,
input[type="radio"] + label a {
  color: rgba(91, 90, 94, 0.8);
  text-decoration: none;
  display: inline-block;
  font-size: 0.8125rem;
}

@media screen and (min-width: 40em) {
  input[type="checkbox"] + label a,
  input[type="radio"] + label a {
    font-size: 0.9375rem;
  }
}

input[type="checkbox"] + label a:hover,
input[type="radio"] + label a:hover {
  text-decoration: underline;
}

input[type="checkbox"] + label span,
input[type="radio"] + label span {
  margin-bottom: 1rem;
}

/*-------------------
FORM GENERICO
-------------------*/
form.form--generic .button {
  height: 46px;
  margin: 2.0625rem 0 0 0;
  padding: 0.8125rem 0.625rem !important;
}

@media screen and (min-width: 64em) {
  form.form--generic .button {
    margin: 2.3125rem 0 0 0;
  }
}

/*-------------------
FORM FOOTER
-------------------*/
form.form--footer input[type="text"],
form.form--footer input[type="password"],
form.form--footer input[type="date"],
form.form--footer input[type="datetime"],
form.form--footer input[type="datetime-local"],
form.form--footer input[type="month"],
form.form--footer input[type="week"],
form.form--footer input[type="email"],
form.form--footer input[type="tel"],
form.form--footer input[type="time"],
form.form--footer input[type="url"],
form.form--footer input[type="color"],
form.form--footer input[type="number"],
form.form--footer input[type="search"],
form.form--footer input[type="file"],
form.form--footer textarea,
form.form--footer select {
  color: rgba(21, 30, 40, 0.8);
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.5px;
  height: 2.9375rem;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 2px solid rgba(202, 21, 42, 0.3);
  background-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
  padding: 0.5rem 0.9375rem;
  -webkit-transition: none;
          transition: none;
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 40em) {
  form.form--footer input[type="text"],
  form.form--footer input[type="password"],
  form.form--footer input[type="date"],
  form.form--footer input[type="datetime"],
  form.form--footer input[type="datetime-local"],
  form.form--footer input[type="month"],
  form.form--footer input[type="week"],
  form.form--footer input[type="email"],
  form.form--footer input[type="tel"],
  form.form--footer input[type="time"],
  form.form--footer input[type="url"],
  form.form--footer input[type="color"],
  form.form--footer input[type="number"],
  form.form--footer input[type="search"],
  form.form--footer input[type="file"],
  form.form--footer textarea,
  form.form--footer select {
    font-size: 0.9375rem;
  }
}

form.form--footer input[type="text"]:focus,
form.form--footer input[type="password"]:focus,
form.form--footer input[type="date"]:focus,
form.form--footer input[type="datetime"]:focus,
form.form--footer input[type="datetime-local"]:focus,
form.form--footer input[type="month"]:focus,
form.form--footer input[type="week"]:focus,
form.form--footer input[type="email"]:focus,
form.form--footer input[type="tel"]:focus,
form.form--footer input[type="time"]:focus,
form.form--footer input[type="url"]:focus,
form.form--footer input[type="color"]:focus,
form.form--footer input[type="number"]:focus,
form.form--footer input[type="search"]:focus,
form.form--footer input[type="file"]:focus,
form.form--footer textarea:focus,
form.form--footer select:focus {
  background: rgba(255, 255, 255, 0.1);
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-bottom: 2px solid #ca152a;
  box-shadow: none;
}

form.form--footer input[type=file] {
  padding: 0.75rem 0.625rem;
  height: auto;
  font-size: 0.8125rem;
  color: #151e28;
}

@media screen and (min-width: 40em) {
  form.form--footer input[type=file] {
    font-size: 0.9375rem;
  }
}

form.form--footer select {
  background-image: url(../images/spritesheet/arrow-down.svg);
  background-size: 20px 10px;
  background-repeat: no-repeat;
  background-position: calc(100% - 15px) center;
  color: rgba(91, 90, 94, 0.7);
  padding: 0.5rem 0 0.5rem 0.9375rem !important;
}

form.form--footer div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape {
  border: 2px solid rgba(202, 21, 42, 0.3);
  margin-bottom: 1rem;
  background-color: transparent;
}

form.form--footer div:not(.switch) input[type="checkbox"]:checked + .custom-checkbox__label span.custom-checkbox__shape:after {
  background-image: url("../images/spritesheet/check.svg");
}

form.form--footer .select-panel {
  margin-bottom: 1.875rem;
  padding: 0.75rem 0.9375rem 0.25rem;
  background: #e1e1e1;
}

@media screen and (min-width: 40em) {
  form.form--footer .select-panel {
    padding: 1.25rem 1.875rem 0.9375rem;
  }
}

form.form--footer .select-panel label {
  margin-bottom: 0.5rem;
}

form.form--footer .select-panel select {
  background-color: #ffffff;
}

/*-------------------
FORM Newsletter
-------------------*/
.form--newsletter {
  position: relative;
  margin-top: 0.4375rem;
  margin-bottom: 0;
  display: inline-block;
  text-align: center;
}

.form--newsletter input,
.form--newsletter input:focus {
  border: 0;
  background-color: #ffffff;
  color: #151e28;
  font-size: 0.8125rem;
  padding: 0.625rem 0.875rem;
  height: 50px;
  display: inline-block;
  margin: 0;
  text-align: center;
}

@media screen and (min-width: 40em) {
  .form--newsletter input,
  .form--newsletter input:focus {
    font-size: 1rem;
    padding: 0.625rem 9.375rem 0.625rem 0.875rem;
    text-align: left;
  }
}

.form--newsletter__button {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.8125rem;
  color: #ffffff;
  text-transform: uppercase;
  background: #ca152a;
  border: 2px solid #ffffff;
  height: 50px;
  display: inline-block;
  padding: 0.875rem 1.125rem;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .form--newsletter__button {
    width: 100%;
  }
}

@media screen and (min-width: 40em) {
  .form--newsletter__button {
    position: absolute;
    right: 0;
    top: 0;
    border-left: none;
  }
}

.form--newsletter__button:hover {
  background-color: #ffffff;
  color: #ca152a;
}

.form--newsletter .custom-checkbox__label {
  color: #010101 !important;
  font-size: 0.6875rem;
  text-align: left !important;
}

.form--newsletter .custom-checkbox__label a {
  color: #010101 !important;
  font-size: 0.6875rem;
  padding-left: 1.875rem;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .form--newsletter .custom-checkbox__label a {
    padding-left: 0;
  }
}

.form--newsletter div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape {
  border: 1px solid #818181 !important;
}

.form--newsletter div:not(.switch) input[type="checkbox"]:checked + .custom-checkbox__label span.custom-checkbox__shape:after {
  background-image: url("../images/spritesheet/check.svg") !important;
}

/*-------------------
ERRORS
-------------------*/
.form-error {
  margin-top: 1rem !important;
}

.form-error input,
.form-error textarea,
.form-error select {
  margin-bottom: 1rem !important;
}

[data-abide] .form-error label {
  color: #e53935;
}

[data-abide] .is-invalid-input + small.form-error,
[data-abide] .is-invalid-input + input + small.form-error {
  display: inline-block;
  position: relative;
  border: 2px solid #e53935;
  background: #e53935;
  color: #ffffff;
  font-weight: 400;
  left: 0;
  top: -20px;
  margin: 0;
  padding: 0.3125rem;
  font-size: 0.8125rem;
  line-height: 1;
  width: 100%;
}

[data-abide] .is-invalid-input + small.form-error::before,
[data-abide] .is-invalid-input + input + small.form-error::before {
  content: '';
  position: absolute;
  display: block;
  right: 0;
  left: 0;
  margin: auto;
  top: -7px;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #e53935;
  right: initial;
  left: 0.4375rem;
}

.error--privacy .is-invalid-label + small.form-error {
  display: inline-block;
  position: relative;
  border: 2px solid #e53935;
  background: #e53935;
  color: #ffffff;
  font-weight: 400;
  left: 0;
  right: 0;
  top: -10px;
  float: none;
  bottom: 1rem;
  margin: 0;
  padding: 0.3125rem;
  font-size: 0.8125rem;
  line-height: 1;
}

.error--privacy .is-invalid-label + small.form-error::before {
  content: '';
  position: absolute;
  display: block;
  right: 0;
  left: 0;
  margin: auto;
  top: -7px;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #e53935;
  left: 0;
  right: initial;
}

/*-------------------
PLACEHOLDER
-------------------*/
::-webkit-input-placeholder {
  color: rgba(21, 30, 40, 0.8);
  font-style: normal;
}

:-moz-placeholder {
  color: rgba(21, 30, 40, 0.8);
  font-style: normal;
}

::-moz-placeholder {
  color: rgba(21, 30, 40, 0.8);
  font-style: normal;
}

:-ms-input-placeholder {
  color: rgba(21, 30, 40, 0.8);
  font-style: normal;
}

/*-------------------
CUSTOM CHECKBOX
-------------------*/
.custom-checkbox {
  margin: 0 0 0.625rem 0;
  position: relative;
}

form:not(.form--generic) .custom-checkbox__label {
  color: rgba(21, 30, 40, 0.8);
  letter-spacing: 0.5px;
}

form:not(.form--generic) .custom-checkbox__label a {
  color: #ca152a;
}

.form-area-riservata form:not(.form--generic) .custom-checkbox__label a {
  color: #ffffff;
}

div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox {
  position: absolute;
  top: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0;
  opacity: 0;
}

div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label {
  margin: 0;
  text-align: left;
  padding: 0;
  text-transform: none;
  color: rgba(21, 30, 40, 0.8);
}

div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin: 0 0.625rem 0 0;
  border: 1px solid #cacaca;
  background-color: #e6e6e6;
  cursor: pointer;
  float: left;
}

div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox:checked + .custom-checkbox__label span.custom-checkbox__shape {
  background-color: #e6e6e6;
}

div:not(.switch) input[type="checkbox"]:checked + .custom-checkbox__label span.custom-checkbox__shape:after {
  content: '';
  display: block;
  position: absolute;
  top: -2px;
  left: -2px;
  line-height: 1.4;
  text-align: center;
  width: 20px;
  height: 20px;
  background-image: url("../images/spritesheet/check.svg");
  background-position: 22% center;
  background-size: 60% 60%;
  background-repeat: no-repeat;
}

.switch input[type="checkbox"] + .custom-checkbox__label {
  color: inherit !important;
  text-indent: 4.375rem;
  white-space: nowrap;
}

.switch input[type="checkbox"] + .custom-checkbox__label:hover {
  background-color: #999;
  color: #262626 !important;
}

/*-------------------
CUSTOM RADIO
-------------------*/
.radio-list {
  list-style-type: none;
  margin: 0;
}

.customradio {
  margin-bottom: 5px;
  margin-right: 1.25rem;
  float: left;
  position: relative;
}

.customradio label {
  display: inline-block;
  cursor: pointer;
  position: relative;
  padding: 0 0 0 1.5625rem;
  text-transform: none;
  font-weight: 400 !important;
}

.customradio input[type="radio"] {
  display: none;
}

.customradio input[type="radio"] + label {
  margin-left: 0;
}

.customradio label:before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: .625rem;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #fff;
  border-radius: 1rem;
  border: 2px solid rgba(232, 234, 238, 0.5);
}

.customradio .radio label:before {
  border-radius: .5rem;
}

.customradio input[type="radio"]:checked + label:before {
  content: "";
  text-align: center;
  width: 16px;
  height: 16px;
  line-height: 16px;
  background-color: #424242;
  border: 4px solid #fff;
  box-shadow: 0 0 3px #8a8a8a;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .form .button {
    width: 100%;
    margin-top: 0.625rem;
  }
}

/*-------------------
FORM CONTATTI & AREA RISERVATA
-------------------*/
.form-contatti, .form-area-riservata, .form-ricerca-assistenza {
  padding-top: 3.125rem;
}

@media screen and (min-width: 75em) {
  .form-contatti, .form-area-riservata, .form-ricerca-assistenza {
    padding-top: 9.375rem;
  }
}

.form-contatti .cd-dropdown ul, .form-area-riservata .cd-dropdown ul, .form-ricerca-assistenza .cd-dropdown ul {
  overflow: hidden;
}

.form-contatti form input[type="text"],
.form-contatti form input[type="password"],
.form-contatti form input[type="date"],
.form-contatti form input[type="datetime"],
.form-contatti form input[type="datetime-local"],
.form-contatti form input[type="month"],
.form-contatti form input[type="week"],
.form-contatti form input[type="email"],
.form-contatti form input[type="tel"],
.form-contatti form input[type="time"],
.form-contatti form input[type="url"],
.form-contatti form input[type="color"],
.form-contatti form input[type="number"],
.form-contatti form input[type="search"],
.form-contatti form input[type="file"],
.form-contatti form textarea,
.form-contatti form select, .form-area-riservata form input[type="text"],
.form-area-riservata form input[type="password"],
.form-area-riservata form input[type="date"],
.form-area-riservata form input[type="datetime"],
.form-area-riservata form input[type="datetime-local"],
.form-area-riservata form input[type="month"],
.form-area-riservata form input[type="week"],
.form-area-riservata form input[type="email"],
.form-area-riservata form input[type="tel"],
.form-area-riservata form input[type="time"],
.form-area-riservata form input[type="url"],
.form-area-riservata form input[type="color"],
.form-area-riservata form input[type="number"],
.form-area-riservata form input[type="search"],
.form-area-riservata form input[type="file"],
.form-area-riservata form textarea,
.form-area-riservata form select, .form-ricerca-assistenza form input[type="text"],
.form-ricerca-assistenza form input[type="password"],
.form-ricerca-assistenza form input[type="date"],
.form-ricerca-assistenza form input[type="datetime"],
.form-ricerca-assistenza form input[type="datetime-local"],
.form-ricerca-assistenza form input[type="month"],
.form-ricerca-assistenza form input[type="week"],
.form-ricerca-assistenza form input[type="email"],
.form-ricerca-assistenza form input[type="tel"],
.form-ricerca-assistenza form input[type="time"],
.form-ricerca-assistenza form input[type="url"],
.form-ricerca-assistenza form input[type="color"],
.form-ricerca-assistenza form input[type="number"],
.form-ricerca-assistenza form input[type="search"],
.form-ricerca-assistenza form input[type="file"],
.form-ricerca-assistenza form textarea,
.form-ricerca-assistenza form select {
  display: inline-block;
  color: rgba(21, 30, 40, 0.8);
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.5px;
  height: 2.875rem;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  background-color: white;
  box-shadow: none;
  padding: 0.5rem 0.9375rem;
  -webkit-transition: none;
          transition: none;
  margin-bottom: 0.9375rem;
}

@media screen and (min-width: 40em) {
  .form-contatti form input[type="text"],
  .form-contatti form input[type="password"],
  .form-contatti form input[type="date"],
  .form-contatti form input[type="datetime"],
  .form-contatti form input[type="datetime-local"],
  .form-contatti form input[type="month"],
  .form-contatti form input[type="week"],
  .form-contatti form input[type="email"],
  .form-contatti form input[type="tel"],
  .form-contatti form input[type="time"],
  .form-contatti form input[type="url"],
  .form-contatti form input[type="color"],
  .form-contatti form input[type="number"],
  .form-contatti form input[type="search"],
  .form-contatti form input[type="file"],
  .form-contatti form textarea,
  .form-contatti form select, .form-area-riservata form input[type="text"],
  .form-area-riservata form input[type="password"],
  .form-area-riservata form input[type="date"],
  .form-area-riservata form input[type="datetime"],
  .form-area-riservata form input[type="datetime-local"],
  .form-area-riservata form input[type="month"],
  .form-area-riservata form input[type="week"],
  .form-area-riservata form input[type="email"],
  .form-area-riservata form input[type="tel"],
  .form-area-riservata form input[type="time"],
  .form-area-riservata form input[type="url"],
  .form-area-riservata form input[type="color"],
  .form-area-riservata form input[type="number"],
  .form-area-riservata form input[type="search"],
  .form-area-riservata form input[type="file"],
  .form-area-riservata form textarea,
  .form-area-riservata form select, .form-ricerca-assistenza form input[type="text"],
  .form-ricerca-assistenza form input[type="password"],
  .form-ricerca-assistenza form input[type="date"],
  .form-ricerca-assistenza form input[type="datetime"],
  .form-ricerca-assistenza form input[type="datetime-local"],
  .form-ricerca-assistenza form input[type="month"],
  .form-ricerca-assistenza form input[type="week"],
  .form-ricerca-assistenza form input[type="email"],
  .form-ricerca-assistenza form input[type="tel"],
  .form-ricerca-assistenza form input[type="time"],
  .form-ricerca-assistenza form input[type="url"],
  .form-ricerca-assistenza form input[type="color"],
  .form-ricerca-assistenza form input[type="number"],
  .form-ricerca-assistenza form input[type="search"],
  .form-ricerca-assistenza form input[type="file"],
  .form-ricerca-assistenza form textarea,
  .form-ricerca-assistenza form select {
    height: 2rem;
    max-width: 65%;
  }
}

@media screen and (min-width: 40em) {
  .form-contatti form input[type="text"],
  .form-contatti form input[type="password"],
  .form-contatti form input[type="date"],
  .form-contatti form input[type="datetime"],
  .form-contatti form input[type="datetime-local"],
  .form-contatti form input[type="month"],
  .form-contatti form input[type="week"],
  .form-contatti form input[type="email"],
  .form-contatti form input[type="tel"],
  .form-contatti form input[type="time"],
  .form-contatti form input[type="url"],
  .form-contatti form input[type="color"],
  .form-contatti form input[type="number"],
  .form-contatti form input[type="search"],
  .form-contatti form input[type="file"],
  .form-contatti form textarea,
  .form-contatti form select, .form-area-riservata form input[type="text"],
  .form-area-riservata form input[type="password"],
  .form-area-riservata form input[type="date"],
  .form-area-riservata form input[type="datetime"],
  .form-area-riservata form input[type="datetime-local"],
  .form-area-riservata form input[type="month"],
  .form-area-riservata form input[type="week"],
  .form-area-riservata form input[type="email"],
  .form-area-riservata form input[type="tel"],
  .form-area-riservata form input[type="time"],
  .form-area-riservata form input[type="url"],
  .form-area-riservata form input[type="color"],
  .form-area-riservata form input[type="number"],
  .form-area-riservata form input[type="search"],
  .form-area-riservata form input[type="file"],
  .form-area-riservata form textarea,
  .form-area-riservata form select, .form-ricerca-assistenza form input[type="text"],
  .form-ricerca-assistenza form input[type="password"],
  .form-ricerca-assistenza form input[type="date"],
  .form-ricerca-assistenza form input[type="datetime"],
  .form-ricerca-assistenza form input[type="datetime-local"],
  .form-ricerca-assistenza form input[type="month"],
  .form-ricerca-assistenza form input[type="week"],
  .form-ricerca-assistenza form input[type="email"],
  .form-ricerca-assistenza form input[type="tel"],
  .form-ricerca-assistenza form input[type="time"],
  .form-ricerca-assistenza form input[type="url"],
  .form-ricerca-assistenza form input[type="color"],
  .form-ricerca-assistenza form input[type="number"],
  .form-ricerca-assistenza form input[type="search"],
  .form-ricerca-assistenza form input[type="file"],
  .form-ricerca-assistenza form textarea,
  .form-ricerca-assistenza form select {
    font-size: 0.9375rem;
    height: 2.1875rem;
  }
}

.form-contatti form input[type="text"]:focus,
.form-contatti form input[type="password"]:focus,
.form-contatti form input[type="date"]:focus,
.form-contatti form input[type="datetime"]:focus,
.form-contatti form input[type="datetime-local"]:focus,
.form-contatti form input[type="month"]:focus,
.form-contatti form input[type="week"]:focus,
.form-contatti form input[type="email"]:focus,
.form-contatti form input[type="tel"]:focus,
.form-contatti form input[type="time"]:focus,
.form-contatti form input[type="url"]:focus,
.form-contatti form input[type="color"]:focus,
.form-contatti form input[type="number"]:focus,
.form-contatti form input[type="search"]:focus,
.form-contatti form input[type="file"]:focus,
.form-contatti form textarea:focus,
.form-contatti form select:focus, .form-area-riservata form input[type="text"]:focus,
.form-area-riservata form input[type="password"]:focus,
.form-area-riservata form input[type="date"]:focus,
.form-area-riservata form input[type="datetime"]:focus,
.form-area-riservata form input[type="datetime-local"]:focus,
.form-area-riservata form input[type="month"]:focus,
.form-area-riservata form input[type="week"]:focus,
.form-area-riservata form input[type="email"]:focus,
.form-area-riservata form input[type="tel"]:focus,
.form-area-riservata form input[type="time"]:focus,
.form-area-riservata form input[type="url"]:focus,
.form-area-riservata form input[type="color"]:focus,
.form-area-riservata form input[type="number"]:focus,
.form-area-riservata form input[type="search"]:focus,
.form-area-riservata form input[type="file"]:focus,
.form-area-riservata form textarea:focus,
.form-area-riservata form select:focus, .form-ricerca-assistenza form input[type="text"]:focus,
.form-ricerca-assistenza form input[type="password"]:focus,
.form-ricerca-assistenza form input[type="date"]:focus,
.form-ricerca-assistenza form input[type="datetime"]:focus,
.form-ricerca-assistenza form input[type="datetime-local"]:focus,
.form-ricerca-assistenza form input[type="month"]:focus,
.form-ricerca-assistenza form input[type="week"]:focus,
.form-ricerca-assistenza form input[type="email"]:focus,
.form-ricerca-assistenza form input[type="tel"]:focus,
.form-ricerca-assistenza form input[type="time"]:focus,
.form-ricerca-assistenza form input[type="url"]:focus,
.form-ricerca-assistenza form input[type="color"]:focus,
.form-ricerca-assistenza form input[type="number"]:focus,
.form-ricerca-assistenza form input[type="search"]:focus,
.form-ricerca-assistenza form input[type="file"]:focus,
.form-ricerca-assistenza form textarea:focus,
.form-ricerca-assistenza form select:focus {
  border-top: 0;
  border-left: 0;
  border-right: 0;
  box-shadow: none;
}

@media screen and (min-width: 40em) {
  .form-contatti form .cd-dropdown, .form-area-riservata form .cd-dropdown, .form-ricerca-assistenza form .cd-dropdown {
    max-width: 65%;
  }
}

.form-contatti form input[type=file], .form-area-riservata form input[type=file], .form-ricerca-assistenza form input[type=file] {
  padding: 0.75rem 0.625rem;
  height: auto;
  font-size: 0.8125rem;
  color: #151e28;
}

@media screen and (min-width: 40em) {
  .form-contatti form input[type=file], .form-area-riservata form input[type=file], .form-ricerca-assistenza form input[type=file] {
    font-size: 0.9375rem;
  }
}

.form-contatti form label, .form-area-riservata form label, .form-ricerca-assistenza form label {
  padding-top: 0;
}

@media screen and (min-width: 40em) {
  .form-contatti form label, .form-area-riservata form label, .form-ricerca-assistenza form label {
    font-size: 0.875rem;
    display: inline-block;
    width: 35%;
    float: left;
    line-height: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .form-contatti form label, .form-area-riservata form label, .form-ricerca-assistenza form label {
    font-size: 1.125rem;
  }
}

.form-contatti form textarea, .form-area-riservata form textarea, .form-ricerca-assistenza form textarea {
  height: 100px !important;
}

.form-contatti form div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape, .form-area-riservata form div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape, .form-ricerca-assistenza form div:not(.switch) input[type="checkbox"].custom-checkbox__checkbox + .custom-checkbox__label span.custom-checkbox__shape {
  border: 2px solid white;
  margin-bottom: 1rem;
  background-color: #ffffff;
}

.form-contatti form .custom-checkbox__label div, .form-area-riservata form .custom-checkbox__label div, .form-ricerca-assistenza form .custom-checkbox__label div {
  position: relative;
}

.form-contatti form .custom-checkbox__label a, .form-area-riservata form .custom-checkbox__label a, .form-ricerca-assistenza form .custom-checkbox__label a {
  text-decoration: underline;
}

@media screen and (min-width: 75em) {
  .form-contatti form .custom-checkbox__label a, .form-area-riservata form .custom-checkbox__label a, .form-ricerca-assistenza form .custom-checkbox__label a {
    font-size: 0.8125rem;
    display: inline-block;
    line-height: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .form-contatti form .custom-checkbox__label a, .form-area-riservata form .custom-checkbox__label a, .form-ricerca-assistenza form .custom-checkbox__label a {
    font-size: 1.0625rem;
  }
}

.form-contatti form .custom-checkbox__shape, .form-area-riservata form .custom-checkbox__shape, .form-ricerca-assistenza form .custom-checkbox__shape {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.form-contatti form .custom-checkbox__label p, .form-area-riservata form .custom-checkbox__label p, .form-ricerca-assistenza form .custom-checkbox__label p {
  margin-bottom: 0;
}

@media screen and (min-width: 40em) {
  .form-contatti form .custom-checkbox__label p, .form-area-riservata form .custom-checkbox__label p, .form-ricerca-assistenza form .custom-checkbox__label p {
    font-size: 0.875rem;
    display: inline-block;
    line-height: 2rem;
  }
}

@media screen and (min-width: 100em) {
  .form-contatti form .custom-checkbox__label p, .form-area-riservata form .custom-checkbox__label p, .form-ricerca-assistenza form .custom-checkbox__label p {
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 75em) {
  .form-contatti form .custom-checkbox__label span, .form-area-riservata form .custom-checkbox__label span, .form-ricerca-assistenza form .custom-checkbox__label span {
    font-size: 0.8125rem;
    line-height: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .form-contatti form .custom-checkbox__label span, .form-area-riservata form .custom-checkbox__label span, .form-ricerca-assistenza form .custom-checkbox__label span {
    font-size: 1.0625rem;
  }
}

.form-contatti form .privacy-text-container, .form-area-riservata form .privacy-text-container, .form-ricerca-assistenza form .privacy-text-container {
  margin-left: 30px;
}

.form-contatti form .select-panel, .form-area-riservata form .select-panel, .form-ricerca-assistenza form .select-panel {
  margin-bottom: 1.875rem;
  padding: 0.75rem 0.9375rem 0.25rem;
  background: #e1e1e1;
}

@media screen and (min-width: 40em) {
  .form-contatti form .select-panel, .form-area-riservata form .select-panel, .form-ricerca-assistenza form .select-panel {
    padding: 1.25rem 1.875rem 0.9375rem;
  }
}

.form-contatti form .select-panel label, .form-area-riservata form .select-panel label, .form-ricerca-assistenza form .select-panel label {
  margin-bottom: 0.5rem;
}

.form-contatti form .select-panel select, .form-area-riservata form .select-panel select, .form-ricerca-assistenza form .select-panel select {
  background-color: #ffffff;
}

.form-contatti form button[type="submit"], .form-area-riservata form button[type="submit"], .form-ricerca-assistenza form button[type="submit"] {
  background-color: transparent;
  font-size: 1rem;
  font-weight: 400;
  margin-top: 1.25rem;
  line-height: 1.875rem;
}

.form-contatti form .custom-checkbox, .form-area-riservata form .custom-checkbox, .form-ricerca-assistenza form .custom-checkbox {
  margin-top: 1.875rem;
}

.form-contatti .column-button, .form-area-riservata .column-button, .form-ricerca-assistenza .column-button {
  text-align: center;
}

@media screen and (min-width: 64em) {
  .form-contatti .column-button, .form-area-riservata .column-button, .form-ricerca-assistenza .column-button {
    text-align: left;
  }
}

/*-------------------
FORM CONTATTI
-------------------*/
.form-contatti input[type="text"],
.form-contatti input[type="password"],
.form-contatti input[type="date"],
.form-contatti input[type="datetime"],
.form-contatti input[type="datetime-local"],
.form-contatti input[type="month"],
.form-contatti input[type="week"],
.form-contatti input[type="email"],
.form-contatti input[type="tel"],
.form-contatti input[type="time"],
.form-contatti input[type="url"],
.form-contatti input[type="color"],
.form-contatti input[type="number"],
.form-contatti input[type="search"],
.form-contatti input[type="file"],
.form-contatti textarea,
.form-contatti select {
  height: 2.375rem !important;
}

@media screen and (min-width: 40em) {
  .form-contatti input[type="text"],
  .form-contatti input[type="password"],
  .form-contatti input[type="date"],
  .form-contatti input[type="datetime"],
  .form-contatti input[type="datetime-local"],
  .form-contatti input[type="month"],
  .form-contatti input[type="week"],
  .form-contatti input[type="email"],
  .form-contatti input[type="tel"],
  .form-contatti input[type="time"],
  .form-contatti input[type="url"],
  .form-contatti input[type="color"],
  .form-contatti input[type="number"],
  .form-contatti input[type="search"],
  .form-contatti input[type="file"],
  .form-contatti textarea,
  .form-contatti select {
    height: 1.75rem !important;
  }
}

.form-contatti button[type="submit"] {
  border: 2px solid #151e28;
  color: #151e28;
}

.form-contatti button[type="submit"]:hover {
  background-color: #151e28;
  color: #ffffff;
}

.form-contatti-text {
  letter-spacing: 0.05em;
  line-height: 1.4;
}

@media screen and (min-width: 75em) {
  .form-contatti-text {
    font-size: 0.875rem;
  }
}

@media screen and (min-width: 100em) {
  .form-contatti-text {
    font-size: 1.125rem;
  }
}

@media screen {
  .form-contatti-text:last-child {
    margin-bottom: 3.125rem;
  }
}

.form-contatti .custom-checkbox__label {
  width: 100%;
}

.form-contatti div:not(.switch) input[type="checkbox"]:checked + .custom-checkbox__label span.custom-checkbox__shape:after {
  background-color: #ca152a;
}

.form-contatti .button {
  position: relative;
  z-index: 9999;
}

/*-------------------
FORM AREA RISERVATA
-------------------*/
.form-area-riservata {
  padding: 6.25rem 0;
}

.form-area-riservata * {
  color: #ffffff;
}

@media screen and (min-width: 40em) {
  .form-area-riservata .parallax--caption--icon svg {
    width: 4.4375rem;
    height: 4.4375rem;
  }
}

@media screen and (min-width: 100em) {
  .form-area-riservata .parallax--caption--icon svg {
    width: 5.875rem;
    height: 5.875rem;
  }
}

.form-area-riservata .parallax--caption--subtitle {
  font-size: 1.125rem;
  letter-spacing: 0.2em;
  line-height: 1.2;
  margin-top: 15px;
  margin-bottom: 50px;
}

@media screen and (min-width: 100em) {
  .form-area-riservata .parallax--caption--subtitle {
    font-size: 1.5rem;
  }
}

form[name="form-area-riservata"] * {
  color: #ffffff;
}

form[name="form-area-riservata"] button[type="submit"] {
  border: 2px solid #ffffff;
  color: #ffffff;
  background-color: transparent;
  margin-top: 20px;
}

form[name="form-area-riservata"] button[type="submit"]:hover {
  background-color: #ffffff;
  color: #d5241b;
}

form[name="form-area-riservata"] .custom-checkbox__label {
  width: 100%;
}

form[name="form-area-riservata"] div:not(.switch) input[type="checkbox"]:checked + .custom-checkbox__label span.custom-checkbox__shape:after {
  background-color: #ca152a;
  top: 0;
  left: 0;
}

form[name="form-area-riservata"] p {
  font-size: 0.875rem;
  line-height: 1.4;
}

@media screen and (min-width: 100em) {
  form[name="form-area-riservata"] p {
    font-size: 1.125rem;
  }
}

form[name="form-area-riservata"] a {
  padding: 0;
}

/*-------------------
FORM CENTRO ASSISTENZA
-------------------*/
.form-ricerca-assistenza {
  text-align: center;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}

.form-ricerca-assistenza form p {
  margin-top: 0.625rem;
}

.form-ricerca-assistenza form button[type="submit"] {
  width: 100%;
  border: 2px solid #ffffff;
  color: #ffffff;
  line-height: 3.375rem;
  padding: 0 !important;
}

.form-ricerca-assistenza form button[type="submit"]:hover {
  background-color: #ffffff;
  color: #151e28;
}

.form-ricerca-assistenza form select {
  margin-top: 1.25rem;
  height: 3.5rem;
  background-size: 3.9375rem;
  max-width: 100%;
}

.form-recaptcha {
  text-align: left;
}

.form-recaptcha__container {
  position: relative;
  display: inline-block;
}

.form-recaptcha .g-recaptcha {
  display: inline-block;
  position: relative;
  z-index: 2;
}

.form-recaptcha #error-recaptcha {
  position: relative;
  padding: 8px 15px;
  border: 1px solid #e53935;
  color: #ffffff;
  background-color: #e53935;
  width: calc(100% - 2px);
  font-size: 15px;
  bottom: 10px;
  z-index: 1;
}

#google-container {
  position: relative;
  width: 100%;
  height: 18.75rem;
  background-color: #2d4779;
}

@media screen and (min-width: 40em) {
  #google-container {
    height: 30.625rem;
  }
}

@media screen and (min-width: 75em) {
  #google-container {
    height: 31.25rem;
  }
}

@media screen and (min-width: 100em) {
  #google-container {
    height: 36.25rem;
  }
}

#google-container.container--big {
  height: 15.625rem;
}

@media screen and (min-width: 40em) {
  #google-container.container--big {
    height: 31.25rem;
  }
}

@media screen and (min-width: 75em) {
  #google-container.container--big {
    height: 37.5rem;
  }
}

.info_content p:last-child {
  margin-bottom: 0;
}

#cd-google-map {
  position: relative;
  width: 100%;
  z-index: 0;
}

#cd-google-map img,
#cd-google-map embed,
#cd-google-map object {
  max-width: none !important;
}

#cd-google-map address {
  position: absolute;
  width: 100%;
  bottom: 0%;
  right: 0%;
  padding: 1rem;
  background-color: rgba(202, 21, 42, 0.8);
  color: #ffffff;
  font-size: 0.8125rem;
  font-style: normal;
  font-weight: normal;
  text-align: center;
}

#cd-google-map address a {
  color: #ffffff;
}

@media screen and (min-width: 40em) {
  #cd-google-map address {
    font-size: 0.9375rem;
    text-align: center;
  }
}

.cd-button-route {
  color: #ffffff;
  background-color: #8a8a8a;
  display: block;
  padding: 0.625rem 0.9375rem;
  /*svg{
        position: relative;
        display: inline-block;
      height: 16px;
      width: 16px;
      fill: $white;
      vertical-align: baseline;
      margin-left: rem-calc(10);
    }*/
}

@media screen and (min-width: 40em) {
  .cd-button-route {
    margin: 0;
    position: absolute;
    display: inline-block;
    bottom: 0.9375rem;
    right: 0.9375rem;
  }
}

#cd-zoom-in, #cd-zoom-out {
  height: 2rem;
  width: 2rem;
  cursor: pointer;
  margin-left: 0.625rem;
  background-color: #ca152a;
  background-repeat: no-repeat;
  background-size: 2rem 4rem;
  background-image: url("../images/spritesheet/cd-icon-controller.svg");
  -webkit-transition: all 0.3s linear;
          transition: all 0.3s linear;
}

@media screen and (min-width: 40em) {
  #cd-zoom-in, #cd-zoom-out {
    margin-left: 1.875rem;
  }
}

#cd-zoom-in {
  background-position: 50% 0;
  margin-top: 0.625rem;
  margin-bottom: 0.0625rem;
}

@media screen and (min-width: 40em) {
  #cd-zoom-in {
    margin-top: 1.875rem;
  }
}

.no-touch #cd-zoom-in:hover,
.no-touch #cd-zoom-out:hover {
  background-color: #8a8a8a;
}

#cd-zoom-out {
  background-position: 50% -32px;
}

.static-map {
  height: 15.625rem;
  background-position: center center;
  background-size: cover;
  position: relative;
}

@media screen and (min-width: 40em) {
  .static-map {
    height: 28.125rem;
  }
}

.static-map__link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.static-map__link:hover {
  cursor: pointer;
}

.js-cd-top {
  z-index: 99;
  display: inline-block;
  height: 3.25rem;
  width: 3.25rem;
  position: fixed;
  bottom: 0;
  right: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: #ca152a url(../images/spritesheet/cd-top-arrow.svg) no-repeat center 50%;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.3s linear;
          transition: all 0.3s linear;
}

.js-cd-top.js-cd-is-visible {
  visibility: visible;
  opacity: 1;
}

.js-cd-top.js-cd-fade-out {
  opacity: 1;
}

.no-touch .js-cd-top:hover {
  background-color: #e9293f;
  opacity: 1;
}

/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp {
  padding: 0;
  margin: 0;
  border: 0;
  outline: none;
  vertical-align: top;
}

.fancybox-wrap {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 8020;
}

.fancybox-skin {
  position: relative;
  background: #fff;
  color: #444;
  text-shadow: none;
  border-radius: 4px;
}

.fancybox-opened {
  z-index: 8030;
}

.fancybox-opened .fancybox-skin {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
  position: relative;
}

.fancybox-inner {
  overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
  -webkit-overflow-scrolling: touch;
}

.fancybox-error {
  color: #444;
  font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  margin: 0;
  padding: 15px;
  white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.fancybox-image {
  max-width: 100%;
  max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
  background-image: url("fancybox/fancybox_sprite.png");
}

#fancybox-loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin-top: -22px;
  margin-left: -22px;
  background-position: 0 -108px;
  opacity: 0.8;
  cursor: pointer;
  z-index: 8060;
}

/*#fancybox-loading div {
    width: 44px;
    height: 44px;
    background: url('fancybox/fancybox_loading.gif') center center no-repeat;
}*/
#fancybox-loading div {
  display: block;
  position: fixed;
  z-index: 999999;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  border: solid 2px transparent;
  border-top-color: #fff;
  border-left-color: #fff;
  border-radius: 50%;
  -webkit-animation: pace-spinner 400ms linear infinite;
  animation: pace-spinner 400ms linear infinite;
  margin: -25px 0 0 -25px;
}

.fancybox-close {
  position: absolute;
  display: block;
  top: 30px;
  right: 30px;
  width: 20px;
  height: 20px;
  cursor: pointer;
  z-index: 9999;
  background-image: url("../images/spritesheet/close.svg") !important;
  background-size: contain !important;
}

.fancybox-nav {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  cursor: pointer;
  text-decoration: none;
  background: transparent url("fancybox/blank.gif");
  /* helps IE */
  -webkit-tap-highlight-color: transparent;
  z-index: 8040;
}

.fancybox-prev {
  left: 0;
}

.fancybox-next {
  right: 0;
}

.fancybox-nav span {
  position: absolute;
  top: 50%;
  width: 36px;
  height: 34px;
  margin-top: -18px;
  cursor: pointer;
  z-index: 8040;
  visibility: hidden;
}

.fancybox-prev span {
  left: 10px;
  background-position: 0 -36px;
}

.fancybox-next span {
  right: 10px;
  background-position: 0 -72px;
}

.fancybox-nav:hover span {
  visibility: visible;
}

.fancybox-tmp {
  position: absolute;
  top: -99999px;
  left: -99999px;
  visibility: hidden;
  max-width: 99999px;
  max-height: 99999px;
  overflow: visible !important;
}

/* Overlay helper */
.fancybox-lock {
  overflow: hidden !important;
  width: auto;
}

.fancybox-lock body {
  overflow: hidden !important;
}

.fancybox-lock-test {
  overflow-y: hidden !important;
}

.fancybox-overlay {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  display: none;
  z-index: 8010;
  background: url("fancybox/fancybox_overlay.png");
}

.fancybox-overlay-fixed {
  position: fixed;
  bottom: 0;
  right: 0;
}

.fancybox-lock .fancybox-overlay {
  overflow: auto;
  overflow-y: scroll;
}

/* Title helper */
.fancybox-title {
  visibility: hidden;
  font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
  position: relative;
  text-shadow: none;
  z-index: 8050;
}

.fancybox-opened .fancybox-title {
  visibility: visible;
}

.fancybox-title-float-wrap {
  position: absolute;
  bottom: 0;
  right: 50%;
  margin-bottom: -35px;
  z-index: 8050;
  text-align: center;
}

.fancybox-title-float-wrap .child {
  display: inline-block;
  margin-right: -100%;
  padding: 2px 20px;
  background: transparent;
  /* Fallback for web browsers that doesn't support RGBa */
  background: rgba(0, 0, 0, 0.8);
  border-radius: 15px;
  text-shadow: 0 1px 2px #222;
  color: #FFF;
  font-weight: bold;
  line-height: 24px;
  white-space: nowrap;
}

.fancybox-title-outside-wrap {
  position: relative;
  margin-top: 10px;
  color: #fff;
}

.fancybox-title-inside-wrap {
  padding-top: 10px;
}

.fancybox-title-over-wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #fff;
  padding: 10px;
  background: #000;
  background: rgba(0, 0, 0, 0.8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) {
  #fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
    background-image: url("fancybox/fancybox_sprite@2x.png");
  }
}

.overlay {
  height: 0%;
  width: 100%;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  background-color: #151e28;
  background-color: rgba(21, 30, 40, 0.9);
  overflow-y: auto;
  -webkit-transition: 0.5s;
          transition: 0.5s;
  /*------------------*/
  /* LANGUAGE */
  /*------------------*/
  /*------------------*/
  /* SEARCH */
  /*------------------*/
}

@media screen and (min-width: 40em) {
  .overlay {
    overflow-y: hidden;
  }
}

.overlay__closebtn {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  width: 1.875rem;
  height: 1.875rem;
  background: url(../images/spritesheet/close--white.svg) no-repeat 50% 50%;
  background-size: contain;
  opacity: 0.8;
  z-index: 4;
}

.overlay__closebtn span {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0px;
}

@media screen and (min-width: 40em) {
  .overlay__closebtn {
    top: 2.8125rem;
    right: 2.8125rem;
    width: 2.25rem;
    height: 2.25rem;
  }
}

.overlay__closebtn:hover {
  opacity: 1;
}

.overlay__content {
  position: relative;
  top: 15%;
  width: 100%;
  text-align: center;
  margin-top: 1.875rem;
}

@media screen and (min-width: 40em) {
  .overlay__content {
    top: 25%;
  }
}

.overlay__content ul {
  list-style: none;
  font-family: "Ubuntu", sans-serif;
  text-transform: uppercase;
  font-weight: 700;
}

.overlay__content a {
  padding: 0.5rem;
  text-decoration: none;
  font-size: 1.25rem;
  color: #ffffff;
  display: block;
  -webkit-transition: 0.3s;
          transition: 0.3s;
}

@media screen and (min-width: 40em) {
  .overlay__content a {
    font-size: 2.25rem;
  }
}

.overlay__content a:hover, .overlay__content a:focus {
  color: #f1f1f1;
}

.overlay--area-riservata {
  overflow-y: auto;
  background-color: rgba(39, 39, 39, 0.9);
}

.overlay--area-riservata .overlay-second-content {
  display: none;
}

.overlay--area-riservata .overlay__content {
  padding: 3.125rem 0;
  top: 0;
}

@media screen and (min-width: 40em) {
  .overlay--area-riservata .overlay__content {
    top: 0;
  }
}

.overlay--area-riservata label, .overlay--area-riservata p, .overlay--area-riservata span {
  color: #ffffff;
}

.overlay--area-riservata input {
  margin-bottom: 15px;
  color: #5b5a5e;
}

.overlay--area-riservata p {
  margin-top: 10px;
  margin-bottom: 0;
}

.overlay--area-riservata p.smaller {
  font-size: 0.9375rem;
}

.overlay--area-riservata .custom-checkbox {
  margin-top: 10px;
}

.overlay--area-riservata .privacy-agreement [type="radio"]:not(:checked) + label {
  color: #ffffff;
}

.overlay--area-riservata-lang {
  overflow-y: auto;
  background-color: rgba(39, 39, 39, 0.9);
}

.overlay--area-riservata-lang .overlay-second-content {
  display: none;
}

.overlay--area-riservata-lang label, .overlay--area-riservata-lang p, .overlay--area-riservata-lang span {
  color: #ffffff;
}

.overlay--area-riservata-lang input {
  margin-bottom: 15px;
  color: #5b5a5e;
}

.overlay--area-riservata-lang p {
  margin-top: 10px;
  margin-bottom: 0;
}

.overlay--area-riservata-lang p.smaller {
  font-size: 0.9375rem;
}

.overlay--area-riservata-lang .custom-checkbox {
  margin-top: 10px;
}

.overlay--area-riservata-lang .button {
  width: auto;
  display: inline-block;
  font-size: 1rem;
}

.overlay--area-riservata-lang .text-accedi, .overlay--area-riservata-lang .text-registrati {
  margin-top: 30px;
}

.overlay--area-riservata-lang .overlay__content.overlay-first-content {
  padding: 1.875rem 0;
  top: 0;
}

@media screen and (min-width: 40em) {
  .overlay--area-riservata-lang .overlay__content.overlay-first-content {
    top: 15%;
  }
}

.overlay--area-riservata-lang .overlay__content.overlay-second-content {
  padding: 3.125rem 0;
  top: 0;
}

@media screen and (min-width: 40em) {
  .overlay--area-riservata-lang .overlay__content.overlay-second-content {
    top: 0;
  }
}

@media screen and (min-width: 40em) {
  .overlay--language .overlay__content {
    top: 15%;
  }
}

.overlay--language ul {
  display: inline-block;
  margin: 0;
  padding: 0;
}

.overlay--language li {
  margin-bottom: 0.9375rem;
}

.overlay--language li a {
  font-weight: 300;
  display: inline-block;
  padding: 0 2.8125rem;
}

@media screen and (min-width: 40em) {
  .overlay--language li a {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 64em) {
  .overlay--language li a {
    font-size: 1.625rem;
  }
}

@media screen and (min-width: 100em) {
  .overlay--language li a {
    font-size: 2rem;
  }
}

.overlay--language li a:not(.active):hover {
  background: white;
  color: #ca152a;
}

.overlay--language li a.active {
  background: #ca152a;
  color: #ffffff;
}

.overlay--search__box {
  position: relative;
}

.overlay--search__field {
  margin: 0px !important;
  padding: 0 2.8125rem 0 0.4375rem !important;
  height: 4.0625rem;
  border-top: 0px !important;
  border-left: 0px !important;
  border-right: 0px !important;
  border-bottom: 0.125rem solid #ffffff !important;
  border-radius: 0 !important;
  color: #ffffff !important;
  background-color: transparent;
  font-weight: 300;
  font-size: 1.25rem;
  line-height: 1.4em;
}

@media screen and (min-width: 40em) {
  .overlay--search__field {
    padding: 0 2.625rem 0 0.9375rem;
    height: 5.3125rem;
    font-size: 1.875rem;
  }
}

@media screen and (min-width: 64em) {
  .overlay--search__field {
    padding: 0 4.0625rem 0 0.9375rem !important;
    height: 5.9375rem !important;
    font-size: 1.875rem !important;
  }
}

.overlay--search__field:focus {
  border-bottom: 0.125rem solid #ffffff !important;
}

.overlay--search__button {
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5625rem;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.375rem;
  height: 1.375rem;
  margin: 0px;
  border: 0px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0px;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  background: url(../images/magnify--white.svg) no-repeat 50% 50%;
  background-size: contain;
  opacity: 0.7;
  cursor: pointer;
  outline: none;
}

.overlay--search__button:hover {
  opacity: 1;
}

@media screen and (min-width: 64em) {
  .overlay--search__button {
    right: 2rem;
    width: 1.875rem;
    height: 1.875rem;
  }
}

.overlay--search ::-webkit-input-placeholder {
  opacity: 0.7;
  font-style: normal;
  color: rgba(255, 255, 255, 0.7) !important;
}

.overlay--search :-moz-placeholder {
  opacity: 0.7;
  font-style: normal;
  color: rgba(255, 255, 255, 0.7) !important;
}

.overlay--search ::-moz-placeholder {
  opacity: 0.7;
  font-style: normal;
  color: rgba(255, 255, 255, 0.7) !important;
}

.overlay--search :-ms-input-placeholder {
  opacity: 0.7;
  font-style: normal;
  color: rgba(255, 255, 255, 0.7) !important;
}

.js-phone {
  cursor: pointer;
}

.js-phone.disabled, .js-phone.disabled:hover {
  cursor: default;
  color: #010101;
  text-decoration: none !important;
  opacity: 1;
}

p .js-phone.disabled, p .js-phone.disabled:hover {
  color: #010101;
}

p.negative .js-phone.disabled, p.negative .js-phone.disabled:hover {
  color: #ffffff;
}

.address--item .js-phone.disabled, .address--item .js-phone.disabled:hover {
  color: #010101;
}

.pretty-embed.play:before {
  display: none;
}

.pretty-embed:after {
  display: block;
  content: "";
  position: absolute;
  top: 48%;
  margin-top: -35px !important;
  left: 50%;
  margin-left: -35px !important;
  width: 50px !important;
  height: 50px !important;
  background-image: url("../images/spritesheet/play.svg") !important;
  background-size: cover;
}

.pretty-embed:before {
  display: none;
  content: attr(data-video-button);
  position: absolute;
  top: 60%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  border: 1px solid #ffffff;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
  font-weight: 400;
  letter-spacing: 0.2em;
  z-index: 2;
  padding: 0.625rem 1.5625rem !important;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .pretty-embed:before {
    padding: 0.75rem 1.875rem !important;
    font-size: 1rem;
  }
}

@media screen and (min-width: 75em) {
  .pretty-embed:before {
    display: block;
    padding: 0.75rem 3.125rem !important;
    font-size: 1.25rem;
  }
}

.pretty-embed:hover:before, .pretty-embed:focus:before {
  background-color: #ffffff;
  color: #151e28;
}

@media screen and (min-width: 100em) {
  .icons-list {
    margin-top: 0;
  }
}

.icons-list .item {
  margin: 0.9375rem 0;
  position: relative;
  display: block;
  -webkit-transition: all 1s ease;
          transition: all 1s ease;
}

@media screen and (min-width: 100em) {
  .icons-list .item {
    margin-top: 0;
    margin-bottom: 0;
  }
}

.icons-list .item:last-child {
  margin-bottom: 0;
}

.icons-list .item a {
  display: block;
}

.icons-list .item figure {
  position: relative;
  display: block;
}

.icons-list .item figure svg {
  width: 3.25rem;
  height: 3.25rem;
  fill: #ca152a;
  -webkit-transition: all 1s ease;
          transition: all 1s ease;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  overflow: visible;
}

@media screen and (min-width: 75em) {
  .icons-list .item figure svg {
    width: 4rem;
    height: 4rem;
  }
}

@media screen and (min-width: 87.5em) {
  .icons-list .item figure svg {
    width: 2.8125rem;
    height: 2.8125rem;
  }
}

@media screen and (min-width: 100em) {
  .icons-list .item figure svg {
    width: 4rem;
    height: 4rem;
  }
}

.icons-list .item figure figcaption {
  width: 100%;
  padding: 0.625rem 0 0 0;
}

@media screen and (min-width: 75em) {
  .icons-list .item figure figcaption {
    padding: 0.9375rem 1.875rem 0 1.875rem;
  }
}

.icons-list .item figure figcaption h4 {
  font-family: "Ubuntu", sans-serif;
  color: #5b5a5e;
  font-weight: 500;
  font-size: 0.625rem;
  line-height: 1.1em;
  text-transform: uppercase;
  letter-spacing: 1px;
}

@media screen and (min-width: 100em) {
  .icons-list .item figure figcaption h4 {
    font-size: 0.8333333333rem;
  }
}

@media screen and (min-width: 64em) {
  .icons-list .item:hover figure svg {
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2);
    -moz-transform: scale(1.1);
    -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
            transform-origin: 50% 50%;
  }
}

.icons-list--negative .item figure svg {
  fill: #ffffff;
}

.icons-list--negative .item figure figcaption h4 {
  color: #ffffff;
}

.page-nav {
  padding: 0;
  margin: -8px 0 0 0;
  float: right;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .page-nav {
    float: left;
    text-align: center;
    margin: -15px 0 0 -30px;
  }
}

@media screen and (min-width: 40em) {
  .page-nav {
    margin: -3px 66px 0 0;
  }
}

@media screen and (min-width: 75em) {
  .page-nav {
    margin: -8px 91px 0 0;
  }
}

.page-nav li {
  display: inline-block;
  margin-left: 0px;
  margin: 0 0.125rem;
}

/*.page-nav li.list-icon {
margin:0 rem-calc(5);
}*/
.page-nav .has-tip {
  border: none;
}

.page-nav li a span {
  display: block;
  text-align: center;
  width: 30px;
  height: 30px;
  position: relative;
  cursor: pointer;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

@media screen and (min-width: 75em) {
  .page-nav li a span {
    width: 40px;
    height: 40px;
  }
}

.page-nav li a span svg {
  width: 0.625rem;
  height: 0.625rem;
  fill: #9b9b9b;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -5px auto auto -5px;
}

@media screen and (min-width: 75em) {
  .page-nav li a span svg {
    width: 1rem;
    height: 1rem;
    margin: -8px auto auto -8px;
  }
}

.page-nav li a:hover span svg {
  fill: rgba(155, 155, 155, 0.5);
}

.page-nav.center {
  margin-top: 0px;
  margin-bottom: 1.25rem;
  float: left;
  width: 100%;
  text-align: center;
}

.parallax {
  position: relative;
  box-sizing: border-box;
  -webkit-transform-style: inherit;
          transform-style: inherit;
}

.parallax:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.parallax, .parallax:before {
  background: 50% 50% / cover;
}

.parallax--home-profilo {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--home-profilo {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 600px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-profilo {
    min-height: 820px;
  }
}

.parallax--home-made-in-italy {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--home-made-in-italy {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 600px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-made-in-italy {
    min-height: 820px;
  }
}

.parallax--home-ricerca-bruciatore {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--home-ricerca-bruciatore {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 500px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-ricerca-bruciatore {
    min-height: 690px;
  }
}

.parallax--home-assistenza {
  min-height: 450px;
}

@media screen and (min-width: 40em) {
  .parallax--home-assistenza {
    min-height: 350px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--home-assistenza {
    background-position: 0% 30%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 400px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-assistenza {
    min-height: 550px;
  }
}

.parallax--home-news {
  min-height: 600px;
  background-color: #ff0038;
  background-blend-mode: multiply;
}

.parallax--home-news p {
  color: #fff;
}

@media screen and (min-width: 75em) {
  .parallax--home-news {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-news {
    min-height: 820px;
  }
}

.parallax--cover {
  min-height: 300px;
}

@media screen and (min-width: 40em) {
  .parallax--cover {
    min-height: 400px;
  }
}

@media screen and (min-width: 64em) {
  .parallax--cover {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 360px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--cover {
    min-height: 400px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--cover {
    min-height: 500px;
  }
}

.parallax--overlay_red:after {
  content: '';
  z-index: 2;
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='$primary-color', endColorstr='#00ffffff',GradientType=1 );
  /* IE6-9 */
  mix-blend-mode: multiply;
}

.parallax--caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  z-index: 3;
}

.parallax--caption.caption-with-icon .parallax--caption--subtitle {
  font-weight: 400;
}

@media screen and (min-width: 40em) {
  .parallax--caption.caption-with-icon .parallax--caption--subtitle {
    font-weight: 300;
    font-size: 2.625rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption.caption-with-icon .parallax--caption--subtitle {
    font-size: 3.5rem;
  }
}

@media screen and (min-width: 40em) {
  .parallax--caption.caption-with-icon svg {
    width: 4.4375rem;
    height: 4.4375rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption.caption-with-icon svg {
    width: 5.875rem;
    height: 5.875rem;
  }
}

.parallax--caption--icon {
  display: block;
}

.parallax--caption--icon svg {
  fill: #ca152a;
  width: 3.125rem;
  height: 3.125rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--icon svg {
    width: 3.75rem;
    height: 3.75rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--icon svg {
    width: 2.625rem;
    height: 2.625rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption--icon svg {
    width: 4.0625rem;
    height: 4.0625rem;
  }
}

.parallax--caption--label {
  color: #ca152a;
  font-weight: 700;
  letter-spacing: 0.15em;
  display: block;
  margin-bottom: 2.5rem;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--label {
    font-size: 1rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--label {
    font-size: 1rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption--label {
    font-size: 1.375rem;
    margin-bottom: 120px;
  }
}

.parallax--caption--label i {
  display: block;
  font-size: 3.125rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--label i {
    font-size: 3.75rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--label i {
    font-size: 4.375rem;
  }
}

.parallax--caption--title-big {
  color: #5b5a5e;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.0em;
  font-size: 3.75rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--title-big {
    font-size: 3.75rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--title-big {
    font-size: 5.9375rem;
  }
}

.parallax--caption--title {
  color: #5b5a5e;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.0em;
  font-size: 1.875rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--title {
    font-size: 1.875rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--title {
    font-size: 2.8125rem;
  }
}

.parallax--caption--subtitle {
  color: #141d28;
  font-weight: 500;
  letter-spacing: 0.15em;
  line-height: 1.4em;
  font-size: 1.25rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--subtitle {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--subtitle {
    font-size: 1.3125rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption--subtitle {
    font-size: 1.75rem;
  }
}

.parallax--caption--text {
  color: #5b5a5e;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin: 0;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .parallax--caption--text {
    font-size: 1rem;
  }
}

@media screen and (min-width: 75em) {
  .parallax--caption--text {
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--caption--text {
    font-size: 1.3125rem;
  }
}

.parallax--profilo-1975 {
  min-height: 550px;
}

.parallax--profilo-1975:before {
  position: absolute;
  content: " ";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
  background-color: rgba(18, 25, 31, 0.8);
}

@media screen and (min-width: 40em) {
  .parallax--profilo-1975 {
    min-height: 450px;
  }
  .parallax--profilo-1975:before {
    display: none;
  }
}

@media screen and (min-width: 75em) {
  .parallax--profilo-1975 {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 500px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--profilo-1975 {
    min-height: 700px;
  }
}

.parallax--profilo-2000 {
  min-height: 550px;
}

@media screen and (min-width: 40em) {
  .parallax--profilo-2000 {
    min-height: 450px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--profilo-2000 {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 500px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--profilo-2000 {
    min-height: 700px;
  }
}

.parallax--plus-progettazione {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--plus-progettazione {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 450px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--plus-progettazione {
    min-height: 610px;
  }
}

.parallax--plus-ricerca-sviluppo {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--plus-ricerca-sviluppo {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 480px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--plus-ricerca-sviluppo {
    min-height: 660px;
  }
}

.parallax--plus-ambiente {
  min-height: 550px;
}

@media screen and (min-width: 75em) {
  .parallax--plus-ambiente {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 480px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--plus-ambiente {
    min-height: 660px;
  }
}

.parallax--assistenza-formazione {
  min-height: 550px;
}

@media screen and (min-width: 40em) {
  .parallax--assistenza-formazione {
    min-height: 450px;
  }
}

@media screen and (min-width: 75em) {
  .parallax--assistenza-formazione {
    background-position: 50% 40%;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 600px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--assistenza-formazione {
    min-height: 900px;
  }
}

.products-list {
  margin-top: 0.9375rem;
  margin-bottom: 0.9375rem;
}

@media screen and (min-width: 40em) {
  .products-list {
    margin-bottom: 3.75rem;
  }
}

.products-list .item {
  text-align: center;
}

@media screen and (min-width: 64em) {
  .products-list .item {
    padding-left: 0;
    padding-right: 0;
  }
}

.products-list .item a {
  min-height: 400px;
  height: 100%;
  position: relative;
  display: block;
  padding: 1.875rem 0.9375rem 1.875rem 0.9375rem;
  border-width: 0 0 2px 0;
  border-style: solid;
  border-color: #9b9b9b;
}

@media screen and (min-width: 40em) {
  .products-list .item a {
    border-width: 0 0px 2px 0;
  }
}

@media screen and (min-width: 64em) {
  .products-list .item a {
    border-width: 0 2px 2px 0;
  }
}

@media screen and (min-width: 100em) {
  .products-list .item a {
    padding-left: 70px;
    padding-right: 70px;
  }
}

.products-list .item a figure {
  position: relative;
  display: block;
  overflow: hidden;
  margin-bottom: 0.9375rem;
}

.products-list .item a figure img {
  padding: 0.9375rem 2.1875rem;
}

.products-list .item a .hover-caption {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  padding: 1.875rem;
  width: 100%;
  height: 100%;
  background-color: rgba(232, 234, 238, 0.7);
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all .3s ease-out;
          transition: all .3s ease-out;
}

.products-list .item a .hover-caption .icon {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
  height: 3.75rem;
}

.products-list .item a .hover-caption .icon svg {
  width: 3.75rem;
  height: 3.75rem;
  fill: #ca152a;
  opacity: 0.7;
  overflow: visible;
}

.products-list .item a .button {
  margin: 0;
  font-size: 1rem;
}

@media screen and (min-width: 64em) {
  .products-list .item a:hover .hover-caption {
    visibility: visible;
    opacity: 1;
  }
  .products-list .item a:hover .hover-caption svg {
    -webkit-animation-name: scale-in;
            animation-name: scale-in;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  @-webkit-keyframes scale-in {
    from {
      -webkit-transform: scale(0.5);
              transform: scale(0.5);
    }
    to {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  @keyframes scale-in {
    from {
      -webkit-transform: scale(0.5);
              transform: scale(0.5);
    }
    to {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
}

.products-list .item:nth-child(2n) a {
  border-width: 0 0 2px 0;
}

.products-list__title {
  font-family: "Ubuntu", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4em;
  color: #5b5a5e;
  padding: 0 1.25rem;
  margin: 0;
}

@media screen and (min-width: 100em) {
  .products-list__title {
    font-size: 1.3125rem;
  }
}

.products-list__text {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.875rem;
  color: #5b5a5e;
  line-height: 1.3em;
  margin-top: 0.5rem;
  padding: 0 1.25rem;
}

@media screen and (min-width: 75em) {
  .products-list__text {
    font-size: 0.75rem;
  }
}

@media screen and (min-width: 100em) {
  .products-list__text {
    font-size: 1rem;
  }
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .no-margin-share .share {
    top: 0;
  }
}

.share {
  width: 1.875rem;
  height: 1.875rem;
  top: -0.9375rem;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  position: absolute;
  right: 0;
  -webkit-transition: all, 500ms, cubic-bezier(0.33, 0.66, 0.66, 1);
          transition: all, 500ms, cubic-bezier(0.33, 0.66, 0.66, 1);
  z-index: 20;
  /*&__social-icon{
  display: inline-block;
  position: relative;
  top: rem-calc(10);
}*/
}

@media screen and (min-width: 40em) {
  .share {
    top: -0.1875rem;
    right: 15px;
  }
}

@media screen and (min-width: 75em) {
  .share {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 2.5rem;
    top: -0.5rem;
    right: 15px;
  }
}

.share:before, .share:after {
  display: block;
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 1.875rem;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
          transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transition-property: opacity, border-radius, width, height;
          transition-property: opacity, border-radius, width, height;
}

@media screen and (min-width: 75em) {
  .share:before, .share:after {
    border-radius: 2.5rem;
  }
}

.share:before {
  opacity: 1;
  z-index: 8;
}

.share:after {
  opacity: 0;
  z-index: 9;
}

.share:hover ._path,
.share:hover ._path.-joint {
  background: #c9c9c9;
}

.share.active {
  width: 11.25rem;
  height: 17.5rem;
  border-radius: 0.1875rem;
  background: #fff;
  box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.08), 0 12px 12px 0 rgba(0, 0, 0, 0.08);
}

@media screen and (min-width: 40em) {
  .share.active {
    height: 15rem;
  }
}

.share.active:before, .share.active:after {
  border-radius: 0.1875rem;
}

.share.active ._path {
  background: #ca152a;
}

.share.active .share__content {
  visibility: visible;
  z-index: 100;
  opacity: 1;
}

.share.active .share__icon ._path.-line.-top {
  -webkit-transform: translate3d(-3px, 2px, 0) rotate3d(0, 0, 1, 45deg);
          transform: translate3d(-3px, 2px, 0) rotate3d(0, 0, 1, 45deg);
}

@media screen and (min-width: 75em) {
  .share.active .share__icon ._path.-line.-top {
    -webkit-transform: translate3d(-3px, 3px, 0) rotate3d(0, 0, 1, 45deg);
            transform: translate3d(-3px, 3px, 0) rotate3d(0, 0, 1, 45deg);
  }
}

.share.active .share__icon ._path.-line.-bottom {
  -webkit-transform: translate3d(-3px, -3px, 0) rotate3d(0, 0, 1, -45deg);
          transform: translate3d(-3px, -3px, 0) rotate3d(0, 0, 1, -45deg);
}

.share.active .share__icon ._path.-joint {
  opacity: 0;
}

.share.active .share__icon ._path.-joint.-top {
  -webkit-transform: translate3d(0, 12px, 0) scale(0);
          transform: translate3d(0, 12px, 0) scale(0);
}

.share.active .share__icon ._path.-joint.-middle {
  -webkit-transform: scale(0);
      -ms-transform: scale(0);
          transform: scale(0);
}

.share.active .share__icon ._path.-joint.-bottom {
  -webkit-transform: translate3d(0, -12px, 0) scale(0);
          transform: translate3d(0, -12px, 0) scale(0);
}

.share:hover:before, .share:focus:before, .share.active:before {
  opacity: 0;
}

.share:hover:after, .share:focus:after, .share.active:after {
  opacity: 1;
}

.share__wrapper {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  padding-bottom: 200%;
}

@media screen and (min-width: 75em) {
  .share__wrapper {
    padding-bottom: inherit;
  }
}

.share__toggle {
  position: absolute;
  right: 0;
  top: 0;
  width: 1.875rem;
  height: 1.875rem;
  cursor: pointer;
  z-index: 1000;
}

@media screen and (min-width: 75em) {
  .share__toggle {
    width: 2.5rem;
    height: 2.5rem;
  }
}

.share__toggle:focus {
  outline: none;
}

.share__off-screen {
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: 0;
  overflow: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  position: absolute !important;
  width: 1px;
}

.share__icon {
  position: absolute;
  left: 0.625rem;
  top: 0.625rem;
  pointer-events: none;
}

.share__icon ._path {
  background: #9b9b9b;
  position: absolute;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
          transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transition-property: -webkit-transform, color, opacity;
          transition-property: -webkit-transform, color, opacity;
  transition-property: transform, color, opacity;
}

.share__icon ._path.-line {
  width: 0.625rem;
  height: 0.125rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-line {
    width: 1rem;
  }
}

.share__icon ._path.-line.-top {
  -webkit-transform: rotate3d(0, 0, 1, -30deg);
          transform: rotate3d(0, 0, 1, -30deg);
  top: 0.0625rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-line.-top {
    top: 0.375rem;
  }
}

.share__icon ._path.-line.-bottom {
  -webkit-transform: rotate3d(0, 0, 1, 30deg);
          transform: rotate3d(0, 0, 1, 30deg);
  top: 0.375rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-line.-bottom {
    top: 0.75rem;
  }
}

.share__icon ._path.-joint {
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 0.3125rem;
  opacity: 1;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-joint {
    width: 0.375rem;
    height: 0.375rem;
    border-radius: 0.375rem;
  }
}

.share__icon ._path.-joint.-top {
  left: 0.375rem;
  top: -0.1875rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-joint.-top {
    left: 0.75rem;
    top: 0;
  }
}

.share__icon ._path.-joint.-middle {
  left: -0.125rem;
  top: 0.125rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-joint.-middle {
    left: 0;
    top: 0.4375rem;
  }
}

.share__icon ._path.-joint.-bottom {
  left: 0.375rem;
  top: 0.4375rem;
}

@media screen and (min-width: 75em) {
  .share__icon ._path.-joint.-bottom {
    left: 0.75rem;
    top: 0.875rem;
  }
}

.share__content {
  position: relative;
  width: 11.25rem;
  padding-bottom: 1.5rem;
  opacity: 0;
  z-index: 0;
  visibility: hidden;
}

.share__title {
  font-family: "Ubuntu", sans-serif;
  margin: 1.1875rem 0 0.75rem 1.5rem;
  padding-bottom: 0.3125rem;
  font-size: 0.875rem;
  text-transform: uppercase;
  color: #ca152a;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.share__list {
  position: relative;
  margin: -0.625rem 0 0.625rem 1.5rem;
  padding: 0;
  list-style: none;
}

.share__item {
  position: relative;
  display: block;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  font-size: 0.8125rem;
}

.share__item a {
  text-decoration: none;
  display: block;
  color: #ca152a;
  padding: 0.5rem 0 0.5rem 1.875rem;
  -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
          transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.share__item a .svg-icon {
  left: 0.625rem;
  width: 1rem;
  height: 1rem;
  opacity: 0.75;
  -webkit-transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1);
          transition: opacity 0.6s cubic-bezier(0.19, 1, 0.22, 1);
  fill: #ca152a;
}

.share__item a:hover {
  color: #ca152a;
}

.share__item a:hover .svg-icon {
  fill: #ca152a;
  opacity: 1;
}

.share__item a:focus .svg-icon {
  opacity: 1;
}

.share__item a:active {
  outline: none;
}

.share__social-label {
  font-family: Arial, sans-serif;
  display: inline-block;
}

.products-carousel, .products-carousel-altri {
  overflow: visible;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 100em) {
  .products-carousel, .products-carousel-altri {
    padding-bottom: 6.25rem;
  }
}

.products-carousel .item, .products-carousel-altri .item {
  margin: 0;
}

.products-carousel .item figure, .products-carousel-altri .item figure {
  max-width: 80%;
  margin: 0 auto;
  height: 400px;
  position: relative;
}

@media screen and (min-width: 40em) {
  .products-carousel .item figure, .products-carousel-altri .item figure {
    height: 500px;
  }
}

.products-carousel .item .picture, .products-carousel-altri .item .picture {
  text-align: center;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  left: 50%;
  width: 100%;
}

.products-carousel .item .picture img, .products-carousel-altri .item .picture img {
  max-height: 400px;
  display: inline-block;
}

@media screen and (min-width: 40em) {
  .products-carousel .item .picture img, .products-carousel-altri .item .picture img {
    max-height: 500px;
  }
}

.products-carousel .item figcaption, .products-carousel-altri .item figcaption {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #ffffff;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  font-size: 1.25rem;
  margin-top: 2.5rem;
  width: 100%;
}

@media screen and (min-width: 40em) {
  .products-carousel .item figcaption, .products-carousel-altri .item figcaption {
    margin-top: 2.5rem;
    font-size: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel .item figcaption, .products-carousel-altri .item figcaption {
    font-size: 1.5rem;
    margin-top: 2.5rem;
  }
}

.products-carousel--container, .products-carousel-altri--container {
  position: relative;
}

.products-carousel--container-others .item, .products-carousel-altri--container-others .item {
  margin: 0;
}

.products-carousel--container .title, .products-carousel-altri--container .title {
  letter-spacing: 0.1em;
  font-size: 2.25rem;
}

@media screen and (min-width: 100em) {
  .products-carousel--container .title, .products-carousel-altri--container .title {
    margin-bottom: 0.9375rem;
    font-size: 3rem;
  }
}

.products-carousel--container .subtitle, .products-carousel-altri--container .subtitle {
  letter-spacing: 0.2em;
  font-weight: 400;
  font-size: 1.25rem;
}

@media screen and (min-width: 100em) {
  .products-carousel--container .subtitle, .products-carousel-altri--container .subtitle {
    font-size: 1.6875rem;
  }
}

.products-carousel--container .slick-prev,
.products-carousel--container .slick-next, .products-carousel--container .slick-next-altri, .products-carousel--container .slick-next-bruciatori, .products-carousel--container .slick-prev-bruciatori, .products-carousel--container .slick-prev-altri, .products-carousel-altri--container .slick-prev,
.products-carousel-altri--container .slick-next, .products-carousel-altri--container .slick-next-altri, .products-carousel-altri--container .slick-next-bruciatori, .products-carousel-altri--container .slick-prev-bruciatori, .products-carousel-altri--container .slick-prev-altri {
  width: 2.5rem;
  height: 2.5rem;
  /*
      display: none !important;
      @media (min-width: 900px){
        display: block !important;
      }
      */
  position: absolute;
  padding: 0;
  outline: none;
  z-index: 20;
  opacity: 1;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  bottom: auto;
  top: 58.5%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}

@media screen and (min-width: 75em) {
  .products-carousel--container .slick-prev,
  .products-carousel--container .slick-next, .products-carousel--container .slick-next-altri, .products-carousel--container .slick-next-bruciatori, .products-carousel--container .slick-prev-bruciatori, .products-carousel--container .slick-prev-altri, .products-carousel-altri--container .slick-prev,
  .products-carousel-altri--container .slick-next, .products-carousel-altri--container .slick-next-altri, .products-carousel-altri--container .slick-next-bruciatori, .products-carousel-altri--container .slick-prev-bruciatori, .products-carousel-altri--container .slick-prev-altri {
    width: 4.375rem;
    height: 4.375rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel--container .slick-prev,
  .products-carousel--container .slick-next, .products-carousel--container .slick-next-altri, .products-carousel--container .slick-next-bruciatori, .products-carousel--container .slick-prev-bruciatori, .products-carousel--container .slick-prev-altri, .products-carousel-altri--container .slick-prev,
  .products-carousel-altri--container .slick-next, .products-carousel-altri--container .slick-next-altri, .products-carousel-altri--container .slick-next-bruciatori, .products-carousel-altri--container .slick-prev-bruciatori, .products-carousel-altri--container .slick-prev-altri {
    width: 5.8333333333rem;
    height: 5.8333333333rem;
  }
}

.products-carousel--container .slick-prev span,
.products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev span,
.products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev-altri span {
  display: block;
  max-width: 100px;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.2;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.15em;
}

@media screen and (min-width: 87.5em) {
  .products-carousel--container .slick-prev span,
  .products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev span,
  .products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev-altri span {
    max-width: 220px;
    font-size: 1rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel--container .slick-prev span,
  .products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev span,
  .products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev-altri span {
    font-size: 1.3125rem;
  }
}

.products-carousel--container .slick-prev:after,
.products-carousel--container .slick-next:after, .products-carousel--container .slick-next-altri:after, .products-carousel--container .slick-next-bruciatori:after, .products-carousel--container .slick-prev-bruciatori:after, .products-carousel--container .slick-prev-altri:after, .products-carousel-altri--container .slick-prev:after,
.products-carousel-altri--container .slick-next:after, .products-carousel-altri--container .slick-next-altri:after, .products-carousel-altri--container .slick-next-bruciatori:after, .products-carousel-altri--container .slick-prev-bruciatori:after, .products-carousel-altri--container .slick-prev-altri:after {
  content: '';
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 3.125rem;
  height: 3.125rem;
  display: block;
}

@media screen and (min-width: 75em) {
  .products-carousel--container .slick-prev:after,
  .products-carousel--container .slick-next:after, .products-carousel--container .slick-next-altri:after, .products-carousel--container .slick-next-bruciatori:after, .products-carousel--container .slick-prev-bruciatori:after, .products-carousel--container .slick-prev-altri:after, .products-carousel-altri--container .slick-prev:after,
  .products-carousel-altri--container .slick-next:after, .products-carousel-altri--container .slick-next-altri:after, .products-carousel-altri--container .slick-next-bruciatori:after, .products-carousel-altri--container .slick-prev-bruciatori:after, .products-carousel-altri--container .slick-prev-altri:after {
    width: 4.375rem;
    height: 4.375rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel--container .slick-prev:after,
  .products-carousel--container .slick-next:after, .products-carousel--container .slick-next-altri:after, .products-carousel--container .slick-next-bruciatori:after, .products-carousel--container .slick-prev-bruciatori:after, .products-carousel--container .slick-prev-altri:after, .products-carousel-altri--container .slick-prev:after,
  .products-carousel-altri--container .slick-next:after, .products-carousel-altri--container .slick-next-altri:after, .products-carousel-altri--container .slick-next-bruciatori:after, .products-carousel-altri--container .slick-prev-bruciatori:after, .products-carousel-altri--container .slick-prev-altri:after {
    width: 5.8333333333rem;
    height: 5.8333333333rem;
  }
}

.products-carousel--container .slick-prev:hover, .products-carousel--container .slick-prev:link, .products-carousel--container .slick-prev:active,
.products-carousel--container .slick-next:hover,
.products-carousel--container .slick-next:link,
.products-carousel--container .slick-next:active, .products-carousel--container .slick-next-altri:hover, .products-carousel--container .slick-next-altri:link, .products-carousel--container .slick-next-altri:active, .products-carousel--container .slick-next-bruciatori:hover, .products-carousel--container .slick-next-bruciatori:link, .products-carousel--container .slick-next-bruciatori:active, .products-carousel--container .slick-prev-bruciatori:hover, .products-carousel--container .slick-prev-bruciatori:link, .products-carousel--container .slick-prev-bruciatori:active, .products-carousel--container .slick-prev-altri:hover, .products-carousel--container .slick-prev-altri:link, .products-carousel--container .slick-prev-altri:active, .products-carousel-altri--container .slick-prev:hover, .products-carousel-altri--container .slick-prev:link, .products-carousel-altri--container .slick-prev:active,
.products-carousel-altri--container .slick-next:hover,
.products-carousel-altri--container .slick-next:link,
.products-carousel-altri--container .slick-next:active, .products-carousel-altri--container .slick-next-altri:hover, .products-carousel-altri--container .slick-next-altri:link, .products-carousel-altri--container .slick-next-altri:active, .products-carousel-altri--container .slick-next-bruciatori:hover, .products-carousel-altri--container .slick-next-bruciatori:link, .products-carousel-altri--container .slick-next-bruciatori:active, .products-carousel-altri--container .slick-prev-bruciatori:hover, .products-carousel-altri--container .slick-prev-bruciatori:link, .products-carousel-altri--container .slick-prev-bruciatori:active, .products-carousel-altri--container .slick-prev-altri:hover, .products-carousel-altri--container .slick-prev-altri:link, .products-carousel-altri--container .slick-prev-altri:active {
  opacity: 0.5;
}

.products-carousel--container .slick-prev, .products-carousel--container .slick-prev-altri, .products-carousel--container .slick-prev-bruciatori, .products-carousel-altri--container .slick-prev, .products-carousel-altri--container .slick-prev-altri, .products-carousel-altri--container .slick-prev-bruciatori {
  left: 0;
}

.products-carousel--container .slick-prev span, .products-carousel--container .slick-prev-altri span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev span, .products-carousel-altri--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev-bruciatori span {
  text-align: left;
  margin-left: 4.0625rem;
}

@media screen and (min-width: 75em) {
  .products-carousel--container .slick-prev span, .products-carousel--container .slick-prev-altri span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev span, .products-carousel-altri--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev-bruciatori span {
    margin-left: 5.625rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel--container .slick-prev span, .products-carousel--container .slick-prev-altri span, .products-carousel--container .slick-prev-bruciatori span, .products-carousel-altri--container .slick-prev span, .products-carousel-altri--container .slick-prev-altri span, .products-carousel-altri--container .slick-prev-bruciatori span {
    margin-left: 7.5rem;
  }
}

.products-carousel--container .slick-prev:after, .products-carousel--container .slick-prev-altri:after, .products-carousel--container .slick-prev-bruciatori:after, .products-carousel-altri--container .slick-prev:after, .products-carousel-altri--container .slick-prev-altri:after, .products-carousel-altri--container .slick-prev-bruciatori:after {
  background: url(../images/spritesheet/arrow-primary-left.svg) no-repeat 50% 50% #ffffff;
  background-size: 40%;
  left: 0;
  border-radius: 50%;
}

.products-carousel--container .slick-next, .products-carousel--container .slick-next-altri, .products-carousel--container .slick-next-bruciatori, .products-carousel-altri--container .slick-next, .products-carousel-altri--container .slick-next-altri, .products-carousel-altri--container .slick-next-bruciatori {
  right: 0;
}

.products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span {
  text-align: right;
  margin-right: 4.0625rem;
}

@media screen and (min-width: 75em) {
  .products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span {
    margin-right: 5.625rem;
  }
}

@media screen and (min-width: 100em) {
  .products-carousel--container .slick-next span, .products-carousel--container .slick-next-altri span, .products-carousel--container .slick-next-bruciatori span, .products-carousel-altri--container .slick-next span, .products-carousel-altri--container .slick-next-altri span, .products-carousel-altri--container .slick-next-bruciatori span {
    margin-right: 7.5rem;
  }
}

.products-carousel--container .slick-next:after, .products-carousel--container .slick-next-altri:after, .products-carousel--container .slick-next-bruciatori:after, .products-carousel-altri--container .slick-next:after, .products-carousel-altri--container .slick-next-altri:after, .products-carousel-altri--container .slick-next-bruciatori:after {
  background: url(../images/spritesheet/arrow-primary-right.svg) no-repeat 50% 50% #ffffff;
  background-size: 40%;
  right: 0;
  border-radius: 50%;
}

.products-carousel .slick-dots, .products-carousel-altri .slick-dots {
  width: 100%;
  margin: 0;
  padding-bottom: 0;
  text-align: center;
  bottom: 0px;
}

.products-carousel .slick-dots li, .products-carousel-altri .slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 0.4375rem;
}

.products-carousel .slick-dots li button, .products-carousel-altri .slick-dots li button {
  position: relative;
  display: block;
  padding: 0;
  width: 12px;
  height: 12px;
  background-color: rgba(202, 21, 42, 0);
  border: 2px solid #ca152a;
  margin: 0;
  border-radius: 100%;
  font: 0/0 a !important;
  text-shadow: none;
  color: transparent;
  -webkit-transition: all 0.3s linear;
          transition: all 0.3s linear;
  cursor: pointer;
}

.products-carousel .slick-dots li button:before, .products-carousel-altri .slick-dots li button:before {
  display: none;
}

.products-carousel .slick-dots li:hover button,
.products-carousel .slick-dots li:focus button,
.products-carousel .slick-dots li.slick-active button, .products-carousel-altri .slick-dots li:hover button,
.products-carousel-altri .slick-dots li:focus button,
.products-carousel-altri .slick-dots li.slick-active button {
  outline: none;
  border: 2px solid #fff;
  background-color: white;
}

.slick-prev, .slick-prev-altri, .slick-prev-bruciatori {
  left: 1.25rem;
}

.slick-prev:after, .slick-prev-altri:after, .slick-prev-bruciatori:after {
  background: url(../images/spritesheet/arrow-primary-left.svg) no-repeat 50% 50% #ffffff;
  background-size: 40%;
  left: 0;
  border-radius: 50%;
}

.slick-next {
  right: 1.25rem;
}

.slick-next:after {
  background: url(../images/spritesheet/arrow-primary-right.svg) no-repeat 50% 50% #ffffff;
  background-size: 40%;
  right: 0;
  border-radius: 50%;
}

.slick-prev:after,
.slick-next:after, .slick-prev-altri:after, .slick-prev-bruciatori:after, .slick-next-altri:after, .slick-next-bruciatori:after {
  content: '';
  position: absolute;
  width: 2.1875rem !important;
  height: 2.1875rem !important;
  display: block;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 40em) {
  .slick-prev:after,
  .slick-next:after, .slick-prev-altri:after, .slick-prev-bruciatori:after, .slick-next-altri:after, .slick-next-bruciatori:after {
    top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}

@media screen and (min-width: 75em) {
  .slick-prev:after,
  .slick-next:after, .slick-prev-altri:after, .slick-prev-bruciatori:after, .slick-next-altri:after, .slick-next-bruciatori:after {
    width: 3.75rem !important;
    height: 3.75rem !important;
  }
}

@media screen and (min-width: 100em) {
  .slick-prev:after,
  .slick-next:after, .slick-prev-altri:after, .slick-prev-bruciatori:after, .slick-next-altri:after, .slick-next-bruciatori:after {
    width: 5rem !important;
    height: 5rem !important;
  }
}

.social-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
  text-align: center;
  width: 100%;
}

.social-list > li {
  float: left;
  display: inline-block;
  padding: 0 0.4375rem;
  font-size: 1rem;
  text-transform: lowercase;
  line-height: 1rem;
  color: #fce2e5;
}

.social-list > li > a {
  display: block;
  -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

.social-list li > a:hover,
.social-list li > a:focus {
  opacity: 0.70;
}

.social-list li > a > svg {
  display: block;
  width: 16px;
  height: 16px;
  fill: #9a9a9a;
}

.social-list__icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 1.25rem;
  height: 1.25rem;
}

@media screen and (min-width: 64em) {
  .social-list {
    text-align: right;
    float: right;
  }
}

.social-list--footer {
  margin-top: 0.3125rem;
  display: inline-block;
  text-align: center;
}

@media screen and (min-width: 40em) {
  .social-list--footer {
    text-align: right;
  }
}

.social-list--footer > li {
  display: inline-block;
  float: none;
  text-align: center;
  margin: 0 0.3125rem;
  padding: 0;
}

@media screen and (min-width: 75em) {
  .social-list--footer > li:first-child {
    margin-left: 0;
  }
}

.social-list--footer > li > a {
  position: relative;
  background-color: #151e28;
  border-radius: 100%;
  width: 40px;
  height: 40px;
  display: block;
  padding: 0;
}

.social-list--footer > li > a > svg {
  width: 16px;
  height: 16px;
  fill: #ffffff;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

.social-list--footer li > a:hover svg,
.social-list--footer li > a:focus svg {
  fill: rgba(255, 255, 255, 0.8);
}

.sub-nav {
  /* tabbed navigation style on mobile - dropdown */
  position: relative;
  display: inline-block;
  height: 3.125rem;
  margin: 1.875rem auto 1.5625rem 0;
  max-width: 300px;
  z-index: 4;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .sub-nav {
    width: 100%;
  }
}

.sub-nav::after {
  /* small arrow icon */
  content: '';
  position: absolute;
  right: 1.25rem;
  top: 50%;
  bottom: auto;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background: url("../images/spritesheet/dropdown-arrow.svg") no-repeat center center;
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
  pointer-events: none;
}

.sub-nav ul {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin-left: 0;
  margin-bottom: 0;
  background: #2d4779;
}

.sub-nav li {
  width: 100%;
  display: none;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.sub-nav li:last-child {
  border: 0;
}

.sub-nav li:first-child {
  /* this way the placehodler is alway visible */
  display: block;
  font-weight: 400;
}

.sub-nav li:first-child a {
  height: 3.125rem;
  line-height: 3.125rem;
  padding-bottom: 0;
  padding-top: 0;
}

.sub-nav a {
  display: block;
  /* set same size of the .sub-nav */
  font-family: "Ubuntu", sans-serif;
  width: 100%;
  padding: 0.9375rem 1.25rem;
  font-size: 0.9375rem;
  letter-spacing: 1px;
  color: #ffffff;
}

.sub-nav a.selected {
  background: #2d4779;
  color: #ffffff;
}

.sub-nav.is-open::after {
  /* small arrow rotation */
  -webkit-transform: translateY(-50%) rotate(-180deg);
      -ms-transform: translateY(-50%) rotate(-180deg);
          transform: translateY(-50%) rotate(-180deg);
}

.sub-nav.is-open ul li {
  display: block;
}

.sub-nav.is-open .placeholder a {
  /* reduces the opacity of the placeholder on mobile when the menu is open */
  opacity: 1;
}

@media screen and (min-width: 40em) {
  .sub-nav {
    float: right;
    width: auto;
    max-width: 100%;
    height: auto;
    cursor: auto;
    padding: 0;
    margin-bottom: 1.875rem;
    background: transparent;
  }
  .sub-nav::after {
    /* hide the arrow */
    display: none;
  }
  .sub-nav ul {
    width: 100%;
    text-align: center;
    background: transparent;
    position: static;
    box-shadow: none;
    border: 0;
  }
  .sub-nav li {
    display: inline-block;
    text-align: center;
    width: auto;
    margin: 0 1.25rem;
  }
  .sub-nav li:last-child {
    margin-right: 0;
  }
  .sub-nav li.placeholder {
    display: none !important;
  }
  .sub-nav a {
    position: relative;
    font-family: "Ubuntu", sans-serif;
    color: #5b5a5e;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
    font-size: 0.5625rem;
    padding: 0 0 0.3125rem 0 !important;
  }
}

@media screen and (min-width: 40em) and (min-width: 75em) {
  .sub-nav a {
    font-size: 0.9375rem;
    padding: 0;
  }
}

@media screen and (min-width: 40em) {
  .sub-nav a:hover {
    color: #ca152a;
  }
  .sub-nav a.selected {
    background: transparent;
    color: #ca152a;
    border-bottom: 2px solid #ca152a;
  }
  .sub-nav.is-open ul li {
    display: inline-block;
  }
}

table {
  position: relative;
}

table * {
  outline: none;
}

table a {
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  color: #5b5a5e;
}

table a:hover {
  color: #ca152a;
}

table .download-file i {
  font-size: 0.8125rem;
  margin-left: 0.3125rem;
}

table thead {
  background-color: #5b5a5e;
  color: #ffffff;
}

table thead td {
  font-size: 0.875rem;
  font-weight: 700 !important;
}

table thead tr:first-child td {
  padding-bottom: 0;
}

table thead tr:last-child td {
  padding-top: 0;
}

table tbody {
  background-color: transparent !important;
  border: 0;
}

table tbody tr {
  background-color: transparent !important;
}

table tbody tr td {
  border-width: 0 0 1px 0;
  border-color: #5b5a5e;
  border-style: solid;
}

table tbody tr td:first-child {
  font-weight: 700;
}

table tr td {
  text-align: left;
}

table tr td:first-child {
  text-align: left;
}

table.responsive {
  display: block;
}

@media screen and (min-width: 64em) {
  table.responsive {
    display: table;
  }
}

table.responsive thead tr {
  position: absolute;
  top: -624.938em;
  left: -624.938em;
}

@media screen and (min-width: 64em) {
  table.responsive thead tr {
    position: relative;
    top: auto;
    left: auto;
  }
}

table.responsive tbody {
  display: block;
}

@media screen and (min-width: 64em) {
  table.responsive tbody {
    display: table-row-group;
  }
}

table.responsive tr {
  display: block;
  padding-bottom: 1rem;
  padding-top: 1rem;
}

@media screen and (min-width: 64em) {
  table.responsive tr {
    display: table-row;
    padding-bottom: 0;
    padding-top: 0;
  }
}

table.responsive th {
  color: #ca152a;
}

table.responsive th,
table.responsive td {
  display: block;
  text-align: left;
}

@media screen and (min-width: 64em) {
  table.responsive th,
  table.responsive td {
    display: table-cell;
  }
}

table.responsive td {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
}

@media screen and (min-width: 64em) {
  table.responsive td {
    padding-left: 0.625rem;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
  }
}

@media (min-width: 1024px) and (max-width: 1300px) {
  .table-download td {
    font-size: 14px !important;
  }
}

@media (min-width: 1400px) and (max-width: 1500px) {
  .table-download td {
    font-size: 14px !important;
  }
}

.table-download thead td:nth-last-child(2) {
  text-align: right;
}

.table-mobile {
  width: 100%;
  overflow-x: scroll;
  margin-top: 50px;
  padding-bottom: 10px;
}

@media screen and (min-width: 64em) {
  .table-mobile {
    overflow-x: auto;
  }
}

.table-mobile table {
  margin-bottom: 0;
}

.table-mobile table td {
  padding: 8px 8px !important;
  font-size: 15px;
  letter-spacing: 0;
  white-space: nowrap;
}

.has-tip {
  border: 0;
}

.tooltip {
  background-color: #ca152a;
  padding: 8px 15px;
  text-align: center;
  text-transform: uppercase;
  font-size: 0.875rem;
}

.tooltip:before {
  border-bottom-color: #ca152a;
  border-width: 6px !important;
}

.tooltip-altri {
  background-color: #5b5a5e !important;
}

.tooltip-altri:before {
  border-bottom-color: #5b5a5e !important;
}

.tap-to-close {
  display: none;
}

/* remove tap-to-close on tooltip */
@media screen and (min-width: 40em) {
  .search-panel {
    margin-top: 60px;
  }
}

.search-panel-column-left {
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #ffffff;
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .search-panel-column-left {
    padding-bottom: 40px;
  }
}

@media screen and (min-width: 64em) {
  .search-panel-column-left {
    border-width: 0 1px 0 0;
  }
}

.search-panel--item {
  position: relative;
  display: inline-block;
  z-index: 4;
  padding: 0 0 2.5rem 0;
  margin: 1.4375rem 0;
  width: 100%;
}

@media screen and (min-width: 40em) {
  .search-panel--item {
    padding: 0 2.5rem;
    margin-bottom: 0 !important;
  }
}

@media screen and (min-width: 64em) {
  .search-panel--item {
    padding: 0 1.875rem;
  }
}

.search-panel--item-right .search-panel--text {
  line-height: 1.4;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .search-panel--item-right {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 0;
  }
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .search-panel--item-right {
    padding-top: 40px;
  }
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .search-panel--item-right .search-panel--title {
    margin-top: 40px;
  }
  .search-panel--item-right .search-panel--text {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .search-panel--item-right .button {
    position: relative;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    left: 0;
  }
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .search-panel--item-right .button {
    position: relative;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    left: 0;
  }
}

.search-panel--title {
  color: #ffffff;
  text-transform: uppercase;
  font-weight: 500;
  line-height: 1.1em;
  font-size: 1.125rem;
  margin-bottom: 1.25rem;
}

@media screen and (min-width: 40em) {
  .search-panel--title {
    font-size: 1.375rem;
  }
}

@media screen and (min-width: 75em) {
  .search-panel--title {
    font-size: 1.625rem;
  }
}

.search-panel--text {
  color: #ffffff;
  font-size: 0.875rem;
}

@media screen and (min-width: 40em) {
  .search-panel--text {
    font-size: 0.875rem;
  }
}

@media screen and (min-width: 75em) {
  .search-panel--text {
    font-size: 1.125rem;
  }
}

.shape--red-right {
  position: relative;
}

.shape--red-right:after {
  content: '';
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 360px;
  height: 17px;
  top: 0px;
  background: url(../images/spritesheet/red-shape-right.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 9999;
}

@media screen and (min-width: 40em) {
  .shape--red-right:after {
    width: 640px;
    height: 30px;
  }
}

@media screen and (min-width: 64em) {
  .shape--red-right:after {
    width: 800px;
    height: 38px;
  }
}

@media screen and (min-width: 75em) {
  .shape--red-right:after {
    width: 1200px;
    height: 57px;
  }
}

@media screen and (min-width: 100em) {
  .shape--red-right:after {
    width: 1400px;
    height: 67px;
  }
}

.shape--red-left {
  position: relative;
}

.shape--red-left:after {
  content: '';
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 360px;
  height: 17px;
  top: 0px;
  background: url(../images/spritesheet/red-shape-left.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 9999;
}

@media screen and (min-width: 40em) {
  .shape--red-left:after {
    width: 640px;
    height: 30px;
  }
}

@media screen and (min-width: 64em) {
  .shape--red-left:after {
    width: 800px;
    height: 38px;
  }
}

@media screen and (min-width: 75em) {
  .shape--red-left:after {
    width: 1200px;
    height: 57px;
  }
}

@media screen and (min-width: 100em) {
  .shape--red-left:after {
    width: 1400px;
    height: 67px;
  }
}

.shape--grey-right {
  position: relative;
}

.shape--grey-right:after {
  content: '';
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 360px;
  height: 17px;
  top: 0px;
  background: url(../images/spritesheet/grey-shape-right.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 9999;
}

@media screen and (min-width: 40em) {
  .shape--grey-right:after {
    width: 640px;
    height: 30px;
  }
}

@media screen and (min-width: 64em) {
  .shape--grey-right:after {
    width: 800px;
    height: 38px;
  }
}

@media screen and (min-width: 75em) {
  .shape--grey-right:after {
    width: 1200px;
    height: 57px;
  }
}

@media screen and (min-width: 100em) {
  .shape--grey-right:after {
    width: 1400px;
    height: 67px;
  }
}

.shape--green-right {
  position: relative;
}

.shape--green-right:after {
  content: '';
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 360px;
  height: 17px;
  top: 0px;
  background: url(../images/spritesheet/green-shape-right.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 9999;
}

@media screen and (min-width: 40em) {
  .shape--green-right:after {
    width: 640px;
    height: 30px;
  }
}

@media screen and (min-width: 64em) {
  .shape--green-right:after {
    width: 800px;
    height: 38px;
  }
}

@media screen and (min-width: 75em) {
  .shape--green-right:after {
    width: 1200px;
    height: 57px;
  }
}

@media screen and (min-width: 100em) {
  .shape--green-right:after {
    width: 1400px;
    height: 67px;
  }
}

.shape--grey-left {
  position: relative;
}

.shape--grey-left:after {
  content: '';
  position: absolute;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  width: 360px;
  height: 17px;
  top: 0px;
  background: url(../images/spritesheet/grey-shape-left.png) no-repeat 50% 50%;
  background-size: contain;
  z-index: 9999;
}

@media screen and (min-width: 40em) {
  .shape--grey-left:after {
    width: 640px;
    height: 30px;
  }
}

@media screen and (min-width: 64em) {
  .shape--grey-left:after {
    width: 800px;
    height: 38px;
  }
}

@media screen and (min-width: 75em) {
  .shape--grey-left:after {
    width: 1200px;
    height: 57px;
  }
}

@media screen and (min-width: 100em) {
  .shape--grey-left:after {
    width: 1400px;
    height: 67px;
  }
}

.assistenza-risultati .card-risultato {
  border-top: 0.3125rem solid #151e28;
  padding: 1.875rem 0.9375rem;
  margin-bottom: 1.875rem;
}

@media screen and (min-width: 40em) {
  .assistenza-risultati .card-risultato {
    padding: 1.875rem 0.9375rem;
  }
}

@media screen and (min-width: 40em) {
  .assistenza-risultati .card-risultato {
    margin-bottom: 3.125rem;
  }
}

.assistenza-risultati .card-risultato p {
  font-size: 0.9375rem;
  line-height: 1.5;
}

.assistenza-risultati .card-risultato svg {
  width: 14px;
  height: 14px;
  display: inline-block;
  margin-right: 10px;
}

.assistenza-risultati .card-risultato .card_title {
  font-size: 110%;
  font-weight: 600;
  line-height: 1.4;
}

.cd-dropdown,
.cd-select {
  position: relative;
  width: 100%;
  margin: 0;
  display: inline-block;
  margin-bottom: 15px;
}

@media screen and (min-width: 40em) {
  .cd-dropdown,
  .cd-select {
    width: 72%;
  }
}

@media screen and (min-width: 40em) {
  .cd-dropdown,
  .cd-select {
    margin-bottom: 25px;
  }
}

.cd-dropdown > span {
  width: 100%;
  height: 2rem;
  line-height: 2rem;
  color: #999;
  font-size: 0.5625rem;
  text-transform: uppercase;
  font-weight: 400;
  letter-spacing: 0.2em;
  text-align: center;
  background: #fff;
  display: block;
  padding: 0;
  position: relative;
  cursor: pointer;
}

@media screen and (min-width: 100em) {
  .cd-dropdown > span {
    font-size: 0.75rem;
  }
}

.cd-dropdown > span:after {
  content: '\25BC';
  position: absolute;
  right: 0px;
  top: 0%;
  width: 2.5rem;
  text-align: center;
  font-size: 15px;
  padding: 0 10px;
  height: 100%;
  line-height: 2rem;
  background-color: #cfd3d6;
}

.cd-dropdown.cd-active > span:after {
  content: '\25B2';
}

.cd-dropdown ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: block;
  position: relative;
  overflow-x: hidden !important;
}

.cd-dropdown ul li {
  display: block;
  z-index: 1100 !important;
  width: 100%;
}

.cd-dropdown ul li span {
  width: 100%;
  background: #fff;
  line-height: 2rem;
  padding: 0;
  display: block;
  color: #bcbcbc;
  cursor: pointer;
  font-weight: 500;
  font-size: 0.75rem;
  text-align: center;
}

@media screen and (min-width: 100em) {
  .cd-dropdown ul li span {
    font-size: 1rem;
  }
}

.cd-dropdown > span,
.cd-dropdown ul li span {
  -webkit-backface-visibility: hidden;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.cd-dropdown > span span[class^="icon-"],
.cd-dropdown > span span[class*=" icon-"] {
  padding: 0 30px 0 45px;
}

/* Select fallback styling */
.cd-select {
  border: 1px solid #ddd;
}

.cd-dropdown ul {
  position: absolute;
  top: 0px;
  width: 100%;
}

.cd-dropdown > span,
.cd-dropdown ul li {
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}

.cd-dropdown ul li {
  position: absolute;
  width: 100%;
  pointer-events: none;
}

.cd-active.cd-dropdown > span {
  color: #898e92;
}

.cd-active.cd-dropdown ul li {
  pointer-events: auto;
}

.cd-active.cd-dropdown ul li span {
  -webkit-transition: all 0.2s linear 0s;
  transition: all 0.2s linear 0s;
}

.cd-active.cd-dropdown ul li span:hover {
  background: #ca152a;
  color: #fff;
}

/*.icon-container{
  position: absolute;
  width: 80px;
  height: 80px;
  background-color: $secondary-color;
  opacity: 0.9;
  border-radius: 5px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  @media screen and (min-width: 64em){
    display: none;
  }
}
.icon-scroll {
  position: absolute;

  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 30px;
  height: 50px;
  box-shadow: inset 0 0 0 1px #fff;
  border-radius: 25px;
}
.icon-scroll:before {
  position: absolute;
  content: '';
  width: 8px;
  height: 8px;
  background: #fff;
  margin-left: -4px;
  top: 8px;
  border-radius: 4px;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-name: scroll;
  animation-name: scroll;
}
@-webkit-keyframes scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}
@keyframes scroll {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}*/
.privacy-agreement {
  text-align: left;
  max-width: 100% !important;
}

.privacy-agreement .row {
  max-width: 100% !important;
}

.privacy-agreement p {
  margin-bottom: 0;
  font-size: 0.875rem !important;
}

@media screen and (min-width: 64em) {
  .privacy-agreement p {
    font-size: 1.125rem !important;
  }
}

.privacy-agreement p a {
  font-size: 0.875rem !important;
  text-decoration: underline;
}

@media screen and (min-width: 64em) {
  .privacy-agreement p a {
    font-size: 1.125rem !important;
  }
}

.privacy-agreement__end {
  line-height: 1.4;
  margin-bottom: 1rem;
}

.privacy-agreement__end p {
  line-height: 1.4;
}

.privacy-agreement__link {
  -webkit-transition: all, 250ms, ease-out;
          transition: all, 250ms, ease-out;
  text-decoration: underline;
  color: #5b5a5e;
  font-size: 0.875rem !important;
  text-decoration: underline !important;
}

@media screen and (min-width: 64em) {
  .privacy-agreement__link {
    font-size: 1.125rem !important;
  }
}

.privacy-agreement__link:hover {
  text-decoration: none;
}

.privacy-agreement__help-dropdown {
  border: none;
  padding-right: 3.75rem;
  z-index: 9999;
}

.privacy-agreement__help-dropdown p {
  font-size: 12px !important;
  line-height: 1.4em;
  color: #5b5a5e;
}

.privacy-agreement__help-dropdown p strong {
  color: #5b5a5e;
}

.privacy-agreement__help-dropdown .close-button {
  -webkit-transition: color, 250ms, ease-out;
          transition: color, 250ms, ease-out;
  font-size: 2rem;
  padding: 0 !important;
}

.privacy-agreement__help-dropdown .close-button:hover {
  color: #ca152a;
}

.privacy-agreement__help-dropdown .close-button span {
  color: #5b5a5e;
}

.privacy-agreement__row {
  margin-top: 1rem;
  margin-bottom: 1.5rem;
}

.privacy-agreement__callout {
  margin-bottom: 0;
  border-width: 0 0 1px 0;
  border-style: solid;
  border-color: #999 !important;
  background-color: transparent;
  font-size: 1rem !important;
}

.privacy-agreement .checkbox-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  margin-bottom: 0.25rem;
}

.privacy-agreement .checkbox-row > li, .privacy-agreement .checkbox-row__item {
  margin-right: 0.625rem;
  margin-bottom: 0.25rem;
}

.privacy-agreement .checkbox-row > li:last-child, .privacy-agreement .checkbox-row__item:last-child {
  margin-bottom: 0;
  margin-right: 0;
}

.privacy-agreement .checkbox-row > li label, .privacy-agreement .checkbox-row__item label {
  text-transform: none;
  letter-spacing: 0;
  font-size: 1rem !important;
  color: #010101;
  width: 100%;
}

.privacy-agreement .checkbox-row > li label.label--alert, .privacy-agreement .checkbox-row__item label.label--alert {
  color: #e53935 !important;
}

.privacy-agreement .checkbox-row > li label.label--alert:before, .privacy-agreement .checkbox-row__item label.label--alert:before {
  border-color: #e53935 !important;
}

.privacy-agreement .checkbox-row > li label:before, .privacy-agreement .checkbox-row__item label:before {
  -webkit-transition: all, 250ms, ease-out;
          transition: all, 250ms, ease-out;
}

.privacy-agreement .checkbox-row > li label:hover:before, .privacy-agreement .checkbox-row__item label:hover:before {
  border-color: #ca152a !important;
}

.privacy-agreement [type="checkbox"]:checked, .privacy-agreement [type="checkbox"]:not(:checked),
.privacy-agreement [type="radio"]:checked,
.privacy-agreement [type="radio"]:not(:checked) {
  position: absolute;
  left: -9999px;
}

.privacy-agreement [type="checkbox"]:checked + label, .privacy-agreement [type="checkbox"]:not(:checked) + label,
.privacy-agreement [type="radio"]:checked + label,
.privacy-agreement [type="radio"]:not(:checked) + label {
  -webkit-transition: all, 200ms, ease-out;
          transition: all, 200ms, ease-out;
  margin-left: 0;
  position: relative;
  padding-left: 1.875rem;
  cursor: pointer;
  line-height: 1.2;
  display: inline-block;
  color: #5b5a5e;
  font-size: 0.875rem;
}

@media screen and (min-width: 64em) {
  .privacy-agreement [type="checkbox"]:checked + label, .privacy-agreement [type="checkbox"]:not(:checked) + label,
  .privacy-agreement [type="radio"]:checked + label,
  .privacy-agreement [type="radio"]:not(:checked) + label {
    font-size: 1.125rem;
  }
}

.privacy-agreement [type="checkbox"]:checked + label:hover, .privacy-agreement [type="checkbox"]:not(:checked) + label:hover,
.privacy-agreement [type="radio"]:checked + label:hover,
.privacy-agreement [type="radio"]:not(:checked) + label:hover {
  color: #ca152a;
}

.privacy-agreement [type="checkbox"]:checked + label:before, .privacy-agreement [type="checkbox"]:not(:checked) + label:before,
.privacy-agreement [type="radio"]:checked + label:before,
.privacy-agreement [type="radio"]:not(:checked) + label:before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border: 2px solid #9b9b9b;
  background: #fff;
}

.privacy-agreement [type="checkbox"]:checked + label:after, .privacy-agreement [type="checkbox"]:not(:checked) + label:after,
.privacy-agreement [type="radio"]:checked + label:after,
.privacy-agreement [type="radio"]:not(:checked) + label:after {
  -webkit-transition: all, 200ms, ease;
          transition: all, 200ms, ease;
  content: '';
  width: 0.5rem;
  height: 0.5rem;
  background: #ca152a;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0.25rem;
}

.privacy-agreement [type="checkbox"]:checked + label.checkbox-label--with-icon, .privacy-agreement [type="checkbox"]:not(:checked) + label.checkbox-label--with-icon,
.privacy-agreement [type="radio"]:checked + label.checkbox-label--with-icon,
.privacy-agreement [type="radio"]:not(:checked) + label.checkbox-label--with-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.privacy-agreement [type="checkbox"]:checked + label.checkbox-label--with-icon .fas, .privacy-agreement [type="checkbox"]:checked + label.checkbox-label--with-icon .far, .privacy-agreement [type="checkbox"]:checked + label.checkbox-label--with-icon .fal, .privacy-agreement [type="checkbox"]:checked + label.checkbox-label--with-icon .fab, .privacy-agreement [type="checkbox"]:not(:checked) + label.checkbox-label--with-icon .fas, .privacy-agreement [type="checkbox"]:not(:checked) + label.checkbox-label--with-icon .far, .privacy-agreement [type="checkbox"]:not(:checked) + label.checkbox-label--with-icon .fal, .privacy-agreement [type="checkbox"]:not(:checked) + label.checkbox-label--with-icon .fab,
.privacy-agreement [type="radio"]:checked + label.checkbox-label--with-icon .fas,
.privacy-agreement [type="radio"]:checked + label.checkbox-label--with-icon .far,
.privacy-agreement [type="radio"]:checked + label.checkbox-label--with-icon .fal,
.privacy-agreement [type="radio"]:checked + label.checkbox-label--with-icon .fab,
.privacy-agreement [type="radio"]:not(:checked) + label.checkbox-label--with-icon .fas,
.privacy-agreement [type="radio"]:not(:checked) + label.checkbox-label--with-icon .far,
.privacy-agreement [type="radio"]:not(:checked) + label.checkbox-label--with-icon .fal,
.privacy-agreement [type="radio"]:not(:checked) + label.checkbox-label--with-icon .fab {
  margin-left: 0.625rem;
  font-size: 1.25rem;
}

.privacy-agreement [type="checkbox"]:not(:checked) + label:after,
.privacy-agreement [type="radio"]:not(:checked) + label:after {
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
}

.privacy-agreement [type="checkbox"]:checked + label,
.privacy-agreement [type="radio"]:checked + label {
  color: #ca152a;
}

.privacy-agreement [type="checkbox"]:checked + label:after,
.privacy-agreement [type="radio"]:checked + label:after {
  opacity: 1;
  -webkit-transform: scale(1) translateY(-50%);
  -ms-transform: scale(1) translateY(-50%);
  transform: scale(1) translateY(-50%);
}

.privacy-agreement [type="checkbox"]:checked + label:before,
.privacy-agreement [type="radio"]:checked + label:before {
  border-color: #ca152a;
}

.privacy-agreement [type="radio"]:checked + label:before, .privacy-agreement [type="radio"]:not(:checked) + label:before {
  border-radius: 100%;
}

.privacy-agreement [type="radio"]:checked + label:after, .privacy-agreement [type="radio"]:not(:checked) + label:after {
  border-radius: 100%;
}

.privacy-agreement .form-error {
  position: relative;
  border: 2px solid #e53935;
  background: #e53935;
  color: #ffffff;
  font-weight: 400;
  margin-top: 1rem;
  padding: 0.3125rem;
  font-size: 0.8125rem;
  line-height: 1;
}

.privacy-agreement .form-error::before {
  content: '';
  position: absolute;
  display: block;
  right: 0;
  left: 0;
  margin: auto;
  top: -7px;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #e53935;
  left: 0;
  right: initial;
}

/* SECTIONS
Questa cartella è un'altra categoria di componenti e ne condivide le
stesse regole di creazione ed utilizzo. L'unica differenza è che mentre i
componenti sono piccoli moduli che possono ripetersi più volte all'interno di
una stessa pagina, le section sono dei macro moduli che vengono utilizzati una
sola volta all'interno della pagina. La scelta di inserire un modulo all'interno
di section piuttosto che di components è puramente organizzativa e può essere
paragonata alla scelta di utilizzare un selettore id al posto di un selettore di
classe.
*/
.cms-block {
  margin: 0.9375rem auto;
}

@media screen and (min-width: 40em) {
  .cms-block {
    margin: 1.875rem auto;
  }
}

.cms-block__title {
  font-family: "Ubuntu", sans-serif;
  color: #151e28;
  font-size: 1.25rem;
  margin-bottom: 0.625rem;
  line-height: 1.2em;
}

@media screen and (min-width: 40em) {
  .cms-block__title {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 75em) {
  .cms-block__title {
    font-size: 1.875rem;
  }
}

.cms-block__paragraphs b,
.cms-block__paragraphs strong {
  font-weight: 700;
}

.cms-block__paragraphs ul {
  margin-left: 0;
}

.cms-block__paragraphs ul li {
  list-style-type: none;
  background: url(../images/spritesheet/check-list.svg) no-repeat 0% 6px transparent;
  background-size: 0.625rem 0.625rem;
  padding-left: 1.5625rem;
  margin: 0.625rem 0 0 0;
  line-height: 1.3em;
}

.cms-block__separator hr {
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
}

.cms-block .wkp-media-element {
  margin-bottom: 0.9375rem;
}

.cms-block__media {
  margin-bottom: 1.125rem;
}

.cms-block__media--video figure {
  background-color: #ccc;
  text-align: center;
}

.cms-block__media img {
  width: 100%;
}

.cms-block__video-caption {
  background-color: #f2f2f2;
  font-family: "Ubuntu", sans-serif;
  text-align: left;
  font-size: 0.875rem;
  letter-spacing: 2px;
}

.cms-block__video-link {
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
  display: block;
  padding: 0.9375rem 1.875rem;
  color: rgba(202, 21, 42, 0.8);
}

.cms-block__video-link .cms-block__video-icon {
  padding-right: 0.3125rem;
}

.cms-block__video-link .cms-block__video-icon svg {
  fill: rgba(202, 21, 42, 0.8);
}

.cms-block__video-link:hover {
  color: #ffffff;
  background-color: rgba(202, 21, 42, 0.8);
}

.cms-block__video-link:hover .cms-block__video-icon svg {
  fill: #ffffff;
  opacity: 1;
}

.cms-block__text {
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  margin-bottom: 1.875rem;
}

.cms-block--one-column .cms-block__paragraphs p:last-child {
  margin-bottom: 1.875rem;
}

.footer {
  position: relative;
  border-top: 1px solid transparent;
  background-color: #e8eaee;
  background-color: #e8eaee;
}

.footer .footer-top {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
}

@media screen and (min-width: 40em) {
  .footer .footer-top {
    padding-top: 4.8125rem;
    padding-bottom: 3.75rem;
  }
}

.footer .footer-bottom {
  padding-top: 0;
  padding-bottom: 1.875rem;
}

/* footer address */
.footer__address {
  font-family: "Ubuntu", sans-serif;
  font-size: 0.875rem;
  line-height: 1.6em;
  color: #9b9b9b;
  text-transform: none;
  font-style: normal;
  text-align: center;
}

@media screen and (min-width: 40em) {
  .footer__address {
    text-align: left;
  }
}

.footer__address .logo {
  font-family: "Ubuntu", sans-serif;
  color: #ca152a;
  font-size: 0.8125rem;
}

.footer__address .logo svg {
  fill: #ffffff;
  width: 165px;
  height: 25px;
}

.footer__address a {
  color: #9b9b9b;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

.footer__address a:hover {
  color: #fbfbfc;
}

.footer__map {
  display: inline-block;
  margin: 1.25rem 0 0 0;
}

.footer__map a {
  background: #5b5a5e;
  -webkit-transition: all 0.5s ease;
          transition: all 0.5s ease;
  padding: 0.75rem 1.25rem;
  display: block;
  font-size: 0.75rem;
  font-family: "Ubuntu", sans-serif;
  line-height: 0.75rem;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.footer__map a svg {
  fill: #ffffff;
  width: 11px;
  height: 11px;
  margin: 0 0 0 5px;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

.footer__map a:hover,
.footer__map a:focus {
  color: #ffffff;
  background: #747378;
}

.footer__map a:hover svg,
.footer__map a:focus svg {
  fill: #ffffff;
}

.footer-inline-list {
  list-style: none;
  margin: 0;
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .footer-inline-list {
    padding: 0 20px;
  }
}

.footer-inline-list > li {
  display: block;
  text-align: center;
  padding: 0.3125rem 0;
  color: #151e28;
  font-size: 0.875rem;
  margin-bottom: 10px;
}

@media (min-width: 1024px) and (max-width: 1063px) {
  .footer-inline-list > li:nth-child(1) {
    margin-left: 15px;
  }
}

@media screen and (min-width: 40em) and (max-width: 63.9375em) {
  .footer-inline-list > li:nth-child(1) {
    margin-left: 0;
  }
}

@media (min-width: 1024px) and (max-width: 1071px) {
  .footer-inline-list > li {
    padding: 0 2rem 0 0 !important;
  }
}

@media (min-width: 640px) {
  .footer-inline-list > li {
    line-height: 30px;
  }
}

@media (min-width: 1024px) and (max-width: 1063px) {
  .footer-inline-list > li {
    padding: 0 1.9rem 0 0 !important;
  }
}

@media screen and (min-width: 40em) {
  .footer-inline-list > li {
    font-size: 0.6875rem;
  }
}

@media screen and (min-width: 100em) {
  .footer-inline-list > li {
    font-size: 0.8333333333rem;
  }
}

@media (min-width: 640px) and (max-width: 890px) {
  .footer-inline-list > li.social-link {
    padding: 0 !important;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    margin-bottom: 0;
  }
}

@media (min-width: 891px) {
  .footer-inline-list > li.social-link {
    float: right;
  }
}

@media (min-width: 1600px) and (max-width: 1669px) {
  .footer-inline-list > li.social-link {
    -webkit-transform: translateY(-5px) !important;
        -ms-transform: translateY(-5px) !important;
            transform: translateY(-5px) !important;
  }
}

@media screen and (min-width: 100em) {
  .footer-inline-list > li.social-link {
    -webkit-transform: translateY(-12px);
        -ms-transform: translateY(-12px);
            transform: translateY(-12px);
  }
}

.footer-inline-list > li.social-link svg {
  max-width: 100px;
  height: 22px;
  display: inline-block;
}

@media (min-width: 1600px) and (max-width: 1669px) {
  .footer-inline-list > li.social-link svg {
    max-width: 89px;
    height: 32px;
  }
}

@media (min-width: 1670px) {
  .footer-inline-list > li.social-link svg {
    max-width: 135px;
    height: 32px;
  }
}

@media screen and (min-width: 40em) {
  .footer-inline-list > li {
    float: left;
    display: inline-block;
    text-align: left;
    padding: 0 1.25rem 0 0;
  }
  .footer-inline-list > li:last-child {
    padding: 0;
  }
}

@media screen and (min-width: 64em) {
  .footer-inline-list > li {
    padding: 0 1.875rem 0 0;
  }
}

.footer-inline-list > li a {
  display: block;
  color: #151e28;
  font-size: 0.875rem;
  -webkit-transition: all 0.3s ease;
          transition: all 0.3s ease;
}

@media screen and (min-width: 40em) {
  .footer-inline-list > li a {
    font-size: 0.6875rem;
  }
}

@media screen and (min-width: 100em) {
  .footer-inline-list > li a {
    font-size: 0.8333333333rem;
  }
}

.footer-inline-list > li a:hover, .footer-inline-list > li a:focus {
  color: #ca152a;
}

.footer__nav {
  text-align: center;
  list-style: none;
}

.footer__nav-item {
  margin-bottom: 40px;
}

@media screen and (min-width: 64em) {
  .footer__nav-item {
    margin-bottom: 0;
  }
}

.footer__nav a {
  font-family: "Ubuntu", sans-serif;
  display: block;
  font-size: 0.625rem;
  color: #151e28;
}

.footer__nav a:hover {
  color: #ca152a;
}

@media screen and (min-width: 100em) {
  .footer__nav a {
    font-size: 0.75rem;
  }
}

@media screen and (min-width: 40em) {
  .footer__nav {
    margin-top: 0;
    text-align: left;
  }
}

.footer__nav-list {
  list-style: none;
}

.footer__nav-list > li {
  float: none;
  padding: 1rem .625rem;
}

@media screen and (min-width: 40em) {
  .footer__nav-list > li {
    float: left;
    padding: 0 0.625rem 1rem;
  }
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .footer__nav-list > li {
    border-bottom: 1px solid #dadada;
  }
}

.footer__nav-item-title {
  font-family: "Ubuntu", sans-serif;
  color: #151e28;
  font-size: 0.75rem;
  line-height: 1.1em;
  letter-spacing: 1px;
  margin-bottom: 0.5rem;
}

@media screen and (min-width: 100em) {
  .footer__nav-item-title {
    font-size: 1rem;
  }
}

.footer__sub-nav-list {
  font-size: 0.75rem;
  margin: 0;
  list-style: none;
  display: none;
}

@media screen and (min-width: 40em) {
  .footer__sub-nav-list {
    display: block;
  }
}

@media screen and (min-width: 75em) {
  .footer__sub-nav-list {
    padding-left: 25px;
  }
}

.footer__sub-nav-list li {
  position: relative;
  margin-bottom: 0.3125rem;
  font-family: "Ubuntu", sans-serif;
  text-transform: uppercase;
}

@media screen and (min-width: 40em) {
  .footer__sub-nav-list li {
    margin-bottom: 0.3125rem;
  }
}

.footer__sub-nav-list li :last-child {
  margin-bottom: 0;
}

.footer__sub-nav-list li > a {
  opacity: 1.0;
  -webkit-transition: all 0.3s ease-out;
          transition: all 0.3s ease-out;
}

.footer__sub-nav-list li > a:hover,
.footer__sub-nav-list li > a:focus {
  color: #ca152a;
}

.cd-logo,
.cd-logo svg,
.cd-main-header,
.cd-nav,
.cd-primary-nav {
  -webkit-transition: none, 0ms, linear;
          transition: none, 0ms, linear;
}

.header.smaller {
  -webkit-animation-name: slide-down-c;
          animation-name: slide-down-c;
  -webkit-animation-duration: 900ms;
          animation-duration: 900ms;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  opacity: 1;
  background: #ffffff;
  box-shadow: 0px 5px 10px -6px rgba(50, 50, 50, 0.55);
  height: 72px;
  min-height: 72px;
  position: fixed;
  width: 100%;
  display: none;
}

@-webkit-keyframes slide-down-c {
  from {
    top: -15.625rem;
    opacity: 1;
  }
  to {
    top: 0;
    opacity: 1.00;
  }
}

@keyframes slide-down-c {
  from {
    top: -15.625rem;
    opacity: 1;
  }
  to {
    top: 0;
    opacity: 1.00;
  }
}

.header.smaller .cd-logo {
  top: 10px;
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  opacity: 1;
}

@-webkit-keyframes fade-in {
  from {
    opacity: 0.0;
  }
  to {
    opacity: 1.00;
  }
}

@keyframes fade-in {
  from {
    opacity: 0.0;
  }
  to {
    opacity: 1.00;
  }
}

.header.smaller .cd-logo svg {
  width: 50px;
  height: 50px;
}

.header.smaller .cd-primary-nav {
  margin-top: 0 !important;
  height: 72px;
  min-height: 72px;
}

.header.smaller .cd-primary-nav li > a {
  height: 72px;
  line-height: 72px;
}

.header.smaller .cd-primary-nav li > a.active:after {
  display: none;
}

.header.smaller .cd-primary-nav li > a.selected:after {
  display: block;
  margin-top: 1.1875rem;
}

.header.smaller .cd-primary-nav > .has-children:hover a:after {
  margin-top: -0.1875rem;
  display: block;
}

.header.smaller .cd-primary-nav > .has-children:hover a:before {
  margin-top: -0.25rem;
}

.header.smaller .cd-nav-gallery,
.header.smaller .cd-secondary-nav {
  top: 72px;
}

.header.smaller .cd-nav-gallery li > a {
  height: auto;
  line-height: 1.6em;
}

.header.smaller .cd-secondary-nav li > a {
  height: 1.875rem;
  line-height: 1.875rem;
}

.header.smaller .cd-primary-nav-top {
  display: none;
}

.header.smaller .cd-header-buttons {
  top: 0.9375rem;
}

.header.smaller.cd-main-header--negative {
  background: #151e28 !important;
}

.header.smaller.cd-main-header--negative .cd-primary-nav > li > a {
  color: #ffffff;
}

.header.smaller.cd-main-header--negative .cd-primary-nav > li > a:hover, .header.smaller.cd-main-header--negative .cd-primary-nav > li > a:focus, .header.smaller.cd-main-header--negative .cd-primary-nav > li > a.active {
  color: #ffffff;
}

.header.smaller.cd-main-header--negative .cd-primary-nav > li > a:focus > span:after,
.header.smaller.cd-main-header--negative .cd-primary-nav > li > a:hover > span:after,
.header.smaller.cd-main-header--negative .cd-primary-nav > li > a.active > span:after {
  background: #ffffff;
}

.header.smaller.cd-main-header--negative .cd-primary-nav-top ul > li > a {
  color: #ffffff;
}

/* resets */
.cd-main-header ol,
.cd-main-header ul,
.cd-main-header li,
.cd-main-header h1,
.cd-nav ol,
.cd-nav ul,
.cd-nav li {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}

.cd-main-header a,
.cd-nav a {
  text-decoration: none;
  -webkit-transition: all, 300ms, ease-out;
          transition: all, 300ms, ease-out;
}

.top-fixed {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  background-color: transparent !important;
}

@media only screen and (min-width: 1200px) {
  .top-fixed {
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
  }
}

/* --------------------------------
Main components
-------------------------------- */
.cd-main-content,
.cd-main-header {
  /* Force Hardware Acceleration in WebKit */
  /* Da commentare per evitare conflitti con la sticky nav */
  /*@include transform(translateZ(0));
  will-change: transform;*/
}

.cd-main-content,
.cd-main-header {
  position: relative;
  -webkit-transition: all 300ms ease-out, 0.3s 300ms ease-out;
          transition: all 300ms ease-out, 0.3s 300ms ease-out;
}

@media only screen and (max-width: 1199px) {
  .cd-main-content.nav-is-visible,
  .cd-main-header.nav-is-visible {
    -webkit-transform: translateX(-260px);
    -ms-transform: translateX(-260px);
    transform: translateX(-260px);
  }
  .nav-on-left .cd-main-content.nav-is-visible, .nav-on-left
  .cd-main-header.nav-is-visible {
    -webkit-transform: translateX(260px);
    -ms-transform: translateX(260px);
    transform: translateX(260px);
  }
}

.cd-main-content {
  min-height: 100vh;
  z-index: 2;
}

@media only screen and (min-width: 1200px) {
  .cd-main-padding {
    padding-top: 230px;
  }
}

.cd-main-header {
  height: 80px;
  background: #ffffff;
  z-index: 3;
  -webkit-transition: all 300ms ease-out, 0.3s 300ms ease-out;
          transition: all 300ms ease-out, 0.3s 300ms ease-out;
}

@media only screen and (min-width: 1200px) {
  .cd-main-header {
    background: transparent;
    -webkit-transition: all 0ms ease-out !important;
            transition: all 0ms ease-out !important;
  }
}

.nav-is-fixed .cd-main-header {
  /* add .nav-is-fixed class to body if you want a fixed navigation on > L */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

@media only screen and (min-width: 1200px) {
  .cd-main-header {
    height: 230px;
  }
  .cd-main-header::before, .cd-main-header::after {
    content: ' ';
    display: table;
  }
  .cd-main-header::after {
    clear: both;
  }
}

.cd-main-header--border {
  box-shadow: 0px 0px 30px rgba(1, 1, 1, 0.1);
}

.cd-main-header:not(.smaller) {
  -webkit-transition: all 300ms ease-out, 0.3s 300ms ease-out;
          transition: all 300ms ease-out, 0.3s 300ms ease-out;
}

@media only screen and (min-width: 1200px) {
  .cd-main-header.cd-main-header--negative {
    background: transparent !important;
  }
  .cd-main-header.cd-main-header--negative .cd-logo svg {
    fill: #ffffff;
  }
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a {
    color: #ffffff;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a:hover, .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a:focus, .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a.active {
    color: #ffffff;
  }
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a.active:hover {
    opacity: 1;
  }
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a:focus > span:after,
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a:hover > span:after,
  .cd-main-header.cd-main-header--negative .cd-primary-nav > li > a.active > span:after {
    width: 100%;
    background: #ffffff;
  }
  .cd-main-header.cd-main-header--negative .cd-primary-nav-top ul > li > a {
    color: #ffffff;
  }
  .cd-main-header.cd-main-header--negative .cd-nav-language > a:after {
    border-color: rgba(202, 21, 42, 0.5) transparent transparent transparent;
  }
  .cd-main-header.cd-main-header--negative .cd-nav-language:before {
    background: rgba(202, 21, 42, 0.3);
  }
}

.cd-logo {
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
  -webkit-transition: all 0.3s ease-out;
          transition: all 0.3s ease-out;
}

.cd-logo svg {
  display: block;
  position: relative;
  fill: #010101;
  width: 60px;
  height: 60px;
}

@media only screen and (max-width: 1199px) {
  .nav-on-left .cd-logo {
    left: 1.25rem;
    right: 5%;
  }
}

@media only screen and (min-width: 640px) {
  .cd-logo {
    left: 1.25rem;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-logo {
    top: 40px;
    left: 1.25rem;
    z-index: 3;
  }
  .cd-logo svg {
    width: 6.5625rem;
    height: 6.5625rem;
  }
}

@media screen and (min-width: 100em) {
  .cd-logo svg {
    width: 9.375rem;
    height: 9.375rem;
  }
}

.cd-header-buttons {
  position: absolute;
  display: inline-block;
  top: 1.25rem;
  right: 1.25rem;
}

.cd-header-buttons li {
  display: inline-block;
}

@media only screen and (min-width: 640px) {
  .cd-header-buttons {
    right: 1.25rem;
  }
}

@media only screen and (max-width: 1199px) {
  .nav-on-left .cd-header-buttons {
    right: auto;
    left: 5%;
  }
  .nav-on-left .cd-header-buttons li {
    float: right;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-header-buttons {
    top: 18px;
    right: 4em;
  }
}

.cd-nav-trigger {
  position: relative;
  display: block;
  width: 44px;
  height: 44px;
  overflow: hidden;
  white-space: nowrap;
  /* hide text */
  color: transparent;
  z-index: 3;
}

.cd-nav-trigger span,
.cd-nav-trigger span::before,
.cd-nav-trigger span::after {
  /* hamburger icon in CSS */
  position: absolute;
  display: inline-block;
  height: 3px;
  width: 24px;
  background: #ffffff;
}

@media only screen and (min-width: 1200px) {
  .cd-nav-trigger span,
  .cd-nav-trigger span::before,
  .cd-nav-trigger span::after {
    background: #ffffff;
  }
}

.cd-nav-trigger span {
  /* line in the center */
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -2px;
}

.cd-nav-trigger span::before,
.cd-nav-trigger span::after {
  /* other 2 lines */
  content: '';
  right: 0;
  /* Force Hardware Acceleration in WebKit */
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-origin: 0% 50%;
  -ms-transform-origin: 0% 50%;
  transform-origin: 0% 50%;
  -webkit-transition: -webkit-transform;
  transition: transform;
}

.cd-nav-trigger span::before {
  /* menu icon top line */
  top: -6px;
}

.cd-nav-trigger span::after {
  /* menu icon bottom line */
  top: 6px;
}

.cd-nav-trigger.nav-is-visible span {
  /* hide line in the center */
  background: rgba(255, 255, 255, 0);
}

@media only screen and (min-width: 1200px) {
  .cd-nav-trigger.nav-is-visible span {
    background: rgba(255, 255, 255, 0);
  }
}

.cd-nav-trigger.nav-is-visible span::before,
.cd-nav-trigger.nav-is-visible span::after {
  /* keep visible other 2 lines */
  background: white;
}

@media only screen and (min-width: 1200px) {
  .cd-nav-trigger.nav-is-visible span::before,
  .cd-nav-trigger.nav-is-visible span::after {
    background: white;
  }
}

.cd-nav-trigger.nav-is-visible span::before {
  -webkit-transform: translateX(4px) translateY(-3px) rotate(45deg);
  -ms-transform: translateX(4px) translateY(-3px) rotate(45deg);
  transform: translateX(4px) translateY(-3px) rotate(45deg);
}

.cd-nav-trigger.nav-is-visible span::after {
  -webkit-transform: translateX(4px) translateY(2px) rotate(-45deg);
  -ms-transform: translateX(4px) translateY(2px) rotate(-45deg);
  transform: translateX(4px) translateY(2px) rotate(-45deg);
}

@media only screen and (min-width: 1200px) {
  .cd-nav-trigger {
    display: none;
  }
}

.cd-primary-nav {
  opacity: 0;
  display: inline-block;
}

.cd-primary-nav,
.cd-primary-nav ul {
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  width: 260px;
  background: #ca152a;
  overflow: auto;
  list-style: none;
  -webkit-overflow-scrolling: touch;
  z-index: 1;
  /* Force Hardware Acceleration in WebKit */
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: -webkit-transform;
  transition: transform;
}

.cd-primary-nav a,
.cd-primary-nav ul a {
  display: block;
  height: 50px;
  line-height: 50px;
  font-family: "Ubuntu", sans-serif;
  color: #ca152a;
  font-size: 0.875rem;
  font-weight: normal;
  text-transform: uppercase;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow: hidden;
  /*text-overflow: ellipsis;*/
  white-space: nowrap;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform, opacity;
  transition: transform, opacity;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav a,
  .cd-primary-nav ul a {
    height: 35px;
    line-height: 35px;
  }
}

.cd-primary-nav.is-hidden,
.cd-primary-nav ul.is-hidden {
  /* secondary navigations hidden by default */
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  opacity: 0;
}

.cd-primary-nav.moves-out > li > a,
.cd-primary-nav.moves-out > li.cd-primary-nav-top > ul,
.cd-primary-nav ul.moves-out > li > a,
.cd-primary-nav ul.moves-out > li.cd-primary-nav-top > ul {
  /* push the navigation items to the left - and lower down opacity - when secondary nav slides in */
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  opacity: 0;
}

@media only screen and (max-width: 1199px) {
  .nav-on-left .cd-primary-nav,
  .nav-on-left .cd-primary-nav ul {
    right: auto;
    left: 0;
  }
}

.cd-primary-nav .see-all a {
  /* different style for the See all button on mobile and tablet */
  color: #ffffff;
}

.cd-primary-nav .cd-nav-gallery .cd-nav-item {
  /* items with picture (or icon) and title */
  height: 80px;
  line-height: 80px;
  position: relative;
  white-space: normal;
}

.cd-primary-nav .cd-nav-gallery .cd-nav-item h3 {
  font-family: "Ubuntu", sans-serif;
  font-weight: normal;
  overflow: hidden;
  text-overflow: initial;
  color: #ffffff;
  font-size: 0.875rem;
  line-height: normal;
  margin-top: 30px;
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

.cd-primary-nav .cd-nav-gallery .cd-nav-item {
  padding-left: 100px;
}

.cd-primary-nav .cd-nav-gallery .cd-nav-item img {
  position: absolute;
  display: block;
  height: 40px;
  width: auto;
  left: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 300ms ease-out;
          transition: all 300ms ease-out;
}

@media only screen and (max-width: 1199px) {
  .cd-primary-nav .cd-nav-gallery .cd-nav-item svg {
    float: none;
    position: absolute !important;
    display: inline;
    position: static;
    left: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    fill: #ffffff;
    width: 1.875rem;
    height: 1.875rem;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div {
    float: none;
    position: absolute;
    display: inline;
    left: 75px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div h3 {
    margin-top: 0;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div p,
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div .link {
    display: none;
  }
}

@media only screen and (max-width: 1199px) {
  .cd-primary-nav {
    /* by default .cd-primary-nav is hidden - trick for iOS devices where you can see the navigation if you pull down */
    visibility: hidden;
    -webkit-transition: visibility 0s 0.3s;
    transition: visibility 0s 0.3s;
  }
  .cd-primary-nav.nav-is-visible {
    visibility: visible;
    -webkit-transition: visibility 0s 0s;
    transition: visibility 0s 0s;
  }
}

@media only screen and (max-width: 1199px) {
  .cd-primary-nav a,
  .cd-primary-nav ul a {
    color: #ffffff;
    padding: 0 20px;
  }
  .cd-primary-nav a.active,
  .cd-primary-nav ul a.active {
    opacity: 0.5;
  }
  .cd-primary-nav-top ul a {
    text-transform: uppercase !important;
  }
  .cd-nav-language {
    display: none;
  }
}

.cd-primary-nav-top > ul {
  position: relative;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform, opacity;
  -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
          transition: transform 0.3s, opacity 0.3s;
}

.cd-primary-nav-top ul > li > a {
  text-transform: capitalize;
}

.cd-primary-nav-top li:last-child {
  padding-right: 0;
}

.cd-nav-language {
  position: relative;
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav {
    position: static;
    padding: 0 150px 0 0;
    margin-top: 66px !important;
    height: auto;
    width: auto;
    float: right;
    overflow: visible;
    background: transparent;
    /*> li > a:focus > span:after,*/
    /* aggiunta per avere submenu on hover */
  }
}

@media only screen and (min-width: 1200px) and (min-width: 100em) {
  .cd-primary-nav {
    margin-top: 80px !important;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav::before, .cd-primary-nav::after {
    content: ' ';
    display: table;
  }
  .cd-primary-nav::after {
    clear: both;
  }
  .cd-primary-nav.moves-out > li > a,
  .cd-primary-nav.moves-out > li.cd-primary-nav-top > ul {
    /* reset mobile style */
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  .cd-primary-nav ul {
    position: static;
    height: auto;
    width: auto;
    background: transparent;
    overflow: visible;
    z-index: 3;
  }
  .cd-primary-nav ul.is-hidden {
    /* reset mobile style */
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  .cd-primary-nav ul.moves-out > li > a,
  .cd-primary-nav ul.moves-out > li.cd-primary-nav-top > ul {
    /* reset mobile style */
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    opacity: 1;
  }
  .cd-primary-nav > li {
    float: left;
    position: relative;
  }
  .cd-primary-nav > li:nth-last-child(2) a {
    margin-right: 0 !important;
  }
  .cd-primary-nav > li:first-child > a {
    margin-left: 0 !important;
  }
  .cd-primary-nav > li.gallery {
    position: static !important;
  }
  .cd-primary-nav > li > a {
    /* main navigation buttons style */
    position: relative;
    display: inline-block;
    height: 39px;
    line-height: 39px;
    /*height: $header-height-L;
      line-height: $header-height-L;*/
    padding: 0;
    margin: 0 20px;
    color: #ca152a;
    text-transform: uppercase;
    font-size: 0.875rem;
    font-family: "Ubuntu", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    overflow: visible;
    border-bottom: none;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
    z-index: 5;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 75em) {
  .cd-primary-nav > li > a {
    font-size: 0.6875rem;
    margin: 0 15px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 100em) {
  .cd-primary-nav > li > a {
    font-size: 0.9375rem;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav > li > a:hover, .cd-primary-nav > li > a:focus {
    color: #ca152a;
  }
  .cd-primary-nav > li > a.active span:after,
  .cd-primary-nav > li > a.active span:after,
  .cd-primary-nav > li > a.active span:after {
    width: 100%;
    background: #ca152a;
  }
  .cd-primary-nav > li > a.selected, .cd-primary-nav > li > a:hover {
    color: #ca152a;
  }
  .cd-primary-nav > li > a > span:after {
    content: ' ';
    display: block;
    width: 0;
    height: 0.125rem;
    background: transparent;
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0;
    -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
  }
  .cd-primary-nav > li > a:hover > span:after {
    width: 100%;
    background: #ca152a;
  }
  .cd-primary-nav > li:last-child > a:hover > span:after {
    width: 100%;
    background: #2d4779;
  }
  .cd-primary-nav .go-back,
  .cd-primary-nav .see-all {
    display: none;
  }
  .cd-primary-nav .cd-secondary-nav,
  .cd-primary-nav .cd-nav-gallery {
    position: absolute;
    top: 30px;
    /*box-shadow: inset 0 1px 0 $color-gray, 0 3px 6px rgba(#000, .05);*/
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    -webkit-transition: opacity .3s 0s, visibility 0s 0s;
    transition: opacity .3s 0s, visibility 0s 0s;
    -webkit-animation-name: fade-in;
            animation-name: fade-in;
    -webkit-animation-duration: 0.3s;
            animation-duration: 0.3s;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    opacity: 1;
  }
  .cd-primary-nav .cd-secondary-nav::before, .cd-primary-nav .cd-secondary-nav::after,
  .cd-primary-nav .cd-nav-gallery::before,
  .cd-primary-nav .cd-nav-gallery::after {
    content: ' ';
    display: table;
  }
  .cd-primary-nav .cd-secondary-nav::after,
  .cd-primary-nav .cd-nav-gallery::after {
    clear: both;
  }
  @-webkit-keyframes fade-in {
    from {
      opacity: 0.0;
    }
    to {
      opacity: 1.00;
    }
  }
  @keyframes fade-in {
    from {
      opacity: 0.0;
    }
    to {
      opacity: 1.00;
    }
  }
  .cd-primary-nav .cd-secondary-nav.is-hidden,
  .cd-primary-nav .cd-nav-gallery.is-hidden {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s 0s, visibility 0s .3s;
    transition: opacity .3s 0s, visibility 0s .3s;
  }
  .cd-primary-nav .cd-secondary-nav > .see-all,
  .cd-primary-nav .cd-nav-gallery > .see-all {
    /* this is the BIG See all button at the bottom of the dropdown menu */
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    height: 80px;
    width: 100%;
    overflow: hidden;
    /* reset some inherited style */
    margin: 0;
    padding: 0;
  }
  .cd-primary-nav .cd-secondary-nav > .see-all a,
  .cd-primary-nav .cd-nav-gallery > .see-all a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    font-size: 2.2rem;
    font-weight: bold;
    font-family: "Ubuntu", sans-serif;
    text-align: center;
    line-height: 80px;
    border-top: 1px solid #4c4c4c;
    /* reset some inherited style */
    border-bottom: none;
    padding: 0;
    -webkit-transition: color 0.2s, background 0.2s, border 0.2s;
    transition: color 0.2s, background 0.2s, border 0.2s;
  }
  .cd-primary-nav .cd-secondary-nav > .see-all a:hover,
  .cd-primary-nav .cd-nav-gallery > .see-all a:hover {
    background: #ffffff;
    border-color: #ffffff;
    color: #ffffff;
  }
  .cd-primary-nav .cd-nav-gallery {
    width: 620px;
    position: relative;
    -webkit-transform: translate(-50%, 0) !important;
        -ms-transform: translate(-50%, 0) !important;
            transform: translate(-50%, 0) !important;
  }
  .cd-primary-nav > li:hover ul.cd-secondary-nav,
  .cd-primary-nav > li:hover ul.cd-nav-gallery {
    display: block !important;
  }
  .cd-primary-nav .cd-secondary-nav {
    position: absolute;
    left: 10px;
    width: 130px;
    display: none;
    /* aggiunta per avere submenu on hover */
  }
  .cd-primary-nav .cd-secondary-nav > li {
    /* change the height according to your needs - you can even set height: auto */
    height: auto;
    padding: 5px 5px !important;
    border-bottom: 1px solid #ddd;
    /* here you set the number of columns - use width percentage */
    /*@include column(.23);  // see partials > _layout.scss
        margin-right: 2.66%;
        border-right: 1px solid $color-gray;
        overflow: hidden;
        overflow-x: hidden;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;*/
    /*&:nth-child(4n+2) {
        margin-right: 0;
        border-right: none;
      }*/
  }
  .cd-primary-nav .cd-secondary-nav > li > a {
    /* secondary nav title */
    display: block;
    color: #ffffff !important;
    font-weight: normal;
    font-size: 0.6875rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    font-family: "Ubuntu", sans-serif;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 100em) {
  .cd-primary-nav .cd-secondary-nav > li > a {
    font-size: 0.875rem;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav .cd-secondary-nav > li > a:hover {
    color: #ca152a !important;
  }
  .cd-primary-nav .cd-secondary-nav > li > a:after, .cd-primary-nav .cd-secondary-nav > li > a:before {
    display: none !important;
  }
  .cd-primary-nav .cd-secondary-nav > li:last-child {
    border: 0;
  }
  .cd-primary-nav .cd-secondary-nav a {
    height: 30px;
    line-height: 30px;
    padding: 0 0 0 0;
    color: #e8eaee;
    border-bottom: none;
    font-size: 1rem;
  }
  .cd-primary-nav .cd-secondary-nav a:hover {
    color: #ca152a;
  }
  .cd-primary-nav .cd-secondary-nav ul {
    /* Force Hardware Acceleration in WebKit */
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
  }
  .cd-primary-nav .cd-secondary-nav ul ul {
    /* tertiary navigation */
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
  .cd-primary-nav .cd-secondary-nav ul ul.is-hidden {
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
  }
  .cd-primary-nav .cd-secondary-nav ul ul .go-back {
    display: block;
  }
  .cd-primary-nav .cd-secondary-nav ul ul .go-back a {
    color: transparent;
  }
  .cd-primary-nav .cd-secondary-nav ul ul .see-all {
    display: block;
  }
  .cd-primary-nav .cd-secondary-nav .moves-out > li > a,
  .cd-primary-nav .cd-secondary-nav.moves-out > li.cd-primary-nav-top > ul {
    /* push the navigation items to the left - and lower down opacity - when tertiary nav slides in */
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  .cd-primary-nav .cd-nav-gallery {
    padding: 2.5rem 0;
    position: absolute;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
    display: none;
    /* aggiunta per avere submenu on hover */
  }
  .cd-primary-nav .cd-nav-gallery li {
    /* set here number of columns - use width percentage */
    width: 50%;
    float: left;
    padding: 0 60px;
    text-align: center;
  }
  .cd-primary-nav .cd-nav-gallery li:nth-child(2n+1) {
    /* 3n+1: link nascosto + 4 box */
    /* 4n+2 because we have two additional list items with display:none */
    border-left: 1px solid #e0dbd7;
  }
  .cd-primary-nav .cd-nav-gallery > li > a > span:after {
    content: ' ';
    display: block;
    width: 0;
    height: 0.125rem;
    background: transparent;
    position: absolute;
    top: auto;
    left: 0;
    bottom: 0;
    -webkit-transition: all 0.3s ease-out;
            transition: all 0.3s ease-out;
  }
  .cd-primary-nav .cd-nav-gallery > li > a:hover > span:after {
    width: 100%;
    background: white;
  }
  .cd-primary-nav .cd-nav-gallery a {
    white-space: normal;
  }
  .cd-primary-nav .cd-nav-gallery a:after, .cd-primary-nav .cd-nav-gallery a:before {
    display: none !important;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item {
    border-bottom: none;
    padding: 0;
    height: auto;
    line-height: 1.2;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item svg {
    float: left;
    margin-right: 1.875rem;
    position: static;
    left: 0;
    top: 0;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    margin-top: 0;
    fill: #ca152a;
    width: 5.625rem;
    height: 5.625rem;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item img {
    position: static;
    left: 0;
    top: 0;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    margin-top: 0;
    height: auto;
    width: 100%;
    margin-bottom: .6em;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div {
    float: left;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div h3 {
    font-family: "Ubuntu", sans-serif;
    margin-top: 0;
    text-overflow: initial;
    color: #2d4779;
    font-size: 0.875rem;
    text-transform: uppercase;
    line-height: 1;
    padding: 0;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item div p {
    font-family: "Ubuntu", sans-serif;
    font-style: italic;
    text-transform: none;
    color: #ca152a;
    font-size: 0.75rem;
  }
  .cd-primary-nav .cd-nav-gallery .cd-nav-item:hover h3 {
    color: #ca152a;
  }
  .cd-primary-nav-top {
    position: absolute !important;
    top: -30px;
    float: none !important;
    text-align: right;
    width: 100%;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 100em) {
  .cd-primary-nav-top {
    top: -40px;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav-top ul {
    position: relative;
    height: 3.0625rem;
  }
  .cd-primary-nav-top ul > li {
    display: inline-block;
    padding: 0 20px;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 75em) {
  .cd-primary-nav-top ul > li {
    padding: 0 15px;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav-top ul > li > a {
    border-bottom: none;
    font-family: "Ubuntu", sans-serif;
    font-weight: 500;
    font-size: 0.875rem;
    -webkit-transition: all 300ms ease-out;
            transition: all 300ms ease-out;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 75em) {
  .cd-primary-nav-top ul > li > a {
    font-size: 0.6875rem;
  }
}

@media only screen and (min-width: 1200px) and (min-width: 100em) {
  .cd-primary-nav-top ul > li > a {
    font-size: 0.9375rem;
  }
}

@media only screen and (min-width: 1200px) {
  .cd-primary-nav-top ul > li > a:hover, .cd-primary-nav-top ul > li > a:focus, .cd-primary-nav-top ul > li > a.active {
    opacity: 0.5;
  }
  .cd-primary-nav-top ul > li > a.active {
    opacity: 1;
    text-decoration: underline;
  }
  .cd-nav-language {
    /*  ul.cd-secondary-nav > li > a{
  text-overflow: initial;
  font-size: rem-calc(14);
  font-family: $font-family-futura-bk;
}

/*> a:after{
content:'';
border: inset 5px;
display: inline-block;
position: relative;
height: 0;
width: 0;
border-color: rgba($black, 0.5) transparent transparent transparent;
border-top-style: solid;
top: 4px;
margin-left: 6px;
bottom: 0;
}*/
  }
  .cd-nav-language a i {
    font-size: 0.75rem;
    margin-left: 0.3125rem;
  }
  .cd-nav-language a:hover {
    opacity: 0.5;
  }
  .cd-nav-language > a {
    padding-right: 0 !important;
    text-align: right;
  }
}

.has-children > a,
.go-back a {
  position: relative;
}

.has-children > a::before, .has-children > a::after,
.go-back a::before,
.go-back a::after {
  /* arrow icon in CSS - for element with nested unordered lists */
  content: '';
  position: absolute;
  top: 50%;
  margin-top: -1px;
  display: inline-block;
  height: 2px;
  width: 10px;
  background: white;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.has-children > a::before,
.go-back a::before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.has-children > a::after,
.go-back a::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

@media only screen and (min-width: 1200px) {
  .has-children > a::before, .has-children > a::after,
  .go-back a::before,
  .go-back a::after {
    background: #333333;
  }
  .has-children > a:hover::before, .has-children > a:hover::after,
  .go-back a:hover::before,
  .go-back a:hover::after {
    background: #ffffff;
  }
}

.has-children > a {
  padding-right: 40px;
}

.has-children > a::before, .has-children > a::after {
  /* arrow goes on the right side - children navigation */
  right: 20px;
  -webkit-transform-origin: 9px 50%;
  -ms-transform-origin: 9px 50%;
  transform-origin: 9px 50%;
}

.cd-primary-nav .go-back a {
  padding-left: 40px;
}

.cd-primary-nav .go-back a::before, .cd-primary-nav .go-back a::after {
  /* arrow goes on the left side - go back button */
  left: 20px;
  -webkit-transform-origin: 1px 50%;
  -ms-transform-origin: 1px 50%;
  transform-origin: 1px 50%;
}

@media only screen and (min-width: 1200px) {
  .has-children > a::before, .has-children > a::after {
    right: 15%;
  }
  .cd-primary-nav > .has-children > a {
    /* main navigation arrows on larger devices */
    /*padding-right: 30px !important;*/
    /*&::before {
    right: 12px;
  }

  &::after {
  right: 7px;
}

&.selected::before, &.selected::after {
width: 14px;
}

&.selected::before {
@include transform(translateX(5px) rotate(-45deg));
}

&.selected::after {
@include transform(rotate(45deg));
}*/
  }
  .cd-primary-nav > .has-children > a::before, .cd-primary-nav > .has-children > a::after {
    display: none;
    /*width: 9px;
      @include transform-origin(50% 50%);
      background: darken($color-gray, 10%);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      @include transition(width .3s, transform .3s);*/
  }
  .cd-primary-nav > .has-children:hover a {
    color: #ca152a;
    /*
      &:after {
        content: '';
        display: block;
        @include triangle(rem-calc(16), $white, up);
        @include xy-centered(100%, 50%);
        margin-top: rem-calc(-3);
        background: transparent;
        position: absolute;
      }
      &:before {
        content: '';
        display: block;
        @include triangle(rem-calc(18), #e0dbd7, up);
        @include xy-centered(100%, 50%);
        margin-top: rem-calc(-4);
        background: transparent;
        position: absolute;
      }
      */
  }
  .cd-primary-nav > .has-children:hover .stroke {
    display: none;
  }
  .cd-secondary-nav > .has-children > a::before,
  .cd-secondary-nav > .has-children > a::after {
    /* remove arrows on secondary nav titles */
    display: none;
  }
  .cd-primary-nav .go-back a {
    padding-left: 20px;
  }
  .cd-primary-nav .go-back a::before, .cd-primary-nav .go-back a::after {
    left: 1px;
  }
}

.cd-search {
  position: absolute;
  height: 50px;
  width: 100%;
  top: 80px;
  left: 0;
  z-index: 3;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity .3s 0s, visibility 0s .3s;
  transition: opacity .3s 0s, visibility 0s .3s;
}

.cd-search form {
  height: 100%;
  width: 100%;
}

.cd-search input {
  border-radius: 0;
  border: none;
  background: #ffffff;
  height: 100%;
  width: 100%;
  padding: 0 5%;
  box-shadow: inset 0 1px 0 #4c4c4c, 0 3px 6px rgba(0, 0, 0, 0.05);
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
}

.cd-search input::-webkit-input-placeholder {
  color: #333333;
}

.cd-search input::-moz-placeholder {
  color: #333333;
}

.cd-search input:-moz-placeholder {
  color: #333333;
}

.cd-search input:-ms-input-placeholder {
  color: #333333;
}

.cd-search input:focus {
  outline: none;
}

.cd-search.is-visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity .3s 0s, visibility 0s 0s;
  transition: opacity .3s 0s, visibility 0s 0s;
}

.nav-is-fixed .cd-search {
  position: fixed;
}

@media only screen and (min-width: 1200px) {
  .cd-search {
    height: 120px;
    top: 230px;
  }
  .cd-search input {
    padding: 0 2em;
    font-size: 3.2rem;
    font-weight: 300;
  }
}

.cd-overlay {
  /* shadow layer visible when navigation is active */
  position: fixed;
  z-index: 2;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  cursor: pointer;
  background-color: rgba(255, 255, 255, 0.5);
  visibility: hidden;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: opacity, visibility, -webkit-transform;
  transition: opacity, visibility, transform;
}

.cd-overlay.is-visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity, visibility, -webkit-transform;
  transition: opacity, visibility, transform;
}

@media only screen and (max-width: 1199px) {
  .cd-overlay.is-visible {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
  .nav-on-left .cd-overlay.is-visible {
    -webkit-transform: translateX(260px);
    -ms-transform: translateX(260px);
    transform: translateX(260px);
  }
  .cd-overlay.is-visible.search-is-visible,
  .nav-on-left .cd-overlay.is-visible.search-is-visible {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.show-for-mobile {
  display: none;
}

@media only screen and (max-width: 1199px) {
  .show-for-mobile {
    display: block;
  }
}

/* --------------------------------
support for no js
-------------------------------- */
.no-js .cd-primary-nav {
  position: relative;
  height: auto;
  width: 100%;
  overflow: visible;
  visibility: visible;
  z-index: 2;
}

.no-js .cd-search {
  position: relative;
  top: 0;
  opacity: 1;
  visibility: visible;
}

@media only screen and (min-width: 1200px) {
  .no-js .cd-primary-nav {
    position: absolute;
    z-index: 3;
    display: inline-block;
    width: auto;
    top: 0;
    right: 150px;
    padding: 0;
  }
  .no-js .nav-is-fixed .cd-primary-nav {
    position: fixed;
  }
}

.side-nav {
  display: block;
  margin-bottom: 1.25rem;
}

@media screen and (min-width: 75em) {
  .side-nav {
    width: 90%;
    margin-bottom: 0;
  }
}

.side-nav .menu.nested {
  margin-left: 0;
}

.side-nav--title {
  color: #ca152a;
  font-size: 1rem;
  font-weight: 700;
  border-bottom: 4px solid #ca152a;
  text-transform: uppercase;
  padding: 0.9375rem 0 !important;
  letter-spacing: 0;
}

@media screen and (min-width: 75em) {
  .side-nav--title {
    font-size: 0.8125rem;
    line-height: 1.4;
  }
}

@media screen and (min-width: 100em) {
  .side-nav--title {
    font-size: 1.0625rem;
  }
}

.side-nav--category {
  font-size: 0.875rem;
  font-weight: 500;
  color: #5b5a5e;
  text-transform: uppercase;
  padding: 0.4375rem 2.5rem 0.4375rem 0 !important;
  letter-spacing: 0;
  line-height: 1.2 !important;
}

@media screen and (min-width: 75em) {
  .side-nav--category {
    font-size: 0.8125rem;
  }
}

@media screen and (min-width: 100em) {
  .side-nav--category {
    font-size: 1.0625rem;
    line-height: 1.2 !important;
  }
}

.side-nav--category:focus, .side-nav--category:hover, .side-nav--category.active {
  color: #ca152a;
}

.side-nav li[aria-expanded="true"] .side-nav--category {
  border: 0;
}

.side-nav li[aria-expanded="false"] .side-nav--category {
  border-bottom: 1px solid #9b9b9b;
}

.side-nav--subcategory {
  border-bottom: 1px solid #e2e2e2;
}

.side-nav--subcategory a {
  font-size: 0.75rem;
  font-weight: 500;
  color: #5b5a5e;
  text-transform: uppercase;
  padding: 0.1875rem 0.9375rem !important;
  letter-spacing: 0;
  line-height: 1.8em !important;
}

@media screen and (min-width: 75em) {
  .side-nav--subcategory a {
    font-size: 0.625rem;
  }
}

@media screen and (min-width: 100em) {
  .side-nav--subcategory a {
    font-size: 0.8125rem;
  }
}

.side-nav--subcategory a:focus, .side-nav--subcategory a:hover, .side-nav--subcategory a.active {
  color: #ca152a;
}

.side-nav .is-accordion-submenu-parent > a:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 7px;
  border-color: #5b5a5e transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: absolute;
  top: 50%;
  margin-top: -4px;
  right: 1rem;
}

.side-nav .is-accordion-submenu-parent > a:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 7px;
  border-color: #fbfbfb transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  position: absolute;
  top: 50%;
  margin-top: -5px;
  right: 1rem;
  z-index: 2;
}

.side-nav .is-accordion-submenu-parent[aria-expanded='true'] > a::before {
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  margin-top: -3px;
}

.side-nav .side-nav--subcategory .is-accordion-submenu .is-accordion-submenu-item {
  padding-left: 15px;
}

.side-nav--secondary .side-nav--title {
  color: #2d4779;
  border-bottom: 4px solid #2d4779;
}

.side-nav--secondary .side-nav--category:focus, .side-nav--secondary .side-nav--category:hover, .side-nav--secondary .side-nav--category.active {
  color: #2d4779;
}

.side-nav--secondary .side-nav--subcategory a:focus, .side-nav--secondary .side-nav--subcategory a:hover, .side-nav--secondary .side-nav--subcategory a.active {
  color: #2d4779;
}

.block {
  display: block !important;
}

.subcategory_selected a {
  color: #010101;
}

.selectedItem {
  font-weight: 700;
}

/* PAGES
Questa cartella è un'altra categoria di componenti e contiene stili
specifici per componenti presenti solo in determinate pagine. Il nome del file e
della classe del componente (che devono essere uguali) sono preceduti dal nome
dell'unica pagina in cui sono presenti. Anche in questo caso la scelta di
inserire un modulo all'interno di pages piuttosto che di components o section è
puramente organizzativa. L'utilizzo di questa sezione dovrebbe essere il più
possibile limitato e attuato solamente quando tutte le altre alternative
risultino sconvenienti.
*/
.privacy {
  padding: 0.9375rem;
}

@media screen and (min-width: 40em) {
  .privacy {
    padding: 1.875rem;
  }
}

.privacy__logo {
  display: block;
  width: 120px;
  height: 119px;
  margin-bottom: 0.9375rem;
}

@media screen and (min-width: 40em) {
  .privacy__logo {
    margin-bottom: 1.875rem;
  }
}

.privacy__text,
.privacy span[style*="Arial"] {
  font-family: Arial, sans-serif !important;
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
  color: #5b5a5e !important;
}

@media screen and (min-width: 40em) {
  .privacy__text,
  .privacy span[style*="Arial"] {
    font-size: 0.875rem !important;
  }
}

.privacy__text h3 {
  font-family: "Ubuntu", sans-serif !important;
  color: #151e28 !important;
  font-size: 0.75rem !important;
  display: none;
}

@media screen and (min-width: 40em) {
  .privacy__text h3 {
    font-size: 0.875rem !important;
  }
}

.privacy__text p,
.privacy__text span,
.privacy p {
  font-family: Arial, sans-serif !important;
  font-size: 0.75rem !important;
  line-height: 1.45 !important;
  color: #5b5a5e !important;
}

@media screen and (min-width: 40em) {
  .privacy__text p,
  .privacy__text span,
  .privacy p {
    font-size: 0.875rem !important;
  }
}

.product-detail {
  margin-top: 1.25rem;
}

.product-detail .table-mobile tr td:nth-child(1), .product-detail .table-mobile tr td:nth-child(2) {
  text-align: left;
}

.product-detail .table-mobile tr td {
  text-align: center;
}

.product-detail--description, .product-detail--description p {
  margin-top: 20px;
  line-height: 1.7;
  text-align: left;
  font-size: 0.875rem;
}

@media screen and (min-width: 75em) {
  .product-detail--description, .product-detail--description p {
    font-size: 0.8125rem;
  }
}

@media screen and (min-width: 100em) {
  .product-detail--description, .product-detail--description p {
    font-size: 1.0625rem;
  }
}

.product-detail--title_code {
  font-size: 1.5rem;
  color: #ca152a;
  text-transform: uppercase;
  font-weight: 500;
  border-top: 12px solid #ca152a;
  padding-top: 1.25rem;
}

@media screen and (min-width: 75em) {
  .product-detail--title_code {
    font-size: 2.5rem;
  }
}

@media screen and (min-width: 100em) {
  .product-detail--title_code {
    font-size: 3.3125rem;
  }
}

.product-detail--title_power {
  font-size: 0.875rem;
  color: #5b5a5e;
  font-weight: 500;
  letter-spacing: 0;
  border-top: 12px solid #151e28;
  padding-top: 1.25rem;
  text-align: right;
  line-height: 1.2em;
}

@media screen and (min-width: 75em) {
  .product-detail--title_power {
    font-size: 1.0625rem;
  }
}

@media screen and (min-width: 100em) {
  .product-detail--title_power {
    font-size: 1.4375rem;
  }
}

.product-detail--title.secondary .product-detail--title_code {
  border-top: 12px solid #2d4779;
  color: #2d4779;
}

.selectedModel, .isActive {
  color: #ca152a !important;
}

.selectedModelBlue, .isActiveBlue {
  color: #2d4779 !important;
}

.row-table {
  margin-top: 50px;
}

@media screen and (min-width: 40em) {
  p {
    font-size: 1rem;
    line-height: 1.5625rem;
  }
}

@media screen and (min-width: 100em) {
  p {
    font-size: 1.3125rem;
    line-height: 2.0625rem;
  }
}

.parallax--caption--subtitle {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 100em) {
  .parallax--caption--subtitle {
    font-size: 2rem;
    margin-bottom: 35px;
  }
}

.profilo-box {
  position: relative;
}

.profilo-box .caption {
  padding: 5rem 0;
  width: 100%;
}

@media screen and (min-width: 40em) {
  .profilo-box .caption {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    padding: 0 30px;
  }
}

.profilo-box-text {
  padding: 0 5%;
}

@media screen and (min-width: 100em) {
  .profilo-box-text {
    padding: 0 20%;
  }
}

.bottom-caption {
  position: absolute;
  top: 88%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.bottom-caption .parallax--caption--subtitle {
  letter-spacing: 0.12em;
  font-weight: 400;
}

.plus-bruciatore {
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}

@media screen and (min-width: 64em) {
  .plus-combustibili-alternativi.unit, .plus-progettazione.unit, .plus-ricerca.unit {
    padding: 6.25rem 0;
  }
}

.plus-combustibili-alternativi h2, .plus-progettazione h2, .plus-ricerca h2 {
  font-size: 1.75rem;
}

@media screen and (min-width: 75em) {
  .plus-combustibili-alternativi h2, .plus-progettazione h2, .plus-ricerca h2 {
    font-size: 2rem;
  }
}

@media screen and (min-width: 100em) {
  .plus-combustibili-alternativi h2, .plus-progettazione h2, .plus-ricerca h2 {
    font-size: 2.625rem;
  }
}

@media screen and (min-width: 40em) {
  .plus-combustibili-alternativi-text, .plus-progettazione-text, .plus-ricerca-text {
    padding: 6.25rem 0;
  }
}

@media screen and (min-width: 100em) {
  .plus-combustibili-alternativi-text, .plus-progettazione-text, .plus-ricerca-text {
    padding: 9.375rem 0;
  }
}

.plus-combustibili-alternativi-text p, .plus-progettazione-text p, .plus-ricerca-text p {
  line-height: 1.4;
}

@media screen and (min-width: 75em) {
  .plus-combustibili-alternativi-text p, .plus-progettazione-text p, .plus-ricerca-text p {
    font-size: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .plus-combustibili-alternativi-text p, .plus-progettazione-text p, .plus-ricerca-text p {
    font-size: 1.625rem;
  }
}

.plus-combustibili-alternativi h2 {
  color: #7d8b24;
}

@media screen and (min-width: 40em) {
  .plus-combustibili-alternativi-text {
    margin-bottom: 6.25rem;
  }
}

@media screen and (min-width: 75em) {
  .plus-combustibili-alternativi-text {
    margin-bottom: 5rem;
  }
}

.plus-profilo-box-ricerca .caption {
  padding: 0 10%;
}

@media screen and (min-width: 40em) {
  .plus-profilo-box-ricerca p {
    font-size: 1rem;
    letter-spacing: 0.1em;
    line-height: 1.5;
  }
}

@media screen and (min-width: 64em) {
  .plus-profilo-box-ricerca p {
    font-size: 1.125rem;
    letter-spacing: 0.1em;
    line-height: 1.5;
  }
}

@media screen and (min-width: 100em) {
  .plus-profilo-box-ricerca p {
    font-size: 1.5rem;
  }
}

.parallax--plus-ambiente {
  margin-top: 3.125rem;
}

.parallax--plus-ambiente .parallax--caption--subtitle {
  font-weight: 400;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 40em) {
  .parallax--plus-ambiente .parallax--caption--subtitle {
    font-size: 2.6875rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--plus-ambiente .parallax--caption--subtitle {
    font-size: 3.5625rem;
  }
}

@media screen and (min-width: 40em) {
  .parallax--plus-progettazione p, .parallax--plus-ricerca-sviluppo p {
    font-size: 1.125rem;
    letter-spacing: 0.1em;
    line-height: 1.5;
  }
}

@media screen and (min-width: 100em) {
  .parallax--plus-progettazione p, .parallax--plus-ricerca-sviluppo p {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 40em) {
  .news {
    margin-top: 6.25rem;
  }
}

@media screen and (min-width: 40em) {
  .news-single {
    margin-bottom: 3.75rem;
  }
}

@media screen and (min-width: 75em) {
  .news-single {
    margin-bottom: 1.25rem;
  }
}

.news-single .news-box {
  display: block;
  border-bottom: 1px solid #5b5a5e;
  padding: 3.125rem 0;
  position: relative;
}

.news-single .news-box .news-title {
  font-weight: 400;
  color: #151e28;
  font-size: 1.375rem;
}

@media screen and (min-width: 100em) {
  .news-single .news-box .news-title {
    font-size: 1.8125rem;
  }
}

.news-single .news-box p {
  font-style: 0.9375rem;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 100em) {
  .news-single .news-box p {
    font-size: 1.25rem;
  }
}

.news-single .news-box .news-image {
  padding-top: 1.5625rem;
  border-top: 5px solid #151e28;
  margin: 1.5625rem 0;
}

.news-single .news-box .news-date {
  font-size: 0.9375rem;
  color: #151e28;
}

.read-more {
  color: #151e28;
  margin-top: 2.5rem;
  margin-bottom: 1.75rem;
  display: inline-block;
}

@media screen and (min-width: 100em) {
  .read-more {
    margin-bottom: 2.3125rem;
  }
}

@media screen and (min-width: 64em) {
  .read-more {
    line-height: 18px;
  }
}

@media screen and (min-width: 100em) {
  .read-more {
    line-height: inherit;
  }
}

.read-more:before {
  vertical-align: -50%;
  content: "";
  display: inline-block;
  width: 2.3125rem;
  height: 2.3125rem;
  background: url(../images/spritesheet/ico-arrow.svg) no-repeat 50% 50% #d0d3d6;
  background-size: 40%;
  right: 0;
  margin-right: 1.25rem;
}

@media screen and (min-width: 64em) {
  .read-more:before {
    width: 1.75rem;
    height: 1.75rem;
  }
}

@media screen and (min-width: 100em) {
  .read-more:before {
    width: 2.3125rem;
    height: 2.3125rem;
  }
}

.contatti-info {
  position: relative;
}

.contatti-info-content {
  padding: 3.125rem 0;
}

.contatti-info-content p {
  font-size: 1rem;
  line-height: 1.4;
}

@media screen and (min-width: 75em) {
  .contatti-info-content p {
    font-size: 0.875rem;
  }
}

@media screen and (min-width: 100em) {
  .contatti-info-content p {
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 40em) {
  .contatti-info-content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}

.form-contatti {
  background-color: #e8eaee;
  padding-top: 6.25rem;
}

.form-contatti .row {
  position: relative;
}

@media screen and (min-width: 40em) {
  .footer-decor {
    position: absolute;
    bottom: 0;
    z-index: 0;
  }
}

#google-container {
  max-height: 450px;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .profilo-box {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}

.scroll-results {
  width: 100%;
  height: 50px;
  position: absolute;
  left: 0;
  z-index: 4;
  display: block;
}

.scroll-results:hover {
  cursor: pointer;
}

@media screen and (min-width: 64em) {
  .scroll-results {
    display: none;
  }
}

.scroll-results-up {
  top: 0;
  background: #42484d url(../images/spritesheet/cd-top-arrow.svg) no-repeat center 50%;
}

.scroll-results-down {
  bottom: 0;
  background: #42484d url(../images/spritesheet/cd-top-arrow.svg) no-repeat center 50%;
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}

.assistenza-ricambi-text-title {
  font-size: 1.25rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 100em) {
  .assistenza-ricambi-text-title {
    font-size: 1.625rem;
  }
}

.button-accedi, .button-registrati {
  background-color: transparent;
  font-size: 1rem;
  font-weight: 400;
  margin-top: 1.25rem;
  line-height: 1.875rem;
  border: 2px solid #fff;
}

.text-accedi, .text-registrati {
  margin-top: 20px;
  margin-bottom: 0 !important;
}

.assistenza-testo-introduttivo p {
  line-height: 1.4;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 75em) {
  .assistenza-testo-introduttivo p {
    font-size: 1.25rem;
  }
}

@media screen and (min-width: 100em) {
  .assistenza-testo-introduttivo p {
    font-size: 1.625rem;
  }
}

form[name="form-area-riservata"] button {
  padding: 20px 20px !important;
}

.map-selection {
  padding: 3.4375rem 3.125rem;
  text-align: center;
}

.map-selection .map-container {
  height: 100%;
  width: 100%;
}

@media screen and (min-width: 64em) {
  .map-selection .map-container {
    width: 70%;
    float: right;
  }
}

.map-selection .map-container figure {
  height: 100%;
  width: 100%;
}

.map-selection .map-container figure svg {
  filter: drop-shadow(-10px 5px 10px rgba(0, 0, 0, 0.5));
  -webkit-filter: drop-shadow(-10px 5px 10px rgba(0, 0, 0, 0.5));
  width: 100%;
  height: 25rem;
  padding-top: 20px;
}

@media screen and (min-width: 64em) {
  .map-selection .map-container figure svg {
    height: 80%;
  }
}

.map-selection .map-container figure svg .land.active {
  stroke: #ca152a;
}

.map-selection .map-title {
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  font-weight: 500;
}

@media screen and (min-width: 100em) {
  .map-selection .map-title {
    font-size: 2rem;
  }
}

.map-selection .map-subtitle {
  font-size: 0.6875rem;
  letter-spacing: 0.15em;
  margin-top: 20px;
}

@media screen and (min-width: 100em) {
  .map-selection .map-subtitle {
    font-size: 0.9166666667rem;
  }
}

.map-results {
  position: relative;
  height: 520px;
  text-align: center;
}

@media screen and (min-width: 64em) {
  .map-results {
    height: 715px;
    text-align: left;
  }
}

.map-results .results-container {
  position: relative;
  overflow: hidden !important;
  margin: 4.375rem 3.125rem;
  max-height: 80%;
  max-width: 100%;
}

@media screen and (min-width: 64em) {
  .map-results .results-container {
    overflow-y: scroll !important;
  }
}

@media screen and (min-width: 100em) {
  .map-results .results-container {
    margin: 4.125rem 4.125rem;
  }
}

.map-results .result {
  margin-bottom: 25px;
}

.map-results .result-provincia p {
  line-height: 40px;
  background-color: #a2a4a8;
  padding: 0 15px;
  font-weight: 500;
}

.map-results p, .map-results a {
  color: #010101;
  font-size: 0.75rem;
  font-weight: 300;
  line-height: 1.4;
  letter-spacing: 0.1em;
  margin-bottom: 0;
}

@media screen and (min-width: 100em) {
  .map-results p, .map-results a {
    font-size: 1rem;
  }
}

.map-results a {
  text-decoration: none;
}

.map-results .result-title {
  font-weight: 400;
}

svg {
  -ms-touch-action: none;
      touch-action: none;
}

.jvectormap-container {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: initial;
  -ms-touch-action: none;
      touch-action: none;
}

.jvectormap-container .selected {
  fill: #ca152a;
}

.jvectormap-tip {
  position: absolute;
  display: none;
  border: solid 1px #CDCDCD;
  border-radius: 3px;
  background: #292929;
  color: white;
  font-family: sans-serif, Verdana;
  font-size: smaller;
  padding: 3px;
}

.jvectormap-goback {
  position: absolute;
  left: 10px;
  border-radius: 3px;
  background: #292929;
  padding: 3px;
  color: white;
  cursor: pointer;
  line-height: 10px;
  text-align: center;
  box-sizing: content-box;
}

.jvectormap-goback {
  bottom: 10px;
  z-index: 1000;
  padding: 6px;
}

.jvectormap-spinner {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: center no-repeat url(data:image/gif;base64,R0lGODlhIAAgAPMAAP///wAAAMbGxoSEhLa2tpqamjY2NlZWVtjY2OTk5Ly8vB4eHgQEBAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJCgAAACwAAAAAIAAgAAAE5xDISWlhperN52JLhSSdRgwVo1ICQZRUsiwHpTJT4iowNS8vyW2icCF6k8HMMBkCEDskxTBDAZwuAkkqIfxIQyhBQBFvAQSDITM5VDW6XNE4KagNh6Bgwe60smQUB3d4Rz1ZBApnFASDd0hihh12BkE9kjAJVlycXIg7CQIFA6SlnJ87paqbSKiKoqusnbMdmDC2tXQlkUhziYtyWTxIfy6BE8WJt5YJvpJivxNaGmLHT0VnOgSYf0dZXS7APdpB309RnHOG5gDqXGLDaC457D1zZ/V/nmOM82XiHRLYKhKP1oZmADdEAAAh+QQJCgAAACwAAAAAIAAgAAAE6hDISWlZpOrNp1lGNRSdRpDUolIGw5RUYhhHukqFu8DsrEyqnWThGvAmhVlteBvojpTDDBUEIFwMFBRAmBkSgOrBFZogCASwBDEY/CZSg7GSE0gSCjQBMVG023xWBhklAnoEdhQEfyNqMIcKjhRsjEdnezB+A4k8gTwJhFuiW4dokXiloUepBAp5qaKpp6+Ho7aWW54wl7obvEe0kRuoplCGepwSx2jJvqHEmGt6whJpGpfJCHmOoNHKaHx61WiSR92E4lbFoq+B6QDtuetcaBPnW6+O7wDHpIiK9SaVK5GgV543tzjgGcghAgAh+QQJCgAAACwAAAAAIAAgAAAE7hDISSkxpOrN5zFHNWRdhSiVoVLHspRUMoyUakyEe8PTPCATW9A14E0UvuAKMNAZKYUZCiBMuBakSQKG8G2FzUWox2AUtAQFcBKlVQoLgQReZhQlCIJesQXI5B0CBnUMOxMCenoCfTCEWBsJColTMANldx15BGs8B5wlCZ9Po6OJkwmRpnqkqnuSrayqfKmqpLajoiW5HJq7FL1Gr2mMMcKUMIiJgIemy7xZtJsTmsM4xHiKv5KMCXqfyUCJEonXPN2rAOIAmsfB3uPoAK++G+w48edZPK+M6hLJpQg484enXIdQFSS1u6UhksENEQAAIfkECQoAAAAsAAAAACAAIAAABOcQyEmpGKLqzWcZRVUQnZYg1aBSh2GUVEIQ2aQOE+G+cD4ntpWkZQj1JIiZIogDFFyHI0UxQwFugMSOFIPJftfVAEoZLBbcLEFhlQiqGp1Vd140AUklUN3eCA51C1EWMzMCezCBBmkxVIVHBWd3HHl9JQOIJSdSnJ0TDKChCwUJjoWMPaGqDKannasMo6WnM562R5YluZRwur0wpgqZE7NKUm+FNRPIhjBJxKZteWuIBMN4zRMIVIhffcgojwCF117i4nlLnY5ztRLsnOk+aV+oJY7V7m76PdkS4trKcdg0Zc0tTcKkRAAAIfkECQoAAAAsAAAAACAAIAAABO4QyEkpKqjqzScpRaVkXZWQEximw1BSCUEIlDohrft6cpKCk5xid5MNJTaAIkekKGQkWyKHkvhKsR7ARmitkAYDYRIbUQRQjWBwJRzChi9CRlBcY1UN4g0/VNB0AlcvcAYHRyZPdEQFYV8ccwR5HWxEJ02YmRMLnJ1xCYp0Y5idpQuhopmmC2KgojKasUQDk5BNAwwMOh2RtRq5uQuPZKGIJQIGwAwGf6I0JXMpC8C7kXWDBINFMxS4DKMAWVWAGYsAdNqW5uaRxkSKJOZKaU3tPOBZ4DuK2LATgJhkPJMgTwKCdFjyPHEnKxFCDhEAACH5BAkKAAAALAAAAAAgACAAAATzEMhJaVKp6s2nIkolIJ2WkBShpkVRWqqQrhLSEu9MZJKK9y1ZrqYK9WiClmvoUaF8gIQSNeF1Er4MNFn4SRSDARWroAIETg1iVwuHjYB1kYc1mwruwXKC9gmsJXliGxc+XiUCby9ydh1sOSdMkpMTBpaXBzsfhoc5l58Gm5yToAaZhaOUqjkDgCWNHAULCwOLaTmzswadEqggQwgHuQsHIoZCHQMMQgQGubVEcxOPFAcMDAYUA85eWARmfSRQCdcMe0zeP1AAygwLlJtPNAAL19DARdPzBOWSm1brJBi45soRAWQAAkrQIykShQ9wVhHCwCQCACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiRMDjI0Fd30/iI2UA5GSS5UDj2l6NoqgOgN4gksEBgYFf0FDqKgHnyZ9OX8HrgYHdHpcHQULXAS2qKpENRg7eAMLC7kTBaixUYFkKAzWAAnLC7FLVxLWDBLKCwaKTULgEwbLA4hJtOkSBNqITT3xEgfLpBtzE/jiuL04RGEBgwWhShRgQExHBAAh+QQJCgAAACwAAAAAIAAgAAAE7xDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfZiCqGk5dTESJeaOAlClzsJsqwiJwiqnFrb2nS9kmIcgEsjQydLiIlHehhpejaIjzh9eomSjZR+ipslWIRLAgMDOR2DOqKogTB9pCUJBagDBXR6XB0EBkIIsaRsGGMMAxoDBgYHTKJiUYEGDAzHC9EACcUGkIgFzgwZ0QsSBcXHiQvOwgDdEwfFs0sDzt4S6BK4xYjkDOzn0unFeBzOBijIm1Dgmg5YFQwsCMjp1oJ8LyIAACH5BAkKAAAALAAAAAAgACAAAATwEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GGl6NoiPOH16iZKNlH6KmyWFOggHhEEvAwwMA0N9GBsEC6amhnVcEwavDAazGwIDaH1ipaYLBUTCGgQDA8NdHz0FpqgTBwsLqAbWAAnIA4FWKdMLGdYGEgraigbT0OITBcg5QwPT4xLrROZL6AuQAPUS7bxLpoWidY0JtxLHKhwwMJBTHgPKdEQAACH5BAkKAAAALAAAAAAgACAAAATrEMhJaVKp6s2nIkqFZF2VIBWhUsJaTokqUCoBq+E71SRQeyqUToLA7VxF0JDyIQh/MVVPMt1ECZlfcjZJ9mIKoaTl1MRIl5o4CUKXOwmyrCInCKqcWtvadL2SYhyASyNDJ0uIiUd6GAULDJCRiXo1CpGXDJOUjY+Yip9DhToJA4RBLwMLCwVDfRgbBAaqqoZ1XBMHswsHtxtFaH1iqaoGNgAIxRpbFAgfPQSqpbgGBqUD1wBXeCYp1AYZ19JJOYgH1KwA4UBvQwXUBxPqVD9L3sbp2BNk2xvvFPJd+MFCN6HAAIKgNggY0KtEBAAh+QQJCgAAACwAAAAAIAAgAAAE6BDISWlSqerNpyJKhWRdlSAVoVLCWk6JKlAqAavhO9UkUHsqlE6CwO1cRdCQ8iEIfzFVTzLdRAmZX3I2SfYIDMaAFdTESJeaEDAIMxYFqrOUaNW4E4ObYcCXaiBVEgULe0NJaxxtYksjh2NLkZISgDgJhHthkpU4mW6blRiYmZOlh4JWkDqILwUGBnE6TYEbCgevr0N1gH4At7gHiRpFaLNrrq8HNgAJA70AWxQIH1+vsYMDAzZQPC9VCNkDWUhGkuE5PxJNwiUK4UfLzOlD4WvzAHaoG9nxPi5d+jYUqfAhhykOFwJWiAAAIfkECQoAAAAsAAAAACAAIAAABPAQyElpUqnqzaciSoVkXVUMFaFSwlpOCcMYlErAavhOMnNLNo8KsZsMZItJEIDIFSkLGQoQTNhIsFehRww2CQLKF0tYGKYSg+ygsZIuNqJksKgbfgIGepNo2cIUB3V1B3IvNiBYNQaDSTtfhhx0CwVPI0UJe0+bm4g5VgcGoqOcnjmjqDSdnhgEoamcsZuXO1aWQy8KAwOAuTYYGwi7w5h+Kr0SJ8MFihpNbx+4Erq7BYBuzsdiH1jCAzoSfl0rVirNbRXlBBlLX+BP0XJLAPGzTkAuAOqb0WT5AH7OcdCm5B8TgRwSRKIHQtaLCwg1RAAAOwAAAAAAAAAAAA==);
}

.jvectormap-legend-title {
  font-weight: bold;
  font-size: 14px;
  text-align: center;
}

.jvectormap-legend-cnt {
  position: absolute;
}

.jvectormap-legend-cnt-h {
  bottom: 0;
  right: 0;
}

.jvectormap-legend-cnt-v {
  top: 0;
  right: 0;
}

.jvectormap-legend {
  background: black;
  color: white;
  border-radius: 3px;
}

.jvectormap-legend-cnt-h .jvectormap-legend {
  float: left;
  margin: 0 10px 10px 0;
  padding: 3px 3px 1px 3px;
}

.jvectormap-legend-cnt-h .jvectormap-legend .jvectormap-legend-tick {
  float: left;
}

.jvectormap-legend-cnt-v .jvectormap-legend {
  margin: 10px 10px 0 0;
  padding: 3px;
}

.jvectormap-legend-cnt-h .jvectormap-legend-tick {
  width: 40px;
}

.jvectormap-legend-cnt-h .jvectormap-legend-tick-sample {
  height: 15px;
}

.jvectormap-legend-cnt-v .jvectormap-legend-tick-sample {
  height: 20px;
  width: 20px;
  display: inline-block;
  vertical-align: middle;
}

.jvectormap-legend-tick-text {
  font-size: 12px;
}

.jvectormap-legend-cnt-h .jvectormap-legend-tick-text {
  text-align: center;
}

.jvectormap-legend-cnt-v .jvectormap-legend-tick-text {
  display: inline-block;
  vertical-align: middle;
  line-height: 20px;
  padding-left: 3px;
}

.map-selection .map-container figure svg {
  height: 100%;
}

@media screen and (min-width: 0em) and (max-width: 39.9375em) {
  .cover.spacer-bottom100 {
    margin-bottom: 3.125rem;
  }
}

.parallax--home-assistenza .parallax--caption--title {
  font-size: 1.5rem;
  letter-spacing: 0.15em;
}

@media screen and (min-width: 100em) {
  .parallax--home-assistenza .parallax--caption--title {
    font-size: 2rem;
  }
}

.parallax--home-assistenza .parallax--caption--subtitle {
  font-size: 1.125rem;
  letter-spacing: 0.1em;
  color: #5b5a5e;
}

@media screen and (min-width: 100em) {
  .parallax--home-assistenza .parallax--caption--subtitle {
    font-size: 1.5rem;
  }
}

@media screen and (min-width: 64em) {
  .parallax--home-profilo .button {
    margin-top: 6.25rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-profilo .button {
    margin-top: 170px;
    margin-bottom: 0;
  }
}

.parallax--home-profilo .parallax--caption--subtitle {
  letter-spacing: 0.15em;
  margin-bottom: 0;
}

@media screen and (min-width: 100em) {
  .parallax--home-profilo .parallax--caption--subtitle {
    font-size: 1.75rem;
  }
}

.parallax--home-made-in-italy .parallax--caption--title {
  margin-bottom: 2.5rem;
}

@media screen and (min-width: 64em) {
  .parallax--home-made-in-italy .parallax--caption--title {
    font-size: 2.25rem;
    margin-bottom: 4.375rem;
  }
  .parallax--home-made-in-italy .parallax--caption--title-big {
    font-size: 3.75rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-made-in-italy .parallax--caption--title {
    font-size: 3rem;
  }
  .parallax--home-made-in-italy .parallax--caption--title-big {
    font-size: 5rem;
  }
}

@media screen and (min-width: 64em) {
  .parallax--home-made-in-italy .parallax--caption--text {
    font-size: 1rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-made-in-italy .parallax--caption--text {
    font-size: 1.25rem;
    line-height: 2;
  }
}

.parallax--home-ricerca-bruciatore .cd-dropdown ul {
  -ms-overflow-style: none;
  overflow: auto;
  max-height: 300px;
}

.parallax--home-ricerca-bruciatore .cd-dropdown ul::-webkit-scrollbar {
  width: 0px;
  background: transparent;
}

.parallax--home-ricerca-bruciatore .cd-dropdown ul:after {
  content: "";
  display: block;
  width: 100%;
  height: 32px;
}

@media screen and (min-width: 100em) {
  .parallax--home-ricerca-bruciatore {
    padding-bottom: 4.375rem;
  }
}

.parallax--home-ricerca-bruciatore .title {
  letter-spacing: 0.15em;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.2;
}

.parallax--home-ricerca-bruciatore label {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.parallax--home-ricerca-bruciatore .search-panel--title {
  letter-spacing: 0.1em;
  font-weight: 700;
  font-size: 1.0625rem;
}

.parallax--home-ricerca-bruciatore .search-panel--text {
  letter-spacing: 0.1em;
  font-weight: 500;
  font-size: 0.875rem;
}

.parallax--home-ricerca-bruciatore .button {
  font-size: 0.75rem;
}

@media (max-width: 1599px) {
  .parallax--home-ricerca-bruciatore .search-panel-column-left .button-container {
    text-align: center;
  }
}

.parallax--home-ricerca-bruciatore .search-panel-column-left .button {
  margin-left: 0;
}

@media screen and (min-width: 100em) {
  .parallax--home-ricerca-bruciatore .search-panel-column-left .button {
    margin-left: 28%;
  }
}

@media screen and (min-width: 40em) {
  .parallax--home-ricerca-bruciatore label {
    display: inline-block;
    width: 28%;
    float: left;
  }
  .parallax--home-ricerca-bruciatore select {
    width: 72%;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-ricerca-bruciatore .title {
    font-size: 2rem;
  }
  .parallax--home-ricerca-bruciatore .search-panel--title {
    font-size: 1.4375rem;
  }
  .parallax--home-ricerca-bruciatore .search-panel--text {
    font-size: 1rem;
  }
  .parallax--home-ricerca-bruciatore .button {
    font-size: 1rem;
  }
}

.parallax--home-news p a {
  margin: 0;
}

@media screen and (min-width: 100em) {
  .parallax--home-news .parallax--caption--label {
    margin-bottom: 90px;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-news .button {
    margin-top: 140px !important;
  }
}

.parallax--home-news .parallax--caption--text {
  margin-top: 15px;
}

@media screen and (min-width: 75em) {
  .parallax--home-news .parallax--caption--text {
    font-size: 1rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-news .parallax--caption--text {
    font-size: 1.3125rem;
  }
}

.parallax--home-news .parallax--caption--subtitle {
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.6;
}

@media screen and (min-width: 100em) {
  .parallax--home-news .parallax--caption--subtitle {
    font-size: 1.75rem;
  }
}

.parallax--home-news .parallax--caption--subtitle span {
  letter-spacing: 0.05em;
}

@media screen and (min-width: 100em) {
  .parallax--home-news .button {
    margin-top: 6.25rem;
  }
}

@media screen and (min-width: 100em) {
  .parallax--home-assistenza .parallax--caption--subtitle {
    margin-bottom: 0;
  }
}

#risultati-ricerca-bruciatore {
  padding: 3.125rem 0 6.25rem 0;
  display: none;
}

#risultati-ricerca-bruciatore .disabledLink:hover {
  color: #5b5a5e;
  cursor: default;
}

#risultati-ricerca-bruciatore ul {
  list-style: none;
}

#risultati-ricerca-bruciatore ul li {
  padding: 5px 0;
  margin-bottom: 10px;
  border-bottom: 1px solid #e8eaee;
}

#risultati-ricerca-bruciatore ul li:after {
  content: "";
  display: table;
  clear: both;
}

@media screen and (min-width: 40em) {
  #risultati-ricerca-bruciatore ul li {
    margin-bottom: 0px;
    padding: 0;
  }
}

#risultati-ricerca-bruciatore ul li h3 {
  font-size: 15px;
}

#risultati-ricerca-bruciatore ul li p i {
  font-size: 15px;
}

#risultati-ricerca-bruciatore ul li p a {
  font-size: 14px;
}

#risultati-ricerca-bruciatore ul li h3, #risultati-ricerca-bruciatore ul li p {
  margin: 15px 0;
}

@media screen and (min-width: 64em) {
  #risultati-ricerca-bruciatore ul li h3, #risultati-ricerca-bruciatore ul li p {
    width: 50%;
    display: inline-block;
    float: left;
  }
}

#risultati-ricerca-bruciatore h2 {
  color: #141d28;
  margin-bottom: 40px;
}

#risultati-ricerca-bruciatore h3 {
  font-size: 1rem;
  font-weight: 500;
}

#risultati-ricerca-bruciatore h3 a {
  color: #010101;
}

#risultati-ricerca-bruciatore p {
  line-height: 1.5;
}

#risultati-ricerca-bruciatore p a {
  text-decoration: none;
  font-size: 1rem;
}

#risultati-ricerca-bruciatore i {
  margin-right: 15px;
  font-size: 1.375rem;
}

h2.download-title {
  font-size: 1.75rem;
}

@media screen and (min-width: 40em) {
  h2.download-title {
    font-size: 2rem;
  }
}

@media screen and (min-width: 100em) {
  h2.download-title {
    font-size: 2.625rem;
  }
}

.table-download tr td:first-child {
  font-weight: 400;
}

.table-download tr td:nth-child(2) {
  font-weight: 700;
}

.table-download tr td:last-child {
  font-weight: 700;
}

.table-download tr td.new-item {
  color: #ca152a;
}
/*# sourceMappingURL=style.min.css.map */