@charset "UTF-8";
:root {
  --font-family: Roboto, sans-serif;
  --font-family-heading: Roboto slab, serif;
  --font-family-menu: Roboto, sans-serif;
  --font-family-monospace: Lucida Console, Monaco, monospace;
  --font-weight-base: 400;
  --font-weight-headings: 700;
  --font-weight-menu: 400;
  --font-size-base: 16px;
  --line-height-base: 1.5;
  --font-size-h1: 1.75em;
  --font-size-h1-hero: 2.5em;
  --font-size-h2: 1.6em;
  --font-size-h3: 1.45em;
  --font-size-h4: 1.3em;
  --font-size-h5: 1.15em;
  --font-size-h6: 1em;
  --font-size-subtitle: 20px;
  --line-height-heading: 1.25;
  --size-space-base: 1rem;
  --size-space-small: 0.75rem;
  --size-space-big: 1.5rem;
  --size-typography-margin: 1em;
  --max-width-base: 1440px;
  --max-width-narrow: 1024px;
  --max-width-large: 1920px;
  --size-corner-radius: 4px;
  --size-hamburger: 32px;
  --drupal-toolbar-bar-height: 39px;
  --drupal-toolbar-tray-height: 40px;
  --drupal-toolbar-gin-height: 54px;
  --color-text: rgba(0, 0, 0, 0.87);
  --color-heading: black;
  --color-link: #981617;
  --color-link-hover: #981617;
  --color-link-focus: #981617;
  --color-link-active: #981617;
  --color-muted: #575757;
  --color-muted-light: #E5E5E5;
  --color-muted-lighter: white;
  --color-muted-dark: #313131;
  --color-muted-bg: #efefef;
  --color-black: black;
  --color-white: white;
  --color-red: #981617;
  --color-gray-light: #ADADAD;
  --color-del: #981617;
  --color-ins: #578B17;
  --color-mark: #ffdc00;
  --color-mark-text: black;
  --color-primary: #981617;
  --color-secondary: #AD6C61;
  --color-accent: #59BAB7;
  --color-stars: #fa9923;
  --color-primary-text: white;
  --color-secondary-text: rgba(0, 0, 0, 0.87);
  --color-accent-text: white;
  --color-muted-text: #717171;
  --color-muted-light-text: black;
  --color-primary-link: white;
  --color-secondary-link: #981617;
  --color-accent-link: white;
  --color-muted-link: white;
  --color-muted-light-link: #981617;
  --color-primary-heading: white;
  --color-secondary-heading: #981617;
  --color-accent-heading: white;
  --color-muted-heading: white;
  --color-muted-light-heading: #981617;
  --color-primary-background: #981617;
  --color-secondary-background: #AD6C61;
  --color-accent-background: #59BAB7;
  --color-white-background: white;
  --color-black-background: black;
  --color-muted-background: #575757;
  --color-muted-light-background: #efefef;
  --border-size: 1px;
  --border-size-form: 1px;
  --border-size-table: 1px;
  --border-size-blockquote: 4px;
  --border-size-pullquote: 4px;
  --border-size-codeblock: 4px;
  --border-color: #E5E5E5;
  --border-color-dark: #575757;
  --form-item-padding: 4px;
  --zone-roof-color-bg: #981617;
  --zone-roof-color-fg: white;
  --zone-roof-color-link: white;
  --zone-roof-color-heading: white;
  --zone-roof-height: 60px;
  --size-header-height: 60px;
  --size-header-height-fixed: 60px;
  --size-logo-width: 120px;
  --size-logo-height: 40px;
  --size-logo-width-scroll: 120px;
  --size-logo-height-scroll: 40px;
  --size-logo-pup-height: 36px;
  --zone-header-color-bg: white;
  --zone-header-color-fg: rgba(0, 0, 0, 0.87);
  --zone-header-color-link: #981617;
  --zone-header-color-heading: black;
  --zone-header-transparent-color-bg: transparent;
  --zone-header-transparent-color-fg: white;
  --zone-header-transparent-color-link: white;
  --zone-header-transparent-color-heading: white;
  --zone-featured-color-bg: #E5E5E5;
  --zone-featured-color-fg: rgba(0, 0, 0, 0.87);
  --zone-featured-color-link: #981617;
  --zone-featured-color-heading: black;
  --zone-floor-color-bg: #333;
  --zone-floor-color-fg: white;
  --zone-floor-color-link: white;
  --zone-floor-color-heading: white;
  --zone-footer-color-bg: #333;
  --zone-footer-color-fg: #E5E5E5;
  --zone-footer-color-link: #E5E5E5;
  --zone-footer-color-heading: #E5E5E5;
  --zone-socket-color-bg: #fff;
  --zone-socket-color-fg: rgba(0, 0, 0, 0.87);
  --zone-socket-color-link: rgba(0, 0, 0, 0.87);
  --zone-socket-color-heading: rgba(0, 0, 0, 0.87);
  --zone-offcanvas-color-bg: white;
  --zone-offcanvas-color-fg: black;
  --zone-offcanvas-color-link: #981617;
  --zone-offcanvas-color-heading: black;
  --header-button-menu-height: 32px;
  --header-button-menu-bg: transparent;
  --header-button-menu-bg-hover: white;
  --size-offcanvas: 90vw;
  --size-offcanvas-neg: -90vw;
  --size-offcanvas-delta: -10vw;
  --font-size-button-base-small: 0.875rem;
  --font-size-button-base-normal: 1rem;
  --font-size-button-base-big: 1.5rem;
  --line-height-button: 1;
  --button-radius: 4px;
  --button-border-width: 1px;
  --button-padding-top-bottom: 1rem;
  --button-padding-left-right: 2rem;
  --columns-1: 1;
  --columns-2: 2;
  --columns-3: 3;
  --columns-4: 3;
  --columns-5: 3;
  --columns-6: 3;
}

@media all and (min-width: 480px) {
  :root {
    --size-space-base: 1.5rem;
    --size-space-small: 1rem;
    --size-space-big: 4rem;
    --size-typography-margin: 1em;
  }
}
@media all and (min-width: 768px) {
  :root {
    --font-size-base: 16px;
    --size-header-height: 90px;
    --size-header-height-fixed: 90px;
    --size-logo-width: 240px;
    --size-logo-height: 80px;
    --size-logo-width-scroll: 240px;
    --size-logo-height-scroll: 80px;
    --size-logo-pup-width: 125px;
    --size-offcanvas: 90vw;
    --size-offcanvas-neg: -90vw;
    --size-offcanvas-delta: -10vw;
    --size-space-base: 2rem;
    --size-space-small: 1rem;
    --size-space-big: 2rem;
    --size-typography-margin: 1em;
    --columns-1: 1;
    --columns-2: 2;
    --columns-3: 3;
    --columns-4: 4;
    --columns-5: 5;
    --columns-6: 6;
  }
}
@media all and (min-width: 1024px) {
  :root {
    --font-size-base: 18px;
    --size-space-base: 2rem;
    --size-space-small: 1rem;
    --size-space-big: 3rem;
    --size-typography-margin: 1em;
    --zone-roof-height: 80px;
  }
}
@media all and (min-width: 1440px) {
  :root {
    --font-size-base: 18px;
    --size-header-height: 120px;
    --size-header-height-fixed: 80px;
    --size-logo-width: 240px;
    --size-logo-height: 80px;
    --size-logo-width-scroll: 240px;
    --size-logo-height-scroll: 80px;
    --size-logo-pup-width: 125px;
  }
}
@media all and (min-width: 1920px) {
  :root {
    --size-space-base: 2rem;
    --size-space-small: 1rem;
    --size-space-big: 4rem;
    --size-typography-margin: 1em;
  }
}
/**
 * FiNeX pup Reset and Normalize based on:
 *
 *  - CSS Reset and Normalize
 *    https://github.com/simbo/css-reset-and-normalize
 *
 *   - Modern CSS Reset
 *     https://github.com/hankchizljaw/modern-css-reset
 */
/**
 * IE10+ doesn't honor `<meta name="viewport">` in some casest
 */
@-ms-viewport {
  width: device-width;
}
/**
 * general reset
 */
html, body, div, span, applet, object, iframe,
h1,
.hero-title, 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, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
  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, hgroup, menu, nav, section,
main, summary {
  display: block;
}

/**
 * inherit box model for all elements
 */
*,
*::before,
*::after {
  box-sizing: inherit;
}

/**
 * html root rules
 * 1. set border-box for inheritance
 * 2. avoid 300ms click delay on touch devices that support the `touch-action`
 *    CSS property
 * 3. Prevent adjustments of font size after orientation changes in IE, on
 *    Windows Phone and iOS.
 * 4. Setting @viewport causes scrollbars to overlap content in IE11 and Edge,
 *    so we force a non-overlapping, non-auto-hiding scrollbar to counteract.
 * 5. Change the default tap highlight to be completely transparent in iOS.
 * 6. Add smooth scroll, opionated by FiNeX
 */
html {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  touch-action: manipulation;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* 4 */
  -ms-overflow-style: scrollbar;
  /* 5 */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  /* 6 */
  scroll-behavior: smooth;
}

/**
 * body rules
 * 1. reset line-height to 1
 * 2. set base font-family to sans-serif
 * 3. Set an explicit initial text-align value so that we can later use the
 *    `inherit` value on things like `<th>` elements.
 * 4. Set default rendering mode, opionated by FiNeX
 * 5. Set min height to 100vh, opionated by FiNeX
 */
body {
  /* 1 */
  line-height: 1;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  text-align: left;
  /* 4 */
  text-rendering: optimizeLegibility;
  /* 5 */
  min-height: 100vh;
}

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

/**
 * Quotes
 */
blockquote, q {
  quotes: none;
}

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

/**
 * Tables
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  caption-side: bottom;
}

/**
 * Table Headers
 * 1. Matches default `<td>` alignment by inheriting from the `<body>`, or the
 *    closest parent with a set `text-align`.
 */
th {
  /* 1 */
  text-align: inherit;
}

/**
 * Horizontal Lines
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  /* 1 */
  box-sizing: content-box;
  height: 0;
  /* 2 */
  overflow: visible;
}

/**
 * Preformatted Text
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Don't allow content to break outside
 * 3. We have @viewport set which causes scrollbars to overlap content in IE11
 *    and Edge, so we force a non-overlapping, non-auto-hiding scrollbar to
 *    counteract.
 */
pre,
code,
kbd,
samp {
  /* 1 */
  font-family: monospace, monospace;
}

pre {
  /* 2 */
  overflow: auto;
  /* 3 */
  -ms-overflow-style: scrollbar;
}

/**
 * Links
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  /* 1 */
  background-color: transparent;
  /* 2 */
  -webkit-text-decoration-skip: objects;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 * 3. Add explicit cursor to indicate changed behavior.
 * 4. Prevent the text-decoration to be skipped.
 */
abbr[title] {
  /* 1 */
  border-bottom: none;
  /* 2 */
  text-decoration: underline;
  text-decoration: underline dotted;
  /* 3 */
  cursor: help;
  /* 4 */
  text-decoration-skip-ink: none;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
  max-width: 100%;
  display: block;
  aspect-ratio: attr(width)/attr(height);
}

/* Blur images when they have no alt attribute */
/**
 * Hide SVG overflow in IE
 */
svg:not(:root) {
  overflow: hidden;
}

/**
 * Remove the default `border-radius` that macOS Chrome adds.
 * Details at https://github.com/twbs/bootstrap/issues/24093
 */
button {
  border-radius: 0;
}

/**
 * Work around a Firefox/IE bug where the transparent `button` background
 * results in a loss of the default `button` focus styles.
 * Credit: https://github.com/suitcss/base/
 */
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

/**
 * form element resets
 * 1. Remove the margin in Firefox and Safari
 * 2. inherit font rules
 */
input,
button,
select,
optgroup,
textarea {
  /* 1 */
  margin: 0;
  /* 2 */
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=reset],
[type=submit],
[type=button] {
  /* 2 */
  -webkit-appearance: button;
}

/**
 * Remove the default appearance of temporal inputs to avoid a Mobile Safari
 * bug where setting a custom line-height prevents text from being vertically
 * centered within the input.
 * See https://bugs.webkit.org/show_bug.cgi?id=139848
 * and https://github.com/twbs/bootstrap/issues/11266
 */
input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

/**
 * 1. Remove the default vertical scrollbar in IE.
 * 2. Textareas should really only resize vertically so they don't break their
 *    (horizontal) containers.
 */
textarea {
  overflow: auto;
  resize: vertical;
}

/**
 * Show the overflow in IE.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 */
button,
select {
  text-transform: none;
}

/**
 * Remove the inheritance of word-wrap in Safari.
 * See https://github.com/twbs/bootstrap/issues/24990
 */
select {
  word-wrap: normal;
}

/**
 * Remove inner border and padding from Firefox, but don't restore the outline
 * like Normalize.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * 1. Add the correct box sizing in IE 10-
 * 2. Remove the padding in IE 10-
 */
input[type=radio],
input[type=checkbox] {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  padding: 0;
}

/**
 * Suppress the focus outline on elements that cannot be accessed via keyboard.
 * This prevents an unwanted focus outline from appearing around elements that
 * might still respond to pointer events.
 * Credit: https://github.com/suitcss/base
 */
[tabindex="-1"]:focus {
  outline: 0 !important;
}

/**
 * Browsers set a default `min-width: min-content` on fieldsets,
 * unlike e.g. `<div>`s, which have `min-width: 0` by default.
 * So we reset that to ensure fieldsets behave more like a standard block element.
 * See https://github.com/twbs/bootstrap/issues/12359
 * and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
 */
fieldset {
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Set display to block for all browsers
 */
legend {
  /* 1 */
  max-width: 100%;
  white-space: normal;
  /* 2 */
  color: inherit;
  /* 3 */
  display: block;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  /* 1 */
  -webkit-appearance: textfield;
  /* 2 */
  outline-offset: -2px;
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  /* 1 */
  -webkit-appearance: button;
  /* 2 */
  font: inherit;
}

/**
 * Correct element display for output
 */
output {
  display: inline-block;
}

/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

[hidden] {
  display: none;
}

/**
 * EXTRA RULES
 */
/**
 * adds resets for links that are not covered by reset-and-normalize base
 */
a {
  color: inherit;
  text-decoration: none;
}
a:-moz-focusring, a:focus {
  outline: none;
}

/**
 * adds resets for buttons that are not covered by reset-and-normalize base
 */
[role=button],
input[type=button],
input[type=reset],
input[type=submit],
button {
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  color: inherit;
  text-align: inherit;
  background: none;
  appearance: button;
  user-select: none;
}
[role=button]:-moz-focusring,
input[type=button]:-moz-focusring,
input[type=reset]:-moz-focusring,
input[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: none;
}
[role=button]:focus,
input[type=button]:focus,
input[type=reset]:focus,
input[type=submit]:focus,
button:focus {
  outline: none;
}

/**
 * Remove all animations and transitions for people that prefer not to see them
 */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/*
 * Set colors "preset"
 */
/*
 * Evita il flickering della pagina allo scroll se c'è un elemento fixed.
 *
 * https://stackoverflow.com/questions/12969228/chrome-slow-scrolling-with-fixed-position-elements
 *
 * Elementi fixed possono causare flickering e rallentamenti su Google Chrome
 * questo fix risolve il problema. Però introduce un potenziale effetto
 * collaterale: se dentro l'header ci sono elementi .fixed questi potrebbero
 * non essere posizioanti correttamente su Google Chrome, rif bug:
 * https://bugs.webkit.org/show_bug.cgi?id=110478
 */
/*
 * Base Layout grid
 */
/*
 * Grid Item
 * - $columns: numero di colonne totali
 * - $num: numero di colonne che l'elemento occupa
 *
 * Esempio: se ho un layout 1/3 + 2/3, con gutter, devo fare così:
 * .div_1_3{ // Colonna 1/3
 *   @include grid-item(3, 1, false);
 *   @include grid-item-alpha();
 * }
 * .div_2_3{ // Colonna 2/3
 *   @include grid-item(3, 2, false);
 *   @include grid-item-omega();
 * }

 */
html {
  font-size: var(--font-size-base);
}

body {
  font-family: var(--font-family);
  font-weight: var(--font-weight-base);
  color: var(--color-text);
}

a {
  color: var(--color-link);
  text-decoration: none;
}

a:hover {
  color: var(--color-link-hover);
  text-decoration: none;
}

.field p a,
.field figcaption a,
.field ul a,
.field ol a,
.field__body p a,
.field__body figcaption a,
.field__body ul a,
.field__body ol a {
  position: relative;
  transition: all 0.25s ease-out;
  border-radius: var(--size-corner-radius);
  padding: 0;
  text-decoration: underline;
}

h1, .hero-title,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-headings);
  color: var(--color-heading);
  word-wrap: break-word;
}

