@charset "UTF-8";
/* typography measures */
/* text sizes */
/* radiuses */
/* icons */
/* animation stuff */
/* block sizes */
/* forms */
/* opacity */
/* the website's header take the height from the logo  */
/* cards */
/* STC Brand */
/*
 * colors
 */
/* overlays */
/* borders */
/* forms */
/* block backgrounds */
/* wireframe */
/* shadows */
/* Hamburger Menu */
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400;1,700&family=Oswald:wght@400;500&display=swap");
:root {
  --primary-color: #DA291C;
  --color-1: #5fad56;
  --color-2: #f2c14e;
  --color-3: #f78154;
  --color-4: #b4436c;
  --subtle-color: #eaf5f9 ;
}

.title-font {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
}

.copy-font {
  font-family: "Lato", sans-serif;
  font-weight: normal;
}

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

/**
 * HTML5 display-role reset for older browsers
 */
article, aside, details, figcaption, figure,
footer, header, menu, nav, section,
main, summary {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

.hide {
  display: none;
}

.show {
  display: block;
}

.display-block {
  display: block;
}

/*
 * compass compatibility
 */
*, *:after, *:before {
  box-sizing: border-box;
}

.container {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.container.with-content, .field-group h3.container, .hero .container.content {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.row {
  width: 100%;
  display: table;
  table-layout: fixed;
  padding: 0;
  margin: 0;
}
.row.collapse .col {
  padding-left: 0;
  padding-right: 0;
}
.row.no-margin > [class^=col]:first-child {
  padding-left: 0;
}
.row.no-margin > [class^=col]:last-child {
  padding-right: 0;
}

.col-1 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 8.3333333333%;
  vertical-align: top;
}

.row.collapse .col-1 {
  padding-left: 0;
  padding-right: 0;
}

.col-2 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 16.6666666667%;
  vertical-align: top;
}

.row.collapse .col-2 {
  padding-left: 0;
  padding-right: 0;
}

.col-3 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 25%;
  vertical-align: top;
}

.row.collapse .col-3 {
  padding-left: 0;
  padding-right: 0;
}

.col-4 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 33.3333333333%;
  vertical-align: top;
}

.row.collapse .col-4 {
  padding-left: 0;
  padding-right: 0;
}

.col-5 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 41.6666666667%;
  vertical-align: top;
}

.row.collapse .col-5 {
  padding-left: 0;
  padding-right: 0;
}

.col-6 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 50%;
  vertical-align: top;
}

.row.collapse .col-6 {
  padding-left: 0;
  padding-right: 0;
}

.col-7 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 58.3333333333%;
  vertical-align: top;
}

.row.collapse .col-7 {
  padding-left: 0;
  padding-right: 0;
}

.col-8 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 66.6666666667%;
  vertical-align: top;
}

.row.collapse .col-8 {
  padding-left: 0;
  padding-right: 0;
}

.col-9 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 75%;
  vertical-align: top;
}

.row.collapse .col-9 {
  padding-left: 0;
  padding-right: 0;
}

.col-10 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 83.3333333333%;
  vertical-align: top;
}

.row.collapse .col-10 {
  padding-left: 0;
  padding-right: 0;
}

.col-11 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 91.6666666667%;
  vertical-align: top;
}

.row.collapse .col-11 {
  padding-left: 0;
  padding-right: 0;
}

.col-12 {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: 100%;
  vertical-align: top;
}

.row.collapse .col-12 {
  padding-left: 0;
  padding-right: 0;
}

/* push and pull, desktop only */
@media only screen and (min-width: 941px) {
  .push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .push-3 {
    position: relative;
    left: 25%;
  }
  .pull-3 {
    position: relative;
    left: -25%;
  }
  .push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .push-6 {
    position: relative;
    left: 50%;
  }
  .pull-6 {
    position: relative;
    left: -50%;
  }
  .push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .push-9 {
    position: relative;
    left: 75%;
  }
  .pull-9 {
    position: relative;
    left: -75%;
  }
  .push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .push-12 {
    position: relative;
    left: 100%;
  }
  .pull-12 {
    position: relative;
    left: -100%;
  }
}
.row.border > *[class*=col] {
  border: 1px solid #222;
}

.row.vcenter {
  vertical-align: middle;
}
.row.vcenter > *[class*=col] {
  vertical-align: middle;
}

.row.vbottom {
  vertical-align: bottom;
}
.row.vbottom > *[class*=col] {
  vertical-align: bottom;
}

.row.vtop {
  vertical-align: top;
}
.row.vtop > *[class*=col] {
  vertical-align: top;
}

.row.auto {
  width: 100%;
  table-layout: auto;
}

