@charset "UTF-8";
/* setting base */
@font-face {
  font-family: "Lato";
  src: url("fonts/Lato-Bold.woff2") format("woff2"), url("fonts/Lato-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("fonts/Lato-Regular.woff2") format("woff2"), url("fonts/Lato-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Lato";
  src: url("fonts/Lato-Italic.woff2") format("woff2"), url("fonts/Lato-Italic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Oswald";
  src: url("fonts/Oswald-Medium.woff2") format("woff2"), url("fonts/Oswald-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Oswald";
  src: url("fonts/Oswald-Regular.woff2") format("woff2"), url("fonts/Oswald-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
.title-font {
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
}

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

/* mattarello */
/* grids */
/* text sizes */
/* typography measures */
/* components */
/* radiuses */
/* animations */
/* forms */
/* cards */
/* icons */
/*
 * colors
 */
/* overlays */
/* borders */
/* block backgrounds */
/* wireframe */
/* shadows */
/*
Copy to your sass if you want to use base fonts

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&family=Roboto+Condensed&family=Source+Serif+Pro:ital,wght@0,400;0,700;1,400;1,700&display=swap');
*/
.title-font {
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  line-height: 1.3;
}

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

:root {
  --unit: 1.5rem;
  --component-padding: 2.5rem;
  /* font-size */
  --font-scale-factor: 1;
  --font-size--m: 1rem;
  --font-size--s: calc(var(--font-size--m)/var(--font-scale-factor));
  --font-size--xs: calc(var(--font-size--s)/var(--font-scale-factor));
  --font-size--l: calc(var(--font-size--m)*var(--font-scale-factor));
  --font-size--xl: calc(var(--font-size--l)*var(--font-scale-factor));
  --font-size--xxl: calc(var(--font-size--xl)*var(--font-scale-factor));
  --font-size--xxxl: calc(var(--font-size--xxl)*var(--font-scale-factor));
  --text-line-height: 1.64;
  /* color */
  --color-primary: #DA291C;
  --color-secondary: #009ca6;
  --color-tertiary: #FC4C02;
  --color-white: #FFFFFF;
  --color-black: #222;
  --color-light-grey: #f0f0f0;
  --color-text: var(--color-black);
  --color-body-bg: var(--color-white);
  --subtle-color: #ddd;
  /* links */
  --color-link:var(--color-black);
  --color-link-decoration:none;
}

/**
 * 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, 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: 1200px;
  width: 100%;
  margin: 0 auto;
}
.container.with-content {
  padding-left: var(--unit);
  padding-right: var(--unit);
}

.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: var(--unit);
  padding-right: var(--unit);
  width: 8.3333333333%;
  vertical-align: top;
}

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

.col-2 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 16.6666666667%;
  vertical-align: top;
}

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

.col-3 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 25%;
  vertical-align: top;
}

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

.col-4 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 33.3333333333%;
  vertical-align: top;
}

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

.col-5 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 41.6666666667%;
  vertical-align: top;
}

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

.col-6 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 50%;
  vertical-align: top;
}

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

.col-7 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 58.3333333333%;
  vertical-align: top;
}

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

.col-8 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 66.6666666667%;
  vertical-align: top;
}

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

.col-9 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 75%;
  vertical-align: top;
}

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

.col-10 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 83.3333333333%;
  vertical-align: top;
}

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

.col-11 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 91.6666666667%;
  vertical-align: top;
}

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

.col-12 {
  display: table-cell;
  padding-left: var(--unit);
  padding-right: var(--unit);
  width: 100%;
  vertical-align: top;
}

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

.row.border > *[class*=col] {
  border: 1px solid var(--color-black);
}

.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: var(--unit);
  padding-right: var(--unit);
}

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

.vcenter {
  vertical-align: middle;
}

.col-full {
  padding-left: var(--unit);
  padding-right: var(--unit);
}

.grid-up-1 {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(1, minmax(5rem, 1fr));
  grid-template-rows: auto;
  row-gap: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.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: var(--unit);
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.grid-up-12.grid-equalize-heights {
  align-items: stretch;
}

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

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

@media only screen and (max-width: 767px) {
  .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: var(--unit);
    padding-right: var(--unit);
  }
  .mob-2 {
    width: 16.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-3 {
    width: 25%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-4 {
    width: 33.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-5 {
    width: 41.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-6 {
    width: 50%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-7 {
    width: 58.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-8 {
    width: 66.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-9 {
    width: 75%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-10 {
    width: 83.3333333333%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-11 {
    width: 91.6666666667%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .mob-12 {
    width: 100%;
    display: table-cell;
    vertical-align: top;
    padding-left: var(--unit);
    padding-right: var(--unit);
  }
  .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: var(--unit);
  }
  .grid-up-2 {
    display: block;
  }
  .grid-up-2 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-3 {
    display: block;
  }
  .grid-up-3 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-4 {
    display: block;
  }
  .grid-up-4 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-5 {
    display: block;
  }
  .grid-up-5 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-6 {
    display: block;
  }
  .grid-up-6 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-7 {
    display: block;
  }
  .grid-up-7 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-8 {
    display: block;
  }
  .grid-up-8 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-9 {
    display: block;
  }
  .grid-up-9 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-10 {
    display: block;
  }
  .grid-up-10 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-11 {
    display: block;
  }
  .grid-up-11 > * {
    margin-bottom: var(--unit);
  }
  .grid-up-12 {
    display: block;
  }
  .grid-up-12 > * {
    margin-bottom: var(--unit);
  }
  .mobile-grid-up-1 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(1, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-1.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-2 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(2, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-2.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-3 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(3, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-3.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-4 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(4, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-4.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-5 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(5, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-5.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-6 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(6, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-6.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-7 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(7, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-7.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-8 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(8, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-8.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-9 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(9, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-9.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-10 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(10, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-10.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-11 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(11, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-11.grid-equalize-heights {
    align-items: stretch;
  }
  .mobile-grid-up-12 {
    max-width: 100%;
    padding-left: var(--unit);
    padding-right: var(--unit);
    display: grid;
    grid-template-columns: repeat(12, minmax(5rem, 1fr));
    grid-template-rows: auto;
    row-gap: var(--unit);
    -moz-column-gap: var(--unit);
         column-gap: var(--unit);
  }
  .mobile-grid-up-12.grid-equalize-heights {
    align-items: stretch;
  }
}
.grid-page, .component-type--pzt-gallery,
.component-type--gallery, .component-type--figure {
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) 75rem minmax(2.5rem, 1fr);
}
@media only screen and (max-width: 80rem) {
  .grid-page, .component-type--pzt-gallery,
  .component-type--gallery, .component-type--figure {
    grid-template-columns: 1.25rem 1fr 1.25rem;
  }
}

.huge-text,
.xxl-text {
  font-size: var(--font-size--xxl);
}

.large-text,
.l-text {
  font-size: var(--font-size--l);
}

.big-text,
.xl-text {
  font-size: var(--font-size--xl);
}

.small-text,
.s-text {
  font-size: var(--font-size--s);
}

.tiny-text,
.xs-text {
  font-size: var(--font-size--xs);
}

.normal-text,
.m-text {
  font-size: var(--font-size--m);
}

.hero-text,
.xxxl-text {
  font-size: var(--font-size--xxxl);
}

/* headings */
h1, h2, h3, h4, h5, h6 {
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  margin-bottom: 0.5em;
  line-height: 1.3;
  display: block;
  text-wrap: balance;
}

h1 {
  font-size: var(--font-size--xxxl);
}
h1 small {
  font-size: var(--font-size--xl);
}

h2 {
  font-size: var(--font-size--xxl);
}
h2 small {
  font-size: var(--font-size--l);
}

h3 {
  font-size: var(--font-size--xl);
}
h3 small {
  font-size: var(--font-size--m);
}

h4 {
  font-size: var(--font-size--l);
}
h4 small {
  font-size: var(--font-size--s);
}

h5 {
  font-size: var(--font-size--m);
}

h6 {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: var(--font-size--m);
}

/* text-container */
.text-container, .component-type--pzt-infographic .infographic--body,
.component-type--infographic .infographic--body, .cke_editable {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  letter-spacing: 0;
  -webkit-hyphens: none;
          hyphens: none;
  max-width: 45rem;
  line-height: var(--text-line-height);
}
.text-container * + h2, .component-type--pzt-infographic .infographic--body * + h2,
.component-type--infographic .infographic--body * + h2, .cke_editable * + h2,
.text-container * + h3,
.component-type--pzt-infographic .infographic--body * + h3,
.component-type--infographic .infographic--body * + h3,
.cke_editable * + h3,
.text-container * + h4,
.component-type--pzt-infographic .infographic--body * + h4,
.component-type--infographic .infographic--body * + h4,
.cke_editable * + h4,
.text-container * + h5,
.component-type--pzt-infographic .infographic--body * + h5,
.component-type--infographic .infographic--body * + h5,
.cke_editable * + h5,
.text-container * + h6,
.component-type--pzt-infographic .infographic--body * + h6,
.component-type--infographic .infographic--body * + h6,
.cke_editable * + h6 {
  margin-top: 1.5em;
}
.text-container p, .component-type--pzt-infographic .infographic--body p,
.component-type--infographic .infographic--body p, .cke_editable p {
  margin-bottom: 1em;
}
.text-container p:last-child, .component-type--pzt-infographic .infographic--body p:last-child,
.component-type--infographic .infographic--body p:last-child, .cke_editable p:last-child {
  margin-bottom: 0;
}
.text-container table th, .component-type--pzt-infographic .infographic--body table th,
.component-type--infographic .infographic--body table th, .cke_editable table th {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  text-align: left;
}
.text-container table td, .component-type--pzt-infographic .infographic--body table td,
.component-type--infographic .infographic--body table td, .cke_editable table td,
.text-container table th,
.component-type--pzt-infographic .infographic--body table th,
.component-type--infographic .infographic--body table th,
.cke_editable table th {
  padding: 0.25em 1em 0.25em 0.25em;
  vertical-align: top;
  border-bottom: 1px dotted var(--subtle-color);
}
.text-container figure, .component-type--pzt-infographic .infographic--body figure,
.component-type--infographic .infographic--body figure, .cke_editable figure {
  margin-bottom: 2em;
}
.text-container figure figcaption, .component-type--pzt-infographic .infographic--body figure figcaption,
.component-type--infographic .infographic--body figure figcaption, .cke_editable figure figcaption {
  font-size: var(--font-size--s);
}
.text-container em, .component-type--pzt-infographic .infographic--body em,
.component-type--infographic .infographic--body em, .cke_editable em {
  font-family: "Lato";
  font-style: italic;
  font-weight: normal;
  letter-spacing: 0;
}
.text-container strong, .component-type--pzt-infographic .infographic--body strong,
.component-type--infographic .infographic--body strong, .cke_editable strong {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}
.text-container ul, .component-type--pzt-infographic .infographic--body ul,
.component-type--infographic .infographic--body ul, .cke_editable ul,
.text-container ol,
.component-type--pzt-infographic .infographic--body ol,
.component-type--infographic .infographic--body ol,
.cke_editable ol,
.text-container dl,
.component-type--pzt-infographic .infographic--body dl,
.component-type--infographic .infographic--body dl,
.cke_editable dl {
  margin-bottom: 1em;
}
.text-container ul, .component-type--pzt-infographic .infographic--body ul,
.component-type--infographic .infographic--body ul, .cke_editable ul {
  list-style: disc;
  padding-left: 1.25em;
}
.text-container ul ul, .component-type--pzt-infographic .infographic--body ul ul,
.component-type--infographic .infographic--body ul ul, .cke_editable ul ul {
  margin-bottom: 2em;
}
.text-container ul li, .component-type--pzt-infographic .infographic--body ul li,
.component-type--infographic .infographic--body ul li, .cke_editable ul li,
.text-container dt,
.component-type--pzt-infographic .infographic--body dt,
.component-type--infographic .infographic--body dt,
.cke_editable dt {
  display: list-item;
  margin-bottom: 0.5em;
  padding-left: 1em;
  position: relative;
}
.text-container li, .component-type--pzt-infographic .infographic--body li,
.component-type--infographic .infographic--body li, .cke_editable li,
.text-container dt,
.component-type--pzt-infographic .infographic--body dt,
.component-type--infographic .infographic--body dt,
.cke_editable dt,
.text-container dd,
.component-type--pzt-infographic .infographic--body dd,
.component-type--infographic .infographic--body dd,
.cke_editable dd {
  padding-left: 0;
}
.text-container dl, .component-type--pzt-infographic .infographic--body dl,
.component-type--infographic .infographic--body dl, .cke_editable dl {
  list-style: none;
}
.text-container dt, .component-type--pzt-infographic .infographic--body dt,
.component-type--infographic .infographic--body dt, .cke_editable dt {
  font-weight: bold;
}
.text-container dd, .component-type--pzt-infographic .infographic--body dd,
.component-type--infographic .infographic--body dd, .cke_editable dd {
  margin-bottom: 2em;
}
.text-container ol, .component-type--pzt-infographic .infographic--body ol,
.component-type--infographic .infographic--body ol, .cke_editable ol {
  list-style: decimal;
  padding-left: 1.5em;
}
.text-container ol li, .component-type--pzt-infographic .infographic--body ol li,
.component-type--infographic .infographic--body ol li, .cke_editable ol li {
  margin-bottom: 0.5em;
}
.text-container.align-center, .component-type--pzt-infographic .align-center.infographic--body,
.component-type--infographic .align-center.infographic--body, .align-center.cke_editable {
  margin: 0 auto;
}

/* generic component */
.component {
  position: relative;
}
.component > .component--content {
  position: relative;
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  z-index: 2;
}
.component .component--bg {
  background-position: 50% 50%;
  background-size: cover;
  z-index: 1;
}
.component.with-page-grid {
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) 75rem minmax(2.5rem, 1fr);
}
@media only screen and (max-width: 80rem) {
  .component.with-page-grid {
    grid-template-columns: 1.25rem 1fr 1.25rem;
  }
}

.component--title {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  margin-bottom: var(--unit);
}

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

.position--center,
.position--full-bleed-left,
.position--full-bleed-right,
.position--page-width {
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) 75rem minmax(2.5rem, 1fr);
}
@media only screen and (max-width: 80rem) {
  .position--center,
  .position--full-bleed-left,
  .position--full-bleed-right,
  .position--page-width {
    grid-template-columns: 1.25rem 1fr 1.25rem;
  }
}

.position--center > .component--content,
.position--center > .component--title,
.position--center > .component--content > .component--title {
  grid-column: 2;
}

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

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

.position--full-bleed {
  padding-left: 0;
  padding-right: 0;
}
.position--full-bleed > .component--content,
.position--full-bleed > .component--title,
.position--full-bleed > .component--content > .component--title {
  max-width: none;
  grid-column: 1/4;
  margin-left: 0;
  margin-right: 0;
}
.position--full-bleed.component-type--text {
  padding-left: var(--unit);
  padding-right: var(--unit);
}

.position--full-width {
  padding-left: var(--component-padding);
  padding-right: var(--component-padding);
}
.position--full-width > .component--content,
.position--full-width > .component--title,
.position--full-width > .component--content > .component--title {
  max-width: none;
  margin-left: auto;
  margin-right: auto;
}

.position--full-screen {
  padding: 0;
  display: block;
}
.position--full-screen > .component--content {
  max-width: none;
  height: 100vh;
}

.position--page-width {
  margin-left: var(--unit);
  margin-right: var(--unit);
}
.position--page-width > .component--content,
.position--page-width > .component--title,
.position--page-width > .component--content > .component--title {
  max-width: none;
  grid-column: 1/4;
}

.position--text-width > .component--content,
.position--text-width > .component--title,
.position--text-width > .component--content > .component--title {
  grid-column: 2;
  max-width: 45rem;
}

input[type=text],
input[type=number],
input[type=password],
input[type=email],
input[type=tel],
input[type=date],
input[type=datetime-local],
input[type=submit],
select,
textarea,
dialog#contact-form-dialog[open] form input[type=phone] {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  letter-spacing: 0;
  font-size: var(--font-size--m);
  background-color: var(--color-white);
  color: var(--color-black);
  border-radius: calc(var(--unit) * 0.5 * 0.5);
  border: 1px solid var(--color-black);
  min-height: var(--unit);
  width: 100%;
  vertical-align: middle;
  padding: calc(var(--unit) * 0.3) calc(var(--unit) * 0.3) calc(var(--unit) * 0.3) calc(var(--unit) * 0.3);
}
input[type=text].disabled,
input[type=number].disabled,
input[type=password].disabled,
input[type=email].disabled,
input[type=tel].disabled,
input[type=date].disabled,
input[type=datetime-local].disabled,
input[type=submit].disabled,
select.disabled,
textarea.disabled,
dialog#contact-form-dialog[open] form input.disabled[type=phone] {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background: var(--color-light-grey) !important;
}

form {
  --color-link: var(--color-primary);
  --color-link-decoration: underline;
}

.form-item {
  width: auto;
  max-width: 100%;
  margin-bottom: calc(var(--unit) * 0.75);
}
.form-item label:not(.option) {
  font-weight: 700;
}
.form-item .description,
.form-item .text-count-wrapper {
  font-size: var(--font-size--s);
}

.form-type--checkbox,
.form-type--radio {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.form-type--checkbox > input,
.form-type--radio > input {
  margin-top: 0.25rem;
}
.form-type--checkbox label.option,
.form-type--radio label.option {
  width: calc(100% - 2em);
  line-height: 1.3;
}

fieldset.form-item legend {
  font-weight: 700;
  margin-bottom: calc(var(--unit) * 0.5);
}
fieldset.form-item .form-item {
  margin-bottom: calc(var(--unit) * 0.75 * 0.5);
}

.mattarello-map--region-label {
  transform: translateX(0%) translateY(-50%);
  font-size: 1rem;
  background: var(--color-white);
  padding: 0.5em;
  color: var(--color-black);
  border: 1px solid var(--color-black);
}

/* objects */
/* general purpose formatting for blocks */
.padded,
.pad,
.cke_editable {
  padding: var(--unit);
}

.padded-half,
.pad-half {
  padding: calc(var(--unit) * 0.5);
}

.padded-double,
.pad-2 {
  padding: calc(var(--unit) * 2);
}

.padded-triple,
.pad-3 {
  padding: calc(var(--unit) * 3);
}

.v-padded,
.pad-v {
  padding-top: var(--unit);
  padding-bottom: var(--unit);
}

.v-padded-half,
.pad-vh,
.pad-v-half {
  padding-top: calc(var(--unit) * 0.5);
  padding-bottom: calc(var(--unit) * 0.5);
}

.v-padded-double,
.pad-v2 {
  padding-top: calc(var(--unit) * 2);
  padding-bottom: calc(var(--unit) * 2);
}

.v-padded-triple,
.pad-v3 {
  padding-top: calc(var(--unit) * 3);
  padding-bottom: calc(var(--unit) * 3);
}

.h-padded,
.pad-h {
  padding-left: var(--unit);
  padding-right: var(--unit);
}

.h-padded-half,
.pad-hh {
  padding-left: calc(var(--unit) * 0.5);
  padding-right: calc(var(--unit) * 0.5);
}

.h-padded-double,
.pad-h2 {
  padding-left: calc(var(--unit) * 2);
  padding-right: calc(var(--unit) * 2);
}

.h-padded-triple,
.pad-h3 {
  padding-left: calc(var(--unit) * 3);
  padding-right: calc(var(--unit) * 3);
}

/* single paddings and margins */
.pad-t {
  padding-top: var(--unit);
}

.pad-b {
  padding-bottom: var(--unit);
}

.pad-r {
  padding-right: var(--unit);
}

.pad-l {
  padding-left: var(--unit);
}

.pad-t2 {
  padding-top: calc(var(--unit) * 2);
}

.pad-b2 {
  padding-bottom: calc(var(--unit) * 2);
}

.pad-r2 {
  padding-right: calc(var(--unit) * 2);
}

.pad-l2 {
  padding-left: calc(var(--unit) * 2);
}

.pad-t3 {
  padding-top: calc(var(--unit) * 3);
}

.pad-b3 {
  padding-bottom: calc(var(--unit) * 3);
}

.pad-r3 {
  padding-right: calc(var(--unit) * 3);
}

.pad-l3 {
  padding-left: calc(var(--unit) * 3);
}

.pad-th {
  padding-top: calc(var(--unit) * 0.5);
}

.pad-bh {
  padding-bottom: calc(var(--unit) * 0.5);
}

.pad-rh {
  padding-right: calc(var(--unit) * 0.5);
}

.pad-lh {
  padding-left: calc(var(--unit) * 0.5);
}

.mar-t {
  margin-top: var(--unit);
}

.mar-b {
  margin-bottom: var(--unit);
}

.mar-r {
  margin-right: var(--unit);
}

.mar-l {
  margin-left: var(--unit);
}

.mar-t2 {
  margin-top: calc(var(--unit) * 2);
}

.mar-b2 {
  margin-bottom: calc(var(--unit) * 2);
}

.mar-r2 {
  margin-right: calc(var(--unit) * 2);
}

.mar-l2 {
  margin-left: calc(var(--unit) * 2);
}

.mar-t3 {
  margin-top: calc(var(--unit) * 3);
}

.mar-b3 {
  margin-bottom: calc(var(--unit) * 3);
}

.mar-r3 {
  margin-right: calc(var(--unit) * 3);
}

.mar-l3 {
  margin-left: calc(var(--unit) * 3);
}

.mar-th {
  margin-top: calc(var(--unit) * 0.5);
}

.mar-bh {
  margin-bottom: calc(var(--unit) * 0.5);
}

.mar-rh {
  margin-right: calc(var(--unit) * 0.5);
}

.mar-lh {
  margin-left: calc(var(--unit) * 0.5);
}

.rounded {
  border-radius: calc(var(--unit) * 0.5);
}

.filled {
  background: #F3F2EE;
  /* if padding a row, compensate column padding
  * on outmost columns
  */
}
.filled .filled {
  background: var(--color-white);
  color: var(--color-text);
}
.filled.row {
  padding-top: var(--unit);
}

.filled-light {
  background: #F3F2EE;
}

/* 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.7);
}

.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-infographic .infographic--body, .component-type--pzt-infographic .align-center .infographic--body,
.align-center .component-type--infographic .infographic--body,
.component-type--infographic .align-center .infographic--body, .align-center .cke_editable {
  margin-left: auto;
  margin-right: auto;
}

.negative,
.negative *:not(.filled, .filled-light) {
  color: var(--color-white);
}
.negative .action, .negative dialog#contact-form-dialog[open] form button, dialog#contact-form-dialog[open] form .negative button, .negative input[type=submit] {
  background: var(--color-white);
  color: var(--color-text);
}
.negative .action:hover, .negative dialog#contact-form-dialog[open] form button:hover, dialog#contact-form-dialog[open] form .negative button:hover, .negative input[type=submit]:hover {
  background: var(--color-white);
  color: var(--color-primary);
}
.negative .filled,
.negative .filled-light {
  color: inherit;
}

.as-bg, .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 .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, .actions-menu ul li span {
  position: absolute !important;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  width: 1px;
  height: 1px;
  word-wrap: normal;
}

.visually-hidden.focusable:active, .actions-menu ul li span.focusable:active,
.visually-hidden.focusable:focus,
.actions-menu ul li span.focusable:focus {
  position: static !important;
  overflow: visible;
  clip: auto;
  width: auto;
  height: auto;
}

.invisible {
  visibility: hidden;
}

.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-infographic .infographic--body, .component-type--pzt-infographic .bg-overlay .infographic--body,
.bg-overlay .component-type--infographic .infographic--body,
.component-type--infographic .bg-overlay .infographic--body, .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;
}

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

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

.bg-alignment--top-left .component--bg {
  background-position: top left;
}

.bg-alignment--top-center .component--bg {
  background-position: top center;
}

.bg-alignment--top-right .component--bg {
  background-position: top right;
}

.bg-alignment--center-left .component--bg {
  background-position: center left;
}

.bg-alignment--center-center .component--bg {
  background-position: center center;
}

.bg-alignment--center-right .component--bg {
  background-position: center right;
}

.bg-alignment--bottom-left .component--bg {
  background-position: bottom left;
}

.bg-alignment--bottom-center .component--bg {
  background-position: bottom center;
}

.bg-alignment--bottom-right .component--bg {
  background-position: bottom right;
}

* {
  box-sizing: border-box;
}

html {
  font-size: var(--font-size--m);
}

body {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  letter-spacing: 0;
  background-color: var(--color-body-bg);
  color: var(--color-text);
  line-height: var(--text-line-height);
}

a {
  color: var(--color-link);
  -webkit-text-decoration: var(--color-link-decoration);
          text-decoration: var(--color-link-decoration);
}
a.break {
  word-break: break-word;
}

abbr {
  cursor: help;
}

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

blockquote {
  font-family: "Lato", sans-serif;
  font-weight: normal;
  letter-spacing: 0;
  display: block;
  position: relative;
  padding: calc(var(--unit) * 2) 0 calc(var(--unit) * 2) calc(var(--unit) * 2);
}
blockquote strong {
  display: block;
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-style: normal;
}
blockquote:before {
  content: "”";
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: 4em;
  float: left;
  line-height: 0.5em;
  position: relative;
  top: 0.2em;
  left: -0.2em;
}

img:not(.align-left, .align-right, .align-center, .visually-hidden),
svg:not(.align-left, .align-right, .align-center, .visually-hidden) {
  width: 100%;
  height: auto;
}

ul.no-bullets {
  list-style: none;
  padding-left: 0;
}
ul.no-bullets li {
  padding-left: 0;
}

/* system admin, unpublished and messages */
.user-logged-in nav.tabs {
  position: fixed;
  bottom: 10px;
  left: 10px;
  background: rgba(255, 255, 255, 0.8);
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  font-size: var(--font-size--s);
  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;
}

.contextual {
  z-index: 1390 !important;
}

ul.contextual-links li {
  padding-left: 0 !important;
}
ul.contextual-links li:before {
  display: none !important;
}

.node--unpublished {
  position: relative;
}
.node--unpublished:before {
  content: "non pubblicato";
  text-transform: uppercase;
  opacity: 0.3;
  background: rgba(253, 185, 50, 0.5607843137);
  pointer-events: none;
  position: absolute;
  top: 10%;
  left: 50%;
  padding: calc(var(--unit) * 0.5);
  font-size: var(--font-size--s);
  transform: translateX(-50%) rotate(-5deg);
  z-index: 99999;
  transform-origin: 50% 50%;
  white-space: nowrap;
}
.node--unpublished.view-mode--full:before {
  font-size: 9vw;
  padding: calc(var(--unit) * 2);
}

.component.unpublished {
  border: 1px dotted #ddd;
}
.component.unpublished .unpublished--label {
  text-transform: uppercase;
  position: absolute;
  font-size: var(--unit);
  font-weight: 500;
  top: 0;
  right: 0;
  z-index: 99;
  background: rgba(253, 185, 50, 0.5607843137);
  padding: 5px;
  pointer-events: none;
}
.component.unpublished .component--content {
  opacity: 0.6;
}

.paragraph--unpublished {
  background-color: red;
}

.messages,
*[data-drupal-messages] > * {
  padding: calc(var(--unit) * 2);
  border-radius: 0;
  background: #F3F2EE;
  position: relative;
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 400;
  font-size: var(--font-size--s);
  word-wrap: break-word;
  overflow-wrap: break-word;
  color: var(--color-white);
}
.messages pre,
*[data-drupal-messages] > * pre {
  word-wrap: break-word;
  overflow-wrap: break-word;
  white-space: break-spaces;
}
.messages a,
*[data-drupal-messages] > * a {
  color: var(--color-white);
}
.messages.messages--error,
*[data-drupal-messages] > *.messages--error {
  background-color: #DA291C;
}
.messages.messages--success,
*[data-drupal-messages] > *.messages--success {
  background-color: #45b383;
}
.messages.messages--warning,
*[data-drupal-messages] > *.messages--warning {
  background-color: #FC4C02;
}
.messages .info,
*[data-drupal-messages] > * .info {
  color: var(--color-black);
}
.messages ul,
*[data-drupal-messages] > * ul {
  padding-left: 1em;
  line-height: var(--text-line-height);
}
.messages li,
*[data-drupal-messages] > * li {
  list-style-type: decimal;
  padding-left: 1em;
  padding-bottom: 0.5em;
}
.messages:after,
*[data-drupal-messages] > *:after {
  position: absolute;
  left: 50%;
  bottom: -20px;
  margin-left: -20px;
  width: 0;
  height: 0;
  content: "";
  border-opposite-position(bottom): 20px solid #F3F2EE;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
}
.messages.modal,
*[data-drupal-messages] > *.modal {
  background: none;
}
.messages.modal:after,
*[data-drupal-messages] > *.modal:after {
  display: none;
}
.messages pre,
*[data-drupal-messages] > * pre {
  font-family: "Courier New", monospace;
  letter-spacing: 0;
}

.messages-close {
  cursor: pointer;
  z-index: 90210;
  width: 32px;
  height: 24px;
  position: absolute;
  top: calc(var(--unit) * 2);
  right: calc(var(--unit) * 2);
}
.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:before, .messages-close:after {
  position: absolute;
  left: 8px;
  content: " ";
  height: 24px;
  width: 3px;
  background-color: var(--color-white);
}
.messages-close:before {
  transform: rotate(45deg);
}
.messages-close:after {
  transform: rotate(-45deg);
}

:root {
  /* font-size */
  --font-size--xs: 0.6rem;
  --font-size--s: 0.75rem;
  --font-size-thin: 0.875rem;
  --font-size--l: 1.2rem;
  --font-size--xl: 1.8rem;
  --font-size--xxl: 2.3rem;
  --font-size--xxxl: 2.7rem;
}

.component.component-type--text.position--page-width .component--content {
  max-width: 1200px;
}
.component.component-type--text > .component--content,
.component.component-type--text > .component--title,
.component.component-type--text > .component--content > .component--title {
  margin-right: auto;
  margin-left: 0;
}
.component.component-type--text.text-align-center {
  text-align: center;
}
.component.component-type--text.text-align-center .component--content .component--title {
  margin-left: auto;
  margin-right: auto;
}
.component.component-type--text.text-align-center .component--content .text-container, .component.component-type--text.text-align-center .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .component.component-type--text.text-align-center .component--content .infographic--body,
.component.component-type--text.text-align-center .component--content .component-type--infographic .infographic--body,
.component-type--infographic .component.component-type--text.text-align-center .component--content .infographic--body, .component.component-type--text.text-align-center .component--content .cke_editable {
  margin: 0 auto;
}
.component.component-type--text.text-align-right {
  text-align: right;
}
.component.component-type--text.text-align-right .component--content .component--title {
  margin-left: auto;
  margin-right: 0;
}
.component.component-type--text.text-align-right .component--content .text-container, .component.component-type--text.text-align-right .component--content .component-type--pzt-infographic .infographic--body, .component-type--pzt-infographic .component.component-type--text.text-align-right .component--content .infographic--body,
.component.component-type--text.text-align-right .component--content .component-type--infographic .infographic--body,
.component-type--infographic .component.component-type--text.text-align-right .component--content .infographic--body, .component.component-type--text.text-align-right .component--content .cke_editable {
  margin-left: auto;
  margin-right: 0;
}

.text-container, .component-type--pzt-infographic .infographic--body,
.component-type--infographic .infographic--body, .cke_editable {
  --color-link: var(--color-primary);
  --color-link-decoration: underline;
}
@media only screen and (max-width: 767px) {
  .text-container *, .component-type--pzt-infographic .infographic--body *,
  .component-type--infographic .infographic--body *, .cke_editable * {
    word-break: break-word;
  }
}

.component-type--figure img {
  display: block;
  width: 100%;
  height: auto;
}
.component-type--figure figcaption {
  font-size: var(--font-size--s);
}
.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 .component--title {
  position: absolute;
}
.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%;
  height: 100vh;
}
.component-type--figure.position--full-screen .component--content figure {
  display: flex;
  align-items: center;
  justify-content: center;
}
.component-type--figure.position--full-screen .component--content figcaption {
  color: var(--color-white);
  z-index: 42;
  font-size: clamp(1.8rem, 3vw, 4rem);
  padding: var(--unit);
  text-align: left;
  color: var(--color-white);
  font-weight: 700;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  max-width: 45rem;
  position: relative;
}

.component-type--landing-page--header,
.component-type--sub-page--header {
  min-height: 37.5vw;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(2.5rem, 1fr) 75rem minmax(2.5rem, 1fr);
}
@media only screen and (max-width: 80rem) {
  .component-type--landing-page--header,
  .component-type--sub-page--header {
    grid-template-columns: 1.25rem 1fr 1.25rem;
  }
}
.component-type--landing-page--header > .component--content,
.component-type--sub-page--header > .component--content {
  max-width: none;
}
.component-type--landing-page--header .component--type-breadcrumbs a,
.component-type--sub-page--header .component--type-breadcrumbs a {
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
  color: var(--color-white);
}
.component-type--landing-page--header h1,
.component-type--sub-page--header h1 {
  grid-column: 2;
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  font-size: 5vmax;
  color: var(--color-white);
  position: relative;
  letter-spacing: -0.04em;
  text-transform: none;
  line-height: 1.3;
  padding-bottom: calc(var(--unit) * 2);
}
.component-type--landing-page--header h1 small,
.component-type--sub-page--header h1 small {
  display: block;
  font-size: 0.5em;
  letter-spacing: 0;
}
.component-type--landing-page--header h1 svg,
.component-type--sub-page--header h1 svg {
  display: inline;
  height: 0.5em;
  width: 0.5em;
  fill: var(--color-white);
}
.component-type--landing-page--header.no-background,
.component-type--sub-page--header.no-background {
  min-height: auto;
}
.component-type--landing-page--header.no-background .bottom-landing-page-mask,
.component-type--sub-page--header.no-background .bottom-landing-page-mask {
  background: transparent;
}
.component-type--landing-page--header.no-background .component--type-breadcrumbs a,
.component-type--sub-page--header.no-background .component--type-breadcrumbs a {
  text-shadow: none;
  color: var(--color-black);
}
.component-type--landing-page--header.no-background .content,
.component-type--sub-page--header.no-background .content {
  max-width: 1200px;
}
.component-type--landing-page--header.no-background h1,
.component-type--sub-page--header.no-background h1 {
  text-shadow: none;
  color: #DA291C;
  padding-bottom: var(--unit);
}
.component-type--landing-page--header .component--type-breadcrumbs,
.component-type--sub-page--header .component--type-breadcrumbs {
  padding-left: 0;
}

.component-type--sub-page--header {
  min-height: 0;
}
.component-type--sub-page--header h1 {
  font-size: var(--font-size--xxl);
}

.field--field-downloads .field__label,
.field--field-download .field__label,
.field--field-media-document .field__label,
.component-type--downloads .field__label {
  font-weight: 700;
  margin-bottom: calc(var(--unit) * 0.5);
  font-size: var(--font-size--xxl);
}
@media only screen and (max-width: 767px) {
  .field--field-downloads .field__label,
  .field--field-download .field__label,
  .field--field-media-document .field__label,
  .component-type--downloads .field__label {
    font-size: calc(var(--font-size--xxl) * 0.8);
  }
}
.field--field-downloads a,
.field--field-download a,
.field--field-media-document a,
.component-type--downloads a {
  padding: calc(var(--unit) * 0.5);
  background: var(--color-light-grey);
  border-radius: 10px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: var(--unit);
  margin-bottom: var(--unit);
}
@media only screen and (max-width: 767px) {
  .field--field-downloads a,
  .field--field-download a,
  .field--field-media-document a,
  .component-type--downloads a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}
.field--field-downloads a:last-child,
.field--field-download a:last-child,
.field--field-media-document a:last-child,
.component-type--downloads a:last-child {
  margin-bottom: 0;
}
.field--field-downloads .document--icon,
.field--field-download .document--icon,
.field--field-media-document .document--icon,
.component-type--downloads .document--icon {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.field--field-downloads .document--icon .document--mime-type,
.field--field-download .document--icon .document--mime-type,
.field--field-media-document .document--icon .document--mime-type,
.component-type--downloads .document--icon .document--mime-type {
  font-size: var(--font-size--m);
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}
.field--field-downloads .document--icon .document--file-size,
.field--field-download .document--icon .document--file-size,
.field--field-media-document .document--icon .document--file-size,
.component-type--downloads .document--icon .document--file-size {
  font-size: var(--font-size--xs);
}
.field--field-downloads .document--label,
.field--field-download .document--label,
.field--field-media-document .document--label,
.component-type--downloads .document--label {
  font-weight: 700;
}
.field--field-downloads .field--field-media-document,
.field--field-download .field--field-media-document,
.field--field-media-document .field--field-media-document,
.component-type--downloads .field--field-media-document {
  margin-bottom: var(--unit);
}
.field--field-downloads li,
.field--field-download li,
.field--field-media-document li,
.component-type--downloads li {
  padding-bottom: calc(var(--unit) * 0.5);
}

.field--field-media-document {
  margin-bottom: var(--unit);
}

.component-type--pzt-links .component--title,
.component-type--links .component--title {
  margin-bottom: calc(var(--unit) * 0.5);
}
.component-type--pzt-links li .link,
.component-type--links li .link {
  display: flex;
  align-items: center;
}
.component-type--pzt-links li .link.external::after,
.component-type--links li .link.external::after {
  content: "";
  background-size: contain;
  width: calc(var(--unit) * 0.6);
  height: calc(var(--unit) * 0.7);
  position: relative;
  top: 0%;
  left: 0%;
  display: inline-block;
  background-image: url("../img/icons/external-link.svg");
  background-repeat: no-repeat;
  background-position: center;
  margin-left: calc(var(--unit) * 0.3);
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-links li .link.external::after,
  .component-type--links li .link.external::after {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-links li a,
  .component-type--links li a {
    word-break: break-word;
  }
}

.component-type--pzt-infographic,
.component-type--infographic {
  margin-bottom: var(--unit);
}
.component-type--pzt-infographic .component--content,
.component-type--infographic .component--content {
  max-width: none;
}
.component-type--pzt-infographic table,
.component-type--infographic table {
  display: block;
}
.component-type--pzt-infographic table tbody,
.component-type--infographic table tbody {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15em, 1fr));
  gap: var(--unit);
  align-items: start;
}
.component-type--pzt-infographic table tr,
.component-type--infographic table tr {
  display: flex;
  flex-direction: column;
  border-top: 5px solid #F3F2EE;
  padding: calc(var(--unit) / 2) 0 var(--unit) 0;
}
.component-type--pzt-infographic .infographic--metric,
.component-type--infographic .infographic--metric {
  order: 1;
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
  line-height: 1.3;
  text-align: left;
}
.component-type--pzt-infographic .infographic--value,
.component-type--infographic .infographic--value {
  font-size: var(--font-size--xxl);
  order: 0;
  color: #DA291C;
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0;
}
.component-type--pzt-infographic .infographic--value .value,
.component-type--infographic .infographic--value .value {
  display: inline-block;
}
.component-type--pzt-infographic .infographic--value .unit,
.component-type--infographic .infographic--value .unit {
  display: inline-block;
}
.component-type--pzt-infographic .infographic--body,
.component-type--infographic .infographic--body {
  order: 2;
  font-size: 1rem;
}

.component-type--pzt-gallery,
.component-type--gallery {
  margin-top: var(--unit);
  margin-bottom: calc(var(--unit) * 2);
  z-index: 9000;
}
.component-type--pzt-gallery .component--content,
.component-type--gallery .component--content {
  padding: 0;
  grid-column: 2;
  max-width: none;
}
.component-type--pzt-gallery .component--content--gallery.up-auto, .component-type--pzt-gallery .component--content--gallery:not([class^=up-]),
.component-type--gallery .component--content--gallery.up-auto,
.component-type--gallery .component--content--gallery:not([class^=up-]) {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  gap: calc(var(--unit) / 2);
  justify-content: flex-start;
}
.component-type--pzt-gallery .component--content--gallery.up-1, .component-type--pzt-gallery .component--content--gallery.up-2, .component-type--pzt-gallery .component--content--gallery.up-3, .component-type--pzt-gallery .component--content--gallery.up-4, .component-type--pzt-gallery .component--content--gallery.up-5,
.component-type--gallery .component--content--gallery.up-1,
.component-type--gallery .component--content--gallery.up-2,
.component-type--gallery .component--content--gallery.up-3,
.component-type--gallery .component--content--gallery.up-4,
.component-type--gallery .component--content--gallery.up-5 {
  display: grid;
  gap: calc(var(--unit) * 0.5);
}
.component-type--pzt-gallery .component--content--gallery.up-1 img, .component-type--pzt-gallery .component--content--gallery.up-2 img, .component-type--pzt-gallery .component--content--gallery.up-3 img, .component-type--pzt-gallery .component--content--gallery.up-4 img, .component-type--pzt-gallery .component--content--gallery.up-5 img,
.component-type--gallery .component--content--gallery.up-1 img,
.component-type--gallery .component--content--gallery.up-2 img,
.component-type--gallery .component--content--gallery.up-3 img,
.component-type--gallery .component--content--gallery.up-4 img,
.component-type--gallery .component--content--gallery.up-5 img {
  max-height: -moz-max-content;
  max-height: max-content;
  width: 100%;
}
.component-type--pzt-gallery .component--content--gallery.up-1,
.component-type--gallery .component--content--gallery.up-1 {
  grid-template-columns: 1fr;
}
.component-type--pzt-gallery .component--content--gallery.up-2,
.component-type--gallery .component--content--gallery.up-2 {
  grid-template-columns: repeat(2, 1fr);
}
.component-type--pzt-gallery .component--content--gallery.up-3,
.component-type--gallery .component--content--gallery.up-3 {
  grid-template-columns: repeat(3, 1fr);
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-gallery .component--content--gallery.up-3,
  .component-type--gallery .component--content--gallery.up-3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.component-type--pzt-gallery .component--content--gallery.up-4,
.component-type--gallery .component--content--gallery.up-4 {
  grid-template-columns: repeat(4, 1fr);
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-gallery .component--content--gallery.up-4,
  .component-type--gallery .component--content--gallery.up-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.component-type--pzt-gallery .component--content--gallery.up-5,
.component-type--gallery .component--content--gallery.up-5 {
  grid-template-columns: repeat(5, 1fr);
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-gallery .component--content--gallery.up-5,
  .component-type--gallery .component--content--gallery.up-5 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.component-type--pzt-gallery .component--content--gallery img,
.component-type--gallery .component--content--gallery img {
  display: block;
  max-height: clamp(130px, 15vw, 300px);
  height: auto;
  width: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.component-type--pzt-gallery .component--content--gallery img.processed--lightbox:hover,
.component-type--gallery .component--content--gallery img.processed--lightbox:hover {
  cursor: hand;
  cursor: pointer;
}
.component-type--pzt-gallery .component--content--gallery .pizzetta-gallery--lightbox,
.component-type--gallery .component--content--gallery .pizzetta-gallery--lightbox {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(34, 34, 34, 0.7);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: calc(var(--unit) * 2);
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
.component-type--pzt-gallery .component--content--gallery .pizzetta-gallery--lightbox.show,
.component-type--gallery .component--content--gallery .pizzetta-gallery--lightbox.show {
  opacity: 1;
}
.component-type--pzt-gallery .component--content--gallery .pizzetta-gallery--lightbox img,
.component-type--gallery .component--content--gallery .pizzetta-gallery--lightbox img {
  display: block;
  max-height: 70vh;
  width: auto;
}
.component-type--pzt-gallery figcaption,
.component-type--gallery figcaption {
  font-size: var(--font-size--s);
  flex: 1 1 100%;
}
.component-type--pzt-gallery.position--full-bleed-left figcaption,
.component-type--gallery.position--full-bleed-left figcaption {
  text-align: right;
}
.component-type--pzt-gallery.position--full-bleed figcaption,
.component-type--gallery.position--full-bleed figcaption {
  text-align: center;
}
.component-type--pzt-gallery.position--full-screen .component--content,
.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--pzt-gallery.position--full-screen .component--content img,
.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--pzt-gallery.position--full-screen .component--content figcaption,
.component-type--gallery.position--full-screen .component--content figcaption {
  color: var(--color-white);
  z-index: 42;
  font-size: 4vw;
  padding: var(--unit);
  text-align: left;
  color: var(--color-white);
  font-weight: 700;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  max-width: 45rem;
}

.component-type--layout.component--layout--two-columns > .component--content,
.component-type--layout .component--content.component--layout--two-columns {
  grid-column: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.component-type--layout.component--layout--two-columns > .component--content > .component--content--column > .component,
.component-type--layout .component--content.component--layout--two-columns > .component--content--column > .component {
  display: block;
}
@media only screen and (max-width: 1023px) {
  .component-type--layout.component--layout--two-columns > .component--content,
  .component-type--layout .component--content.component--layout--two-columns {
    display: block;
  }
}

.component-type--cards-list {
  overflow: visible;
}
.component-type--cards-list .component--content {
  overflow: visible;
}
.component-type--cards-list .flex {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
  gap: 1.5rem;
}
.component-type--cards-list .grid {
  display: grid;
  position: relative;
  gap: var(--unit) var(--unit);
  align-items: start;
}
.component-type--cards-list .actions {
  padding-top: var(--unit);
  text-align: right;
}
.component-type--cards-list .up-2 {
  grid-template-columns: 1fr 1fr;
}
.component-type--cards-list .up-3 {
  grid-template-columns: repeat(3, 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(15rem, 1fr));
}
.component-type--cards-list .items-count-1,
.component-type--cards-list .items-count-2 {
  grid-template-columns: repeat(auto-fit, minmax(15rem, 25rem));
}
@media only screen and (max-width: 1023px) {
  .component-type--cards-list .up-4 {
    grid-template-columns: repeat(3, 1fr);
  }
  .component-type--cards-list .up-5 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media only screen and (max-width: 767px) {
  .component-type--cards-list .up-2 {
    grid-template-columns: 1fr;
  }
  .component-type--cards-list .up-3 {
    grid-template-columns: repeat(2, 1fr);
  }
  .component-type--cards-list .up-4 {
    grid-template-columns: repeat(2, 1fr);
  }
  .component-type--cards-list .up-5 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 430px) {
  .component-type--cards-list .up-2 {
    grid-template-columns: 1fr;
  }
  .component-type--cards-list .up-3 {
    grid-template-columns: 1fr;
  }
  .component-type--cards-list .up-4 {
    grid-template-columns: 1fr;
  }
  .component-type--cards-list .up-5 {
    grid-template-columns: 1fr;
  }
}
.component-type--cards-list .up-masonry {
  display: block;
  -moz-column-count: 3;
       column-count: 3;
  -moz-column-gap: var(--unit);
       column-gap: var(--unit);
}
.component-type--cards-list .up-masonry > * {
  margin-bottom: var(--unit);
}
@media only screen and (max-width: 1023px) {
  .component-type--cards-list .up-masonry {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  }
  .component-type--cards-list .up-masonry.items-count-1, .component-type--cards-list .up-masonry.items-count-2 {
    grid-template-columns: repeat(auto-fit, minmax(15rem, 25rem));
  }
}

.vertical-cards-container article {
  margin-bottom: var(--unit);
  min-height: 250px;
}
.vertical-cards-container article h3 {
  font-size: 1.5rem;
}

.horizontal-cards-container,
.vertical-cards-container {
  gap: var(--unit);
}
.horizontal-cards-container article,
.vertical-cards-container article {
  border-radius: var(--unit);
  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 .card .article--tags {
  display: none;
}

.card {
  position: relative;
  background: var(--color-light-grey);
  padding: calc(var(--unit) * 0.5);
}
.card .card--main-link::after {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: "";
  z-index: 1;
}
.card .card--secondary-link {
  position: relative;
  z-index: 4;
}
.card figure {
  padding-bottom: 66%;
  display: block;
  position: relative;
  margin-bottom: calc(var(--unit) * 0.5);
}
.card figure img {
  width: 100%;
  height: auto;
  display: block;
}

.video-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 56.25%;
}
.video-container > *:not(.contextual) {
  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%);
}

button {
  -webkit-appearance: none;
  border: none;
  padding: 0;
  margin: 0;
}

.action, dialog#contact-form-dialog[open] form button, input[type=submit],
a.action {
  text-align: center;
  background: var(--color-primary);
  padding: calc(var(--unit) / 3) calc(var(--unit) / 2);
  color: var(--color-white);
  display: inline-block;
  text-transform: uppercase;
  text-decoration: none;
  border: none;
  position: relative;
  text-decoration: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  cursor: hand;
  cursor: pointer;
  border-radius: calc(var(--unit) * 0.5);
}
.action + .action, dialog#contact-form-dialog[open] form button + .action, dialog#contact-form-dialog[open] form .action + button, dialog#contact-form-dialog[open] form button + button, input[type=submit] + .action, dialog#contact-form-dialog[open] form input[type=submit] + button, .action + input[type=submit], dialog#contact-form-dialog[open] form button + input[type=submit], input[type=submit] + input[type=submit],
a.action + .action {
  margin-left: var(--unit);
}
.action.tiny, dialog#contact-form-dialog[open] form button.tiny, input.tiny[type=submit],
a.action.tiny {
  font-size: var(--font-size--xs);
}
.action.small, dialog#contact-form-dialog[open] form button.small, input.small[type=submit],
a.action.small {
  font-size: var(--font-size--s);
}
.action.big, dialog#contact-form-dialog[open] form button.big, input.big[type=submit],
a.action.big {
  font-size: var(--font-size--l);
}
.action.light, dialog#contact-form-dialog[open] form button.action, dialog#contact-form-dialog[open] form button.light, dialog#contact-form-dialog[open] form button, input.light[type=submit],
a.action.light {
  background: transparent;
  color: var(--color-primary);
  border: 1px solid var(--color-primary);
}
.action.light:hover, dialog#contact-form-dialog[open] form button:hover, input.light[type=submit]:hover,
a.action.light:hover {
  color: var(--color-white);
  background: var(--color-black);
}
.action.negative, dialog#contact-form-dialog[open] form button.negative, input.negative[type=submit],
a.action.negative {
  background: var(--color-white);
  color: var(--color-primary);
}
.action.negative.light, dialog#contact-form-dialog[open] form button.negative, input.negative.light[type=submit],
a.action.negative.light {
  color: var(--color-white);
  background: transparent;
  border: 1px solid var(--color-white);
}

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

.pager {
  display: block;
  width: 100%;
  padding-bottom: calc(var(--unit) * 2);
  margin-top: calc(var(--unit) * 2);
  text-align: center;
}
.pager li {
  display: inline-block;
  margin: 0 2px;
  font-weight: 500;
  font-size: var(--font-size--l);
}
.pager li.is-active {
  padding: 2px 7px;
}
.pager li.is-active a {
  background: var(--color-primary);
  color: var(--color-white);
}
.pager li a {
  display: block;
  padding: 2px 7px;
  text-decoration: none;
  color: var(--color-black);
}
.pager li a:hover {
  background: var(--color-primary);
  color: var(--color-white);
}

.page-header {
  background: var(--color-primary);
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--unit) * 0.5);
  padding: calc(var(--unit) * 0.5);
}
.page-header a {
  display: flex;
}
.page-header img {
  width: 9rem;
}
.page-header h1 {
  color: var(--color-white);
  font-size: var(--font-size--l);
  text-align: right;
  text-transform: uppercase;
  margin: 0;
}

.language-switcher {
  background: #D1CCBD;
  padding: calc(var(--unit) * 0.4) 0 calc(var(--unit) * 0.4) calc(var(--unit) * 0.4);
  position: relative;
  z-index: 1;
}
.language-switcher::after {
  content: "";
  top: 0;
  right: 0;
  width: 5rem;
  bottom: 0;
  position: absolute;
  display: block;
  z-index: 2;
  background: linear-gradient(270deg, rgb(209, 204, 189) 0%, rgb(209, 204, 189) 50%, rgba(209, 204, 189, 0) 100%);
  background-size: cover;
  pointer-events: none;
}
.language-switcher::before {
  content: "";
  top: 0;
  right: 0;
  width: 2.5rem;
  bottom: 0;
  position: absolute;
  display: block;
  z-index: 4;
  background: url("../img/ui/003-horizontal.svg");
  background-size: 90%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  pointer-events: none;
}
.language-switcher ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: calc(var(--unit) * 0.5);
  overflow: auto;
  padding: 0.5em 0;
}
.language-switcher ul li {
  display: block;
}
.language-switcher ul li:last-child {
  margin-right: 5rem;
}
.language-switcher ul li a {
  display: block;
  padding: calc(var(--unit) * 0.2);
  background: var(--color-white);
  border-radius: calc(var(--unit) * 0.2);
  text-transform: uppercase;
  font-size: var(--font-size--s);
  font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
}
.language-switcher ul li a.is-active {
  background: var(--color-primary);
  color: var(--color-white);
}

.actions-menu--wrapper .component--content {
  z-index: unset;
}

.actions-menu {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9001;
  background: #45b383;
}
.actions-menu ul {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}
.actions-menu ul li {
  display: block;
  flex-grow: 1;
  position: relative;
}
.actions-menu ul li:not(:last-child)::after {
  position: absolute;
  content: "";
  right: 0;
  top: 5px;
  bottom: 5px;
  border-right: 1px solid rgba(255, 255, 255, 0.7);
}
.actions-menu ul li button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
  background: none;
  font: inherit;
  width: 100%;
}
.actions-menu ul li a,
.actions-menu ul li button {
  display: flex;
  flex-direction: column;
  text-align: center;
}
.actions-menu ul li a, .actions-menu ul li.action--lines-closed,
.actions-menu ul li button {
  padding: 0.5rem;
  display: flex;
  gap: 0.5rem;
  align-items: center;
  color: var(--color-white);
  height: 100%;
  justify-content: flex-start;
  font-size: var(--font-size--s);
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
.actions-menu ul li a:before, .actions-menu ul li.action--lines-closed:before,
.actions-menu ul li button:before {
  content: "";
  display: inline-block;
  height: 1.5rem;
  width: 1.5rem;
  background-size: contain;
  background-repeat: no-repeat;
}
.actions-menu ul li.action--lines-closed {
  display: none;
  font-size: var(--font-size--s);
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}
.actions-menu ul li.action--lines-closed:before {
  display: none;
}
.actions-menu ul li.action--call a:before, .actions-menu ul li.action--call--lycamobile a:before {
  background-image: url(../img/ui/004-phone-out.svg);
}
.actions-menu ul li.action--call-me button {
  cursor: pointer;
}
.actions-menu ul li.action--call-me button:before {
  background-image: url(../img/ui/007-phone-call-white.svg);
}
.phone-unavailable .actions-menu ul li.action--call, .phone-unavailable .actions-menu ul li.action--call--lycamobile {
  display: none;
}
.phone-unavailable .actions-menu ul li.action--lines-closed {
  display: block;
}
.actions-menu ul li.action--email a:before {
  background-image: url(../img/ui/002-email.svg);
}

@media only screen and (min-width: 767px) {
  .actions-menu ul li a,
  .actions-menu ul li button {
    flex-direction: row;
    text-align: center;
    justify-content: center;
    font-size: var(--font-size--m);
    padding: 1em;
    height: auto;
  }
  .actions-menu ul li span {
    all: unset;
    position: relative !important;
    color: var(--color-white);
    text-align: center;
    font-family: "Oswald", "Helvetica Condensed", "Arial Narrow", "Helvetica", sans-serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0;
    display: inline-block;
    padding: 0.5em;
    border: 1px dashed var(--color-white);
    border-radius: 0.5em;
  }
}
main {
  padding: calc(var(--unit) / 2);
  margin-bottom: calc(var(--unit));
}

section {
  margin-bottom: calc(var(--unit) * 2);
}

html[dir=rtl] .language-switcher::after {
  right: unset;
  left: 0;
  background: linear-gradient(90deg, rgb(209, 204, 189) 0%, rgb(209, 204, 189) 50%, rgba(209, 204, 189, 0) 100%);
}
html[dir=rtl] .language-switcher::before {
  right: unset;
  left: 0;
}
html[dir=rtl] .language-switcher ul li:first-child {
  margin-right: calc(var(--unit) * 0.5);
}
html[dir=rtl] .language-switcher ul li:last-child {
  margin-left: 5rem;
  margin-right: 0;
}
html[dir=rtl] .actions-menu ul li:not(:last-child)::after {
  left: 0;
  right: unset;
}
html[dir=rtl] .page-header a {
  order: 1;
  justify-content: flex-end;
}

.page-footer {
  color: var(--color-white);
  background-color: #474446;
  text-align: center;
  padding: 1em 1em 6em 1em;
}
.page-footer a {
  color: var(--color-white);
}
.page-footer img {
  display: block;
  width: 12rem;
  margin: 0 auto 1em auto;
}

.ui-banner.card {
  padding: 0;
  background: transparent;
  display: grid;
  grid-template-columns: 2fr 4fr;
  gap: calc(var(--unit) / 2);
  margin-bottom: var(--unit);
}
.ui-banner.card figure {
  padding-bottom: 0;
}
.ui-banner.card figure img {
  position: relative;
}

.location .section-intro {
  padding-bottom: var(--unit);
}
.location .section-intro strong {
  color: var(--color-primary);
  font-weight: 700;
}
.location .text-container strong em, .location .cke_editable strong em, .location .component-type--pzt-infographic .infographic--body strong em, .component-type--pzt-infographic .location .infographic--body strong em,
.location .component-type--infographic .infographic--body strong em,
.component-type--infographic .location .infographic--body strong em {
  color: var(--color-primary);
  font-weight: 700;
  font-style: normal;
}
.location .text-container ul li, .location .cke_editable ul li, .location .component-type--pzt-infographic .infographic--body ul li, .component-type--pzt-infographic .location .infographic--body ul li,
.location .component-type--infographic .infographic--body ul li,
.component-type--infographic .location .infographic--body ul li {
  padding-left: 0;
}

.component-type--container h2 {
  padding-bottom: 0;
  margin-bottom: 0;
}
.component-type--container .component {
  padding-bottom: 0;
  margin-bottom: 0;
}
.component-type--container .component .component--content {
  max-width: unset;
}
.component-type--container.component-type--layout {
  display: block;
}
.component-type--container.component--layout--two-columns .component {
  display: block;
}
.component-type--container.as-banners {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: calc(var(--unit) * 0.5);
  width: 100%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: calc(var(--unit) * 3);
}
@media only screen and (max-width: 1023px) {
  .component-type--container.as-banners {
    display: block;
    padding-left: var(--unit);
    padding-right: var(--unit);
    padding-bottom: calc(var(--unit) * 0.5);
  }
  .component-type--container.as-banners .component-type--text .component--content {
    padding: 0;
    background: transparent;
    display: grid;
    grid-template-columns: 2fr 4fr;
    gap: calc(var(--unit) / 2);
    margin-bottom: var(--unit);
  }
  .component-type--container.as-banners .component-type--text .component--content figure img {
    width: 100%;
    height: 100%;
    display: block;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
}
.component-type--container.as-banners .component {
  display: block;
}
.component-type--container.emergency .component .component--content:not(:has(.component--title)) {
  padding: calc(var(--unit) * 0.5);
  background-color: #F3F2EE;
}

.component-type--text.filled {
  padding: calc(var(--unit) * 0.5);
}

.component-type--container.as-banners .img-info-orientamento .component--content::before,
.component-type--container.as-banners .img-consulenza-legale .component--content::before,
.component-type--container.as-banners .img-supporto-linguistico .component--content::before {
  content: "";
  display: block;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 20rem;
  height: 15rem;
  margin-bottom: calc(var(--unit) * 0.5);
}
@media only screen and (max-width: 767px) {
  .component-type--container.as-banners .img-info-orientamento .component--content::before,
  .component-type--container.as-banners .img-consulenza-legale .component--content::before,
  .component-type--container.as-banners .img-supporto-linguistico .component--content::before {
    width: 8rem;
    height: 5rem;
    margin-bottom: 0;
  }
}
.component-type--container.as-banners .img-info-orientamento .component--content::before {
  background-image: url("../img/image-banner/helpline_info_orientamento.jpeg");
}
.component-type--container.as-banners .img-consulenza-legale .component--content::before {
  background-image: url("../img/image-banner/helpline_consulenza_legale.jpeg");
}
.component-type--container.as-banners .img-supporto-linguistico .component--content::before {
  background-image: url("../img/image-banner/helpline_supporto_linguistico.jpeg");
}

.component-type--pzt-markup:has(.img-map)::before {
  content: "";
  display: block;
  position: relative;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 30rem;
  background-image: url("../img/image-banner/map.jpeg");
}
@media only screen and (max-width: 767px) {
  .component-type--pzt-markup:has(.img-map)::before {
    width: 100%;
    height: 20rem;
  }
}

/* headings */
h1, h2 {
  color: var(--color-primary);
}

h1 {
  font-size: var(--font-size--xxl);
}
h1 small {
  font-size: var(--font-size--l);
}

h2 {
  font-size: var(--font-size--xl);
}
h2 small {
  font-size: var(--font-size--m);
}

h3 {
  font-size: var(--font-size--l);
}
h3 small {
  font-size: var(--font-size--s);
}

h4 {
  font-size: var(--font-size--m);
}
h4 small {
  font-size: var(--font-size--s);
}

h5 {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: var(--font-size--m);
}

h6 {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: var(--font-size--m);
}

.submissions-wrapper {
  padding: 2rem;
}
.submissions-wrapper table th,
.submissions-wrapper table td {
  min-width: 15em;
}

dialog#contact-form-dialog[open] {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: none;
  margin: 0;
  display: flex;
  justify-content: center;
  z-index: 9999;
  background: transparent;
  max-width: unset;
  max-height: unset;
}
dialog#contact-form-dialog[open] .field--intro {
  margin-bottom: 1em;
  padding-bottom: 1em;
  border-bottom: 2px solid #D1CCBD;
}
dialog#contact-form-dialog[open] .validation-message {
  margin-bottom: 2em;
  background: #F3F2EE;
  border-radius: 0.5em;
  padding: 1em;
  color: #DA291C;
  text-align: center;
  display: none;
}
dialog#contact-form-dialog[open] .validation-message.visible {
  display: block;
}
dialog#contact-form-dialog[open]::backdrop {
  background: rgba(34, 34, 34, 0.7);
}
dialog#contact-form-dialog[open] form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--color-white);
  padding: calc(var(--unit) * 0.5);
  width: 100%;
  justify-content: flex-start;
  overflow-y: auto;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  font-size: var(--font-size--s);
}
dialog#contact-form-dialog[open] form .field--container {
  margin-bottom: calc(var(--unit) * 0.5);
  display: flex;
  flex-direction: column;
}
dialog#contact-form-dialog[open] form .field--container label {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}
dialog#contact-form-dialog[open] form .field--container:last-child {
  margin-bottom: 0;
}
dialog#contact-form-dialog[open] form input[type=submit],
dialog#contact-form-dialog[open] form button {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
}
dialog#contact-form-dialog[open] form input[type=submit] {
  margin-bottom: 1em;
}
dialog#contact-form-dialog[open] form button {
  width: 100%;
  margin: 0 !important;
}
dialog#contact-form-dialog[open] form button.closing {
  animation: closing 4s linear 1 forwards;
  background: linear-gradient(#F3F2EE, #F3F2EE);
  background-repeat: no-repeat;
  background-position: 0 0;
}
@media only screen and (min-width: 767px) {
  dialog#contact-form-dialog[open] {
    align-items: center;
  }
  dialog#contact-form-dialog[open] form {
    border-radius: calc(var(--unit) * 0.2);
    max-width: 30rem;
    padding: var(--unit);
    font-size: var(--font-size--m);
    display: block;
  }
  dialog#contact-form-dialog[open] form .field--container {
    margin-bottom: var(--unit);
  }
}

@keyframes closing {
  from {
    background-size: 0% 100%;
  }
  to {
    background-size: 100% 100%;
  }
}
table {
  width: 100%;
  border-collapse: collapse;
}
table th,
table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: left;
  overflow: hidden;
  word-break: break-word;
}
table th {
  color: #DA291C;
  font-weight: bold;
}
table tr:nth-child(even) {
  background-color: #fafafa;
}
table a {
  -webkit-text-decoration: underline dashed #DA291C;
          text-decoration: underline dashed #DA291C;
}
table .user-message {
  width: 30%;
}

/* headings */
h1, h2 {
  color: var(--color-primary);
}

h1 {
  font-size: var(--font-size--xxl);
}
h1 small {
  font-size: var(--font-size--l);
}

h2 {
  font-size: var(--font-size--xl);
}
h2 small {
  font-size: var(--font-size--m);
}

h3 {
  font-size: var(--font-size--l);
}
h3 small {
  font-size: var(--font-size--s);
}

h4 {
  font-size: var(--font-size--m);
}
h4 small {
  font-size: var(--font-size--s);
}

h5 {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: var(--font-size--m);
}

h6 {
  font-family: "Lato";
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0;
  font-size: var(--font-size--m);
}/*# sourceMappingURL=style.css.map */