h1, .hero-title {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h2 {
  font-size: var(--font-size-h2);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h4 {
  font-size: var(--font-size-h4);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h5 {
  font-size: var(--font-size-h5);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h6 {
  font-size: var(--font-size-h6);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

h1, .hero-title, h3 {
  font-weight: 700;
}

h6 {
  font-weight: bold;
}

.hero-title {
  font-weight: 700;
  font-size: var(--font-size-h1-hero);
  line-height: 0.9em;
  margin-bottom: 0.2em;
}
.hero-title p {
  line-height: 1.2;
}

.field-kickertitle {
  text-transform: uppercase;
  font-weight: bold;
  letter-spacing: 1px;
}

h1.field-title, .field-title.hero-title {
  margin: 0;
}

h2.field-subtitle {
  font-size: 1.5em;
  margin-top: 0.5em;
  margin-bottom: 0;
  color: var(--color-muted);
  font-weight: normal;
}

p {
  margin-top: 0;
  margin-bottom: var(--size-typography-margin);
  line-height: var(--line-height-base);
}

.field p:last-child,
.field__body p:last-child {
  margin-bottom: 0;
}

blockquote {
  font-size: 1.75rem;
  line-height: 1.5;
  padding: 0 0 0 calc(var(--size-space-base) * 1.5);
  margin: 0;
  margin-bottom: var(--size-typography-margin);
}
blockquote:before {
  position: absolute;
  content: "“";
  line-height: 1;
  font-size: 5rem;
  margin-top: 0;
  margin-left: calc(var(--size-space-base) * -1.5);
}
blockquote cite {
  font-size: 0.9em;
  font-style: italic;
}
blockquote p:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  blockquote {
    font-size: 1.15rem;
    line-height: 1.5;
    padding: 0 0 0 var(--size-space-base);
  }
  blockquote:before {
    font-size: 2rem;
    margin-left: calc(var(--size-space-basebase) * -1);
  }
}
blockquote cite {
  font-size: 1.25rem;
}
@media screen and (max-width: 767px) {
  blockquote cite {
    font-size: 1.1rem;
  }
}

blockquote:last-child {
  margin-bottom: 0;
}

.pullquote {
  background-color: rgba(200, 200, 200, 0.3);
  border-left: solid var(--size-space-small)/4 rgba(200, 200, 200, 0.5);
  padding: var(--size-space-small) var(--size-space-base);
  margin: 0;
  line-height: 1.25;
  font-size: 1.75rem;
}
.pullquote p:last-of-type {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .pullquote {
    font-size: 1.15rem;
  }
}

abbr[title] {
  text-decoration: none;
  border-bottom: dashed 2px var(--color-text);
}

b,
strong {
  font-weight: bold;
}

i,
em {
  font-style: italic;
}

cite {
  font-size: 1em;
  font-style: italic;
}

del {
  color: var(--color-del);
}

figure {
  margin-top: 0;
  margin-bottom: var(--size-typography-margin);
}

hr {
  border: none;
  border-top: 1px solid var(--border-color);
  margin-left: 0;
  margin-right: 0;
  margin-bottom: var(--size-typography-margin);
}

img {
  height: auto;
  max-width: 100%;
  vertical-align: middle;
}

ins {
  color: var(--color-ins);
}

mark {
  color: var(--color-mark-text);
  background-color: var(--color-mark);
  border-radius: var(--size-corner-radius);
  padding: 0.1666666667em 0.3333333333em;
}

code {
  font-family: var(--font-family-monospace);
  color: var(--color-muted-light);
  background-color: var(--color-muted-dark);
  border-radius: var(--size-corner-radius);
  padding: 0.1666666667em 0.3333333333em;
  line-height: 1.5em;
}

kbd {
  font-family: var(--font-family-monospace);
  color: var(--color-muted-light);
  background-color: var(--color-muted-dark);
  border-radius: var(--size-corner-radius);
  padding: 0.1666666667em 0.3333333333em;
}

pre {
  max-height: auto;
  overflow-y: auto;
  font-family: var(--font-family-monospace);
  color: var(--color-muted-dark);
  background-color: var(--color-muted-light);
  border-radius: var(--size-corner-radius);
  padding: var(--size-space-small);
  margin-top: 0;
  margin-bottom: var(--size-typography-margin);
}

pre code {
  background-color: inherit;
  color: inherit;
  padding: 0;
  border: none;
  border-radius: 0;
  margin: 0;
}

small {
  font-size: 0.85em;
}

.text-big {
  font-size: 1.75em;
  line-height: 1.33em;
}

*:focus {
  outline: none;
}

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

::placeholder {
  color: var(--color-muted);
}

::selection {
  background-color: var(--color-primary);
  color: var(--color-primary-text);
  text-shadow: none !important;
}

.toolbar-tray a {
  font-weight: normal;
}

.big-label-primary,
.big-label-primary-light,
.big-label-primary-dark,
.big-label-secondary {
  padding: var(--size-space-base);
  text-align: center;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 1.75em;
  margin-bottom: var(--size-space-base);
  color: var(--color-white);
  display: flex;
  align-items: center;
}
.big-label-primary img,
.big-label-primary-light img,
.big-label-primary-dark img,
.big-label-secondary img {
  margin-right: var(--size-space-base);
}

.big-label-primary {
  background-color: var(--color-primary);
}

.big-label-secondary {
  background-color: var(--color-secondary);
}

.big-label-primary-light {
  background-color: #00b2b2;
}

.big-label-primary-dark {
  background-color: #003942;
}

@media screen and (min-width: 768px) {
  .grid-2-columns {
    display: flex;
  }
  .grid-2-columns .grid--column {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .grid-2-columns .grid--column > * {
    box-sizing: border-box;
  }
  .grid-2-columns .grid--column-first {
    padding-left: 0;
  }
  .grid-2-columns .grid--column-last {
    padding-right: 0;
  }
  .grid-3-columns {
    display: flex;
  }
  .grid-3-columns .grid--column {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .grid-3-columns .grid--column > * {
    box-sizing: border-box;
  }
  .grid-3-columns .grid--column-first {
    padding-left: 0;
  }
  .grid-3-columns .grid--column-last {
    padding-right: 0;
  }
}
.cke_widget_element .grid--column {
  width: auto;
}

/*
 * Site roof
 */
.site-roof {
  z-index: 100;
}

/*
 * Site header
 * - logo
 * - menu (menu region)
 * - cta (header region)
 * - tools (search+hamburger buttons)
 */
.site-header {
  z-index: 100;
}

.settings-logo-position--right .site-header .l__column {
  justify-content: right;
}
.settings-logo-position--right .site-header__branding {
  order: 4;
  margin-left: auto;
}
.settings-logo-position--right .site-header__menu {
  order: 3;
}
.settings-logo-position--right .site-header__cta {
  order: 2;
}
.settings-logo-position--right .site-header__tools {
  order: 1;
}
.settings-logo-position--left .site-header .l__column {
  justify-content: left;
}
.settings-logo-position--left .site-header__branding {
  order: 1;
  margin-right: auto;
}
.settings-logo-position--left .site-header__menu {
  order: 2;
}
.settings-logo-position--left .site-header__cta {
  order: 3;
}
.settings-logo-position--left .site-header__tools {
  order: 4;
}
.settings-logo-position--right_center .site-header .l__column {
  justify-content: right;
}
.settings-logo-position--right_center .site-header__branding {
  order: 4;
}
.settings-logo-position--right_center .site-header__menu {
  order: 3;
  margin-left: auto;
  margin-right: auto;
}
.settings-logo-position--right_center .site-header__cta {
  order: 2;
}
.settings-logo-position--right_center .site-header__tools {
  order: 1;
}
.settings-logo-position--left_center .site-header .l__column {
  justify-content: left;
}
.settings-logo-position--left_center .site-header__branding {
  order: 1;
}
.settings-logo-position--left_center .site-header__menu {
  order: 2;
  margin-left: auto;
  margin-right: auto;
}
.settings-logo-position--left_center .site-header__cta {
  order: 3;
}
@media screen and (max-width: 767px) {
  .settings-logo-position--left_center .site-header__cta {
    margin-left: auto;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .settings-logo-position--left_center .site-header__cta {
    margin-left: auto;
  }
}
.settings-logo-position--left_center .site-header__tools {
  order: 4;
}

.site-header .l__column {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  height: 100%;
}
.site-header__tools {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}
.site-header__tools__button-search {
  order: 1;
}
.site-header__tools__button-menu {
  order: 2;
}

/*
 * Site hero
 */
/*
 * Site featured
 */
/*
 * Site breadcrumb
 */
/*
 * Site main
 * - sidebar first
 * - content
 *   - preface
 *   - content
 *   - postscript
 * - sidebar last
 */
.no-sidebars .l__column--main {
  margin-top: var(--size-space-big);
}
@media all and (max-width: 1023px) {
  .no-sidebars .l__column--main {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media all and (min-width: 1024px) {
  .no-sidebars .l__column--main {
    width: 100%;
    max-width: var(--max-width-base);
    padding-left: var(--size-space-base);
    padding-right: var(--size-space-base);
    margin-left: auto;
    margin-right: auto;
  }
  .no-sidebars .l__column--main .l__column {
    padding-left: 0;
    padding-right: 0;
  }
}

.sidebar-first .l__column--main {
  margin-top: var(--size-space-big);
}
@media all and (max-width: 1023px) {
  .sidebar-first .l__column--main {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media all and (min-width: 1024px) {
  .sidebar-first .l__column--main {
    width: 100%;
    max-width: var(--max-width-base);
    padding-left: var(--size-space-base);
    padding-right: var(--size-space-base);
    margin-left: auto;
    margin-right: auto;
    display: grid;
    grid-gap: var(--size-space-base);
    grid-template-columns: 2fr 1fr;
  }
  .sidebar-first .l__column--main .l__column {
    padding-left: 0;
    padding-right: 0;
  }
}

/*
 * Site socket
 */
/*
 * Site offcanvas
 */
/*
 * Site search
 */
/* ---------------------------------------------------------------------------
 * Back to top
 * --------------------------------------------------------------------------- */
#back-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background: rgba(0, 0, 0, 0.25);
  color: white;
  font-size: 24px;
  opacity: 0;
  transition: all 0.25s ease-out;
  border-radius: var(--size-corner-radius);
  z-index: 20;
  cursor: pointer;
}
.scroll--main #back-top {
  opacity: 1;
  transition: all 0.25s ease-in;
}
.offcanvas-enabled #back-top {
  display: none;
}

/*
 * Questo codice va messo solo nei siti satellite, quindi
 */
.pup-satellite.path-frontpage #block-pup-page-title,
.pup-satellite.path-frontpage #block-pagetitle,
.pup-satellite.page-node-type-book #block-pup-page-title,
.pup-satellite.page-node-type-book #block-pagetitle {
  display: none;
}

.two-columns {
  *zoom: 1;
  margin-bottom: var(--size-space-base);
}
.two-columns:before, .two-columns:after {
  content: "";
  display: table;
  line-height: 0;
}
.two-columns:after {
  clear: both;
}
@media screen and (min-width: 768px) {
  .two-columns--first {
    width: 66.6666666667%;
    float: left;
    padding-right: var(--size-space-base)/2;
  }
  .two-columns--last {
    width: 33.3333333333%;
    float: right;
    padding-left: var(--size-space-base)/2;
  }
}
.two-columns--single {
  margin-top: var(--size-space-base);
  clear: both;
}

.two-columns-teaser {
  *zoom: 1;
  margin-bottom: var(--size-space-base);
}
.two-columns-teaser:before, .two-columns-teaser:after {
  content: "";
  display: table;
  line-height: 0;
}
.two-columns-teaser:after {
  clear: both;
}
@media screen and (min-width: 768px) {
  .two-columns-teaser--first {
    width: 66.6666666667%;
    float: left;
    padding-right: var(--size-space-base)/2;
  }
  .two-columns-teaser--last {
    width: 33.3333333333%;
    float: right;
    padding-left: var(--size-space-base)/2;
  }
}

.one-column__header h1, .one-column__header .hero-title {
  text-align: center;
}

.book-header {
  display: grid;
  grid-template-columns: 1fr 3fr;
  gap: 1rem;
  padding: 1rem;
  box-shadow: 5px 5px 40px #e6e6e6;
}
.book-header .book-text {
  display: flex;
  flex-direction: column;
}
.book-header .book-text h1, .book-header .book-text .hero-title,
.book-header .book-text h2 {
  font-size: var(--font-size-h3);
  margin-top: 0;
}
.book-header .field--name-field-book-cover {
  margin-top: 0;
}
.book-header .field--title,
.book-header .field--name-field-book-pubdate-year,
.book-header .field--name-field-book-pubdate-month,
.book-header .field--name-field-book-volume-title {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-headings);
  color: var(--color-heading);
  word-wrap: break-word;
  font-size: var(--font-size-h5);
  line-height: var(--line-height-heading);
  margin-top: 0.5em;
}

.book-details {
  margin-top: var(--size-space-base);
}
.book-details > .field {
  margin-bottom: var(--size-space-small);
}
.book-details .field--label-above .field__label {
  margin-bottom: 0.5em;
}
.book-details .field__body {
  margin-bottom: var(--size-space-base);
}

.book-teaser .field--title {
  font-size: var(--font-size-h5);
}
.book-teaser .field--pubdate {
  color: var(--color-muted);
}
.book-teaser .field--name-field-book-volume-title {
  grid-column-start: 1;
  grid-column-end: 3;
  margin-top: 20px;
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-headings);
  color: var(--color-heading);
  word-wrap: break-word;
  font-size: var(--font-size-h6);
  line-height: var(--line-height-heading);
  margin-top: 0.5em;
}
.book-teaser > .book-header > .views-element-container {
  grid-column-start: 1;
  grid-column-end: 3;
}
.book-teaser > .book-header > .views-element-container .view-column {
  margin: 0;
}
.book-teaser > .book-header > .views-element-container .item-list ul {
  list-style: none outside none;
  padding: 0;
  margin: 0;
  color: var(--color-muted);
}

.path-bibcite .bibcite-keyword .field,
.path-bibcite .bibcite-contributor .field,
.path-bibcite .bibcite-reference .field {
  margin-bottom: var(--size-space-small);
}
.path-bibcite .bibcite-keyword .field__label,
.path-bibcite .bibcite-contributor .field__label,
.path-bibcite .bibcite-reference .field__label {
  margin-bottom: 5px;
  line-height: var(--line-height-base);
}
.path-bibcite .bibcite-keyword .field__item,
.path-bibcite .bibcite-contributor .field__item,
.path-bibcite .bibcite-reference .field__item {
  overflow: hidden;
  line-height: var(--line-height-base);
}
@media all and (min-width: 1024px) {
  .path-bibcite .bibcite-keyword .field.field--label-inline,
.path-bibcite .bibcite-contributor .field.field--label-inline,
.path-bibcite .bibcite-reference .field.field--label-inline {
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: var(--size-space-base);
  }
  .path-bibcite .bibcite-keyword .field.field--label-inline__label,
.path-bibcite .bibcite-contributor .field.field--label-inline__label,
.path-bibcite .bibcite-reference .field.field--label-inline__label {
    margin-bottom: 0;
  }
}
.path-bibcite .bibcite-keyword .bibcite-citation,
.path-bibcite .bibcite-keyword .bibcite-links,
.path-bibcite .bibcite-contributor .bibcite-citation,
.path-bibcite .bibcite-contributor .bibcite-links,
.path-bibcite .bibcite-reference .bibcite-citation,
.path-bibcite .bibcite-reference .bibcite-links {
  margin-bottom: var(--size-space-small);
  line-height: var(--line-height-base);
}
.path-bibcite .bibcite-keyword .bibcite-citation,
.path-bibcite .bibcite-contributor .bibcite-citation,
.path-bibcite .bibcite-reference .bibcite-citation {
  font-family: "Roboto Slab";
  border-left: 3px solid #ccc;
  padding-left: 12px;
  padding-top: 6px;
  padding-bottom: 8px;
}
.path-bibcite .bibcite-keyword .bibcite-citation .citeproc-title-plus-extra,
.path-bibcite .bibcite-contributor .bibcite-citation .citeproc-title-plus-extra,
.path-bibcite .bibcite-reference .bibcite-citation .citeproc-title-plus-extra {
  font-style: italic;
}

.bibcite-reference_summary {
  margin-bottom: var(--size-space-base);
  padding-left: 10px;
  border-left: 5px solid var(--color-muted-light);
  line-height: var(--line-height-base);
  font-style: italic;
}

.page-node-type-page .field__body {
  margin-bottom: var(--size-space-base);
}

/* Generic layout builder region */
.layout {
  position: relative;
  *zoom: 1;
}
.layout:before, .layout:after {
  content: "";
  display: table;
  line-height: 0;
}
.layout:after {
  clear: both;
}

body {
  width: 100vw;
}

/*
 * pup Grid System
 */
.l__row {
  *zoom: 1;
}
.l__row:before, .l__row:after {
  content: "";
  display: table;
  line-height: 0;
}
.l__row:after {
  clear: both;
}
.l__row .l__column {
  width: 100%;
  max-width: var(--max-width-base);
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
  margin-left: auto;
  margin-right: auto;
}
.l__row .l__column .l__column {
  padding-left: 0;
  padding-right: 0;
}

/*
 * Imposta l'header ed il footer al 100% della larghezza pagina nel caso in cui
 * sia stato definito nella configurazione del tema
 */
.settings-headerfooter-edge #roof .l__column,
.settings-headerfooter-edge #header .l__column,
.settings-headerfooter-edge #footer .l__column,
.settings-headerfooter-edge #socket .l__column {
  max-width: 100%;
}

/* Background styles. */
.layout--background--none {
  background: none;
}

.layout--background--black {
  background: var(--color-black);
  color: var(--color-black-text);
}
.layout--background--black a {
  color: var(--color-black-link);
}
.layout--background--black h1, .layout--background--black .hero-title, .layout--background--black h2, .layout--background--black h3, .layout--background--black h4, .layout--background--black h5, .layout--background--black h6 {
  color: var(--color-black-heading);
}

.layout--background--white {
  background: var(--color-white);
}

.layout--background--gray {
  background: var(--color-muted);
  color: var(--color-muted-text);
}
.layout--background--gray a {
  color: var(--color-muted-link);
}
.layout--background--gray h1, .layout--background--gray .hero-title, .layout--background--gray h2, .layout--background--gray h3, .layout--background--gray h4, .layout--background--gray h5, .layout--background--gray h6 {
  color: var(--color-muted-heading);
}

.layout--background--primary {
  background: var(--color-primary);
  color: var(--color-primary-text);
}
.layout--background--primary a {
  color: var(--color-primary-link);
}
.layout--background--primary h1, .layout--background--primary .hero-title, .layout--background--primary h2, .layout--background--primary h3, .layout--background--primary h4, .layout--background--primary h5, .layout--background--primary h6 {
  color: var(--color-primary-heading);
}

.layout--background--secondary {
  background: var(--color-secondary);
  color: var(--color-secondary-text);
}
.layout--background--secondary a {
  color: var(--color-secondary-link);
}
.layout--background--secondary h1, .layout--background--secondary .hero-title, .layout--background--secondary h2, .layout--background--secondary h3, .layout--background--secondary h4, .layout--background--secondary h5, .layout--background--secondary h6 {
  color: var(--color-secondary-heading);
}

.layout--background--accent {
  background: var(--color-accent);
  color: var(--color-accent-text);
}
.layout--background--accent a {
  color: var(--color-accent-link);
}
.layout--background--accent h1, .layout--background--accent .hero-title, .layout--background--accent h2, .layout--background--accent h3, .layout--background--accent h4, .layout--background--accent h5, .layout--background--accent h6 {
  color: var(--color-accent-heading);
}

/* Background attachment styles. */
.layout--background-attachment--fixed {
  background-attachment: fixed;
}

/* Background position styles. */
.layout--background-position--center {
  background-position: center;
}

/* Background size styles. */
.layout--background-size--cover {
  background-size: cover;
}

.layout--background-size--contain {
  background-size: contain;
}

/* Top Bottom Margin styles. */
.layout--top-bottom-margin--none {
  margin-top: 0;
  margin-bottom: 0;
}

.layout--top-bottom-margin--small {
  margin-top: var(--size-space-small);
  margin-bottom: var(--size-space-small);
}

.layout--top-bottom-margin--default {
  margin-top: var(--size-space-base);
  margin-bottom: var(--size-space-base);
}

.layout--top-bottom-margin--big {
  margin-top: var(--size-space-big);
  margin-bottom: var(--size-space-big);
}

/* Left Right Margin styles. */
.layout--left-right-margin--none {
  margin-left: 0;
  margin-right: 0;
}

.layout--left-right-margin--small {
  margin-left: var(--size-space-small);
  margin-right: var(--size-space-small);
}

.layout--left-right-margin--default {
  margin-left: var(--size-space-base);
  margin-right: var(--size-space-base);
}

.layout--left-right-margin--big {
  margin-left: var(--size-space-big);
  margin-right: var(--size-space-big);
}

/* Top Margin styles. */
.layout--top-margin--none {
  margin-top: 0;
}

.layout--top-margin--small {
  margin-top: var(--size-space-small);
}

.layout--top-margin--default {
  margin-top: var(--size-space-base);
}

.layout--top-margin--big {
  margin-top: var(--size-space-big);
}

/* Bottom Margin styles. */
.layout--bottom-margin--none {
  margin-bottom: 0;
}

.layout--bottom-margin--small {
  margin-bottom: var(--size-space-small);
}

.layout--bottom-margin--default {
  margin-bottom: var(--size-space-base);
}

.layout--bottom-margin--big {
  margin-bottom: var(--size-space-big);
}

/* Left Margin styles. */
.layout--left-margin--none {
  margin-left: 0;
}

.layout--left-margin--small {
  margin-left: var(--size-space-small);
}

.layout--left-margin--default {
  margin-left: var(--size-space-base);
}

.layout--left-margin--big {
  margin-left: var(--size-space-big);
}

/* Right Margin styles. */
.layout--right-margin--none {
  margin-right: 0;
}

.layout--right-margin--small {
  margin-right: var(--size-space-small);
}

.layout--right-margin--default {
  margin-right: var(--size-space-base);
}

.layout--right-margin--big {
  margin-right: var(--size-space-big);
}

/* Top Bottom Padding styles. */
.layout--top-bottom-padding--none .layout-content {
  padding-top: 0;
  padding-bottom: 0;
}

.layout--top-bottom-padding--small .layout-content {
  padding-top: var(--size-space-small);
  padding-bottom: var(--size-space-small);
}

.layout--top-bottom-padding--default .layout-content {
  padding-top: var(--size-space-base);
  padding-bottom: var(--size-space-base);
}

.layout--top-bottom-padding--big .layout-content {
  padding-top: calc(var(--size-space-big));
  padding-bottom: calc(var(--size-space-big));
}

/* Left Right Padding styles. */
.layout--left-right-padding--none .layout-content {
  padding-left: 0;
  padding-right: 0;
}

.layout--left-right-padding--small .layout-content {
  padding-left: var(--size-space-small);
  padding-right: var(--size-space-big);
}

.layout--left-right-padding--default .layout-content {
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
}

.layout--left-right-padding--big .layout-content {
  padding-left: var(--size-space-big);
  padding-right: var(--size-space-big);
}

/* Top Padding styles. */
.layout--top-padding--none .layout-content {
  padding-top: 0;
}

.layout--top-padding--small .layout-content {
  padding-top: var(--size-space-small);
}

.layout--top-padding--default .layout-content {
  padding-top: var(--size-space-big);
}

.layout--top-padding--big .layout-content {
  padding-top: calc(var(--size-space-big) * 2);
}

/* Bottom Padding styles. */
.layout--bottom-padding--none .layout-content {
  padding-bottom: 0;
}

.layout--bottom-padding--small .layout-content {
  padding-bottom: var(--size-space-small);
}

.layout--bottom-padding--default .layout-content {
  padding-bottom: var(--size-space-big);
}

.layout--bottom-padding--big .layout-content {
  padding-bottom: calc(var(--size-space-big) * 2);
}

/* Left Padding styles. */
.layout--left-padding--none .layout-content {
  padding-left: 0;
}

.layout--left-padding--small .layout-content {
  padding-left: var(--size-space-small);
}

.layout--left-padding--default .layout-content {
  padding-left: var(--size-space-base);
}

.layout--left-padding--big .layout-content {
  padding-left: var(--size-space-big);
}

/* Right Padding styles. */
.layout--right-padding--none .layout-content {
  padding-right: 0;
}

.layout--right-padding--small .layout-content {
  padding-right: var(--size-space-small);
}

.layout--right-padding--default .layout-content {
  padding-right: var(--size-space-base);
}

.layout--right-padding--big .layout-content {
  padding-right: var(--size-space-big);
}

/* Container styles. */
.layout--container--default {
  max-width: var(--max-width-base);
  margin-left: auto;
  margin-right: auto;
}

.layout--container--small {
  max-width: var(--max-width-narrow);
  margin-left: auto;
  margin-right: auto;
}

.layout--container--large {
  max-width: var(--max-width-large);
  margin-left: auto;
  margin-right: auto;
}

.layout--container--full {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* Content container styles. */
.layout--content-container--default .layout-content {
  max-width: var(--max-width-base);
  margin-left: auto;
  margin-right: auto;
}

.layout--content-container--small .layout-content {
  max-width: var(--max-width-narrow);
  margin-left: auto;
  margin-right: auto;
}

.layout--content-container--large .layout-content {
  max-width: var(--max-width-large);
  margin-left: auto;
  margin-right: auto;
}

.layout--content-container--full .layout-content {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

/* Height styles. */
.layout--height--100vh {
  min-height: 100vh;
  align-items: center;
}

.layout--height--80vh {
  min-height: 80vh;
  align-items: center;
}

/* Color styles. */
.layout--color--black {
  color: var(--color-black);
}

.layout--color--white {
  color: var(--color-white);
}
.layout--color--white a {
  color: var(--color-white);
}
.layout--color--white h1, .layout--color--white .hero-title, .layout--color--white h2, .layout--color--white h3, .layout--color--white h4, .layout--color--white h5, .layout--color--white h6 {
  color: var(--color-white);
}

.layout--color--gray {
  color: var(--color-muted);
}
.layout--color--gray a {
  color: var(--color-muted);
}
.layout--color--gray h1, .layout--color--gray .hero-title, .layout--color--gray h2, .layout--color--gray h3, .layout--color--gray h4, .layout--color--gray h5, .layout--color--gray h6 {
  color: var(--color-muted);
}

.layout--color--primary {
  color: var(--color-primary);
}
.layout--color--primary a {
  color: var(--color-primary);
}
.layout--color--primary h1, .layout--color--primary .hero-title, .layout--color--primary h2, .layout--color--primary h3, .layout--color--primary h4, .layout--color--primary h5, .layout--color--primary h6 {
  color: var(--color-primary);
}

.layout--color--secondary {
  color: var(--color-secondary);
}
.layout--color--secondary a {
  color: var(--color-secondary);
}
.layout--color--secondary h1, .layout--color--secondary .hero-title, .layout--color--secondary h2, .layout--color--secondary h3, .layout--color--secondary h4, .layout--color--secondary h5, .layout--color--secondary h6 {
  color: var(--color-secondary);
}

.layout--color--accent {
  color: var(--color-accent);
}
.layout--color--accent a {
  color: var(--color-accent);
}
.layout--color--accent h1, .layout--color--accent .hero-title, .layout--color--accent h2, .layout--color--accent h3, .layout--color--accent h4, .layout--color--accent h5, .layout--color--accent h6 {
  color: var(--color-accent);
}

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

.layout--alignment--right {
  text-align: right;
}

.layout--alignment--center {
  text-align: center;
}

.layout--alignment--justify {
  text-align: justify;
}

/* Column gap styles. */
.layout--column-gap--small .layout-content {
  column-gap: var(--size-space-small);
}

.layout--column-gap--default .layout-content {
  column-gap: var(--size-space-base);
}

.layout--column-gap--big .layout-content {
  column-gap: var(--size-space-big);
}

/* Row gap styles. */
.layout--row-gap--small .layout-content {
  row-gap: var(--size-space-small);
}

.layout--row-gap--default .layout-content {
  row-gap: var(--size-space-base);
}

.layout--row-gap--big .layout-content {
  row-gap: var(--size-space-big);
}

/* Align styles. */
.layout--align-items--stretch .layout-content {
  align-items: stretch;
}

.layout--align-items--center .layout-content {
  align-items: center;
}

.layout--align-items--start .layout-content {
  align-items: start;
}

.layout--align-items--end .layout-content {
  align-items: end;
}

/* Overlay styles. */
.layout--background-overlay--dark-light {
  position: relative;
}

.layout--background-overlay--dark-light:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.layout--background-overlay--dark-light > * {
  z-index: 100;
  position: relative;
}

.layout--background-overlay--dark {
  position: relative;
}

.layout--background-overlay--dark:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.layout--background-overlay--dark > * {
  z-index: 100;
  position: relative;
}

.layout--background-overlay--darker {
  position: relative;
}

.layout--background-overlay--darker:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.layout--background-overlay--darker > * {
  z-index: 100;
  position: relative;
}

@media all and (min-width: 768px) {
  .layout--base--twocols .layout-content,
.layout--base--threecols .layout-content,
.layout--base--threecols-with-header .layout-content,
.layout--base--fourcols .layout-content {
    display: block;
    *zoom: 1;
  }
  .layout--base--twocols .layout-content:before, .layout--base--twocols .layout-content:after,
.layout--base--threecols .layout-content:before,
.layout--base--threecols .layout-content:after,
.layout--base--threecols-with-header .layout-content:before,
.layout--base--threecols-with-header .layout-content:after,
.layout--base--fourcols .layout-content:before,
.layout--base--fourcols .layout-content:after {
    content: "";
    display: table;
    line-height: 0;
  }
  .layout--base--twocols .layout-content:after,
.layout--base--threecols .layout-content:after,
.layout--base--threecols-with-header .layout-content:after,
.layout--base--fourcols .layout-content:after {
    clear: both;
  }
  .layout--base--twocols .layout-content .layout__region,
.layout--base--threecols .layout-content .layout__region,
.layout--base--threecols-with-header .layout-content .layout__region,
.layout--base--fourcols .layout-content .layout__region {
    float: left;
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  /* Two columns styles. */
  .layout-builder-base--two-columns .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--two-columns .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--two-columns .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--33-67 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--33-67 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--33-67 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--33-67 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--67-33 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--67-33 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--67-33 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--67-33 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--25-75 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--25-75 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--25-75 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 3 ) + var(--size-space-base) * ( 3 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--25-75 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--75-25 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 3 ) + var(--size-space-base) * ( 3 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--75-25 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--two-columns.layout--column-width--75-25 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--two-columns.layout--column-width--75-25 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  /* Three columns styles. */
  .layout-builder-base--three-columns .layout-content .layout__region {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--three-columns .layout-content .layout__region > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns .layout-content .layout__region--first {
    padding-left: 0;
  }
  .layout-builder-base--three-columns .layout-content .layout__region--third {
    padding-right: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--25-50-25 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--25-25-50 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--three-columns.layout--column-width--50-25-25 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  /* Three columns styles with header region. */
  .layout--base--threecols-with-header .layout-content .layout__region {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 3) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout--base--threecols-with-header .layout-content .layout__region > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header .layout-content .layout__region--first {
    padding-left: 0;
  }
  .layout--base--threecols-with-header .layout-content .layout__region--third {
    padding-right: 0;
  }
  .layout--base--threecols-with-header .layout-content .layout__region--header {
    width: 100%;
    float: none;
    clear: both;
  }
  /* One column style with header region. */
  .layout--base--onecol-with-header .layout-content .layout__region--header {
    margin-bottom: var(--size-space-base);
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--25-50-25 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--25-25-50 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 2 ) + var(--size-space-base) * ( 2 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout--base--threecols-with-header.layout--column-width--50-25-25 .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  /* Four columns styles. */
  .layout-builder-base--four-columns .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--fourth {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 2) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--fourth > * {
    box-sizing: border-box;
  }
}
@media all and (min-width: 768px) {
  /* Four columns styles. */
  .layout-builder-base--four-columns .layout-content .layout__region--first {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-left: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--first > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--second {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--four-columns .layout-content .layout__region--second > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--third {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
  }
  .layout-builder-base--four-columns .layout-content .layout__region--third > * {
    box-sizing: border-box;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--fourth {
    box-sizing: content-box;
    width: calc((((100% - calc(var(--size-space-base) * ( $columns - 1 )) ) / 4) * 1 ) + var(--size-space-base) * ( 1 - 1 ));
    padding-left: calc(var(--size-space-base) / 2);
    padding-right: calc(var(--size-space-base) / 2);
    padding-right: 0;
  }
  .layout-builder-base--four-columns .layout-content .layout__region--fourth > * {
    box-sizing: border-box;
  }
}
/* Column breakpoint styles. */
@media only screen and (max-width: 768px) {
  .layout--column-breakpoint--small .layout-content {
    grid-template-columns: 1fr !important;
  }
}
@media only screen and (max-width: 1024px) {
  .layout--column-breakpoint--medium .layout-content {
    grid-template-columns: 1fr !important;
  }
}
@media only screen and (max-width: 1440px) {
  .layout-builder-base--standard .layout-content {
    grid-template-columns: 1fr !important;
  }
}
@media only screen and (max-width: 1920px) {
  .layout-builder-base--large .layout-content {
    grid-template-columns: 1fr !important;
  }
}
/* Customizable layout columns. */
.layout--customizable-columns--autofill .layout-content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}

.layout--customizable-columns--autofit .layout-content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
}

.layout--customizable-columns--2-col .layout-content {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.layout--customizable-columns--3-col .layout-content {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

.layout--customizable-columns--4-col .layout-content {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}

/*
 * Layout builder Tabs
 */
.layout--tabs .tabs-region {
  max-width: var(--max-width-base);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
}
.layout--tabs .tabs-region ul.tabs {
  margin: 0;
}
.layout--tabs .tabs-region ul.tabs .tabs__tab a.nav-item {
  border: 0;
  color: white;
  background-color: var(--color-primary);
}
.layout--tabs .tabs-region ul.tabs .tabs__tab a.nav-item.is-active {
  background-color: var(--color-secondary);
}
.layout--tabs .tabs-region .tab-pane {
  padding: var(--size-space-base);
  background: var(--color-muted-light);
  opacity: 0;
  transition: all 0.5s ease 0s;
}
.layout--tabs .tabs-region .tab-pane.active {
  opacity: 1;
}

.block-layout-builder.block-right-background .block__media {
  display: block;
  position: relative;
  right: var(--size-space-base);
  top: calc(-1 * var(--size-space-base));
  width: 100vw;
  height: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-right: 0;
  margin-bottom: 0;
  z-index: 0;
}
.layout--top-bottom-padding--big .block-layout-builder.block-right-background .block__media {
  top: calc(-1 * var(--size-space-big) * 2);
}
.block-layout-builder.block-right-background .block__media .field--name-field-block-image {
  height: 100%;
}
.block-layout-builder.block-right-background .block__media .field--name-field-block-image article {
  height: 100%;
}
.block-layout-builder.block-right-background .block__media .field--name-field-block-image article .field--name-field-media-image {
  height: 100%;
}
.block-layout-builder.block-right-background .block__media .field--name-field-block-image article .field--name-field-media-image .media {
  height: 100%;
}
.block-layout-builder.block-right-background .block__media .field--name-field-block-image article .field--name-field-media-image img {
  object-fit: cover;
  width: 100% !important;
  height: 100% !important;
  margin-bottom: 0;
}
.block-layout-builder.block-right-background .block__content {
  width: 100%;
}
.block-layout-builder.block-left-background .block__media {
  display: block;
  position: relative;
  left: calc(-1 * var(--size-space-base));
  top: calc(-1 * var(--size-space-base));
  width: 100vw;
  height: 100%;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  margin-right: 0;
  margin-bottom: 0;
  z-index: 0;
}
.layout--top-bottom-padding--big .block-layout-builder.block-left-background .block__media {
  top: calc(-1 * var(--size-space-big) * 2);
}
.block-layout-builder.block-left-background .block__media .field--name-field-block-image {
  height: 100%;
}
.block-layout-builder.block-left-background .block__media .field--name-field-block-image article {
  height: 100%;
}
.block-layout-builder.block-left-background .block__media .field--name-field-block-image article .field--name-field-media-image {
  height: 100%;
}
.block-layout-builder.block-left-background .block__media .field--name-field-block-image article .field--name-field-media-image .media {
  height: 100%;
}
.block-layout-builder.block-left-background .block__media .field--name-field-block-image article .field--name-field-media-image img {
  object-fit: cover;
  width: 100% !important;
  height: 100% !important;
  margin-bottom: 0;
}
.block-layout-builder.block-left-background .block__content {
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .block-layout-builder.block-right-background .block__media {
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 0;
    z-index: 0;
  }
  .layout--top-bottom-padding--big .block-layout-builder.block-right-background .block__media {
    top: 0;
  }
  .block-layout-builder.block-right-background .block__media img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
  .block-layout-builder.block-right-background .block__content {
    width: calc(50% - var(--size-space-base));
  }
  .block-layout-builder.block-left-background .block__media {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 0;
    margin-bottom: 0;
    z-index: 0;
  }
  .layout--top-bottom-padding--big .block-layout-builder.block-left-background .block__media {
    top: 0;
  }
  .block-layout-builder.block-left-background .block__media img {
    height: 100%;
    width: 100%;
    object-fit: cover;
  }
  .block-layout-builder.block-left-background .block__content {
    width: calc(50% - var(--size-space-base));
    margin-left: calc(50% + var(--size-space-base));
  }
}
/*
 * Section layout base: background colors
 */
.section-background--default {
  color: var(--color-secondary-text);
}
.section-background--default h1, .section-background--default .hero-title, .section-background--default h2, .section-background--default h3, .section-background--default h4, .section-background--default h5, .section-background--default h6 {
  color: var(--color-secondary-heading);
}
.section-background--default a {
  color: var(--color-secondary-link);
}
.section-background--primary {
  background-color: var(--color-primary);
  background: radial-gradient(circle, rgb(51, 120, 131) 0%, rgb(31, 86, 95) 100%);
  color: var(--color-primary-text);
}
.section-background--primary h1, .section-background--primary .hero-title, .section-background--primary h2, .section-background--primary h3, .section-background--primary h4, .section-background--primary h5, .section-background--primary h6 {
  color: var(--color-primary-heading);
}
.section-background--primary a {
  color: var(--color-primary-link);
}
.section-background--secondary {
  background: radial-gradient(circle, #FFE67D 0%, #EBBF0A 100%);
  color: var(--color-secondary-text);
}
.section-background--secondary h1, .section-background--secondary .hero-title, .section-background--secondary h2, .section-background--secondary h3, .section-background--secondary h4, .section-background--secondary h5, .section-background--secondary h6 {
  color: var(--color-secondary-heading);
}
.section-background--secondary a {
  color: var(--color-secondary-link);
}
.section-background--secondary {
  background: radial-gradient(circle, #FFE67D 0%, #EBBF0A 100%);
  color: var(--color-secondary-text);
}
.section-background--secondary h1, .section-background--secondary .hero-title, .section-background--secondary h2, .section-background--secondary h3, .section-background--secondary h4, .section-background--secondary h5, .section-background--secondary h6 {
  color: var(--color-secondary-heading);
}
.section-background--secondary a {
  color: var(--color-secondary-link);
}
.section-background--muted-light {
  background-color: var(--color-muted-bg);
  color: var(--color-muted-light-text);
}
.section-background--muted-light h1, .section-background--muted-light .hero-title, .section-background--muted-light h2, .section-background--muted-light h3, .section-background--muted-light h4, .section-background--muted-light h5, .section-background--muted-light h6 {
  color: var(--color-muted-light-heading);
}
.section-background--muted-light a {
  color: var(--color-muted-light-link);
}
.section-background--muted-dark {
  background-color: var(--color-muted-dark);
  color: var(--color-muted-text);
}
.section-background--muted-dark h1, .section-background--muted-dark .hero-title, .section-background--muted-dark h2, .section-background--muted-dark h3, .section-background--muted-dark h4, .section-background--muted-dark h5, .section-background--muted-dark h6 {
  color: var(--color-muted-heading);
}
.section-background--muted-dark a {
  color: var(--color-muted-link);
}

/*
 * Buttons
 */
button {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
button:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

/*
 * Classe per link che devono essere stilati come pulsanti
 */
.link-button {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
.link-button:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

#footer .link-button {
  border-color: var(--zone-footer-color-fg);
}
#footer .link-button:hover {
  border-color: var(--zone-footer-color-fg);
  background-color: var(--zone-footer-color-fg);
  color: var(--zone-footer-color-bg);
}

/*
 * Magnific Popup buttons
 */
.mfp-wrap button {
  background: transparent;
  border-color: transparent;
  color: inherit;
}

input.button {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
input.button:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

.pup-prms .button.button-action {
  background: #dedede;
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
  color: black;
  border-radius: 100px;
}

ul,
ol {
  line-height: var(--line-height-base);
  padding: 0;
  margin-top: 0;
  margin-right: 0;
  margin-left: var(--size-space-base);
  margin-bottom: var(--size-space-base);
  list-style-position: outside;
}
ul ol, ul ul,
ol ol,
ol ul {
  margin-bottom: 0;
}
.field__body ul,
.field__body ol {
  list-style-position: inside;
  overflow: auto;
  margin-left: 0;
}
.field__body ul li,
.field__body ol li {
  margin-left: 1em;
  text-indent: -1em;
}

ul {
  list-style-type: disc;
}
ul ul {
  list-style-type: circle;
}
ul ul ul {
  list-style-type: square;
}

ol {
  list-style-type: decimal;
}
ol ol {
  list-style-type: lower-latin;
}
ol ol ol {
  list-style-type: lower-roman;
}

dl {
  line-height: var(--line-height-base);
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: var(--size-space-base);
}

dt {
  line-height: inherit;
  font-weight: bold;
}

dd {
  line-height: inherit;
  margin-top: 0;
  margin-left: var(--size-space-base);
  margin-right: 0;
  margin-bottom: var(--size-space-base);
}

ul.inline {
  list-style: none outside none;
  margin: 0;
  padding: 0;
}
ul.inline li {
  display: inline;
  margin: 0 var(--size-space-small)/2;
}
ul.inline li:first-child {
  margin-left: 0;
}
ul.inline li:last-child {
  margin-right: 0;
}

.view-list .item-list ul {
  list-style: none outside none;
  margin: 0;
  padding: 0;
}
.view-list .item-list ul li {
  margin: 0 0 1rem 0;
}

.text__caption {
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: #575757;
  margin-bottom: 0;
}
.text__caption p:last-child {
  margin-bottom: 0;
}
.text__credits, .field--name-field-media-source {
  margin-top: 0.5rem;
  font-size: 0.85rem;
  color: var(--color-muted);
  text-align: right;
  margin-bottom: 0;
}
.text__credits p:last-child, .field--name-field-media-source p:last-child {
  margin-bottom: 0;
}

/*
 * Common Fields
 */
.tag, .page-node-type-article #content-content .field--name-field-tags .field__item a, .page-node-type-product .field--name-field-product-category a {
  font-weight: normal;
  background: var(--color-primary);
  color: var(--color-white);
  padding: 4px 6px;
  display: inline-block;
}
.tag:hover, .page-node-type-article #content-content .field--name-field-tags .field__item a:hover, .page-node-type-product .field--name-field-product-category a:hover {
  background: var(--color-secondary);
}

.field__label {
  font-weight: bold;
}
.field__label:after {
  content: ": ";
}

.field--label-inline .field__label {
  display: inline;
}
.field--label-inline .field__item {
  display: inline;
}

.field__subtitle,
.field--name-field-block-subtitle {
  margin: 0 0 var(--size-space-base) 0;
  font-size: 1.5rem;
}
.field__subtitle h2,
.field--name-field-block-subtitle h2 {
  font-weight: bold;
}
.field__subtitle p:last-child,
.field--name-field-block-subtitle p:last-child {
  margin-bottom: 0;
}

/*
 * Product fields (teaser)
 */
.product--teaser {
  cursor: pointer;
}
.product--teaser .field--name-field-image {
  background: var(--color-black);
}
.product--teaser .field--name-field-image img {
  width: 100%;
  height: auto;
  transition: opacity 0.25s;
  box-shadow: #000 0 0 0;
}
.product--teaser:hover .field--name-field-image img {
  transition: opacity 0.25s ease-out;
  opacity: 0.7;
}
.product--teaser .field--name-node-title h2 {
  font-size: 1.5rem;
  color: var(--color-text);
  font-weight: bold;
}

/*
 * Product fields (full view)
 */
.page-node-type-product .field--name-field-product-category {
  text-align: center;
  margin-bottom: var(--size-space-base);
}
.page-node-type-product .field--name-field-product-category a {
  display: inline;
}

.field--name-field-introduction {
  font-size: 1.2em;
  margin-bottom: 1em;
}

.product-introduction .field--name-field-introduction {
  font-size: 1em;
}

/*
 * Blog fields (teaser)
 */
.blog--teaser {
  cursor: pointer;
  /*     font-size:0.9rem; */
}
.blog--teaser .field--name-field-media-image {
  background: var(--color-black);
}
.blog--teaser .field--name-field-media-image img {
  transition: opacity 0.25s ease-out;
  box-shadow: #000 0 0 0;
}
.blog--teaser:hover .field--name-field-media-image img {
  transition: opacity 0.25s ease-in;
  opacity: 0.7;
}
.blog--teaser .views-field-title h2 {
  font-size: 1.5rem;
  color: var(--color-text);
  font-weight: bold;
  margin: 0.5em 0;
}

/*
 * Blog fields (full view)
 */
.page-node-type-article #content-content .field--name-field-media-image {
  margin-bottom: var(--size-space-base);
}
.page-node-type-article #content-content .field--name-field-media-image img {
  width: 100%;
  height: auto;
}
.page-node-type-article #content-content .field--name-node-post-date {
  text-align: center;
}
.page-node-type-article #content-content .field--name-field-tags {
  text-align: center;
  margin-top: var(--size-space-base);
  margin-bottom: var(--size-space-base);
}
.page-node-type-article #content-content .field--name-field-tags .field__item {
  display: inline;
}
/* Campo "source" su Media Image */
.field--name-field-product-logo {
  margin-bottom: var(--size-space-base);
}

.field--name-field-kickertitle {
  font-size: 1.5em;
}

.page-node-type-product .field--name-field-featured-image img {
  width: 100%;
}

.field--name-field-product-logo .media--image picture img {
  width: auto;
}

.bibcite-links {
  background-position: center left;
  padding-left: 40px;
  background-repeat: no-repeat;
  background-image: url(../images/icons/icon-googlescholar.svg);
  margin-bottom: var(--size-space-small);
}

.field--name-field-paper-download .field__item {
  background-position: center left;
  padding-left: 30px;
  background-repeat: no-repeat;
  background-image: url(../images/icons/icon-pdf.svg);
  background-size: 24px 24px;
}

.bibcite-reference_rtf {
  background-position: center left;
  padding-left: 40px;
  background-repeat: no-repeat;
  background-image: url(../images/icons/icon-rtf.svg);
  margin-bottom: var(--size-space-small);
  line-height: var(--line-height-base);
}

.summary-rtf {
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../images/icons/icon-rtf.svg);
  padding: 8px;
}

.bibcite-keyword .field--name-name,
.bibcite-contributor .field--name-name {
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-headings);
  color: var(--color-heading);
  word-wrap: break-word;
  font-size: var(--font-size-h1);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.5em;
}

/*
 * Attachments field
 */
.field--name-field-attachments {
  margin-bottom: var(--size-space-big);
}
.field--name-field-attachments > .field__label {
  margin-bottom: var(--size-space-small);
  background-position: left center;
  background-repeat: no-repeat;
  padding-left: 20px;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCAxNCAxNyIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAtLjUpIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgo8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzgzLC0yMTMpIiBmaWxsPSIjMDAwIj4KPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzgzLDIxMy41KSI+CjxwYXRoIGQ9Im0xNCA2aC00di02aC02djZoLTRsNyA3em0tMTQgOXYyaDE0di0yeiIvPgo8L2c+CjwvZz4KPC9nPgo8L3N2Zz4K");
}
.field--name-field-attachments > .field__items > .field__item {
  margin-bottom: var(--size-space-small);
}

.messages {
  padding: var(--size-space-base);
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: var(--size-space-base);
  color: rgba(0, 0, 0, 0.87);
  background-color: #EEEEEE;
  border: 0;
  border-left: var(--size-corner-radius) solid #c8c8c8;
  border-radius: 0 var(--size-corner-radius) var(--size-corner-radius) 0;
  word-wrap: break-word;
}
.messages pre {
  border: 0;
}
.messages--warning {
  color: black;
  background-color: #fdf7c9;
  border-color: #faec7f;
}
.messages--warning pre {
  background-color: #fdf7c9;
  border-color: #faec7f;
}
.messages--error {
  color: white;
  background-color: #fd6b6b;
  border-color: #fc2020;
}
.messages--error pre {
  background-color: #fd6b6b;
  border-color: #fc2020;
}
.messages--status {
  color: black;
  background-color: #a7d89f;
  border-color: #75c269;
}
.messages--status pre {
  background-color: #a7d89f;
  border-color: #75c269;
}
.messages p:last-child {
  margin-bottom: 0;
}

ul.tabs {
  width: 100%;
  border-bottom: 1px solid var(--border-color);
  padding: 0;
  margin-left: 0;
  margin-right: 0;
  margin-top: var(--size-space-base);
  margin-bottom: var(--size-space-base);
}
ul.tabs .tabs__tab {
  display: inline-block;
}
ul.tabs .tabs__tab a {
  display: block;
  border: 1px solid var(--border-color);
  border-bottom: 0;
  border-radius: var(--size-corner-radius) var(--size-corner-radius) 0 0;
  padding: calc(var(--size-space-small) / 2) var(--size-space-small);
}
ul.tabs .tabs__tab a:hover {
  background: var(--color-muted-light);
  color: var(--color-muted-dark);
  border-color: var(--color-muted-light);
}
ul.tabs .tabs__tab--active a {
  background: var(--color-primary);
  color: var(--color-primary-text);
  border-color: var(--color-primary);
}

/*
 * Primary tabs
 */
/*
 * Secondary tabs
 */
/*
 * Layout builder Tabs section
 */
.tabs-region ul.tabs {
  display: grid;
  grid-auto-flow: column;
  grid-gap: calc(var(--size-space-small) / 2);
}
.tabs-region ul.tabs .tabs__tab a {
  height: 100%;
}
table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: var(--size-space-base);
}
table caption {
  caption-side: bottom;
  text-align: center;
}
table th {
  text-align: left;
  background-color: var(--color-primary);
  color: var(--color-primary-text);
  border-bottom: 1px solid var(--border-color);
  padding: calc(var(--size-space-small) / 2);
}
table th a {
  color: white;
}
table th a:hover {
  color: white;
}
table th ul {
  margin: 0;
}
table td {
  border-bottom: 1px solid var(--border-color);
  padding: calc(var(--size-space-small) / 2);
  vertical-align: middle;
}
table td ul {
  margin: 0;
}
table tbody tr:hover input {
  background-color: white;
}
table tbody tr:hover td {
  background-color: var(--color-muted-light);
}
table tr:nth-child(odd) td {
  background-color: var(--color-muted-lighter);
}

/* ---------------------------------------------------------------------------
 * Pager
 * --------------------------------------------------------------------------- */
.pager {
  margin-top: 2em;
  text-align: center;
}
.pager ul.pager__items {
  list-style: none outside none;
}
.pager ul.pager__items li.pager__item {
  display: inline;
  margin: 0 3px;
}
.pager ul.pager__items li.pager__item:first-child {
  margin-left: 0;
}
.pager ul.pager__items li.pager__item:last-child {
  margin-right: 0;
}
.pager ul.pager__items li.pager__item a {
  border: 1px solid var(--color-muted-light);
  border-radius: 4px;
  padding: 8px;
  line-height: 1em;
  display: inline-block;
  transition: all 0.25s ease-in;
}
.pager ul.pager__items li.pager__item a:hover {
  background-color: var(--color-primary);
  color: var(--color-primary-text);
  border-color: var(--color-primary);
  transition: all 0.25s ease-out;
}
.pager ul.pager__items li.pager__item.is-active a {
  background-color: var(--color-primary);
  color: var(--color-primary-text);
  border-color: var(--color-primary);
}

figure {
  margin-left: 0;
  margin-right: 0;
}

.circle img, .comment__meta img {
  border-radius: 999px;
}

.embedded-entity {
  margin-bottom: 1em;
}
.embedded-entity.align-left {
  margin-right: 1em;
}
.embedded-entity.align-right {
  margin-left: 1em;
}
.embedded-entity.align-center {
  text-align: center;
}

.media--image picture img {
  width: 100%;
}

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

form {
  margin: 0 0 calc(var(--size-space-base) / 2) 0;
}
form .captcha {
  margin-bottom: var(--size-space-base);
}

fieldset {
  border: 1px solid var(--border-color);
  border-radius: var(--size-corner-radius);
  padding: var(--form-item-padding);
  margin-bottom: var(--size-space-base);
}
fieldset legend {
  font-weight: bold;
  padding: 0 0.25rem;
}
fieldset > :last-child {
  margin-bottom: 0;
}

label {
  color: var(--color-black);
  display: inline-block;
  margin-bottom: 0.25rem;
}
label + label {
  margin-left: 1rem;
}
label.option {
  display: inline;
}

input[type=color],
input[type=date],
input[type=datetime-local],
input[type=email],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
select,
textarea {
  width: 100%;
  color: var(--color-black);
  background-color: transparent;
  border: 1px solid var(--border-color);
  border-radius: var(--size-corner-radius);
  box-shadow: none;
  height: auto;
  display: block;
  margin: 0;
  line-height: 26px;
  padding: 0.5rem;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: border-color;
  white-space: nowrap;
  -moz-appearance: none;
  -webkit-appearance: none;
  /*  &[readonly] {
      background-color: var(--input-readonly-bg-color);
    }*/
  /*  &[type="color"] {
      padding: .5rem;

      &::-webkit-color-swatch-wrapper {
        padding: 0;
      }

      &::-webkit-color-swatch {
        border: none;
        border-radius: var(--input-border-radius);
      }
    }*/
}
input[type=color]:focus,
input[type=date]:focus,
input[type=datetime-local]:focus,
input[type=email]:focus,
input[type=month]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
input[type=time]:focus,
input[type=url]:focus,
input[type=week]:focus,
select:focus,
textarea:focus {
  outline: none;
  border-color: var(--color-black);
}
input[type=color][disabled],
input[type=date][disabled],
input[type=datetime-local][disabled],
input[type=email][disabled],
input[type=month][disabled],
input[type=number][disabled],
input[type=password][disabled],
input[type=search][disabled],
input[type=tel][disabled],
input[type=text][disabled],
input[type=time][disabled],
input[type=url][disabled],
input[type=week][disabled],
select[disabled],
textarea[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

input[type=checkbox] {
  position: relative;
  top: 3px;
}

.form-item {
  margin: 0 0 var(--size-space-base)/2 0;
}
.form-item .description {
  font-size: 12px;
  line-height: 1.15em;
}

.form-submit {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
.form-submit:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

textarea {
  resize: none;
}

.form-required:after {
  content: " *";
  color: var(--color-red);
  font-weight: bold;
  position: relative;
  top: 0;
}

.form-item--error-message {
  color: var(--color-red);
}

/*
 * Cambio i colori dei form nel caso in cui lo sfondo sia scuro.
 * - Footer
 */
.site-footer fieldset {
  border: 1px solid var(--border-color);
}
.site-footer label {
  color: var(--color-white);
}
.site-footer input[type=color],
.site-footer input[type=date],
.site-footer input[type=datetime-local],
.site-footer input[type=email],
.site-footer input[type=month],
.site-footer input[type=number],
.site-footer input[type=password],
.site-footer input[type=search],
.site-footer input[type=tel],
.site-footer input[type=text],
.site-footer input[type=time],
.site-footer input[type=url],
.site-footer input[type=week],
.site-footer select,
.site-footer textarea {
  color: var(--color-white);
  border: 1px solid var(--border-color);
  background-color: transparent;
}
.site-footer input[type=color]:focus,
.site-footer input[type=date]:focus,
.site-footer input[type=datetime-local]:focus,
.site-footer input[type=email]:focus,
.site-footer input[type=month]:focus,
.site-footer input[type=number]:focus,
.site-footer input[type=password]:focus,
.site-footer input[type=search]:focus,
.site-footer input[type=tel]:focus,
.site-footer input[type=text]:focus,
.site-footer input[type=time]:focus,
.site-footer input[type=url]:focus,
.site-footer input[type=week]:focus,
.site-footer select:focus,
.site-footer textarea:focus {
  border-color: var(--color-white);
}
.site-footer .form-submit {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
.site-footer .form-submit:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}
.site-footer .form-submit input {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer .form-submit input[type=submit],
.site-footer .form-submit button {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer .form-submit input[type=submit]:hover,
.site-footer .form-submit button:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
.site-footer .form-submit .button > a {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer .form-submit .button > a:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}

/*
 * Footer form
 */
footer form textarea {
  max-height: 100px;
}

.form-item {
  margin-bottom: var(--size-space-small);
}

.form-actions {
  margin-top: var(--size-space-base);
}

.site-bottom {
  background-color: var(--color-primary);
}

.site-bottom .block-webform {
  padding: var(--size-space-big);
  background-color: var(--color-muted-light);
  margin: var(--size-space-big) auto;
  color: var(--color-heading);
}
.site-bottom .block-webform h1, .site-bottom .block-webform .hero-title, .site-bottom .block-webform h2, .site-bottom .block-webform h3, .site-bottom .block-webform h4, .site-bottom .block-webform h5, .site-bottom .block-webform h6 {
  color: var(--color-heading);
}
.site-bottom .block-webform .block-title {
  text-align: left;
  font-weight: 700;
  margin-bottom: 0.8em;
  color: #981617;
}
.site-bottom .block-webform .form {
  margin-bottom: 0;
}
.site-bottom .block-webform .form-item label {
  color: var(--color-black);
  font-weight: 700;
}
.site-bottom .block-webform .form-item label.option {
  font-weight: normal;
  padding-left: 6px;
}
.site-bottom .block-webform .form-item label.option.form-required a::after {
  content: " *";
  color: var(--color-red);
  font-weight: bold;
  position: relative;
  top: 0;
  text-decoration: none;
}
.site-bottom .block-webform .form-item input,
.site-bottom .block-webform .form-item textarea {
  background: white;
  border: 1px solid var(--color-gray-light);
}
.site-bottom .block-webform .form-actions {
  text-align: center;
  margin-bottom: var(--size-space-small);
}
.site-bottom .block-webform .form-actions .form-submit {
  background-color: var(--color-secondary);
  color: var(--color-primary);
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  border-color: var(--color-secondary);
  padding-left: var(--size-space-big);
  padding-right: var(--size-space-big);
}
.site-bottom .block-webform .form-actions .form-submit:hover {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
}
.site-bottom .block-webform .form-item-tos-privacy,
.site-bottom .block-webform .form-item-tos-marketing {
  display: grid;
  grid-template-columns: 30px auto;
  /*Hide the checkmark by default*/
  /*Undo on the checked state*/
  /*Adding focus styles on the outer-box of the fake checkbox*/
}
.site-bottom .block-webform .form-item-tos-privacy label,
.site-bottom .block-webform .form-item-tos-marketing label {
  position: relative;
  display: inline-block;
  margin-bottom: 0;
  line-height: 30px;
}
.site-bottom .block-webform .form-item-tos-privacy label:before, .site-bottom .block-webform .form-item-tos-privacy label:after,
.site-bottom .block-webform .form-item-tos-marketing label:before,
.site-bottom .block-webform .form-item-tos-marketing label:after {
  position: absolute;
  content: "";
  /*Needed for the line-height to take effect*/
  display: inline-block;
}
.site-bottom .block-webform .form-item-tos-privacy label:before,
.site-bottom .block-webform .form-item-tos-marketing label:before {
  /*Outer box of the fake checkbox*/
  height: 30px;
  width: 30px;
  border: 1px solid var(--color-gray-light);
  border-radius: var(--radius);
  left: -31px;
  top: 0;
  background: #fefefe;
}
.site-bottom .block-webform .form-item-tos-privacy label:after,
.site-bottom .block-webform .form-item-tos-marketing label:after {
  /*Checkmark of the fake checkbox*/
  height: 12px;
  width: 20px;
  border-left: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(-45deg);
  left: -25px;
  top: 5px;
}
.site-bottom .block-webform .form-item-tos-privacy input.form-checkbox,
.site-bottom .block-webform .form-item-tos-marketing input.form-checkbox {
  opacity: 0;
}
.site-bottom .block-webform .form-item-tos-privacy input[type=checkbox] + label::after,
.site-bottom .block-webform .form-item-tos-marketing input[type=checkbox] + label::after {
  content: none;
}
.site-bottom .block-webform .form-item-tos-privacy input[type=checkbox]:checked + label::after,
.site-bottom .block-webform .form-item-tos-marketing input[type=checkbox]:checked + label::after {
  content: "";
}
.site-bottom .block-webform .form-item-tos-privacy input[type=checkbox]:focus + label::before,
.site-bottom .block-webform .form-item-tos-marketing input[type=checkbox]:focus + label::before {
  outline: rgb(59, 153, 252) auto 5px;
}
.site-bottom .block-webform #edit-tos-policy {
  font-size: 13px;
  color: var(--color-muted-text);
}
.site-bottom .block-webform #edit-recaptcha-policy {
  position: relative;
  top: 30px;
  right: 0;
  font-size: 13px;
  color: var(--color-muted-text);
}
@media all and (min-width: max-width 767px) {
  .site-bottom .block-webform #edit-recaptcha-policy {
    top: 110px;
    right: -4rem;
  }
}
@media all and (min-width: max-width 1023px) {
  .site-bottom .block-webform #edit-recaptcha-policy {
    top: 65px;
    right: -2rem;
  }
}
@media all and (min-width: max-width 1919px) {
  .site-bottom .block-webform #edit-recaptcha-policy {
    top: 80px;
    right: -3rem;
  }
}
@media all and (min-width: 1920px) {
  .site-bottom .block-webform #edit-recaptcha-policy {
    top: 100px;
    right: -4rem;
  }
}
.site-bottom .block-webform #edit-recaptcha-policy p {
  text-align: right;
  line-height: 1em;
}
.site-bottom .block-webform #edit-recaptcha-policy p a {
  color: var(--color-muted-text);
}

.comment__wrapper {
  display: flex;
  max-width: 100%;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: var(--size-space-base);
  margin-bottom: var(--size-space-base);
}
.comment__meta {
  flex: 0 0 var(--size-space-big);
  padding-top: 0.5rem;
}
.comment__content {
  padding-left: var(--size-space-base);
}

.comment-section-title {
  text-align: center;
  padding: 0.25em;
  border-radius: var(--size-corner-radius);
  background-color: var(--color-muted-lighter);
}

/* ---------------------------------------------------------------------------
 * Reviews
 * --------------------------------------------------------------------------- */
.reviews .field--name-field-review-photo {
  padding: 0;
}
.reviews .field--name-field-review-rating {
  font-size: 30px;
  color: var(--color-stars);
  margin-bottom: 10px;
}
.reviews .comment__wrapper {
  flex-direction: column;
  padding-bottom: 0;
  border-bottom: 0;
}
.reviews .comment__submitted {
  margin-top: var(--size-space-base);
  padding-bottom: var(--size-space-base);
  border-bottom: 1px solid var(border-color);
}
.reviews .comment__submitted .comment__created {
  color: var(--color-muted);
  font-size: 0.8em;
}
.reviews .comment__submitted .comment__author {
  font-weight: bold;
  font-size: 1em;
  margin-bottom: var(--size-space-small);
}
.reviews .comment__submitted .comment__author .round-char {
  display: inline-block;
  width: 28px;
  height: 28px;
  line-height: 28px;
  background: #999;
  text-align: center;
  border-radius: 100%;
  color: white;
  margin-right: 4px;
}
.reviews .comment__content {
  padding: 0;
}
.reviews .comments__review .comment__content-head {
  display: block;
}
.reviews .comments__review .comment__content-head h3 {
  font-size: 1.2em;
  font-weight: bold;
  color: inherit;
  margin-top: 5px;
  margin-bottom: 5px;
}
.reviews .comments__review .comment__content-head h3 a {
  color: inherit;
}
.reviews p {
  text-align: left;
  margin-bottom: 5px;
}
.reviews .product--reviews-summary {
  border-bottom: 0;
}
@media screen and (min-width: 1024px) {
  .reviews .comments-list {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: var(--size-space-base);
  }
  .reviews .comment__submitted {
    padding-bottom: 0;
    border-bottom: 0;
  }
}

.field.field--name-field-media-oembed-video {
  width: 100%;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  margin: 0 auto;
}

@media all and (min-width: 768px) {
  .field.field--name-field-media-oembed-video {
    width: 60%;
    padding-bottom: 33.75%;
  }
}
.field.field--name-field-media-oembed-video iframe.media-oembed-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.6);
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.6);
}