.col {
  display: table-cell;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.col.center {
  text-align: center;
}

.vcenter {
  vertical-align: middle;
}

.col-full {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.n-up {
  padding: 0;
}
.n-up:after {
  content: "";
  display: table;
  clear: both;
}
.n-up {
  margin-left: 0;
  margin-right: 0;
}
.n-up > li {
  width: 33.3%;
  display: block;
  float: left;
  margin-bottom: 1.5rem;
  vertical-align: top;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.n-up.single-short-row {
  text-align: center;
}
.n-up.single-short-row > li {
  display: inline-block;
  text-align: left;
  float: none;
}

.up-1 > li {
  width: 100%;
}
.up-1 > li:nth-child(1n+1) {
  clear: left;
}

.up-2 > li {
  width: 50%;
}
.up-2 > li:nth-child(2n+1) {
  clear: left;
}

.up-3 > li {
  width: 33.3333333333%;
}
.up-3 > li:nth-child(3n+1) {
  clear: left;
}

.up-4 > li {
  width: 25%;
}
.up-4 > li:nth-child(4n+1) {
  clear: left;
}

.up-5 > li {
  width: 20%;
}
.up-5 > li:nth-child(5n+1) {
  clear: left;
}

.up-6 > li {
  width: 16.6666666667%;
}
.up-6 > li:nth-child(6n+1) {
  clear: left;
}

.up-7 > li {
  width: 14.2857142857%;
}
.up-7 > li:nth-child(7n+1) {
  clear: left;
}

.up-8 > li {
  width: 12.5%;
}
.up-8 > li:nth-child(8n+1) {
  clear: left;
}

.up-9 > li {
  width: 11.1111111111%;
}
.up-9 > li:nth-child(9n+1) {
  clear: left;
}

.up-10 > li {
  width: 10%;
}
.up-10 > li:nth-child(10n+1) {
  clear: left;
}

.up-11 > li {
  width: 9.0909090909%;
}
.up-11 > li:nth-child(11n+1) {
  clear: left;
}

.up-12 > li {
  width: 8.3333333333%;
}
.up-12 > li:nth-child(12n+1) {
  clear: left;
}

.grid-up-1 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(1, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-1.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-2 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(2, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-2.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-3 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-3.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-4 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-4.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-5 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(5, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-5.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-6 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(6, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-6.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-7 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(7, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-7.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-8 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(8, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-8.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-9 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(9, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-9.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-10 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(10, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-10.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-11 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(11, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-11.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-12 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(12, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.grid-up-12.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-auto {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  align-items: start;
}
.grid-up-auto.grid-equalize-heights {
  align-items: stretch;
}

.grid-up-auto-10 {
  max-width: 100%;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
  grid-template-rows: auto;
  row-gap: 1.5rem;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  align-items: start;
}
.grid-up-auto-10.grid-equalize-heights {
  align-items: stretch;
}

@media only screen and (max-width: 940px) {
  .row {
    display: table;
    width: 100%;
  }
  .row.mobile-stack {
    display: block;
  }
  .col {
    display: block;
    width: 100%;
  }
  .mob-stack {
    display: block;
  }
  .col-1 {
    display: block;
    width: 100%;
  }
  .col-2 {
    display: block;
    width: 100%;
  }
  .col-3 {
    display: block;
    width: 100%;
  }
  .col-4 {
    display: block;
    width: 100%;
  }
  .col-5 {
    display: block;
    width: 100%;
  }
  .col-6 {
    display: block;
    width: 100%;
  }
  .col-7 {
    display: block;
    width: 100%;
  }
  .col-8 {
    display: block;
    width: 100%;
  }
  .col-9 {
    display: block;
    width: 100%;
  }
  .col-10 {
    display: block;
    width: 100%;
  }
  .col-11 {
    display: block;
    width: 100%;
  }
  .col-12 {
    display: block;
    width: 100%;
  }
  .mob-1 {
    width: 8.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-2 {
    width: 16.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-3 {
    width: 25%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-4 {
    width: 33.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-5 {
    width: 41.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-6 {
    width: 50%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-7 {
    width: 58.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-8 {
    width: 66.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-9 {
    width: 75%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-10 {
    width: 83.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-11 {
    width: 91.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .mob-12 {
    width: 100%;
    display: table-cell;
    vertical-align: top;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .n-up > li,
  .n-up.auto-width > li {
    display: block;
    width: 100%;
    float: none;
  }
  .mobile-n-up-1 > li {
    width: 100%;
  }
  .mobile-n-up-1 > li:nth-child(1n+1) {
    clear: left;
  }
  .mobile-n-up-2 > li {
    width: 50%;
  }
  .mobile-n-up-2 > li:nth-child(2n+1) {
    clear: left;
  }
  .mobile-n-up-3 > li {
    width: 33.3333333333%;
  }
  .mobile-n-up-3 > li:nth-child(3n+1) {
    clear: left;
  }
  .mobile-n-up-4 > li {
    width: 25%;
  }
  .mobile-n-up-4 > li:nth-child(4n+1) {
    clear: left;
  }
  .mobile-n-up-5 > li {
    width: 20%;
  }
  .mobile-n-up-5 > li:nth-child(5n+1) {
    clear: left;
  }
  .mobile-n-up-6 > li {
    width: 16.6666666667%;
  }
  .mobile-n-up-6 > li:nth-child(6n+1) {
    clear: left;
  }
  .mobile-n-up-7 > li {
    width: 14.2857142857%;
  }
  .mobile-n-up-7 > li:nth-child(7n+1) {
    clear: left;
  }
  .mobile-n-up-8 > li {
    width: 12.5%;
  }
  .mobile-n-up-8 > li:nth-child(8n+1) {
    clear: left;
  }
  .mobile-n-up-9 > li {
    width: 11.1111111111%;
  }
  .mobile-n-up-9 > li:nth-child(9n+1) {
    clear: left;
  }
  .mobile-n-up-10 > li {
    width: 10%;
  }
  .mobile-n-up-10 > li:nth-child(10n+1) {
    clear: left;
  }
  .mobile-n-up-11 > li {
    width: 9.0909090909%;
  }
  .mobile-n-up-11 > li:nth-child(11n+1) {
    clear: left;
  }
  .mobile-n-up-12 > li {
    width: 8.3333333333%;
  }
  .mobile-n-up-12 > li:nth-child(12n+1) {
    clear: left;
  }
  .grid-up-1 {
    display: block;
  }
  .grid-up-1 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-2 {
    display: block;
  }
  .grid-up-2 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-3 {
    display: block;
  }
  .grid-up-3 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-4 {
    display: block;
  }
  .grid-up-4 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-5 {
    display: block;
  }
  .grid-up-5 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-6 {
    display: block;
  }
  .grid-up-6 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-7 {
    display: block;
  }
  .grid-up-7 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-8 {
    display: block;
  }
  .grid-up-8 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-9 {
    display: block;
  }
  .grid-up-9 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-10 {
    display: block;
  }
  .grid-up-10 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-11 {
    display: block;
  }
  .grid-up-11 > * {
    margin-bottom: 1.5rem;
  }
  .grid-up-12 {
    display: block;
  }
  .grid-up-12 > * {
    margin-bottom: 1.5rem;
  }
  .mobile-grid-up-1 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(1, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-1.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-2 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-2.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-3 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(3, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-3.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-4 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(4, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-4.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-5 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(5, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-5.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-6 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(6, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-6.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-7 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(7, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-7.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-8 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(8, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-8.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-9 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(9, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-9.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-10 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(10, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-10.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-11 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(11, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-11.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-12 {
    max-width: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    display: grid;
    grid-template-columns: repeat(12, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: 1.5rem;
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
  .mobile-grid-up-12.grid-equalize-heights {
    align-items: stretch;
  }
}
/**
 *
FOR REFERENCE

.col-1 {
  width: 8.333333%;
  display: table-cell;
}

.col-2 {
  width: 16.666667%;
display: table-cell;
}

.col-3 {
  width: 25%;
  display: table-cell;
}

.col-4 {
  width: 33.333333%;
  display: table-cell;
}

.col-5 {
  width: 41.666667%;
  display: table-cell;
}

.col-6 {
  width: 50%;
  display: table-cell;
}

.col-7 {
  width: 58.333333%;
  display: table-cell;
}

.col-8 {
  width: 66.666667%;
  display: table-cell;
}

.col-9 {
  width: 75%;
  display: table-cell;
}

.col-10 {
  width: 83.333333%;
  display: table-cell;
}

.col-11 {
  width: 91.666667%;
  display: table-cell;
}

.col-12 {
  width: 100%;
  display: table-cell;
}

*/
.iconFont {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: 0.2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: 0.2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}

/* sizes */
/* example of glyph */
.iconArrowRight {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: 0.2em;
  text-align: center;
  /* opacity: .8; */
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: 0.2em;
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
  content: "\eddb";
}

.huge-text {
  font-size: 2.44rem;
}

.large-text {
  font-size: 1.44rem;
}

.big-text {
  font-size: 2rem;
}

.small-text {
  font-size: 0.75rem;
}

.tiny-text {
  font-size: 0.5rem;
}

.normal-text {
  font-size: 1rem;
}

.hero-text {
  font-size: 3rem;
}

.bold-text {
  font-weight: 700;
}
.bold-text strong {
  color: var(--primary-color);
}

/* text-container */
.text-container, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-image-text .component--text, .component-type--pzt-infographic .infographic--body, .component-type--text .component--content, .node-glossario.view-mode-full .component-type--page-header .component--content,
.component-type--pzt-downloads .component--content, .cke_editable {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  hyphens: none;
  max-width: 40em;
}
.text-container.full-page, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body, .component-type--pzt-blockquote .component--content .full-page.component--text, .component-type--pzt-image-text .full-page.component--text, .component-type--pzt-infographic .full-page.infographic--body, .component-type--text .full-page.component--content, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content,
.component-type--pzt-downloads .full-page.component--content, .full-page.cke_editable {
  max-width: 100%;
  display: grid;
  grid-template-columns: 1fr 40em 1fr;
}
.text-container.full-page > *, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body > *, .component-type--pzt-blockquote .component--content .full-page.component--text > *, .component-type--pzt-image-text .full-page.component--text > *, .component-type--pzt-infographic .full-page.infographic--body > *, .component-type--text .full-page.component--content > *, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content > *,
.component-type--pzt-downloads .full-page.component--content > *, .full-page.cke_editable > * {
  grid-column: 2;
}
.text-container.full-page .full-bleed, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-bleed, .component-type--pzt-blockquote .component--content .full-page.component--text .full-bleed, .component-type--pzt-image-text .full-page.component--text .full-bleed, .component-type--pzt-infographic .full-page.infographic--body .full-bleed, .component-type--text .full-page.component--content .full-bleed, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-bleed,
.component-type--pzt-downloads .full-page.component--content .full-bleed, .full-page.cke_editable .full-bleed {
  grid-column: 1/4;
  height: auto;
}
.text-container.full-page .full-bleed figcaption, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-bleed figcaption, .component-type--pzt-blockquote .component--content .full-page.component--text .full-bleed figcaption, .component-type--pzt-image-text .full-page.component--text .full-bleed figcaption, .component-type--pzt-infographic .full-page.infographic--body .full-bleed figcaption, .component-type--text .full-page.component--content .full-bleed figcaption, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-bleed figcaption,
.component-type--pzt-downloads .full-page.component--content .full-bleed figcaption, .full-page.cke_editable .full-bleed figcaption {
  padding-right: 1.5rem;
}
.text-container.full-page .off-left, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-left, .component-type--pzt-blockquote .component--content .full-page.component--text .off-left, .component-type--pzt-image-text .full-page.component--text .off-left, .component-type--pzt-infographic .full-page.infographic--body .off-left, .component-type--text .full-page.component--content .off-left, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-left,
.component-type--pzt-downloads .full-page.component--content .off-left, .full-page.cke_editable .off-left {
  grid-column: 1/3;
  height: auto;
}
.text-container.full-page .off-right, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-right, .component-type--pzt-blockquote .component--content .full-page.component--text .off-right, .component-type--pzt-image-text .full-page.component--text .off-right, .component-type--pzt-infographic .full-page.infographic--body .off-right, .component-type--text .full-page.component--content .off-right, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-right,
.component-type--pzt-downloads .full-page.component--content .off-right, .full-page.cke_editable .off-right {
  grid-column: 2/4;
  height: auto;
}
.text-container.full-page .off-right figcaption, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-right figcaption, .component-type--pzt-blockquote .component--content .full-page.component--text .off-right figcaption, .component-type--pzt-image-text .full-page.component--text .off-right figcaption, .component-type--pzt-infographic .full-page.infographic--body .off-right figcaption, .component-type--text .full-page.component--content .off-right figcaption, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-right figcaption,
.component-type--pzt-downloads .full-page.component--content .off-right figcaption, .full-page.cke_editable .off-right figcaption {
  text-align: left;
}
.text-container.full-page .full-bleed img, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-bleed img, .component-type--pzt-blockquote .component--content .full-page.component--text .full-bleed img, .component-type--pzt-image-text .full-page.component--text .full-bleed img, .component-type--pzt-infographic .full-page.infographic--body .full-bleed img, .component-type--text .full-page.component--content .full-bleed img, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-bleed img,
.component-type--pzt-downloads .full-page.component--content .full-bleed img, .full-page.cke_editable .full-bleed img,
.text-container.full-page .full-bleed svg,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-bleed svg,
.component-type--pzt-blockquote .component--content .full-page.component--text .full-bleed svg,
.component-type--pzt-image-text .full-page.component--text .full-bleed svg,
.component-type--pzt-infographic .full-page.infographic--body .full-bleed svg,
.component-type--text .full-page.component--content .full-bleed svg,
.node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-bleed svg,
.component-type--pzt-downloads .full-page.component--content .full-bleed svg,
.full-page.cke_editable .full-bleed svg,
.text-container.full-page .off-left img,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-left img,
.component-type--pzt-blockquote .component--content .full-page.component--text .off-left img,
.component-type--pzt-image-text .full-page.component--text .off-left img,
.component-type--pzt-infographic .full-page.infographic--body .off-left img,
.component-type--text .full-page.component--content .off-left img,
.node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-left img,
.component-type--pzt-downloads .full-page.component--content .off-left img,
.full-page.cke_editable .off-left img,
.text-container.full-page .off-left svg,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-left svg,
.component-type--pzt-blockquote .component--content .full-page.component--text .off-left svg,
.component-type--pzt-image-text .full-page.component--text .off-left svg,
.component-type--pzt-infographic .full-page.infographic--body .off-left svg,
.component-type--text .full-page.component--content .off-left svg,
.node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-left svg,
.component-type--pzt-downloads .full-page.component--content .off-left svg,
.full-page.cke_editable .off-left svg,
.text-container.full-page .off-right img,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-right img,
.component-type--pzt-blockquote .component--content .full-page.component--text .off-right img,
.component-type--pzt-image-text .full-page.component--text .off-right img,
.component-type--pzt-infographic .full-page.infographic--body .off-right img,
.component-type--text .full-page.component--content .off-right img,
.node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-right img,
.component-type--pzt-downloads .full-page.component--content .off-right img,
.full-page.cke_editable .off-right img,
.text-container.full-page .off-right svg,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .off-right svg,
.component-type--pzt-blockquote .component--content .full-page.component--text .off-right svg,
.component-type--pzt-image-text .full-page.component--text .off-right svg,
.component-type--pzt-infographic .full-page.infographic--body .off-right svg,
.component-type--text .full-page.component--content .off-right svg,
.node-glossario.view-mode-full .component-type--page-header .full-page.component--content .off-right svg,
.component-type--pzt-downloads .full-page.component--content .off-right svg,
.full-page.cke_editable .off-right svg {
  width: 100%;
  height: auto;
}
.text-container.full-page .full-fixed, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-fixed, .component-type--pzt-blockquote .component--content .full-page.component--text .full-fixed, .component-type--pzt-image-text .full-page.component--text .full-fixed, .component-type--pzt-infographic .full-page.infographic--body .full-fixed, .component-type--text .full-page.component--content .full-fixed, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-fixed,
.component-type--pzt-downloads .full-page.component--content .full-fixed, .full-page.cke_editable .full-fixed {
  overflow: hidden;
  position: relative;
  grid-column: 1/4;
  min-height: 100vh;
  background-position: 50% 50%;
  background-size: cover;
  background-attachment: fixed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.text-container.full-page .full-fixed img, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-fixed img, .component-type--pzt-blockquote .component--content .full-page.component--text .full-fixed img, .component-type--pzt-image-text .full-page.component--text .full-fixed img, .component-type--pzt-infographic .full-page.infographic--body .full-fixed img, .component-type--text .full-page.component--content .full-fixed img, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-fixed img,
.component-type--pzt-downloads .full-page.component--content .full-fixed img, .full-page.cke_editable .full-fixed img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.text-container.full-page .full-fixed figcaption, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .full-page.field--field-body .full-fixed figcaption, .component-type--pzt-blockquote .component--content .full-page.component--text .full-fixed figcaption, .component-type--pzt-image-text .full-page.component--text .full-fixed figcaption, .component-type--pzt-infographic .full-page.infographic--body .full-fixed figcaption, .component-type--text .full-page.component--content .full-fixed figcaption, .node-glossario.view-mode-full .component-type--page-header .full-page.component--content .full-fixed figcaption,
.component-type--pzt-downloads .full-page.component--content .full-fixed figcaption, .full-page.cke_editable .full-fixed figcaption {
  color: #FFFFFF;
  position: absolute;
  font-size: 4vw;
  padding: 1.5rem;
  text-align: left;
  color: #FFFFFF;
  font-weight: 700;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
}
.text-container table th, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body table th, .component-type--pzt-blockquote .component--content .component--text table th, .component-type--pzt-image-text .component--text table th, .component-type--pzt-infographic .infographic--body table th, .component-type--text .component--content table th, .node-glossario.view-mode-full .component-type--page-header .component--content table th,
.component-type--pzt-downloads .component--content table th, .cke_editable table th {
  font-weight: bold;
  text-align: left;
}
.text-container table td, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body table td, .component-type--pzt-blockquote .component--content .component--text table td, .component-type--pzt-image-text .component--text table td, .component-type--pzt-infographic .infographic--body table td, .component-type--text .component--content table td, .node-glossario.view-mode-full .component-type--page-header .component--content table td,
.component-type--pzt-downloads .component--content table td, .cke_editable table td,
.text-container table th,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body table th,
.component-type--pzt-blockquote .component--content .component--text table th,
.component-type--pzt-image-text .component--text table th,
.component-type--pzt-infographic .infographic--body table th,
.component-type--text .component--content table th,
.node-glossario.view-mode-full .component-type--page-header .component--content table th,
.component-type--pzt-downloads .component--content table th,
.cke_editable table th {
  padding: 0.25em 1em 0.25em 0.25em;
  vertical-align: top;
  border-bottom: 1px dotted #009ca6;
}
.text-container figure figcaption, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body figure figcaption, .component-type--pzt-blockquote .component--content .component--text figure figcaption, .component-type--pzt-image-text .component--text figure figcaption, .component-type--pzt-infographic .infographic--body figure figcaption, .component-type--text .component--content figure figcaption, .node-glossario.view-mode-full .component-type--page-header .component--content figure figcaption,
.component-type--pzt-downloads .component--content figure figcaption, .cke_editable figure figcaption {
  font-size: 0.75rem;
  text-align: right;
}
.text-container figure, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body figure, .component-type--pzt-blockquote .component--content .component--text figure, .component-type--pzt-image-text .component--text figure, .component-type--pzt-infographic .infographic--body figure, .component-type--text .component--content figure, .node-glossario.view-mode-full .component-type--page-header .component--content figure,
.component-type--pzt-downloads .component--content figure, .cke_editable figure {
  margin-bottom: 2rem;
}
.text-container, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-image-text .component--text, .component-type--pzt-infographic .infographic--body, .component-type--text .component--content, .node-glossario.view-mode-full .component-type--page-header .component--content,
.component-type--pzt-downloads .component--content, .cke_editable {
  line-height: 1.64;
}
.text-container a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .component-type--pzt-blockquote .component--content .component--text a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .component-type--pzt-image-text .component--text a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .component-type--pzt-infographic .infographic--body a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .component-type--text .component--content a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .node-glossario.view-mode-full .component-type--page-header .component--content a:not(.action):not(.webform-submit):not(input[type=submit].button--primary),
.component-type--pzt-downloads .component--content a:not(.action):not(.webform-submit):not(input[type=submit].button--primary), .cke_editable a:not(.action):not(.webform-submit):not(input[type=submit].button--primary) {
  color: #222;
}
.text-container blockquote, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body blockquote, .component-type--pzt-blockquote .component--content .component--text blockquote, .component-type--pzt-image-text .component--text blockquote, .component-type--pzt-infographic .infographic--body blockquote, .component-type--text .component--content blockquote, .node-glossario.view-mode-full .component-type--page-header .component--content blockquote,
.component-type--pzt-downloads .component--content blockquote, .cke_editable blockquote {
  display: block;
  position: relative;
  padding: 3rem 0 3rem 3rem;
}
.text-container h1, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h1, .component-type--pzt-blockquote .component--content .component--text h1, .component-type--pzt-image-text .component--text h1, .component-type--pzt-infographic .infographic--body h1, .component-type--text .component--content h1, .node-glossario.view-mode-full .component-type--page-header .component--content h1,
.component-type--pzt-downloads .component--content h1, .cke_editable h1 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: 3rem;
  padding-bottom: 0.5em;
}
.text-container, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-image-text .component--text, .component-type--pzt-infographic .infographic--body, .component-type--text .component--content, .node-glossario.view-mode-full .component-type--page-header .component--content,
.component-type--pzt-downloads .component--content, .cke_editable {
  /*
  * headings

   h2 {
       font-size: 2em;
       @include titleFont;
       //text-transform: uppercase;
   }
   h3 {
       font-size: 1.25em;
       @include titleFont;
       margin-top: 1em;
   }
    */
}
.text-container h4, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h4, .component-type--pzt-blockquote .component--content .component--text h4, .component-type--pzt-image-text .component--text h4, .component-type--pzt-infographic .infographic--body h4, .component-type--text .component--content h4, .node-glossario.view-mode-full .component-type--page-header .component--content h4,
.component-type--pzt-downloads .component--content h4, .cke_editable h4 {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
}
.text-container h4, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h4, .component-type--pzt-blockquote .component--content .component--text h4, .component-type--pzt-image-text .component--text h4, .component-type--pzt-infographic .infographic--body h4, .component-type--text .component--content h4, .node-glossario.view-mode-full .component-type--page-header .component--content h4,
.component-type--pzt-downloads .component--content h4, .cke_editable h4 {
  line-height: 1.44;
  margin-bottom: 0.5em;
  font-weight: normal;
}
.text-container *.sticker, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body *.sticker, .component-type--pzt-blockquote .component--content .component--text *.sticker, .component-type--pzt-image-text .component--text *.sticker, .component-type--pzt-infographic .infographic--body *.sticker, .component-type--text .component--content *.sticker, .node-glossario.view-mode-full .component-type--page-header .component--content *.sticker,
.component-type--pzt-downloads .component--content *.sticker, .cke_editable *.sticker {
  margin-bottom: 0;
}
.text-container ul, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ul, .component-type--pzt-blockquote .component--content .component--text ul, .component-type--pzt-image-text .component--text ul, .component-type--pzt-infographic .infographic--body ul, .component-type--text .component--content ul, .node-glossario.view-mode-full .component-type--page-header .component--content ul,
.component-type--pzt-downloads .component--content ul, .cke_editable ul {
  list-style: none;
}
.text-container em, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body em, .component-type--pzt-blockquote .component--content .component--text em, .component-type--pzt-image-text .component--text em, .component-type--pzt-infographic .infographic--body em, .component-type--text .component--content em, .node-glossario.view-mode-full .component-type--page-header .component--content em,
.component-type--pzt-downloads .component--content em, .cke_editable em {
  font-family: "Lato", sans-serif;
  font-style: italic;
  font-weight: normal;
}
.text-container strong, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body strong, .component-type--pzt-blockquote .component--content .component--text strong, .component-type--pzt-image-text .component--text strong, .component-type--pzt-infographic .infographic--body strong, .component-type--text .component--content strong, .node-glossario.view-mode-full .component-type--page-header .component--content strong,
.component-type--pzt-downloads .component--content strong, .cke_editable strong {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
}
.text-container ul, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ul, .component-type--pzt-blockquote .component--content .component--text ul, .component-type--pzt-image-text .component--text ul, .component-type--pzt-infographic .infographic--body ul, .component-type--text .component--content ul, .node-glossario.view-mode-full .component-type--page-header .component--content ul,
.component-type--pzt-downloads .component--content ul, .cke_editable ul,
.text-container ol,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ol,
.component-type--pzt-blockquote .component--content .component--text ol,
.component-type--pzt-image-text .component--text ol,
.component-type--pzt-infographic .infographic--body ol,
.component-type--text .component--content ol,
.node-glossario.view-mode-full .component-type--page-header .component--content ol,
.component-type--pzt-downloads .component--content ol,
.cke_editable ol,
.text-container dl,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body dl,
.component-type--pzt-blockquote .component--content .component--text dl,
.component-type--pzt-image-text .component--text dl,
.component-type--pzt-infographic .infographic--body dl,
.component-type--text .component--content dl,
.node-glossario.view-mode-full .component-type--page-header .component--content dl,
.component-type--pzt-downloads .component--content dl,
.cke_editable dl {
  margin-bottom: 0.5em;
}
.text-container ul li, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ul li, .component-type--pzt-blockquote .component--content .component--text ul li, .component-type--pzt-image-text .component--text ul li, .component-type--pzt-infographic .infographic--body ul li, .component-type--text .component--content ul li, .node-glossario.view-mode-full .component-type--page-header .component--content ul li,
.component-type--pzt-downloads .component--content ul li, .cke_editable ul li,
.text-container dt,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body dt,
.component-type--pzt-blockquote .component--content .component--text dt,
.component-type--pzt-image-text .component--text dt,
.component-type--pzt-infographic .infographic--body dt,
.component-type--text .component--content dt,
.node-glossario.view-mode-full .component-type--page-header .component--content dt,
.component-type--pzt-downloads .component--content dt,
.cke_editable dt {
  display: block;
  margin-bottom: 0.5em;
  padding-left: 1em;
  position: relative;
}
.text-container ul li:before, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ul li:before, .component-type--pzt-blockquote .component--content .component--text ul li:before, .component-type--pzt-image-text .component--text ul li:before, .component-type--pzt-infographic .infographic--body ul li:before, .component-type--text .component--content ul li:before, .node-glossario.view-mode-full .component-type--page-header .component--content ul li:before,
.component-type--pzt-downloads .component--content ul li:before, .cke_editable ul li:before,
.text-container dt:before,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body dt:before,
.component-type--pzt-blockquote .component--content .component--text dt:before,
.component-type--pzt-image-text .component--text dt:before,
.component-type--pzt-infographic .infographic--body dt:before,
.component-type--text .component--content dt:before,
.node-glossario.view-mode-full .component-type--page-header .component--content dt:before,
.component-type--pzt-downloads .component--content dt:before,
.cke_editable dt:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "–";
}
.text-container ol, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ol, .component-type--pzt-blockquote .component--content .component--text ol, .component-type--pzt-image-text .component--text ol, .component-type--pzt-infographic .infographic--body ol, .component-type--text .component--content ol, .node-glossario.view-mode-full .component-type--page-header .component--content ol,
.component-type--pzt-downloads .component--content ol, .cke_editable ol {
  list-style: decimal;
  padding-left: 1.5em;
}
.text-container ol li, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body ol li, .component-type--pzt-blockquote .component--content .component--text ol li, .component-type--pzt-image-text .component--text ol li, .component-type--pzt-infographic .infographic--body ol li, .component-type--text .component--content ol li, .node-glossario.view-mode-full .component-type--page-header .component--content ol li,
.component-type--pzt-downloads .component--content ol li, .cke_editable ol li {
  margin-bottom: 0.5em;
}
.text-container dd, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body dd, .component-type--pzt-blockquote .component--content .component--text dd, .component-type--pzt-image-text .component--text dd, .component-type--pzt-infographic .infographic--body dd, .component-type--text .component--content dd, .node-glossario.view-mode-full .component-type--page-header .component--content dd,
.component-type--pzt-downloads .component--content dd, .cke_editable dd {
  padding-left: 1em;
  margin-bottom: 0.5em;
}
.text-container .no-bullets li, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets li, .component-type--pzt-blockquote .component--content .component--text .no-bullets li, .component-type--pzt-image-text .component--text .no-bullets li, .component-type--pzt-infographic .infographic--body .no-bullets li, .component-type--text .component--content .no-bullets li, .node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets li,
.component-type--pzt-downloads .component--content .no-bullets li, .cke_editable .no-bullets li,
.text-container .no-bullets dt,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets dt,
.component-type--pzt-blockquote .component--content .component--text .no-bullets dt,
.component-type--pzt-image-text .component--text .no-bullets dt,
.component-type--pzt-infographic .infographic--body .no-bullets dt,
.component-type--text .component--content .no-bullets dt,
.node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets dt,
.component-type--pzt-downloads .component--content .no-bullets dt,
.cke_editable .no-bullets dt,
.text-container .no-bullets dd,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets dd,
.component-type--pzt-blockquote .component--content .component--text .no-bullets dd,
.component-type--pzt-image-text .component--text .no-bullets dd,
.component-type--pzt-infographic .infographic--body .no-bullets dd,
.component-type--text .component--content .no-bullets dd,
.node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets dd,
.component-type--pzt-downloads .component--content .no-bullets dd,
.cke_editable .no-bullets dd {
  padding-left: 0;
}
.text-container .no-bullets li:before, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets li:before, .component-type--pzt-blockquote .component--content .component--text .no-bullets li:before, .component-type--pzt-image-text .component--text .no-bullets li:before, .component-type--pzt-infographic .infographic--body .no-bullets li:before, .component-type--text .component--content .no-bullets li:before, .node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets li:before,
.component-type--pzt-downloads .component--content .no-bullets li:before, .cke_editable .no-bullets li:before,
.text-container .no-bullets dt:before,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets dt:before,
.component-type--pzt-blockquote .component--content .component--text .no-bullets dt:before,
.component-type--pzt-image-text .component--text .no-bullets dt:before,
.component-type--pzt-infographic .infographic--body .no-bullets dt:before,
.component-type--text .component--content .no-bullets dt:before,
.node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets dt:before,
.component-type--pzt-downloads .component--content .no-bullets dt:before,
.cke_editable .no-bullets dt:before,
.text-container .no-bullets dd:before,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body .no-bullets dd:before,
.component-type--pzt-blockquote .component--content .component--text .no-bullets dd:before,
.component-type--pzt-image-text .component--text .no-bullets dd:before,
.component-type--pzt-infographic .infographic--body .no-bullets dd:before,
.component-type--text .component--content .no-bullets dd:before,
.node-glossario.view-mode-full .component-type--page-header .component--content .no-bullets dd:before,
.component-type--pzt-downloads .component--content .no-bullets dd:before,
.cke_editable .no-bullets dd:before {
  content: "";
}
.text-container.last *:last-child, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .last.field--field-body *:last-child, .component-type--pzt-blockquote .component--content .last.component--text *:last-child, .component-type--pzt-image-text .last.component--text *:last-child, .component-type--pzt-infographic .last.infographic--body *:last-child, .component-type--text .last.component--content *:last-child, .node-glossario.view-mode-full .component-type--page-header .last.component--content *:last-child,
.component-type--pzt-downloads .last.component--content *:last-child, .last.cke_editable *:last-child {
  margin-bottom: 0;
}
.text-container.align-center, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .align-center.field--field-body, .component-type--pzt-blockquote .component--content .align-center.component--text, .component-type--pzt-image-text .align-center.component--text, .component-type--pzt-infographic .align-center.infographic--body, .component-type--text .align-center.component--content, .node-glossario.view-mode-full .component-type--page-header .align-center.component--content,
.component-type--pzt-downloads .align-center.component--content, .align-center.cke_editable {
  margin: 0 auto;
}

/* hanging quotes */
.hangingQuotes:before, .hangingQuotes:after {
  font-size: 180px;
  z-index: 50;
  font-family: "Lato", sans-serif;
  font-weight: normal;
}
.hangingQuotes:before {
  position: absolute;
  content: "“";
  left: 0px;
  top: -70px;
}

* {
  box-sizing: border-box;
}

html {
  font-size: clamp(16px, 1vw, 20px);
}

body {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  background: #fff;
  color: #222;
  line-height: 1.64;
  min-height: 100vh;
}

a {
  color: #222;
}
a.break {
  word-break: break-word;
}
a.external:not([class~=action]) {
  padding-right: 1.2em;
  position: relative;
}
a.external:not([class~=action]):after {
  position: absolute;
  right: 0;
  bottom: 0.1em;
  color: #222;
  text-decoration: none;
}

abbr {
  cursor: help;
}

code {
  white-space: pre-wrap;
  font-family: monospace;
}

p {
  margin-bottom: 0.72em;
  line-height: 1.64;
}
.invisible,
.element-invisible {
  display: none !important;
}

/* headings */
h1 {
  line-height: 1.44;
}

h2 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #DA291C;
  font-size: 2.5rem;
  padding-bottom: 1rem;
  line-height: 1.44;
}
@media only screen and (max-width: 940px) {
  h2 {
    font-size: 1.44rem;
  }
}
h2 small {
  font-size: 1.5rem;
  display: block;
}

p.definition {
  font-family: Georgia, serif;
  color: #999;
  font-size: 0.5rem;
}
p.definition strong {
  color: var(--primary-color);
}

h2 + p {
  margin-top: -1rem;
}

h3 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: 1.5rem;
  text-transform: uppercase;
  margin-bottom: 0.5em;
  margin-top: 1em;
  line-height: 1.1;
  color: #DA291C;
  letter-spacing: -0.02em;
}
h3:first-of-type {
  margin-top: 0;
}
h3 small {
  display: block;
  text-transform: uppercase;
  font-size: 50%;
  letter-spacing: 0.15em;
  margin-bottom: 0.75rem;
}

h4 {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  color: #DA291C;
  font-size: 1.44rem;
  line-height: 1.44;
  padding-bottom: 0.5em;
}

.bg-overlay:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  bottom: 0;
  right: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 1;
}
.bg-overlay .text-container, .bg-overlay .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .bg-overlay .field--field-body, .bg-overlay .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .component--content .bg-overlay .component--text, .bg-overlay .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .bg-overlay .component--text, .bg-overlay .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .bg-overlay .infographic--body, .bg-overlay .component-type--text .component--content, .bg-overlay .node-glossario.view-mode-full .component-type--page-header .component--content, .node-glossario.view-mode-full .bg-overlay .component-type--page-header .component--content, .component-type--text .bg-overlay .component--content, .node-glossario.view-mode-full .component-type--page-header .bg-overlay .component--content,
.bg-overlay .component-type--pzt-downloads .component--content,
.component-type--pzt-downloads .bg-overlay .component--content, .bg-overlay .cke_editable {
  position: relative;
  z-index: 2;
}

.clickable {
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
}

.view-all {
  text-align: center;
  position: relative;
  margin-top: -10px;
}
.view-all a {
  position: relative;
  z-index: 1;
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  padding: 5px 10px;
  color: #FFFFFF;
  display: inline-block;
  margin: 0 0.5em 0.5em 0.5em;
  text-transform: uppercase;
}

blockquote {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 400;
  font-style: italic;
  padding-left: 2em;
}
blockquote strong {
  display: block;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-style: normal;
}
blockquote:before {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 4em;
  float: left;
  line-height: 0.5em;
  position: relative;
  top: 0.2em;
  left: -0.2em;
}

.block {
  padding: 3rem 1.5rem 6rem 1.5rem;
}
.block h3 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: 24px;
  margin-bottom: 20px;
}

/* lists */
.inline-list li {
  display: inline;
}
.inline-list li * {
  display: inline;
}

.comma-separated li:after {
  content: ", ";
}
.comma-separated li:last-child:after {
  content: "";
}

.bar-separated li {
  border-right: 2px solid #f5f3ee;
}
.bar-separated li:last-child {
  border-right: none;
}

.bg-cover {
  background-size: cover;
  background-repeat: no-repeat;
}

.bg-contain {
  background-size: contain;
  background-repeat: no-repeat;
}

.action, .component-type--cards-list .actions a, .action-links a, .webform-submit, .form-managed-file input[type=submit], .form-actions a.button, input[type=submit].button--primary, .form-wrapper input[type=submit] {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  text-align: center;
  padding: 0.75rem;
  background: #009ca6;
  color: #FFFFFF;
  font-size: 20px;
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 2px;
  border: none;
  position: relative;
  font-weight: 700;
  transition: all 0.2s ease;
}
.action + .action, .component-type--cards-list .actions a + .action, .component-type--cards-list .actions .action + a, .component-type--cards-list .actions a + a, .action-links a + .action, .action-links .action + a, .action-links a + a, .webform-submit + .action, .component-type--cards-list .actions .webform-submit + a, .action-links .webform-submit + a, .action + .webform-submit, .component-type--cards-list .actions a + .webform-submit, .action-links a + .webform-submit, .webform-submit + .webform-submit, .form-managed-file input[type=submit] + .action, .form-managed-file .component-type--cards-list .actions input[type=submit] + a, .component-type--cards-list .actions .form-managed-file input[type=submit] + a, .form-managed-file .action-links input[type=submit] + a, .action-links .form-managed-file input[type=submit] + a, .form-managed-file input[type=submit] + .webform-submit, .form-managed-file .action + input[type=submit], .form-managed-file .component-type--cards-list .actions a + input[type=submit], .component-type--cards-list .actions .form-managed-file a + input[type=submit], .form-managed-file .action-links a + input[type=submit], .action-links .form-managed-file a + input[type=submit], .form-managed-file .webform-submit + input[type=submit], .form-managed-file input[type=submit] + input[type=submit], .form-actions a.button + .action, .form-actions .action-links a.button + a, .action-links .form-actions a.button + a, .form-actions a.button + .webform-submit, .form-actions .form-managed-file a.button + input[type=submit], .form-managed-file .form-actions a.button + input[type=submit], .form-actions .action + a.button, .form-actions .action-links a + a.button, .action-links .form-actions a + a.button, .form-actions .webform-submit + a.button, .form-actions .form-managed-file input[type=submit] + a.button, .form-managed-file .form-actions input[type=submit] + a.button, .form-actions a.button + a.button, input[type=submit].button--primary + .action, .component-type--cards-list .actions input[type=submit].button--primary + a, .action-links input[type=submit].button--primary + a, input[type=submit].button--primary + .webform-submit, .form-actions input[type=submit].button--primary + a.button, .action + input[type=submit].button--primary, .component-type--cards-list .actions a + input[type=submit].button--primary, .action-links a + input[type=submit].button--primary, .webform-submit + input[type=submit].button--primary, .form-actions a.button + input[type=submit].button--primary, input[type=submit].button--primary + input[type=submit].button--primary, .form-wrapper input[type=submit] + .action, .form-wrapper .component-type--cards-list .actions input[type=submit] + a, .component-type--cards-list .actions .form-wrapper input[type=submit] + a, .form-wrapper .action-links input[type=submit] + a, .action-links .form-wrapper input[type=submit] + a, .form-wrapper input[type=submit] + .webform-submit, .form-wrapper .form-actions input[type=submit] + a.button, .form-actions .form-wrapper input[type=submit] + a.button, .form-wrapper .action + input[type=submit], .form-wrapper .component-type--cards-list .actions a + input[type=submit], .component-type--cards-list .actions .form-wrapper a + input[type=submit], .form-wrapper .action-links a + input[type=submit], .action-links .form-wrapper a + input[type=submit], .form-wrapper .webform-submit + input[type=submit], .form-wrapper .form-actions a.button + input[type=submit], .form-actions .form-wrapper a.button + input[type=submit], .form-wrapper input[type=submit] + input[type=submit] {
  margin-left: 1.5rem;
}
.action, .component-type--cards-list .actions a, .action-links a, .webform-submit, .form-managed-file input[type=submit], .form-actions a.button, input[type=submit].button--primary, .form-wrapper input[type=submit] {
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  font-style: normal;
  border-radius: 5px;
  /*
   * 
  border: 2px solid $red;
  background: $white !important;
  color: $red !important;

   */
}
.action.tiny, .component-type--cards-list .actions a.tiny, .action-links a, .tiny.webform-submit, .form-managed-file input[type=submit], .form-actions a.tiny.button, .form-actions .action-links a.button, .action-links .form-actions a.button, input.tiny[type=submit].button--primary, .form-wrapper input.tiny[type=submit] {
  font-size: 0.75rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  color: #FFFFFF;
  letter-spacing: 0;
}
.action.small, .component-type--cards-list .actions a, .action-links a.small, .action.action--add, .action-links a.action--add, .small.webform-submit, .webform-submit.action--add, .form-managed-file input.small[type=submit], .form-managed-file input[type=submit].action--add, .form-actions a.small.button, .form-actions a.button.action--add, input.small[type=submit].button--primary, input[type=submit].button--primary.action--add, .form-wrapper input.small[type=submit], .form-wrapper input[type=submit].action--add {
  font-size: 0.75rem;
  color: #FFFFFF;
  letter-spacing: 0;
}
.action.big, .component-type--cards-list .actions a.big, .action-links a.big, .big.webform-submit, .form-managed-file input.big[type=submit], .form-actions a.button, input.big[type=submit].button--primary, .form-wrapper input.big[type=submit] {
  font-size: 2rem;
  color: #FFFFFF;
  padding: 1.5rem;
}
.action.light, .component-type--cards-list .actions a, .action-links a.light, .light.webform-submit, .form-managed-file input.light[type=submit], .form-actions a.button, input.light[type=submit].button--primary, .form-wrapper input[type=submit] {
  background: #FFFFFF;
  color: #009ca6;
  border: 1px solid #009ca6;
  top: 0;
}
.action.light:hover, .component-type--cards-list .actions a:hover, .action-links a.light:hover, .light.webform-submit:hover, .form-managed-file input.light[type=submit]:hover, .form-actions a.button:hover, input.light[type=submit].button--primary:hover, .form-wrapper input[type=submit]:hover {
  color: #FFFFFF;
  background: #009ca6;
}
.action.light, .component-type--cards-list .actions a, .action-links a.light, .light.webform-submit, .form-managed-file input.light[type=submit], .form-actions a.button, input.light[type=submit].button--primary, .form-wrapper input[type=submit] {
  box-shadow: none;
}
.action.negative, .component-type--cards-list .actions a.negative, .action-links a.negative, .negative.webform-submit, .form-managed-file input.negative[type=submit], .form-actions a.negative.button, input.negative[type=submit].button--primary, .form-wrapper input.negative[type=submit] {
  background: transparent;
  border: 1px solid #FFFFFF;
}
.action.negative:hover, .component-type--cards-list .actions a.negative:hover, .action-links a.negative:hover, .negative.webform-submit:hover, .form-managed-file input.negative[type=submit]:hover, .form-actions a.negative.button:hover, input.negative[type=submit].button--primary:hover, .form-wrapper input.negative[type=submit]:hover {
  background: rgba(255, 255, 255, 0.1333333333);
}
.action.normal, .component-type--cards-list .actions a.normal, .action-links a.normal, .normal.webform-submit, .form-managed-file input.normal[type=submit], .form-actions a.normal.button, input[type=submit].button--primary, .form-wrapper input.normal[type=submit] {
  background: #DA291C;
  color: #FFFFFF;
  border: none;
}
.action em, .component-type--cards-list .actions a em, .action-links a em, .webform-submit em, .form-managed-file input[type=submit] em, .form-actions a.button em, input[type=submit].button--primary em, .form-wrapper input[type=submit] em {
  display: block;
  font-weight: 700;
}

.secondary-action {
  display: inline-block;
  margin-top: 1.5rem;
  color: var(--primary-color);
  text-decoration: none;
  border-bottom: 1px dotted var(--primary-color);
}

.page-title-wrapper {
  padding-top: 20px;
  padding-bottom: 10px;
  box-shadow: 0 5px 0 0 rgba(0, 0, 0, 0.1);
  background: #FFFFFF;
  color: var(--primary-color);
  position: relative;
  z-index: 20;
}
.page-title-wrapper h1 {
  display: block;
  font-size: 2.44rem;
  text-transform: uppercase;
  text-align: left;
  margin-left: -0.05em;
  color: var(--primary-color);
  line-height: 1;
  padding-bottom: 0;
}
.page-title-wrapper.negative {
  background: var(--primary-color);
  color: #FFFFFF;
}
.page-title-wrapper.negative h1 {
  color: #FFFFFF;
}

.children-menu {
  margin-top: 0.5rem;
}
.children-menu li {
  display: inline-block;
  margin-bottom: auto;
  padding-left: 0;
}
.children-menu li:before {
  content: none;
}
.children-menu li a {
  color: var(--primary-color);
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  font-size: 0.75rem;
  border: 2px solid var(--primary-color);
  padding: 3px 10px;
}
.negative .children-menu li a {
  border: 2px solid #FFFFFF;
  color: #FFFFFF;
}

.wireframe-box {
  position: relative;
}
.wireframe-box:before {
  content: "";
  position: absolute;
  z-index: 8000;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: url(../img/wireframe.svg), rgba(128, 128, 128, 0.3) no-repeat;
  background-size: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 2px solid #808080;
}
.wireframe-box .content {
  z-index: 9000;
  position: relative;
}
.wireframe-box.light:before, .component-type--cards-list .actions a.wireframe-box:before, .form-actions a.wireframe-box.button:before, .form-wrapper input.wireframe-box[type=submit]:before {
  background: url(../img/wireframe.svg), rgba(128, 128, 128, 0.2) no-repeat;
}
.wireframe-box.dark:before {
  background: url(../img/wireframe.svg), rgba(128, 128, 128, 0.5) no-repeat;
}

.expander {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  position: relative;
  padding-left: 1.5em;
  padding-right: 1em;
}
.expander:before {
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.2s linear;
}
.expander.open:before {
  box-shadow: rotate(180deg);
}
.expander.no-icon {
  padding-left: 0;
}
.expander.no-icon:before {
  display: none;
}
.expander + .expandable {
  padding-left: 1.5em;
}

/* hero section */
.hero {
  position: relative;
  min-height: 25vw;
}
.hero .content {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  padding: 1.5rem;
}
.hero .container {
  position: relative;
  z-index: 2;
}
.hero figure {
  position: absolute;
  top: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  z-index: -1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.pager {
  display: block;
  width: 100%;
  padding-bottom: 3rem;
  padding-top: 3rem;
  text-align: center;
}
.pager li {
  display: inline-block;
  border-radius: 2px;
  margin: 0 2px;
}
.pager li.is-active {
  padding: 2px 10px;
}
.pager li.is-active a {
  background: var(--primary-color);
  color: #FFFFFF;
  border-radius: 100px;
}
.pager li a {
  display: block;
  padding: 2px 10px;
  text-decoration: none;
  color: #222;
  background: #FFFFFF;
  border-radius: 100px;
}
.pager li a:hover {
  color: #FFFFFF;
  background: var(--primary-color);
}

.popup-container {
  z-index: 9999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  right: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.9);
}

.popup {
  z-index: 9999;
  position: fixed;
  top: 50%;
  box-shadow: translateY(-50%);
  left: 1.5rem;
  right: 1.5rem;
  bottom: 1.5rem;
}

.video-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 56.25%;
}
.video-container > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.background-video {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  z-index: -100;
  transform: translateX(-50%) translateY(-50%);
}

input,
textarea,
select {
  border: 2px solid #D1CCBD;
  padding: 5px 10px;
  font-size: 1rem;
  background: #f5f3ee;
  color: #222;
  font-family: "Lato", sans-serif;
  font-weight: 400;
  border-radius: 5px;
  height: 2.3rem;
  vertical-align: middle;
}
input.disabled,
textarea.disabled,
select.disabled {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background: #EAE8DB !important;
}

textarea {
  height: auto;
}

select {
  max-width: 100%;
}

input[type=checkbox] {
  box-shadow: none;
}

.form-wrapper input[type=submit] {
  -webkit-appearance: none;
  margin-top: 1.5rem;
  position: relative;
}

input[type=submit].button--primary {
  display: inline-block;
  height: auto;
  vertical-align: bottom;
  line-height: 1;
}

.form-actions {
  text-align: left;
}
.form-actions a.button {
  display: inline-block;
  margin-right: 0;
  height: auto;
  margin-top: 1.5rem;
  line-height: auto;
  vertical-align: bottom;
  line-height: 1;
}

input {
  max-width: 100%;
}
input.tel {
  border: 1px solid #f5f3ee;
  font-size: 30px;
  color: #f5f3ee;
  padding: 10px;
}
input.underline {
  box-shadow: none;
  border: 1px dotted #222;
  border-width: 0 0 1px 0;
  padding: 5px;
  position: relative;
  height: 50px;
}
input.error {
  box-shadow: 0 0 6px 2px #900 inset;
  border: none;
  -webkit-appearance: none;
}
input[type=radio] {
  height: auto !important;
}

details {
  padding: 1.5rem;
  border: 1px dashed #D1CCBD;
  border-radius: 1.5rem;
}
details label, details .field-multiple-table h4.label, .field-multiple-table details h4.label {
  font-size: 1rem;
}

.form-wrapper {
  margin-bottom: 3em;
}
.form-wrapper:last-child {
  margin-bottom: 0;
}

.form-type-checkbox {
  display: inline-block;
  margin: 0 2em 2em 0;
}
.form-type-checkbox input {
  display: inline-block;
  position: relative;
  top: -2px;
}
.form-type-checkbox label.option, .form-type-checkbox .field-multiple-table h4.option.label, .field-multiple-table .form-type-checkbox h4.option.label {
  display: inline;
  font-size: 1.44rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  padding-left: 0.5em;
}
.form-type-checkbox input:checked + label, .form-type-checkbox .field-multiple-table input:checked + h4.label, .field-multiple-table .form-type-checkbox input:checked + h4.label {
  color: #DA291C;
}

.field-group {
  padding-top: 1.5rem;
  border-radius: 1.5rem;
}
.field-group h3 {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
  color: #900;
  margin-bottom: 1.5rem;
}
.field-group.expand-above {
  background: #DA291C;
  padding: 1.5rem;
  margin-bottom: 1.5rem;
}

.inline-fields input,
.inline-fields .form-item {
  display: inline-block;
  width: auto;
}

.fields-box {
  border: 1px solid #f5f3ee;
  background: #FFFFFF;
  box-shadow: 0 0 3px 3px rgba(0, 0, 0, 0.1) inset;
  margin-bottom: 3rem;
}
.fields-box.collapse-fields {
  padding-top: 0;
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.fields-box.collapse-fields .row *[class*=col] {
  border-left: 1px dotted #222;
}
.fields-box.collapse-fields .row *[class*=col]:nth-child(1) {
  border-left: 0;
}
.fields-box.collapse-fields .field-container {
  padding-bottom: 0;
  min-height: 50px;
  vertical-align: middle;
}
.fields-box.collapse-fields input,
.fields-box.collapse-fields textarea {
  background: transparent;
  padding-left: 0.75rem;
}

.field-with-icon {
  padding-left: 30px;
  position: relative;
  padding-left: 50px !important;
}
.field-with-icon:before {
  position: absolute;
  top: 10px;
  left: 10px;
  font-size: 32px;
  color: #222;
}

.field-inline-label {
  /*
  * labels can be put inside a markup component
  */
}
.field-inline-label .webform-component-markup {
  display: inline-block;
}
.field-inline-label label, .field-inline-label .field-multiple-table h4.label, .field-multiple-table .field-inline-label h4.label,
.field-inline-label .form-radios {
  display: inline-block;
  vertical-align: middle;
}
.field-inline-label .form-radios {
  line-height: 50px;
}
.field-inline-label label, .field-inline-label .field-multiple-table h4.label, .field-multiple-table .field-inline-label h4.label {
  line-height: 50px;
  margin-right: 1em;
}
.field-inline-label.field-with-icon label, .field-inline-label.field-with-icon .field-multiple-table h4.label, .field-multiple-table .field-inline-label.field-with-icon h4.label {
  padding-left: 0.75rem;
}

form {
  position: relative;
  padding: 3rem;
  background-color: #f5f3ee;
  border-radius: 1.5rem;
}
@media only screen and (max-width: 940px) {
  form {
    border-radius: 0;
    padding: 1.5rem;
  }
}
form input,
form textarea,
form select,
form option {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  color: #222;
  background: #FFFFFF;
}
form .description {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-size: 0.5rem;
  background: #FFFFFF;
  padding: 0.5rem;
  position: relative;
  margin-top: 10px;
}
form .description:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 20px;
  width: 0;
  height: 0;
  content: "";
  border-opposite-position(top): 10px solid #FFFFFF;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
}
form .field-container {
  position: relative;
  margin-bottom: 1.5rem;
}
form .field-container .show-description {
  position: absolute;
  right: 8px;
  top: 8px;
}
form .field-container .show-description:before {
  color: #f5f3ee;
  font-size: 32px;
}
form .field-container.with-hint {
  padding-right: 20px;
}
form .field-container.with-hint .description {
  position: absolute;
  right: 40px;
  top: 30px;
}
form .field-container.required {
  position: relative;
}
form .field-container.required label .form-required, form .field-container.required .field-multiple-table h4.label .form-required, .field-multiple-table form .field-container.required h4.label .form-required {
  display: none;
}
form .field-container.required:after {
  position: absolute;
  content: "*";
  top: 5px;
  right: 5px;
  color: #900;
  font-size: 18px;
}
form .field-container.field-no-border input {
  border: none;
}
form .field-container.full-width-fields input,
form .field-container.full-width-fields textarea {
  width: 100%;
}

label, .field-multiple-table h4.label,
legend,
summary,
.form-composite > legend {
  color: #DA291C;
  font-family: "Lato", sans-serif;
  color: #222;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.44;
  position: relative;
  display: block;
  /*
  * no placeholder support
  */
}
label.no-ph, .field-multiple-table h4.no-ph.label,
legend.no-ph,
summary.no-ph,
.form-composite > legend.no-ph {
  padding: 10px 0 10px 10px;
  font-size: 0.5rem;
}
label.error, .field-multiple-table h4.error.label,
legend.error,
summary.error,
.form-composite > legend.error {
  /*
  * TODO: responsive
  */
  background: #900;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  padding: 0.75rem;
  color: #FFFFFF;
  text-align: center;
  position: relative;
  top: 0.75rem;
}
label.error:before, .field-multiple-table h4.error.label:before,
legend.error:before,
summary.error:before,
.form-composite > legend.error:before {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  content: "";
  border-opposite-position(top): 10px solid #900;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  top: -5px;
  left: 50%;
  margin-left: -10px;
}
.show-errors label.error, .show-errors .field-multiple-table h4.error.label, .field-multiple-table .show-errors h4.error.label,
.show-errors legend.error,
.show-errors summary.error,
.show-errors .form-composite > legend.error {
  display: block !important;
}
.show-errors label.error[style*=none], .show-errors .field-multiple-table h4.error[style*=none].label, .field-multiple-table .show-errors h4.error[style*=none].label,
.show-errors legend.error[style*=none],
.show-errors summary.error[style*=none],
.show-errors .form-composite > legend.error[style*=none] {
  display: none !important;
}
.radio-option label, .radio-option .field-multiple-table h4.label, .field-multiple-table .radio-option h4.label, .form-item.form-type-radio label, .form-item.form-type-radio .field-multiple-table h4.label, .field-multiple-table .form-item.form-type-radio h4.label,
.radio-option legend,
.form-item.form-type-radio legend,
.radio-option summary,
.form-item.form-type-radio summary,
.radio-option .form-composite > legend,
.form-item.form-type-radio .form-composite > legend {
  color: #222;
  display: inline-block;
  vertical-align: baseline;
}
.radio-options label, .radio-options .field-multiple-table h4.label, .field-multiple-table .radio-options h4.label, .form-item.form-type-radio label, .form-item.form-type-radio .field-multiple-table h4.label, .field-multiple-table .form-item.form-type-radio h4.label,
.radio-options legend,
.form-item.form-type-radio legend,
.radio-options summary,
.form-item.form-type-radio summary,
.radio-options .form-composite > legend,
.form-item.form-type-radio .form-composite > legend {
  display: inline-block;
  vertical-align: baseline;
}
label.option, .field-multiple-table h4.option.label,
legend.option,
summary.option,
.form-composite > legend.option {
  padding-left: 0;
}

.radio-option,
.form-item.form-type-radio {
  display: inline-block;
}

/*
 * radio as button
 */
.form-radios.as-buttons {
  margin-top: 7px;
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
}
.form-radios.as-buttons input {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.form-radios.as-buttons .radio-option,
.form-radios.as-buttons .form-item.form-type-radio {
  display: block;
  float: left;
}
.form-radios.as-buttons .radio-option:first-child label, .form-radios.as-buttons .radio-option:first-child .field-multiple-table h4.label, .field-multiple-table .form-radios.as-buttons .radio-option:first-child h4.label,
.form-radios.as-buttons .form-item.form-type-radio:first-child label,
.form-radios.as-buttons .form-item.form-type-radio:first-child .field-multiple-table h4.label,
.field-multiple-table .form-radios.as-buttons .form-item.form-type-radio:first-child h4.label {
  border-width: 1px 1px 1px 1px;
  border-radius: 5px 0 0 5px;
}
.form-radios.as-buttons .radio-option:last-child label, .form-radios.as-buttons .radio-option:last-child .field-multiple-table h4.label, .field-multiple-table .form-radios.as-buttons .radio-option:last-child h4.label,
.form-radios.as-buttons .form-item.form-type-radio:last-child label,
.form-radios.as-buttons .form-item.form-type-radio:last-child .field-multiple-table h4.label,
.field-multiple-table .form-radios.as-buttons .form-item.form-type-radio:last-child h4.label {
  border-width: 1px 1px 1px 0;
  border-radius: 0 5px 5px 0;
}
.form-radios.as-buttons .form-item.form-type-radio {
  margin-bottom: 0.75rem;
}
.form-radios.as-buttons .form-item.form-type-radio label, .form-radios.as-buttons .form-item.form-type-radio .field-multiple-table h4.label, .field-multiple-table .form-radios.as-buttons .form-item.form-type-radio h4.label {
  position: relative;
  display: inline-block;
  line-height: 1.3;
  margin: 0;
  color: #222;
  padding: 0.5rem 10px !important;
  background: rgba(255, 255, 255, 0.2);
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  transition: padding 0.3s ease;
  border: 1px solid rgba(234, 245, 249, 0.7);
}
.form-radios.as-buttons .form-item.form-type-radio input:checked + label, .form-radios.as-buttons .form-item.form-type-radio .field-multiple-table input:checked + h4.label, .field-multiple-table .form-radios.as-buttons .form-item.form-type-radio input:checked + h4.label,
.form-radios.as-buttons .form-item.form-type-radio label:hover,
.form-radios.as-buttons .form-item.form-type-radio .field-multiple-table h4.label:hover,
.field-multiple-table .form-radios.as-buttons .form-item.form-type-radio h4.label:hover {
  background: var(--primary-color);
  color: #FFFFFF;
}
.form-radios.as-buttons .form-item.form-type-radio input.error + label, .form-radios.as-buttons .form-item.form-type-radio .field-multiple-table input.error + h4.label, .field-multiple-table .form-radios.as-buttons .form-item.form-type-radio input.error + h4.label {
  box-shadow: 0 0 6px 2px #900;
}

.form-item {
  margin-bottom: 1em;
}

.inline-dropdown {
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  border-bottom: 2px dotted #EAE8DB;
}

.hide-label label, .hide-label .field-multiple-table h4.label, .field-multiple-table .hide-label h4.label {
  display: none;
}

/* file upload */
.form-managed-file {
  display: flex;
}
.form-managed-file input[type=file] {
  width: auto !important;
  margin-right: 1.5rem;
  margin-bottom: 0.75rem;
}
.form-managed-file .file {
  margin-bottom: 0.5em;
}
.form-managed-file input[type=submit] {
  width: auto !important;
  margin-top: 0;
}

/* webform */
/* tooltips */
.form-tooltip, form .field-container.with-hint .description {
  font-size: 0.5rem;
  background: #FFFFFF;
  width: 300px;
  border: 1px solid #EAE8DB;
  padding: 0.75rem;
  z-index: 1010;
  color: #222;
  text-align: left;
  box-shadow: 0 5px 3px 1px rgba(0, 0, 0, 0.3);
}

/*
 * chosen
 */
.chosen-container {
  font-size: 1rem;
}

/*
 * required fields information
 */
.required-notice {
  font-size: 0.5rem;
  /* 
  position: absolute;
  top: 20px;
  right: 10px;
  text-align: right;
  @include transform(rotate(-90deg));
  @include transform-origin(100%, 0);
  */
}
.required-notice span {
  color: #900;
}

/* ai posteri l'ardua sentenza */
a.tabledrag-handle .handle {
  width: 35px;
  height: 35px;
  background-position: 9px 11px;
}

.js .field--widget-entity-reference-paragraphs td,
.js .field--widget-entity-reference-paragraphs th {
  border-style: solid;
}
.js .field--widget-entity-reference-paragraphs td {
  padding: 1.5rem;
}
.js .field--widget-entity-reference-paragraphs tbody tr {
  background: #FFFFFF;
}

/*
 * placeholders
 */
::-webkit-input-placeholder {
  color: #222;
  padding-right: 10px;
}

:-moz-placeholder {
  /* Firefox 18- */
  color: #222;
  padding-right: 10px;
}

::-moz-placeholder {
  /* Firefox 19+ */
  color: #222;
  padding-right: 10px;
}

:-ms-input-placeholder {
  color: #222;
  padding-right: 10px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* drupal defaults override */
.field-multiple-table {
  width: 100%;
}

.webform-submission-survey-di-gradimento-form .form-item-informativa-privacy,
.webform-submission-esperienza-form .form-item-informativa-privacy,
.webform-submission-contact-form .form-item-informativa-privacy {
  display: flex;
  align-items: center;
}
.webform-submission-survey-di-gradimento-form .form-item-informativa-privacy input,
.webform-submission-esperienza-form .form-item-informativa-privacy input,
.webform-submission-contact-form .form-item-informativa-privacy input {
  width: 1.5rem;
  margin-right: 0.75rem;
}
.webform-submission-survey-di-gradimento-form label, .webform-submission-survey-di-gradimento-form .field-multiple-table h4.label, .field-multiple-table .webform-submission-survey-di-gradimento-form h4.label,
.webform-submission-esperienza-form label,
.webform-submission-esperienza-form .field-multiple-table h4.label,
.field-multiple-table .webform-submission-esperienza-form h4.label,
.webform-submission-contact-form label,
.webform-submission-contact-form .field-multiple-table h4.label,
.field-multiple-table .webform-submission-contact-form h4.label {
  font-size: 1.44rem;
}
.webform-submission-survey-di-gradimento-form textarea,
.webform-submission-esperienza-form textarea,
.webform-submission-contact-form textarea {
  max-width: 100%;
}

/* general purpose formatting for blocks */
.padded, .pad {
  padding: 3rem;
}

.padded-half, .pad-half {
  padding: 1.5rem;
}

.padded-double, .pad-2 {
  padding: 6rem;
}

.v-padded, .pad-v {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.v-padded-half, .pad-vh {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.v-padded-double, .pad-v2 {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.v-padded-top {
  padding-top: 3rem;
}

.v-padded-bottom {
  padding-bottom: 3rem;
}

.h-padded, .pad-h {
  padding-left: 3rem;
  padding-right: 3rem;
}

.h-padded-half, .pad-hh {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

.h-padded-double, .pad-h2 {
  padding-left: 6rem;
  padding-right: 6rem;
}

/* single paddings and margins */
.pad-t {
  padding-top: 1.5rem;
}

.pad-b {
  padding-bottom: 1.5rem;
}

.pad-r {
  padding-right: 1.5rem;
}

.pad-l {
  padding-left: 1.5rem;
}

.pad-t2 {
  padding-top: 3rem;
}

.pad-b2 {
  padding-bottom: 3rem;
}

.pad-r2 {
  padding-right: 3rem;
}

.pad-l2 {
  padding-left: 3rem;
}

.pad-t3 {
  padding-top: 4.5rem;
}

.pad-b3 {
  padding-bottom: 4.5rem;
}

.pad-r3 {
  padding-right: 4.5rem;
}

.pad-l3 {
  padding-left: 4.5rem;
}

.pad-th {
  padding-top: 0.75rem;
}

.pad-bh {
  padding-bottom: 0.75rem;
}

.pad-rh {
  padding-right: 0.75rem;
}

.pad-lh {
  padding-left: 0.75rem;
}

.mar-t {
  margin-top: 1.5rem;
}

.mar-b {
  margin-bottom: 1.5rem;
}

.mar-r {
  margin-right: 1.5rem;
}

.mar-l {
  margin-left: 1.5rem;
}

.mar-t2 {
  margin-top: 3rem;
}

.mar-b2 {
  margin-bottom: 3rem;
}

.mar-r2 {
  margin-right: 3rem;
}

.mar-l2 {
  margin-left: 3rem;
}

.mar-t3 {
  margin-top: 4.5rem;
}

.mar-b3 {
  margin-bottom: 4.5rem;
}

.mar-r3 {
  margin-right: 4.5rem;
}

.mar-l3 {
  margin-left: 4.5rem;
}

.mar-th {
  margin-top: 0.75rem;
}

.mar-bh {
  margin-bottom: 0.75rem;
}

.mar-rh {
  margin-right: 0.75rem;
}

.mar-lh {
  margin-left: 0.75rem;
}

.with-border + .with-border {
  border-top: none;
}

.rounded {
  border-radius: 10px;
}

.filled {
  background: #DA291C;
}
.filled .filled {
  background: #FFFFFF;
  color: #222;
}
.filled {
  /* if padding a row, compensate column padding
   * on outmost columns
   */
}
.filled.row {
  padding-top: 1.5rem;
}

.filled-light {
  background: #f5f3ee;
}

.with-bg {
  position: relative;
  background-repeat: no-repeat;
}
.with-bg figure {
  display: none;
}
.with-bg.bg-cover {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

/* block width */
.width-75 {
  max-width: 750px;
  margin: 0 auto;
}

.width-50 {
  max-width: 500px;
  margin: 0 auto;
}

/* block min height & max-height */
.max-height-10 {
  max-height: 10vh;
}
.max-height-10 * {
  max-height: 10vh;
}

.min-height-10 {
  min-height: 10vh;
}

.max-height-20 {
  max-height: 20vh;
}
.max-height-20 * {
  max-height: 20vh;
}

.min-height-20 {
  min-height: 20vh;
}

.max-height-30 {
  max-height: 30vh;
}
.max-height-30 * {
  max-height: 30vh;
}

.min-height-30 {
  min-height: 30vh;
}

.max-height-40 {
  max-height: 40vh;
}
.max-height-40 * {
  max-height: 40vh;
}

.min-height-40 {
  min-height: 40vh;
}

.max-height-50 {
  max-height: 50vh;
}
.max-height-50 * {
  max-height: 50vh;
}

.min-height-50 {
  min-height: 50vh;
}

.max-height-60 {
  max-height: 60vh;
}
.max-height-60 * {
  max-height: 60vh;
}

.min-height-60 {
  min-height: 60vh;
}

.max-height-70 {
  max-height: 70vh;
}
.max-height-70 * {
  max-height: 70vh;
}

.min-height-70 {
  min-height: 70vh;
}

.max-height-80 {
  max-height: 80vh;
}
.max-height-80 * {
  max-height: 80vh;
}

.min-height-80 {
  min-height: 80vh;
}

.max-height-90 {
  max-height: 90vh;
}
.max-height-90 * {
  max-height: 90vh;
}

.min-height-90 {
  min-height: 90vh;
}

.max-height-100 {
  max-height: 100vh;
}
.max-height-100 * {
  max-height: 100vh;
}

.min-height-100 {
  min-height: 100vh;
}

/* background */
.full-bg {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

.with-white-overlay,
.with-black-overlay {
  position: relative;
}
.with-white-overlay .content,
.with-black-overlay .content {
  position: relative;
  z-index: 1;
}
.with-white-overlay:before,
.with-black-overlay:before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 0;
}

.with-white-overlay:before {
  background-color: rgba(255, 255, 255, 0.3);
}

.with-black-overlay:before {
  background-color: rgba(34, 34, 34, 0.7);
}

.bg-align-top-left {
  background-position: top left !important;
}

.bg-align-top-center {
  background-position: top center !important;
}

.bg-align-top-right {
  background-position: top right !important;
}

.bg-align-center-left {
  background-position: center left !important;
}

.bg-align-center-center {
  background-position: center center !important;
}

.bg-align-center-right {
  background-position: center right !important;
}

.bg-align-bottom-left {
  background-position: bottom left !important;
}

.bg-align-bottom-center {
  background-position: bottom center !important;
}

.bg-align-bottom-right {
  background-position: bottom right !important;
}

/* text-alignment */
.align-left {
  text-align: left;
}

.align-right {
  text-align: right;
  margin-left: auto;
}

.align-center {
  text-align: center;
}
.align-center .text-container, .align-center .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .align-center .field--field-body, .align-center .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .component--content .align-center .component--text, .align-center .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .align-center .component--text, .align-center .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .align-center .infographic--body, .align-center .component-type--text .component--content, .align-center .node-glossario.view-mode-full .component-type--page-header .component--content, .node-glossario.view-mode-full .align-center .component-type--page-header .component--content, .component-type--text .align-center .component--content, .node-glossario.view-mode-full .component-type--page-header .align-center .component--content,
.align-center .component-type--pzt-downloads .component--content,
.component-type--pzt-downloads .align-center .component--content, .align-center .cke_editable {
  margin-left: auto;
  margin-right: auto;
}

.negative, .negative * {
  color: #FFFFFF !important;
}
.negative svg, .negative svg * {
  fill: #FFFFFF !important;
}

.overflow-h {
  overflow: hidden;
}

.as-bg, .component-type--next-prev-navigation article figure img, .component .component--bg, .as-bg-container img, .as-bg-container svg {
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100% !important;
  width: 100%;
  z-index: 0;
}
.as-bg.fixed, .component-type--next-prev-navigation article figure img.fixed, .component .fixed.component--bg, .as-bg-container img.fixed, .as-bg-container svg.fixed {
  position: fixed;
}

.p-relative {
  position: relative;
}

.z-0 {
  z-index: 0;
}

.z-10 {
  z-index: 10;
}

.z-20 {
  z-index: 20;
}

.z-30 {
  z-index: 30;
}

.z-m-10 {
  z-index: -10;
}

.z-m-20 {
  z-index: -20;
}

.hidden {
  display: none;
}

.visually-hidden, .language-switcher-language-url .links li[hreflang=es], body.with-immersive-slides .page-header,
body.with-immersive-slides #block-links-breadcrumbs,
body.with-immersive-slides .page-footer, .view-pubblicazioni form .form-actions {
  position: absolute !important;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  word-wrap: normal;
}

.visually-hidden.focusable:active, .language-switcher-language-url .links li.focusable[hreflang=es]:active, body.with-immersive-slides .focusable.page-header:active,
body.with-immersive-slides .focusable#block-links-breadcrumbs:active,
body.with-immersive-slides .focusable.page-footer:active, .view-pubblicazioni form .focusable.form-actions:active, .visually-hidden.focusable:focus, .language-switcher-language-url .links li.focusable[hreflang=es]:focus, body.with-immersive-slides .focusable.page-header:focus,
body.with-immersive-slides .focusable#block-links-breadcrumbs:focus,
body.with-immersive-slides .focusable.page-footer:focus, .view-pubblicazioni form .focusable.form-actions:focus {
  position: static !important;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
}

.invisible {
  visibility: hidden;
}

.time-table {
  table-layout: fixed;
  min-width: 50%;
  text-align: left;
  margin: 1em 0;
}
.time-table td, .time-table th {
  padding: 0 10px 0 0;
}
.time-table th {
  padding-top: 1em;
}

.team img {
  max-width: 10vw;
  opacity: 0.7;
}

.team li {
  display: inline-block;
  text-align: center;
  margin-right: 2rem;
}

body {
  background: url(../img/bg/bg-mappa.gif);
}

.page-container {
  padding: 0 0 4.5rem 1.5rem;
  position: relative;
}
.page-node-type-pacchetto-educativo .page-container, .path-taxonomy .page-container, .page-node-type-guida-pratica .page-container {
  padding-top: 0;
}
h1 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: clamp(2rem, 3.02vw, 3.66rem);
  color: #009ca6;
}
h1 small {
  font-size: 70%;
  text-transform: uppercase;
  font-variant: small-caps;
}
h1 em {
  color: #DA291C;
  text-transform: initial;
}

.page-tops {
  position: relative;
}

.page-header {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto auto;
  background: url(../img/bg/bg-header.svg);
  background-repeat: no-repeat;
  margin-bottom: 3rem;
  border-top: clamp(2px, 0.8vw, 15px) solid #00adbc;
}
@media only screen and (max-width: 65em) {
  .page-header {
    background: url(../img/bg/bg-header3.svg);
    background-repeat: no-repeat;
  }
}
@media only screen and (max-width: 32em) {
  .page-header {
    display: flex;
    flex-direction: column;
  }
}
@media only screen and (max-width: 800px) {
  .page-header {
    background: none;
  }
}
.page-header .page-header--logo {
  padding: 2.5rem 3rem 1.5rem 3rem;
  display: flex;
  align-items: center;
  padding-bottom: 0;
}
@media only screen and (max-width: 32em) {
  .page-header .page-header--logo {
    padding: 1.5rem;
  }
}
.page-header .page-header--logo a {
  text-decoration: none;
}
.page-header .page-header--logo h1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.page-header .page-header--logo svg,
.page-header .page-header--logo img {
  display: block;
  height: max(55px, 7vw);
}
.page-header .page-header--logo span {
  font-family: "Oswald";
  text-transform: uppercase;
  font-size: 1.25rem;
  line-height: 1.25;
  margin-left: 1.5rem;
  margin-bottom: 0;
  letter-spacing: 0.05em;
  margin-top: 0.5em;
}
@media only screen and (max-width: 56em) {
  .page-header .page-header--logo span {
    margin-left: 0;
    font-size: 1rem;
  }
}
.page-header .page-header--logo .payoff {
  width: 16vw;
  margin-top: 0;
}
@media only screen and (max-width: 50em) {
  .page-header .page-header--logo .payoff {
    width: 100%;
    margin-left: 1.5rem;
  }
}
.page-header .header-left {
  justify-content: flex-start;
  grid-row: 1/3;
  grid-column: 1/2;
  padding-left: 3rem;
}
@media only screen and (max-width: 32em) {
  .page-header .header-left {
    order: 3;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.page-header .header-right {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  align-content: center;
  grid-row: 2/3;
  grid-column: 3/3;
  row-gap: 1.5rem;
  padding: 2.5rem 0 0 0;
}
@media only screen and (max-width: 32em) {
  .page-header .header-right {
    order: 2;
    display: flex;
    justify-content: flex-start;
    padding-left: 1.5rem;
    padding-top: 1.5rem;
  }
}
.page-header .partner img {
  display: block;
  height: max(31px, 6vw);
  margin-right: 3rem;
}
.page-header .partner .stc-logo {
  height: max(23px, 4vw);
}
.page-header .primary-menu {
  padding: 0.75rem 3rem;
  grid-row: 3/4;
  grid-column: 1/4;
}
@media only screen and (max-width: 50em) {
  .page-header .primary-menu {
    order: 4;
    display: none;
  }
}
.page-header .primary-menu {
  font-size: 1.25rem;
}
.page-header .primary-menu ul:not(.contextual-links) {
  display: flex;
  gap: 1rem;
}
.page-header .primary-menu ul:not(.contextual-links) .menu-item--to-right {
  margin-left: auto;
}
.page-header .primary-menu ul:not(.contextual-links) .menu-item--secondary a {
  color: #222;
  font-weight: 300;
}
.page-header .primary-menu ul:not(.contextual-links) a {
  color: #DA291C;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.page-header .primary-menu ul:not(.contextual-links) li {
  display: inline-block;
  position: relative;
}
.page-header .primary-menu ul:not(.contextual-links) li .menu--notification {
  position: relative;
  top: -13px;
  left: -4px;
  background: none;
  display: inline-block;
  animation: 1s ease-in-out 5 alternate both zumpapa;
}
.page-header .primary-menu ul:not(.contextual-links) li .menu--notification span {
  position: relative;
  background: #FC4C02;
  width: 2em;
  height: 2em;
  color: #FFFFFF;
  border-radius: 50px;
  font-size: 0.6em;
  font-weight: bold;
  z-index: 1;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.page-header .primary-menu ul:not(.contextual-links) li .menu--notification:before, .page-header .primary-menu ul:not(.contextual-links) li .menu--notification:after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  background: #FC4C02;
}
.page-header .primary-menu ul:not(.contextual-links) li .menu--notification:before {
  transform: rotate(22.5deg) scale(0.9);
}
.page-header .primary-menu ul:not(.contextual-links) li .menu--notification:after {
  transform: rotate(-22.5deg) scale(0.9);
}

.page-header--menus {
  z-index: 8088;
}

@keyframes zumpapa {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
body {
  background: url(../img/bg/bg-mappa.gif);
}

.page-container {
  padding: 0 0 4.5rem 1.5rem;
  position: relative;
}
.page-node-type-pacchetto-educativo .page-container, .path-taxonomy .page-container, .page-node-type-guida-pratica .page-container {
  padding-top: 0;
}
h1 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: clamp(2rem, 3.02vw, 3.66rem);
  color: #009ca6;
}
h1 small {
  font-size: 70%;
  text-transform: uppercase;
  font-variant: small-caps;
}
h1 em {
  color: #DA291C;
  text-transform: initial;
}

.page-footer {
  position: relative;
  background: url(../img/bg/footer-bg.svg);
  background-repeat: no-repeat;
  background-position: bottom;
  margin-top: 3rem;
}
.page-footer h3 {
  color: #222;
}
.page-footer .footer--logo img {
  display: block;
  height: 100px;
  margin-bottom: 2em;
}
.page-footer .footer-partners {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.page-footer .footer-partners a {
  display: block;
}
.page-footer .footer-partners img {
  height: max(50px, 5vw);
}
.page-footer .footer-partners img.logo-stc {
  height: max(30px, 3vw);
}
.page-footer .menu--footer {
  font-size: 0.75rem;
}
.page-footer .menu--footer > ul {
  display: flex;
}
.page-footer .menu--footer > ul li:not(:last-child) {
  padding-right: 1.5rem;
}
@media only screen and (max-width: 940px) {
  .page-footer .footer-partners {
    flex-wrap: wrap;
    justify-content: center;
  }
  .page-footer .footer-partners img {
    margin: 0.75rem;
  }
}

.content-block {
  position: relative;
  margin: 0 auto;
}
.content-block .block--intro {
  font-size: 1.44rem;
  text-align: left;
  margin-bottom: 3rem;
}
.content-block.rounded {
  border-radius: 0.375rem;
}
.content-block {
  overflow: hidden;
  width: 100%;
  max-width: 1100px;
  /*
  .actions {
  	padding-top: $unit;
  	text-align: right;

  	a {
  		@extend .action;
  		@extend .small;
  		@extend .light;

  		&:after {
  			@include iconFont;
  			content: "\E804";
  			padding-left: 0.3em;
  		}
  	}
  }
  */
}
.content-block.with-v-more {
  padding-right: 4.5rem;
}
.content-block.with-v-more .actions {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  width: 3rem;
  background: #222;
}
.content-block.with-v-more .action, .content-block.with-v-more .component-type--cards-list .actions a, .component-type--cards-list .actions .content-block.with-v-more a, .content-block.with-v-more .action-links a, .action-links .content-block.with-v-more a, .content-block.with-v-more .form-wrapper input[type=submit], .form-wrapper .content-block.with-v-more input[type=submit], .content-block.with-v-more input[type=submit].button--primary, .content-block.with-v-more .form-actions a.button, .form-actions .content-block.with-v-more a.button, .content-block.with-v-more .form-managed-file input[type=submit], .form-managed-file .content-block.with-v-more input[type=submit], .content-block.with-v-more .webform-submit {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transform: rotate(-90deg);
}
.content-block.negative {
  background: #222;
}
.content-block.negative * {
  color: #FFFFFF;
  fill: #FFFFFF;
}
.content-block.with-shadow {
  box-shadow: 0 0 40px rgba(125, 125, 125, 0.12);
}
.content-block.with-border {
  border: 0.375rem solid #f9f9f9;
  border-radius: 0.75rem;
  padding-bottom: 3rem;
}
.content-block.with-hanging-title {
  padding-top: 0;
  border-color: var(--primary-color);
}
.content-block.with-hanging-title h2 {
  position: relative;
  padding-bottom: 1.5em;
  text-align: center;
}
.content-block h2 .type {
  font-size: 1rem;
}
.content-block h2 {
  color: var(--primary-color);
}
.content-block h2 span {
  font-weight: 400;
}
.content-block h3 {
  color: #222;
}
.block-title {
  text-align: center;
  text-transform: uppercase;
  padding-bottom: 0;
  padding-top: 3rem;
  letter-spacing: 0.05em;
}

.content-stripe {
  padding: 6rem 3rem;
}

h2.hanging {
  position: absolute;
  z-index: 5;
  top: 0;
  width: 3rem;
  left: -3rem;
  bottom: 0;
  padding: 0;
}
h2.hanging span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 1.5rem;
  width: auto;
  white-space: nowrap;
  transform-origin: 50% 50%;
  transform: translateX(-50%) translateY(-50%) rotate(-90deg);
}

.component[data-collapsible-processed] .collapsible-content {
  transition: opacity 1s ease 0.2s;
  opacity: 1;
  height: auto;
}
.component[data-collapsible-processed] .component--title {
  padding-right: 4.5rem;
  position: relative;
}
.component[data-collapsible-processed] .component--title:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 2.25rem;
  height: 2.25rem;
  background-image: url(../img/icons/014-minus.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.component[data-collapsible-processed][data-collapsed] .collapsible-content {
  transition: none;
  height: 0;
  opacity: 0;
  overflow: hidden;
}
.component[data-collapsible-processed][data-collapsed] .component--title:after {
  background-image: url(../img/icons/013-plus.svg);
}

@media only screen and (max-width: 1023px) {
  .article--body .component.component-type--webform {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.component.component-type--webform {
  counter-reset: questionNumber;
}
.component.component-type--webform .component--content {
  max-width: 1100px;
  margin: 0 auto;
}
.component.component-type--webform .component--content form {
  padding: 3rem;
  background: #f5f3ee;
  border-radius: 15px;
}
.component.component-type--webform .component--content .webform-submission-contact-form input[type=submit] {
  display: inline-block;
  height: auto;
  vertical-align: bottom;
  line-height: 1;
  padding: 0.75rem 1.5rem;
  background: #DA291C;
}
.component.component-type--webform .messages {
  position: static;
}
.component.component-type--webform .webform-message {
  margin-bottom: 0;
}
.component.component-type--webform form {
  padding: 0;
}
.component.component-type--webform img {
  display: block;
  max-width: 100%;
  height: auto;
}
.component.component-type--webform h2 {
  color: #009ca6;
  margin-bottom: 3rem;
}
.component.component-type--webform legend {
  font-family: "Lato", sans-serif;
  color: #222;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.44;
  counter-increment: questionNumber;
  position: relative;
}
.component.component-type--webform legend:before {
  position: absolute;
  font-size: 1em;
  left: -1em;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #009ca6;
  font-weight: normal;
}
.component.component-type--webform fieldset {
  margin: 0 0 3rem 0;
  position: relative;
  padding: 1.5rem 0 3rem 0;
}
.component.component-type--webform fieldset::after {
  content: "";
  position: absolute;
  bottom: -0.75rem;
  left: -3rem;
  right: -3rem;
  height: 20px;
  background: radial-gradient(circle, #FFFFFF 0%, #FFFFFF 25%, transparent 26%);
  background-size: 20px 20px;
  background-position: 0 0;
}
.component.component-type--webform fieldset fieldset {
  padding-bottom: 1.5rem;
  margin-bottom: 0;
}
.component.component-type--webform fieldset fieldset legend {
  font-size: 1.44rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
}
.component.component-type--webform fieldset fieldset::after {
  display: none;
}
.component.component-type--webform .form-type-textfield,
.component.component-type--webform .form-type-number {
  margin-bottom: 3rem;
}
.component.component-type--webform .form-type-textfield input,
.component.component-type--webform .form-type-number input {
  background: #FFFFFF;
}
.component.component-type--webform .form-type-textfield label, .component.component-type--webform .form-type-textfield .field-multiple-table h4.label, .field-multiple-table .component.component-type--webform .form-type-textfield h4.label,
.component.component-type--webform .form-type-number label,
.component.component-type--webform .form-type-number .field-multiple-table h4.label,
.field-multiple-table .component.component-type--webform .form-type-number h4.label {
  font-family: "Lato", sans-serif;
  color: #222;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.44;
  counter-increment: questionNumber;
  position: relative;
}
.component.component-type--webform .form-required:after {
  display: none;
}
.component.component-type--webform .form-radios {
  counter-reset: optionNumber;
}
.component.component-type--webform .form-radios .form-item.form-type-radio {
  display: block;
}
.component.component-type--webform .form-radios input[type=radio] {
  counter-increment: optionNumber;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  margin: 0 0 3rem 0;
}
.component.component-type--webform .form-radios input[type=radio] ~ label.option, .component.component-type--webform .form-radios .field-multiple-table input[type=radio] ~ h4.option.label, .field-multiple-table .component.component-type--webform .form-radios input[type=radio] ~ h4.option.label {
  display: block;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-size: 1.44rem;
  line-height: 1.4;
  font-weight: normal;
  padding: 0.75rem 1.5rem;
  border: 1px solid #009ca6;
  border-radius: 0.375rem;
  position: relative;
  background: #FFFFFF;
  margin-bottom: 0.75rem;
  width: 100%;
  cursor: pointer;
  transition: all 0.3s ease;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.node-type--learning-game .component.component-type--webform .form-radios input[type=radio] ~ label.option, .node-type--learning-game .component.component-type--webform .form-radios .field-multiple-table input[type=radio] ~ h4.option.label, .field-multiple-table .node-type--learning-game .component.component-type--webform .form-radios input[type=radio] ~ h4.option.label {
  padding-left: 4.5rem;
}
.node-type--learning-game .component.component-type--webform .form-radios input[type=radio] ~ label.option:before, .node-type--learning-game .component.component-type--webform .form-radios .field-multiple-table input[type=radio] ~ h4.option.label:before, .field-multiple-table .node-type--learning-game .component.component-type--webform .form-radios input[type=radio] ~ h4.option.label:before {
  content: counter(optionNumber, upper-alpha);
  color: #009ca6;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 2.25rem;
  transform: translateY(-50%) translateX(-50%);
  transition: all 0.3s ease;
}
.component.component-type--webform .form-radios input[type=radio]:checked ~ label.option, .component.component-type--webform .form-radios .field-multiple-table input[type=radio]:checked ~ h4.option.label, .field-multiple-table .component.component-type--webform .form-radios input[type=radio]:checked ~ h4.option.label {
  background: #009ca6;
  color: #FFFFFF;
}
.component.component-type--webform .form-radios input[type=radio]:checked ~ label.option:before, .component.component-type--webform .form-radios .field-multiple-table input[type=radio]:checked ~ h4.option.label:before, .field-multiple-table .component.component-type--webform .form-radios input[type=radio]:checked ~ h4.option.label:before {
  color: #FFFFFF;
}
.component.component-type--webform .horizontal-radios .form-radios {
  display: flex;
  flex-wrap: wrap;
}
.component.component-type--webform .horizontal-radios .form-radios .form-type-radio {
  margin: 0 0.75rem 0.75rem 0;
}
.component.component-type--webform input[type=submit] {
  height: auto;
  padding: 1.5rem;
  background: #009ca6;
}
.component.component-type--webform strong.error.form-item--error-message:before {
  content: none;
}
.component.component-type--webform strong.error.form-item--error-message {
  background: #DA291C;
  color: #FFFFFF;
  text-transform: uppercase;
  border-radius: 0.375rem;
  font-size: 1rem;
  display: inline-block;
  padding: 0 0.5em;
}

.progress-widget {
  position: fixed;
  -webkit-backface-visibility: hidden;
  bottom: 30vh;
  right: 5vw;
  width: max(70px, 8vw);
  height: max(70px, 8vw);
  z-index: 90210;
}
.progress-widget #progress-circle {
  fill: transparent;
  stroke: #009ca6;
  stroke-width: max(2vw, 10px);
  transform: rotate(90deg);
  transform-origin: 50% 50%;
}
.progress-widget #bg-circle {
  fill: #f5f3ee;
}
.progress-widget span {
  position: absolute;
  font-size: max(1.6vw, 16px);
  color: #009ca6;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
@media only screen and (max-width: 1000px) {
  .progress-widget {
    top: 3vw;
    bottom: auto;
    right: 3vw;
    filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.4));
  }
}

/**
 * @file
 * Styles for system messages.
 */
.messages {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-size: 1.44rem;
  background: #DA291C;
  z-index: 90210;
  color: #FFFFFF;
  border-width: 0;
  max-height: 100vh;
  padding: 1.5rem 4.5rem 1.5rem 1.5rem;
  cursor: pointer;
}
.messages:after {
  content: "✖️";
  position: absolute;
  bottom: 5px;
  right: 5px;
}
.messages a {
  color: #FFFFFF;
}

.messages--content {
  overflow-y: scroll;
  max-height: 100vh;
  padding: 1.5rem;
}

[dir=rtl] .messages {
  text-align: right;
  border-width: 1px 0 1px 1px;
  background-position: right 10px top 17px;
}

.messages + .messages {
  margin-top: 1.538em;
}

.messages__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.messages__item + .messages__item {
  margin-top: 0.769em;
}

/* See .color-success in Seven's colors.css */
.messages--status {
  color: #325e1c;
  background-color: #f3faef;
  color: #FFFFFF;
  background: #009ca6;
}

[dir=rtl] .messages--status {
  margin-left: 0;
}

/* See .color-warning in Seven's colors.css */
.messages--warning {
  color: #FC4C02;
  background-color: #fdf8ed;
}

[dir=rtl] .messages--warning {
  border-color: #f4daa6 transparent #f4daa6 #f4daa6;
}

/* See .color-error in Seven's colors.css */
.messages--error {
  color: #FFFFFF;
  background: #DA291C;
}

[dir=rtl] .messages--error {
  border-color: #f9c9bf;
}

.messages--error p.error {
  color: #a51b00;
}

.messages-close {
  cursor: pointer;
  position: absolute;
  right: 1.5rem;
  z-index: 90210;
}
.messages-close span {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.messages-close {
  width: 16px;
  top: 0.75rem;
}
.messages-close:before, .messages-close:after {
  position: absolute;
  left: 8px;
  content: " ";
  height: 18px;
  width: 5px;
  background-color: #FFFFFF;
}
.messages-close:before {
  transform: rotate(45deg);
}
.messages-close:after {
  transform: rotate(-45deg);
}

.ui-dialog label, .ui-dialog .field-multiple-table h4.label, .field-multiple-table .ui-dialog h4.label {
  font-size: 1rem;
}

fieldset.layout-paragraphs-field > legend {
  top: 1em;
  position: absolute;
}

fieldset.layout-paragraphs-field {
  border-radius: 1.5rem;
  background: radial-gradient(circle, #D1CCBD 0%, #D1CCBD 15%, transparent 16%), radial-gradient(circle, #D1CCBD 0%, #D1CCBD 15%, transparent 16%);
  background-size: 8px 8px, 8px 8px;
  background-position: 0 0, 4px 4px;
  border: 2px solid #D1CCBD;
}

.layout-paragraphs-item {
  background: #FFFFFF;
}

.field-multiple-table label, .field-multiple-table h4.label {
  font-size: 1rem;
}
.field-multiple-table h4.label {
  font-size: 2rem;
}
.field-multiple-table .form-wrapper {
  margin-bottom: 0.5em;
}

.action.with-icon, .component-type--cards-list .actions a.with-icon, .action-links a.with-icon, .action.action--add, .component-type--cards-list .actions a.action--add, .action-links a.action--add, .form-wrapper input.with-icon[type=submit], .form-wrapper input[type=submit].action--add, input.with-icon[type=submit].button--primary, input[type=submit].button--primary.action--add, .form-actions a.with-icon.button, .form-actions a.button.action--add, .form-managed-file input.with-icon[type=submit], .form-managed-file input[type=submit].action--add, .with-icon.webform-submit, .webform-submit.action--add {
  padding-right: 3.5em;
}
.action.with-icon:after, .component-type--cards-list .actions a.with-icon:after, .action-links a.with-icon:after, .action.action--add:after, .component-type--cards-list .actions a.action--add:after, .action-links a.action--add:after, .form-wrapper input.with-icon[type=submit]:after, .form-wrapper input[type=submit].action--add:after, input.with-icon[type=submit].button--primary:after, input[type=submit].button--primary.action--add:after, .form-actions a.with-icon.button:after, .form-actions a.button.action--add:after, .form-managed-file input.with-icon[type=submit]:after, .form-managed-file input[type=submit].action--add:after, .with-icon.webform-submit:after, .webform-submit.action--add:after {
  content: "";
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  width: 1.75em;
  height: 1.75em;
  background-size: 95% 95%;
  background-repeat: no-repeat;
  transition: filter 0.2s ease;
}
.action.action--add:after, .component-type--cards-list .actions a.action--add:after, .action-links a.action--add:after, .form-wrapper input.action--add[type=submit]:after, input.action--add[type=submit].button--primary:after, .form-actions a.action--add.button:after, .form-managed-file input.action--add[type=submit]:after, .action--add.webform-submit:after {
  background-image: url(../img/icons/013-plus-white.svg);
}

.leader-line {
  z-index: 9;
}

.ajax-progress {
  position: fixed;
  text-align: center;
  color: #009ca6;
  padding: 20px 20px 0 20px;
  width: auto;
  height: auto;
  font-weight: 700;
  font-size: 5rem;
  z-index: 90210;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  opacity: 0.9;
}
.ajax-progress .throbber {
  display: none;
  height: 0;
}

.ajax-progress:before {
  font-size: 15vw;
  display: none;
  text-transform: uppercase;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  text-shadow: 0 0 50px 0 rgb(134, 255, 253);
}

.ajax-progress-fullscreen {
  background: none;
}

.ajax-progress:after {
  content: "Carico...";
  display: block;
  text-align: center;
  background: #FFFFFF;
  padding: 1.5rem;
  border-radius: 1.5rem;
}

.ajax-progress * {
  display: none;
}

.card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  border-radius: 0.75rem;
}
.card figure img {
  width: 100%;
  height: auto;
  display: block;
}
.card .content {
  padding: 1.5rem;
  position: relative;
  z-index: 42;
}
.card .content h3 {
  background-color: #FFFFFF;
  text-transform: none;
  color: #DA291C;
  padding: 0.75rem 0 0.75rem 0;
  margin-bottom: 0;
  font-size: 2rem;
}
@media only screen and (max-width: 940px) {
  .card .content h3 {
    font-size: 1.44rem;
  }
}
.card .content h3 a {
  color: #DA291C;
  text-decoration: none;
}
.card.view-mode--card figure {
  aspect-ratio: 6/4;
  position: relative;
  overflow: hidden;
  height: auto;
  background-color: #009ca6;
}
.card.view-mode--card.no-image {
  flex-direction: column-reverse;
  padding-top: 66%;
  background: #009ca6;
}
.card.view-mode--card.no-image .content {
  background-color: #FFFFFF;
}
.card.node-type--resource {
  border-radius: 0.75rem;
  overflow: hidden;
  counter-increment: tappa;
}
.card.node-type--resource .content {
  padding: 0;
}
.card.node-type--resource .content h3 small {
  color: #222;
  text-transform: uppercase;
}
.card.node-type--resource .content h3 small:after {
  content: " " counter(tappa);
}
.card.node-type--resource .content h3 {
  font-size: 1.44rem;
  background: rgba(255, 255, 255, 0.3);
  padding: 1.5rem;
}
.card .node--intro,
.card .term--intro {
  padding: 1.5rem;
}
.card .node--intro *:last-child,
.card .term--intro *:last-child {
  margin-bottom: 0;
}
.vertical-cards-container .card {
  max-width: 40rem;
  margin: 0 auto 3rem auto;
  position: relative;
  flex-direction: row;
  overflow: hidden;
}
@media only screen and (min-width: 1023px) {
  .vertical-cards-container .card:nth-child(even) {
    right: -2vw;
  }
  .vertical-cards-container .card:nth-child(odd) {
    left: -2vw;
  }
}
.vertical-cards-container .card figure {
  flex: 1;
}
.vertical-cards-container .card figure img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
.vertical-cards-container .card .content {
  flex: 2;
}

.link-sharing-widget .action, .link-sharing-widget .component-type--cards-list .actions a, .component-type--cards-list .actions .link-sharing-widget a, .link-sharing-widget .action-links a, .action-links .link-sharing-widget a, .link-sharing-widget .form-wrapper input[type=submit], .form-wrapper .link-sharing-widget input[type=submit], .link-sharing-widget input[type=submit].button--primary, .link-sharing-widget .form-actions a.button, .form-actions .link-sharing-widget a.button, .link-sharing-widget .form-managed-file input[type=submit], .form-managed-file .link-sharing-widget input[type=submit], .link-sharing-widget .webform-submit {
  position: relative;
}
.link-sharing-widget .action:after, .link-sharing-widget .component-type--cards-list .actions a:after, .component-type--cards-list .actions .link-sharing-widget a:after, .link-sharing-widget .action-links a:after, .action-links .link-sharing-widget a:after, .link-sharing-widget .form-wrapper input[type=submit]:after, .form-wrapper .link-sharing-widget input[type=submit]:after, .link-sharing-widget input[type=submit].button--primary:after, .link-sharing-widget .form-actions a.button:after, .form-actions .link-sharing-widget a.button:after, .link-sharing-widget .form-managed-file input[type=submit]:after, .form-managed-file .link-sharing-widget input[type=submit]:after, .link-sharing-widget .webform-submit:after {
  content: "";
  position: absolute;
  right: 1em;
  top: 50%;
  transform: translateY(-50%);
  width: 1.75em;
  height: 1.75em;
  background-size: 95% 95%;
  background-repeat: no-repeat;
  transition: filter 0.2s ease;
}
.link-sharing-widget .action:hover:after, .link-sharing-widget .component-type--cards-list .actions a:hover:after, .component-type--cards-list .actions .link-sharing-widget a:hover:after, .link-sharing-widget .action-links a:hover:after, .action-links .link-sharing-widget a:hover:after, .link-sharing-widget .form-wrapper input[type=submit]:hover:after, .form-wrapper .link-sharing-widget input[type=submit]:hover:after, .link-sharing-widget input[type=submit].button--primary:hover:after, .link-sharing-widget .form-actions a.button:hover:after, .form-actions .link-sharing-widget a.button:hover:after, .link-sharing-widget .form-managed-file input[type=submit]:hover:after, .form-managed-file .link-sharing-widget input[type=submit]:hover:after, .link-sharing-widget .webform-submit:hover:after {
  filter: Invert(1);
}
.link-sharing-widget .action.success:after, .link-sharing-widget .component-type--cards-list .actions a.success:after, .component-type--cards-list .actions .link-sharing-widget a.success:after, .link-sharing-widget .action-links a.success:after, .action-links .link-sharing-widget a.success:after, .link-sharing-widget .form-wrapper input.success[type=submit]:after, .form-wrapper .link-sharing-widget input.success[type=submit]:after, .link-sharing-widget input.success[type=submit].button--primary:after, .link-sharing-widget .form-actions a.success.button:after, .form-actions .link-sharing-widget a.success.button:after, .link-sharing-widget .form-managed-file input.success[type=submit]:after, .form-managed-file .link-sharing-widget input.success[type=submit]:after, .link-sharing-widget .success.webform-submit:after {
  background-image: url(../img/icons/019-check.svg);
}

.link-sharing-widget--copy {
  padding-right: 3.5em;
}
.link-sharing-widget--copy:after {
  background-image: url(../img/icons/018-copy.svg);
}

.link-sharing-widget--share {
  padding-right: 3.5em;
}
.link-sharing-widget--share:after {
  background-image: url(../img/icons/020-outside.svg);
}

.action-links a:before {
  display: none;
  font-size: 2em;
  vertical-align: middle;
}

.horizontal-cards-container {
  padding-top: 1.5rem;
  display: grid;
  position: relative;
  overflow: hidden;
  gap: 1.5rem;
}
.horizontal-cards-container.up-3 {
  grid-template-columns: repeat(3, 1fr);
}
.horizontal-cards-container.up-4 {
  grid-template-columns: repeat(4, 1fr);
}
.horizontal-cards-container.up-4 .card {
  font-size: 0.8rem;
  min-height: 255px;
}
.horizontal-cards-container.up-5 {
  grid-template-columns: repeat(5, 1fr);
}
.horizontal-cards-container.up-5 .card {
  font-size: 0.6rem;
  min-height: 180px;
}
.horizontal-cards-container.up-auto {
  grid-template-columns: repeat(auto-fill, minmax(20em, 1fr));
}
.horizontal-cards-container.up-auto .card {
  font-size: 0.6rem;
  min-height: 180px;
}
.horizontal-cards-container.up-auto.items-count-1, .horizontal-cards-container.up-auto.items-count-2 {
  grid-template-columns: repeat(auto-fit, minmax(250px, 300px));
}

.vertical-cards-container article {
  margin-bottom: 1.5rem;
  min-height: 250px;
  overflow: hidden;
}
.vertical-cards-container article h3 {
  font-size: 1.5rem;
}

.horizontal-cards-container, .vertical-cards-container {
  gap: 3rem;
}
.horizontal-cards-container article, .vertical-cards-container article {
  overflow: hidden;
}
.horizontal-cards-container.full-bleed, .vertical-cards-container.full-bleed {
  gap: 0;
}
.horizontal-cards-container.full-bleed article, .vertical-cards-container.full-bleed article {
  border-radius: 0;
}

.mono-type .article--type {
  display: none;
}

.bg-dots {
  background-image: radial-gradient(#bbb 0.5px, rgba(0, 0, 0, 0) 0.5px);
  background-size: 10px 10px;
}

.block-content--5 {
  margin-bottom: 1.5rem;
}
.block-content--5 .component {
  font-size: 2rem;
}
.block-content--5 .component .home--intro {
  color: #DA291C;
  padding-bottom: 3rem;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
}

.field--field-downloads .field__label,
.field--field-media-document .field__label {
  font-weight: 700;
  margin-bottom: 0.75rem;
  font-size: 2.44rem;
}
@media only screen and (max-width: 940px) {
  .field--field-downloads .field__label,
  .field--field-media-document .field__label {
    font-size: 1.952rem;
  }
}
.field--field-downloads a,
.field--field-media-document a {
  padding: 0.75rem;
  background: #f7f7f7;
  border-radius: 10px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 940px) {
  .field--field-downloads a,
  .field--field-media-document a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}
.field--field-downloads a:last-child,
.field--field-media-document a:last-child {
  margin-bottom: 0;
}
.field--field-downloads .items,
.field--field-media-document .items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3rem;
}
@media only screen and (max-width: 940px) {
  .field--field-downloads .items,
  .field--field-media-document .items {
    display: block;
  }
}
.field--field-downloads .pdfpreview-image,
.field--field-media-document .pdfpreview-image {
  border-radius: 10px;
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
}
.field--field-downloads .pdfpreview-image a,
.field--field-media-document .pdfpreview-image a {
  margin: 0;
  padding: 0;
  background: transparent;
}
.field--field-downloads .pdfpreview-image img,
.field--field-media-document .pdfpreview-image img {
  width: 10vw;
  min-width: 7rem;
  height: auto;
  padding-right: 0;
  box-shadow: 0 0px 3px 0 rgba(0, 0, 0, 0.25);
}
.field--field-downloads .pdfpreview-image .field--field-downloads,
.field--field-media-document .pdfpreview-image .field--field-downloads {
  background: transparent;
}
.field--field-downloads .pdfpreview-image .pdfpreview-image-wrapper,
.field--field-media-document .pdfpreview-image .pdfpreview-image-wrapper {
  display: flex;
  align-items: center;
  background: transparent;
  flex-direction: column;
}
.field--field-downloads .document--icon,
.field--field-media-document .document--icon {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.field--field-downloads .document--icon .document--mime-type,
.field--field-media-document .document--icon .document--mime-type {
  font-size: 1rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
}
.field--field-downloads .document--icon .document--file-size,
.field--field-media-document .document--icon .document--file-size {
  font-size: 0.5rem;
}
.field--field-downloads .document--label,
.field--field-media-document .document--label {
  font-weight: 700;
}
.field--field-downloads .field--field-media-document,
.field--field-media-document .field--field-media-document {
  margin-bottom: 1.5rem;
}

.field--field-media-document {
  margin-bottom: 1.5rem;
}

.component-type--pzt-downloads .field--field-downloads .items li,
.component-type--pzt-downloads .field--field-media-document .items li {
  padding-left: 0;
}
.component-type--pzt-downloads .field--field-downloads .items li::before,
.component-type--pzt-downloads .field--field-media-document .items li::before {
  display: none;
}

.video-container {
  position: relative;
  margin-top: 18vh;
  margin-bottom: 5vh;
  overflow: visible;
}
.video-container:after {
  content: "";
  position: absolute;
  background-image: url(../img/bg/tv-bg.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 98;
  transform: translateX(0.6%) translateY(-14%) scale(1.51);
  pointer-events: none;
}

.landing-page--header {
  margin-top: 0;
}
.landing-page--header .component--content {
  border-radius: 1.5rem;
}
.landing-page--header figure {
  display: block;
  position: relative;
  width: 100%;
  padding-bottom: 25%;
}
.landing-page--header img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  bottom: 0;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  border-radius: 0.75rem;
  box-shadow: 0 0 0 5px rgba(0, 156, 166, 0.0784313725);
}
.landing-page--header .landing-page--intro {
  font-size: 1.44rem;
  padding: 1.5rem 0 0 0;
}
.landing-page--header h1 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #DA291C;
  margin: 0 0 0.75rem 0;
  font-size: max(2rem, 3vw);
}
.landing-page--header .landing-page--intro, .landing-page--header h1 {
  margin: 0 0 0.75rem 0;
}
.landing-page--header figcaption {
  position: absolute;
  z-index: 99919;
  bottom: 0;
  right: 0;
  background: #eef7f8;
  padding: 0 0.5em;
  font-size: 0.75rem;
  border-radius: 5px 0 0 0;
}

.user-logged-in nav.tabs {
  position: fixed;
  bottom: 10px;
  left: 10px;
  background: rgba(255, 255, 255, 0.8);
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
  z-index: 90209;
  border: 1px solid rgba(0, 0, 0, 0.5);
}
.user-logged-in nav.tabs ul.tabs {
  margin: 0;
}

ul.tabs {
  margin: 0;
}
ul.tabs > li {
  display: inline-block;
  margin-right: 0.3rem;
}
ul.tabs a {
  display: block;
  padding: 0.2em 1em;
  text-decoration: none;
}
ul.tabs a.is-active {
  background-color: #eee;
}

.cke_editable {
  padding: 1.5rem;
}

.contextual-links {
  font-family: "Oswald", "grenadine-mvb", sans-serif !important;
}
.contextual-links li:before {
  display: none;
}
.contextual-links a {
  color: #222 !important;
}

.sub-pages-menu .menu--label {
  display: none;
}

#toolbar-administration {
  position: relative;
}

#toolbar-administration,
.contextual {
  z-index: 90201;
}

.cke_bottom {
  display: none !important;
}

.ui-dialog {
  z-index: 900;
}
.ui-dialog .form-wrapper input[type=submit] {
  padding: 0 1.5rem 0 1.5rem;
}

.layout-paragraphs-builder-form .lpb-form__actions .lpb-btn--cancel {
  margin-top: 0;
  padding: 5px 16px 5px 16px;
  text-align: center;
}
.layout-paragraphs-builder-form .lpb-form__actions .button--primary {
  padding: 7px 16px 10px 16px;
}

.node--unpublished {
  position: relative;
}
.node--unpublished:before {
  content: "unpublished";
  text-transform: uppercase;
  position: absolute;
  font-size: 9vw;
  top: 0;
  left: 50%;
  transform: translateX(-50%) rotate(-5deg);
  z-index: 99999;
  opacity: 0.2;
  background: #ff7;
  padding: 30px;
  transform-origin: 50% 50%;
  pointer-events: none;
}

@media (min-width: 61em) {
  .gin--horizontal-toolbar #toolbar-administration {
    z-index: 99999 !important;
  }
}
.gin-secondary-toolbar--frontend {
  z-index: 99998;
}

.field--field-links,
.field--field-downloads {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.field--field-links h4,
.field--field-downloads h4 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  float: left;
  display: block;
  background-color: #FC4C02;
  padding: 1rem;
  color: #FFFFFF;
  text-decoration: none;
}
.field--field-links a,
.field--field-downloads a {
  margin-top: 0.75rem;
}

.bg-orange {
  float: left;
  display: block;
  background-color: #FC4C02;
  padding: 1rem;
  color: #FFFFFF;
  text-decoration: none;
}

.field-preparatory-resources {
  justify-content: center;
  grid-template-columns: repeat(3, minmax(24rem, 1fr));
}
.field-preparatory-resources p {
  font-size: clamp(16px, 1vw, 20px);
}

.component-type--comments {
  margin-top: 4.5rem;
}
.component-type--comments form {
  background: #FFFFFF;
}
.component-type--comments textarea {
  resize: none;
  width: 100%;
}

.component-header--with-icon {
  background: rgba(255, 255, 255, 0.3);
  overflow: visible;
  margin-bottom: 3rem;
}
.component-header--with-icon .component--content img, .component-header--with-icon .component--content svg {
  width: 25%;
  transform: scale(1.1);
}
.component-header--with-icon .component--content {
  display: flex;
  flex-direction: row;
}

.component-header--tappa,
.component-header--pathway {
  background: rgba(255, 255, 255, 0.3);
  margin-bottom: 3rem;
  padding-bottom: 1.5rem;
}
.component-header--tappa .component--content,
.component-header--pathway .component--content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  -moz-column-gap: 3rem;
       column-gap: 3rem;
}
@media only screen and (max-width: 27em) {
  .component-header--tappa .component--content,
  .component-header--pathway .component--content {
    flex-direction: column;
  }
}
.component-header--tappa .component--content img,
.component-header--tappa .component--content svg,
.component-header--pathway .component--content img,
.component-header--pathway .component--content svg {
  height: auto;
  transform: scale(1.2);
}

.component-header--pathway img,
.component-header--pathway svg {
  width: clamp(9.6rem, 21vw, 21.6rem);
}

.component-header--tappa img,
.component-header--tappa svg {
  width: clamp(6rem, 12vw, 19rem);
  pointer-events: none;
}

html {
  counter-reset: tappa;
}

.risorse-tappa article {
  position: relative;
  overflow: visible;
  /*
         &:before {
             position: absolute;
             top: 0;
             left: 0;
             transform: translateX(-50%) translateY(-50%);
             content: counter(risorsa-in-tappa);
             @include titleFont;
             font-size: $hugeFontSize;
             color: $primaryColor;


             background: $white;
             border-radius: 50%;
             width: 1.5em;
             height: 1.5em;
             display: flex;
             text-align: center;


         }
   */
  counter-increment: risorsa-in-tappa;
}

.home--pathways {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: flex-start;
  padding: 1.5rem 1.5rem 10rem 1.5rem;
  gap: 3rem;
  justify-content: space-between;
}
.home--pathways .node-type--pathway {
  flex-basis: calc(50% - 3rem);
}
@media only screen and (max-width: 70em) {
  .home--pathways {
    display: block;
  }
}

@media only screen and (max-width: 1023px) {
  .home--intro .col-6 p {
    margin-top: 4.5rem;
  }
}

@keyframes zum {
  0% {
    opacity: 0.2;
    transform: scale(0.6);
  }
  50% {
    opacity: 1;
    transform: scale(1);
  }
}
.home--case-studies-teaser {
  margin-bottom: 3rem;
}
@media only screen and (max-width: 70em) {
  .home--case-studies-teaser {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}
.home--case-studies-teaser .component--content {
  background: #F7B0BD;
  padding: 1.5rem;
  position: relative;
  padding: 2.25rem;
  display: flex;
  gap: 1.5rem;
  font-size: 2.44rem;
  justify-content: space-between;
  align-items: center;
  color: #222;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  padding-left: 13rem;
}
.home--case-studies-teaser .component--content a {
  background: #222;
}
@media only screen and (max-width: 1023px) {
  .home--case-studies-teaser .component--content {
    font-size: 1.44rem;
    padding: 2.25rem 2.25rem 2.25rem 10rem;
  }
  .home--case-studies-teaser .component--content .action, .home--case-studies-teaser .component--content .component-type--cards-list .actions a, .component-type--cards-list .actions .home--case-studies-teaser .component--content a, .home--case-studies-teaser .component--content .form-wrapper input[type=submit], .form-wrapper .home--case-studies-teaser .component--content input[type=submit], .home--case-studies-teaser .component--content input[type=submit].button--primary, .home--case-studies-teaser .component--content .form-actions a.button, .form-actions .home--case-studies-teaser .component--content a.button, .home--case-studies-teaser .component--content .form-managed-file input[type=submit], .form-managed-file .home--case-studies-teaser .component--content input[type=submit], .home--case-studies-teaser .component--content .webform-submit, .home--case-studies-teaser .component--content .action-links a, .action-links .home--case-studies-teaser .component--content a {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 940px) {
  .home--case-studies-teaser .component--content {
    padding: 2.25rem 2.25rem 2.25rem 6rem;
    display: block;
  }
}
.home--case-studies-teaser .component--content:before {
  position: absolute;
  content: "";
  width: 18rem;
  height: 18rem;
  transform: rotate(-15deg);
  top: -5rem;
  left: -2rem;
  background-image: url(../img/icons/movie.svg);
  background-size: contain;
  background-repeat: no-repeat;
  filter: drop-shadow(4px 4px 0px rgba(0, 0, 0, 0.1333333333));
}
@media only screen and (max-width: 1023px) {
  .home--case-studies-teaser .component--content:before {
    width: 14rem;
    height: 14rem;
  }
}
@media only screen and (max-width: 940px) {
  .home--case-studies-teaser .component--content:before {
    width: 12rem;
    height: 12rem;
  }
}
.home--case-studies-teaser .component--content p {
  padding: 0;
  margin: 0;
}

.node-publications.view-mode-full .node-metadata {
  justify-content: flex-start;
  flex-wrap: nowrap;
}
@media only screen and (max-width: 940px) {
  .node-publications.view-mode-full .node-metadata {
    flex-direction: column;
  }
}
.node-publications.view-mode-full .node-metadata .node--meta--fields {
  align-content: flex-start;
  gap: 1.5rem;
}
.node-publications .component-type--publication-header.no-background {
  padding: 3rem;
  background: #FFFFFF;
  min-height: auto;
  padding-left: 2.5rem;
}
.node-publications .component-type--publication-header.no-background h1 {
  max-width: 40rem;
  color: #DA291C;
}
.node-publications .component--type-article-meta .component--content {
  align-items: flex-start;
}
.node-publications ul.field--field-link-to-original li {
  padding-left: 0;
}
.node-publications ul.field--field-link-to-original li::before {
  display: none;
}
.node-publications ul.field--field-link-to-original li .action, .node-publications ul.field--field-link-to-original li .component-type--cards-list .actions a, .component-type--cards-list .actions .node-publications ul.field--field-link-to-original li a, .node-publications ul.field--field-link-to-original li .form-wrapper input[type=submit], .form-wrapper .node-publications ul.field--field-link-to-original li input[type=submit], .node-publications ul.field--field-link-to-original li input[type=submit].button--primary, .node-publications ul.field--field-link-to-original li .form-actions a.button, .form-actions .node-publications ul.field--field-link-to-original li a.button, .node-publications ul.field--field-link-to-original li .form-managed-file input[type=submit], .form-managed-file .node-publications ul.field--field-link-to-original li input[type=submit], .node-publications ul.field--field-link-to-original li .webform-submit, .node-publications ul.field--field-link-to-original li .action-links a, .action-links .node-publications ul.field--field-link-to-original li a {
  color: #FFFFFF;
}

@media all and (max-width: 1100px) {
  .node-publications .component-type--publication-header.no-background {
    padding: 1.5rem 1.5rem;
  }
}
.view-pubblicazioni .component--content .grid {
  align-items: stretch;
}
.view-pubblicazioni form {
  margin-bottom: 1.5rem;
  padding: 0;
  background-color: transparent;
}
.view-pubblicazioni form .fieldgroup {
  margin-bottom: 0;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  align-items: center;
  gap: 1.5rem;
}
.view-pubblicazioni form .fieldgroup legend {
  margin-bottom: 0.75rem;
  position: relative;
  display: contents;
}
.view-pubblicazioni form .fieldgroup legend span {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-size: 1.44rem;
  color: #222;
}
.view-pubblicazioni form .fieldgroup .form-radios .form-item-field-target-target-id {
  display: inline-block;
  position: relative;
  margin-right: 0.75rem;
  margin-bottom: 0;
}
.view-pubblicazioni form .fieldgroup .form-radios .form-item-field-target-target-id input {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: 2px solid;
  height: 100%;
  width: 100%;
  left: 0;
  position: absolute;
  top: 0;
  opacity: 0.000001;
  z-index: 2px;
}
.view-pubblicazioni form .fieldgroup .form-radios .form-item-field-target-target-id label, .view-pubblicazioni form .fieldgroup .form-radios .form-item-field-target-target-id .field-multiple-table h4.label, .field-multiple-table .view-pubblicazioni form .fieldgroup .form-radios .form-item-field-target-target-id h4.label {
  font-size: 1rem;
  border-radius: 2em;
  border: 2px solid #DA291C;
  background-color: #FFFFFF;
  display: block;
  padding: 0.25em 0.75em;
  cursor: pointer;
}
.view-pubblicazioni form .fieldgroup .form-radios input:checked + label, .view-pubblicazioni form .fieldgroup .form-radios .field-multiple-table input:checked + h4.label, .field-multiple-table .view-pubblicazioni form .fieldgroup .form-radios input:checked + h4.label {
  background-color: #DA291C;
  color: #FFFFFF;
}
.view-pubblicazioni form .form-actions .form-submit {
  margin-top: 0;
  padding: 0 0.75rem;
}

.node-news .article--body {
  background-color: #FFFFFF;
}

.news-date {
  color: #888;
}

body.with-immersive-slides .gin-secondary-toolbar {
  display: none;
}
body.with-immersive-slides {
  background: #222221;
}
body.with-immersive-slides .node-case-study {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
  z-index: 90100;
  background-image: url("../img/ui/case-studies/film-repeat-y.svg"), url("../img/ui/case-studies/film-repeat-y.svg");
  background-position: 1% 50%, 98% 50%;
  background-size: 5vw auto, 5vw auto;
  background-repeat: repeat-y, repeat-y;
  background-attachment: fixed;
  background-color: #222221;
}
body.with-immersive-slides .node-case-study.presentation {
  min-height: 100dvh;
}
body.with-immersive-slides .node-case-study section {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.with-immersive-slides .node-case-study section.slide {
  padding: 5vw 10vw 0 10vw;
  min-height: 100dvh;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}
body.with-immersive-slides .node-case-study section.slide .slide--content {
  position: relative;
  z-index: 2;
  overflow: auto;
  padding-bottom: calc(3.3333333333vw + min(7.5vw, 2.5rem) + 5vw);
  padding-right: 1rem;
}
body.with-immersive-slides .node-case-study section.slide .slide--content::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
body.with-immersive-slides .node-case-study section.slide .slide--content::-webkit-scrollbar-thumb {
  background: #FFFFFF;
  border-radius: 5px;
}
body.with-immersive-slides .node-case-study section.slide .slide--content::-webkit-scrollbar-track {
  background: #222221;
}
body.with-immersive-slides .node-case-study section.slide .slide--content {
  scrollbar-face-color: #FFFFFF;
  scrollbar-track-color: #222221;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media {
  transform: scale(0.9);
  transition: all 1s ease-in-out;
}
body.with-immersive-slides .node-case-study section.slide.active {
  transition: opacity 1s ease-in-out;
  opacity: 1;
}
body.with-immersive-slides .node-case-study section.slide.active .slide--media {
  transform: scale(1);
}
body.with-immersive-slides .node-case-study section.slide.intro .slide--content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
body.with-immersive-slides .node-case-study section.slide.intro h1 {
  color: rgb(255, 218, 176);
  display: block;
  text-align: center;
  font-weight: 400;
  font-size: 5rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide.intro h1 {
    font-size: 2rem;
  }
}
body.with-immersive-slides .node-case-study section.slide.intro h1 small {
  display: block;
  color: #FFFFFF;
  text-align: center;
  text-transform: initial;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-variant: initial;
  font-size: 2rem;
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide.intro h1 small {
    font-size: 1rem;
  }
}
body.with-immersive-slides .node-case-study section.slide.intro p {
  color: #FFFFFF;
  text-align: center;
}
body.with-immersive-slides .node-case-study section.slide .slide--content {
  display: grid;
  align-items: center;
  grid-template-columns: 1fr 1fr;
  gap: 4.5rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide .slide--content {
    display: block;
  }
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media .slide--media--content {
  background-color: #FFFFFF;
  position: relative;
  overflow: visible;
  padding: 0.75rem;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media:has(video) {
  max-width: -moz-max-content;
  max-width: max-content;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media img {
  max-width: 30rem;
  width: 100%;
  height: auto;
  position: relative;
  display: block;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media img {
    max-width: 15rem;
  }
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media img,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media iframe,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media video,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media source {
  z-index: 2;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media video,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media source {
  position: relative;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media video {
  max-width: 30rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media video {
    max-width: 100%;
  }
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media svg {
  z-index: 1;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media .video-container {
  margin-top: unset;
  margin-bottom: unset;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media .video-container::after {
  display: none;
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--text,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media--text {
  color: #FFFFFF;
  font-size: 1.25rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide .slide--content .slide--text,
  body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media--text {
    font-size: 0.9rem;
  }
}
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--text h2, body.with-immersive-slides .node-case-study section.slide .slide--content .slide--text h3, body.with-immersive-slides .node-case-study section.slide .slide--content .slide--text h4,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media--text h2,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media--text h3,
body.with-immersive-slides .node-case-study section.slide .slide--content .slide--media--text h4 {
  color: rgb(255, 218, 176);
}
body.with-immersive-slides .node-case-study section.slide .slide--content.text_left .slide--media {
  order: 2;
}
body.with-immersive-slides .node-case-study section.slide .slide--content.text_left .slide--text {
  order: 1;
}
body.with-immersive-slides .node-case-study section.slide .slide--content.text_right .slide--media {
  order: 1;
}
body.with-immersive-slides .node-case-study section.slide .slide--content.text_right .slide--text {
  order: 2;
}
body.with-immersive-slides .node-case-study section.slide .slide--content.show_media_only {
  display: block;
  padding: 6rem;
}
@media only screen and (max-width: 1023px) {
  body.with-immersive-slides .node-case-study section.slide .slide--content.show_media_only {
    padding: 0;
  }
}
body.with-immersive-slides .node-case-study section.slide .slide--content.show_media_only .slide--text {
  display: none;
}
body.with-immersive-slides .node-case-study section.slide .slide--content:has(img) {
  justify-items: center;
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro {
  text-align: center;
  color: #FFFFFF;
  grid-column: 1/3;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro {
    text-align: left;
  }
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .text-container, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .field--field-body, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .component--content body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-image-text .component--text, .component-type--pzt-image-text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .infographic--body, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--text .component--content, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .node-glossario.view-mode-full .component-type--page-header .component--content, .node-glossario.view-mode-full body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--page-header .component--content, .component-type--text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content, .node-glossario.view-mode-full .component-type--page-header body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content,
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-downloads .component--content,
.component-type--pzt-downloads body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .cke_editable {
  max-width: 100%;
  color: #FFFFFF;
  font-size: 1.25rem;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .text-container, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .field--field-body, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .component--content body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-image-text .component--text, .component-type--pzt-image-text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .infographic--body, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--text .component--content, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .node-glossario.view-mode-full .component-type--page-header .component--content, .node-glossario.view-mode-full body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--page-header .component--content, .component-type--text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content, .node-glossario.view-mode-full .component-type--page-header body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content,
  body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-downloads .component--content,
  .component-type--pzt-downloads body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .cke_editable {
    font-size: 0.9rem;
  }
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .text-container h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h2, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .field--field-body h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-blockquote .component--content .component--text h2, .component-type--pzt-blockquote .component--content body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-image-text .component--text h2, .component-type--pzt-image-text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-infographic .infographic--body h2, .component-type--pzt-infographic body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .infographic--body h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--text .component--content h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .node-glossario.view-mode-full .component-type--page-header .component--content h2, .node-glossario.view-mode-full body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--page-header .component--content h2, .component-type--text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h2, .node-glossario.view-mode-full .component-type--page-header body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h2,
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-downloads .component--content h2,
.component-type--pzt-downloads body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .cke_editable h2, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .text-container h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h3, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .field--field-body h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-blockquote .component--content .component--text h3, .component-type--pzt-blockquote .component--content body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-image-text .component--text h3, .component-type--pzt-image-text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-infographic .infographic--body h3, .component-type--pzt-infographic body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .infographic--body h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--text .component--content h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .node-glossario.view-mode-full .component-type--page-header .component--content h3, .node-glossario.view-mode-full body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--page-header .component--content h3, .component-type--text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h3, .node-glossario.view-mode-full .component-type--page-header body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h3,
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-downloads .component--content h3,
.component-type--pzt-downloads body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .cke_editable h3, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .text-container h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body h4, .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .field--field-body h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-blockquote .component--content .component--text h4, .component-type--pzt-blockquote .component--content body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-image-text .component--text h4, .component-type--pzt-image-text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--text h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-infographic .infographic--body h4, .component-type--pzt-infographic body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .infographic--body h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--text .component--content h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .node-glossario.view-mode-full .component-type--page-header .component--content h4, .node-glossario.view-mode-full body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--page-header .component--content h4, .component-type--text body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h4, .node-glossario.view-mode-full .component-type--page-header body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h4,
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component-type--pzt-downloads .component--content h4,
.component-type--pzt-downloads body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .component--content h4, body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--intro .cke_editable h4 {
  color: rgb(255, 218, 176);
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--media {
  background-color: transparent;
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--content .slide--media:has(.video-container) {
  width: 100%;
}
@media only screen and (max-width: 940px) {
  body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--media--right {
    margin-top: 1.5rem;
  }
}
body.with-immersive-slides .node-case-study section.slide.slide-2-media .slide--media--text {
  color: #FFFFFF;
}
body.with-immersive-slides .node-case-study .slides--navigation {
  padding: 1.6666666667vw;
  background: rgba(34, 34, 33, 0.9);
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  justify-content: center;
  z-index: 100000;
}
body.with-immersive-slides .node-case-study .slides--navigation:after {
  content: "";
  position: absolute;
  bottom: 100%;
  right: 0;
  left: 0;
  height: 5vw;
  background: linear-gradient(0deg, rgba(34, 34, 33, 0.9), rgba(34, 34, 33, 0));
  z-index: 90;
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  cursor: pointer;
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control button.disabled {
  opacity: 0.3;
  cursor: not-allowed;
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control button span {
  display: none;
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control button {
  position: relative;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: min(7.5vw, 2.5rem);
  height: min(7.5vw, 2.5rem);
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control--start button {
  background-image: url("../img/ui/case-studies/slide--start.svg");
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control--next button {
  background-image: url("../img/ui/case-studies/slide--next.svg");
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control--prev button {
  background-image: url("../img/ui/case-studies/slide--previous.svg");
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control--full-screen button {
  background-image: url("../img/ui/case-studies/full-screen--open.svg");
}
body.with-immersive-slides .node-case-study .slides--navigation .slides--control--exit button {
  background-image: url("../img/ui/case-studies/slide--exit.svg");
}
body.with-immersive-slides .node-case-study:fullscreen .slides--control--full-screen button {
  background-image: url("../img/ui/case-studies/full-screen--close.svg");
}

@keyframes frameReveal {
  0% {
    opacity: 0.2;
  }
  50% {
    opacity: 1;
  }
}
body:not(.with-immersive-slides) .node-case-study,
body:not(.with-immersive-slides) .node-type--case-study {
  position: relative;
  margin-bottom: 7.5rem;
  margin-top: 4.5rem;
  margin-right: auto;
  margin-left: auto;
}
body:not(.with-immersive-slides) .node-case-study.view-mode--full,
body:not(.with-immersive-slides) .node-type--case-study.view-mode--full {
  background: rgba(0, 0, 0, 0.8666666667);
}
body:not(.with-immersive-slides) .node-case-study section.intro,
body:not(.with-immersive-slides) .node-type--case-study section.intro {
  position: relative;
  max-width: 45rem;
  background-image: url("../img/ui/case-studies/film-strip.svg");
  background-size: auto 100%;
  background-repeat: repeat-x;
  background-color: #222221;
  padding: 12rem 10vw 12rem 10vw;
  position: relative;
  margin: 0 auto;
  border-radius: 10px;
}
body:not(.with-immersive-slides) .node-case-study section.intro h1, body:not(.with-immersive-slides) .node-case-study section.intro h3,
body:not(.with-immersive-slides) .node-type--case-study section.intro h1,
body:not(.with-immersive-slides) .node-type--case-study section.intro h3 {
  color: rgb(255, 218, 176);
  display: block;
  text-align: center;
  font-weight: 400;
}
body:not(.with-immersive-slides) .node-case-study section.intro h1 small, body:not(.with-immersive-slides) .node-case-study section.intro h3 small,
body:not(.with-immersive-slides) .node-type--case-study section.intro h1 small,
body:not(.with-immersive-slides) .node-type--case-study section.intro h3 small {
  display: block;
  color: #FFFFFF;
  text-align: center;
  text-transform: initial;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-variant: initial;
  font-size: 1rem;
  margin-bottom: 1.5rem;
}
body:not(.with-immersive-slides) .node-case-study section.intro h1 small:last-child, body:not(.with-immersive-slides) .node-case-study section.intro h3 small:last-child,
body:not(.with-immersive-slides) .node-type--case-study section.intro h1 small:last-child,
body:not(.with-immersive-slides) .node-type--case-study section.intro h3 small:last-child {
  margin-bottom: 0;
}
body:not(.with-immersive-slides) .node-case-study section.intro p,
body:not(.with-immersive-slides) .node-type--case-study section.intro p {
  color: #FFFFFF;
  text-align: center;
}
body:not(.with-immersive-slides) .node-case-study .slides--navigation,
body:not(.with-immersive-slides) .node-type--case-study .slides--navigation {
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  transform: translateX(-50%);
  bottom: 15%;
}
body:not(.with-immersive-slides) .node-case-study .slides--navigation .slides--control button,
body:not(.with-immersive-slides) .node-type--case-study .slides--navigation .slides--control button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  cursor: pointer;
}
body:not(.with-immersive-slides) .node-case-study .slides--navigation .slides--control button span,
body:not(.with-immersive-slides) .node-type--case-study .slides--navigation .slides--control button span {
  display: none;
}
body:not(.with-immersive-slides) .node-case-study .slides--navigation .slides--control button,
body:not(.with-immersive-slides) .node-type--case-study .slides--navigation .slides--control button {
  position: relative;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  width: 2.5rem;
  height: 2.5rem;
}
body:not(.with-immersive-slides) .node-case-study .slides--navigation .slides--control--start button,
body:not(.with-immersive-slides) .node-type--case-study .slides--navigation .slides--control--start button {
  background-image: url("../img/ui/case-studies/slide--start.svg");
}
body:not(.with-immersive-slides) .node-type--case-study {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
body:not(.with-immersive-slides) .node-type--case-study section.intro {
  margin: 0;
  height: 100%;
  display: flex;
  padding: 1.5rem;
  min-height: 12rem;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-image: none;
  background-color: #555555;
}
@media only screen and (max-width: 940px) {
  body:not(.with-immersive-slides) .node-type--case-study section.intro {
    margin-left: auto;
    margin-right: auto;
  }
}
body:not(.with-immersive-slides) .node-type--case-study h3 {
  text-transform: initial;
  font-size: 2rem;
  margin-bottom: 0;
}
body:not(.with-immersive-slides) .node-type--case-study h3 span {
  display: block;
  position: relative;
}
body:not(.with-immersive-slides) .node-type--case-study h3:has(small) {
  margin-bottom: 0;
}
body:not(.with-immersive-slides) .node-type--case-study h3:has(small) span {
  padding-bottom: 1.5rem;
}
body:not(.with-immersive-slides) .node-type--case-study h3 small {
  letter-spacing: 0;
}
body:not(.with-immersive-slides) .node-type--case-study h3 small:last-child {
  margin-bottom: 0;
}
body:not(.with-immersive-slides) main:has(.node-case-study) {
  padding: 3rem 1.5rem;
  background: #F7B0BD;
}

.view-case-studies {
  overflow-x: clip;
}
@media only screen and (min-width: 940px) {
  .view-case-studies {
    margin-bottom: 4.5rem;
  }
}
.view-case-studies > .component--content {
  transform: skew(0, -1deg);
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 3rem;
  align-items: stretch;
}
@media only screen and (max-width: 940px) {
  .view-case-studies > .component--content {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}
.view-case-studies > .component--content article:nth-child(3n+1) {
  position: relative;
}
.view-case-studies > .component--content article:nth-child(3n+1):before {
  z-index: 0;
  content: "";
  position: absolute;
  left: -100vw;
  width: 200vw;
  height: 100%;
  top: 0;
  background-image: url(../img/ui/case-studies/film-strip-trans.svg);
  background-repeat: repeat-x;
  background-size: auto 100%;
  background-blend-mode: multiply;
  box-shadow: 0 10px 0 rgba(0, 0, 0, 0.1333333333);
  animation: filmoga 250s linear infinite;
}
@media (prefers-reduced-motion) {
  .view-case-studies > .component--content article:nth-child(3n+1):before {
    animation: none;
  }
}
@media only screen and (max-width: 940px) {
  .view-case-studies > .component--content article:before {
    z-index: 0;
    content: "";
    position: absolute;
    left: -100vw;
    width: 200vw;
    height: 100%;
    top: 0;
    background-image: url(../img/ui/case-studies/film-strip-trans.svg);
    background-repeat: repeat-x;
    background-size: auto 100%;
  }
}

.path-case-studies .component-type--page-header h1 {
  margin: 0 auto;
  background: #F7B0BD;
  color: #222;
  text-transform: uppercase;
}
.path-case-studies .component-type--page-header h1 svg {
  stroke: #000;
  stroke-width: 1px;
}
.path-case-studies main {
  padding-bottom: 3rem;
  background: #F7B0BD;
}
.path-case-studies .component-type--page-header.block-content--type-page-header:before {
  background-color: #F3F2EE;
  background-image: url(../img/icons/movie.svg);
  background-repeat: no-repeat;
  background-position: 10% 40%;
  background-size: 34rem;
}
.path-case-studies .component-type--page-header.block-content--type-page-header {
  filter: drop-shadow(0px 5px 0px #000);
}

@keyframes filmoga {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 100% 0;
  }
}
.processed-createOffsetBackground svg.offset-background {
  overflow: visible;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  filter: drop-shadow(4px 5px 0px rgba(0, 0, 0, 0.1));
}

/* pizzetta */
.grid-page, .page-style--universe .component-type--figure, .component-type--gallery, .component-type--figure, .component-type--text, .node-glossario.view-mode-full .component-type--page-header,
.component-type--pzt-downloads {
  display: grid;
  grid-template-columns: minmax(3rem, 1fr) 45rem minmax(3rem, 1fr);
}
@media only screen and (max-width: 55em) {
  .grid-page, .page-style--universe .component-type--figure, .component-type--gallery, .component-type--figure, .component-type--text, .node-glossario.view-mode-full .component-type--page-header,
  .component-type--pzt-downloads {
    grid-template-columns: 1.5rem 1fr 1.5rem;
  }
}
@media only print {
  .grid-page, .page-style--universe .component-type--figure, .component-type--gallery, .component-type--figure, .component-type--text, .node-glossario.view-mode-full .component-type--page-header,
  .component-type--pzt-downloads {
    grid-template-columns: 1.5rem 1fr 1.5rem;
  }
}

.component {
  position: relative;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.component .component--content {
  position: relative;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}
.component .component--bg {
  background-position: 50% 50%;
  background-size: cover;
  z-index: 1;
}
.component .component--title {
  font-size: 2rem;
  color: #009ca6;
  z-index: 0;
}
.component.with-page-grid {
  display: grid;
  grid-template-columns: minmax(3rem, 1fr) 45rem minmax(3rem, 1fr);
}
@media only screen and (max-width: 55em) {
  .component.with-page-grid {
    grid-template-columns: 1.5rem 1fr 1.5rem;
  }
}
@media only print {
  .component.with-page-grid {
    grid-template-columns: 1.5rem 1fr 1.5rem;
  }
}
.component.unpublished {
  opacity: 0.5;
  background-color: rgba(255, 255, 255, 0.5);
  position: relative;
}
.component.unpublished:before {
  content: "unpublished";
  text-transform: uppercase;
  position: absolute;
  font-size: 3vw;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 99999;
  opacity: 0.2;
  padding: 15px;
  transform-origin: 50% 50%;
  pointer-events: none;
}

.background-fixed .component--bg {
  background-attachment: fixed;
}

.position--center .component--content, .node-glossario.view-mode-full .component-type--page-header .component--content {
  grid-column: 2;
}

.position--full-bleed-left {
  padding-left: 0;
}
.position--full-bleed-left .component--content {
  grid-column: 1/3;
  max-width: none;
}
.position--full-bleed-left .component--title {
  text-align: right;
}

.position--full-bleed-right {
  padding-right: 0;
}
.position--full-bleed-right .component--content {
  max-width: none;
  grid-column: 2/4;
}

.position--full-bleed {
  padding-left: 0;
  padding-right: 0;
}
.position--full-bleed .component--content {
  max-width: none;
  grid-column: 1/4;
}

.position--full-screen {
  padding: 0;
}
.position--full-screen .component--content {
  max-width: none;
  height: 100vh;
  grid-column: 1/4;
}

.position--page-width {
  display: block;
}

.position--text-width .component--content {
  grid-column: 2;
  max-width: 40em;
}

.component-type--text, .node-glossario.view-mode-full .component-type--page-header,
.component-type--pzt-downloads {
  margin-bottom: 1.5rem;
}
.component-type--text .component--content, .node-glossario.view-mode-full .component-type--page-header .component--content,
.component-type--pzt-downloads .component--content {
  max-width: 40em;
}
.component-type--text.position--text-to-left, .node-glossario.view-mode-full .position--text-to-left.component-type--page-header,
.component-type--pzt-downloads.position--text-to-left {
  display: block;
  padding-left: 0;
  padding-right: 0;
}
.component-type--text.position--text-to-left .component--content, .node-glossario.view-mode-full .position--text-to-left.component-type--page-header .component--content,
.component-type--pzt-downloads.position--text-to-left .component--content {
  margin-left: 0;
}

.component-type--text .component--content .label, .node-glossario.view-mode-full .component-type--page-header .component--content .label {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  color: #DA291C;
  padding-bottom: 1.5rem;
}
.component-type--text .component--content ul.items li, .node-glossario.view-mode-full .component-type--page-header .component--content ul.items li {
  margin-bottom: 0;
  padding-left: 0;
  padding-left: 0;
}
.component-type--text .component--content ul.items li::before, .node-glossario.view-mode-full .component-type--page-header .component--content ul.items li::before {
  display: none;
}

.component-type--figure {
  margin-top: 1.5rem;
  margin-bottom: 4.5rem;
}
.component-type--figure.picture {
  margin-top: 4.5rem;
}
.component-type--figure.picture figure {
  background-color: #009ca6;
}
.component-type--figure.picture img {
  position: relative;
  z-index: 2;
  border: 2px solid #FFFFFF;
}
.component-type--figure.picture svg {
  z-index: 0;
  transform: scale(1.05);
}
.component-type--figure img {
  display: block;
  width: 100%;
  height: auto;
}
.component-type--figure figcaption {
  font-size: 0.75rem;
  margin-top: 3.75rem;
  font-weight: 700;
  text-align: center;
}
.component-type--figure.position--full-bleed-left figcaption {
  text-align: right;
}
.component-type--figure.position--full-bleed figcaption {
  text-align: center;
}
.component-type--figure.position--full-screen .component--content {
  width: 100%;
  overflow: hidden;
  position: relative;
  background-position: 50% 50%;
  background-size: cover;
  background-attachment: fixed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.component-type--figure.position--full-screen .component--content img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.component-type--figure.position--full-screen .component--content figcaption {
  color: #FFFFFF;
  z-index: 42;
  font-size: 4vw;
  padding: 1.5rem;
  text-align: left;
  color: #FFFFFF;
  font-weight: 700;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  max-width: 45rem;
}

.component-type--sub-pages-menu .component--content {
  padding: 1.5rem 0;
}
.component-type--sub-pages-menu .component--content h2 {
  font-size: 1rem;
}
.component-type--sub-pages-menu .component--content a {
  font-weight: 700;
  background: #DA291C;
  color: #FFFFFF;
}

.component-type--page-header,
.component-type--sub-page--header {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.component-type--page-header:not(.block-content--type-page-header),
.component-type--sub-page--header:not(.block-content--type-page-header) {
  background: #FFFFFF;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), 0 100%);
}
.component-type--page-header.block-content--type-page-header,
.component-type--sub-page--header.block-content--type-page-header {
  margin-bottom: 6rem;
  padding-bottom: 6rem;
  filter: drop-shadow(0px 5px 0px #009ca6);
}
.component-type--page-header.block-content--type-page-header:before,
.component-type--sub-page--header.block-content--type-page-header:before {
  content: "";
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  bottom: 0;
  right: 0;
  background: url(../img/bg/bg-mappa-blue.gif);
  background-size: 800px 800px;
  mix-blend-mode: normal;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 0% 100%);
  opacity: 1;
}
.component-type--page-header.block-content--type-page-header .header--intro-text,
.component-type--sub-page--header.block-content--type-page-header .header--intro-text {
  padding: 1em;
  color: #222;
  font-weight: bold;
  background: #FFFFFF;
  overflow: visible;
  margin-top: 2rem;
  position: relative;
  max-width: 45rem;
  font-size: 1.44rem;
}
.component-type--page-header.block-content--type-page-header .header--intro-text:before,
.component-type--sub-page--header.block-content--type-page-header .header--intro-text:before {
  position: absolute;
  top: -1em;
  left: -1em;
  bottom: -1em;
  right: -1em;
  background: rgba(0, 0, 0, 0.2666666667);
  z-index: -1;
  filter: blur(15px);
  border-radius: 30%;
}
.component-type--page-header.block-content--type-page-header figure,
.component-type--sub-page--header.block-content--type-page-header figure {
  display: none;
}
.component-type--page-header .article--intro,
.component-type--sub-page--header .article--intro {
  margin-bottom: 0;
}
.component-type--page-header .component--content,
.component-type--sub-page--header .component--content {
  max-width: 1100px;
  margin: 0 auto;
  z-index: 8086;
}
@media only screen and (max-width: 940px) {
  .component-type--page-header .component--content,
  .component-type--sub-page--header .component--content {
    margin-bottom: 3rem;
    margin-top: 1.5rem;
  }
}
.component-type--page-header h1,
.component-type--sub-page--header h1 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  background-color: #DA291C;
  padding: clamp(0.75em, 1vw, 1.5rem);
  color: #FFFFFF;
  max-width: -moz-max-content;
  max-width: max-content;
  position: relative;
}
.component-type--page-header h1 svg,
.component-type--sub-page--header h1 svg {
  display: inline;
  height: 0.5em;
  width: 0.5em;
  fill: #FFFFFF;
}
.node-story .component-type--page-header h1 svg,
.node-story .component-type--sub-page--header h1 svg {
  filter: drop-shadow(5px 5px 0 rgba(218, 41, 28, 0.3));
}
.component-type--page-header img,
.component-type--page-header .component--bg,
.component-type--sub-page--header img,
.component-type--sub-page--header .component--bg {
  animation: 60s ease-out 1 forwards slowZoom;
}
.component-type--page-header .bottom-landing-page-mask,
.component-type--sub-page--header .bottom-landing-page-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 25vw;
  background: linear-gradient(0, #009ca6 0%, rgba(255, 255, 255, 0) 100%);
}
.component-type--page-header .component--type-breadcrumbs,
.component-type--sub-page--header .component--type-breadcrumbs {
  padding-left: 0;
}

.component-type--cards-list {
  overflow: visible;
}
.component-type--cards-list .component--content {
  overflow: visible;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.component-type--cards-list .grid {
  display: grid;
  position: relative;
  gap: 3rem 3rem;
  align-items: start;
}
.component-type--cards-list .actions {
  padding-top: 1.5rem;
  text-align: right;
}
.component-type--cards-list .actions a {
  /*
  &:after {
  	@include iconFont;
  	content: "\E804";
  	padding-left: 0.3em;
  } */
}
.component-type--cards-list .up-3 {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.component-type--cards-list .up-4 {
  grid-template-columns: repeat(4, 1fr);
}
.component-type--cards-list .up-4 .card {
  font-size: 0.8rem;
}
.component-type--cards-list .up-5 {
  grid-template-columns: repeat(5, 1fr);
}
.component-type--cards-list .up-auto {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.component-type--cards-list .up-auto.items-count-1, .component-type--cards-list .up-auto.items-count-2 {
  grid-template-columns: repeat(auto-fit, minmax(250px, 300px));
}
.component-type--cards-list.vertical-list {
  margin: 0 auto;
  max-width: -moz-max-content;
  max-width: max-content;
}
.component-type--cards-list.vertical-list .grid {
  display: block;
}
.component-type--cards-list.vertical-list .card {
  margin-bottom: 6rem;
}
@media only screen and (max-width: 27em) {
  .component-type--cards-list.vertical-list .card {
    margin-bottom: 3rem;
  }
}

.component--type-breadcrumbs {
  background: #009ca6;
  width: 100%;
}
.component--type-breadcrumbs .component--content {
  max-width: none;
}
.component--type-breadcrumbs ul {
  display: flex;
}
.component--type-breadcrumbs li {
  border-radius: 0.75rem;
}
.component--type-breadcrumbs li a {
  position: relative;
  display: block;
  text-decoration: none;
  color: #FFFFFF;
  padding: 0.75rem 1.5rem 0.75rem 0.75rem;
  text-transform: uppercase;
  text-decoration: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  font-size: 0.75rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.05em;
  background-position: center right;
  background-repeat: no-repeat;
  background-image: url("../img/ui/inner.svg");
}
.component--type-breadcrumbs li:first-child a {
  padding-left: 0;
}
@media only screen and (max-width: 940px) {
  .component--type-breadcrumbs {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
  }
  .component--type-breadcrumbs .component--type-breadcrumbs,
  .component--type-breadcrumbs h1 {
    padding: 0.75rem;
  }
  .component--type-breadcrumbs li a {
    padding: 0.375rem 1.5rem 0.375rem 0.75rem;
  }
  .component--type-breadcrumbs ul {
    align-items: center;
    flex-wrap: wrap;
  }
  .component--type-breadcrumbs ul li a {
    padding: 0.15rem;
    background-color: transparent;
    border-color: transparent;
    background-image: none;
  }
  .component--type-breadcrumbs ul li a::after {
    content: "";
    display: inline-block;
    bottom: 0;
    right: 0;
    width: 17px;
    height: 10px;
    background-image: url(../img/arrow-white.svg);
    background-position: 85% 30%;
    background-repeat: no-repeat;
    background-size: contain;
  }
  .component--type-breadcrumbs ul li:first-child a {
    padding-left: 0;
    padding-right: 0.15rem;
  }
  .component--type-breadcrumbs ul li:last-child a {
    padding-left: 0.15rem;
    padding-right: 0;
  }
  .component--type-breadcrumbs ul li:last-child a:after {
    display: none;
  }
}

/**

.breadcrumbs li {
    margin-bottom: auto;

    &:before {
        content: none; // sovrascrive text-container li:before che crea delle linee
    }
    a {
        color: $black;
        text-transform: uppercase;
        text-decoration: none;
        user-select: none;
        cursor: pointer;
        font-size: $smallFontSize;

        .negative & {
            color: $white;
        }
    }

}


*/
.component-type-filter-form {
  padding: 4.5rem 1.5rem 0 1.5rem;
}
.component-type-filter-form .component--content {
  display: flex;
  flex-wrap: wrap;
}
.component-type-filter-form .field-container {
  margin: 0 1.5rem 1.5rem 0;
}
.component-type-filter-form label, .component-type-filter-form .field-multiple-table h4.label, .field-multiple-table .component-type-filter-form h4.label {
  text-transform: uppercase;
}

.component-type--article--header {
  position: relative;
  min-height: 56.25vw;
  display: flex;
  flex-direction: column;
}
.component-type--article--header .component--content {
  flex-grow: 10;
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  max-width: auto;
}
.component-type--article--header h1 {
  position: relative;
  z-index: 2;
  font-size: max(4vw, 24px);
  color: #FFFFFF;
  font-weight: 700;
  line-height: 1;
}
.component-type--article--header h1 span,
.component-type--article--header h1 strong {
  display: block;
  max-width: 1100px;
  margin: 0 auto;
}
.component-type--article--header h1 {
  background: linear-gradient(0, rgba(0, 0, 0, 0.6666666667), rgba(0, 0, 0, 0));
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4666666667);
}
.component-type--article--header .article--type {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding-left: 0.4vw;
}
.component-type--article--header .component-type--breadcrumbs,
.component-type--article--header h1 {
  padding: 3rem;
}
.component-type--article--header.no-image {
  background: #f5f3ee;
  min-height: auto;
}
.component-type--article--header.no-image h1 {
  background: none;
  text-shadow: none;
}
@media only screen and (max-width: 940px) {
  .component-type--article--header .component-type--breadcrumbs,
  .component-type--article--header h1 {
    padding: 0.75rem;
  }
}

@media only screen and (max-width: 940px) {
  .article--intro {
    padding-top: 1.5rem;
  }
  .article--body {
    padding: 3rem 0;
  }
}
.component-type--publication--header {
  padding: 4.5rem 3rem 1.5rem 3rem;
}
.component-type--publication--header .article--type {
  margin: 0 0 0.75rem 0;
}
.component-type--publication--header h1 {
  display: block;
  font-size: 2rem;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-weight: 700;
  line-height: 1.44;
  color: #DA291C;
}
.component-type--publication--header img {
  width: 15vw;
  display: block;
  height: auto;
  margin-left: 3rem;
  border-radius: 0.75rem;
  box-shadow: 0 0 0 5px rgba(0, 156, 166, 0.0784313725);
}

.component--type-article-meta {
  font-size: clamp(19px, 2vw, 20px);
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media only screen and (max-width: 940px) {
  .component--type-article-meta {
    font-size: 1rem;
  }
}
.component--type-article-meta .component--content {
  padding: 1.5rem 0;
  justify-content: left;
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
}
.component--type-article-meta .component--content a {
  text-decoration: none;
}
.component--type-article-meta .component--content .titolo-tappa {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
}
.component--type-article-meta .component--content .titolo-tappa .destination-image {
  display: flex;
}
.component--type-article-meta .component--content .titolo-tappa svg {
  height: 4.5rem;
  width: 4.5rem;
}
.component--type-article-meta .component--content .titolo-tappa h3 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  margin-left: 1.5rem;
  color: #009ca6;
  margin-bottom: 0;
}
.component--type-article-meta .label {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  display: block;
  color: #DA291C;
  font-size: 0.75rem;
  white-space: nowrap;
}
.component--type-article-meta .article--taxonomy li {
  font-size: 0.75rem;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  line-height: 2;
  display: inline-block;
  align-items: center;
  padding: 0 0.75rem;
  background: #FFFFFF;
  margin: 0 0.5rem 0.5rem 0;
  border-radius: 0.5rem;
}
.component--type-article-meta .article--taxonomy a {
  text-decoration: none;
  color: #222;
}
.component--type-article-meta .article--author a {
  font-weight: 700;
  text-decoration: none;
}
.component--type-article-meta .article--cover {
  width: clamp(150px, 20vw, 300px);
  padding-right: 1.5rem;
  order: 1;
}
.component--type-article-meta .article--cover img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 1.5rem;
}
.component--type-article-meta .article--meta-fields {
  order: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: 1em;
}
.component--type-article-meta .article--meta-fields h3 {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
}
.component--type-article-meta .article--meta-fields span,
.component--type-article-meta .article--meta-fields a {
  border-radius: 5px;
  background-color: #009ca6;
  font-family: "Oswald";
  font-style: normal;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 1rem;
  padding: 0 0.5rem;
  color: #FFFFFF;
  text-decoration: none;
  white-space: pre;
  display: inline-block;
}
.component--type-article-meta .article--meta-fields span:not(:last-child),
.component--type-article-meta .article--meta-fields a:not(:last-child) {
  margin-right: 0.3rem;
}
.component--type-article-meta .article--meta-fields .metadata-field--pdf a {
  background-color: #DA291C;
}
.component--type-article-meta svg {
  display: inline;
  width: 2vw;
  height: 2vw;
  margin-right: 1em;
}

.component-type--publication--meta {
  border-bottom: 5px solid #F3F2EE;
  padding: 1.5rem 3rem;
  font-size: clamp(19px, 2vw, 20px);
}
.component-type--publication--meta .component--content {
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
}
.component-type--publication--meta .label {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  display: block;
  font-size: 0.75rem;
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 1em;
  color: #009ca6;
  margin: 0;
}
.component-type--publication--meta .article--meta-fields {
  flex-shrink: 4;
  margin-bottom: 2em;
}
.component-type--publication--meta .article--meta-fields > * {
  padding: 0 0 1em 0;
  display: block;
}
.component-type--publication--meta .article--taxonomy ul {
  display: inline-block;
}
.component-type--publication--meta .article--taxonomy li {
  font-size: 0.75rem;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  line-height: 2;
  display: inline-block;
  align-items: center;
  padding: 0 0.75rem;
  background: #FFFFFF;
  margin: 0 0.5rem 0.5rem 0;
  border-radius: 100px;
  color: #222;
}
.component-type--publication--meta .article--taxonomy li a {
  color: #222;
  text-decoration: none;
}
.component-type--publication--meta .article--author ul, .component-type--publication--meta .article--author li {
  display: inline;
}
.component-type--publication--meta .article--author a {
  font-weight: 700;
  text-decoration: none;
}
.component-type--publication--meta .article--cover {
  width: clamp(150px, 25vw, 400px);
  padding-left: 1.5rem;
}
.component-type--publication--meta .article--cover img {
  display: block;
  max-width: 100%;
  height: auto;
  border: 5px solid #F3F2EE;
  border-radius: 0.75rem;
}
.component-type--publication--meta .article--cover {
  order: 2;
}
.component-type--publication--meta .article--meta-fields {
  order: 1;
}
.component-type--publication--meta svg {
  display: inline;
  width: 2vw;
  height: 2vw;
  margin-right: 1em;
}

.component-type--gallery {
  margin-top: 1.5rem;
  margin-bottom: 3rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
.component-type--gallery .component--content {
  padding: 0;
}
.component-type--gallery .component--content--gallery {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.component-type--gallery .component--content--gallery img {
  display: block;
  max-height: 14vw;
  height: auto;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.component-type--gallery figcaption {
  font-size: 0.75rem;
  margin-top: 0.75rem;
}
.component-type--gallery.position--full-bleed-left figcaption {
  text-align: right;
}
.component-type--gallery.position--full-bleed figcaption {
  text-align: center;
}
.component-type--gallery.position--full-screen .component--content {
  width: 100%;
  overflow: hidden;
  position: relative;
  background-position: 50% 50%;
  background-size: cover;
  background-attachment: fixed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.component-type--gallery.position--full-screen .component--content img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
.component-type--gallery.position--full-screen .component--content figcaption {
  color: #FFFFFF;
  z-index: 42;
  font-size: 4vw;
  padding: 1.5rem;
  text-align: left;
  color: #FFFFFF;
  font-weight: 700;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  max-width: 45rem;
}

.component-type--pzt-infographic {
  margin-bottom: 6rem;
}
.component-type--pzt-infographic .component--content {
  max-width: none;
}
.component-type--pzt-infographic table {
  display: block;
}
.component-type--pzt-infographic table tbody {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15em, 1fr));
  gap: 1.5rem;
  align-items: start;
}
.component-type--pzt-infographic table tr {
  display: flex;
  flex-direction: column;
  border-top: 5px solid #F3F2EE;
  padding: 0.75rem 0 1.5rem 0;
}
.component-type--pzt-infographic .infographic--metric {
  order: 1;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  line-height: 1.44;
  text-align: left;
}
.component-type--pzt-infographic .infographic--value {
  font-size: 2.44rem;
  order: 0;
  color: #DA291C;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
}
.component-type--pzt-infographic .infographic--value .value {
  display: inline-block;
}
.component-type--pzt-infographic .infographic--value .unit {
  display: inline-block;
}
.component-type--pzt-infographic .infographic--body {
  order: 2;
  font-size: 1rem;
}

.component-type--pzt-image-text .component--content {
  display: flex;
  gap: 1.5rem;
}
@media only screen and (max-width: 1023px) {
  .component-type--pzt-image-text .component--content {
    display: block;
  }
}
.image-position--right .component--image {
  order: 2;
}
.image-position--right .component--text {
  order: 1;
}

.component-type--layout .component--content {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  grid-column: 2;
}
.component-type--layout .component--content.component--layout--two-columns,
.component-type--layout .component--content .component--layout--two-columns, .component-type--layout .component--content.component--layout--three-columns,
.component-type--layout .component--content .component--layout--three-columns {
  display: grid;
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
  grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr));
}
@media only screen and (max-width: 940px) {
  .component-type--layout .component--content.component--layout--two-columns,
  .component-type--layout .component--content .component--layout--two-columns, .component-type--layout .component--content.component--layout--three-columns,
  .component-type--layout .component--content .component--layout--three-columns {
    grid-template-columns: 1fr;
  }
}
.component-type--layout .component--content.component--layout--two-columns .component--content, .component-type--layout .component--content.component--layout--two-columns .component,
.component-type--layout .component--content .component--layout--two-columns .component--content,
.component-type--layout .component--content .component--layout--two-columns .component, .component-type--layout .component--content.component--layout--three-columns .component--content, .component-type--layout .component--content.component--layout--three-columns .component,
.component-type--layout .component--content .component--layout--three-columns .component--content,
.component-type--layout .component--content .component--layout--three-columns .component {
  padding-left: 0;
  padding-right: 0;
}
.component-type--layout .component--content.component--layout--three-columns,
.component-type--layout .component--content .component--layout--three-columns {
  grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
}
@media only screen and (max-width: 940px) {
  .component-type--layout .component--content.component--layout--three-columns,
  .component-type--layout .component--content .component--layout--three-columns {
    grid-template-columns: 1fr;
  }
}
.component-type--layout .component--content .component {
  display: block;
}
.component-type--layout.component--layout--70-30 .component--content {
  grid-template-columns: 7fr 3fr;
}
@media only screen and (max-width: 940px) {
  .component-type--layout.component--layout--70-30 .component--content {
    grid-template-columns: 1fr;
  }
}

.component-type--pzt-blockquote {
  margin: 3rem 0;
}
.component-type--pzt-blockquote .component--content .component--text {
  position: relative;
}
.component-type--pzt-blockquote .component--content .component--text::before {
  position: absolute;
  top: -0.2em;
  left: -0.45em;
  content: "“";
  font-size: 6rem;
  line-height: 1;
  color: #D1CCBD;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.component-type--pzt-blockquote .component--content .component--text {
  /*
  p {
      quotes: "“" "”";
      margin: 0 auto;
      text-indent: -1rem;
      &::before {
          content: open-quote;
          font-size: $heroFontSize;
          line-height: 1;
      }
      &::after {
          content: close-quote;
          font-size: $heroFontSize;
          line-height: 1;
          position: relative;
          top: 1em;
      }
  } */
}
.component-type--pzt-blockquote .component--content .component--author {
  font-size: 1rem;
  margin-top: 0.75rem;
}

.component-type--pzt-sequence {
  margin-bottom: 6rem;
}
.component-type--pzt-sequence .component--content {
  max-width: none;
  padding: 3rem 1.5rem 0 1.5rem;
  border: 10px solid #F3F2EE;
  border-width: 5px 0;
}
.component-type--pzt-sequence .component--content .component--title {
  margin-bottom: 1.5rem;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15em, 1fr));
  gap: 0 3rem;
  align-items: stretch;
  position: relative;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks li {
  position: relative;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks li:after {
  content: "";
  position: absolute;
  top: 0;
  right: -1.5rem;
  bottom: 3rem;
  border-right: 1px dotted #D1CCBD;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks li:before {
  content: "";
  position: absolute;
  bottom: 1.5rem;
  right: -1.5rem;
  left: -1.5rem;
  border-bottom: 1px dotted #D1CCBD;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks:after {
  content: "";
  position: absolute;
  top: 0;
  right: -1.5rem;
  height: 100%;
  width: 1px;
  background: #FFFFFF;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks:before {
  content: "";
  position: absolute;
  bottom: 1.5rem;
  left: -1.5rem;
  right: -1.5rem;
  height: 1px;
  background: #FFFFFF;
  z-index: 900;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block {
  max-width: 20em;
  padding-bottom: 3rem;
  position: relative;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-title {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: 1.44rem;
  text-transform: uppercase;
  background: #F3F2EE;
  padding: 0.75rem;
  margin-bottom: 1.5rem;
  width: -moz-fit-content;
  width: fit-content;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-image {
  margin-bottom: 1.5rem;
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-image img {
  display: block;
  width: 10em;
  height: 10em;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.2666666667rem;
  box-shadow: 0 0 2px 0 rgba(34, 34, 34, 0.7);
}
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body {
  font-size: 1rem;
}

.component-type--pzt-table table {
  font-size: 1rem;
  min-width: 50%;
  margin-bottom: 3rem;
}
.component-type--pzt-table table th {
  text-align: left;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
}
.component-type--pzt-table table td, .component-type--pzt-table table th {
  padding: 0.5rem 0.5rem 0.5rem 0.5rem;
  border-bottom: 1px solid #D1CCBD;
  border-right: 1px dotted #D1CCBD;
}
.component-type--pzt-table table td:last-child, .component-type--pzt-table table th:last-child {
  border-right: none;
}
.component-type--pzt-table table thead td, .component-type--pzt-table table thead th {
  border: none;
  vertical-align: bottom;
  background: #F3F2EE;
  border: 3px solid #FFFFFF;
}
.component-type--pzt-table table tbody tr:last-child td, .component-type--pzt-table table tbody tr:last-child th {
  border-bottom: none;
}
.component-type--pzt-table table td {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-weight: 300;
}

.component-type--pzt-partners .component--partners {
  background: #FFFFFF;
  padding: 3rem;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
  align-content: center;
  align-items: center;
  gap: 3rem;
}
.component-type--pzt-partners img {
  max-width: 100%;
  height: auto;
}
.component-type--pzt-partners {
  text-align: center;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
}

.select2-container--default .select2-selection--single {
  border: 2px solid #D1CCBD;
  padding: 2px 0;
  font-size: 1rem;
  background: #FFFFFF;
  color: #222;
  font-family: "Lato", sans-serif;
  font-weight: 400;
  border-radius: 5px;
  height: 2.3rem;
  vertical-align: middle;
}
.select2-container--default .select2-selection__arrow {
  height: 2.3rem !important;
}
.select2-container--default .select2-selection__arrow b {
  margin-top: -12px !important;
  left: 0 !important;
  border: none !important;
}
.select2-container--default .select2-selection__arrow b:after {
  content: "";
  width: 20px;
  height: 20px;
  display: block;
  background-image: url('data:image/svg+xml,<svg focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="rgba(0,0,0,1)" d="M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"></path></svg>');
  background-repeat: no-repeat;
}
.select2-container--default .select2-selection--multiple {
  padding: 0;
  border: 2px solid #D1CCBD;
  background: #FFFFFF;
  color: #222;
  font-size: 1rem;
  line-height: 0;
  font-family: "Lato", sans-serif;
  font-weight: 400;
  border-radius: 5px;
  vertical-align: middle;
  min-height: 2.3rem;
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered li::before {
  display: none;
}
.select2-container--default .select2-selection--multiple li {
  line-height: 1.8rem;
  min-height: 2.1rem;
}
.select2-container--default .select2-selection--multiple .select2-search__field {
  margin-top: 0;
}
.select2-container--default .select2-selection__choice::before {
  display: none;
}
.select2-container--open {
  z-index: 9999;
}

.book-pager {
  display: flex;
  justify-content: space-between;
  padding: 3rem 1.5rem 0 1.5rem;
  margin-top: 3rem;
  max-width: 1100px;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-weight: normal;
}
.book-pager .book-pager__item--previous:before {
  content: "";
  transform: rotate(-180deg);
  display: inline-block;
  position: relative;
  top: 0.15em;
  width: 1em;
  height: 1em;
  background-image: url(../img/icons/arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 0.5em;
}
.book-pager .book-pager__item--next:after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0.15em;
  width: 1em;
  height: 1em;
  background-image: url(../img/icons/arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: 0.5em;
}

.credits {
  position: absolute;
  top: 10px;
  right: 10px;
  display: block;
  background: rgba(255, 255, 255, 0.8);
  padding: 0 3px;
  z-index: 12000;
  font-size: 0.5rem;
  transform-origin: bottom right;
  max-width: 30vh;
  transform: translateY(-100%) rotate(-90deg);
}

.credits * {
  margin: 0;
  padding: 0;
}

.language-switcher-language-url .links {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-right: 3rem;
  padding-top: 0.2rem;
  gap: 0.75rem;
}
@media only screen and (max-width: 50em) {
  .language-switcher-language-url .links {
    justify-content: flex-start;
  }
}
.language-switcher-language-url .links li a {
  text-decoration: none;
  padding: 0.3rem;
  text-transform: uppercase;
  color: #FFFFFF;
  font-size: 0.75rem;
  font-weight: 700;
}
.language-switcher-language-url .links li a.is-active {
  color: #009ca6;
  background-color: #FFFFFF;
}
.language-switcher-language-url .links li.is-active {
  color: #009ca6;
  background-color: #FFFFFF;
  padding-left: 0.3rem;
}
.language-switcher-language-url .links li[hreflang=it],
.language-switcher-language-url .links li[hreflang=en],
.language-switcher-language-url .links li[hreflang=fr],
.language-switcher-language-url .links li[hreflang=es] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0.3rem;
  cursor: pointer;
}
.language-switcher-language-url .links li[hreflang=it]:before,
.language-switcher-language-url .links li[hreflang=en]:before,
.language-switcher-language-url .links li[hreflang=fr]:before,
.language-switcher-language-url .links li[hreflang=es]:before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  display: block;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
}
.language-switcher-language-url .links li[hreflang=it]:before {
  background-image: url("../img/flags/002-italy.svg");
}
.language-switcher-language-url .links li[hreflang=en]:before {
  background-image: url("../img/flags/001-united-kingdom.svg");
}
.language-switcher-language-url .links li[hreflang=fr]:before {
  background-image: url("../img/flags/003-france.svg");
  background-repeat: no-repeat;
}
.language-switcher-language-url .links li[hreflang=es] {
  background-image: url("../img/flags/004-spain.svg");
  background-repeat: no-repeat;
}

.card {
  position: relative;
}
.card.node-type--tappa {
  background: transparent;
  position: relative;
  border-radius: 0;
  overflow: visible;
  display: flex;
  flex-direction: row;
  gap: clamp(2rem, 2.5vw, 3rem);
  counter-increment: tappa;
}
.card.node-type--tappa .tappa--flag {
  position: relative;
  transform-origin: bottom left;
  width: clamp(5rem, 7vw, 7rem);
}
@media only screen and (max-width: 1023px) {
  .card.node-type--tappa .tappa--flag {
    width: 6rem;
  }
}
.card.node-type--tappa .tappa--flag:before {
  position: absolute;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #FFFFFF;
  font-size: clamp(1rem, 2vw, 2rem);
  content: counter(tappa);
  top: clamp(4px, 2%, 20px);
  left: 45%;
  line-height: 1;
}
@media only screen and (max-width: 940px) {
  .card.node-type--tappa .tappa--flag:before {
    top: clamp(7px, 2%, 20px);
  }
}
.card.node-type--tappa .tappa--flag svg {
  width: 100%;
  display: block;
}
.card.node-type--tappa .content {
  padding: 0;
  font-size: 1rem;
}
@media only screen and (max-width: 1023px) {
  .card.node-type--tappa .content {
    flex-basis: 70%;
  }
}
.card.node-type--tappa h3 {
  background: transparent;
}
.card.node-type--tappa h3 small {
  color: #FC4C02;
}
.card.node-type--tappa p {
  font-size: 1.44rem;
}
.card.node-type--publications {
  display: grid;
  grid-template-columns: 2fr 1fr;
  grid-template-rows: 1fr;
}
.card.node-type--publications::after {
  display: block;
  content: "";
  grid-row: 1;
  grid-column: 1;
  padding-bottom: 57.25%;
}
.card.node-type--publications figure {
  align-items: center;
  grid-column: 2;
  padding: 1.5rem 1.5rem 1.5rem 0.75rem;
}
.card.node-type--publications figure img {
  width: 100%;
  display: block;
}
.card.node-type--publications .content {
  grid-column: 1;
  background-color: white;
  padding: 1.5rem 0.75rem 1.5rem 1.5rem;
}
.card.node-type--publications .content h3 {
  text-transform: none;
  margin-bottom: 0;
  z-index: 2;
  position: relative;
  font-size: 1.4rem;
  background-color: transparent;
  padding: 0;
}
.card.node-type--story.view-mode--teaser {
  display: block;
  margin-bottom: 1.5rem;
  background: transparent;
  border-radius: 0;
  margin-bottom: 0.75rem;
}
@media only screen and (max-width: 500px) {
  .card.node-type--story.view-mode--teaser {
    display: flex;
    flex-direction: column;
  }
}
.card.node-type--story.view-mode--teaser .content {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}
@media only screen and (max-width: 500px) {
  .card.node-type--story.view-mode--teaser .content {
    padding-top: 0.75rem;
    padding-bottom: 0;
  }
}
.card.node-type--story.view-mode--teaser .content h3 {
  background-color: transparent;
  padding-top: 0;
}

.card > * {
  grid-row: 1;
  grid-column: 1;
}

.node-type--pathway {
  background: #FFFFFF;
  padding: 1.5rem;
  border-radius: 3px;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.0666666667);
  animation-name: zum;
  animation-duration: 1ms;
  animation-direction: alternate;
  animation-timeline: view();
}
@media only screen and (max-width: 70em) {
  .node-type--pathway {
    margin-bottom: 1rem;
  }
}
.node-type--pathway:nth-child(even) {
  position: relative;
  top: 10rem;
}
@media only screen and (max-width: 70em) {
  .node-type--pathway:nth-child(even) {
    top: auto;
  }
}
.node-type--pathway {
  align-items: flex-start;
  position: relative;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 1em;
}
.node-type--pathway figure.pathway--image {
  flex: 1;
  height: auto;
  width: clamp(9rem, 19.64vw, 20rem);
  position: relative;
  top: 0;
}
.node-type--pathway .content {
  position: relative;
  flex: 2;
}
.node-type--pathway .content h3 {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-size: clamp(1.44rem, 2vw, 2rem);
}
.node-type--pathway .content h3 small {
  color: #009ca6;
  margin-bottom: 0.75rem;
  letter-spacing: 0.15em;
  font-size: 1.2rem;
}
.node-type--pathway .content h3 em {
  text-transform: initial;
}
.node-type--pathway .content h3 span {
  color: #009ca6;
  text-transform: initial;
  font-size: clamp(1rem, 0.8vw, 1.44rem);
}
.node-type--pathway .content p {
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  color: #222;
}
.node-type--pathway .content a {
  text-decoration: none;
  background-color: #DA291C;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
  padding: 0.75rem;
  color: #FFFFFF;
}

.view-mode--full .node--meta {
  display: flex;
  padding: 1.5rem 0;
  align-items: center;
  justify-content: space-between;
}
.view-mode--full .node--meta .node--resource-type--icon {
  display: flex;
  align-items: center;
}
.view-mode--full .node--meta .node--resource-type--icon img {
  display: block;
  width: 6em;
  height: 6em;
}
.view-mode--full .node--meta .node--resource-type--label {
  color: #FC4C02;
  padding-left: 0.5em;
  font-size: 1.44rem;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  font-weight: normal;
}
.view-mode--full .node--meta .node--taxonomies {
  text-align: right;
  padding-left: 2em;
}
.view-mode--full .node--meta .node--taxonomies a {
  display: inline-block;
  margin: 0.2em;
  background: #D1CCBD;
  text-decoration: none;
  color: #FFFFFF;
  border-radius: 200px;
  padding: 0 0.5em;
  font-size: 1rem;
  text-transform: uppercase;
  white-space: pre;
}
.view-mode--full .node--meta .node-teaser--meta--fields {
  margin-left: 0.75rem;
}
.view-mode--full .field--name-field-downloads h2,
.view-mode--full .field--name-field-links h2,
.view-mode--full .field--name-field-allegati h2 {
  color: #009ca6;
}
.view-mode--full .field--name-field-downloads,
.view-mode--full .field--name-field-links,
.view-mode--full .field--name-field-allegati {
  margin: 2em 0 1em 0;
}
.view-mode--full .field--name-field-downloads ul,
.view-mode--full .field--name-field-links ul,
.view-mode--full .field--name-field-allegati ul {
  margin-top: 0;
}
.view-mode--full .field--name-field-downloads ul .file,
.view-mode--full .field--name-field-links ul .file,
.view-mode--full .field--name-field-allegati ul .file {
  background: none;
  padding-left: 0;
}
.view-mode--full .field--name-field-downloads ul li,
.view-mode--full .field--name-field-links ul li,
.view-mode--full .field--name-field-allegati ul li {
  position: relative;
  margin-bottom: 1em;
}
.view-mode--full .field--name-field-downloads ul li a,
.view-mode--full .field--name-field-links ul li a,
.view-mode--full .field--name-field-allegati ul li a {
  display: block;
  padding-left: 2.75em;
  position: relative;
  z-index: 2;
  transition: color 0.1s linear;
}
.view-mode--full .field--name-field-downloads ul li .file-type,
.view-mode--full .field--name-field-links ul li .file-type,
.view-mode--full .field--name-field-allegati ul li .file-type {
  z-index: 1;
  content: "";
  position: absolute;
  top: 0.2em;
  left: 0;
  display: block;
  background: #009ca6;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 0.75em;
  padding: 0.22em 0.5em 0.25em 0.5em;
  border-radius: 3px;
  color: #FFFFFF;
  text-transform: uppercase;
  transition: background 0.1s linear;
}
.view-mode--full .field--name-field-downloads ul li:hover a,
.view-mode--full .field--name-field-links ul li:hover a,
.view-mode--full .field--name-field-allegati ul li:hover a {
  color: #DA291C;
}
.view-mode--full .field--name-field-downloads ul li:hover .file-type,
.view-mode--full .field--name-field-links ul li:hover .file-type,
.view-mode--full .field--name-field-allegati ul li:hover .file-type {
  background: #DA291C;
}
.view-mode--full .landing-page--header figure {
  padding-bottom: 50%;
}

.article--intro {
  margin-top: 2.25rem;
  margin-bottom: 3rem;
  font-size: 1.44rem;
}
@media only screen and (max-width: 940px) {
  .article--intro {
    font-size: 1.2rem;
    margin-top: 1.5rem;
  }
}
.article--intro .component--content {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
}
.article--intro *:last-child {
  margin-bottom: 0;
}

.article--body {
  padding: 3rem 0 0 0;
  font-size: clamp(19px, 2vw, 20px);
}
@media only screen and (max-width: 940px) {
  .article--body .component {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (max-width: 940px) {
  .article--body .component.component-type--cards-list {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.node-resource .article--body {
  padding: 3rem 0 3rem 0;
  margin-top: 3rem;
  font-size: clamp(19px, 2vw, 20px);
  background-color: #FFFFFF;
}
.node-resource .article--body .component-type--text, .node-resource .article--body .node-glossario.view-mode-full .component-type--page-header, .node-glossario.view-mode-full .node-resource .article--body .component-type--page-header,
.node-resource .article--body .component-type--pzt-downloads {
  margin-bottom: 0;
  padding-bottom: 1.5rem;
}
.node-resource .article--body {
  overflow: visible;
  position: relative;
}
.node-resource .article--body:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 3vw;
  bottom: calc(-3vw + 2px);
  background-image: url(../img/bg/bg-sghembo-bottom.svg);
  background-size: 100% 100%;
  border-top: 1px solid #FFFFFF;
}
.node-resource .article--body:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 3vw;
  top: calc(-3vw + 2px);
  background-image: url(../img/bg/bg-sghembo-top.svg);
  background-size: 100% 100%;
  border-bottom: 1px solid #FFFFFF;
}

.view-mode--teaser .cover-link {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 62100;
}
.view-mode--teaser .teaser--cta {
  display: inline-block;
  margin-top: 0.75rem;
}

.component-type--next-prev-navigation {
  padding-top: 6rem;
  margin-bottom: 1.5rem;
}
.component-type--next-prev-navigation .component--content {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 3rem;
  flex-wrap: wrap;
}
.component-type--next-prev-navigation article {
  position: relative;
  display: flex;
  flex: 1 0 auto;
  max-width: 50%;
  background-color: #FFFFFF;
}
.component-type--next-prev-navigation article figure {
  aspect-ratio: 1/1;
  position: relative;
  overflow: hidden;
  height: 100%;
  background: #009ca6;
}
.component-type--next-prev-navigation article .cover-link {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 62100;
}
.component-type--next-prev-navigation article h4 {
  position: relative;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  margin: 1.5rem 0 0 0;
  z-index: 10;
}
.component-type--next-prev-navigation article h4 a {
  color: #DA291C;
  word-break: break-word;
}
.component-type--next-prev-navigation article .content {
  padding: 0.75rem 1.5rem;
}
.component-type--next-prev-navigation article .navigation-arrow {
  line-height: 1.5rem;
  color: #DA291C;
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.component-type--next-prev-navigation article .navigation-arrow svg {
  width: 1.5rem;
  height: auto;
  color: #DA291C;
}
.component-type--next-prev-navigation article .navigation-arrow.nav-prev svg {
  order: -1;
  transform: rotate(180deg);
}
.component-type--next-prev-navigation article .navigation-arrow.nav-next {
  justify-content: flex-end;
}
.component-type--next-prev-navigation article a {
  text-decoration: none;
}
.component-type--next-prev-navigation article.prev {
  justify-content: flex-start;
  margin-right: auto;
}
.component-type--next-prev-navigation article.next {
  flex-direction: row-reverse;
  text-align: right;
  margin-left: auto;
}

@media all and (max-width: 940px) {
  .component-type--next-prev-navigation article {
    max-width: 100%;
  }
  .component-type--next-prev-navigation article figure {
    display: none;
  }
}
.component.component-type--pzt-questionario {
  max-width: 40em;
  margin: 0 auto;
  padding: 3rem;
  background: #f5f3ee;
  border-radius: 5px;
  counter-reset: questionNumber;
}
.component.component-type--pzt-questionario .messages {
  position: static;
}
.component.component-type--pzt-questionario .questionario-message {
  margin-bottom: 0;
}
.component.component-type--pzt-questionario form {
  padding: 0;
  margin-top: 3rem;
}
.component.component-type--pzt-questionario img {
  display: block;
  max-width: 100%;
  height: auto;
}
.component.component-type--pzt-questionario h2 {
  color: #009ca6;
  margin-bottom: 0;
}
.component.component-type--pzt-questionario legend {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  color: #DA291C;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.44;
  counter-increment: questionNumber;
  position: relative;
}
.component.component-type--pzt-questionario legend:before {
  position: absolute;
  font-size: 1em;
  left: -1em;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #009ca6;
  font-weight: normal;
}
.component.component-type--pzt-questionario fieldset {
  margin: 0 0 3rem 0;
  position: relative;
  padding: 1.5rem 0 3rem 0;
}
.component.component-type--pzt-questionario fieldset::after {
  content: "";
  position: absolute;
  bottom: -0.75rem;
  left: -3rem;
  right: -3rem;
  height: 20px;
  background: radial-gradient(circle, #FFFFFF 0%, #FFFFFF 25%, transparent 26%);
  background-size: 20px 20px;
  background-position: 0 0;
}
.component.component-type--pzt-questionario fieldset fieldset {
  padding-bottom: 1.5rem;
  margin-bottom: 0;
}
.component.component-type--pzt-questionario fieldset fieldset legend {
  font-size: 1.44rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
}
.component.component-type--pzt-questionario fieldset fieldset::after {
  display: none;
}
.component.component-type--pzt-questionario .form-type-textfield, .component.component-type--pzt-questionario .form-type-number {
  margin-bottom: 3rem;
}
.component.component-type--pzt-questionario .form-type-textfield input, .component.component-type--pzt-questionario .form-type-number input {
  background: #FFFFFF;
}
.component.component-type--pzt-questionario .form-type-textfield label, .component.component-type--pzt-questionario .form-type-textfield .field-multiple-table h4.label, .field-multiple-table .component.component-type--pzt-questionario .form-type-textfield h4.label, .component.component-type--pzt-questionario .form-type-number label, .component.component-type--pzt-questionario .form-type-number .field-multiple-table h4.label, .field-multiple-table .component.component-type--pzt-questionario .form-type-number h4.label {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  color: #DA291C;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.44;
  counter-increment: questionNumber;
  position: relative;
}
.component.component-type--pzt-questionario .form-required:after {
  display: none;
}
.component.component-type--pzt-questionario .form-radios {
  counter-reset: optionNumber;
}
.component.component-type--pzt-questionario .form-radios .form-item.form-type-radio {
  display: block;
}
.component.component-type--pzt-questionario .form-radios input[type=radio] {
  counter-increment: optionNumber;
  position: absolute;
  clip: rect(0, 0, 0, 0);
  margin: 0 0 3rem 0;
}
.component.component-type--pzt-questionario .form-radios input[type=radio] ~ label.option, .component.component-type--pzt-questionario .form-radios .field-multiple-table input[type=radio] ~ h4.option.label, .field-multiple-table .component.component-type--pzt-questionario .form-radios input[type=radio] ~ h4.option.label {
  display: block;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  font-size: 1.44rem;
  line-height: 1.4;
  font-weight: normal;
  padding: 0.75rem 1.5rem;
  border: 1px solid #009ca6;
  border-radius: 0.375rem;
  position: relative;
  background: #FFFFFF;
  margin-bottom: 0.75rem;
  width: 100%;
  cursor: pointer;
  transition: all 0.3s ease;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.node-type--learning-game .component.component-type--pzt-questionario .form-radios input[type=radio] ~ label.option, .node-type--learning-game .component.component-type--pzt-questionario .form-radios .field-multiple-table input[type=radio] ~ h4.option.label, .field-multiple-table .node-type--learning-game .component.component-type--pzt-questionario .form-radios input[type=radio] ~ h4.option.label {
  padding-left: 4.5rem;
}
.node-type--learning-game .component.component-type--pzt-questionario .form-radios input[type=radio] ~ label.option:before, .node-type--learning-game .component.component-type--pzt-questionario .form-radios .field-multiple-table input[type=radio] ~ h4.option.label:before, .field-multiple-table .node-type--learning-game .component.component-type--pzt-questionario .form-radios input[type=radio] ~ h4.option.label:before {
  content: counter(optionNumber, upper-alpha);
  color: #009ca6;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 2.25rem;
  transform: translateY(-50%) translateX(-50%);
  transition: all 0.3s ease;
}
.component.component-type--pzt-questionario .form-radios input[type=radio]:checked ~ label.option, .component.component-type--pzt-questionario .form-radios .field-multiple-table input[type=radio]:checked ~ h4.option.label, .field-multiple-table .component.component-type--pzt-questionario .form-radios input[type=radio]:checked ~ h4.option.label {
  background: #009ca6;
  color: #FFFFFF;
}
.component.component-type--pzt-questionario .form-radios input[type=radio]:checked ~ label.option:before, .component.component-type--pzt-questionario .form-radios .field-multiple-table input[type=radio]:checked ~ h4.option.label:before, .field-multiple-table .component.component-type--pzt-questionario .form-radios input[type=radio]:checked ~ h4.option.label:before {
  color: #FFFFFF;
}
.component.component-type--pzt-questionario .horizontal-radios .form-radios {
  display: flex;
  flex-wrap: wrap;
}
.component.component-type--pzt-questionario .horizontal-radios .form-radios .form-type-radio {
  margin: 0 0.75rem 0.75rem 0;
}
.component.component-type--pzt-questionario input[type=submit] {
  height: auto;
  padding: 1.5rem;
  background: #009ca6;
}
.component.component-type--pzt-questionario strong.error.form-item--error-message:before {
  content: none;
}
.component.component-type--pzt-questionario strong.error.form-item--error-message {
  background: #DA291C;
  color: #FFFFFF;
  text-transform: uppercase;
  border-radius: 0.375rem;
  font-size: 1rem;
  display: inline-block;
  padding: 0 0.5em;
}
.component.component-type--pzt-questionario .questionario--results {
  padding: 1.5rem;
  background: #FFFFFF;
  border-radius: 1.5rem;
  font-size: 3rem;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  color: #009ca6;
  display: none;
  margin-bottom: 1.5rem;
}
.component.component-type--pzt-questionario .questionario--results .questionario--results--wrapper {
  display: flex;
  justify-content: space-around;
  align-items: stretch;
}
.component.component-type--pzt-questionario .questionario--results .questionario--results--wrapper > * {
  border-right: 1px solid #45b383;
  flex-grow: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-basis: 33%;
}
.component.component-type--pzt-questionario .questionario--results .questionario--results--wrapper > *:last-child {
  border-right: none;
}
.component.component-type--pzt-questionario .questionario--results .questionario--results--wrapper .questionario--results--wrong {
  border-right: none;
}
.component.component-type--pzt-questionario .questionario--results .questionario--results--grade {
  font-size: 4rem;
}

.progress-widget {
  position: fixed;
  -webkit-backface-visibility: hidden;
  bottom: 30vh;
  right: 5vw;
  width: max(70px, 8vw);
  height: max(70px, 8vw);
  z-index: 90210;
}
.progress-widget #progress-circle {
  fill: transparent;
  stroke: #009ca6;
  stroke-width: max(2vw, 10px);
  transform: rotate(90deg);
  transform-origin: 50% 50%;
}
.progress-widget #bg-circle {
  fill: #f5f3ee;
}
.progress-widget span {
  position: absolute;
  font-size: max(1.6vw, 16px);
  color: #009ca6;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
@media only screen and (max-width: 1000px) {
  .progress-widget {
    top: 3vw;
    bottom: auto;
    right: 3vw;
    filter: drop-shadow(0 3px 4px rgba(0, 0, 0, 0.4));
  }
}

.paragraph--gruppo-di-tappe {
  display: flex;
  gap: 3rem;
  margin: 0 auto;
  justify-content: center;
}
@media only screen and (max-width: 940px) {
  .paragraph--gruppo-di-tappe {
    flex-direction: column;
    margin: 0 1.5rem 4.5rem 1.5rem;
    gap: 0;
  }
}
.paragraph--gruppo-di-tappe h2 {
  background: #FFFFFF;
  position: relative;
  padding: 0.75rem;
  display: inline-block;
  margin-bottom: 1.5rem;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--icon {
  flex-basis: 10%;
}
@media only screen and (max-width: 940px) {
  .paragraph--gruppo-di-tappe .gruppo-di-tappe--icon {
    width: 30%;
  }
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--icon svg {
  max-width: 100%;
  height: auto;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--tappe {
  flex-basis: 25%;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--tappe--tappe ul {
  list-style: disc;
  margin-left: 1.5rem;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--tappe--tappe ul li::marker {
  color: #DA291C;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--tappe--tappe ul li a {
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  -webkit-text-decoration: underline 3px #D1CCBD;
          text-decoration: underline 3px #D1CCBD;
}
.paragraph--gruppo-di-tappe .gruppo-di-tappe--tappe--tappe ul li a:hover {
  text-decoration-color: #DA291C;
}
.paragraph--gruppo-di-tappe {
  margin-bottom: 3rem;
}
.paragraph--gruppo-di-tappe:last-child {
  margin-bottom: 0;
}

mark {
  background-color: rgb(255, 255, 146);
}

.style--underline {
  text-decoration: underline;
  text-decoration-thickness: 0.3em;
  text-decoration-color: #FC4C02;
}

.menu-action {
  display: none;
  padding: 10px;
}

/*
* Media Queries
*/
/* size targeted contents */
@media only screen and (min-width: 941px) {
  .mobile-only {
    display: none !important;
  }
}
/*
* from tablet down
*/
@media only screen and (max-width: 1023px) {
  .vertical-navbar {
    display: none;
  }
  .top-nav-bar h1 {
    height: 40px;
  }
}
/*
* from phone down
*/
@media only screen and (max-width: 940px) {
  /*
  * general purpose
  */
  .primary-menu li a {
    padding: 0.75rem;
    display: block;
  }
  .primary-menu li a:first-child {
    padding-left: 0;
  }
  .mobile-hide {
    display: none !important;
  }
  .mobile-only {
    display: block;
  }
  .desktop-only {
    display: none;
  }
  /*
  * header
  */
  .page-header {
    border-top: none;
  }
  .leader-line {
    display: none;
  }
  .component-type--text .component--content h2, .node-glossario.view-mode-full .component-type--page-header .component--content h2 {
    font-size: 1.8rem;
  }
  .component-type--text p, .node-glossario.view-mode-full .component-type--page-header p {
    word-break: break-word;
  }
}
.mobile-menu-trigger span,
.mobile-menu-close span {
  display: none;
}

@media only screen and (max-width: 800px) {
  .page-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 0;
  }
  .page-header:target .mobile-menu-trigger {
    display: none;
  }
  .page-header:target .mobile-menu-close {
    display: block;
  }
  .page-header:target .language-switcher-language-url,
  .page-header:target .primary-menu {
    display: block;
    margin-left: 1.5rem;
    padding-left: 0;
    background: white;
    width: 100%;
    margin: 0;
  }
}
@media only screen and (max-width: 800px) and (max-width: 626px) {
  .page-header:target .language-switcher-language-url ul,
  .page-header:target .primary-menu ul {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 800px) {
  .page-header:target .language-switcher-language-url {
    padding-top: 0;
    margin-top: 0;
    order: 2;
    padding: 0 1.5rem;
  }
  .page-header:target .language-switcher-language-url .links {
    padding-bottom: 1.5rem;
  }
  .page-header:target .language-switcher-language-url li a {
    color: #009ca6;
  }
  .page-header:target .language-switcher-language-url li a.is-active {
    color: #009ca6;
  }
  .page-header:target .language-switcher-language-url li.is-active {
    color: #FFFFFF;
    padding-left: 0.3rem;
    text-decoration: underline;
    text-decoration-color: #009ca6;
    text-decoration-thickness: 3px;
  }
  .page-header:target .primary-menu {
    margin-top: 0;
    padding-top: 1.5rem;
    border-top: 2px solid #009ca6;
    order: 1;
  }
  .page-header:target .primary-menu ul {
    gap: 0.5rem 1rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .page-header:target .primary-menu ul:not(.contextual-links) .menu-item--to-right {
    margin-left: 0;
  }
  .page-header .language-switcher-language-url,
  .page-header .primary-menu {
    display: none;
  }
  .page-header .mobile-menu-trigger span {
    display: none;
  }
  .page-header .mobile-menu-trigger {
    position: absolute;
    display: block;
    top: 20px;
    right: 30px;
    z-index: 9001;
    height: 30px;
  }
  .page-header .mobile-menu-trigger::before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 30px;
    background: #009ca6;
    height: 5px;
    transform-origin: 50% 50%;
    transform: translateY(-50%);
    transition: all 0.2s ease;
    box-shadow: 0 -0.75rem 0 0 #009ca6, 0 0.75rem 0 0 #009ca6;
  }
  .page-header .mobile-menu-trigger::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 30px;
    background: #009ca6;
    height: 5px;
    transform-origin: 50% 50%;
    transform: translateY(-50%);
    transition: all 0.2s ease;
  }
  .page-header .mobile-menu-close {
    position: absolute;
    display: block;
    top: 20px;
    right: 30px;
    z-index: 9001;
    height: 30px;
  }
  .page-header .mobile-menu-close::before {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 30px;
    background: #009ca6;
    height: 5px;
    transform-origin: 50% 50%;
    transition: all 0.2s ease;
    transform: translateY(-1px) rotate(45deg) scaleX(1.3);
    box-shadow: none;
  }
  .page-header .mobile-menu-close::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 30px;
    background: #009ca6;
    height: 5px;
    transform-origin: 50% 50%;
    transform: translateY(-1px) rotate(-45deg) scaleX(1.3);
    transition: all 0.2s ease;
  }
  .page-header .mobile-menu-close span {
    display: none;
  }
  .page-header .mobile-menu-close {
    display: none;
  }
  .page-header .page-header--logo {
    padding-top: 1.5rem;
    margin-top: 0;
    padding-bottom: 0;
  }
  .page-header .header-left {
    order: 3;
    padding-bottom: 1.5rem;
    padding-left: 1.5rem;
  }
  .page-header .header-right {
    order: 2;
    padding-left: 1.5rem;
  }
  .primary-menu li a {
    font-size: 1rem;
    padding: 0;
  }
}
@media print {
  @page {
    margin: 1cm;
    size: A4;
  }
  html {
    font-size: 10pt;
  }
  #iubenda-cs-banner.iubenda-cs-visible {
    display: none !important;
  }
  .article--body {
    font-size: 10pt !important;
    padding: 0 !important;
    margin: 0 !important;
    -moz-column-count: 2;
         column-count: 2;
  }
  body {
    background: none;
  }
  h2 {
    page-break-after: avoid;
  }
  .article--intro {
    margin-top: 0;
    padding-top: 0;
  }
  .field--field-downloads, .field--field-media-document {
    page-break-inside: avoid;
    -webkit-column-break-inside: avoid;
  }
  .field--field-downloads .items, .field--field-media-document .items {
    display: block;
  }
  iframe, object, embed, .video-container {
    display: none !important;
  }
  .component-type--video {
    display: none;
  }
  .page-header {
    padding: 10px;
    background: none;
    margin-bottom: 0;
    display: flex;
  }
  .page-header .header-right {
    padding: 0;
    align-self: center;
    margin-left: auto;
    display: block;
  }
  .page-header .partner img {
    height: 0.5cm !important;
    display: inline;
  }
  .page-header .partner img:last-child {
    margin-right: 0;
  }
  .page-header .page-header--logo {
    margin-bottom: 0;
    padding: 1em;
    grid-column: 1/3;
  }
  .page-header .page-header--logo .payoff {
    width: auto;
    font-size: 8pt;
  }
  .primary-menu, .secondary-menu, .page-header--search, .component--type-breadcrumbs, .component-type--comments, .component-type--next-prev-navigation, #block-selettorelingua,
  #block-links-primary-local-tasks {
    display: none;
  }
  .component-type--page-header {
    padding: 1.5rem !important;
  }
  .component-type--page-header figure {
    display: none;
  }
  .component-type--page-header h1 {
    max-width: none;
    padding: 0;
    color: #DA291C !important;
    font-size: 3rem;
  }
  .component-type--page-header h1 svg {
    display: none;
  }
  .component-type--page-header, .component-type--sub-page--header {
    min-height: 0;
  }
  .component--type-article-meta {
    display: none;
  }
  .component-type--page-header .component--content, .component-type--sub-page--header .component--content {
    margin-bottom: 0;
  }
  .component--type-article--header .component--bg {
    display: none;
  }
  .component--type-article--header {
    display: flex;
    min-height: 0;
  }
  .component--type-article--header .component--content {
    display: flex;
    flex-direction: column;
    order: 2;
  }
  .component--type-article--header figure {
    position: relative;
  }
  .component--type-article--header .article--type {
    order: 0;
  }
  .article--body {
    padding-top: 0;
  }
  .component--type-article--header figure img {
    position: relative;
  }
  .component--type-article-meta, .article--intro {
    background: none;
    margin-bottom: 0;
  }
  .component-type--cards-list {
    display: none;
  }
  .page-footer {
    display: none;
  }
  .content-stripe {
    background: none;
  }
  .component {
    padding-left: 0;
    padding-right: 0;
  }
  .component .component--content {
    max-width: none;
  }
}
@media not print {
  .article--body:has(.numbered-block:nth-child(even):last-child) {
    margin-bottom: 3rem;
  }
  .article--body:has(.numbered-block:nth-child(even):last-child):after {
    display: none;
  }
  .article--body:has(.numbered-block:nth-child(odd):last-child) {
    padding-bottom: 1.5rem;
  }
  .article--body .numbered-block {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .article--body .numbered-block + .component {
    padding-top: 5rem;
  }
  .article--body .numbered-block:first-child {
    padding-top: 1.5rem;
  }
  .article--body .numbered-block .component--title {
    position: relative;
    background: #009ca6;
    text-transform: uppercase;
    margin-bottom: 1em;
    color: #FFFFFF;
    display: inline-block;
    padding: 0.25em 0.5em;
  }
  .article--body .numbered-block .numbered-block--number {
    grid-column: 1;
    grid-row: 1;
    font-family: "Oswald", "grenadine-mvb", sans-serif;
    font-weight: 500;
    font-size: 10vw;
    text-align: center;
    font-weight: 400;
    color: #009ca6;
    line-height: 1;
  }
}
@media only screen and (max-width: 1023px) {
  .article--body .numbered-block .numbered-block--number {
    display: none;
  }
}
@media not print {
  .article--body .numbered-block:nth-child(odd) {
    padding-bottom: 3rem;
    padding-top: 4.5rem;
  }
  .article--body .numbered-block:nth-child(odd):last-child {
    padding-bottom: 1.5rem;
    padding-top: 7.5rem;
  }
  .article--body .numbered-block:nth-child(even) {
    padding-bottom: 1.5rem;
    background: #F3F2EE;
  }
  .article--body .numbered-block:nth-child(even):after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 3vw;
    bottom: 0;
    background-image: url(../img/bg/bg-sghembo-bottom-biscuit.svg);
    background-size: 100% 100%;
    border-top: 0px solid #FFFFFF;
    transform: translateY(99%) scaleX(-1);
  }
  .article--body .numbered-block:nth-child(even):before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    height: 3vw;
    top: -3vw;
    background-image: url(../img/bg/bg-sghembo-bottom.svg);
    background-size: 100% 100%;
    border-bottom: 0px solid #FFFFFF;
    transform: translateY(99%);
  }
  .article--body .numbered-block:nth-child(even):last-child {
    padding-bottom: 3rem;
    margin-bottom: -3rem;
  }
}
@media print {
  .numbered-block--number {
    display: none;
  }
  .article--body .numbered-block .component--title {
    color: #009ca6;
    background: transparent;
  }
  .article--body .numbered-block .component--title svg {
    display: none;
  }
}
.node-type--glossario.view-mode--teaser {
  margin-bottom: 0;
  background-color: transparent;
}
.node-type--glossario.view-mode--teaser h3 {
  font-weight: normal;
  font-style: 1rem;
  text-decoration: underline;
  text-decoration-color: #DA291C;
  color: #222;
  background-color: transparent;
}
.node-type--glossario.view-mode--teaser h3 a {
  color: #222;
}
.node-type--glossario.view-mode--teaser .content {
  padding: 0;
}

.glossary-term--wrapper {
  position: relative;
  z-index: 90909;
  display: inline-block;
}
.glossary-term--wrapper:hover {
  cursor: help;
}
.glossary-term--wrapper:hover .glossary-term--description {
  display: block;
  position: absolute;
  bottom: 100%;
  left: 0;
  background-color: #FFFFFF;
  border: 2px solid #D1CCBD;
  padding: 0.75rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  width: 25em;
  transform: translateY(-0.6rem);
  border-radius: 5px;
}
.glossary-term--wrapper:hover .glossary-term--description::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: 0.5rem;
  border-style: solid;
  border-width: 12px 10px 0 10px;
  border-color: #D1CCBD transparent transparent transparent;
  transform: rotate(0deg);
}

.glossary-term {
  font-weight: 700;
  background-color: #FFFFFF;
  border: 1px dashed #D1CCBD;
  border-radius: 0.5em;
  padding: 0.2em 0.75em 0.2em 0.5em;
}
.glossary-term::after {
  content: "";
  display: inline-block;
  position: relative;
  right: -0.3em;
  background-image: url(../img/icons/dictionary.svg);
  background-position: center center;
  background-size: cover;
  width: 1.4rem;
  height: 1.4rem;
}

.glossary-term--description {
  display: none;
  font-size: 0.75rem;
}

.node-glossario.view-mode-full .component-type--page-header .component--content {
  max-width: 1100px;
}

.glossario--letter {
  margin-bottom: 1rem;
  font-size: 2.44rem;
  font-family: "Lato", sans-serif;
  font-style: normal;
  font-weight: 700;
  margin-top: 1em;
}
.glossario--letter:first-child {
  margin-top: 0;
}

.view-glossario .grid {
  display: block;
  -moz-column-count: 3;
       column-count: 3;
}

.terms--container {
  -moz-column-break-inside: avoid;
       break-inside: avoid-column;
}

.glossify-tooltip-content.closed {
  display: none;
}

.glossify-tooltip-link {
  position: relative;
  -webkit-text-decoration: underline 3px dotted #DA291C;
          text-decoration: underline 3px dotted #DA291C;
}

.hide-languages a[hreflang=es] {
  display: none;
}

@property --angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: 45deg;
}
@property --distance {
  syntax: "<length>";
  inherits: true;
  initial-value: 20px;
}
@keyframes floatInSpace {
  from {
    transform: translateY(-0.5vh);
  }
  to {
    transform: translateY(0.5vh);
  }
}
@keyframes followScroll {
  from {
    transform: scale(0.8) translateY(-100%);
  }
  to {
    transform: translateY(0%);
  }
}
@keyframes bgParallax {
  0% {
    background-position: 0 0, top left;
  }
  10% {
    background-position: 0 100%, top left;
  }
}
@keyframes glitchone {
  1% {
    text-shadow: none;
  }
  4% {
    text-shadow: -6px 0 2px rgba(255, 0, 0, 0.2666666667), 6px 0 2px rgba(0, 255, 0, 0.2666666667);
  }
  9% {
    text-shadow: none;
  }
  20% {
    text-shadow: none;
  }
  25% {
    text-shadow: 6px 0 2px rgba(0, 255, 0, 0.2666666667);
  }
  30% {
    text-shadow: none;
  }
  39% {
    text-shadow: none;
  }
  40% {
    text-shadow: 6px 0 3px rgba(0, 0, 255, 0.2666666667);
  }
  44% {
    text-shadow: none;
  }
  85% {
    text-shadow: none;
  }
  90% {
    text-shadow: 6px 0 2px rgba(0, 0, 255, 0.2666666667), 6px 0 2px rgba(0, 255, 0, 0.2666666667);
  }
  91% {
    text-shadow: none;
  }
}
@keyframes tvscan {
  from {
    -webkit-mask-position: 0 0;
            mask-position: 0 0;
  }
  to {
    -webkit-mask-position: 0 4px;
            mask-position: 0 4px;
  }
}
@keyframes ufo {
  0% {
    --angle: 0deg;
  }
  100% {
    --angle: 360deg;
  }
}
@media (prefers-reduced-motion) {
  .page-style--universe * {
    animation: none !important;
  }
}
.page-style--universe .component-type--figure {
  margin-top: 1.5rem;
  margin-bottom: 4.5rem;
}
.page-style--universe .component-type--figure.picture {
  margin-top: unset;
}
.page-style--universe .component-type--figure.picture figure {
  background-color: transparent;
}
.page-style--universe .component-type--figure.picture img {
  position: relative;
  z-index: 2;
  border: unset;
}
.page-style--universe .component-type--figure.picture svg {
  display: none;
}
.page-style--universe article.node-page {
  overflow-x: clip;
  background-image: url("../img/universe/feel-safe-universe--bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  background-attachment: fixed;
  padding-bottom: 22.5rem;
  position: relative;
}
@media only screen and (max-width: 940px) {
  .page-style--universe article.node-page {
    padding-bottom: 5.25rem;
  }
}
.page-style--universe .component-type--page-header {
  background: none;
  overflow: visible;
}
@media only screen and (max-width: 940px) {
  .page-style--universe .component-type--page-header {
    padding-bottom: 1.05rem;
  }
}
.page-style--universe .component-type--page-header .component--content {
  filter: drop-shadow(-1px 1px 0 #ae90c3) drop-shadow(-2px 2px 0 #ae90c3) drop-shadow(-3px 3px 0 #ae90c3) drop-shadow(0 0 15px #ae90c3);
  overflow: visible;
}
@media only screen and (max-width: 940px) {
  .page-style--universe .component-type--page-header .component--content {
    margin-bottom: 1.5rem;
  }
}
.page-style--universe .component-type--page-header h1 {
  background-color: #FFFFFF;
  color: #009ca6;
  clip-path: polygon(0 0, calc(100% - 1.5rem) 0, 100% 1.5rem, 100% 100%, 2.25rem 100%, 0 calc(100% - 2.25rem));
  font-size: 3.9rem;
  text-transform: uppercase;
  position: relative;
  animation-name: glitchone, tvscan, floatInSpace;
  animation-duration: 2s, 0.4s, 2s;
  animation-timing-function: linear, linear, ease-in-out;
  animation-iteration-count: 5, infinite, infinite;
  animation-fill-mode: forwards, forwards, forwards;
  animation-direction: normal, normal, alternate;
  -webkit-mask-image: url("../img/universe/tv-mask.png");
          mask-image: url("../img/universe/tv-mask.png");
  mask-mode: luminance;
}
@media only screen and (max-width: 940px) {
  .page-style--universe .component-type--page-header h1 {
    font-size: 2rem;
    padding: 1.875rem;
  }
}
.page-style--universe .component-type--page-header h1:before {
  content: "";
  position: absolute;
  bottom: 10px;
  left: calc(1.5rem + 15px);
  height: 1px;
  right: 10px;
  background: #009ca6;
}
.page-style--universe .component-type--page-header h1:after {
  content: "";
  position: absolute;
  background: linear-gradient(45deg, #ae90c3 5%, transparent 5%, transparent 50%, #ae90c3 50%, #ae90c3 55%, transparent 55%, transparent);
  background-size: 15px 15px;
  height: 1.5rem;
  top: 5px;
  left: 5px;
  right: 5px;
}
.page-style--universe .component-type--page-header h1 svg {
  filter: none;
}

.block-style--universe {
  position: relative;
  margin-bottom: 7.5rem;
  display: grid;
  grid-template-columns: minmax(1.5rem, 1fr) minmax(auto, 1100px) minmax(1.5rem, 1fr);
}
@media only screen and (max-width: 940px) {
  .block-style--universe {
    margin-bottom: 1.5rem;
  }
}
.block-style--universe.component-type--text, .node-glossario.view-mode-full .block-style--universe.component-type--page-header {
  position: relative;
}
.block-style--universe.component-type--text.component--layout--70-30 .component--content, .node-glossario.view-mode-full .block-style--universe.component--layout--70-30.component-type--page-header .component--content {
  grid-template-columns: 2.5fr 1fr;
}
@media only screen and (max-width: 940px) {
  .block-style--universe.component-type--text.component--layout--70-30 .component--content, .node-glossario.view-mode-full .block-style--universe.component--layout--70-30.component-type--page-header .component--content {
    display: block;
  }
}
.block-style--universe.component-type--text .component--content, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 1.5rem;
  max-width: 50rem;
}
@media only screen and (max-width: 940px) {
  .block-style--universe.component-type--text .component--content, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content {
    display: block;
  }
}
.block-style--universe.component-type--text .component--content .component--title, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--title {
  grid-column: 1;
  grid-row: 1;
}
.block-style--universe.component-type--text .component--content .text-container, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .text-container, .block-style--universe.component-type--text .component--content .cke_editable, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .cke_editable, .block-style--universe.component-type--text .component--content .component--content, .block-style--universe.component-type--text .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .block-style--universe.component-type--text .component--content .infographic--body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .infographic--body, .block-style--universe.component-type--text .component--content .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .block-style--universe.component-type--text .component--content .component--text, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--text, .block-style--universe.component-type--text .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .block-style--universe.component-type--text .component--content .component--text, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--text, .block-style--universe.component-type--text .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .block-style--universe.component-type--text .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--content {
  grid-column: 1;
  grid-row: 2;
}
@media only screen and (max-width: 940px) {
  .block-style--universe.component-type--text .component--content .text-container, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .text-container, .block-style--universe.component-type--text .component--content .cke_editable, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .cke_editable, .block-style--universe.component-type--text .component--content .component--content, .block-style--universe.component-type--text .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .block-style--universe.component-type--text .component--content .infographic--body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .infographic--body, .block-style--universe.component-type--text .component--content .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .block-style--universe.component-type--text .component--content .component--text, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--text, .block-style--universe.component-type--text .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .block-style--universe.component-type--text .component--content .component--text, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component-type--pzt-blockquote .component--content .component--text, .component-type--pzt-blockquote .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--text, .block-style--universe.component-type--text .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .block-style--universe.component-type--text .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .component-type--pzt-sequence .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .node-glossario.view-mode-full .block-style--universe.component-type--page-header .component--content .component--content {
    margin-bottom: 1.5rem;
  }
}
.block-style--universe.component-type--text img, .node-glossario.view-mode-full .block-style--universe.component-type--page-header img {
  position: relative;
  grid-column: 2;
  grid-row: span 2;
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 940px) {
  .block-style--universe.component-type--text img, .node-glossario.view-mode-full .block-style--universe.component-type--page-header img {
    width: 60%;
  }
}
.block-style--universe.even > .component--content {
  margin-left: 4.5rem;
}
@media only screen and (max-width: 940px) {
  .block-style--universe.even > .component--content {
    margin-left: 0;
  }
}
.block-style--universe > .component--content {
  grid-column: 2;
  margin-right: 4.5rem;
}
@media only screen and (max-width: 940px) {
  .block-style--universe > .component--content {
    margin-right: 0;
  }
}
.block-style--universe > .component--content {
  position: relative;
  margin-right: auto;
  margin-left: 0;
  padding: 3rem;
  z-index: 1;
  position: relative;
}
@media only screen and (max-width: 940px) {
  .block-style--universe > .component--content {
    padding: 3rem 1.5rem 1.5rem 1.5rem;
  }
  .block-style--universe > .component--content .component--title {
    font-size: 1.44rem;
  }
  .block-style--universe > .component--content .text-container, .block-style--universe > .component--content .cke_editable, .block-style--universe > .component--content .component-type--text .component--content, .component-type--text .block-style--universe > .component--content .component--content,
  .block-style--universe > .component--content .component-type--pzt-downloads .component--content,
  .component-type--pzt-downloads .block-style--universe > .component--content .component--content, .block-style--universe > .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .block-style--universe > .component--content .infographic--body, .block-style--universe > .component--content .component-type--pzt-image-text .component--text, .component-type--pzt-image-text .block-style--universe > .component--content .component--text, .component-type--pzt-blockquote .block-style--universe > .component--content .component--text, .component-type--pzt-sequence .block-style--universe > .component--content .component--blocks .field--field-blocks .storage--block .field--field-body, .block-style--universe > .component--content .node-glossario.view-mode-full .component-type--page-header .component--content, .node-glossario.view-mode-full .component-type--page-header .block-style--universe > .component--content .component--content {
    font-size: 1rem;
  }
}
.block-style--universe > .component--content:after {
  content: "";
  position: absolute;
  background: linear-gradient(-45deg, #009ca6 5%, transparent 5%, transparent 50%, #009ca6 50%, #009ca6 55%, transparent 55%, transparent);
  background-size: 15px 15px;
  height: 1.5rem;
  top: 5px;
  left: 5px;
  right: 5px;
  clip-path: polygon(calc(1.5rem + 4px) 0, 100% 0, 100% 100%, 0 100%);
}
.block-style--universe > .component--content .component--content--backdrop {
  position: absolute;
  filter: drop-shadow(0 0 5px #009ca6);
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: -1;
}
.block-style--universe > .component--content .component--content--backdrop:after {
  content: "";
  position: absolute;
  background: rgba(0, 156, 166, 0.5);
  clip-path: polygon(1.5rem 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%, 0 1.5rem);
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
.block-style--universe:not(.block-style--universe--white) .component--title,
.block-style--universe:not(.block-style--universe--white) .text-container,
.block-style--universe:not(.block-style--universe--white) .cke_editable,
.block-style--universe:not(.block-style--universe--white) .component-type--text .component--content,
.component-type--text .block-style--universe:not(.block-style--universe--white) .component--content,
.block-style--universe:not(.block-style--universe--white) .component-type--pzt-downloads .component--content,
.component-type--pzt-downloads .block-style--universe:not(.block-style--universe--white) .component--content,
.block-style--universe:not(.block-style--universe--white) .component-type--pzt-infographic .infographic--body,
.component-type--pzt-infographic .block-style--universe:not(.block-style--universe--white) .infographic--body,
.block-style--universe:not(.block-style--universe--white) .component-type--pzt-image-text .component--text,
.component-type--pzt-image-text .block-style--universe:not(.block-style--universe--white) .component--text,
.block-style--universe:not(.block-style--universe--white) .component-type--pzt-blockquote .component--content .component--text,
.component-type--pzt-blockquote .component--content .block-style--universe:not(.block-style--universe--white) .component--text,
.block-style--universe:not(.block-style--universe--white) .component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .field--field-body,
.component-type--pzt-sequence .component--content .component--blocks .field--field-blocks .storage--block .block-style--universe:not(.block-style--universe--white) .field--field-body,
.block-style--universe:not(.block-style--universe--white) .node-glossario.view-mode-full .component-type--page-header .component--content,
.node-glossario.view-mode-full .component-type--page-header .block-style--universe:not(.block-style--universe--white) .component--content {
  color: #FFFFFF;
}
.block-style--universe.block-style--universe--white .component--content--backdrop:after {
  background: rgba(255, 255, 255, 0.8);
}
.block-style--universe .universe--floating {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
}
.block-style--universe .universe--floating img {
  width: max(20vh, 10rem);
  animation: floatInSpace 1s ease-in-out infinite alternate;
}
@media only screen and (max-width: 940px) {
  .block-style--universe .universe--floating img {
    display: none;
  }
}
.block-style--universe .universe--floating {
  left: calc(max(20vh, 10rem) * -0.7);
  top: 50%;
  z-index: -2;
}
.block-style--universe .universe--floating.odd {
  right: calc(max(20vh, 10rem) * -0.7);
  left: auto;
}
.block-style--universe .universe--floating {
  transform: scale(0.8) translateY(-100%);
  animation-timeline: view();
  animation-name: followScroll;
  animation-duration: 1ms;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}
.block-style--universe .video-container {
  margin-top: 0;
  margin-bottom: 0;
}
.block-style--universe .video-container:after {
  display: none;
}
.block-style--universe .component-type--figure figcaption {
  color: #FFFFFF;
}
.block-style--universe .action, .block-style--universe .form-wrapper input[type=submit], .form-wrapper .block-style--universe input[type=submit], .block-style--universe input[type=submit].button--primary, .block-style--universe .form-actions a.button, .form-actions .block-style--universe a.button, .block-style--universe .form-managed-file input[type=submit], .form-managed-file .block-style--universe input[type=submit], .block-style--universe .webform-submit, .block-style--universe .action-links a, .action-links .block-style--universe a, .block-style--universe .component-type--cards-list .actions a, .component-type--cards-list .actions .block-style--universe a {
  border-radius: 0;
  padding-right: 1.25em;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  letter-spacing: -0.025em;
  font-size: 1.44rem;
  background: transparent;
  position: relative;
  color: #009ca6;
  z-index: 2;
}
@media only screen and (max-width: 940px) {
  .block-style--universe .action, .block-style--universe .form-wrapper input[type=submit], .form-wrapper .block-style--universe input[type=submit], .block-style--universe input[type=submit].button--primary, .block-style--universe .form-actions a.button, .form-actions .block-style--universe a.button, .block-style--universe .form-managed-file input[type=submit], .form-managed-file .block-style--universe input[type=submit], .block-style--universe .webform-submit, .block-style--universe .action-links a, .action-links .block-style--universe a, .block-style--universe .component-type--cards-list .actions a, .component-type--cards-list .actions .block-style--universe a {
    font-size: 1rem;
  }
}
.block-style--universe .action:before, .block-style--universe .form-wrapper input[type=submit]:before, .form-wrapper .block-style--universe input[type=submit]:before, .block-style--universe input[type=submit].button--primary:before, .block-style--universe .form-actions a.button:before, .form-actions .block-style--universe a.button:before, .block-style--universe .form-managed-file input[type=submit]:before, .form-managed-file .block-style--universe input[type=submit]:before, .block-style--universe .webform-submit:before, .block-style--universe .action-links a:before, .action-links .block-style--universe a:before, .block-style--universe .component-type--cards-list .actions a:before, .component-type--cards-list .actions .block-style--universe a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #FFFFFF;
  z-index: -1;
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 0 100%, 0 1.5rem);
}
.block-style--universe .action:after, .block-style--universe .form-wrapper input[type=submit]:after, .form-wrapper .block-style--universe input[type=submit]:after, .block-style--universe input[type=submit].button--primary:after, .block-style--universe .form-actions a.button:after, .form-actions .block-style--universe a.button:after, .block-style--universe .form-managed-file input[type=submit]:after, .form-managed-file .block-style--universe input[type=submit]:after, .block-style--universe .webform-submit:after, .block-style--universe .action-links a:after, .action-links .block-style--universe a:after, .block-style--universe .component-type--cards-list .actions a:after, .component-type--cards-list .actions .block-style--universe a:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: -5px;
  bottom: -5px;
  clip-path: polygon(0 0, calc(100% - 5px) 0, 100% 5px, 100% calc(100% - 1.5rem), calc(100% - 1.5rem) 100%, 5px 100%, 0 calc(100% - 5px));
  background: #222;
  z-index: -2;
}
.block-style--universe .coming-soon {
  position: relative;
}
.block-style--universe .coming-soon a {
  position: relative;
  padding: 1.5em 1.25em 1em 1em;
  cursor: default;
}
.block-style--universe .coming-soon span {
  background-color: rgba(218, 41, 28, 0.8);
  color: #FFFFFF;
  position: absolute;
  z-index: 9;
  font-family: "Oswald", "grenadine-mvb", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  padding: 0.225rem;
  transform: rotate(-15deg);
  top: -0.3em;
  left: -1em;
  font-size: 1.125rem;
}

.universe-character {
  position: absolute;
  z-index: 800;
}
.universe-character.universe-character--lillo {
  top: -2rem;
  right: 2rem;
  width: 25rem;
  height: 25rem;
  background-image: url("../img/universe/illustrations/lillo.svg");
  background-size: contain;
  background-repeat: no-repeat;
  animation: ufo 6s linear infinite;
  --angle: 0deg;
  --distance: 30px;
  transform: translateX(calc(cos(var(--angle)) * var(--distance))) translateY(calc(sin(var(--angle)) * var(--distance)));
}
@media only screen and (max-width: 940px) {
  .universe-character.universe-character--lillo {
    width: 10rem;
    height: 10rem;
  }
}
.universe-character.universe-character--leo {
  bottom: -2rem;
  left: 2rem;
  width: 25rem;
  height: 25rem;
  background-image: url("../img/universe/illustrations/leo.svg");
  background-size: contain;
  background-repeat: no-repeat;
  animation: floatInSpace 2s ease-in-out infinite alternate;
}
@media only screen and (max-width: 940px) {
  .universe-character.universe-character--leo {
    width: 10rem;
    height: 10rem;
  }
}/*# sourceMappingURL=style.css.map */