/**
 * @file
 * Base styles for dropbuttons.
 */
/**
 * When a dropbutton has only one option, it is simply a button.
 */
.dropbutton-wrapper,
.dropbutton-wrapper div {
  box-sizing: border-box;
}

.js .dropbutton-wrapper,
.js .dropbutton-widget {
  position: relative;
  display: block;
}

@media screen and (max-width: 600px) {
  .js .dropbutton-wrapper {
    width: 100%;
  }
}
/* Splitbuttons */
@media screen and (min-width: 600px) {
  .form-actions .dropbutton-wrapper {
    float: left; /* LTR */
  }
  [dir=rtl] .form-actions .dropbutton-wrapper {
    float: right;
  }
}
.js .form-actions .dropbutton-widget {
  position: static;
}

.js td .dropbutton-widget {
  position: absolute;
}

.js td .dropbutton-wrapper {
  min-height: 2em;
}

.js td .dropbutton-multiple {
  max-width: 100%;
  margin-right: 2em; /* LTR */
  padding-right: 10em; /* LTR */
}

[dir=rtl].js td .dropbutton-multiple {
  margin-right: 0;
  margin-left: 2em;
  padding-right: 0;
  padding-left: 10em;
}

.js td .dropbutton-multiple .dropbutton-action a,
.js td .dropbutton-multiple .dropbutton-action input,
.js td .dropbutton-multiple .dropbutton-action button {
  width: auto;
}

/* UL styles are over-scoped in core, so this selector needs weight parity. */
.js .dropbutton-widget .dropbutton {
  overflow: hidden;
  margin: 0;
  padding: 0;
  list-style-type: none;
  list-style-image: none;
}

.js .dropbutton li,
.js .dropbutton a {
  display: block;
  outline: none;
}

.js .dropbutton li:hover,
.js .dropbutton li:focus,
.js .dropbutton a:hover,
.js .dropbutton a:focus {
  outline: initial;
}

/**
 * The dropbutton styling.
 *
 * A dropbutton is a widget that displays a list of action links as a button
 * with a primary action. Secondary actions are hidden behind a click on a
 * twisty arrow.
 *
 * The arrow is created using border on a zero-width, zero-height span.
 * The arrow inherits the link color, but can be overridden with border colors.
 */
.js .dropbutton-multiple .dropbutton-widget {
  padding-right: 2em; /* LTR */
}

.js[dir=rtl] .dropbutton-multiple .dropbutton-widget {
  padding-right: 0;
  padding-left: 2em;
}

.dropbutton-multiple.open,
.dropbutton-multiple.open .dropbutton-widget {
  max-width: none;
}

.dropbutton-multiple.open {
  z-index: 100;
}

.dropbutton-multiple .dropbutton .secondary-action {
  display: none;
}

.dropbutton-multiple.open .dropbutton .secondary-action {
  display: block;
}

.dropbutton-toggle {
  position: absolute;
  top: 0;
  right: 0; /* LTR */
  bottom: 0;
  display: block;
  width: 2em;
  white-space: nowrap;
  text-indent: 110%;
}

[dir=rtl] .dropbutton-toggle {
  right: auto;
  left: 0;
}

.dropbutton-toggle button {
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  cursor: pointer;
  border: 0;
  background: none;
}

.dropbutton-toggle button:hover,
.dropbutton-toggle button:focus {
  outline: initial;
}

.dropbutton-arrow {
  position: absolute;
  top: 50%;
  right: 40%; /* 0.6667em; */ /* LTR */
  display: block;
  overflow: hidden;
  width: 0;
  height: 0;
  margin-top: -0.1666em;
  border-width: 0.3333em 0.3333em 0;
  border-style: solid;
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-left-color: transparent;
  line-height: 0;
}

[dir=rtl] .dropbutton-arrow {
  right: auto;
  left: 0.6667em;
}

.dropbutton-multiple.open .dropbutton-arrow {
  top: 0.6667em;
  border-top-color: transparent;
  border-bottom: 0.3333em solid;
}

/**
 * @file
 * Visual styles for Bartik's dropbutton component.
 */
.js .dropbutton-widget {
  overflow: hidden;
  margin: 0.125em 0;
  cursor: pointer;
  text-align: center;
  color: #3a3a3a;
  border: 1px solid;
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
  border-radius: 1em;
  background-color: #fff;
  background-image: -webkit-linear-gradient(top, #f3f3f3, #e8e8e8);
  background-image: linear-gradient(to bottom, #f3f3f3, #e8e8e8);
}

.js .dropbutton-widget:hover {
  border-color: #e4e4e4 #d2d2d2 #b4b4b4 #d2d2d2;
}

.js .dropbutton-widget .button {
  margin: 0;
  padding: 0.32em 1em;
  border: none;
  background: transparent none;
}

.js .dropbutton-multiple .dropbutton-widget,
.js[dir=rtl] .dropbutton-multiple .dropbutton-widget {
  padding: 0;
}

.js .dropbutton-multiple .dropbutton-widget .dropbutton {
  position: relative;
  padding-right: 2em; /* LTR */
}

.js[dir=rtl] .dropbutton-multiple .dropbutton-widget .dropbutton {
  padding-right: 0;
  padding-left: 2em;
}

.js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-right: 0; /* LTR */
}

[dir=rtl].js .dropbutton-multiple .dropbutton-widget .dropbutton-action a {
  margin-left: 0;
}

.js .dropbutton .secondary-action {
  border-top-color: #ccc;
}

.js .dropbutton-toggle button {
  background-color: #e8e8e8;
  background-image: -webkit-linear-gradient(top, #e8e8e8, #d2d2d2);
  background-image: linear-gradient(to bottom, #e8e8e8, #d2d2d2);
}

.js .dropbutton-toggle .dropbutton-arrow:hover {
  background: #ccc;
}

.js .dropbutton a {
  color: #3a3a3a;
  border-bottom: 0 none;
}

.js .dropbutton .dropbutton-action:hover,
.js .dropbutton a:hover {
  border-bottom: 0 none;
  background: #dedede;
}

.dropbutton {
  text-align: left;
}
.dropbutton li a {
  font-size: 14px;
  padding: 4px 8px;
}

/*
 * Site roof
 */
.site-roof {
  background: var(--zone-roof-color-bg);
  color: var(--zone-roof-color-fg);
  position: relative;
  height: var(--zone-roof-height);
  line-height: var(--zone-roof-height);
  font-size: 0.75rem;
  display: flex;
  align-items: center;
}
.site-roof a {
  color: var(--zone-roof-color-link);
}
.site-roof:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-roof .paragraph__pp-section--content {
  position: relative;
}
.site-roof h1, .site-roof .hero-title,
.site-roof h2,
.site-roof h3,
.site-roof h4,
.site-roof h5,
.site-roof h6 {
  color: var(--zone-roof-color-heading);
}
.site-roof h1 a, .site-roof .hero-title a,
.site-roof h2 a,
.site-roof h3 a,
.site-roof h4 a,
.site-roof h5 a,
.site-roof h6 a {
  color: var(--zone-roof-color-heading);
}
.site-roof cite {
  color: var(--zone-roof-color-fg);
}
.site-roof blockquote {
  color: var(--zone-roof-color-fg);
}
.site-roof .text__credits, .site-roof .field--name-field-media-source,
.site-roof .text__caption {
  color: var(--zone-roof-color-fg);
}
.site-roof .feature__content--subtitle:after {
  background: var(--zone-roof-color-fg);
}
.site-roof .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-roof-color-fg);
}
.site-roof input[type=color],
.site-roof input[type=date],
.site-roof input[type=datetime-local],
.site-roof input[type=email],
.site-roof input[type=month],
.site-roof input[type=number],
.site-roof input[type=password],
.site-roof input[type=search],
.site-roof input[type=tel],
.site-roof input[type=text],
.site-roof input[type=time],
.site-roof input[type=url],
.site-roof input[type=week],
.site-roof select,
.site-roof textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.site-roof .l__column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.site-roof p {
  margin: 0;
}
.site-roof .pup-logo img {
  height: var(--size-logo-pup-height);
}

/*
 * Site header
 * - logo
 * - menu (menu region)
 * - cta (header region)
 * - tools (search+hamburger buttons)
 */
.site-header {
  transition-duration: 0.5s;
  transition-property: opacity, color, height, transform;
  position: relative;
  z-index: 101;
  /* ----------------------------
   * Header colors and background
   * ---------------------------- */
  background: var(--zone-header-color-bg);
  color: var(--zone-header-color-fg);
  position: relative;
  /* -----------------------------
   * Header positioning and height
   * ----------------------------- */
  height: var(--size-header-height);
  transition-duration: 0.5s;
  transition-property: opacity, color, height;
  /* ----------------------
   * Header content styling
   * ---------------------- */
}
.site-header a {
  color: var(--zone-header-color-link);
}
.site-header:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-header .paragraph__pp-section--content {
  position: relative;
}
.site-header h1, .site-header .hero-title,
.site-header h2,
.site-header h3,
.site-header h4,
.site-header h5,
.site-header h6 {
  color: var(--zone-header-color-heading);
}
.site-header h1 a, .site-header .hero-title a,
.site-header h2 a,
.site-header h3 a,
.site-header h4 a,
.site-header h5 a,
.site-header h6 a {
  color: var(--zone-header-color-heading);
}
.site-header cite {
  color: var(--zone-header-color-fg);
}
.site-header blockquote {
  color: var(--zone-header-color-fg);
}
.site-header .text__credits, .site-header .field--name-field-media-source,
.site-header .text__caption {
  color: var(--zone-header-color-fg);
}
.site-header .feature__content--subtitle:after {
  background: var(--zone-header-color-fg);
}
.site-header .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-header-color-fg);
}
.site-header input[type=color],
.site-header input[type=date],
.site-header input[type=datetime-local],
.site-header input[type=email],
.site-header input[type=month],
.site-header input[type=number],
.site-header input[type=password],
.site-header input[type=search],
.site-header input[type=tel],
.site-header input[type=text],
.site-header input[type=time],
.site-header input[type=url],
.site-header input[type=week],
.site-header select,
.site-header textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.settings-header-transparent .site-header {
  background: var(--zone-header-transparent-color-bg);
  color: var(--zone-header-transparent-color-fg);
}
.settings-header-transparent .site-header a {
  color: var(--zone-header-transparent-color-link);
}
.no-hero .site-header, .scroll--main.settings-header-transparent .site-header {
  background: var(--zone-header-color-bg);
  color: var(--zone-header-color-fg);
}
.no-hero .site-header a, .scroll--main.settings-header-transparent .site-header a {
  color: var(--zone-header-color-link);
}
.settings-header-fixed .site-header {
  width: 100%;
}
.scroll--fixed .site-header {
  position: fixed;
  top: 0;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
}
.scroll--fixed.toolbar-horizontal.toolbar-tray-open .site-header {
  top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
}
.scroll--fixed.gin--horizontal-toolbar.toolbar-horizontal.toolbar-tray-open .site-header {
  top: calc(var(--drupal-toolbar-gin-height));
}
.scroll--main .site-header {
  transition-duration: 0.5s;
  transition-property: opacity, color, height transform;
  height: var(--size-header-height-fixed);
}
.scroll--main .site-header:after {
  position: absolute;
  right: 0;
  content: "";
  width: 100%;
  height: 0;
  border-bottom: 1px solid var(--border-color);
}
.site-header__branding .block-pup-branding {
  display: flex;
}
.site-header__branding .site-logo {
  display: block;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  overflow: hidden;
  width: var(--size-logo-width);
  height: var(--size-logo-height);
  transition-duration: 0.5s;
  transition-property: width, height;
  /*
  img{
    transition:all 0.5s;
    height:120px;
    .scroll--main &{
      height: 40px;
    }
  }
  */
}
.scroll--main .site-header__branding .site-logo {
  transition-duration: 0.5s;
  transition-property: width, height;
  width: var(--size-logo-width-scroll);
  height: var(--size-logo-height-scroll);
}
.site-header__branding .site-logo img {
  height: 100%;
}
.site-header__cta p {
  margin: 0;
}
.site-header__tools {
  margin-left: calc(var(--size-space-base) / 2);
  z-index: 1;
}

/*
 * Site hero
 */
.scroll--fixed .site-hero {
  margin-top: var(--size-header-height);
}
.settings-header-transparent .site-hero {
  margin-top: calc(-1 * var(--size-header-height));
}
.settings-header-transparent.scroll--fixed .site-hero {
  margin-top: 0;
}

/*
 * Site featured
 */
.site-featured {
  background: red;
  background: var(--zone-featured-color-bg);
  color: var(--zone-featured-color-fg);
  position: relative;
}
.site-featured a {
  color: var(--zone-featured-color-link);
}
.site-featured:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-featured .paragraph__pp-section--content {
  position: relative;
}
.site-featured h1, .site-featured .hero-title,
.site-featured h2,
.site-featured h3,
.site-featured h4,
.site-featured h5,
.site-featured h6 {
  color: var(--zone-featured-color-heading);
}
.site-featured h1 a, .site-featured .hero-title a,
.site-featured h2 a,
.site-featured h3 a,
.site-featured h4 a,
.site-featured h5 a,
.site-featured h6 a {
  color: var(--zone-featured-color-heading);
}
.site-featured cite {
  color: var(--zone-featured-color-fg);
}
.site-featured blockquote {
  color: var(--zone-featured-color-fg);
}
.site-featured .text__credits, .site-featured .field--name-field-media-source,
.site-featured .text__caption {
  color: var(--zone-featured-color-fg);
}
.site-featured .feature__content--subtitle:after {
  background: var(--zone-featured-color-fg);
}
.site-featured .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-featured-color-fg);
}
.site-featured input[type=color],
.site-featured input[type=date],
.site-featured input[type=datetime-local],
.site-featured input[type=email],
.site-featured input[type=month],
.site-featured input[type=number],
.site-featured input[type=password],
.site-featured input[type=search],
.site-featured input[type=tel],
.site-featured input[type=text],
.site-featured input[type=time],
.site-featured input[type=url],
.site-featured input[type=week],
.site-featured select,
.site-featured textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}

/*
 * Site breadcrumb
 */
.site-breadcrumb {
  background: var(--color-primary);
  color: var(--color-primary-text);
  padding: 0.5em 0;
}
.site-breadcrumb ol {
  list-style: none outside none;
  margin: 0;
  padding: 0;
}
.site-breadcrumb ol li {
  display: inline-block;
  margin: 0 0.5em 0 0;
}
.site-breadcrumb ol li a {
  display: inline-block;
  color: var(--color-primary-link);
}

#page {
  position: relative;
}

/*
 * Site main
 * - sidebar first
 * - content
 *   - preface
 *   - content
 *   - postscript
 * - sidebar last
 */
.no-hero.scroll--fixed .site-main {
  padding-top: var(--size-header-height);
}
/*
 * Site floor
 */
.site-floor {
  padding: var(--size-space-big) var(--size-space-base);
  background: var(--zone-floor-color-bg);
  color: var(--zone-floor-color-fg);
  position: relative;
  font-size: 1rem;
}
.site-floor a {
  color: var(--zone-floor-color-link);
}
.site-floor:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-floor .paragraph__pp-section--content {
  position: relative;
}
.site-floor h1, .site-floor .hero-title,
.site-floor h2,
.site-floor h3,
.site-floor h4,
.site-floor h5,
.site-floor h6 {
  color: var(--zone-floor-color-heading);
}
.site-floor h1 a, .site-floor .hero-title a,
.site-floor h2 a,
.site-floor h3 a,
.site-floor h4 a,
.site-floor h5 a,
.site-floor h6 a {
  color: var(--zone-floor-color-heading);
}
.site-floor cite {
  color: var(--zone-floor-color-fg);
}
.site-floor blockquote {
  color: var(--zone-floor-color-fg);
}
.site-floor .text__credits, .site-floor .field--name-field-media-source,
.site-floor .text__caption {
  color: var(--zone-floor-color-fg);
}
.site-floor .feature__content--subtitle:after {
  background: var(--zone-floor-color-fg);
}
.site-floor .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-floor-color-fg);
}
.site-floor input[type=color],
.site-floor input[type=date],
.site-floor input[type=datetime-local],
.site-floor input[type=email],
.site-floor input[type=month],
.site-floor input[type=number],
.site-floor input[type=password],
.site-floor input[type=search],
.site-floor input[type=tel],
.site-floor input[type=text],
.site-floor input[type=time],
.site-floor input[type=url],
.site-floor input[type=week],
.site-floor select,
.site-floor textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.site-floor input {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-floor input[type=submit],
.site-floor button {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-floor input[type=submit]:hover,
.site-floor button:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
.site-floor .button > a {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-floor .button > a:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
@media screen and (max-width: 767px) {
  .site-floor .block {
    margin-bottom: var(--size-space-base);
  }
}
@media all and (max-width: 768px) {
  .site-floor .grid-2-columns {
    display: grid;
    grid-template-columns: 3fr 1fr;
    grid-column-gap: var(--size-space-base);
    font-size: 14px;
  }
}
.site-floor .block-footercopyright {
  line-height: 1.5;
}

/*
 * Site footer
 */
.site-footer {
  padding: var(--size-space-big) 0;
  background: var(--zone-footer-color-bg);
  color: var(--zone-footer-color-fg);
  position: relative;
}
.site-footer a {
  color: var(--zone-footer-color-link);
}
.site-footer:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-footer .paragraph__pp-section--content {
  position: relative;
}
.site-footer h1, .site-footer .hero-title,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer h5,
.site-footer h6 {
  color: var(--zone-footer-color-heading);
}
.site-footer h1 a, .site-footer .hero-title a,
.site-footer h2 a,
.site-footer h3 a,
.site-footer h4 a,
.site-footer h5 a,
.site-footer h6 a {
  color: var(--zone-footer-color-heading);
}
.site-footer cite {
  color: var(--zone-footer-color-fg);
}
.site-footer blockquote {
  color: var(--zone-footer-color-fg);
}
.site-footer .text__credits, .site-footer .field--name-field-media-source,
.site-footer .text__caption {
  color: var(--zone-footer-color-fg);
}
.site-footer .feature__content--subtitle:after {
  background: var(--zone-footer-color-fg);
}
.site-footer .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-footer-color-fg);
}
.site-footer input[type=color],
.site-footer input[type=date],
.site-footer input[type=datetime-local],
.site-footer input[type=email],
.site-footer input[type=month],
.site-footer input[type=number],
.site-footer input[type=password],
.site-footer input[type=search],
.site-footer input[type=tel],
.site-footer input[type=text],
.site-footer input[type=time],
.site-footer input[type=url],
.site-footer input[type=week],
.site-footer select,
.site-footer textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.site-footer input {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer input[type=submit],
.site-footer button {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer input[type=submit]:hover,
.site-footer button:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
.site-footer .button > a {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.site-footer .button > a:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
@media screen and (max-width: 767px) {
  .site-footer .block {
    margin-bottom: var(--size-space-base);
  }
}
.site-footer .journal-logo {
  height: 64px;
  display: inline-block;
  margin-bottom: 1em;
  margin-bottom: var(--size-space-small);
}
.site-footer .footer-logo {
  height: 64px;
  display: inline-block;
  margin-bottom: 1em;
  margin-bottom: var(--size-space-small);
}
.site-footer-columns {
  display: grid;
  grid-template-columns: 1fr;
  grid-column-gap: var(--size-space-base);
}
@media screen and (min-width: 768px) {
  .footer-columns--2 .site-footer-columns {
    grid-template-columns: 1fr 1fr;
  }
  .footer-columns--2 .site-footer-columns .region:nth-child(1) {
    text-align: left;
  }
  .footer-columns--2 .site-footer-columns .region:nth-child(2) {
    text-align: right;
  }
  .footer-columns--3 .site-footer-columns {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .footer-columns--3 .site-footer-columns .region:nth-child(1) {
    text-align: left;
  }
  .footer-columns--3 .site-footer-columns .region:nth-child(2) {
    text-align: center;
  }
  .footer-columns--3 .site-footer-columns .region:nth-child(3) {
    text-align: right;
  }
}

/*
 * Site socket
 */
.site-socket {
  padding: var(--size-space-base) 0;
  background: var(--zone-socket-color-bg);
  color: var(--zone-socket-color-fg);
  position: relative;
  font-size: 0.75em;
}
.site-socket a {
  color: var(--zone-socket-color-link);
}
.site-socket:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.site-socket .paragraph__pp-section--content {
  position: relative;
}
.site-socket h1, .site-socket .hero-title,
.site-socket h2,
.site-socket h3,
.site-socket h4,
.site-socket h5,
.site-socket h6 {
  color: var(--zone-socket-color-heading);
}
.site-socket h1 a, .site-socket .hero-title a,
.site-socket h2 a,
.site-socket h3 a,
.site-socket h4 a,
.site-socket h5 a,
.site-socket h6 a {
  color: var(--zone-socket-color-heading);
}
.site-socket cite {
  color: var(--zone-socket-color-fg);
}
.site-socket blockquote {
  color: var(--zone-socket-color-fg);
}
.site-socket .text__credits, .site-socket .field--name-field-media-source,
.site-socket .text__caption {
  color: var(--zone-socket-color-fg);
}
.site-socket .feature__content--subtitle:after {
  background: var(--zone-socket-color-fg);
}
.site-socket .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-socket-color-fg);
}
.site-socket input[type=color],
.site-socket input[type=date],
.site-socket input[type=datetime-local],
.site-socket input[type=email],
.site-socket input[type=month],
.site-socket input[type=number],
.site-socket input[type=password],
.site-socket input[type=search],
.site-socket input[type=tel],
.site-socket input[type=text],
.site-socket input[type=time],
.site-socket input[type=url],
.site-socket input[type=week],
.site-socket select,
.site-socket textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.site-socket p:last-child {
  margin-bottom: 0;
}
.site-socket .region {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.copyright-logo {
  width: 140px;
  margin-bottom: 10px;
}

.credits {
  font-size: 12px;
}
.credits a {
  color: #666;
}

/*
 * Site offcanvas
 */
.settings-offcanvas-style--panel .site-offcanvas {
  height: 100vh;
  position: fixed;
  top: 0;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
  overflow: auto;
  /*
  * Lo z-index serve per star sopra alla pagina ed anche ai contextual-links di Drupal, slider ecc.
  * Tra l'altro, siccome clono il menu principale, mi porto dietro anche gli ID e gli eventi
  * bindati al menu, compreso il contextual link, quindi con lo z-index 500 nascondo il contextual link del
  * menu dell'header quando sono con il menu off canvas aperto e ci passo sopra con il mouse (:hover).
  */
  z-index: 500;
  width: var(--size-offcanvas);
}
.settings-offcanvas-style--panel .site-offcanvas__header {
  height: var(--size-header-height);
  background-color: var(--zone-offcanvas-color-bg);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: var(--max-width-base);
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
  margin-left: auto;
  margin-right: auto;
}
.scroll--main .settings-offcanvas-style--panel .site-offcanvas__header {
  height: var(--size-header-height-fixed);
}
.settings-offcanvas-style--panel .site-offcanvas__header .l__column {
  padding-left: 0;
  padding-right: 0;
}
.settings-offcanvas-style--panel .site-offcanvas__inner {
  background: var(--zone-offcanvas-color-bg);
  color: var(--zone-offcanvas-color-fg);
  position: relative;
  height: 100vh;
  overflow: scroll;
}
.settings-offcanvas-style--panel .site-offcanvas__inner a {
  color: var(--zone-offcanvas-color-link);
}
.settings-offcanvas-style--panel .site-offcanvas__inner:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.05) 100%);
  pointer-events: none;
}
.settings-offcanvas-style--panel .site-offcanvas__inner .paragraph__pp-section--content {
  position: relative;
}
.settings-offcanvas-style--panel .site-offcanvas__inner h1, .settings-offcanvas-style--panel .site-offcanvas__inner .hero-title,
.settings-offcanvas-style--panel .site-offcanvas__inner h2,
.settings-offcanvas-style--panel .site-offcanvas__inner h3,
.settings-offcanvas-style--panel .site-offcanvas__inner h4,
.settings-offcanvas-style--panel .site-offcanvas__inner h5,
.settings-offcanvas-style--panel .site-offcanvas__inner h6 {
  color: var(--zone-offcanvas-color-heading);
}
.settings-offcanvas-style--panel .site-offcanvas__inner h1 a, .settings-offcanvas-style--panel .site-offcanvas__inner .hero-title a,
.settings-offcanvas-style--panel .site-offcanvas__inner h2 a,
.settings-offcanvas-style--panel .site-offcanvas__inner h3 a,
.settings-offcanvas-style--panel .site-offcanvas__inner h4 a,
.settings-offcanvas-style--panel .site-offcanvas__inner h5 a,
.settings-offcanvas-style--panel .site-offcanvas__inner h6 a {
  color: var(--zone-offcanvas-color-heading);
}
.settings-offcanvas-style--panel .site-offcanvas__inner cite {
  color: var(--zone-offcanvas-color-fg);
}
.settings-offcanvas-style--panel .site-offcanvas__inner blockquote {
  color: var(--zone-offcanvas-color-fg);
}
.settings-offcanvas-style--panel .site-offcanvas__inner .text__credits, .settings-offcanvas-style--panel .site-offcanvas__inner .field--name-field-media-source,
.settings-offcanvas-style--panel .site-offcanvas__inner .text__caption {
  color: var(--zone-offcanvas-color-fg);
}
.settings-offcanvas-style--panel .site-offcanvas__inner .feature__content--subtitle:after {
  background: var(--zone-offcanvas-color-fg);
}
.settings-offcanvas-style--panel .site-offcanvas__inner .paragraph__pp-progress-bar .bar-progress-wrap .bar-progress {
  background-color: var(--zone-offcanvas-color-fg);
}
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=color],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=date],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=datetime-local],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=email],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=month],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=number],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=password],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=search],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=tel],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=text],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=time],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=url],
.settings-offcanvas-style--panel .site-offcanvas__inner input[type=week],
.settings-offcanvas-style--panel .site-offcanvas__inner select,
.settings-offcanvas-style--panel .site-offcanvas__inner textarea {
  background-color: rgba(255, 255, 255, 0.85);
  color: black;
}
.settings-offcanvas-style--panel .site-offcanvas__inner:before {
  display: none;
}

.settings-offcanvas-style--panel.settings-offcanvas-position--left .site-offcanvas {
  left: 0;
  transform: translateX(var(--size-offcanvas-neg));
}

.settings-offcanvas-style--panel.settings-offcanvas-position--right .site-offcanvas {
  right: 0;
  transform: translateX(100%);
}

.settings-offcanvas-style--panel .site-offcanvas {
  transition: transform 0.5s;
}

.settings-offcanvas-style--panel.offcanvas-enabled {
  position: fixed;
  width: 100%;
  min-height: 100vh;
  top: 0;
  left: 0;
  overflow-y: scroll !important;
}
.settings-offcanvas-style--panel.offcanvas-enabled.settings-offcanvas-position--left .site-offcanvas {
  transform: translateX(0);
}
.settings-offcanvas-style--panel.offcanvas-enabled.settings-offcanvas-position--right .site-offcanvas {
  transform: translateX(0);
}
.settings-offcanvas-style--panel.offcanvas-enabled #header {
  pointer-events: none;
}
.settings-offcanvas-style--panel.offcanvas-enabled #header:after {
  border-bottom: 0;
}
.settings-offcanvas-style--panel.offcanvas-enabled:before {
  content: "";
  background: black;
  opacity: 0.75;
  transition: opacity 0.5s;
  position: fixed;
  -webkit-transform: translate3d(0, 0, 0);
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  height: 100%;
  width: 100vw;
  z-index: 102;
}
.settings-offcanvas-style--panel.offcanvas-enabled .dialog-off-canvas-main-canvas {
  overflow: hidden;
}

.settings-offcanvas-style--panel.toolbar-tray-open.toolbar-fixed.toolbar-horizontal .site-offcanvas {
  padding-top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
}
.settings-offcanvas-style--panel.toolbar-tray-open.toolbar-fixed.toolbar-vertical .site-offcanvas {
  padding-top: var(--drupal-toolbar-bar-height);
}
.settings-offcanvas-style--panel.toolbar-tray-open.toolbar-fixed.has-roof.toolbar-horizontal .site-offcanvas {
  padding-top: calc(var(--zone-roof-height) + var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
}
.settings-offcanvas-style--panel.toolbar-tray-open.toolbar-fixed.has-roof.toolbar-vertical .site-offcanvas {
  padding-top: calc(var(--zone-roof-height) + var(--drupal-toolbar-bar-height));
}

.settings-offcanvas-style--panel.toolbar-vertical .site-offcanvas {
  padding-top: var(--drupal-toolbar-bar-height);
}

.settings-offcanvas-style--panel #offcanvas {
  overflow: hidden;
}

.settings-offcanvas-style--panel #offcanvas-content {
  padding: var(--size-space-base);
}
.settings-offcanvas-style--panel #offcanvas-content ul.menu {
  margin: 0 0 var(--size-space-base) 0;
  padding: 0;
  list-style: none outside none;
}
.settings-offcanvas-style--panel #offcanvas-content ul.menu li span,
.settings-offcanvas-style--panel #offcanvas-content ul.menu li a {
  display: block;
  padding: var(--size-space-small);
  border-bottom: 1px solid var(--border-color);
}
.settings-offcanvas-style--panel #offcanvas-content ul.menu li a:hover {
  background: #ccc;
}
.settings-offcanvas-style--panel #offcanvas-content ul.menu li ul {
  margin: 0;
  padding-left: var(--size-space-base);
}
.settings-offcanvas-style--overlay #offcanvas {
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.85);
  color: white;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.5s ease-in;
  z-index: 1000;
}
.settings-offcanvas-style--overlay.offcanvas-enabled {
  width: 100%;
  min-height: 100vh;
  top: 0;
  left: 0;
  overflow-y: auto;
}
.settings-offcanvas-style--overlay.offcanvas-enabled .dialog-off-canvas-main-canvas {
  overflow: hidden;
}
.settings-offcanvas-style--overlay.offcanvas-enabled #offcanvas {
  opacity: 1;
  transition: opacity 0.5s ease-out;
  pointer-events: all;
}

/*
 * Site search Block
 * used in many context:
 * - popup
 * - search page
 * - offcanvas menu
 */
.block-search form {
  display: flex;
  margin-bottom: 0;
}
.block-search form .form-item-search-api-fulltext {
  margin-right: 10px;
}
.block-search form .form-actions {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
}
.block-search form .form-item {
  display: block;
  margin-bottom: 0;
  float: left;
}
.block-search form .form-actions {
  float: right;
  display: block;
  margin-left: 1rem;
  margin-top: calc(1em + 0.25rem);
}

#block-search-form-page {
  margin-top: var(--size-space-big);
  margin-bottom: var(--size-space-big);
  display: flex;
  justify-content: center;
}

/*
 * Site search Page
 */
.site-search .item-list ul {
  margin: 0;
}
.site-search .item-list ul li.views-row {
  display: grid;
  grid-template-columns: 100px auto;
  grid-template-rows: auto 1fr;
  gap: 0 var(--size-space-small);
  grid-template-areas: "image title" "image summary";
  margin-bottom: var(--size-space-base);
}
@media screen and (min-width: 768px) {
  .site-search .item-list ul li.views-row {
    grid-template-columns: 100px auto;
  }
}
.site-search .item-list ul li.views-row .views-field-field-featured-image {
  grid-area: image;
}
.site-search .item-list ul li.views-row .views-field-title {
  grid-area: title;
  font-size: 1.25em;
  font-weight: bold;
}
.site-search .item-list ul li.views-row .views-field-title .field-content {
  display: block;
  line-height: 1em;
}
.site-search .item-list ul li.views-row .views-field-field-summary {
  grid-area: summary;
  font-size: 0.85em;
}

/*
 * Search Block (popup)
 */
#search {
  overflow: hidden;
  height: 0;
  opacity: 0;
}

.search-enabled #search {
  width: calc(100vw - var(--header-button-menu-height) * 3 - 30px);
  left: var(--size-space-base);
  height: var(--size-header-height);
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  opacity: 1;
  overflow-x: hidden;
  overflow-y: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media all and (min-width: 480px) {
  .search-enabled #search {
    width: calc(100vw - var(--header-button-menu-height) * 3 - 50px);
  }
}
@media all and (min-width: 768px) {
  .search-enabled #search {
    width: calc(100vw - var(--header-button-menu-height) * 3 - 75px);
  }
}
@media all and (min-width: 1024px) {
  .search-enabled #search {
    width: calc(100vw - var(--header-button-menu-height) * 3 - 30px);
  }
}
.search-enabled #search .region {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.search-enabled #search .region .block-exposedformsearchsearch-page,
.search-enabled #search .region .block-searchform {
  width: 100%;
  height: 100%;
  margin: 0;
  background: white;
  position: relative;
  display: flex;
  justify-content: center;
  text-align: left;
}
.search-enabled #search .region .block-exposedformsearchsearch-page form,
.search-enabled #search .region .block-searchform form {
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 54px;
  width: 100%;
  align-items: center;
  grid-gap: 0.5rem;
}
.search-enabled #search .region .block-exposedformsearchsearch-page form .form-item,
.search-enabled #search .region .block-searchform form .form-item {
  margin-bottom: 0;
}
.search-enabled #search .region .block-exposedformsearchsearch-page form .form-actions,
.search-enabled #search .region .block-searchform form .form-actions {
  margin: 0;
}
.search-enabled #search .region .block-exposedformsearchsearch-page form .form-actions input,
.search-enabled #search .region .block-searchform form .form-actions input {
  width: 100%;
  text-align: center;
  padding-left: 0;
  padding-right: 0;
  font-size: 0.85rem;
  border-color: var(--color-black);
  color: var(--color-black);
}
.search-enabled #search .region .block-exposedformsearchsearch-page form .form-actions input:hover,
.search-enabled #search .region .block-searchform form .form-actions input:hover {
  color: var(--color-white);
}

.search-enabled.settings-header-opaque #search {
  top: 0;
}

.search-enabled.settings-header-opaque.has-roof #search {
  top: calc(var(--zone-roof-height));
}

.search-enabled.settings-header-opaque.toolbar-fixed #search {
  top: calc(var(--drupal-toobar-bar-height));
}

.search-enabled.settings-header-opaque.toolbar-fixed.has-roof #search {
  top: calc(var(--drupal-toolbar-bar-height) + var(--zone-roof-height));
}

.search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open #search {
  top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
}

.search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof #search {
  top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height) + var(--zone-roof-height));
}

.search-enabled.settings-header-opaque.has-roof.scroll--fixed #search {
  top: 0;
}

.search-enabled.settings-header-opaque.toolbar-fixed.has-roof.scroll--fixed #search {
  top: var(--drupal-toolbar-bar-height);
}

.search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof.scroll--fixed #search {
  top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
}

@media all and (min-width: 768px) {
  .search-enabled #search .region .block-exposedformsearchsearch-page form,
.search-enabled #search .region .block-searchform form {
    grid-template-columns: 1fr 100px;
    grid-gap: 1rem;
  }
  .search-enabled #search .region .block-exposedformsearchsearch-page form .form-actions input,
.search-enabled #search .region .block-searchform form .form-actions input {
    font-size: 1rem;
  }
}
@media all and (min-width: 1024px) {
  .search-enabled.settings-header-opaque #search {
    top: 0;
  }
  .search-enabled.settings-header-opaque.has-roof #search {
    top: calc(var(--zone-roof-height));
  }
  .search-enabled.settings-header-opaque.toolbar-fixed #search {
    top: calc(var(--drupal-toobar-bar-height));
  }
  .search-enabled.settings-header-opaque.toolbar-fixed.has-roof #search {
    top: calc(var(--drupal-toolbar-bar-height) + var(--zone-roof-height));
  }
  .search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open #search {
    top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
  }
  .search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof #search {
    top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height) + var(--zone-roof-height));
  }
  .search-enabled.settings-header-opaque.has-roof.scroll--fixed #search {
    top: 0;
  }
  .search-enabled.settings-header-opaque.toolbar-fixed.has-roof.scroll--fixed #search {
    top: var(--drupal-toolbar-bar-height);
  }
  .search-enabled.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof.scroll--fixed #search {
    top: calc(var(--drupal-toolbar-bar-height) + var(--drupal-toolbar-tray-height));
  }
  .search-enabled #search .region .block-exposedformsearchsearch-page form,
.search-enabled #search .region .block-searchform form {
    grid-template-columns: 1fr 200px;
  }
}
.section-style--mobile-carousel .owl-carousel .owl-nav {
  left: 0;
}
.section-style--mobile-carousel .owl-carousel .owl-dots {
  bottom: -30px;
}

.menu--account {
  margin-left: auto;
}
.menu--account ul.menu {
  list-style: none outside none;
  margin: 0;
  padding: 0;
}
.menu--account ul.menu li {
  display: inline;
  margin: 0 var(--size-space-small)/2;
}
.menu--account ul.menu li:first-child {
  margin-left: 0;
}
.menu--account ul.menu li:last-child {
  margin-right: 0;
}

.site-header__button {
  margin-left: 10px;
  width: var(--header-button-menu-height);
  height: var(--header-button-menu-height);
  line-height: var(--header-button-menu-height);
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  cursor: pointer;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: calc(var(--size-corner-radius) / 2);
  padding: 4px;
  box-sizing: content-box;
  background-size: var(--header-button-menu-height);
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height;
}
.site-header__button:hover {
  transition-timing-function: ease-in;
  transition-duration: 0.5s;
  transition-property: filter;
}
.site-header__button--menu {
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: filter;
}
.settings-header-transparent .site-header__button--menu {
  background-image: url(../images/icons/icon-menu_white.svg);
}
.settings-header-transparent.scroll--main .site-header__button--menu, .settings-header-opaque-forced .site-header__button--menu, .settings-header-opaque .site-header__button--menu, .no-hero .site-header__button--menu {
  background-image: url(../images/icons/icon-menu.svg);
}
.site-header__button--search {
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: filter;
}
.settings-header-transparent .site-header__button--search {
  background-image: url(../images/icons/icon-search_white.svg);
}
.settings-header-transparent.scroll--main .site-header__button--search, .settings-header-opaque .site-header__button--search, .no-hero .site-header__button--search {
  background-image: url(../images/icons/icon-search.svg);
}
.search-enabled.settings-header-transparent.scroll--main .site-header__button--search, .search-enabled.settings-header-opaque .site-header__button--search, .search-enabled.no-hero .site-header__button--search {
  background-image: url(../images/icons/icon-close.svg);
}

.site-offcanvas__button {
  width: var(--header-button-menu-height);
  height: var(--header-button-menu-height);
  line-height: var(--header-button-menu-height);
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  cursor: pointer;
  background-position: center center;
  background-repeat: no-repeat;
  border-radius: calc(var(--size-corner-radius) / 2);
  padding: 4px;
  box-sizing: content-box;
  background-size: var(--header-button-menu-height);
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height;
}
.site-offcanvas__button--close {
  background-image: url(../images/icons/icon-close.svg);
}

.settings-offcanvas-style--overlay .site-offcanvas__button--close {
  background-image: url(../images/icons/icon-close_white.svg);
}
.settings-offcanvas-style--overlay .site-offcanvas__header {
  height: var(--size-header-height);
  display: flex;
  align-items: center;
  justify-content: right;
  justify-content: space-between;
}
.settings-offcanvas-style--overlay .site-offcanvas__header .site-logo {
  display: block;
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../logo_white.svg);
  width: var(--size-logo-width);
  height: var(--size-logo-height);
  text-indent: -999px;
  overflow: hidden;
}
.settings-offcanvas-style--overlay .site-offcanvas__inner {
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100vh;
}
.settings-offcanvas-style--overlay #offcanvas-menu {
  flex-grow: 1;
}
.settings-offcanvas-style--overlay #offcanvas-menu .region {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.settings-offcanvas-style--overlay #offcanvas-menu .region .menu--main {
  height: 100%;
}
.settings-offcanvas-style--overlay #offcanvas-menu .region .menu--main ul.menu {
  margin: 0;
  padding: 0;
  list-style: none outside none;
  font-size: 2.33em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  height: 100%;
}
.settings-offcanvas-style--overlay #offcanvas-menu .region .menu--main ul.menu li a {
  color: white;
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas {
  display: flex;
  justify-content: center;
  padding-top: var(--size-space-base);
  padding-bottom: calc(var(--size-space-base) * 3);
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas label {
  color: white;
  display: none;
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas input.form-text {
  border-top: 0;
  border-left: 0;
  border-right: 0;
  border-color: white;
  color: white;
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas .form-actions {
  margin-top: 0;
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas input.form-submit {
  color: black;
  background-color: white;
  border-color: white;
}
.settings-offcanvas-style--overlay #block-search-form-offcanvas form {
  margin-bottom: 0;
}

.toolbar-tray-open.toolbar-horizontal.settings-offcanvas-style--overlay .site-offcanvas__header {
  margin-top: 79px;
}

.gin--horizontal-toolbar.toolbar-tray-open.toolbar-horizontal.settings-offcanvas-style--overlay .site-offcanvas__header {
  margin-top: 54px;
}

.scroll--main.settings-offcanvas-style--overlay .site-offcanvas__header {
  height: var(--size-header-height-fixed);
}
.scroll--main.settings-offcanvas-style--overlay .site-offcanvas__header .site-logo {
  height: var(--size-logo-height-scroll);
  opacity: 0;
}

.site-header__branding .site-logo {
  opacity: 1;
}

.scroll--main.settings-offcanvas-style--overlay.offcanvas-enabled .site-header__branding .site-logo {
  opacity: 0;
}
.scroll--main.settings-offcanvas-style--overlay.offcanvas-enabled .site-offcanvas__header .site-logo {
  opacity: 1;
}

@media screen and (min-width: 1024px) {
  #header-button-hamburger {
    display: none;
  }
  .settings-desktop-hamburger #header-button-hamburger {
    display: block;
  }
}
.site-header__menu {
  display: none;
}
@media screen and (min-width: 1024px) {
  .site-header__menu {
    display: block;
  }
}
.site-header__menu .menu--main {
  font-family: var(--font-family-menu);
  font-weight: var(--font-weight-menu);
}
.site-header__menu .menu--main ul.menu {
  margin: 0;
  padding: 0;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height;
  z-index: 1;
}
.site-header__menu .menu--main ul.menu li {
  float: left;
  position: relative;
  list-style: none;
  transition-timing-function: ease-in;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height;
  padding: 0 0.5rem;
  margin: 0 var(--size-space-small)/2;
}
.site-header__menu .menu--main ul.menu li a,
.site-header__menu .menu--main ul.menu li span {
  margin-top: 10px;
  margin-bottom: 10px;
}
.site-header__menu .menu--main ul.menu li:first-child {
  margin-left: 0;
}
.site-header__menu .menu--main ul.menu li:last-child {
  margin-right: 0;
}
.site-header__menu .menu--main ul.menu li a,
.site-header__menu .menu--main ul.menu li span {
  display: block;
  text-decoration: none;
  padding: 0;
  color: var(--zone-header-color-link);
  transition: none;
  border-bottom: 2px solid transparent;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: color;
}
.settings-header-transparent .site-header__menu .menu--main ul.menu li a,
.settings-header-transparent .site-header__menu .menu--main ul.menu li span {
  color: var(--zone-header-transparent-color-link);
}
.scroll--main .site-header__menu .menu--main ul.menu li a,
.scroll--main .site-header__menu .menu--main ul.menu li span {
  color: var(--zone-header-color-fg);
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: color;
}
.site-header__menu .menu--main ul.menu li a:hover,
.site-header__menu .menu--main ul.menu li span:hover {
  color: var(--zone-header-color-link);
  border-bottom: 2px solid var(--zone-header-color-link);
}
.settings-header-transparent .site-header__menu .menu--main ul.menu li a:hover,
.settings-header-transparent .site-header__menu .menu--main ul.menu li span:hover {
  color: var(--zone-header-transparent-color-link);
  border-bottom: var(--zone-header-transparent-color-link);
}
.scroll--main .site-header__menu .menu--main ul.menu li a:hover,
.scroll--main .site-header__menu .menu--main ul.menu li span:hover {
  color: var(--zone-header-color-link);
  border-bottom: 2px solid var(--zone-header-color-link);
}
.site-header__menu .menu--main ul.menu li li {
  line-height: 1rem;
  margin: 0;
  padding: 0.75rem 1rem;
  width: 100%;
}
.scroll--main .site-header__menu .menu--main ul.menu li li {
  line-height: 1rem;
}
.site-header__menu .menu--main ul.menu li li a,
.site-header__menu .menu--main ul.menu li li span {
  color: rgba(0, 0, 0, 0.87);
  line-height: 1.5rem;
  margin-top: 0;
  margin-bottom: 0;
}
.site-header__menu .menu--main ul.menu li li:last-child {
  border-radius: 0 0 var(--size-corner-radius) var(--size-corner-radius);
}
.site-header__menu .menu--main ul.menu li:hover > ul {
  visibility: visible;
  opacity: 1;
}
.site-header__menu .menu--main ul.menu ul {
  margin: 0;
  padding: 0;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  padding: 1rem;
  width: 240px;
  top: 100%;
  visibility: hidden;
  opacity: 0;
  background: var(--color-white);
  border-radius: 0 0 var(--size-corner-radius) var(--size-corner-radius);
  border: 1px solid var(--border-color);
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.25);
}
.site-header__menu .menu--main ul.menu ul:after, .site-header__menu .menu--main ul.menu ul:before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.site-header__menu .menu--main ul.menu ul:after {
  border-color: rgba(255, 255, 255, 0);
  border-bottom-color: var(--color-white);
  border-width: 13px;
  margin-left: -13px;
}
.site-header__menu .menu--main ul.menu ul:before {
  border-color: rgba(204, 204, 204, 0);
  border-bottom-color: var(--border-color);
  border-width: 14px;
  margin-left: -14px;
}
.site-header__menu .menu--main ul.menu ul li {
  background: transparent;
}
.site-header__menu .menu--main ul.menu ul ul {
  border-radius: var(--size-corner-radius);
  left: 100%;
  top: 50%;
  margin-top: 0;
}
.site-header__menu .menu--main ul.menu ul ul li:first-child {
  border-radius: var(--size-corner-radius) var(--size-corner-radius) 0 0;
}
.site-header__menu .menu--main ul.menu ul ul:after, .site-header__menu .menu--main ul.menu ul ul:before {
  display: none;
}

.menu--footer ul.menu {
  list-style: none outside none;
  padding: 0;
  margin: 0;
  color: #999;
}
.menu--footer ul.menu li.menu-item span {
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 0.7rem;
  display: block;
  margin-bottom: 1px;
}
.menu--footer ul.menu li.menu-item ul.menu {
  margin-bottom: 1.5rem;
}
/*
 * Block Page title
 */
.block-page-title {
  margin-bottom: var(--size-space-base);
}

/*
 * Footer blocks
 */
.site-footer .block {
  border-right: 1px solid var(--border-color-dark);
}
.site-footer .block h2.block-title {
  margin-bottom: 1rem;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .site-footer .block h2.block-title {
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
  }
}
.site-footer .block:last-child {
  border-right: none;
}

/*
 * Block Title default
 */
.layout h2.block-title {
  font-weight: 700;
  text-transform: uppercase;
}

.block-title--wrapper {
  margin-bottom: var(--size-space-base);
}

/*
 * Blocchi dentro il layout builder
 */
.layout__region--content .block {
  margin-bottom: var(--size-space-base);
}
.layout__region--content .block:last-child {
  margin-bottom: 0;
}

.site-main__sidebar .block {
  font-size: 0.875em;
  margin-bottom: var(--size-space-base);
}
.site-main__sidebar .block .block-title {
  font-size: 1.5em;
}

.pup-extra-title span {
  font-family: var(--font-family-heading);
  font-weight: bold;
}
@media all and (min-width: 1024px) {
  .pup-extra-title span {
    font-size: 2em;
  }
}

.block-language ul.links {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  margin: 0;
  padding-left: 30px;
  background: url(../images/language-icons.png) no-repeat center left;
  line-height: 24px;
  height: 24px;
}
.block-language ul.links li {
  display: inline;
  margin: 0 var(--size-space-small)/2;
}
.block-language ul.links li:first-child {
  margin-left: 0;
}
.block-language ul.links li:last-child {
  margin-right: 0;
}
.block-language ul.links li {
  margin: 0 10px 0 0;
}
.block-language ul.links li:last-child {
  margin: 0;
}
.block-language ul.links li a {
  color: var(--color-text);
}
.site-offcanvas .block-language ul.links li a {
  color: var(--color-white);
}

/*
 * Taxonomy Page
 */
.settings-header-opaque .hero__height-100 {
  height: calc( (100vh - var(--size-header-height)) * 1);
}
.settings-header-opaque.has-roof .hero__height-100 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 1);
}
.settings-header-opaque.toolbar-fixed .hero__height-100 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 1);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-100 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 1);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-100 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 1);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-100 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 1);
}

.settings-header-opaque .hero__height-75 {
  height: calc( (100vh - var(--size-header-height)) * 0.75);
}
.settings-header-opaque.has-roof .hero__height-75 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 0.75);
}
.settings-header-opaque.toolbar-fixed .hero__height-75 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 0.75);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-75 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.75);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-75 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.75);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-75 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 0.75);
}

.settings-header-opaque .hero__height-66 {
  height: calc( (100vh - var(--size-header-height)) * 0.66);
}
.settings-header-opaque.has-roof .hero__height-66 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 0.66);
}
.settings-header-opaque.toolbar-fixed .hero__height-66 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 0.66);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-66 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.66);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-66 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.66);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-66 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 0.66);
}

.settings-header-opaque .hero__height-50 {
  height: calc( (100vh - var(--size-header-height)) * 0.5);
}
.settings-header-opaque.has-roof .hero__height-50 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 0.5);
}
.settings-header-opaque.toolbar-fixed .hero__height-50 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 0.5);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-50 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.5);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-50 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.5);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-50 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 0.5);
}

.settings-header-opaque .hero__height-33 {
  height: calc( (100vh - var(--size-header-height)) * 0.33);
}
.settings-header-opaque.has-roof .hero__height-33 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 0.33);
}
.settings-header-opaque.toolbar-fixed .hero__height-33 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 0.33);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-33 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.33);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-33 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.33);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-33 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 0.33);
}

.settings-header-opaque .hero__height-25 {
  height: calc( (100vh - var(--size-header-height)) * 0.25);
}
.settings-header-opaque.has-roof .hero__height-25 {
  height: calc( (100vh - var(--size-header-height) - var(--zone-roof-height)) * 0.25);
}
.settings-header-opaque.toolbar-fixed .hero__height-25 {
  height: calc( (100vh - var(--drupal-toobar-bar-height)) * 0.25);
}
.settings-header-opaque.toolbar-fixed.has-roof .hero__height-25 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.25);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-25 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.25);
}
.settings-header-opaque.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-25 {
  height: calc( (100vh - var(--size-header-height) - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height)) * 0.25);
}

.settings-header-transparent .hero__height-100 {
  height: calc( (100vh) * 1);
}
.settings-header-transparent.has-roof .hero__height-100 {
  height: calc( (100vh - var(--zone-roof-height)) * 1);
}
.settings-header-transparent.toolbar-fixed .hero__height-100 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 1);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-100 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 1);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-100 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 1);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-100 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 1);
}

.hero__height-75 {
  min-height: var(--size-header-height);
}
.settings-header-transparent .hero__height-75 {
  height: calc( (100vh) * 0.75);
}
.settings-header-transparent.has-roof .hero__height-75 {
  height: calc( (100vh - var(--zone-roof-height)) * 0.75);
}
.settings-header-transparent.toolbar-fixed .hero__height-75 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 0.75);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-75 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.75);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-75 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.75);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-75 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 0.75);
}

.hero__height-66 {
  min-height: var(--size-header-height);
}
.settings-header-transparent .hero__height-66 {
  height: calc( (100vh) * 0.66);
}
.settings-header-transparent.has-roof .hero__height-66 {
  height: calc( (100vh - var(--zone-roof-height)) * 0.66);
}
.settings-header-transparent.toolbar-fixed .hero__height-66 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 0.66);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-66 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.66);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-66 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.66);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-66 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 0.66);
}

.hero__height-50 {
  min-height: var(--size-header-height);
}
.settings-header-transparent .hero__height-50 {
  height: calc( (100vh) * 0.5);
}
.settings-header-transparent.has-roof .hero__height-50 {
  height: calc( (100vh - var(--zone-roof-height)) * 0.5);
}
.settings-header-transparent.toolbar-fixed .hero__height-50 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 0.5);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-50 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.5);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-50 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.5);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-50 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 0.5);
}

.hero__height-33 {
  min-height: var(--size-header-height);
}
.settings-header-transparent .hero__height-33 {
  height: calc( (100vh) * 0.33);
}
.settings-header-transparent.has-roof .hero__height-33 {
  height: calc( (100vh - var(--zone-roof-height)) * 0.33);
}
.settings-header-transparent.toolbar-fixed .hero__height-33 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 0.33);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-33 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.33);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-33 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.33);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-33 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 0.33);
}

.hero__height-25 {
  min-height: var(--size-header-height);
}
.settings-header-transparent .hero__height-25 {
  height: calc( (100vh) * 0.25);
}
.settings-header-transparent.has-roof .hero__height-25 {
  height: calc( (100vh - var(--zone-roof-height)) * 0.25);
}
.settings-header-transparent.toolbar-fixed .hero__height-25 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height)) * 0.25);
}
.settings-header-transparent.toolbar-fixed.has-roof .hero__height-25 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--zone-roof-height)) * 0.25);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open .hero__height-25 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height)) * 0.25);
}
.settings-header-transparent.toolbar-fixed.toolbar-horizontal.toolbar-tray-open.has-roof .hero__height-25 {
  height: calc( (100vh - var(--drupal-toolbar-bar-height) - var(--drupal-toolbar-tray-height) - var(--zone-roof-height) ) * 0.25);
}

.hero__pp-hero-slider .owl-stage-outer {
  height: 100%;
}
.hero__pp-hero-slider .owl-stage-outer .owl-stage {
  height: 100%;
}
.hero__pp-hero-slider .owl-stage-outer .owl-stage .owl-item {
  height: 100%;
}
.hero__pp-hero-slider .owl-stage-outer .owl-stage .owl-item .item {
  height: 100%;
}

.hero__pp-hero-slider-item {
  height: 100%;
  width: 100%;
}
.hero__pp-hero-slider-item article {
  height: 100%;
  width: 100%;
}
.hero__pp-hero-slider-item article video {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.hero__pp-hero-slider-item article > div.field--name-field-media-video-file {
  height: 100%;
}
.hero__pp-hero-slider-item article > div.field--name-field-media-image {
  height: 100%;
  display: block;
  min-height: 1px;
  overflow: hidden;
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
}
@media all and (max-width: 479px) {
  .hero__pp-hero-slider-item article > div.field--name-field-media-image {
    padding-bottom: 177.7777777778%;
  }
}
@media all and (min-width: 768px) and (max-width: 1023px) {
  .hero__pp-hero-slider-item article > div.field--name-field-media-image {
    padding-bottom: 177.7777777778%;
  }
}
.hero__pp-hero-slider-item article > div.field--name-field-media-image img {
  display: block;
  height: 100%;
  left: 0;
  min-height: 1px;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
  object-fit: cover;
}
.hero__pp-hero-slider-item.hero__box-position--c .l__column {
  justify-content: center;
  align-items: center;
}
.hero__pp-hero-slider-item.hero__box-position--c .l__column .hero-box {
  text-align: center;
}
.hero__pp-hero-slider-item.hero__box-position--t-l .l__column {
  justify-content: flex-start;
  align-items: flex-start;
}
.hero__pp-hero-slider-item.hero__box-position--t-l .l__column .hero-box {
  text-align: left;
  border-left: 0.6rem solid var(--color-secondary);
  padding-left: 0.6rem;
}
.hero__pp-hero-slider-item.hero__box-position--t-r .l__column {
  justify-content: flex-end;
  align-items: flex-start;
}
.hero__pp-hero-slider-item.hero__box-position--t-r .l__column .hero-box {
  text-align: right;
  border-right: 0.6rem solid var(--color-secondary);
  padding-right: 0.6rem;
}
.hero__pp-hero-slider-item.hero__box-position--m-l .l__column {
  justify-content: flex-start;
  align-items: center;
}
.hero__pp-hero-slider-item.hero__box-position--m-l .l__column .hero-box {
  text-align: left;
  border-left: 0.6rem solid var(--color-secondary);
  padding-left: 0.6rem;
}
.hero__pp-hero-slider-item.hero__box-position--m-r .l__column {
  justify-content: flex-end;
  align-items: center;
}
.hero__pp-hero-slider-item.hero__box-position--m-r .l__column .hero-box {
  text-align: right;
  border-right: 0.6rem solid var(--color-secondary);
  padding-right: 0.6rem;
}
.hero__pp-hero-slider-item.hero__box-position--b-l .l__column {
  justify-content: flex-start;
  align-items: flex-end;
}
.hero__pp-hero-slider-item.hero__box-position--b-l .l__column .hero-box {
  text-align: left;
  border-left: 0.6rem solid var(--color-secondary);
  padding-left: 0.6rem;
  margin-bottom: calc(2rem + 42px);
}
.hero__pp-hero-slider-item.hero__box-position--b-r .l__column {
  justify-content: flex-end;
  align-items: flex-end;
}
.hero__pp-hero-slider-item.hero__box-position--b-r .l__column .hero-box {
  text-align: right;
  border-right: 0.6rem solid var(--color-secondary);
  padding-right: 0.6rem;
  margin-bottom: calc(2rem + 42px);
}
.hero .hero-effect {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: background-color;
}
.darkened .hero .hero-effect {
  background-color: rgba(0, 0, 0, 0.6);
}
.hero .hero-effect .l__column {
  height: 100%;
  display: flex;
}
.hero .hero-effect .l__column .hero-box {
  height: auto;
  opacity: 0;
  transition: none;
  font-size: 1.25rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .hero .hero-effect .l__column .hero-box {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .hero .hero-effect .l__column .hero-box {
    width: 80%;
  }
}
@media screen and (min-width: 1024px) {
  .hero .hero-effect .l__column .hero-box {
    width: 60%;
  }
}
@media screen and (min-width: 1440px) {
  .hero .hero-effect .l__column .hero-box {
    width: 42%;
  }
}
.settings-hero-effect--default .hero .hero-effect .l__column .hero-box {
  opacity: 0;
  transition: opacity 0s ease-in;
}
@media screen and (min-width: 1024px) {
  .settings-hero-effect--default .hero .hero-effect .l__column .hero-box {
    margin-top: var(--size-header-height);
  }
}
.darkened .hero .hero-effect .l__column .hero-box {
  opacity: 1;
  transition: opacity 1.2s ease-out;
}
.hero .hero-effect .l__column .hero-box p {
  margin-bottom: 0;
}
.hero .hero-effect .l__column .hero-box .hero-logo {
  margin-bottom: 1em;
}
.hero .hero-effect .l__column .hero-box .hero-logo img {
  max-width: 50vw;
  margin: 0 auto;
  max-height: 25vh;
  height: auto;
}
.hero .hero-box__buttons {
  margin-top: var(--size-space-small);
}
.hero .hero-box__buttons a {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
.hero .hero-box__buttons a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}
.hero .pp__bgcolor--primary {
  background-color: var(--color-primary);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--primary .hero-title,
.hero .pp__bgcolor--primary h1,
.hero .pp__bgcolor--primary h2,
.hero .pp__bgcolor--primary h3,
.hero .pp__bgcolor--primary h4,
.hero .pp__bgcolor--primary h5,
.hero .pp__bgcolor--primary h6 {
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--primary a {
  color: var(--color-primary-link);
}
.hero .pp__bgcolor--primary .hero-box__buttons a {
  background-color: transparent;
  border-color: white;
  color: white;
}
.hero .pp__bgcolor--primary .hero-box__buttons a input {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.hero .pp__bgcolor--primary .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--primary .hero-box__buttons a button {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.hero .pp__bgcolor--primary .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--primary .hero-box__buttons a button:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--primary .hero-box__buttons a .button > a {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary-text);
  color: var(--color-primary);
}
.hero .pp__bgcolor--primary .hero-box__buttons a .button > a:hover {
  background-color: var(--color-primary);
  border-color: var(--color-primary-text);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--primary .hero-box__buttons a:hover {
  background-color: white;
  border-color: white;
  color: #981617;
}
.hero .pp__bgcolor--secondary {
  background-color: var(--color-secondary);
  color: var(--color-secondary-text);
}
.hero .pp__bgcolor--secondary .hero-title,
.hero .pp__bgcolor--secondary h1,
.hero .pp__bgcolor--secondary h2,
.hero .pp__bgcolor--secondary h3,
.hero .pp__bgcolor--secondary h4,
.hero .pp__bgcolor--secondary h5,
.hero .pp__bgcolor--secondary h6 {
  color: var(--color-secondary-text);
}
.hero .pp__bgcolor--secondary a {
  color: var(--color-secondary-link);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a {
  background-color: transparent;
  border-color: rgba(0, 0, 0, 0.87);
  color: rgba(0, 0, 0, 0.87);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a input {
  background-color: var(--color-secondary-text);
  border-color: var(--color-secondary-text);
  color: var(--color-secondary);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--secondary .hero-box__buttons a button {
  background-color: var(--color-secondary-text);
  border-color: var(--color-secondary-text);
  color: var(--color-secondary);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--secondary .hero-box__buttons a button:hover {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary-text);
  color: var(--color-secondary-text);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a .button > a {
  background-color: var(--color-secondary-text);
  border-color: var(--color-secondary-text);
  color: var(--color-secondary);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a .button > a:hover {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary-text);
  color: var(--color-secondary-text);
}
.hero .pp__bgcolor--secondary .hero-box__buttons a:hover {
  background-color: rgba(0, 0, 0, 0.87);
  border-color: rgba(0, 0, 0, 0.87);
  color: #AD6C61;
}
.hero .pp__bgcolor--accent {
  background-color: var(--color-accent);
  color: var(--color-accent-text);
}
.hero .pp__bgcolor--accent .hero-title,
.hero .pp__bgcolor--accent h1,
.hero .pp__bgcolor--accent h2,
.hero .pp__bgcolor--accent h3,
.hero .pp__bgcolor--accent h4,
.hero .pp__bgcolor--accent h5,
.hero .pp__bgcolor--accent h6 {
  color: var(--color-accent-text);
}
.hero .pp__bgcolor--accent a {
  color: var(--color-accent-link);
}
.hero .pp__bgcolor--accent .hero-box__buttons a {
  background-color: transparent;
  border-color: white;
  color: white;
}
.hero .pp__bgcolor--accent .hero-box__buttons a input {
  background-color: var(--color-accent-text);
  border-color: var(--color-accent-text);
  color: var(--color-accent);
}
.hero .pp__bgcolor--accent .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--accent .hero-box__buttons a button {
  background-color: var(--color-accent-text);
  border-color: var(--color-accent-text);
  color: var(--color-accent);
}
.hero .pp__bgcolor--accent .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--accent .hero-box__buttons a button:hover {
  background-color: var(--color-accent);
  border-color: var(--color-accent-text);
  color: var(--color-accent-text);
}
.hero .pp__bgcolor--accent .hero-box__buttons a .button > a {
  background-color: var(--color-accent-text);
  border-color: var(--color-accent-text);
  color: var(--color-accent);
}
.hero .pp__bgcolor--accent .hero-box__buttons a .button > a:hover {
  background-color: var(--color-accent);
  border-color: var(--color-accent-text);
  color: var(--color-accent-text);
}
.hero .pp__bgcolor--accent .hero-box__buttons a:hover {
  background-color: white;
  border-color: white;
  color: #59BAB7;
}
.hero .pp__bgcolor--white {
  background-color: var(--color-white);
  color: var(--color-black);
}
.hero .pp__bgcolor--white .hero-title,
.hero .pp__bgcolor--white h1,
.hero .pp__bgcolor--white h2,
.hero .pp__bgcolor--white h3,
.hero .pp__bgcolor--white h4,
.hero .pp__bgcolor--white h5,
.hero .pp__bgcolor--white h6 {
  color: var(--color-black);
}
.hero .pp__bgcolor--white a {
  color: var(--color-black);
}
.hero .pp__bgcolor--white .hero-box__buttons a {
  background-color: transparent;
  border-color: var(--color-black);
  color: var(--color-black);
}
.hero .pp__bgcolor--white .hero-box__buttons a input {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--white .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--white .hero-box__buttons a button {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--white .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--white .hero-box__buttons a button:hover {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.hero .pp__bgcolor--white .hero-box__buttons a .button > a {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-primary-text);
}
.hero .pp__bgcolor--white .hero-box__buttons a .button > a:hover {
  background-color: var(--color-primary-text);
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.hero .pp__bgcolor--white .hero-box__buttons a:hover {
  background-color: var(--color-black);
  border-color: var(--color-black);
  color: var(--color-white);
}
.hero .pp__bgcolor--black {
  background-color: var(--color-black);
  color: var(--color-white);
}
.hero .pp__bgcolor--black .hero-title,
.hero .pp__bgcolor--black h1,
.hero .pp__bgcolor--black h2,
.hero .pp__bgcolor--black h3,
.hero .pp__bgcolor--black h4,
.hero .pp__bgcolor--black h5,
.hero .pp__bgcolor--black h6 {
  color: var(--color-white);
}
.hero .pp__bgcolor--black a {
  color: var(--color-white);
}
.hero .pp__bgcolor--black .hero-box__buttons a {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: var(--color-white);
}
.hero .pp__bgcolor--black .hero-box__buttons a input {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--black);
}
.hero .pp__bgcolor--black .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--black .hero-box__buttons a button {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--black);
}
.hero .pp__bgcolor--black .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--black .hero-box__buttons a button:hover {
  background-color: var(--black);
  border-color: var(--white);
  color: var(--white);
}
.hero .pp__bgcolor--black .hero-box__buttons a .button > a {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--black);
}
.hero .pp__bgcolor--black .hero-box__buttons a .button > a:hover {
  background-color: var(--black);
  border-color: var(--white);
  color: var(--white);
}
.hero .pp__bgcolor--black .hero-box__buttons a:hover {
  background-color: var(--color-white);
  border-color: var(--color-primary);
  color: var(--color-primary);
}
.hero .pp__bgcolor--gray {
  background-color: var(--color-muted);
  color: var(--color-muted-text);
}
.hero .pp__bgcolor--gray .hero-title,
.hero .pp__bgcolor--gray h1,
.hero .pp__bgcolor--gray h2,
.hero .pp__bgcolor--gray h3,
.hero .pp__bgcolor--gray h4,
.hero .pp__bgcolor--gray h5,
.hero .pp__bgcolor--gray h6 {
  color: var(--color-muted-text);
}
.hero .pp__bgcolor--gray a {
  color: var(--color-muted-link);
}
.hero .pp__bgcolor--gray .hero-box__buttons a {
  background-color: transparent;
  border-color: white;
  color: white;
}
.hero .pp__bgcolor--gray .hero-box__buttons a input {
  background-color: var(--color-muted-text);
  border-color: var(--color-muted-text);
  color: var(--color-muted);
}
.hero .pp__bgcolor--gray .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--gray .hero-box__buttons a button {
  background-color: var(--color-muted-text);
  border-color: var(--color-muted-text);
  color: var(--color-muted);
}
.hero .pp__bgcolor--gray .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--gray .hero-box__buttons a button:hover {
  background-color: var(--color-muted);
  border-color: var(--color-muted-text);
  color: var(--color-muted-text);
}
.hero .pp__bgcolor--gray .hero-box__buttons a .button > a {
  background-color: var(--color-muted-text);
  border-color: var(--color-muted-text);
  color: var(--color-muted);
}
.hero .pp__bgcolor--gray .hero-box__buttons a .button > a:hover {
  background-color: var(--color-muted);
  border-color: var(--color-muted-text);
  color: var(--color-muted-text);
}
.hero .pp__bgcolor--gray .hero-box__buttons a:hover {
  background-color: white;
  border-color: white;
  color: #575757;
}
.hero .pp__bgcolor--graylight {
  background-color: var(--color-muted-light);
  color: var(--color-muted-light-text);
}
.hero .pp__bgcolor--graylight .hero-title,
.hero .pp__bgcolor--graylight h1,
.hero .pp__bgcolor--graylight h2,
.hero .pp__bgcolor--graylight h3,
.hero .pp__bgcolor--graylight h4,
.hero .pp__bgcolor--graylight h5,
.hero .pp__bgcolor--graylight h6 {
  color: var(--color-muted-light-text);
}
.hero .pp__bgcolor--graylight a {
  color: var(--color-muted-light-link);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a {
  background-color: transparent;
  border-color: black;
  color: black;
}
.hero .pp__bgcolor--graylight .hero-box__buttons a input {
  background-color: var(--color-muted-light-text);
  border-color: var(--color-muted-light-text);
  color: var(--color-muted-light);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a input[type=submit],
.hero .pp__bgcolor--graylight .hero-box__buttons a button {
  background-color: var(--color-muted-light-text);
  border-color: var(--color-muted-light-text);
  color: var(--color-muted-light);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a input[type=submit]:hover,
.hero .pp__bgcolor--graylight .hero-box__buttons a button:hover {
  background-color: var(--color-muted-light);
  border-color: var(--color-muted-light-text);
  color: var(--color-muted-light-text);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a .button > a {
  background-color: var(--color-muted-light-text);
  border-color: var(--color-muted-light-text);
  color: var(--color-muted-light);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a .button > a:hover {
  background-color: var(--color-muted-light);
  border-color: var(--color-muted-light-text);
  color: var(--color-muted-light-text);
}
.hero .pp__bgcolor--graylight .hero-box__buttons a:hover {
  background-color: black;
  border-color: black;
  color: #E5E5E5;
}
.hero #hero-owl {
  position: relative;
  display: block !important;
}
.hero .owl-nav {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.hero .owl-nav .owl-prev,
.hero .owl-nav .owl-next {
  pointer-events: auto;
  opacity: 0;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity;
  height: 100%;
  display: flex;
  align-items: center;
}
.hero .owl-nav .owl-prev:hover,
.hero .owl-nav .owl-next:hover {
  transition-timing-function: ease-in;
  transition-duration: 0.5s;
  transition-property: opacity;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .hero .owl-nav .owl-prev img,
.hero .owl-nav .owl-next img {
    width: 40px;
    height: 40px;
  }
}
.hero .owl-nav .owl-prev {
  margin-left: var(--size-space-base);
  float: left;
}
.hero .owl-nav .owl-next {
  margin-right: var(--size-space-base);
  float: right;
}
.hero .owl-dots {
  position: absolute;
  bottom: 1rem;
  right: var(--size-space-base);
  width: 100%;
  height: 42px;
  display: none;
  justify-content: flex-end;
  align-items: center;
}
.hero .owl-dots .owl-dot span {
  width: 14px;
  height: 14px;
  background-color: var(--color-white);
  border-radius: 7px;
  display: inline-block;
  margin-left: 7px;
}
.hero .owl-dots .owl-dot.active span {
  background-color: var(--color-secondary);
}

.settings-hero-effect--default .hero.owl-loaded .hero-effect .l__column .hero-box {
  opacity: 1;
  transition: opacity 1.2s ease-out;
}

#hero {
  position: relative;
}

#godown-wrapper {
  pointer-events: none;
  position: absolute;
  bottom: 1rem;
  width: 100%;
  z-index: 99;
  text-align: center;
}
#godown-wrapper #godown-button {
  pointer-events: auto;
  margin: 0 auto;
  display: block;
  width: 42px;
  height: 42px;
  line-height: 42px;
  overflow: hidden;
  text-indent: -9999px;
  background-position: center center;
  background-repeat: no-repeat;
  /*   TODO:
   *   in base al colore di sfondo della slide dovrei impostare una classe sul body
   *   con il colore che deve avere il primo piano della slide e quindi di conseguenza
   *   scegliere se mostrare la freccia bianca o nera
   *
   *   inoltre lo stesso parametro può essere utile anche per cambiare il colore del
   *   contenuto dell'header nel caso in cui sia traspente ma sia stato tolto il
   *   gradiente di sfondo, ad esempio per esigenze estetiche.
   */
  /*     background-image:url(../images/icons/icon__arrow/black/icon__arrow--down.svg); */
  background-image: url(../images/icons/icon__arrow/white/icon__arrow--down.svg);
}

@media all and (min-width: 480px) {
  .hero .owl-dots {
    display: flex;
  }
}
/*
 * Eu Cookie Compliance
 */
#sliding-popup {
  position: fixed;
  bottom: 0px;
  right: 0px;
  left: 0px;
  width: 100vw;
  background-color: #1a1a1a;
  color: var(--color-white);
  font-size: 14px;
}
#sliding-popup .eu-cookie-compliance-banner {
  padding: 20px 0;
}
#sliding-popup .eu-cookie-compliance-message {
  float: none;
  max-width: 100%;
}
#sliding-popup .eu-cookie-compliance-content {
  max-width: var(--max-width-base);
  padding-left: var(--size-space-base);
  padding-right: var(--size-space-base);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
}
#sliding-popup .eu-cookie-compliance-content #popup-text {
  margin-bottom: 20px;
}
@media all and (min-width: 600px) {
  #sliding-popup .eu-cookie-compliance-content {
    flex-direction: row;
  }
  #sliding-popup .eu-cookie-compliance-content #popup-text {
    margin-bottom: 0px;
    margin-right: 2px;
  }
}
#sliding-popup button {
  white-space: nowrap;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper {
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  justify-content: center;
  align-items: center;
  background-color: rgba(0, 0, 0, 0.7);
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories {
  padding: 2em;
  background-color: #1a1a1a;
  width: 90vw;
  border-radius: 20px;
}
@media all and (min-width: 1024px) {
  #sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories {
    width: 800px;
  }
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-categories-title {
  font-weight: bold;
  margin-bottom: 20px;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-category {
  margin-bottom: 1em;
  line-height: 1.5em;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-category .eu-cookie-compliance-category-name input {
  top: 1px;
  margin-right: 5px;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-category .eu-cookie-compliance-category-name label {
  color: var(--color-white);
  margin: 0;
  font-weight: bold;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-category .eu-cookie-compliance-category-description {
  color: #999999;
}
#sliding-popup #eu-cookie-compliance-categories-wrapper #eu-cookie-compliance-categories .eu-cookie-compliance-categories-buttons {
  margin-top: 20px;
  text-align: center;
}
#sliding-popup button {
  color: var(--color-white);
  background-color: transparent;
  border-color: transparent;
  padding: 0;
  text-decoration: underline;
  font-weight: bold;
}
#sliding-popup button.eu-cookie-compliance-default-button,
#sliding-popup button.eu-cookie-compliance-save-preferences-button {
  color: var(--color-white);
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  text-decoration: none;
  padding: 0.5rem 1.5rem;
}

/*
 * Views Latest Comments (ie: used on paragraphs)
 */
.comments-columns .item-list > ul {
  margin: 0;
  padding: 0;
  list-style: none outside none;
  display: block;
  *zoom: 1;
}
.comments-columns .item-list > ul:before, .comments-columns .item-list > ul:after {
  content: "";
  display: table;
  line-height: 0;
}
.comments-columns .item-list > ul:after {
  clear: both;
}
.comments-columns .item-list > ul > li .field--name-field-c-photo {
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .comments-columns .item-list > ul > li {
    width: 100%;
    float: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .comments-columns .item-list > ul > li {
    width: 33%;
    float: left;
  }
}
@media screen and (min-width: 1024px) {
  .comments-columns .item-list > ul > li {
    width: 33%;
    float: left;
  }
}
.comments-columns .item-list > ul > li .comment__wrapper {
  display: block;
  border: 0;
  padding-left: calc(var(--size-space-base) / 2);
  padding-right: calc(var(--size-space-base) / 2);
}
.comments-columns .item-list > ul > li .comment__wrapper .comment__meta {
  width: 50%;
  margin: 0 auto;
}
.comments-columns .item-list > ul > li .comment__wrapper .comment__content {
  padding: 0;
}

.view-column {
  margin-bottom: 40px;
}

/*
 * View Columns
 */
.view-columns ul.view-columns--1 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-1), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}
.view-columns ul.view-columns--2 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-2), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}
.view-columns ul.view-columns--3 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-3), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}
.view-columns ul.view-columns--4 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-4), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}
.view-columns ul.view-columns--5 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-5), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}
.view-columns ul.view-columns--6 {
  list-style: none outside none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-auto-flow: row;
  grid-template-columns: repeat(var(--columns-6), 1fr);
  grid-template-rows: auto;
  grid-gap: var(--size-space-base);
}

/*
 * Product grid (other products)
 */
ul.product-list {
  display: grid;
  list-style: none;
  margin: var(--size-space-base) 0 0 0;
  padding: 0;
  grid-template-columns: 1fr;
}
ul.product-list li {
  margin: 0 0 var(--size-space-base) 0;
  text-align: center;
  padding: 0;
}
ul.product-list li:last-child {
  margin-bottom: 0;
}
ul.product-list li p {
  margin-bottom: 0;
}
ul.product-list li .views-field-view-node {
  margin: var(--size-space-base) 0;
}
ul.product-list li .views-field-view-node a {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
ul.product-list li .views-field-view-node a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

@media all and (min-width: 768px) {
  ul.product-list {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
  ul.product-list li:last-child {
    margin-bottom: var(--size-space-base);
  }
}
/*
 * Lista articoli per specifico book
 */
.book-articles {
  margin-top: var(--size-space-base);
}
.book-articles .item-list {
  margin-bottom: var(--size-space-base);
}
.book-articles .item-list > h3 {
  font-size: 1em;
  margin-bottom: 1em;
}
.book-articles .item-list > ul {
  list-style: none outside none;
  padding: 0;
  margin: 0;
}
.book-articles .item-list > ul > li {
  margin-bottom: var(--size-space-small);
  border-left: 3px solid var(--color-primary);
  padding-left: 10px;
  display: grid;
  display: grid;
  grid-template-columns: 3fr 1fr;
  gap: 10px;
  grid-template-areas: "authors pages" "title pages";
}
.book-articles .item-list > ul > li .views-field-author-target-id {
  font-style: italic;
  font-size: 0.875em;
  grid-area: authors;
}
.book-articles .item-list > ul > li .views-field-title {
  grid-area: title;
}
.book-articles .item-list > ul > li .views-field-nothing {
  font-size: 0.875em;
  grid-area: pages;
  align-self: end;
  color: var(--color-muted);
  text-align: right;
}

.issues-list-archive .item-list {
  margin-bottom: var(--size-space-base);
}
.issues-list-archive .item-list ul {
  list-style: none outside none;
  padding: 0;
  margin: 0;
}
.issues-list-archive .item-list ul li {
  display: grid;
  grid-template-columns: 72px 1fr;
  gap: 10px;
  margin-bottom: var(--size-space-small);
}
.issues-list-archive .item-list ul li h3 {
  font-size: var(--font-size-h5);
  margin: 0;
}
.issues-list-archive .item-list ul li .pubdate {
  color: var(--color-muted);
  font-size: 0.9em;
}
.issues-list-archive .item-list ul li .volume-title {
  color: var(--color-heading);
  font-family: var(--font-family-heading);
  font-weight: var(--font-weight-headings);
}

.index-header {
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--size-space-base);
  margin-top: var(--size-space-base);
  font-size: 0.8em;
}
.index-header a.active {
  font-weight: bold;
}

.bibcite-index-glossary {
  margin-bottom: var(--size-space-base);
}

.view-block-banners .views-row {
  margin-bottom: var(--size-space-base);
}

.layout-builder {
  padding: 1.5em 1.5em 0.5em;
  border: 3px solid #2f91da;
  background-color: #fff;
}

.layout-builder__add-section {
  width: 100%;
  margin-bottom: 1.5em;
  padding: 1.5em 0;
  text-align: center;
  outline: 2px dashed #979797;
  background-color: #f7f7f7;
}

.layout-builder__link--add {
  padding-left: 1.3em; /* LTR */
  color: #686868;
  border-bottom: none;
  background: url(../images/core/icons/787878/plus.svg) transparent center left/1em no-repeat; /* LTR */
}

[dir=rtl] .layout-builder__link--add {
  padding-right: 1.3em;
  padding-left: 0;
  background-position-x: right;
}

.layout-builder__link--add:hover,
.layout-builder__link--add:active,
.layout-builder__link--add:focus {
  color: #000;
  border-bottom-style: none;
}

.layout-builder__section {
  margin-bottom: 1.5em;
}

.layout-builder__section .ui-sortable-helper {
  outline: 2px solid #f7f7f7;
  background-color: #fff;
}

.layout-builder__section .ui-state-drop {
  margin: 20px;
  padding: 30px;
  outline: 2px dashed #fedb60;
  background-color: #ffd;
}

.layout-builder__region {
  outline: 2px dashed #2f91da;
}

.layout-builder__add-block {
  padding: 1.5em 0;
  text-align: center;
  background-color: #eff6fc;
}

.layout-builder__link--remove {
  position: relative;
  z-index: 2;
  display: inline-block;
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  margin-right: 6px; /* LTR */
  margin-left: -10px; /* LTR */
  padding: 0;
  white-space: nowrap;
  text-indent: -9999px;
  border: 1px solid #ccc;
  border-radius: 26px;
  background: url(../images/core/icons/bebebe/ex.svg) #fff center center/16px 16px no-repeat;
  font-size: 1rem;
  position: relative;
  top: -4px;
}

[dir=rtl] .layout-builder__link--remove {
  margin-right: -10px;
  margin-left: 6px;
}

.layout-builder__link--remove:hover {
  background-image: url(../images/core/icons/787878/ex.svg);
}

.layout-builder-block {
  padding: 1.5em;
  cursor: move;
  background-color: white;
}

.layout--color--white .layout-builder-block {
  background-color: gray;
}

.layout-builder-block [tabindex="-1"] {
  pointer-events: none;
}

.layout-builder__message .messages {
  background-repeat: no-repeat;
}

.layout-builder__message--defaults .messages {
  background-image: url("../../../../misc/icons/73b355/globe.svg");
}

.layout-builder__message--overrides .messages {
  background-image: url("../../../../misc/icons/73b355/location.svg");
}

.layout-builder-block__content-preview-placeholder-label {
  margin: 0;
  text-align: center;
  font-size: 1.429em;
  line-height: 1.4;
}

.layout-builder--content-preview-disabled .layout-builder-block {
  margin: 0;
  border-bottom: 2px dashed #979797;
}

#drupal-off-canvas .layout-selection li {
  display: block;
  padding-bottom: 1em;
}

#drupal-off-canvas .layout-selection li a {
  display: block;
  padding-top: 0.55em;
}

#drupal-off-canvas .inline-block-create-button {
  display: block;
  padding: 24px;
  padding-left: 44px;
  color: #eee;
  border-bottom: 1px solid #333;
  background: url(../images/core/icons/bebebe/plus.svg) transparent 16px no-repeat;
  font-size: 16px;
}

#drupal-off-canvas .inline-block-create-button,
#drupal-off-canvas .inline-block-list__item {
  margin: 0 -20px;
  background-color: #444;
}

#drupal-off-canvas .inline-block-create-button:hover,
#drupal-off-canvas .inline-block-list__item:hover {
  background-color: #333;
}

#drupal-off-canvas .inline-block-list {
  margin-bottom: 15px;
}

#drupal-off-canvas .inline-block-list__item {
  display: block;
  padding: 15px 0 15px 25px;
}

.layout-builder__add-section.is-layout-builder-highlighted {
  margin-bottom: calc(1.5em - 8px);
  outline: none;
}

.layout-builder__layout.is-layout-builder-highlighted,
.layout-builder-block.is-layout-builder-highlighted,
.layout-builder__add-block.is-layout-builder-highlighted {
  position: relative;
  z-index: 1;
  margin: -4px -2px;
}

.layout-builder__add-block.is-layout-builder-highlighted,
.layout-builder__add-section.is-layout-builder-highlighted,
.layout-builder__layout.is-layout-builder-highlighted:before,
.layout-builder__layout.is-layout-builder-highlighted,
.layout-builder-block.is-layout-builder-highlighted {
  border: 4px solid #000;
}

/* Highlight the active block in the Move Block dialog. */
#drupal-off-canvas .layout-builder-components-table__block-label--current {
  padding-left: 17px;
  border-left: solid 5px;
}

/**
 * @todo remove in https://www.drupal.org/project/drupal/issues/3042127
 *   This rule ensures the row weight dropdowns in the Move Block dialog
 *   maintain the background color of their container when they are hovered
 *   over or are inside the active row.
 */
#drupal-off-canvas .layout-builder-components-table__row .form-item {
  background-color: transparent;
}

.layout-builder__region-label,
.layout-builder__section-label {
  display: none;
}

.layout-builder--move-blocks-active .layout-builder__region-label {
  display: block;
}

.layout-builder--move-blocks-active .layout-builder__section-label {
  display: inline;
}

.layout__region-info {
  padding: 0.5em;
  text-align: center;
  border-bottom: 2px dashed #979797;
}

/**
 * Remove "You have unsaved changes" warning because Layout Builder always has
 * unsaved changes until "Save layout" is submitted.
 * @todo create issue for todo.
 */
.layout-builder-components-table .tabledrag-changed-warning {
  display: none !important;
}

.layout__region--first,
.layout__region--second,
.layout__region--third {
  overflow: hidden;
}

.layout-builder {
  padding: 1.5em 1.5em 0.5em;
  border: 3px solid #2f91da;
  background-color: #fff;
}

.layout-builder__add-section {
  width: 100%;
  margin-bottom: 1.5em;
  padding: 1.5em 0;
  text-align: center;
  outline: 2px dashed #979797;
  background-color: #f7f7f7;
}

.layout-builder__link--add {
  padding-left: 1.3em; /* LTR */
  color: #686868;
  border-bottom: none;
  background: url(../../../../misc/icons/787878/plus.svg) transparent center left/1em no-repeat; /* LTR */
}

[dir=rtl] .layout-builder__link--add {
  padding-right: 1.3em;
  padding-left: 0;
  background-position-x: right;
}

.layout-builder__link--add:hover,
.layout-builder__link--add:active,
.layout-builder__link--add:focus {
  color: #000;
  border-bottom-style: none;
}

.layout-builder__section {
  margin-bottom: 1.5em;
}

.layout-builder__section .ui-sortable-helper {
  outline: 2px solid #f7f7f7;
  background-color: #fff;
}

.layout-builder__section .ui-state-drop {
  margin: 20px;
  padding: 30px;
  outline: 2px dashed #fedb60;
  background-color: #ffd;
}

.layout-builder__region {
  outline: 2px dashed #2f91da;
}

.layout-builder__add-block {
  padding: 1.5em 0;
  text-align: center;
  background-color: #eff6fc;
}

.layout-builder__link--remove {
  position: relative;
  z-index: 2;
  display: inline-block;
  box-sizing: border-box;
  width: 26px;
  height: 26px;
  margin-right: 6px; /* LTR */
  margin-left: -10px; /* LTR */
  padding: 0;
  white-space: nowrap;
  text-indent: -9999px;
  border: 1px solid #ccc;
  border-radius: 26px;
  background: url(../../../../misc/icons/bebebe/ex.svg) #fff center center/16px 16px no-repeat;
  font-size: 1rem;
}

[dir=rtl] .layout-builder__link--remove {
  margin-right: -10px;
  margin-left: 6px;
}

.layout-builder__link--remove:hover {
  background-image: url(../../../../misc/icons/787878/ex.svg);
}

.layout-builder-block {
  padding: 1.5em;
  cursor: move;
  background-color: #fff;
}

.layout-builder-block [tabindex="-1"] {
  pointer-events: none;
}

.layout-builder__message .messages {
  background-repeat: no-repeat;
}

.layout-builder__message--defaults .messages {
  background-image: url("../../../../misc/icons/73b355/globe.svg");
}

.layout-builder__message--overrides .messages {
  background-image: url("../../../../misc/icons/73b355/location.svg");
}

.layout-builder-block__content-preview-placeholder-label {
  margin: 0;
  text-align: center;
  font-size: 1.429em;
  line-height: 1.4;
}

.layout-builder--content-preview-disabled .layout-builder-block {
  margin: 0;
  border-bottom: 2px dashed #979797;
}

#drupal-off-canvas .layout-selection li {
  display: block;
  padding-bottom: 1em;
}

#drupal-off-canvas .layout-selection li a {
  display: block;
  padding-top: 0.55em;
}

#drupal-off-canvas .inline-block-create-button {
  display: block;
  padding: 24px;
  padding-left: 44px;
  color: #eee;
  border-bottom: 1px solid #333;
  background: url(../../../../misc/icons/bebebe/plus.svg) transparent 16px no-repeat;
  font-size: 16px;
}

#drupal-off-canvas .inline-block-create-button,
#drupal-off-canvas .inline-block-list__item {
  margin: 0 -20px;
  background-color: #444;
}

#drupal-off-canvas .inline-block-create-button:hover,
#drupal-off-canvas .inline-block-list__item:hover {
  background-color: #333;
}

#drupal-off-canvas .inline-block-list {
  margin-bottom: 15px;
}

#drupal-off-canvas .inline-block-list__item {
  display: block;
  padding: 15px 0 15px 25px;
}

.layout-builder__add-section.is-layout-builder-highlighted {
  margin-bottom: calc(1.5em - 8px);
  outline: none;
}

.layout-builder__layout.is-layout-builder-highlighted,
.layout-builder-block.is-layout-builder-highlighted,
.layout-builder__add-block.is-layout-builder-highlighted {
  position: relative;
  z-index: 1;
  margin: -4px -2px;
}

.layout-builder__add-block.is-layout-builder-highlighted,
.layout-builder__add-section.is-layout-builder-highlighted,
.layout-builder__layout.is-layout-builder-highlighted:before,
.layout-builder__layout.is-layout-builder-highlighted,
.layout-builder-block.is-layout-builder-highlighted {
  border: 4px solid #000;
}

/* Highlight the active block in the Move Block dialog. */
#drupal-off-canvas .layout-builder-components-table__block-label--current {
  padding-left: 17px;
  border-left: solid 5px;
}

/**
 * @todo remove in https://www.drupal.org/project/drupal/issues/3042127
 *   This rule ensures the row weight dropdowns in the Move Block dialog
 *   maintain the background color of their container when they are hovered
 *   over or are inside the active row.
 */
#drupal-off-canvas .layout-builder-components-table__row .form-item {
  background-color: transparent;
}

.layout-builder__region-label,
.layout-builder__section-label {
  display: none;
}

.layout-builder--move-blocks-active .layout-builder__region-label {
  display: block;
}

.layout-builder--move-blocks-active .layout-builder__section-label {
  display: inline;
}

.layout__region-info {
  padding: 0.5em;
  text-align: center;
  border-bottom: 2px dashed #979797;
}

/**
 * Remove "You have unsaved changes" warning because Layout Builder always has
 * unsaved changes until "Save layout" is submitted.
 * @todo create issue for todo.
 */
.layout-builder-components-table .tabledrag-changed-warning {
  display: none !important;
}

#layout-builder,
form.layout-builder-form {
  margin: 0 40px;
}

#layout-builder {
  margin-bottom: 40px;
}

#edit-preview-toggle {
  margin-top: 20px;
  margin-bottom: 20px;
}

#drupal-off-canvas .inline-block-list__item {
  padding: 5px 0 5px 25px;
}

#drupal-off-canvas .inline-block-create-button,
#drupal-off-canvas .inline-block-list__item {
  background: none;
}

/* TODO: trovare un file migliore per questo codice qui sotto: */
.mfp-bg {
  opacity: 0.9;
}

/* overlay at start */
.mfp-fade.mfp-bg {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.8;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.15s ease-out;
}

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

.page-node-type-contribution #block-pup-content article .field {
  margin-bottom: 1rem;
}
.page-node-type-contribution #block-pup-content article .field__body {
  margin-bottom: 1rem;
}

.action-flag {
  margin-bottom: 1rem;
}
.action-flag a {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
.action-flag a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}
.action-flag a:hover {
  border: 1px solid black;
}

nav.action-links {
  list-style: none;
  margin-bottom: 1rem;
}
nav.action-links li {
  margin-bottom: 0.5rem;
}
nav.action-links li:last-child {
  margin-bottom: 0;
}
nav.action-links li a {
  display: inline-block;
  line-height: 26px;
  padding: 0.5rem 1.5rem;
  outline: none;
  border-width: var(--button-border-width);
  border-style: solid;
  border-radius: var(--button-radius);
  border-color: var(--color-primary);
  color: var(--color-primary);
  background: transparent;
  cursor: pointer;
  transition-timing-function: ease-out;
  transition-duration: 0.5s;
  transition-property: opacity, color, background-color, height, border-color;
  font-weight: normal;
}
nav.action-links li a:hover {
  border-color: var(--color-primary);
  color: var(--color-primary-text);
  background: var(--color-primary);
}

#content-content {
  margin-bottom: 2rem;
}

.group--full.group--journal .field {
  margin-bottom: 2rem;
}

#block-groupoperations {
  max-width: 200px;
  margin-bottom: 2rem;
  height: 30px;
}

.menu--account ul.menu li.menu-item {
  margin: 0 10px;
}
.menu--account ul.menu li.menu-item:last-child {
  margin-right: 0;
}
.menu--account ul.menu li.menu-item a[data-drupal-link-system-path=user],
.menu--account ul.menu li.menu-item a[data-drupal-link-system-path="user/login"] {
  background-position: center left;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  padding-left: 24px;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg version='1.1' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(1.5 0 0 1.5 -6 -6)' fill='%23fff'%3E%3Cellipse cx='12' cy='7.7647' rx='4' ry='3.7647' stroke-width='.97014'/%3E%3Cpath d='m20 17.909v1.0455a1 1.0455 0 0 1-1 1.0455h-14a1 1.0455 0 0 1-1-1.0455v-1.0455a6 6.2727 0 0 1 6-6.2727h4a6 6.2727 0 0 1 6 6.2727z' stroke-width='1.0225'/%3E%3C/g%3E%3C/svg%3E");
}
.menu--account ul.menu li.menu-item a[data-drupal-link-system-path="user/logout"] {
  background-position: center left;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  padding-left: 24px;
  background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg enable-background='new 0 0 48 48' version='1.1' viewBox='0 0 24 24' xml:space='preserve' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='scale(.5)' fill='%23fff'%3E%3Cpolygon points='36 8 40 8 40 0 0 0 0 48 40 48 40 40 36 40 36 44 4 44 4 4 36 4'/%3E%3Cpolygon points='13 28 37.976 28 37.976 34.023 48 24 37.976 13.977 37.976 20 13 20'/%3E%3C/g%3E%3C/svg%3E");
}

.password-strength__indicator {
  margin-bottom: 3px;
}
.password-strength__indicator.is-weak {
  background-color: rgb(219, 40, 8);
}
.password-strength__indicator.is-fair {
  background-color: rgb(228, 143, 15);
}
.password-strength__indicator.is-good {
  background-color: rgb(181, 197, 38);
}
.password-strength__indicator.is-strong {
  background-color: rgb(5, 139, 5);
}

.password-suggestions {
  padding: 10px;
  background-color: #ddd;
  margin-bottom: 1rem;
}
.password-suggestions ul {
  margin-bottom: 0;
}

#edit-account > .form-item {
  padding-left: 1rem;
  border-left: 4px solid #ccc;
  margin-bottom: 2rem;
}
#edit-account > .form-item label {
  font-weight: bold;
}
#edit-account span.error {
  font-weight: bold;
  color: var(--color-red);
}
#edit-account span.ok {
  font-weight: bold;
  color: var(--color-ins);
}

#edit-field-profile-surname-wrapper,
#edit-field-profile-name-wrapper {
  padding-left: 1rem;
  border-left: 4px solid #ccc;
  margin-bottom: 2rem;
}
#edit-field-profile-surname-wrapper label,
#edit-field-profile-name-wrapper label {
  font-weight: bold;
}

input.button.button--primary {
  background-color: var(--color-primary);
  color: white;
}
input.button.button--primary:hover {
  background-color: #751010;
}

.filter-wrapper {
  display: none;
}

#node-contribution-edit-form .field--name-title .form-item > label,
#node-contribution-edit-form .field--name-field-summary .form-item > label,
#node-contribution-edit-form .field--name-body .form-item > label,
#node-contribution-form .field--name-title .form-item > label,
#node-contribution-form .field--name-field-summary .form-item > label,
#node-contribution-form .field--name-body .form-item > label {
  font-weight: bold;
}
#node-contribution-edit-form #edit-field-reviewers-wrapper input[type=checkbox],
#node-contribution-form #edit-field-reviewers-wrapper input[type=checkbox] {
  top: -1px;
}
#node-contribution-edit-form #edit-field-reviewers-wrapper legend,
#node-contribution-form #edit-field-reviewers-wrapper legend {
  padding: 0;
  font-weight: bold;
  margin-bottom: 5px;
}
#node-contribution-edit-form #edit-moderation-state-wrapper label,
#node-contribution-form #edit-moderation-state-wrapper label {
  font-weight: bold;
}
#node-contribution-edit-form #edit-moderation-state-wrapper .form-item-moderation-state-0-current label,
#node-contribution-form #edit-moderation-state-wrapper .form-item-moderation-state-0-current label {
  font-weight: bold;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper,
#node-contribution-form #edit-field-contribution-files-wrapper {
  margin-top: 2rem;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper .tabledrag-toggle-weight,
#node-contribution-form #edit-field-contribution-files-wrapper .tabledrag-toggle-weight {
  margin-bottom: 5px;
  padding: 0;
  color: var(--color-primary);
  background-color: transparent;
  border: 0;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper summary,
#node-contribution-form #edit-field-contribution-files-wrapper summary {
  font-weight: bold;
  margin: 0;
  cursor: pointer;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper details,
#node-contribution-form #edit-field-contribution-files-wrapper details {
  border: 1px solid #848484;
  border-radius: 6px;
  padding: 15px;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper .tabledrag-handle,
#node-contribution-form #edit-field-contribution-files-wrapper .tabledrag-handle {
  display: none;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper .description,
#node-contribution-form #edit-field-contribution-files-wrapper .description {
  margin-top: 10px;
}
#node-contribution-edit-form #edit-field-contribution-files-wrapper .form-item label,
#node-contribution-form #edit-field-contribution-files-wrapper .form-item label {
  font-weight: bold;
}
#node-contribution-edit-form #edit-moderation-state-wrapper,
#node-contribution-form #edit-moderation-state-wrapper {
  border: 1px solid #848484;
  border-radius: 6px;
  padding: 15px;
  background-color: #d2e8c3;
}
#node-contribution-edit-form #edit-moderation-state-wrapper .container-inline label,
#node-contribution-form #edit-moderation-state-wrapper .container-inline label {
  margin-bottom: 5px;
  display: block;
}
#node-contribution-edit-form #edit-moderation-state-wrapper .container-inline select,
#node-contribution-form #edit-moderation-state-wrapper .container-inline select {
  border: 1px solid #848484;
  background-color: white;
}
#node-contribution-edit-form .field--name-body label .field-edit-link,
#node-contribution-form .field--name-body label .field-edit-link {
  display: none;
}

#group-content-journal-group-membership-add-form #edit-entity-id-wrapper label {
  font-weight: bold;
  margin-bottom: 5px;
}
#group-content-journal-group-membership-add-form #edit-group-roles--wrapper input[type=checkbox] {
  top: -1px;
}
#group-content-journal-group-membership-add-form #edit-group-roles--wrapper legend {
  padding: 0;
  font-weight: bold;
  margin-bottom: 12px;
}
#group-content-journal-group-membership-add-form #edit-group-roles--wrapper label {
  margin: 0;
}

#edit-field-reviewers-wrapper {
  margin-top: 2rem;
}
#edit-field-reviewers-wrapper .tabledrag-toggle-weight {
  margin-bottom: 5px;
  padding: 0;
  color: var(--color-primary);
  background-color: transparent;
  border: 0;
}
#edit-field-reviewers-wrapper h4 {
  color: white;
  font-size: 1em;
  font-family: var(--font-family);
  margin: 0;
}

.draggable a.tabledrag-handle {
  margin: 0;
  height: 28px;
  float: none;
}
.draggable a.tabledrag-handle .handle {
  width: 28px;
  height: 28px;
  background-size: 28px 28px;
  background-position: center center;
  margin: 0;
  padding: 0;
}

#block-pup-local-actions a[data-drupal-link-system-path$="/node/create"] {
  display: none;
}

.field--name-field-summary {
  font-size: 1.15em;
  color: #404040;
}

.views-exposed-form {
  background-color: #eae8e8;
  padding: 1em;
}
.views-exposed-form fieldset legend {
  padding: 0;
  margin-bottom: 10px;
}
.views-exposed-form fieldset .fieldset-wrapper #edit-moderation-state {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--size-space-small);
}
.views-exposed-form fieldset .fieldset-wrapper #edit-moderation-state .form-item-moderation-state {
  margin: 0;
}
.views-exposed-form .form-actions {
  margin-top: var(--size-space-small);
}

.page-node-type-contribution .comment-section-title {
  text-align: left;
  padding: 10px;
  font-size: 1.25em;
  color: white;
  background-color: black;
  margin-top: 0;
  margin-bottom: 1em;
}
.page-node-type-contribution .node__links .comment-add {
  display: none;
}

.prms-comments .prms-comments--list {
  background-color: white;
  border: #ccc;
  padding: 1em;
  border-radius: var(--button-radius);
  margin-bottom: 1em;
}
.prms-comments .prms-comments--list .comment__wrapper:last-child {
  margin-bottom: 0;
}

.prms-comments--review-feedback {
  background-color: #d9ffce;
}

.prms-comments--review-response {
  background-color: #d3e6ff;
}

.comment__links {
  display: none;
}

.prms-comments {
  border: 1px solid #000;
  padding: 1em;
  border-radius: var(--button-radius);
  margin-bottom: 2em;
}
.prms-comments form {
  margin-bottom: 0;
}
.prms-comments form .form-actions {
  margin-top: var(--size-space-small);
}
.prms-comments .indented {
  padding-left: 1.5rem;
  border-left: 5px solid #c6c6c6;
}
.prms-comments .comment__links {
  display: block;
}
.prms-comments .comment__links ul.links li a {
  border: 1px solid #404040;
  padding: 5px 8px;
  margin-right: 1em;
  border-radius: var(--button-radius);
}

.prms-comment .comment__content {
  padding-left: 0;
}

.prms-comment.comment__wrapper {
  border-bottom: 0;
  padding-bottom: 0;
  display: block;
}
.prms-comment.comment__wrapper .comment__meta {
  margin-bottom: var(--size-space-small);
  padding: 0;
}
.prms-comment.comment__wrapper .comment__author {
  font-weight: bold;
  margin-bottom: calc(var(--size-space-small) / 2);
}
.prms-comment.comment__wrapper .comment__created {
  color: #888;
  font-size: 0.8em;
}

table caption {
  caption-side: top;
  text-align: center;
  font-weight: bold;
  padding-bottom: 10px;
  text-align: left;
  font-size: 1.2em;
}

.ui-dialog .ui-dialog-titlebar {
  position: relative;
  box-sizing: border-box;
  padding: 1rem 4rem 1rem 1.5rem; /* LTR */
  color: #fff;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  background: #232429;
  line-height: 2rem;
}

[dir=rtl] .ui-dialog .ui-dialog-titlebar {
  padding-right: 1.5rem;
  padding-left: 4rem;
}

.ui-dialog .ui-dialog-title {
  -webkit-font-smoothing: antialiased;
  font-size: 1.424rem;
  font-weight: bold;
}

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  top: 50%;
  right: 0; /* LTR */
  box-sizing: border-box;
  width: 2rem;
  height: 2rem;
  margin: 0 1.5rem;
  padding: 0;
  transition: all 0.1s;
  transform: translateY(-50%);
  border: 2px solid transparent;
  border-radius: 50%;
  background: none;
}

[dir=rtl] .ui-dialog .ui-dialog-titlebar-close {
  right: auto;
  left: 0;
}

.ui-dialog .ui-dialog-titlebar-close:hover {
  border-color: #fff;
}

.ui-dialog .ui-dialog-titlebar-close:focus {
  border-color: #26a769;
  outline: 2px dotted transparent;
  box-shadow: none;
}

/*# sourceMappingURL=style.min.css.map */
